/*
 * This file was generated automatically by ExtUtils::ParseXS version 3.28 from the
 * contents of DocView.xs. Do not edit this file, edit DocView.xs instead.
 *
 *    ANY CHANGES MADE HERE WILL BE LOST!
 *
 */

/////////////////////////////////////////////////////////////////////////////
// Name:        ext/docview/DocView.xs
// Purpose:     XS for wxWidgets Document/View Framework
// Author:      Simon Flack
// Modified by:
// Created:     11/09/2002
// RCS-ID:      $Id: DocView.xs 2757 2010-01-17 10:26:27Z mbarbon $
// Copyright:   (c) 2002, 2004, 2007-2010 Simon Flack
// Licence:     This program is free software; you can redistribute it and/or
//              modify it under the same terms as Perl itself
/////////////////////////////////////////////////////////////////////////////

#define PERL_NO_GET_CONTEXT

#include "cpp/wxapi.h"
#include "cpp/docview.h"

#undef THIS

#include <wx/docview.h>

#ifndef PERL_UNUSED_VAR
#  define PERL_UNUSED_VAR(var) if (0) var = var
#endif

#ifndef dVAR
#  define dVAR		dNOOP
#endif


/* This stuff is not part of the API! You have been warned. */
#ifndef PERL_VERSION_DECIMAL
#  define PERL_VERSION_DECIMAL(r,v,s) (r*1000000 + v*1000 + s)
#endif
#ifndef PERL_DECIMAL_VERSION
#  define PERL_DECIMAL_VERSION \
	  PERL_VERSION_DECIMAL(PERL_REVISION,PERL_VERSION,PERL_SUBVERSION)
#endif
#ifndef PERL_VERSION_GE
#  define PERL_VERSION_GE(r,v,s) \
	  (PERL_DECIMAL_VERSION >= PERL_VERSION_DECIMAL(r,v,s))
#endif
#ifndef PERL_VERSION_LE
#  define PERL_VERSION_LE(r,v,s) \
	  (PERL_DECIMAL_VERSION <= PERL_VERSION_DECIMAL(r,v,s))
#endif

/* XS_INTERNAL is the explicit static-linkage variant of the default
 * XS macro.
 *
 * XS_EXTERNAL is the same as XS_INTERNAL except it does not include
 * "STATIC", ie. it exports XSUB symbols. You probably don't want that
 * for anything but the BOOT XSUB.
 *
 * See XSUB.h in core!
 */


/* TODO: This might be compatible further back than 5.10.0. */
#if PERL_VERSION_GE(5, 10, 0) && PERL_VERSION_LE(5, 15, 1)
#  undef XS_EXTERNAL
#  undef XS_INTERNAL
#  if defined(__CYGWIN__) && defined(USE_DYNAMIC_LOADING)
#    define XS_EXTERNAL(name) __declspec(dllexport) XSPROTO(name)
#    define XS_INTERNAL(name) STATIC XSPROTO(name)
#  endif
#  if defined(__SYMBIAN32__)
#    define XS_EXTERNAL(name) EXPORT_C XSPROTO(name)
#    define XS_INTERNAL(name) EXPORT_C STATIC XSPROTO(name)
#  endif
#  ifndef XS_EXTERNAL
#    if defined(HASATTRIBUTE_UNUSED) && !defined(__cplusplus)
#      define XS_EXTERNAL(name) void name(pTHX_ CV* cv __attribute__unused__)
#      define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
#    else
#      ifdef __cplusplus
#        define XS_EXTERNAL(name) extern "C" XSPROTO(name)
#        define XS_INTERNAL(name) static XSPROTO(name)
#      else
#        define XS_EXTERNAL(name) XSPROTO(name)
#        define XS_INTERNAL(name) STATIC XSPROTO(name)
#      endif
#    endif
#  endif
#endif

/* perl >= 5.10.0 && perl <= 5.15.1 */


/* The XS_EXTERNAL macro is used for functions that must not be static
 * like the boot XSUB of a module. If perl didn't have an XS_EXTERNAL
 * macro defined, the best we can do is assume XS is the same.
 * Dito for XS_INTERNAL.
 */
#ifndef XS_EXTERNAL
#  define XS_EXTERNAL(name) XS(name)
#endif
#ifndef XS_INTERNAL
#  define XS_INTERNAL(name) XS(name)
#endif

/* Now, finally, after all this mess, we want an ExtUtils::ParseXS
 * internal macro that we're free to redefine for varying linkage due
 * to the EXPORT_XSUB_SYMBOLS XS keyword. This is internal, use
 * XS_EXTERNAL(name) or XS_INTERNAL(name) in your code if you need to!
 */

#undef XS_EUPXS
#if defined(PERL_EUPXS_ALWAYS_EXPORT)
#  define XS_EUPXS(name) XS_EXTERNAL(name)
#else
   /* default to internal */
#  define XS_EUPXS(name) XS_INTERNAL(name)
#endif

#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE
#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params)

/* prototype to pass -Wmissing-prototypes */
STATIC void
S_croak_xs_usage(const CV *const cv, const char *const params);

STATIC void
S_croak_xs_usage(const CV *const cv, const char *const params)
{
    const GV *const gv = CvGV(cv);

    PERL_ARGS_ASSERT_CROAK_XS_USAGE;

    if (gv) {
        const char *const gvname = GvNAME(gv);
        const HV *const stash = GvSTASH(gv);
        const char *const hvname = stash ? HvNAME(stash) : NULL;

        if (hvname)
	    Perl_croak_nocontext("Usage: %s::%s(%s)", hvname, gvname, params);
        else
	    Perl_croak_nocontext("Usage: %s(%s)", gvname, params);
    } else {
        /* Pants. I don't think that it should be possible to get here. */
	Perl_croak_nocontext("Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params);
    }
}
#undef  PERL_ARGS_ASSERT_CROAK_XS_USAGE

#define croak_xs_usage        S_croak_xs_usage

#endif

/* NOTE: the prototype of newXSproto() is different in versions of perls,
 * so we define a portable version of newXSproto()
 */
#ifdef newXS_flags
#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0)
#else
#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv)
#endif /* !defined(newXS_flags) */

#if PERL_VERSION_LE(5, 21, 5)
#  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
#else
#  define newXS_deffile(a,b) Perl_newXS_deffile(aTHX_ a,b)
#endif


/* INCLUDE:  Including 'XS/DocManager.xs' from 'DocView.xs' */


/* INCLUDE:  Including 'XS/DocTemplate.xs' from 'XS/DocManager.xs' */


/* INCLUDE:  Including 'XS/Document.xs' from 'XS/DocTemplate.xs' */


/* INCLUDE:  Including 'XS/View.xs' from 'XS/Document.xs' */


/* INCLUDE:  Including 'XS/FileHistory.xs' from 'XS/View.xs' */


/* INCLUDE:  Including 'XS/DocParentFrame.xs' from 'XS/FileHistory.xs' */


/* INCLUDE:  Including 'XS/DocChildFrame.xs' from 'XS/DocParentFrame.xs' */


XS_EUPXS(XS_Wx__DocChildFrame_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_new)
{
    dVAR; dXSARGS;
    if (items < 6 || items > 10)
       croak_xs_usage(cv,  "CLASS, doc, view, frame, id, title, pos = wxDefaultPosition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wxFrameNameStr");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::View" )
;
	wxFrame*    frame = (wxFrame *) wxPli_sv_2_object( aTHX_ ST(3), "Wx::Frame" )
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(4) )
;
	wxString	title;
	wxPoint	pos;
	wxSize	size;
	long	style;
	wxString	name;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocChildFrame *	RETVAL;

    WXSTRING_INPUT( title, wxString, ST(5) )
;

	if (items < 7)
	    pos = wxDefaultPosition;
	else {
    pos = wxPli_sv_2_wxpoint( aTHX_ ST(6) )
;
	}

	if (items < 8)
	    size = wxDefaultSize;
	else {
    size = wxPli_sv_2_wxsize( aTHX_ ST(7) )
;
	}

	if (items < 9)
	    style = wxDEFAULT_FRAME_STYLE;
	else {
	    style = (long)SvIV(ST(8))
;
	}

	if (items < 10)
	    name = wxFrameNameStr;
	else {
    WXSTRING_INPUT( name, wxString, ST(9) )
;
	}
    RETVAL=new wxPliDocChildFrame(CLASS, doc, view, frame, id, title, pos, size, style, name);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocChildFrame_GetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_GetDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocChildFrame *    THIS = (wxDocChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocChildFrame" )
;
	wxDocument *	RETVAL;

	RETVAL = THIS->GetDocument();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocChildFrame_GetView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_GetView)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocChildFrame *    THIS = (wxDocChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocChildFrame" )
;
	wxView *	RETVAL;

	RETVAL = THIS->GetView();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocChildFrame_SetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_SetDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocChildFrame *    THIS = (wxDocChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocChildFrame" )
;

	THIS->SetDocument(doc);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocChildFrame_SetView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_SetView)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, view");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	wxDocChildFrame *    THIS = (wxDocChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocChildFrame" )
;

	THIS->SetView(view);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocChildFrame_Destroy); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocChildFrame_Destroy)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocChildFrame *    THIS = (wxDocChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocChildFrame" )
;
	bool	RETVAL;

	RETVAL = THIS->Destroy();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


/* INCLUDE: Returning to 'XS/DocParentFrame.xs' from 'XS/DocChildFrame.xs' */


XS_EUPXS(XS_Wx__DocParentFrame_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocParentFrame_new)
{
    dVAR; dXSARGS;
    if (items < 5 || items > 9)
       croak_xs_usage(cv,  "CLASS, manager, frame, id, title, pos = wxDefaultPosition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wxFrameNameStr");
    {
	wxDocManager*    manager = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocManager" )
;
	wxFrame*    frame = (wxFrame *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::Frame" )
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(3) )
;
	wxString	title;
	wxPoint	pos;
	wxSize	size;
	long	style;
	wxString	name;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocParentFrame *	RETVAL;

    WXSTRING_INPUT( title, wxString, ST(4) )
;

	if (items < 6)
	    pos = wxDefaultPosition;
	else {
    pos = wxPli_sv_2_wxpoint( aTHX_ ST(5) )
;
	}

	if (items < 7)
	    size = wxDefaultSize;
	else {
    size = wxPli_sv_2_wxsize( aTHX_ ST(6) )
;
	}

	if (items < 8)
	    style = wxDEFAULT_FRAME_STYLE;
	else {
	    style = (long)SvIV(ST(7))
;
	}

	if (items < 9)
	    name = wxFrameNameStr;
	else {
    WXSTRING_INPUT( name, wxString, ST(8) )
;
	}
    RETVAL=new wxPliDocParentFrame(CLASS, manager, frame, id, title, pos, size, style, name);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocParentFrame_GetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocParentFrame_GetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocParentFrame *    THIS = (wxDocParentFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocParentFrame" )
;
	wxDocManager *	RETVAL;

	RETVAL = THIS->GetDocumentManager();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


/* INCLUDE: Returning to 'XS/FileHistory.xs' from 'XS/DocParentFrame.xs' */


XS_EUPXS(XS_Wx__FileHistory_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "CLASS, maxFiles = 9");
    {
	int	maxFiles;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxFileHistory *	RETVAL;

	if (items < 2)
	    maxFiles = 9;
	else {
	    maxFiles = (int)SvIV(ST(1))
;
	}
    RETVAL=new wxPliFileHistory(CLASS, maxFiles );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__FileHistory_AddFileToHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_AddFileToHistory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, file");
    {
	wxString	file;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

    WXSTRING_INPUT( file, wxString, ST(1) )
;

	THIS->AddFileToHistory(file);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_RemoveFileFromHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_RemoveFileFromHistory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, i");
    {
	int	i = (int)SvIV(ST(1))
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->RemoveFileFromHistory(i);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_GetMaxFiles); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetMaxFiles)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	int	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetMaxFiles();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__FileHistory_UseMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_UseMenu)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, menu");
    {
	wxMenu*    menu = (wxMenu *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Menu" )
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->UseMenu(menu);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_RemoveMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_RemoveMenu)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, menu");
    {
	wxMenu*    menu = (wxMenu *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Menu" )
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->RemoveMenu(menu);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_Load); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_Load)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, config");
    {
	wxConfigBase*    config = (wxConfigBase *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::ConfigBase" )
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->Load(*config);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_Save); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_Save)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, config");
    {
	wxConfigBase*    config = (wxConfigBase *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::ConfigBase" )
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->Save(*config);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_AddFilesToMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_AddFilesToMenu)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "THIS, ...");
    if (items == 1)
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
      THIS->AddFilesToMenu();
    }
    else if (items == 2)
    {
	wxMenu*	menu;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
      THIS->AddFilesToMenu( menu );
    }
    else
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
      croak( "Usage: Wx::FileHistory::AddfilesToMenu(THIS [, menu ] )" );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_GetHistoryFile); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetHistoryFile)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, i");
    {
	int	i = (int)SvIV(ST(1))
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetHistoryFile(i);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__FileHistory_GetCount); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetCount)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	int	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetCount();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}

#if WXPERL_W_VERSION_LT( 2, 5, 1 )
#define XSubPPtmpAAAA 1


XS_EUPXS(XS_Wx__FileHistory_GetNoHistoryFiles); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetNoHistoryFiles)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	int	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetNoHistoryFiles();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__FileHistory_GetMenus); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetMenus)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	SV *	RETVAL;
    AV* aMenus = wxPli_objlist_2_av( aTHX_ THIS->GetMenus() );
    RETVAL = newRV_noinc( (SV*)aMenus  );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}

#if WXPERL_W_VERSION_GE( 2, 8, 3 )
#define XSubPPtmpAAAB 1


XS_EUPXS(XS_Wx__FileHistory_SetBaseId); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_SetBaseId)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, baseId");
    {
	wxWindowID    baseId = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;

	THIS->SetBaseId(baseId);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__FileHistory_GetBaseId); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FileHistory_GetBaseId)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxFileHistory *    THIS = (wxFileHistory *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::FileHistory" )
;
	wxWindowID	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetBaseId();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}

#endif

/* INCLUDE: Returning to 'XS/View.xs' from 'XS/FileHistory.xs' */


XS_EUPXS(XS_Wx__View_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxView *	RETVAL;
    RETVAL=new wxPliView( CLASS );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_Activate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_Activate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, activate");
    {
	bool	activate = (bool)SvTRUE(ST(1))
;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	THIS->Activate(activate);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_Close); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_Close)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, deleteWindow = 1");
    {
	bool	deleteWindow;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	bool	RETVAL;

	if (items < 2)
	    deleteWindow = 1;
	else {
	    deleteWindow = (bool)SvTRUE(ST(1))
;
	}

	RETVAL = THIS->Close(deleteWindow);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_GetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_GetDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	wxDocument *	RETVAL;

	RETVAL = THIS->GetDocument();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_GetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_GetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	wxDocManager *	RETVAL;

	RETVAL = THIS->GetDocumentManager();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_GetFrame); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_GetFrame)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	wxWindow *	RETVAL;

	RETVAL = THIS->GetFrame();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_SetFrame); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_SetFrame)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, frame");
    {
	wxWindow*    frame = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Window" )
;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	THIS->SetFrame(frame);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_GetViewName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_GetViewName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetViewName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_OnActivateView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnActivateView)
{
    dVAR; dXSARGS;
    if (items < 3 || items > 4)
       croak_xs_usage(cv,  "THIS, activate = 0, activeView, deactiveView");
    {
	bool	activate;
	wxView*    activeView = (wxView *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::View" )
;
	wxView*    deactiveView = (wxView *) wxPli_sv_2_object( aTHX_ ST(3), "Wx::View" )
;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	if (items < 2)
	    activate = 0;
	else {
	    activate = (bool)SvTRUE(ST(1))
;
	}

	THIS->OnActivateView(activate, activeView, deactiveView);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_OnChangeFilename); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnChangeFilename)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	THIS->OnChangeFilename();
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_OnClose); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnClose)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, deleteWindow = 0");
    {
	bool	deleteWindow;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	bool	RETVAL;

	if (items < 2)
	    deleteWindow = 0;
	else {
	    deleteWindow = (bool)SvTRUE(ST(1))
;
	}

	RETVAL = THIS->OnClose(deleteWindow);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__View_OnCreate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnCreate)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, doc, flags = 0");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	long	flags;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	bool	RETVAL;

	if (items < 3)
	    flags = 0;
	else {
	    flags = (long)SvIV(ST(2))
;
	}

	RETVAL = THIS->OnCreate(doc, flags);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#if wxPERL_USE_PRINTING_ARCHITECTURE
#define XSubPPtmpAAAC 1


XS_EUPXS(XS_Wx__View_OnCreatePrintout); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnCreatePrintout)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;
	wxPrintout *	RETVAL;

	RETVAL = THIS->OnCreatePrintout();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__View_OnUpdate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_OnUpdate)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, sender, hint = NULL");
    {
	wxView*    sender = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	wxObject*	hint;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	if (items < 3)
	    hint = NULL;
	else {
    hint = (wxObject *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::Object" )
;
	}

	THIS->OnUpdate(sender, hint);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_SetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_SetDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

	THIS->SetDocument(doc);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__View_SetViewName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__View_SetViewName)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, name");
    {
	wxString	name;
	wxView *    THIS = (wxView *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::View" )
;

    WXSTRING_INPUT( name, wxString, ST(1) )
;

	THIS->SetViewName(name);
    }
    XSRETURN_EMPTY;
}


/* INCLUDE: Returning to 'XS/Document.xs' from 'XS/View.xs' */

#include <wx/cmdproc.h>

XS_EUPXS(XS_Wx__Document_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocument *	RETVAL;
    RETVAL=new wxPliDocument( CLASS );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_DeleteContents); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_DeleteContents)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->DeleteContents();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_Close); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_Close)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->Close();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnCloseDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnCloseDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->OnCloseDocument();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_NotifyClosing); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_NotifyClosing)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	THIS->NotifyClosing();
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_GetViews); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetViews)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	SV *	RETVAL;
    AV* arrViews = wxPli_objlist_2_av( aTHX_ THIS->GetViews() );
    RETVAL = newRV_noinc( (SV*)arrViews  );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_DeleteAllViews); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_DeleteAllViews)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->DeleteAllViews();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_GetFirstView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetFirstView)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxView *	RETVAL;

	RETVAL = THIS->GetFirstView();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_GetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxDocManager *	RETVAL;

	RETVAL = THIS->GetDocumentManager();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_GetDocumentTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetDocumentTemplate)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxDocTemplate *	RETVAL;

	RETVAL = THIS->GetDocumentTemplate();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_GetDocumentName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetDocumentName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetDocumentName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnNewDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnNewDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->OnNewDocument();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_Save); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_Save)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->Save();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_SaveAs); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SaveAs)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->SaveAs();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnSaveDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnSaveDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, file");
    {
	wxString	file;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

    WXSTRING_INPUT( file, wxString, ST(1) )
;

	RETVAL = THIS->OnSaveDocument(file);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnOpenDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnOpenDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, file");
    {
	wxString	file;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

    WXSTRING_INPUT( file, wxString, ST(1) )
;

	RETVAL = THIS->OnOpenDocument(file);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_GetDocumentSaved); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetDocumentSaved)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->GetDocumentSaved();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_SetDocumentSaved); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetDocumentSaved)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, saved");
    {
	bool	saved = (bool)SvTRUE(ST(1))
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	THIS->SetDocumentSaved(saved);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_Revert); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_Revert)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->Revert();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#if WXPERL_W_VERSION_GE( 2, 9, 0 )
#define XSubPPtmpAAAD 1


XS_EUPXS(XS_Wx__Document_GetUserReadableName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetUserReadableName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetUserReadableName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#else
#define XSubPPtmpAAAE 1


XS_EUPXS(XS_Wx__Document_GetPrintableName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetPrintableName)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, buf");
    {
	wxString	buf;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

    WXSTRING_INPUT( buf, wxString, ST(1) )
;

	RETVAL = THIS->GetPrintableName(buf);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__Document_GetDocumentWindow); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetDocumentWindow)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxWindow *	RETVAL;

	RETVAL = THIS->GetDocumentWindow();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnCreateCommandProcessor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnCreateCommandProcessor)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxCommandProcessor *	RETVAL;

	RETVAL = THIS->OnCreateCommandProcessor();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::CommandProcessor", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_SetCommandProcessor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetCommandProcessor)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, processor");
    {
	wxCommandProcessor*    processor = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandProcessor" )
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
    wxPli_object_set_deleteable( aTHX_ ST(1), false );
    THIS->SetCommandProcessor( processor );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_OnSaveModified); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnSaveModified)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->OnSaveModified();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_IsModified); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_IsModified)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->IsModified();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_Modify); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_Modify)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, modify");
    {
	bool	modify = (bool)SvTRUE(ST(1))
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	THIS->Modify(modify);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_AddView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_AddView)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, view");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->AddView(view);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_RemoveView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_RemoveView)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, view");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

	RETVAL = THIS->RemoveView(view);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnCreate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnCreate)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "THIS, path, flags");
    {
	wxString	path;
	long	flags = (long)SvIV(ST(2))
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	bool	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	RETVAL = THIS->OnCreate(path, flags);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_OnChangedViewList); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_OnChangedViewList)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	THIS->OnChangedViewList();
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_UpdateAllViews); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_UpdateAllViews)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "THIS, sender = NULL, hint = NULL");
    {
	wxView*	sender;
	wxObject*	hint;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	if (items < 2)
	    sender = NULL;
	else {
    sender = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	}

	if (items < 3)
	    hint = NULL;
	else {
    hint = (wxObject *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::Object" )
;
	}

	THIS->UpdateAllViews(sender, hint);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_SetFilename); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetFilename)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, filename, notifyViews = false");
    {
	wxString	filename;
	bool	notifyViews;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

    WXSTRING_INPUT( filename, wxString, ST(1) )
;

	if (items < 3)
	    notifyViews = false;
	else {
	    notifyViews = (bool)SvTRUE(ST(2))
;
	}

	THIS->SetFilename(filename, notifyViews);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_GetFilename); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetFilename)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetFilename();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_SetTitle); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetTitle)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, title");
    {
	wxString	title;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

    WXSTRING_INPUT( title, wxString, ST(1) )
;

	THIS->SetTitle(title);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_GetTitle); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_GetTitle)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetTitle();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Document_SetDocumentName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetDocumentName)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, name");
    {
	wxString	name;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

    WXSTRING_INPUT( name, wxString, ST(1) )
;

	THIS->SetDocumentName(name);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Document_SetDocumentTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Document_SetDocumentTemplate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, templ");
    {
	wxDocTemplate*    templ = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocTemplate" )
;
	wxDocument *    THIS = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Document" )
;

	THIS->SetDocumentTemplate(templ);
    }
    XSRETURN_EMPTY;
}


/* INCLUDE: Returning to 'XS/DocTemplate.xs' from 'XS/Document.xs' */


XS_EUPXS(XS_Wx__DocTemplate_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_new)
{
    dVAR; dXSARGS;
    if (items < 8 || items > 11)
       croak_xs_usage(cv,  "CLASS, manager, descr, filter, dir, ext, docTypeName, viewTypeName, docClassInfo = NULL, viewClassInfo = NULL, flags = wxDEFAULT_TEMPLATE_FLAGS");
    {
	wxDocManager*    manager = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocManager" )
;
	wxString	descr;
	wxString	filter;
	wxString	dir;
	wxString	ext;
	wxString	docTypeName;
	wxString	viewTypeName;
	SV*	docClassInfo;
	SV*	viewClassInfo;
	long	flags;
    wxClassInfo *docCInfo = 0, *viewCInfo = 0;
    wxString docClassName, viewClassName;
    bool hasDocInfo, hasViewInfo;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocTemplate *	RETVAL;

    WXSTRING_INPUT( descr, wxString, ST(2) )
;

    WXSTRING_INPUT( filter, wxString, ST(3) )
;

    WXSTRING_INPUT( dir, wxString, ST(4) )
;

    WXSTRING_INPUT( ext, wxString, ST(5) )
;

    WXSTRING_INPUT( docTypeName, wxString, ST(6) )
;

    WXSTRING_INPUT( viewTypeName, wxString, ST(7) )
;

	if (items < 9)
	    docClassInfo = NULL;
	else {
	    docClassInfo = ST(8)
;
	}

	if (items < 10)
	    viewClassInfo = NULL;
	else {
	    viewClassInfo = ST(9)
;
	}

	if (items < 11)
	    flags = wxDEFAULT_TEMPLATE_FLAGS;
	else {
	    flags = (long)SvIV(ST(10))
;
	}
    if( docClassInfo )
    {
        hasDocInfo = SvROK( docClassInfo );
        if( hasDocInfo )
        {
            docCInfo = (wxClassInfo*)wxPli_sv_2_object( aTHX_ docClassInfo,
                                                        "Wx::ClassInfo" );
        }
        else
        {
            WXSTRING_INPUT( docClassName, wxString, docClassInfo );
        }
    }

    if( viewClassInfo )
    {
        hasViewInfo = SvROK( viewClassInfo );
        if( hasViewInfo )
        {
            viewCInfo = (wxClassInfo*)wxPli_sv_2_object( aTHX_ viewClassInfo,
                                                         "Wx::ClassInfo" );
        }
        else
        {
            WXSTRING_INPUT( viewClassName, wxString, viewClassInfo );
        }
    }

    RETVAL = new wxPliDocTemplate( CLASS, manager, descr, filter, dir, ext,
                                   docTypeName, viewTypeName,
                                   docCInfo, viewCInfo, flags,
                                   docClassName, viewClassName );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_CreateDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_CreateDocument)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "THIS, path, flags");
    {
	wxString	path;
	long	flags = (long)SvIV(ST(2))
;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxDocument *	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	RETVAL = THIS->CreateDocument(path, flags);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_CreateView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_CreateView)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "THIS, doc, flags");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	long	flags = (long)SvIV(ST(2))
;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxView *	RETVAL;

	RETVAL = THIS->CreateView(doc, flags);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetDefaultExtension); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetDefaultExtension)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetDefaultExtension();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetDescription); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetDescription)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetDescription();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetDirectory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetDirectory)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetDirectory();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxDocManager *	RETVAL;

	RETVAL = THIS->GetDocumentManager();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_SetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, manager");
    {
	wxDocManager*    manager = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocManager" )
;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

	THIS->SetDocumentManager(manager);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_GetFileFilter); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetFileFilter)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetFileFilter();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetFlags); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetFlags)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	long	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetFlags();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetViewName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetViewName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetViewName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_GetDocumentName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_GetDocumentName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetDocumentName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_SetFileFilter); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetFileFilter)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, filter");
    {
	wxString	filter;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

    WXSTRING_INPUT( filter, wxString, ST(1) )
;

	THIS->SetFileFilter(filter);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_SetDirectory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetDirectory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, dir");
    {
	wxString	dir;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

    WXSTRING_INPUT( dir, wxString, ST(1) )
;

	THIS->SetDirectory(dir);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_SetDescription); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetDescription)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, descr");
    {
	wxString	descr;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

    WXSTRING_INPUT( descr, wxString, ST(1) )
;

	THIS->SetDescription(descr);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_SetDefaultExtension); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetDefaultExtension)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, ext");
    {
	wxString	ext;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

    WXSTRING_INPUT( ext, wxString, ST(1) )
;

	THIS->SetDefaultExtension(ext);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_SetFlags); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_SetFlags)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, flags");
    {
	long	flags = (long)SvIV(ST(1))
;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;

	THIS->SetFlags(flags);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocTemplate_IsVisible); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_IsVisible)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	bool	RETVAL;

	RETVAL = THIS->IsVisible();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocTemplate_FileMatchesTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocTemplate_FileMatchesTemplate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, path");
    {
	wxString	path;
	wxDocTemplate *    THIS = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocTemplate" )
;
	bool	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	RETVAL = THIS->FileMatchesTemplate(path);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


/* INCLUDE: Returning to 'XS/DocManager.xs' from 'XS/DocTemplate.xs' */


XS_EUPXS(XS_Wx__DocManager_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, flags = wxDEFAULT_DOCMAN_FLAGS, initialize = true");
    {
	long	flags;
	bool	initialize;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocManager *	RETVAL;

	if (items < 2)
	    flags = wxDEFAULT_DOCMAN_FLAGS;
	else {
	    flags = (long)SvIV(ST(1))
;
	}

	if (items < 3)
	    initialize = true;
	else {
	    initialize = (bool)SvTRUE(ST(2))
;
	}
    RETVAL=new wxPliDocManager(CLASS, flags, initialize);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_Clear); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_Clear)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, force");
    {
	bool	force = (bool)SvTRUE(ST(1))
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	bool	RETVAL;

	RETVAL = THIS->Clear(force);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_Initialize); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_Initialize)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	bool	RETVAL;

	RETVAL = THIS->Initialize();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_OnCreateFileHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnCreateFileHistory)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxFileHistory *	RETVAL;

	RETVAL = THIS->OnCreateFileHistory();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_GetFileHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetFileHistory)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxFileHistory *	RETVAL;

	RETVAL = THIS->GetFileHistory();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_SetMaxDocsOpen); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_SetMaxDocsOpen)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, n");
    {
	int	n = (int)SvIV(ST(1))
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->SetMaxDocsOpen(n);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_GetMaxDocsOpen); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetMaxDocsOpen)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	int	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetMaxDocsOpen();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_GetDocuments); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetDocuments)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	SV *	RETVAL;
    AV* arrDocs = wxPli_objlist_2_av( aTHX_ THIS->GetDocuments() );
    RETVAL = newRV_noinc( (SV*)arrDocs  );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_GetTemplates); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetTemplates)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	SV *	RETVAL;
    AV* arrDocs = wxPli_objlist_2_av( aTHX_ THIS->GetTemplates() );
    RETVAL = newRV_noinc( (SV*)arrDocs  );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_GetLastDirectory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetLastDirectory)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetLastDirectory();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_SetLastDirectory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_SetLastDirectory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, dir");
    {
	wxString	dir;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

    WXSTRING_INPUT( dir, wxString, ST(1) )
;

	THIS->SetLastDirectory(dir);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileClose); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileClose)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileClose( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileCloseAll); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileCloseAll)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileCloseAll( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileNew); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileNew)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileNew( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileOpen); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileOpen)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileOpen( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileRevert); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileRevert)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileRevert( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileSave); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileSave)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileSave( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnFileSaveAs); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnFileSaveAs)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnFileSaveAs( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnPrint); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnPrint)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnPrint( *event );
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_LE( 2, 5, 2 )
#define XSubPPtmpAAAF 1


XS_EUPXS(XS_Wx__DocManager_OnPrintSetup); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnPrintSetup)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnPrintSetup( *event );
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__DocManager_OnPreview); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnPreview)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnPreview( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnUndo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUndo)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUndo( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnRedo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnRedo)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxCommandEvent*    event = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::CommandEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnRedo( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnUpdateFileOpen); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileOpen)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileOpen( *event );
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_LT( 2, 9, 0 )
#define XSubPPtmpAAAG 1


XS_EUPXS(XS_Wx__DocManager_OnUpdateFileClose); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileClose)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileClose( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnUpdateFileRevert); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileRevert)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileRevert( *event );
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__DocManager_OnUpdateFileNew); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileNew)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileNew( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnUpdateFileSave); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileSave)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileSave( *event );
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_LT( 2, 9, 0 )
#define XSubPPtmpAAAH 1


XS_EUPXS(XS_Wx__DocManager_OnUpdateFileSaveAs); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateFileSaveAs)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateFileSaveAs( *event );
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__DocManager_OnUpdateUndo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateUndo)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateUndo( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_OnUpdateRedo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdateRedo)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdateRedo( *event );
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_LT( 2, 9, 0 )
#define XSubPPtmpAAAI 1


XS_EUPXS(XS_Wx__DocManager_OnUpdatePrint); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdatePrint)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdatePrint( *event );
    }
    XSRETURN_EMPTY;
}

#endif
#if WXPERL_W_VERSION_LE( 2, 5, 2 )
#define XSubPPtmpAAAJ 1


XS_EUPXS(XS_Wx__DocManager_OnUpdatePrintSetup); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdatePrintSetup)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdatePrintSetup( *event );
    }
    XSRETURN_EMPTY;
}

#endif
#if WXPERL_W_VERSION_LT( 2, 9, 0 )
#define XSubPPtmpAAAK 1


XS_EUPXS(XS_Wx__DocManager_OnUpdatePreview); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_OnUpdatePreview)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxUpdateUIEvent*    event = (wxUpdateUIEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::UpdateUIEvent" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
    THIS->OnUpdatePreview( *event );
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__DocManager_GetCurrentView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetCurrentView)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxView *	RETVAL;

	RETVAL = THIS->GetCurrentView();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_CreateDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_CreateDocument)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, path, flags = 0");
    {
	wxString	path;
	long	flags;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocument *	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	if (items < 3)
	    flags = 0;
	else {
	    flags = (long)SvIV(ST(2))
;
	}

	RETVAL = THIS->CreateDocument(path, flags);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_CreateView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_CreateView)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, doc, flags = 0");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	long	flags;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxView *	RETVAL;

	if (items < 3)
	    flags = 0;
	else {
	    flags = (long)SvIV(ST(2))
;
	}

	RETVAL = THIS->CreateView(doc, flags);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_DeleteTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_DeleteTemplate)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, temp, flags = 0");
    {
	wxDocTemplate*    temp = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocTemplate" )
;
	long	flags;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	if (items < 3)
	    flags = 0;
	else {
	    flags = (long)SvIV(ST(2))
;
	}

	THIS->DeleteTemplate(temp, flags);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_FlushDoc); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FlushDoc)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	bool	RETVAL;

	RETVAL = THIS->FlushDoc(doc);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_GetCurrentDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetCurrentDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocument *	RETVAL;

	RETVAL = THIS->GetCurrentDocument();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#if WXPERL_W_VERSION_GE( 2, 9, 0 )
#define XSubPPtmpAAAL 1


XS_EUPXS(XS_Wx__DocManager_MakeNewDocumentName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_MakeNewDocumentName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxString	RETVAL;

	RETVAL = THIS->MakeNewDocumentName();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#else
#define XSubPPtmpAAAM 1


XS_EUPXS(XS_Wx__DocManager_MakeDefaultName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_MakeDefaultName)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, name");
    {
	wxString	name;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	bool	RETVAL;

    WXSTRING_INPUT( name, wxString, ST(1) )
;

	RETVAL = THIS->MakeDefaultName(name);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__DocManager_MakeFrameTitle); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_MakeFrameTitle)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxString	RETVAL;

	RETVAL = THIS->MakeFrameTitle(doc);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_MatchTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_MatchTemplate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, path");
    {
	wxString	path;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocTemplate *	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	RETVAL = THIS->MatchTemplate(path);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_AddFileToHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_AddFileToHistory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, file");
    {
	wxString	file;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

    WXSTRING_INPUT( file, wxString, ST(1) )
;

	THIS->AddFileToHistory(file);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_RemoveFileFromHistory); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_RemoveFileFromHistory)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, i");
    {
	int	i = (int)SvIV(ST(1))
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->RemoveFileFromHistory(i);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_GetHistoryFile); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetHistoryFile)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, i");
    {
	int	i = (int)SvIV(ST(1))
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxString	RETVAL;

	RETVAL = THIS->GetHistoryFile(i);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_FileHistoryUseMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FileHistoryUseMenu)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, menu");
    {
	wxMenu*    menu = (wxMenu *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Menu" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->FileHistoryUseMenu(menu);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_FileHistoryRemoveMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FileHistoryRemoveMenu)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, menu");
    {
	wxMenu*    menu = (wxMenu *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Menu" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->FileHistoryRemoveMenu(menu);
    }
    XSRETURN_EMPTY;
}

#if wxUSE_CONFIG
#define XSubPPtmpAAAN 1


XS_EUPXS(XS_Wx__DocManager_FileHistoryLoad); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FileHistoryLoad)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, config");
    {
	wxConfigBase*    config = (wxConfigBase *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::ConfigBase" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->FileHistoryLoad(*config);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_FileHistorySave); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FileHistorySave)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, config");
    {
	wxConfigBase*    config = (wxConfigBase *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::ConfigBase" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->FileHistorySave(*config);
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__DocManager_FileHistoryAddFilesToMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FileHistoryAddFilesToMenu)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "THIS, ...");
    if (items == 1)
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
      THIS->FileHistoryAddFilesToMenu();
    }
    else if (items == 2)
    {
	wxMenu*	menu;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
      THIS->FileHistoryAddFilesToMenu( menu );
    }
    else
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
      croak( "Usage: Wx::FileHistory::AddfilesToMenu(THIS [, menu ] )" );
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_GE( 2, 5, 1 )
#define XSubPPtmpAAAO 1


XS_EUPXS(XS_Wx__DocManager_GetHistoryFilesCount); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetHistoryFilesCount)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	size_t	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetHistoryFilesCount();
	XSprePUSH; PUSHu((UV)RETVAL );
    }
    XSRETURN(1);
}

#else
#define XSubPPtmpAAAP 1


XS_EUPXS(XS_Wx__DocManager_GetNoHistoryFiles); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_GetNoHistoryFiles)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	int	RETVAL;
	dXSTARG;

	RETVAL = THIS->GetNoHistoryFiles();
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__DocManager_FindTemplateForPath); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_FindTemplateForPath)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, path");
    {
	wxString	path;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocTemplate *	RETVAL;

    WXSTRING_INPUT( path, wxString, ST(1) )
;

	RETVAL = THIS->FindTemplateForPath(path);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_SelectDocumentPath); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_SelectDocumentPath)
{
    dVAR; dXSARGS;
    if (items < 5 || items > 6)
       croak_xs_usage(cv,  "THIS, templates, noTemplates, path, flags, save = false");
    {
	AV*	templates;
	int	noTemplates = (int)SvIV(ST(2))
;
	wxString	path;
	long	flags = (long)SvIV(ST(4))
;
	bool	save;
    int tmpl_n;
    int i;
    wxDocTemplate **pltemplates;
    wxDocTemplate *thistemplate;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocTemplate *	RETVAL;

	STMT_START {
		SV* const xsub_tmp_sv = ST(1);
		SvGETMAGIC(xsub_tmp_sv);
		if (SvROK(xsub_tmp_sv) && SvTYPE(SvRV(xsub_tmp_sv)) == SVt_PVAV){
		    templates = (AV*)SvRV(xsub_tmp_sv);
		}
		else{
		    Perl_croak_nocontext("%s: %s is not an ARRAY reference",
				"Wx::DocManager::SelectDocumentPath",
				"templates");
		}
	} STMT_END
;

    WXSTRING_INPUT( path, wxString, ST(3) )
;

	if (items < 6)
	    save = false;
	else {
	    save = (bool)SvTRUE(ST(5))
;
	}
    tmpl_n = av_len(templates) + 1;
    pltemplates = new wxDocTemplate *[ tmpl_n ];
    for(i = 0; i < tmpl_n; i++)
    {
      SV** pltemplate = av_fetch( (AV*) templates, i, 0 );
      wxDocTemplate* thistemplate = (wxDocTemplate *)
                      wxPli_sv_2_object( aTHX_ *pltemplate, "Wx::DocTemplate" );
      pltemplates[i] = thistemplate;
    }
    RETVAL = THIS->SelectDocumentPath(pltemplates, noTemplates, path, flags, save);
    delete[] pltemplates;
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_SelectDocumentType); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_SelectDocumentType)
{
    dVAR; dXSARGS;
    if (items < 3 || items > 4)
       croak_xs_usage(cv,  "THIS, templates, noTemplates, sort = false");
    {
	AV*	templates;
	int	noTemplates = (int)SvIV(ST(2))
;
	bool	sort;
    int tmpl_n;
    int i;
    wxDocTemplate **pltemplates;
    wxDocTemplate *thistemplate;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocTemplate *	RETVAL;

	STMT_START {
		SV* const xsub_tmp_sv = ST(1);
		SvGETMAGIC(xsub_tmp_sv);
		if (SvROK(xsub_tmp_sv) && SvTYPE(SvRV(xsub_tmp_sv)) == SVt_PVAV){
		    templates = (AV*)SvRV(xsub_tmp_sv);
		}
		else{
		    Perl_croak_nocontext("%s: %s is not an ARRAY reference",
				"Wx::DocManager::SelectDocumentType",
				"templates");
		}
	} STMT_END
;

	if (items < 4)
	    sort = false;
	else {
	    sort = (bool)SvTRUE(ST(3))
;
	}
    tmpl_n = av_len(templates) + 1;
    pltemplates = new wxDocTemplate *[ tmpl_n ];
    for(i = 0; i < tmpl_n; i++)
    {
      SV** pltemplate = av_fetch( (AV*) templates, i, 0 );
      wxDocTemplate* thistemplate = (wxDocTemplate *)
                      wxPli_sv_2_object( aTHX_ *pltemplate, "Wx::DocTemplate" );
      pltemplates[i] = thistemplate;
    }
    RETVAL = THIS->SelectDocumentType(pltemplates, noTemplates, sort);
    delete[] pltemplates;
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_SelectViewType); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_SelectViewType)
{
    dVAR; dXSARGS;
    if (items < 3 || items > 4)
       croak_xs_usage(cv,  "THIS, templates, noTemplates, sort = false");
    {
	AV*	templates;
	int	noTemplates = (int)SvIV(ST(2))
;
	bool	sort;
    int tmpl_n;
    int i;
    wxDocTemplate **pltemplates;
    wxDocTemplate *thistemplate;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	wxDocTemplate *	RETVAL;

	STMT_START {
		SV* const xsub_tmp_sv = ST(1);
		SvGETMAGIC(xsub_tmp_sv);
		if (SvROK(xsub_tmp_sv) && SvTYPE(SvRV(xsub_tmp_sv)) == SVt_PVAV){
		    templates = (AV*)SvRV(xsub_tmp_sv);
		}
		else{
		    Perl_croak_nocontext("%s: %s is not an ARRAY reference",
				"Wx::DocManager::SelectViewType",
				"templates");
		}
	} STMT_END
;

	if (items < 4)
	    sort = false;
	else {
	    sort = (bool)SvTRUE(ST(3))
;
	}
    tmpl_n = av_len(templates) + 1;
    pltemplates = new wxDocTemplate *[ tmpl_n ];
    for(i = 0; i < tmpl_n; i++)
    {
      SV** pltemplate = av_fetch( (AV*) templates, i, 0 );
      wxDocTemplate* thistemplate = (wxDocTemplate *)
                      wxPli_sv_2_object( aTHX_ *pltemplate, "Wx::DocTemplate" );
      pltemplates[i] = thistemplate;
    }
    RETVAL = THIS->SelectViewType(pltemplates, noTemplates, sort);
    delete[] pltemplates;
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocManager_AssociateTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_AssociateTemplate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, temp");
    {
	wxDocTemplate*    temp = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocTemplate" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->AssociateTemplate(temp);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_DisassociateTemplate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_DisassociateTemplate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, temp");
    {
	wxDocTemplate*    temp = (wxDocTemplate *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocTemplate" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->DisassociateTemplate(temp);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_AddDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_AddDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->AddDocument(doc);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_RemoveDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_RemoveDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	THIS->RemoveDocument(doc);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocManager_CloseDocuments); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_CloseDocuments)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, force = true");
    {
	bool	force;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;
	bool	RETVAL;

	if (items < 2)
	    force = true;
	else {
	    force = (bool)SvTRUE(ST(1))
;
	}

	RETVAL = THIS->CloseDocuments(force);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#if WXPERL_W_VERSION_GE( 2, 5, 1 )
#define XSubPPtmpAAAQ 1


XS_EUPXS(XS_Wx__DocManager_ActivateView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_ActivateView)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, view, activate = true");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	bool	activate;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	if (items < 3)
	    activate = true;
	else {
	    activate = (bool)SvTRUE(ST(2))
;
	}

	THIS->ActivateView(view, activate);
    }
    XSRETURN_EMPTY;
}

#else
#define XSubPPtmpAAAR 1


XS_EUPXS(XS_Wx__DocManager_ActivateView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocManager_ActivateView)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 4)
       croak_xs_usage(cv,  "THIS, view, activate = true, deleting = false");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	bool	activate;
	bool	deleting;
	wxDocManager *    THIS = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocManager" )
;

	if (items < 3)
	    activate = true;
	else {
	    activate = (bool)SvTRUE(ST(2))
;
	}

	if (items < 4)
	    deleting = false;
	else {
	    deleting = (bool)SvTRUE(ST(3))
;
	}

	THIS->ActivateView(view, activate, deleting);
    }
    XSRETURN_EMPTY;
}

#endif

/* INCLUDE: Returning to 'DocView.xs' from 'XS/DocManager.xs' */


/* INCLUDE_COMMAND:  Including output of '/usr/bin/perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/CommandProcessor.xsp' from 'DocView.xs' */

#include <exception>

#undef  xsp_constructor_class
#define xsp_constructor_class(c) (c)
#include <wx/cmdproc.h>
#include <wx/menu.h>
#include "cpp/v_cback.h"
#include "xspp/cmdproc.h"

XS_EUPXS(XS_Wx__Command_CLONE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_CLONE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
    wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Command_DESTROY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_DESTROY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
    wxPli_thread_sv_unregister( aTHX_ wxPli_get_class( aTHX_ ST(0) ),
                                THIS, ST(0) );
    if( wxPli_object_is_deleteable( aTHX_ ST(0) ) )
        delete THIS;
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Command_Destroy); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_Destroy)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
     wxPli_detach_object( aTHX_ ST(0) );
                delete THIS;
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Command_Do); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_Do)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->Do();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Command_Undo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_Undo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->Undo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Command_CanUndo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_CanUndo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->CanUndo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__Command_GetName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Command_GetName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommand *    THIS = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Command" )
;
	wxString	RETVAL;
    try {
      RETVAL = THIS->GetName();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#undef  xsp_constructor_class
#define xsp_constructor_class(c) (CLASS)

XS_EUPXS(XS_Wx__PlCommand_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlCommand_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, canUndoIt= false, name= wxEmptyString");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxPlCommand *	RETVAL;
	bool	canUndoIt;
	wxString	name;

	if (items < 2)
	    canUndoIt = false;
	else {
	    canUndoIt = (bool)SvTRUE(ST(1))
;
	}

	if (items < 3)
	    name = wxEmptyString;
	else {
    WXSTRING_INPUT( name, wxString, ST(2) )
;
	}
     RETVAL = new wxPlCommand( CLASS, canUndoIt, name );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::PlCommand", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#undef  xsp_constructor_class
#define xsp_constructor_class(c) (c)

XS_EUPXS(XS_Wx__PlCommand_CanUndo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlCommand_CanUndo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxPlCommand *    THIS = (wxPlCommand *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::PlCommand" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->base_CanUndo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#undef  xsp_constructor_class
#define xsp_constructor_class(c) (CLASS)

XS_EUPXS(XS_Wx__CommandProcessor_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "CLASS, maxCommands= -1");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxCommandProcessor *	RETVAL;
	int	maxCommands;

	if (items < 2)
	    maxCommands = -1;
	else {
	    maxCommands = (int)SvIV(ST(1))
;
	}
    try {
      RETVAL = new wxCommandProcessor( maxCommands );
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::CommandProcessor", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#undef  xsp_constructor_class
#define xsp_constructor_class(c) (c)

XS_EUPXS(XS_Wx__CommandProcessor_CLONE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_CLONE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
    wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_DESTROY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_DESTROY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    wxPli_thread_sv_unregister( aTHX_ wxPli_get_class( aTHX_ ST(0) ),
                                THIS, ST(0) );
    if( wxPli_object_is_deleteable( aTHX_ ST(0) ) )
        delete THIS;
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_Submit); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_Submit)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "THIS, command, storeIt= true");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
	wxCommand*    command = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Command" )
;
	bool	storeIt;

	if (items < 3)
	    storeIt = true;
	else {
	    storeIt = (bool)SvTRUE(ST(2))
;
	}
     wxPli_object_set_deleteable( aTHX_ ST(1), false );
                RETVAL = THIS->Submit( command, storeIt ); 
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_Store); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_Store)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, command");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxCommand*    command = (wxCommand *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Command" )
;
     wxPli_object_set_deleteable( aTHX_ ST(1), false );
                THIS->Store( command ); 
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_Undo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_Undo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->Undo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_Redo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_Redo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->Redo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_CanUndo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_CanUndo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->CanUndo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_CanRedo); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_CanRedo)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->CanRedo();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_Initialize); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_Initialize)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    try {
      THIS->Initialize();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_SetMenuStrings); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_SetMenuStrings)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    try {
      THIS->SetMenuStrings();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_GetUndoMenuLabel); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetUndoMenuLabel)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	RETVAL;
    try {
      RETVAL = THIS->GetUndoMenuLabel();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_GetRedoMenuLabel); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetRedoMenuLabel)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	RETVAL;
    try {
      RETVAL = THIS->GetRedoMenuLabel();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#if wxUSE_MENUS
#define XSpp_a2c9be6f_032832
#define XSubPPtmpAAAS 1


XS_EUPXS(XS_Wx__CommandProcessor_SetEditMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_SetEditMenu)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, menu");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxMenu*    menu = (wxMenu *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Menu" )
;
    try {
      THIS->SetEditMenu( menu );
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_GetEditMenu); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetEditMenu)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxMenu *	RETVAL;
    try {
      RETVAL = THIS->GetEditMenu();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#endif // wxUSE_MENUS

XS_EUPXS(XS_Wx__CommandProcessor_GetCommands); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetCommands)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    const wxList& cmds = THIS->GetCommands();
    PUTBACK;
    wxPli_objlist_push( aTHX_ cmds );
    SPAGAIN;
    for( int i = cmds.GetCount() - 0; i >= 0; --i )
        wxPli_object_set_deleteable( aTHX_ SP[-i], false );
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_Wx__CommandProcessor_GetCurrentCommand); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetCurrentCommand)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxCommand *	RETVAL;
    try {
      RETVAL = THIS->GetCurrentCommand();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::Command", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_GetMaxCommands); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetMaxCommands)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	int	RETVAL;
	dXSTARG;
    try {
      RETVAL = THIS->GetMaxCommands();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	XSprePUSH; PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_ClearCommands); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_ClearCommands)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    try {
      THIS->ClearCommands();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_GE( 2, 6, 0 )
#define XSpp_a2c9be6f_045416
#define XSubPPtmpAAAT 1


XS_EUPXS(XS_Wx__CommandProcessor_IsDirty); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_IsDirty)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	bool	RETVAL;
    try {
      RETVAL = THIS->IsDirty();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_MarkAsSaved); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_MarkAsSaved)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
    try {
      THIS->MarkAsSaved();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__CommandProcessor_GetUndoAccelerator); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetUndoAccelerator)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	RETVAL;
    try {
      RETVAL = THIS->GetUndoAccelerator();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_GetRedoAccelerator); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_GetRedoAccelerator)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	RETVAL;
    try {
      RETVAL = THIS->GetRedoAccelerator();
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    WXSTRING_OUTPUT( RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandProcessor_SetUndoAccelerator); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_SetUndoAccelerator)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, accel");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	accel;

    WXSTRING_INPUT( accel, wxString, ST(1) )
;
    try {
      THIS->SetUndoAccelerator( accel );
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__CommandProcessor_SetRedoAccelerator); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandProcessor_SetRedoAccelerator)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, accel");
    {
	wxCommandProcessor *    THIS = (wxCommandProcessor *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandProcessor" )
;
	wxString	accel;

    WXSTRING_INPUT( accel, wxString, ST(1) )
;
    try {
      THIS->SetRedoAccelerator( accel );
    }
    catch (std::exception& e) {
      croak("Caught C++ exception of type or derived from 'std::exception': %s", e.what());
    }
    catch (...) {
      croak("Caught C++ exception of unknown type");
    }
    }
    XSRETURN_EMPTY;
}


/* INCLUDE: Returning to 'DocView.xs' from '/usr/bin/perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/CommandProcessor.xsp' */

#if wxUSE_MDI_ARCHITECTURE && wxUSE_DOC_VIEW_ARCHITECTURE
#define XSubPPtmpAAAU 1


/* INCLUDE:  Including 'XS/DocMDIParentFrame.xs' from 'DocView.xs' */


/* INCLUDE:  Including 'XS/DocMDIChildFrame.xs' from 'XS/DocMDIParentFrame.xs' */


XS_EUPXS(XS_Wx__DocMDIChildFrame_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_new)
{
    dVAR; dXSARGS;
    if (items < 6 || items > 10)
       croak_xs_usage(cv,  "CLASS, doc, view, frame, id, title, pos = wxDefaultPosition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wxFrameNameStr");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::View" )
;
	wxMDIParentFrame*    frame = (wxMDIParentFrame *) wxPli_sv_2_object( aTHX_ ST(3), "Wx::MDIParentFrame" )
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(4) )
;
	wxString	title;
	wxPoint	pos;
	wxSize	size;
	long	style;
	wxString	name;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocMDIChildFrame *	RETVAL;

    WXSTRING_INPUT( title, wxString, ST(5) )
;

	if (items < 7)
	    pos = wxDefaultPosition;
	else {
    pos = wxPli_sv_2_wxpoint( aTHX_ ST(6) )
;
	}

	if (items < 8)
	    size = wxDefaultSize;
	else {
    size = wxPli_sv_2_wxsize( aTHX_ ST(7) )
;
	}

	if (items < 9)
	    style = wxDEFAULT_FRAME_STYLE;
	else {
	    style = (long)SvIV(ST(8))
;
	}

	if (items < 10)
	    name = wxFrameNameStr;
	else {
    WXSTRING_INPUT( name, wxString, ST(9) )
;
	}
    RETVAL=new wxPliDocMDIChildFrame(CLASS, doc, view, frame, id, title, pos, size, style, name);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocMDIChildFrame_GetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_GetDocument)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocMDIChildFrame *    THIS = (wxDocMDIChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIChildFrame" )
;
	wxDocument *	RETVAL;

	RETVAL = THIS->GetDocument();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocMDIChildFrame_GetView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_GetView)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocMDIChildFrame *    THIS = (wxDocMDIChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIChildFrame" )
;
	wxView *	RETVAL;

	RETVAL = THIS->GetView();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocMDIChildFrame_SetDocument); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_SetDocument)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, doc");
    {
	wxDocument*    doc = (wxDocument *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Document" )
;
	wxDocMDIChildFrame *    THIS = (wxDocMDIChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIChildFrame" )
;

	THIS->SetDocument(doc);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocMDIChildFrame_SetView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_SetView)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, view");
    {
	wxView*    view = (wxView *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::View" )
;
	wxDocMDIChildFrame *    THIS = (wxDocMDIChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIChildFrame" )
;

	THIS->SetView(view);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__DocMDIChildFrame_Destroy); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIChildFrame_Destroy)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocMDIChildFrame *    THIS = (wxDocMDIChildFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIChildFrame" )
;
	bool	RETVAL;

	RETVAL = THIS->Destroy();
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


/* INCLUDE: Returning to 'XS/DocMDIParentFrame.xs' from 'XS/DocMDIChildFrame.xs' */


XS_EUPXS(XS_Wx__DocMDIParentFrame_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIParentFrame_new)
{
    dVAR; dXSARGS;
    if (items < 5 || items > 9)
       croak_xs_usage(cv,  "CLASS, manager, frame, id, title, pos = wxDefaultPosition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wxFrameNameStr");
    {
	wxDocManager*    manager = (wxDocManager *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DocManager" )
;
	wxFrame*    frame = (wxFrame *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::Frame" )
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(3) )
;
	wxString	title;
	wxPoint	pos;
	wxSize	size;
	long	style;
	wxString	name;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxDocMDIParentFrame *	RETVAL;

    WXSTRING_INPUT( title, wxString, ST(4) )
;

	if (items < 6)
	    pos = wxDefaultPosition;
	else {
    pos = wxPli_sv_2_wxpoint( aTHX_ ST(5) )
;
	}

	if (items < 7)
	    size = wxDefaultSize;
	else {
    size = wxPli_sv_2_wxsize( aTHX_ ST(6) )
;
	}

	if (items < 8)
	    style = wxDEFAULT_FRAME_STYLE;
	else {
	    style = (long)SvIV(ST(7))
;
	}

	if (items < 9)
	    name = wxFrameNameStr;
	else {
    WXSTRING_INPUT( name, wxString, ST(8) )
;
	}
    RETVAL=new wxPliDocMDIParentFrame(CLASS, manager, frame, id, title, pos, size, style, name);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__DocMDIParentFrame_GetDocumentManager); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__DocMDIParentFrame_GetDocumentManager)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxDocMDIParentFrame *    THIS = (wxDocMDIParentFrame *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DocMDIParentFrame" )
;
	wxDocManager *	RETVAL;

	RETVAL = THIS->GetDocumentManager();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


/* INCLUDE: Returning to 'DocView.xs' from 'XS/DocMDIParentFrame.xs' */

#endif
#include "cpp/dv_constants.cpp"
#if defined(__WXMSW__)
#undef XS
#define XS( name ) WXXS( name )
#endif
#ifdef __cplusplus
extern "C"
#endif
XS_EXTERNAL(boot_Wx__DocView); /* prototype to pass -Wmissing-prototypes */
XS_EXTERNAL(boot_Wx__DocView)
{
#if PERL_VERSION_LE(5, 21, 5)
    dVAR; dXSARGS;
#else
    dVAR; dXSBOOTARGSXSAPIVERCHK;
#endif
#if (PERL_REVISION == 5 && PERL_VERSION < 9)
    char* file = __FILE__;
#else
    const char* file = __FILE__;
#endif

    PERL_UNUSED_VAR(file);

    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
#if PERL_VERSION_LE(5, 21, 5)
    XS_VERSION_BOOTCHECK;
#  ifdef XS_APIVERSION_BOOTCHECK
    XS_APIVERSION_BOOTCHECK;
#  endif
#endif

        newXS_deffile("Wx::DocChildFrame::new", XS_Wx__DocChildFrame_new);
        newXS_deffile("Wx::DocChildFrame::GetDocument", XS_Wx__DocChildFrame_GetDocument);
        newXS_deffile("Wx::DocChildFrame::GetView", XS_Wx__DocChildFrame_GetView);
        newXS_deffile("Wx::DocChildFrame::SetDocument", XS_Wx__DocChildFrame_SetDocument);
        newXS_deffile("Wx::DocChildFrame::SetView", XS_Wx__DocChildFrame_SetView);
        newXS_deffile("Wx::DocChildFrame::Destroy", XS_Wx__DocChildFrame_Destroy);
        newXS_deffile("Wx::DocParentFrame::new", XS_Wx__DocParentFrame_new);
        newXS_deffile("Wx::DocParentFrame::GetDocumentManager", XS_Wx__DocParentFrame_GetDocumentManager);
        newXS_deffile("Wx::FileHistory::new", XS_Wx__FileHistory_new);
        newXS_deffile("Wx::FileHistory::AddFileToHistory", XS_Wx__FileHistory_AddFileToHistory);
        newXS_deffile("Wx::FileHistory::RemoveFileFromHistory", XS_Wx__FileHistory_RemoveFileFromHistory);
        newXS_deffile("Wx::FileHistory::GetMaxFiles", XS_Wx__FileHistory_GetMaxFiles);
        newXS_deffile("Wx::FileHistory::UseMenu", XS_Wx__FileHistory_UseMenu);
        newXS_deffile("Wx::FileHistory::RemoveMenu", XS_Wx__FileHistory_RemoveMenu);
        newXS_deffile("Wx::FileHistory::Load", XS_Wx__FileHistory_Load);
        newXS_deffile("Wx::FileHistory::Save", XS_Wx__FileHistory_Save);
        newXS_deffile("Wx::FileHistory::AddFilesToMenu", XS_Wx__FileHistory_AddFilesToMenu);
        newXS_deffile("Wx::FileHistory::GetHistoryFile", XS_Wx__FileHistory_GetHistoryFile);
        newXS_deffile("Wx::FileHistory::GetCount", XS_Wx__FileHistory_GetCount);
#if XSubPPtmpAAAA
        newXS_deffile("Wx::FileHistory::GetNoHistoryFiles", XS_Wx__FileHistory_GetNoHistoryFiles);
#endif
        newXS_deffile("Wx::FileHistory::GetMenus", XS_Wx__FileHistory_GetMenus);
#if XSubPPtmpAAAB
        newXS_deffile("Wx::FileHistory::SetBaseId", XS_Wx__FileHistory_SetBaseId);
        newXS_deffile("Wx::FileHistory::GetBaseId", XS_Wx__FileHistory_GetBaseId);
#endif
        newXS_deffile("Wx::View::new", XS_Wx__View_new);
        newXS_deffile("Wx::View::Activate", XS_Wx__View_Activate);
        newXS_deffile("Wx::View::Close", XS_Wx__View_Close);
        newXS_deffile("Wx::View::GetDocument", XS_Wx__View_GetDocument);
        newXS_deffile("Wx::View::GetDocumentManager", XS_Wx__View_GetDocumentManager);
        newXS_deffile("Wx::View::GetFrame", XS_Wx__View_GetFrame);
        newXS_deffile("Wx::View::SetFrame", XS_Wx__View_SetFrame);
        newXS_deffile("Wx::View::GetViewName", XS_Wx__View_GetViewName);
        newXS_deffile("Wx::View::OnActivateView", XS_Wx__View_OnActivateView);
        newXS_deffile("Wx::View::OnChangeFilename", XS_Wx__View_OnChangeFilename);
        newXS_deffile("Wx::View::OnClose", XS_Wx__View_OnClose);
        newXS_deffile("Wx::View::OnCreate", XS_Wx__View_OnCreate);
#if XSubPPtmpAAAC
        newXS_deffile("Wx::View::OnCreatePrintout", XS_Wx__View_OnCreatePrintout);
#endif
        newXS_deffile("Wx::View::OnUpdate", XS_Wx__View_OnUpdate);
        newXS_deffile("Wx::View::SetDocument", XS_Wx__View_SetDocument);
        newXS_deffile("Wx::View::SetViewName", XS_Wx__View_SetViewName);
        newXS_deffile("Wx::Document::new", XS_Wx__Document_new);
        newXS_deffile("Wx::Document::DeleteContents", XS_Wx__Document_DeleteContents);
        newXS_deffile("Wx::Document::Close", XS_Wx__Document_Close);
        newXS_deffile("Wx::Document::OnCloseDocument", XS_Wx__Document_OnCloseDocument);
        newXS_deffile("Wx::Document::NotifyClosing", XS_Wx__Document_NotifyClosing);
        newXS_deffile("Wx::Document::GetViews", XS_Wx__Document_GetViews);
        newXS_deffile("Wx::Document::DeleteAllViews", XS_Wx__Document_DeleteAllViews);
        newXS_deffile("Wx::Document::GetFirstView", XS_Wx__Document_GetFirstView);
        newXS_deffile("Wx::Document::GetDocumentManager", XS_Wx__Document_GetDocumentManager);
        newXS_deffile("Wx::Document::GetDocumentTemplate", XS_Wx__Document_GetDocumentTemplate);
        newXS_deffile("Wx::Document::GetDocumentName", XS_Wx__Document_GetDocumentName);
        newXS_deffile("Wx::Document::OnNewDocument", XS_Wx__Document_OnNewDocument);
        newXS_deffile("Wx::Document::Save", XS_Wx__Document_Save);
        newXS_deffile("Wx::Document::SaveAs", XS_Wx__Document_SaveAs);
        newXS_deffile("Wx::Document::OnSaveDocument", XS_Wx__Document_OnSaveDocument);
        newXS_deffile("Wx::Document::OnOpenDocument", XS_Wx__Document_OnOpenDocument);
        newXS_deffile("Wx::Document::GetDocumentSaved", XS_Wx__Document_GetDocumentSaved);
        newXS_deffile("Wx::Document::SetDocumentSaved", XS_Wx__Document_SetDocumentSaved);
        newXS_deffile("Wx::Document::Revert", XS_Wx__Document_Revert);
#if XSubPPtmpAAAD
        newXS_deffile("Wx::Document::GetUserReadableName", XS_Wx__Document_GetUserReadableName);
#endif
#if XSubPPtmpAAAE
        newXS_deffile("Wx::Document::GetPrintableName", XS_Wx__Document_GetPrintableName);
#endif
        newXS_deffile("Wx::Document::GetDocumentWindow", XS_Wx__Document_GetDocumentWindow);
        newXS_deffile("Wx::Document::OnCreateCommandProcessor", XS_Wx__Document_OnCreateCommandProcessor);
        newXS_deffile("Wx::Document::SetCommandProcessor", XS_Wx__Document_SetCommandProcessor);
        newXS_deffile("Wx::Document::OnSaveModified", XS_Wx__Document_OnSaveModified);
        newXS_deffile("Wx::Document::IsModified", XS_Wx__Document_IsModified);
        newXS_deffile("Wx::Document::Modify", XS_Wx__Document_Modify);
        newXS_deffile("Wx::Document::AddView", XS_Wx__Document_AddView);
        newXS_deffile("Wx::Document::RemoveView", XS_Wx__Document_RemoveView);
        newXS_deffile("Wx::Document::OnCreate", XS_Wx__Document_OnCreate);
        newXS_deffile("Wx::Document::OnChangedViewList", XS_Wx__Document_OnChangedViewList);
        newXS_deffile("Wx::Document::UpdateAllViews", XS_Wx__Document_UpdateAllViews);
        newXS_deffile("Wx::Document::SetFilename", XS_Wx__Document_SetFilename);
        newXS_deffile("Wx::Document::GetFilename", XS_Wx__Document_GetFilename);
        newXS_deffile("Wx::Document::SetTitle", XS_Wx__Document_SetTitle);
        newXS_deffile("Wx::Document::GetTitle", XS_Wx__Document_GetTitle);
        newXS_deffile("Wx::Document::SetDocumentName", XS_Wx__Document_SetDocumentName);
        newXS_deffile("Wx::Document::SetDocumentTemplate", XS_Wx__Document_SetDocumentTemplate);
        newXS_deffile("Wx::DocTemplate::new", XS_Wx__DocTemplate_new);
        newXS_deffile("Wx::DocTemplate::CreateDocument", XS_Wx__DocTemplate_CreateDocument);
        newXS_deffile("Wx::DocTemplate::CreateView", XS_Wx__DocTemplate_CreateView);
        newXS_deffile("Wx::DocTemplate::GetDefaultExtension", XS_Wx__DocTemplate_GetDefaultExtension);
        newXS_deffile("Wx::DocTemplate::GetDescription", XS_Wx__DocTemplate_GetDescription);
        newXS_deffile("Wx::DocTemplate::GetDirectory", XS_Wx__DocTemplate_GetDirectory);
        newXS_deffile("Wx::DocTemplate::GetDocumentManager", XS_Wx__DocTemplate_GetDocumentManager);
        newXS_deffile("Wx::DocTemplate::SetDocumentManager", XS_Wx__DocTemplate_SetDocumentManager);
        newXS_deffile("Wx::DocTemplate::GetFileFilter", XS_Wx__DocTemplate_GetFileFilter);
        newXS_deffile("Wx::DocTemplate::GetFlags", XS_Wx__DocTemplate_GetFlags);
        newXS_deffile("Wx::DocTemplate::GetViewName", XS_Wx__DocTemplate_GetViewName);
        newXS_deffile("Wx::DocTemplate::GetDocumentName", XS_Wx__DocTemplate_GetDocumentName);
        newXS_deffile("Wx::DocTemplate::SetFileFilter", XS_Wx__DocTemplate_SetFileFilter);
        newXS_deffile("Wx::DocTemplate::SetDirectory", XS_Wx__DocTemplate_SetDirectory);
        newXS_deffile("Wx::DocTemplate::SetDescription", XS_Wx__DocTemplate_SetDescription);
        newXS_deffile("Wx::DocTemplate::SetDefaultExtension", XS_Wx__DocTemplate_SetDefaultExtension);
        newXS_deffile("Wx::DocTemplate::SetFlags", XS_Wx__DocTemplate_SetFlags);
        newXS_deffile("Wx::DocTemplate::IsVisible", XS_Wx__DocTemplate_IsVisible);
        newXS_deffile("Wx::DocTemplate::FileMatchesTemplate", XS_Wx__DocTemplate_FileMatchesTemplate);
        newXS_deffile("Wx::DocManager::new", XS_Wx__DocManager_new);
        newXS_deffile("Wx::DocManager::Clear", XS_Wx__DocManager_Clear);
        newXS_deffile("Wx::DocManager::Initialize", XS_Wx__DocManager_Initialize);
        newXS_deffile("Wx::DocManager::OnCreateFileHistory", XS_Wx__DocManager_OnCreateFileHistory);
        newXS_deffile("Wx::DocManager::GetFileHistory", XS_Wx__DocManager_GetFileHistory);
        newXS_deffile("Wx::DocManager::SetMaxDocsOpen", XS_Wx__DocManager_SetMaxDocsOpen);
        newXS_deffile("Wx::DocManager::GetMaxDocsOpen", XS_Wx__DocManager_GetMaxDocsOpen);
        newXS_deffile("Wx::DocManager::GetDocuments", XS_Wx__DocManager_GetDocuments);
        newXS_deffile("Wx::DocManager::GetTemplates", XS_Wx__DocManager_GetTemplates);
        newXS_deffile("Wx::DocManager::GetLastDirectory", XS_Wx__DocManager_GetLastDirectory);
        newXS_deffile("Wx::DocManager::SetLastDirectory", XS_Wx__DocManager_SetLastDirectory);
        newXS_deffile("Wx::DocManager::OnFileClose", XS_Wx__DocManager_OnFileClose);
        newXS_deffile("Wx::DocManager::OnFileCloseAll", XS_Wx__DocManager_OnFileCloseAll);
        newXS_deffile("Wx::DocManager::OnFileNew", XS_Wx__DocManager_OnFileNew);
        newXS_deffile("Wx::DocManager::OnFileOpen", XS_Wx__DocManager_OnFileOpen);
        newXS_deffile("Wx::DocManager::OnFileRevert", XS_Wx__DocManager_OnFileRevert);
        newXS_deffile("Wx::DocManager::OnFileSave", XS_Wx__DocManager_OnFileSave);
        newXS_deffile("Wx::DocManager::OnFileSaveAs", XS_Wx__DocManager_OnFileSaveAs);
        newXS_deffile("Wx::DocManager::OnPrint", XS_Wx__DocManager_OnPrint);
#if XSubPPtmpAAAF
        newXS_deffile("Wx::DocManager::OnPrintSetup", XS_Wx__DocManager_OnPrintSetup);
#endif
        newXS_deffile("Wx::DocManager::OnPreview", XS_Wx__DocManager_OnPreview);
        newXS_deffile("Wx::DocManager::OnUndo", XS_Wx__DocManager_OnUndo);
        newXS_deffile("Wx::DocManager::OnRedo", XS_Wx__DocManager_OnRedo);
        newXS_deffile("Wx::DocManager::OnUpdateFileOpen", XS_Wx__DocManager_OnUpdateFileOpen);
#if XSubPPtmpAAAG
        newXS_deffile("Wx::DocManager::OnUpdateFileClose", XS_Wx__DocManager_OnUpdateFileClose);
        newXS_deffile("Wx::DocManager::OnUpdateFileRevert", XS_Wx__DocManager_OnUpdateFileRevert);
#endif
        newXS_deffile("Wx::DocManager::OnUpdateFileNew", XS_Wx__DocManager_OnUpdateFileNew);
        newXS_deffile("Wx::DocManager::OnUpdateFileSave", XS_Wx__DocManager_OnUpdateFileSave);
#if XSubPPtmpAAAH
        newXS_deffile("Wx::DocManager::OnUpdateFileSaveAs", XS_Wx__DocManager_OnUpdateFileSaveAs);
#endif
        newXS_deffile("Wx::DocManager::OnUpdateUndo", XS_Wx__DocManager_OnUpdateUndo);
        newXS_deffile("Wx::DocManager::OnUpdateRedo", XS_Wx__DocManager_OnUpdateRedo);
#if XSubPPtmpAAAI
        newXS_deffile("Wx::DocManager::OnUpdatePrint", XS_Wx__DocManager_OnUpdatePrint);
#endif
#if XSubPPtmpAAAJ
        newXS_deffile("Wx::DocManager::OnUpdatePrintSetup", XS_Wx__DocManager_OnUpdatePrintSetup);
#endif
#if XSubPPtmpAAAK
        newXS_deffile("Wx::DocManager::OnUpdatePreview", XS_Wx__DocManager_OnUpdatePreview);
#endif
        newXS_deffile("Wx::DocManager::GetCurrentView", XS_Wx__DocManager_GetCurrentView);
        newXS_deffile("Wx::DocManager::CreateDocument", XS_Wx__DocManager_CreateDocument);
        newXS_deffile("Wx::DocManager::CreateView", XS_Wx__DocManager_CreateView);
        newXS_deffile("Wx::DocManager::DeleteTemplate", XS_Wx__DocManager_DeleteTemplate);
        newXS_deffile("Wx::DocManager::FlushDoc", XS_Wx__DocManager_FlushDoc);
        newXS_deffile("Wx::DocManager::GetCurrentDocument", XS_Wx__DocManager_GetCurrentDocument);
#if XSubPPtmpAAAL
        newXS_deffile("Wx::DocManager::MakeNewDocumentName", XS_Wx__DocManager_MakeNewDocumentName);
#endif
#if XSubPPtmpAAAM
        newXS_deffile("Wx::DocManager::MakeDefaultName", XS_Wx__DocManager_MakeDefaultName);
#endif
        newXS_deffile("Wx::DocManager::MakeFrameTitle", XS_Wx__DocManager_MakeFrameTitle);
        newXS_deffile("Wx::DocManager::MatchTemplate", XS_Wx__DocManager_MatchTemplate);
        newXS_deffile("Wx::DocManager::AddFileToHistory", XS_Wx__DocManager_AddFileToHistory);
        newXS_deffile("Wx::DocManager::RemoveFileFromHistory", XS_Wx__DocManager_RemoveFileFromHistory);
        newXS_deffile("Wx::DocManager::GetHistoryFile", XS_Wx__DocManager_GetHistoryFile);
        newXS_deffile("Wx::DocManager::FileHistoryUseMenu", XS_Wx__DocManager_FileHistoryUseMenu);
        newXS_deffile("Wx::DocManager::FileHistoryRemoveMenu", XS_Wx__DocManager_FileHistoryRemoveMenu);
#if XSubPPtmpAAAN
        newXS_deffile("Wx::DocManager::FileHistoryLoad", XS_Wx__DocManager_FileHistoryLoad);
        newXS_deffile("Wx::DocManager::FileHistorySave", XS_Wx__DocManager_FileHistorySave);
#endif
        newXS_deffile("Wx::DocManager::FileHistoryAddFilesToMenu", XS_Wx__DocManager_FileHistoryAddFilesToMenu);
#if XSubPPtmpAAAO
        newXS_deffile("Wx::DocManager::GetHistoryFilesCount", XS_Wx__DocManager_GetHistoryFilesCount);
#endif
#if XSubPPtmpAAAP
        newXS_deffile("Wx::DocManager::GetNoHistoryFiles", XS_Wx__DocManager_GetNoHistoryFiles);
#endif
        newXS_deffile("Wx::DocManager::FindTemplateForPath", XS_Wx__DocManager_FindTemplateForPath);
        newXS_deffile("Wx::DocManager::SelectDocumentPath", XS_Wx__DocManager_SelectDocumentPath);
        newXS_deffile("Wx::DocManager::SelectDocumentType", XS_Wx__DocManager_SelectDocumentType);
        newXS_deffile("Wx::DocManager::SelectViewType", XS_Wx__DocManager_SelectViewType);
        newXS_deffile("Wx::DocManager::AssociateTemplate", XS_Wx__DocManager_AssociateTemplate);
        newXS_deffile("Wx::DocManager::DisassociateTemplate", XS_Wx__DocManager_DisassociateTemplate);
        newXS_deffile("Wx::DocManager::AddDocument", XS_Wx__DocManager_AddDocument);
        newXS_deffile("Wx::DocManager::RemoveDocument", XS_Wx__DocManager_RemoveDocument);
        newXS_deffile("Wx::DocManager::CloseDocuments", XS_Wx__DocManager_CloseDocuments);
#if XSubPPtmpAAAQ
        newXS_deffile("Wx::DocManager::ActivateView", XS_Wx__DocManager_ActivateView);
#endif
#if XSubPPtmpAAAR
        newXS_deffile("Wx::DocManager::ActivateView", XS_Wx__DocManager_ActivateView);
#endif
        newXS_deffile("Wx::Command::CLONE", XS_Wx__Command_CLONE);
        newXS_deffile("Wx::Command::DESTROY", XS_Wx__Command_DESTROY);
        newXS_deffile("Wx::Command::Destroy", XS_Wx__Command_Destroy);
        newXS_deffile("Wx::Command::Do", XS_Wx__Command_Do);
        newXS_deffile("Wx::Command::Undo", XS_Wx__Command_Undo);
        newXS_deffile("Wx::Command::CanUndo", XS_Wx__Command_CanUndo);
        newXS_deffile("Wx::Command::GetName", XS_Wx__Command_GetName);
        newXS_deffile("Wx::PlCommand::new", XS_Wx__PlCommand_new);
        newXS_deffile("Wx::PlCommand::CanUndo", XS_Wx__PlCommand_CanUndo);
        newXS_deffile("Wx::CommandProcessor::new", XS_Wx__CommandProcessor_new);
        newXS_deffile("Wx::CommandProcessor::CLONE", XS_Wx__CommandProcessor_CLONE);
        newXS_deffile("Wx::CommandProcessor::DESTROY", XS_Wx__CommandProcessor_DESTROY);
        newXS_deffile("Wx::CommandProcessor::Submit", XS_Wx__CommandProcessor_Submit);
        newXS_deffile("Wx::CommandProcessor::Store", XS_Wx__CommandProcessor_Store);
        newXS_deffile("Wx::CommandProcessor::Undo", XS_Wx__CommandProcessor_Undo);
        newXS_deffile("Wx::CommandProcessor::Redo", XS_Wx__CommandProcessor_Redo);
        newXS_deffile("Wx::CommandProcessor::CanUndo", XS_Wx__CommandProcessor_CanUndo);
        newXS_deffile("Wx::CommandProcessor::CanRedo", XS_Wx__CommandProcessor_CanRedo);
        newXS_deffile("Wx::CommandProcessor::Initialize", XS_Wx__CommandProcessor_Initialize);
        newXS_deffile("Wx::CommandProcessor::SetMenuStrings", XS_Wx__CommandProcessor_SetMenuStrings);
        newXS_deffile("Wx::CommandProcessor::GetUndoMenuLabel", XS_Wx__CommandProcessor_GetUndoMenuLabel);
        newXS_deffile("Wx::CommandProcessor::GetRedoMenuLabel", XS_Wx__CommandProcessor_GetRedoMenuLabel);
#if XSubPPtmpAAAS
        newXS_deffile("Wx::CommandProcessor::SetEditMenu", XS_Wx__CommandProcessor_SetEditMenu);
        newXS_deffile("Wx::CommandProcessor::GetEditMenu", XS_Wx__CommandProcessor_GetEditMenu);
#endif
        newXS_deffile("Wx::CommandProcessor::GetCommands", XS_Wx__CommandProcessor_GetCommands);
        newXS_deffile("Wx::CommandProcessor::GetCurrentCommand", XS_Wx__CommandProcessor_GetCurrentCommand);
        newXS_deffile("Wx::CommandProcessor::GetMaxCommands", XS_Wx__CommandProcessor_GetMaxCommands);
        newXS_deffile("Wx::CommandProcessor::ClearCommands", XS_Wx__CommandProcessor_ClearCommands);
#if XSubPPtmpAAAT
        newXS_deffile("Wx::CommandProcessor::IsDirty", XS_Wx__CommandProcessor_IsDirty);
        newXS_deffile("Wx::CommandProcessor::MarkAsSaved", XS_Wx__CommandProcessor_MarkAsSaved);
#endif
        newXS_deffile("Wx::CommandProcessor::GetUndoAccelerator", XS_Wx__CommandProcessor_GetUndoAccelerator);
        newXS_deffile("Wx::CommandProcessor::GetRedoAccelerator", XS_Wx__CommandProcessor_GetRedoAccelerator);
        newXS_deffile("Wx::CommandProcessor::SetUndoAccelerator", XS_Wx__CommandProcessor_SetUndoAccelerator);
        newXS_deffile("Wx::CommandProcessor::SetRedoAccelerator", XS_Wx__CommandProcessor_SetRedoAccelerator);
#if XSubPPtmpAAAU
        newXS_deffile("Wx::DocMDIChildFrame::new", XS_Wx__DocMDIChildFrame_new);
        newXS_deffile("Wx::DocMDIChildFrame::GetDocument", XS_Wx__DocMDIChildFrame_GetDocument);
        newXS_deffile("Wx::DocMDIChildFrame::GetView", XS_Wx__DocMDIChildFrame_GetView);
        newXS_deffile("Wx::DocMDIChildFrame::SetDocument", XS_Wx__DocMDIChildFrame_SetDocument);
        newXS_deffile("Wx::DocMDIChildFrame::SetView", XS_Wx__DocMDIChildFrame_SetView);
        newXS_deffile("Wx::DocMDIChildFrame::Destroy", XS_Wx__DocMDIChildFrame_Destroy);
        newXS_deffile("Wx::DocMDIParentFrame::new", XS_Wx__DocMDIParentFrame_new);
        newXS_deffile("Wx::DocMDIParentFrame::GetDocumentManager", XS_Wx__DocMDIParentFrame_GetDocumentManager);
#endif

    /* Initialisation Section */

  INIT_PLI_HELPERS( wx_pli_helpers );

#if XSubPPtmpAAAA
#endif
#if XSubPPtmpAAAB
#endif
#if XSubPPtmpAAAC
#endif
#if XSubPPtmpAAAD
#endif
#if XSubPPtmpAAAE
#endif
#if XSubPPtmpAAAF
#endif
#if XSubPPtmpAAAG
#endif
#if XSubPPtmpAAAH
#endif
#if XSubPPtmpAAAI
#endif
#if XSubPPtmpAAAJ
#endif
#if XSubPPtmpAAAK
#endif
#if XSubPPtmpAAAL
#endif
#if XSubPPtmpAAAM
#endif
#if XSubPPtmpAAAN
#endif
#if XSubPPtmpAAAO
#endif
#if XSubPPtmpAAAP
#endif
#if XSubPPtmpAAAQ
#endif
#if XSubPPtmpAAAR
#endif
#if XSubPPtmpAAAS
#endif
#if XSubPPtmpAAAT
#endif
#if XSubPPtmpAAAU
#endif

    /* End of Initialisation Section */

#if PERL_VERSION_LE(5, 21, 5)
#  if PERL_VERSION_GE(5, 9, 0)
    if (PL_unitcheckav)
        call_list(PL_scopestack_ix, PL_unitcheckav);
#  endif
    XSRETURN_YES;
#else
    Perl_xs_boot_epilog(aTHX_ ax);
#endif
}

