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

/////////////////////////////////////////////////////////////////////////////
// Name:        Event.xs
// Purpose:     XS for Wx::EvtHandler, Wx::Event and derived classes
// Author:      Mattia Barbon
// Modified by:
// Created:     29/10/2000
// RCS-ID:      $Id: Event.xs 3232 2012-03-19 05:38:20Z mdootson $
// Copyright:   (c) 2000-2009 Mattia Barbon
// 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 <wx/event.h>
#include <wx/window.h>
#include <wx/dc.h>
#include <wx/menu.h>
#include <stdarg.h>

#include <wx/clntdata.h>

// re-include for client data
#include "cpp/helpers.h"

#undef THIS

#include "cpp/e_cback.h"
#include "cpp/e_cback.cpp"

#include "cpp/event.h"

WXPLI_BOOT_ONCE(Wx_Evt);
#define boot_Wx_Evt wxPli_boot_Wx_Evt

#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/EvtHandler.xs' from 'Event.xs' */


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

#if WXPERL_W_VERSION_GE( 2, 9, 3 )
#define XSubPPtmpAAAA 1


XS_EUPXS(XS_Wx__EvtHandler_AddFilter); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_AddFilter)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "filter");
    {
	wxEventFilter*    filter = (wxEventFilter *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EventFilter" )
;
    wxEvtHandler::AddFilter( filter );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__EvtHandler_RemoveFilter); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_RemoveFilter)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "filter");
    {
	wxEventFilter*    filter = (wxEventFilter *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EventFilter" )
;
    wxEvtHandler::RemoveFilter( filter );
    }
    XSRETURN_EMPTY;
}

#endif // end if WXPERL_W_VERSION_GE( 2, 9, 3 )

XS_EUPXS(XS_Wx__EvtHandler_AddPendingEvent); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_AddPendingEvent)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxEvent*    event = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Event" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
    THIS->AddPendingEvent( *event );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__EvtHandler_Connect); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_Connect)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "THIS, id, lastid, type, method");
    {
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	int	lastid = (int)SvIV(ST(2))
;
	wxEventType	type = (wxEventType)SvIV(ST(3))
;
	SV*	method = ST(4)
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
    if( SvOK( method ) )
    {
        THIS->Connect( id, lastid, type,
                       wxPliCastEvtHandler( &wxPliEventCallback::Handler ),
                       new wxPliEventCallback( method, ST(0) ) );
    }
    else
    {
        THIS->Disconnect( id, lastid, type,
                          wxPliCastEvtHandler( &wxPliEventCallback::Handler ),
                          0 );
    }
    }
    XSRETURN_EMPTY;
}


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


XS_EUPXS(XS_Wx__EvtHandler_Disconnect); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_Disconnect)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "THIS, id, lastid, type");
    {
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	int	lastid = (int)SvIV(ST(2))
;
	wxEventType	type = (wxEventType)SvIV(ST(3))
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
	bool	RETVAL;
    RETVAL = THIS->Disconnect( id, lastid, type,
        wxPliCastEvtHandler( &wxPliEventCallback::Handler ) );
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


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

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


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

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


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

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


XS_EUPXS(XS_Wx__EvtHandler_ProcessEvent); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_ProcessEvent)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxEvent*    event = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Event" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
	bool	RETVAL;

	RETVAL = THIS->ProcessEvent(*event);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

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


XS_EUPXS(XS_Wx__EvtHandler_SafelyProcessEvent); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_SafelyProcessEvent)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxEvent*    event = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Event" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
	bool	RETVAL;

	RETVAL = THIS->SafelyProcessEvent(*event);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#endif

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

	THIS->SetEvtHandlerEnabled(enabled);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__EvtHandler_SetNextHandler); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_SetNextHandler)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, handler");
    {
	wxEvtHandler*    handler = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::EvtHandler" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;

	THIS->SetNextHandler(handler);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__EvtHandler_SetPreviousHandler); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_SetPreviousHandler)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, handler");
    {
	wxEvtHandler*    handler = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::EvtHandler" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;

	THIS->SetPreviousHandler(handler);
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_GE( 2, 9, 1 )
#define XSubPPtmpAAAC 1


XS_EUPXS(XS_Wx__EvtHandler_ProcessEventLocally); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EvtHandler_ProcessEventLocally)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, event");
    {
	wxEvent*    event = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Event" )
;
	wxEvtHandler *    THIS = (wxEvtHandler *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::EvtHandler" )
;
	bool	RETVAL;

	RETVAL = THIS->ProcessEventLocally(*event);
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#endif

/* INCLUDE: Returning to 'Event.xs' from 'XS/EvtHandler.xs' */


XS_EUPXS(XS_Wx__Event_CLONE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Event_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__Event_DESTROY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Event_DESTROY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxEvent *    THIS = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Event" )
;
    wxPli_thread_sv_unregister( aTHX_ wxPli_get_class( aTHX_ ST(0) ), THIS, ST(0) );
    delete THIS;
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Event_GetEventObject); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Event_GetEventObject)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	wxEvent *    THIS = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Event" )
;
    // to avoid problems with deletion, only windows are supported
    wxObject* obj = THIS->GetEventObject();
    wxWindow* win = wxDynamicCast( obj, wxWindow );

    EXTEND( SP, 1 );
    if(win == NULL)
        PUSHs( &PL_sv_undef );
    else
        PUSHs( wxPli_object_2_sv( aTHX_ NEWSV( 0, 0 ), win ) );
	PUTBACK;
	return;
    }
}


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

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


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

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


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

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


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

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


XS_EUPXS(XS_Wx__Event_SetEventType); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Event_SetEventType)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, type");
    {
	wxEventType	type = (wxEventType)SvIV(ST(1))
;
	wxEvent *    THIS = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Event" )
;

	THIS->SetEventType(type);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__Event_SetEventObject); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__Event_SetEventObject)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, object");
    {
	wxObject*    object = (wxObject *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Object" )
;
	wxEvent *    THIS = (wxEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Event" )
;

	THIS->SetEventObject(object);
    }
    XSRETURN_EMPTY;
}


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

	THIS->SetId(id);
    }
    XSRETURN_EMPTY;
}


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

	THIS->SetTimestamp(timeStamp);
    }
    XSRETURN_EMPTY;
}


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

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

	THIS->Skip(skip);
    }
    XSRETURN_EMPTY;
}

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


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

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

#endif
#if WXPERL_W_VERSION_GE( 2, 5, 3 )
#define XSubPPtmpAAAE 1


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

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


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

	THIS->ResumePropagation(propagationLevel);
    }
    XSRETURN_EMPTY;
}

#else
#if WXPERL_W_VERSION_GE( 2, 5, 1 )
#define XSubPPtmpAAAF 1


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

	THIS->SetPropagate(doIt);
    }
    XSRETURN_EMPTY;
}

#endif
#endif

XS_EUPXS(XS_Wx__CommandEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, type = 0, id = 0");
    {
	wxEventType	type;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxCommandEvent *	RETVAL;

	if (items < 2)
	    type = 0;
	else {
	    type = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxCommandEvent(type, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::CommandEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__CommandEvent_GetClientData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandEvent_GetClientData)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxCommandEvent *    THIS = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandEvent" )
;
	Wx_UserDataCD *	RETVAL;
    RETVAL = (wxPliUserDataCD*)THIS->GetClientObject();
	{
	    SV * RETVALSV;
    RETVALSV = ( RETVAL == 0 ) ? &PL_sv_undef : RETVAL->GetData();
    SvREFCNT_inc( RETVALSV ); // xsubpp mortalizes it...
	    RETVALSV = sv_2mortal(RETVALSV);
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


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

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


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

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


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

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


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

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


XS_EUPXS(XS_Wx__CommandEvent_SetClientData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CommandEvent_SetClientData)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, data");
    {
	Wx_UserDataCD*	data;
	wxCommandEvent *    THIS = (wxCommandEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::CommandEvent" )
;

    if( SvOK( ST(1) ) )
    {
        data = new wxPliUserDataCD( ST(1) );
    }
    else
        data = 0
;
    THIS->SetClientObject( data );
    }
    XSRETURN_EMPTY;
}


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

	THIS->SetExtraLong(extraLong);
    }
    XSRETURN_EMPTY;
}


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

	THIS->SetInt(intCommand);
    }
    XSRETURN_EMPTY;
}


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

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

	THIS->SetString(string);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__ContextMenuEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ContextMenuEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 4)
       croak_xs_usage(cv,  "CLASS, type = 0, id = 0, pos = wxDefaultPosition");
    {
	wxEventType	type;
	wxWindowID	id;
	wxPoint	pos;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxContextMenuEvent *	RETVAL;

	if (items < 2)
	    type = 0;
	else {
	    type = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	if (items < 4)
	    pos = wxDefaultPosition;
	else {
    pos = wxPli_sv_2_wxpoint( aTHX_ ST(3) )
;
	}

	RETVAL = new wxContextMenuEvent(type, id, pos);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::ContextMenuEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

	RETVAL = THIS->GetPosition();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, new wxPoint(RETVAL), "Wx::Point" );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__ContextMenuEvent_SetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ContextMenuEvent_SetPosition)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, pos");
    {
	wxPoint    pos = wxPli_sv_2_wxpoint( aTHX_ ST(1) )
;
	wxContextMenuEvent *    THIS = (wxContextMenuEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::ContextMenuEvent" )
;

	THIS->SetPosition(pos);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__PlEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlEvent_new)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "CLASS, type, id");
    {
	wxEventType	type = (wxEventType)SvIV(ST(1))
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	SV *	RETVAL;
    wxPlEvent* THIS = new wxPlEvent( CLASS, type, id );
    RETVAL = newRV_noinc( SvRV( THIS->m_callback.GetSelf() ) );
    wxPli_thread_sv_register( aTHX_ "Wx::PlEvent", THIS, RETVAL );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__PlEvent_DESTROY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlEvent_DESTROY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxPlEvent *    THIS = (wxPlEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::PlEvent" )
;
    wxPli_thread_sv_unregister( aTHX_ "Wx::PlEvent", THIS, ST(0) );
    if( THIS && wxPli_object_is_deleteable( aTHX_ ST(0) ) )
    {
        THIS->m_callback.DeleteSelf( true );
        delete THIS;
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__PlCommandEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlCommandEvent_new)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "CLASS, type, id");
    {
	wxEventType	type = (wxEventType)SvIV(ST(1))
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	SV *	RETVAL;
    wxPlCommandEvent* THIS = new wxPlCommandEvent( CLASS, type, id );
    RETVAL = newRV_noinc( SvRV( THIS->m_callback.GetSelf() ) );
    wxPli_thread_sv_register( aTHX_ "Wx::PlCommandEvent", THIS, RETVAL );
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__PlCommandEvent_DESTROY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlCommandEvent_DESTROY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxPlCommandEvent *    THIS = (wxPlCommandEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::PlCommandEvent" )
;
    wxPli_thread_sv_unregister( aTHX_ "Wx::PlCommandEvent", THIS, ST(0) );
    if( THIS && wxPli_object_is_deleteable( aTHX_ ST(0) ) )
    {
        THIS->m_callback.DeleteSelf( true );
        delete THIS;
    }
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__PlThreadEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlThreadEvent_new)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "CLASS, type, id, data");
    {
	wxEventType	type = (wxEventType)SvIV(ST(1))
;
	wxWindowID    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	SV*	data = ST(3)
;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxPlThreadEvent *	RETVAL;
    RETVAL = new wxPlThreadEvent( aTHX_ CLASS, type, id, data );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::PlThreadEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__PlThreadEvent__GetData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlThreadEvent__GetData)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxPlThreadEvent *    THIS = (wxPlThreadEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::PlThreadEvent" )
;
	int	RETVAL;
	dXSTARG;
    RETVAL = THIS ? THIS->_GetData() : 0;
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__PlThreadEvent_GetData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlThreadEvent_GetData)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxPlThreadEvent *    THIS = (wxPlThreadEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::PlThreadEvent" )
;
	SV *	RETVAL;
    RETVAL = THIS ? THIS->GetData() : &PL_sv_undef;
	RETVAL = sv_2mortal(RETVAL);
	ST(0) = RETVAL;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__PlThreadEvent_SetStash); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__PlThreadEvent_SetStash)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "hv_ref");
    {
	SV*	hv_ref = ST(0)
;
    wxPlThreadEvent::SetStash( hv_ref );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__ActivateEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ActivateEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 4)
       croak_xs_usage(cv,  "CLASS, type = 0, active = true, id = 0");
    {
	wxEventType	type;
	bool	active;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxActivateEvent *	RETVAL;

	if (items < 2)
	    type = 0;
	else {
	    type = (wxEventType)SvIV(ST(1))
;
	}

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

	if (items < 4)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(3) )
;
	}

	RETVAL = new wxActivateEvent(type, active, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::ActivateEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


XS_EUPXS(XS_Wx__CloseEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__CloseEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, commandEventType = 0, id = 0");
    {
	wxEventType	commandEventType;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxCloseEvent *	RETVAL;

	if (items < 2)
	    commandEventType = 0;
	else {
	    commandEventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxCloseEvent(commandEventType, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::CloseEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


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

	THIS->SetCanVeto(canVeto);
    }
    XSRETURN_EMPTY;
}


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

	THIS->SetLoggingOff(loggingOff);
    }
    XSRETURN_EMPTY;
}


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

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

	THIS->Veto(veto);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__EraseEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__EraseEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, id = 0, dc = 0");
    {
	wxWindowID	id;
	wxDC*	dc;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxEraseEvent *	RETVAL;

	if (items < 2)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	if (items < 3)
	    dc = 0;
	else {
    dc = (wxDC *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::DC" )
;
	}

	RETVAL = new wxEraseEvent(id, dc);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::EraseEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


XS_EUPXS(XS_Wx__FocusEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__FocusEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, eventType = 0, id = 0");
    {
	wxEventType	eventType;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxFocusEvent *	RETVAL;

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxFocusEvent(eventType, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::FocusEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


XS_EUPXS(XS_Wx__IconizeEvent_Iconized); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IconizeEvent_Iconized)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxIconizeEvent *    THIS = (wxIconizeEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::IconizeEvent" )
;
	bool	RETVAL;
#if WXPERL_W_VERSION_LT( 2, 9, 0 )
    RETVAL = THIS->Iconized();
#else
    RETVAL = THIS->IsIconized();
#endif
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__IconizeEvent_IsIconized); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IconizeEvent_IsIconized)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxIconizeEvent *    THIS = (wxIconizeEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::IconizeEvent" )
;
	bool	RETVAL;
#if WXPERL_W_VERSION_LT( 2, 9, 0 )
    RETVAL = THIS->Iconized();
#else
    RETVAL = THIS->IsIconized();
#endif
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__KeyEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__KeyEvent_new)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "CLASS, keyEventType");
    {
	wxEventType	keyEventType = (wxEventType)SvIV(ST(1))
;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxKeyEvent *	RETVAL;

	RETVAL = new wxKeyEvent(keyEventType);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::KeyEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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

#if WXPERL_W_VERSION_GE( 2, 5, 3 )
#define XSubPPtmpAAAG 1


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

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

#endif

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

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


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

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

#ifdef wxHAS_RAW_KEY_CODES
#define XSubPPtmpAAAH 1


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

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

#endif
#if wxUSE_UNICODE && WXPERL_W_VERSION_GE( 2, 5, 3 )
#define XSubPPtmpAAAI 1


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

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

#endif 
#if WXPERL_W_VERSION_GE( 2, 7, 0 )
#define XSubPPtmpAAAJ 1


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

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

#endif

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

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


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

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


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

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


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

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


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

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

#if WXPERL_W_VERSION_GE( 2, 9, 3 )
#define XSubPPtmpAAAK 1


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

	THIS->DoAllowNextEvent();
    }
    XSRETURN_EMPTY;
}


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

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

#endif

XS_EUPXS(XS_Wx__HelpEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__HelpEvent_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxHelpEvent *	RETVAL;

	RETVAL = new wxHelpEvent();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::HelpEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__HelpEvent_GetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__HelpEvent_GetPosition)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxHelpEvent *    THIS = (wxHelpEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::HelpEvent" )
;
	wxPoint *	RETVAL;
    RETVAL = new wxPoint( THIS->GetPosition() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Point" );
    wxPli_thread_sv_register( aTHX_ "Wx::Point", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


XS_EUPXS(XS_Wx__HelpEvent_SetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__HelpEvent_SetPosition)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, point");
    {
	wxPoint    point = wxPli_sv_2_wxpoint( aTHX_ ST(1) )
;
	wxHelpEvent *    THIS = (wxHelpEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::HelpEvent" )
;

	THIS->SetPosition(point);
    }
    XSRETURN_EMPTY;
}


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

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

	THIS->SetLink(link);
    }
    XSRETURN_EMPTY;
}


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

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

	THIS->SetTarget(target);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__IdleEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IdleEvent_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxIdleEvent *	RETVAL;

	RETVAL = new wxIdleEvent();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::IdleEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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

	THIS->RequestMore(needMore);
    }
    XSRETURN_EMPTY;
}

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


XS_EUPXS(XS_Wx__IdleEvent_CanSend); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IdleEvent_CanSend)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "window");
    {
	wxWindow*    window = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Window" )
;
	bool	RETVAL;
    RETVAL = wxIdleEvent::CanSend( window );
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__IdleEvent_SetMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IdleEvent_SetMode)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	wxIdleMode	mode = (wxIdleMode)SvIV(ST(0))
;
    wxIdleEvent::SetMode( mode );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__IdleEvent_GetMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__IdleEvent_GetMode)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	wxIdleMode	RETVAL;
	dXSTARG;
    RETVAL = wxIdleEvent::GetMode();
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


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

	if (items < 2)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	RETVAL = new wxInitDialogEvent(id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::InitDialogEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__JoystickEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__JoystickEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 5)
       croak_xs_usage(cv,  "CLASS, eventType = 0, state = 0, joystick = wxJOYSTICK1, change = 0");
    {
	wxEventType	eventType;
	int	state;
	int	joystick;
	int	change;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxJoystickEvent *	RETVAL;

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    state = 0;
	else {
	    state = (int)SvIV(ST(2))
;
	}

	if (items < 4)
	    joystick = wxJOYSTICK1;
	else {
	    joystick = (int)SvIV(ST(3))
;
	}

	if (items < 5)
	    change = 0;
	else {
	    change = (int)SvIV(ST(4))
;
	}

	RETVAL = new wxJoystickEvent(eventType, state, joystick, change);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::JoystickEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__JoystickEvent_ButtonDown); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__JoystickEvent_ButtonDown)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, button = wxJOY_BUTTON_ANY");
    {
	int	button;
	wxJoystickEvent *    THIS = (wxJoystickEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::JoystickEvent" )
;
	bool	RETVAL;

	if (items < 2)
	    button = wxJOY_BUTTON_ANY;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


XS_EUPXS(XS_Wx__JoystickEvent_ButtonIsDown); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__JoystickEvent_ButtonIsDown)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, button = wxJOY_BUTTON_ANY");
    {
	int	button;
	wxJoystickEvent *    THIS = (wxJoystickEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::JoystickEvent" )
;
	bool	RETVAL;

	if (items < 2)
	    button = wxJOY_BUTTON_ANY;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


XS_EUPXS(XS_Wx__JoystickEvent_ButtonUp); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__JoystickEvent_ButtonUp)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "THIS, button = wxJOY_BUTTON_ANY");
    {
	int	button;
	wxJoystickEvent *    THIS = (wxJoystickEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::JoystickEvent" )
;
	bool	RETVAL;

	if (items < 2)
	    button = wxJOY_BUTTON_ANY;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


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

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


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

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


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

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


XS_EUPXS(XS_Wx__JoystickEvent_GetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__JoystickEvent_GetPosition)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxJoystickEvent *    THIS = (wxJoystickEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::JoystickEvent" )
;
	wxPoint *	RETVAL;
    RETVAL = new wxPoint( THIS->GetPosition() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Point" );
    wxPli_thread_sv_register( aTHX_ "Wx::Point", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


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

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


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

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


XS_EUPXS(XS_Wx__MenuEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MenuEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, eventType = 0, id = 0");
    {
	wxEventType	eventType;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxMenuEvent *	RETVAL;

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxMenuEvent(eventType, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MenuEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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

#if WXPERL_W_VERSION_GE( 2, 6, 0 )
#define XSubPPtmpAAAM 1


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

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

#endif

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

	if (items < 2)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	RETVAL = new wxMouseEvent(id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MouseEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	RETVAL = new wxMouseEvent(eventType);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MouseEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

	if (items < 2)
	    button = -1;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


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

	if (items < 2)
	    button = -1;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


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

	if (items < 2)
	    button = -1;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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


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

	if (items < 2)
	    button = -1;
	else {
	    button = (int)SvIV(ST(1))
;
	}

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

#if WXPERL_W_VERSION_GE( 2, 5, 3 )
#define XSubPPtmpAAAN 1


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

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

#endif

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

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


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

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


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

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


XS_EUPXS(XS_Wx__MouseEvent_GetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MouseEvent_GetPosition)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxMouseEvent *    THIS = (wxMouseEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::MouseEvent" )
;
	wxPoint *	RETVAL;
    RETVAL = new wxPoint( THIS->GetPosition() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Point" );
    wxPli_thread_sv_register( aTHX_ "Wx::Point", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__MouseEvent_GetPositionXY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MouseEvent_GetPositionXY)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
    long x;
    long y;
	wxMouseEvent *    THIS = (wxMouseEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::MouseEvent" )
;
    THIS->GetPosition( &x, &y );
    EXTEND( SP, 2 );
    PUSHs( sv_2mortal( newSViv( x ) ) );
    PUSHs( sv_2mortal( newSViv( y ) ) );
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_Wx__MouseEvent_GetLogicalPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MouseEvent_GetLogicalPosition)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, dc");
    {
	wxDC*    dc = (wxDC *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DC" )
;
	wxMouseEvent *    THIS = (wxMouseEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::MouseEvent" )
;
	wxPoint *	RETVAL;
    RETVAL = new wxPoint( THIS->GetLogicalPosition( *dc ) );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Point" );
    wxPli_thread_sv_register( aTHX_ "Wx::Point", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


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

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


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

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


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

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

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


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

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

#endif

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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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

#endif

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

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


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

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

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


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

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

#endif

XS_EUPXS(XS_Wx__MoveEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MoveEvent_new)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "CLASS, point, id = 0");
    {
	wxPoint    point = wxPli_sv_2_wxpoint( aTHX_ ST(1) )
;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxMoveEvent *	RETVAL;

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxMoveEvent(point, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MoveEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__MoveEvent_GetPosition); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MoveEvent_GetPosition)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxMoveEvent *    THIS = (wxMoveEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::MoveEvent" )
;
	wxPoint *	RETVAL;
    RETVAL = new wxPoint( THIS->GetPosition() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Point" );
    wxPli_thread_sv_register( aTHX_ "Wx::Point", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

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


XS_EUPXS(XS_Wx__MoveEvent_GetRect); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MoveEvent_GetRect)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxMoveEvent *    THIS = (wxMoveEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::MoveEvent" )
;
	wxRect *	RETVAL;
    RETVAL = new wxRect( THIS->GetRect() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Rect" );
    wxPli_thread_sv_register( aTHX_ "Wx::Rect", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__NotifyEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__NotifyEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, eventType = wxEVT_NULL, id = 0");
    {
	wxEventType	eventType;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxNotifyEvent *	RETVAL;

	if (items < 2)
	    eventType = wxEVT_NULL;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxNotifyEvent(eventType, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::NotifyEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

	THIS->Veto();
    }
    XSRETURN_EMPTY;
}


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

	THIS->Allow();
    }
    XSRETURN_EMPTY;
}


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

	if (items < 2)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	RETVAL = new wxPaintEvent(id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::PaintEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__SizeEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SizeEvent_new)
{
    dVAR; dXSARGS;
    if (items < 2 || items > 3)
       croak_xs_usage(cv,  "CLASS, size, id = 0");
    {
	wxSize    size = wxPli_sv_2_wxsize( aTHX_ ST(1) )
;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxSizeEvent *	RETVAL;

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxSizeEvent(size, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::SizeEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__SizeEvent_GetSize); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SizeEvent_GetSize)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxSizeEvent *    THIS = (wxSizeEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::SizeEvent" )
;
	wxSize *	RETVAL;
    RETVAL = new wxSize( THIS->GetSize() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Size" );
    wxPli_thread_sv_register( aTHX_ "Wx::Size", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

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


XS_EUPXS(XS_Wx__SizeEvent_GetRect); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SizeEvent_GetRect)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxSizeEvent *    THIS = (wxSizeEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::SizeEvent" )
;
	wxRect *	RETVAL;
    RETVAL = new wxRect( THIS->GetRect() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_non_object_2_sv( aTHX_ RETVALSV, RETVAL, "Wx::Rect" );
    wxPli_thread_sv_register( aTHX_ "Wx::Rect", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#endif

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

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


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

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


XS_EUPXS(XS_Wx__ScrollWinEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ScrollWinEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 4)
       croak_xs_usage(cv,  "CLASS, eventType = 0, pos = 0, orientation = 0");
    {
	wxEventType	eventType;
	int	pos;
	int	orientation;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxScrollWinEvent *	RETVAL;

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    pos = 0;
	else {
	    pos = (int)SvIV(ST(2))
;
	}

	if (items < 4)
	    orientation = 0;
	else {
	    orientation = (int)SvIV(ST(3))
;
	}

	RETVAL = new wxScrollWinEvent(eventType, pos, orientation);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::ScrollWinEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


XS_EUPXS(XS_Wx__SetCursorEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SetCursorEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, x = 0, y = 0");
    {
	wxCoord	x;
	wxCoord	y;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxSetCursorEvent *	RETVAL;

	if (items < 2)
	    x = 0;
	else {
	    x = (wxCoord)SvIV(ST(1))
;
	}

	if (items < 3)
	    y = 0;
	else {
	    y = (wxCoord)SvIV(ST(2))
;
	}

	RETVAL = new wxSetCursorEvent(x, y);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::SetCursorEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

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


XS_EUPXS(XS_Wx__SetCursorEvent_SetCursor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SetCursorEvent_SetCursor)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "THIS, cursor");
    {
	wxCursor*    cursor = (wxCursor *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Cursor" )
;
	wxSetCursorEvent *    THIS = (wxSetCursorEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::SetCursorEvent" )
;

	THIS->SetCursor(*cursor);
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__SetCursorEvent_GetCursor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SetCursorEvent_GetCursor)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "THIS");
    {
	wxSetCursorEvent *    THIS = (wxSetCursorEvent *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::SetCursorEvent" )
;
	wxCursor *	RETVAL;
    RETVAL = new wxCursor( THIS->GetCursor() );
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::Cursor", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


XS_EUPXS(XS_Wx__SysColourChangedEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__SysColourChangedEvent_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxSysColourChangedEvent *	RETVAL;

	RETVAL = new wxSysColourChangedEvent();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::SysColourChangedEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__UpdateUIEvent_CanUpdate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_CanUpdate)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "window");
    {
	wxWindow*    window = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::Window" )
;
	bool	RETVAL;
    RETVAL = wxUpdateUIEvent::CanUpdate( window );
	ST(0) = boolSV(RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__UpdateUIEvent_GetMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_GetMode)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	wxUpdateUIMode	RETVAL;
	dXSTARG;
    RETVAL = wxUpdateUIEvent::GetMode();
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__UpdateUIEvent_SetMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_SetMode)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	wxUpdateUIMode	mode = (wxUpdateUIMode)SvIV(ST(0))
;
    wxUpdateUIEvent::SetMode( mode );
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__UpdateUIEvent_GetUpdateInterval); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_GetUpdateInterval)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	long	RETVAL;
	dXSTARG;
    RETVAL = wxUpdateUIEvent::GetUpdateInterval();
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__UpdateUIEvent_ResetUpdateTime); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_ResetUpdateTime)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
    wxUpdateUIEvent::ResetUpdateTime();
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_Wx__UpdateUIEvent_SetUpdateInterval); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__UpdateUIEvent_SetUpdateInterval)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "interval");
    {
	long	interval = (long)SvIV(ST(0))
;
    wxUpdateUIEvent::SetUpdateInterval( interval );
    }
    XSRETURN_EMPTY;
}


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

	if (items < 2)
	    commandId = 0;
	else {
    commandId = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	RETVAL = new wxUpdateUIEvent(commandId);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::UpdateUIEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

	THIS->Check(check);
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_GE( 2, 7, 2 )
#define XSubPPtmpAAAT 1


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

	THIS->Show(show);
    }
    XSRETURN_EMPTY;
}

#endif

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

	THIS->Enable(enable);
    }
    XSRETURN_EMPTY;
}


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

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

#if WXPERL_W_VERSION_GE( 2, 7, 2 )
#define XSubPPtmpAAAU 1


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

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

#endif

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

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


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

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

#if WXPERL_W_VERSION_GE( 2, 7, 2 )
#define XSubPPtmpAAAV 1


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

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

#endif

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

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


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

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


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

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

	THIS->SetText(text);
    }
    XSRETURN_EMPTY;
}


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

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


XS_EUPXS(XS_Wx__NavigationKeyEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__NavigationKeyEvent_new)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "CLASS");
    {
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxNavigationKeyEvent *	RETVAL;

	RETVAL = new wxNavigationKeyEvent();
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::NavigationKeyEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

	THIS->SetDirection(direction);
    }
    XSRETURN_EMPTY;
}


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

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


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

	THIS->SetWindowChange(change);
    }
    XSRETURN_EMPTY;
}


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

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


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

	THIS->SetCurrentFocus(focus);
    }
    XSRETURN_EMPTY;
}

#if WXPERL_W_VERSION_GE( 2, 5, 4 )
#define XSubPPtmpAAAW 1


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

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


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

	THIS->SetFromTab(fromTab);
    }
    XSRETURN_EMPTY;
}

#endif

XS_EUPXS(XS_Wx__ChildFocusEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ChildFocusEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "CLASS, win = NULL");
    {
	wxWindow*	win;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxChildFocusEvent *	RETVAL;

	if (items < 2)
	    win = NULL;
	else {
    win = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Window" )
;
	}

	RETVAL = new wxChildFocusEvent(win);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::ChildFocusEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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

#if WXPERL_W_VERSION_GE( 2, 7, 0 )
#define XSubPPtmpAAAX 1


XS_EUPXS(XS_Wx__ClipboardTextEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__ClipboardTextEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, type = wxEVT_NULL, id = 0");
    {
	wxEventType	type;
	wxWindowID	id;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxClipboardTextEvent *	RETVAL;

	if (items < 2)
	    type = wxEVT_NULL;
	else {
	    type = (wxEventType)SvIV(ST(1))
;
	}

	if (items < 3)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(2) )
;
	}

	RETVAL = new wxClipboardTextEvent(type, id);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::ClipboardTextEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


XS_EUPXS(XS_Wx__MouseCaptureChangedEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__MouseCaptureChangedEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 3)
       croak_xs_usage(cv,  "CLASS, id = 0, capturedWindow = NULL");
    {
	wxWindowID	id;
	wxWindow*	capturedWindow;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxMouseCaptureChangedEvent *	RETVAL;

	if (items < 2)
	    id = 0;
	else {
    id = wxPli_get_wxwindowid( aTHX_ ST(1) )
;
	}

	if (items < 3)
	    capturedWindow = NULL;
	else {
    capturedWindow = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::Window" )
;
	}

	RETVAL = new wxMouseCaptureChangedEvent(id, capturedWindow);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MouseCaptureChangedEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


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

	if (items < 2)
	    eventType = 0;
	else {
	    eventType = (wxEventType)SvIV(ST(1))
;
	}

	RETVAL = new wxMouseCaptureLostEvent(eventType);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::MouseCaptureLostEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}

#endif

XS_EUPXS(XS_Wx__WindowCreateEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__WindowCreateEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "CLASS, window = NULL");
    {
	wxWindow*	window;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxWindowCreateEvent *	RETVAL;

	if (items < 2)
	    window = NULL;
	else {
    window = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Window" )
;
	}

	RETVAL = new wxWindowCreateEvent(window);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::WindowCreateEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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


XS_EUPXS(XS_Wx__WindowDestroyEvent_new); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_Wx__WindowDestroyEvent_new)
{
    dVAR; dXSARGS;
    if (items < 1 || items > 2)
       croak_xs_usage(cv,  "CLASS, window = NULL");
    {
	wxWindow*	window;
	char *	CLASS = (char *)SvPV_nolen(ST(0))
;
	wxWindowDestroyEvent *	RETVAL;

	if (items < 2)
	    window = NULL;
	else {
    window = (wxWindow *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::Window" )
;
	}

	RETVAL = new wxWindowDestroyEvent(window);
	{
	    SV * RETVALSV;
	    RETVALSV = sv_newmortal();
    wxPli_object_2_sv( aTHX_ RETVALSV, RETVAL );
    wxPli_thread_sv_register( aTHX_ "Wx::WindowDestroyEvent", RETVAL, RETVALSV );
	    ST(0) = RETVALSV;
	}
    }
    XSRETURN(1);
}


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

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

#ifdef __cplusplus
extern "C"
#endif
XS_EXTERNAL(boot_Wx_Evt); /* prototype to pass -Wmissing-prototypes */
XS_EXTERNAL(boot_Wx_Evt)
{
#if PERL_VERSION_LE(5, 21, 5)
    dVAR; dXSARGS;
#else
    dVAR; dXSBOOTARGSXSAPIVERCHK;
#endif
#if PERL_VERSION_LE(5, 8, 999) /* PERL_VERSION_LT is 5.33+ */
    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::EvtHandler::new", XS_Wx__EvtHandler_new);
#if XSubPPtmpAAAA
        newXS_deffile("Wx::EvtHandler::AddFilter", XS_Wx__EvtHandler_AddFilter);
        newXS_deffile("Wx::EvtHandler::RemoveFilter", XS_Wx__EvtHandler_RemoveFilter);
#endif
        newXS_deffile("Wx::EvtHandler::AddPendingEvent", XS_Wx__EvtHandler_AddPendingEvent);
        newXS_deffile("Wx::EvtHandler::Connect", XS_Wx__EvtHandler_Connect);
        newXS_deffile("Wx::EvtHandler::Destroy", XS_Wx__EvtHandler_Destroy);
        newXS_deffile("Wx::EvtHandler::Disconnect", XS_Wx__EvtHandler_Disconnect);
        newXS_deffile("Wx::EvtHandler::GetEvtHandlerEnabled", XS_Wx__EvtHandler_GetEvtHandlerEnabled);
        newXS_deffile("Wx::EvtHandler::GetNextHandler", XS_Wx__EvtHandler_GetNextHandler);
        newXS_deffile("Wx::EvtHandler::GetPreviousHandler", XS_Wx__EvtHandler_GetPreviousHandler);
        newXS_deffile("Wx::EvtHandler::ProcessEvent", XS_Wx__EvtHandler_ProcessEvent);
#if XSubPPtmpAAAB
        newXS_deffile("Wx::EvtHandler::SafelyProcessEvent", XS_Wx__EvtHandler_SafelyProcessEvent);
#endif
        newXS_deffile("Wx::EvtHandler::SetEvtHandlerEnabled", XS_Wx__EvtHandler_SetEvtHandlerEnabled);
        newXS_deffile("Wx::EvtHandler::SetNextHandler", XS_Wx__EvtHandler_SetNextHandler);
        newXS_deffile("Wx::EvtHandler::SetPreviousHandler", XS_Wx__EvtHandler_SetPreviousHandler);
#if XSubPPtmpAAAC
        newXS_deffile("Wx::EvtHandler::ProcessEventLocally", XS_Wx__EvtHandler_ProcessEventLocally);
#endif
        newXS_deffile("Wx::Event::CLONE", XS_Wx__Event_CLONE);
        newXS_deffile("Wx::Event::DESTROY", XS_Wx__Event_DESTROY);
        newXS_deffile("Wx::Event::GetEventObject", XS_Wx__Event_GetEventObject);
        newXS_deffile("Wx::Event::GetEventType", XS_Wx__Event_GetEventType);
        newXS_deffile("Wx::Event::GetId", XS_Wx__Event_GetId);
        newXS_deffile("Wx::Event::GetSkipped", XS_Wx__Event_GetSkipped);
        newXS_deffile("Wx::Event::GetTimestamp", XS_Wx__Event_GetTimestamp);
        newXS_deffile("Wx::Event::SetEventType", XS_Wx__Event_SetEventType);
        newXS_deffile("Wx::Event::SetEventObject", XS_Wx__Event_SetEventObject);
        newXS_deffile("Wx::Event::SetId", XS_Wx__Event_SetId);
        newXS_deffile("Wx::Event::SetTimestamp", XS_Wx__Event_SetTimestamp);
        newXS_deffile("Wx::Event::Skip", XS_Wx__Event_Skip);
#if XSubPPtmpAAAD
        newXS_deffile("Wx::Event::ShouldPropagate", XS_Wx__Event_ShouldPropagate);
#endif
#if XSubPPtmpAAAE
        newXS_deffile("Wx::Event::StopPropagation", XS_Wx__Event_StopPropagation);
        newXS_deffile("Wx::Event::ResumePropagation", XS_Wx__Event_ResumePropagation);
#endif
#if XSubPPtmpAAAF
        newXS_deffile("Wx::Event::SetPropagate", XS_Wx__Event_SetPropagate);
#endif
        newXS_deffile("Wx::CommandEvent::new", XS_Wx__CommandEvent_new);
        newXS_deffile("Wx::CommandEvent::GetClientData", XS_Wx__CommandEvent_GetClientData);
        newXS_deffile("Wx::CommandEvent::GetExtraLong", XS_Wx__CommandEvent_GetExtraLong);
        newXS_deffile("Wx::CommandEvent::GetInt", XS_Wx__CommandEvent_GetInt);
        newXS_deffile("Wx::CommandEvent::GetSelection", XS_Wx__CommandEvent_GetSelection);
        newXS_deffile("Wx::CommandEvent::GetString", XS_Wx__CommandEvent_GetString);
        newXS_deffile("Wx::CommandEvent::IsChecked", XS_Wx__CommandEvent_IsChecked);
        newXS_deffile("Wx::CommandEvent::IsSelection", XS_Wx__CommandEvent_IsSelection);
        newXS_deffile("Wx::CommandEvent::SetClientData", XS_Wx__CommandEvent_SetClientData);
        newXS_deffile("Wx::CommandEvent::SetExtraLong", XS_Wx__CommandEvent_SetExtraLong);
        newXS_deffile("Wx::CommandEvent::SetInt", XS_Wx__CommandEvent_SetInt);
        newXS_deffile("Wx::CommandEvent::SetString", XS_Wx__CommandEvent_SetString);
        newXS_deffile("Wx::ContextMenuEvent::new", XS_Wx__ContextMenuEvent_new);
        newXS_deffile("Wx::ContextMenuEvent::GetPosition", XS_Wx__ContextMenuEvent_GetPosition);
        newXS_deffile("Wx::ContextMenuEvent::SetPosition", XS_Wx__ContextMenuEvent_SetPosition);
        newXS_deffile("Wx::PlEvent::new", XS_Wx__PlEvent_new);
        newXS_deffile("Wx::PlEvent::DESTROY", XS_Wx__PlEvent_DESTROY);
        newXS_deffile("Wx::PlCommandEvent::new", XS_Wx__PlCommandEvent_new);
        newXS_deffile("Wx::PlCommandEvent::DESTROY", XS_Wx__PlCommandEvent_DESTROY);
        newXS_deffile("Wx::PlThreadEvent::new", XS_Wx__PlThreadEvent_new);
        newXS_deffile("Wx::PlThreadEvent::_GetData", XS_Wx__PlThreadEvent__GetData);
        newXS_deffile("Wx::PlThreadEvent::GetData", XS_Wx__PlThreadEvent_GetData);
        newXS_deffile("Wx::PlThreadEvent::SetStash", XS_Wx__PlThreadEvent_SetStash);
        newXS_deffile("Wx::ActivateEvent::new", XS_Wx__ActivateEvent_new);
        newXS_deffile("Wx::ActivateEvent::GetActive", XS_Wx__ActivateEvent_GetActive);
        newXS_deffile("Wx::CloseEvent::new", XS_Wx__CloseEvent_new);
        newXS_deffile("Wx::CloseEvent::CanVeto", XS_Wx__CloseEvent_CanVeto);
        newXS_deffile("Wx::CloseEvent::GetLoggingOff", XS_Wx__CloseEvent_GetLoggingOff);
        newXS_deffile("Wx::CloseEvent::SetCanVeto", XS_Wx__CloseEvent_SetCanVeto);
        newXS_deffile("Wx::CloseEvent::SetLoggingOff", XS_Wx__CloseEvent_SetLoggingOff);
        newXS_deffile("Wx::CloseEvent::Veto", XS_Wx__CloseEvent_Veto);
        newXS_deffile("Wx::EraseEvent::new", XS_Wx__EraseEvent_new);
        newXS_deffile("Wx::EraseEvent::GetDC", XS_Wx__EraseEvent_GetDC);
        newXS_deffile("Wx::FocusEvent::new", XS_Wx__FocusEvent_new);
        newXS_deffile("Wx::FocusEvent::GetWindow", XS_Wx__FocusEvent_GetWindow);
        newXS_deffile("Wx::IconizeEvent::Iconized", XS_Wx__IconizeEvent_Iconized);
        newXS_deffile("Wx::IconizeEvent::IsIconized", XS_Wx__IconizeEvent_IsIconized);
        newXS_deffile("Wx::KeyEvent::new", XS_Wx__KeyEvent_new);
        newXS_deffile("Wx::KeyEvent::AltDown", XS_Wx__KeyEvent_AltDown);
#if XSubPPtmpAAAG
        newXS_deffile("Wx::KeyEvent::CmdDown", XS_Wx__KeyEvent_CmdDown);
#endif
        newXS_deffile("Wx::KeyEvent::ControlDown", XS_Wx__KeyEvent_ControlDown);
        newXS_deffile("Wx::KeyEvent::GetKeyCode", XS_Wx__KeyEvent_GetKeyCode);
#if XSubPPtmpAAAH
        newXS_deffile("Wx::KeyEvent::GetRawKeyCode", XS_Wx__KeyEvent_GetRawKeyCode);
#endif
#if XSubPPtmpAAAI
        newXS_deffile("Wx::KeyEvent::GetUnicodeKey", XS_Wx__KeyEvent_GetUnicodeKey);
#endif
#if XSubPPtmpAAAJ
        newXS_deffile("Wx::KeyEvent::GetModifiers", XS_Wx__KeyEvent_GetModifiers);
#endif
        newXS_deffile("Wx::KeyEvent::GetX", XS_Wx__KeyEvent_GetX);
        newXS_deffile("Wx::KeyEvent::GetY", XS_Wx__KeyEvent_GetY);
        newXS_deffile("Wx::KeyEvent::MetaDown", XS_Wx__KeyEvent_MetaDown);
        newXS_deffile("Wx::KeyEvent::HasModifiers", XS_Wx__KeyEvent_HasModifiers);
        newXS_deffile("Wx::KeyEvent::ShiftDown", XS_Wx__KeyEvent_ShiftDown);
#if XSubPPtmpAAAK
        newXS_deffile("Wx::KeyEvent::DoAllowNextEvent", XS_Wx__KeyEvent_DoAllowNextEvent);
        newXS_deffile("Wx::KeyEvent::IsNextEventAllowed", XS_Wx__KeyEvent_IsNextEventAllowed);
#endif
        newXS_deffile("Wx::HelpEvent::new", XS_Wx__HelpEvent_new);
        newXS_deffile("Wx::HelpEvent::GetPosition", XS_Wx__HelpEvent_GetPosition);
        newXS_deffile("Wx::HelpEvent::GetLink", XS_Wx__HelpEvent_GetLink);
        newXS_deffile("Wx::HelpEvent::GetTarget", XS_Wx__HelpEvent_GetTarget);
        newXS_deffile("Wx::HelpEvent::SetPosition", XS_Wx__HelpEvent_SetPosition);
        newXS_deffile("Wx::HelpEvent::SetLink", XS_Wx__HelpEvent_SetLink);
        newXS_deffile("Wx::HelpEvent::SetTarget", XS_Wx__HelpEvent_SetTarget);
        newXS_deffile("Wx::IdleEvent::new", XS_Wx__IdleEvent_new);
        newXS_deffile("Wx::IdleEvent::MoreRequested", XS_Wx__IdleEvent_MoreRequested);
        newXS_deffile("Wx::IdleEvent::RequestMore", XS_Wx__IdleEvent_RequestMore);
#if XSubPPtmpAAAL
        newXS_deffile("Wx::IdleEvent::CanSend", XS_Wx__IdleEvent_CanSend);
#endif
        newXS_deffile("Wx::IdleEvent::SetMode", XS_Wx__IdleEvent_SetMode);
        newXS_deffile("Wx::IdleEvent::GetMode", XS_Wx__IdleEvent_GetMode);
        newXS_deffile("Wx::InitDialogEvent::new", XS_Wx__InitDialogEvent_new);
        newXS_deffile("Wx::JoystickEvent::new", XS_Wx__JoystickEvent_new);
        newXS_deffile("Wx::JoystickEvent::ButtonDown", XS_Wx__JoystickEvent_ButtonDown);
        newXS_deffile("Wx::JoystickEvent::ButtonIsDown", XS_Wx__JoystickEvent_ButtonIsDown);
        newXS_deffile("Wx::JoystickEvent::ButtonUp", XS_Wx__JoystickEvent_ButtonUp);
        newXS_deffile("Wx::JoystickEvent::GetButtonChange", XS_Wx__JoystickEvent_GetButtonChange);
        newXS_deffile("Wx::JoystickEvent::GetButtonState", XS_Wx__JoystickEvent_GetButtonState);
        newXS_deffile("Wx::JoystickEvent::GetJoystick", XS_Wx__JoystickEvent_GetJoystick);
        newXS_deffile("Wx::JoystickEvent::GetPosition", XS_Wx__JoystickEvent_GetPosition);
        newXS_deffile("Wx::JoystickEvent::GetZPosition", XS_Wx__JoystickEvent_GetZPosition);
        newXS_deffile("Wx::JoystickEvent::IsButton", XS_Wx__JoystickEvent_IsButton);
        newXS_deffile("Wx::JoystickEvent::IsMove", XS_Wx__JoystickEvent_IsMove);
        newXS_deffile("Wx::JoystickEvent::IsZMove", XS_Wx__JoystickEvent_IsZMove);
        newXS_deffile("Wx::MenuEvent::new", XS_Wx__MenuEvent_new);
        newXS_deffile("Wx::MenuEvent::GetMenuId", XS_Wx__MenuEvent_GetMenuId);
        newXS_deffile("Wx::MenuEvent::IsPopup", XS_Wx__MenuEvent_IsPopup);
#if XSubPPtmpAAAM
        newXS_deffile("Wx::MenuEvent::GetMenu", XS_Wx__MenuEvent_GetMenu);
#endif
        newXS_deffile("Wx::MaximizeEvent::new", XS_Wx__MaximizeEvent_new);
        newXS_deffile("Wx::MouseEvent::new", XS_Wx__MouseEvent_new);
        newXS_deffile("Wx::MouseEvent::AltDown", XS_Wx__MouseEvent_AltDown);
        newXS_deffile("Wx::MouseEvent::Button", XS_Wx__MouseEvent_Button);
        newXS_deffile("Wx::MouseEvent::ButtonDClick", XS_Wx__MouseEvent_ButtonDClick);
        newXS_deffile("Wx::MouseEvent::ButtonDown", XS_Wx__MouseEvent_ButtonDown);
        newXS_deffile("Wx::MouseEvent::ButtonUp", XS_Wx__MouseEvent_ButtonUp);
#if XSubPPtmpAAAN
        newXS_deffile("Wx::MouseEvent::CmdDown", XS_Wx__MouseEvent_CmdDown);
#endif
        newXS_deffile("Wx::MouseEvent::ControlDown", XS_Wx__MouseEvent_ControlDown);
        newXS_deffile("Wx::MouseEvent::Dragging", XS_Wx__MouseEvent_Dragging);
        newXS_deffile("Wx::MouseEvent::Entering", XS_Wx__MouseEvent_Entering);
        newXS_deffile("Wx::MouseEvent::GetPosition", XS_Wx__MouseEvent_GetPosition);
        newXS_deffile("Wx::MouseEvent::GetPositionXY", XS_Wx__MouseEvent_GetPositionXY);
        newXS_deffile("Wx::MouseEvent::GetLogicalPosition", XS_Wx__MouseEvent_GetLogicalPosition);
        newXS_deffile("Wx::MouseEvent::GetX", XS_Wx__MouseEvent_GetX);
        newXS_deffile("Wx::MouseEvent::GetY", XS_Wx__MouseEvent_GetY);
        newXS_deffile("Wx::MouseEvent::GetWheelRotation", XS_Wx__MouseEvent_GetWheelRotation);
        newXS_deffile("Wx::MouseEvent::GetWheelDelta", XS_Wx__MouseEvent_GetWheelDelta);
        newXS_deffile("Wx::MouseEvent::GetLinesPerAction", XS_Wx__MouseEvent_GetLinesPerAction);
#if XSubPPtmpAAAO
        newXS_deffile("Wx::MouseEvent::GetWheelAxis", XS_Wx__MouseEvent_GetWheelAxis);
#endif
        newXS_deffile("Wx::MouseEvent::IsButton", XS_Wx__MouseEvent_IsButton);
        newXS_deffile("Wx::MouseEvent::IsPageScroll", XS_Wx__MouseEvent_IsPageScroll);
        newXS_deffile("Wx::MouseEvent::Leaving", XS_Wx__MouseEvent_Leaving);
        newXS_deffile("Wx::MouseEvent::LeftDClick", XS_Wx__MouseEvent_LeftDClick);
        newXS_deffile("Wx::MouseEvent::LeftDown", XS_Wx__MouseEvent_LeftDown);
        newXS_deffile("Wx::MouseEvent::LeftIsDown", XS_Wx__MouseEvent_LeftIsDown);
        newXS_deffile("Wx::MouseEvent::LeftUp", XS_Wx__MouseEvent_LeftUp);
        newXS_deffile("Wx::MouseEvent::MetaDown", XS_Wx__MouseEvent_MetaDown);
        newXS_deffile("Wx::MouseEvent::MiddleDClick", XS_Wx__MouseEvent_MiddleDClick);
        newXS_deffile("Wx::MouseEvent::MiddleDown", XS_Wx__MouseEvent_MiddleDown);
        newXS_deffile("Wx::MouseEvent::MiddleIsDown", XS_Wx__MouseEvent_MiddleIsDown);
        newXS_deffile("Wx::MouseEvent::MiddleUp", XS_Wx__MouseEvent_MiddleUp);
        newXS_deffile("Wx::MouseEvent::Moving", XS_Wx__MouseEvent_Moving);
        newXS_deffile("Wx::MouseEvent::RightDClick", XS_Wx__MouseEvent_RightDClick);
        newXS_deffile("Wx::MouseEvent::RightDown", XS_Wx__MouseEvent_RightDown);
        newXS_deffile("Wx::MouseEvent::RightIsDown", XS_Wx__MouseEvent_RightIsDown);
        newXS_deffile("Wx::MouseEvent::RightUp", XS_Wx__MouseEvent_RightUp);
#if XSubPPtmpAAAP
        newXS_deffile("Wx::MouseEvent::Aux1DClick", XS_Wx__MouseEvent_Aux1DClick);
        newXS_deffile("Wx::MouseEvent::Aux1Down", XS_Wx__MouseEvent_Aux1Down);
        newXS_deffile("Wx::MouseEvent::Aux1IsDown", XS_Wx__MouseEvent_Aux1IsDown);
        newXS_deffile("Wx::MouseEvent::Aux1Up", XS_Wx__MouseEvent_Aux1Up);
        newXS_deffile("Wx::MouseEvent::Aux2DClick", XS_Wx__MouseEvent_Aux2DClick);
        newXS_deffile("Wx::MouseEvent::Aux2Down", XS_Wx__MouseEvent_Aux2Down);
        newXS_deffile("Wx::MouseEvent::Aux2IsDown", XS_Wx__MouseEvent_Aux2IsDown);
        newXS_deffile("Wx::MouseEvent::Aux2Up", XS_Wx__MouseEvent_Aux2Up);
#endif
        newXS_deffile("Wx::MouseEvent::ShiftDown", XS_Wx__MouseEvent_ShiftDown);
        newXS_deffile("Wx::MouseEvent::GetButton", XS_Wx__MouseEvent_GetButton);
#if XSubPPtmpAAAQ
        newXS_deffile("Wx::MouseEvent::GetClickCount", XS_Wx__MouseEvent_GetClickCount);
#endif
        newXS_deffile("Wx::MoveEvent::new", XS_Wx__MoveEvent_new);
        newXS_deffile("Wx::MoveEvent::GetPosition", XS_Wx__MoveEvent_GetPosition);
#if XSubPPtmpAAAR
        newXS_deffile("Wx::MoveEvent::GetRect", XS_Wx__MoveEvent_GetRect);
#endif
        newXS_deffile("Wx::NotifyEvent::new", XS_Wx__NotifyEvent_new);
        newXS_deffile("Wx::NotifyEvent::IsAllowed", XS_Wx__NotifyEvent_IsAllowed);
        newXS_deffile("Wx::NotifyEvent::Veto", XS_Wx__NotifyEvent_Veto);
        newXS_deffile("Wx::NotifyEvent::Allow", XS_Wx__NotifyEvent_Allow);
        newXS_deffile("Wx::PaintEvent::new", XS_Wx__PaintEvent_new);
        newXS_deffile("Wx::SizeEvent::new", XS_Wx__SizeEvent_new);
        newXS_deffile("Wx::SizeEvent::GetSize", XS_Wx__SizeEvent_GetSize);
#if XSubPPtmpAAAS
        newXS_deffile("Wx::SizeEvent::GetRect", XS_Wx__SizeEvent_GetRect);
#endif
        newXS_deffile("Wx::ScrollEvent::GetOrientation", XS_Wx__ScrollEvent_GetOrientation);
        newXS_deffile("Wx::ScrollEvent::GetPosition", XS_Wx__ScrollEvent_GetPosition);
        newXS_deffile("Wx::ScrollWinEvent::new", XS_Wx__ScrollWinEvent_new);
        newXS_deffile("Wx::ScrollWinEvent::GetOrientation", XS_Wx__ScrollWinEvent_GetOrientation);
        newXS_deffile("Wx::ScrollWinEvent::GetPosition", XS_Wx__ScrollWinEvent_GetPosition);
        newXS_deffile("Wx::SetCursorEvent::new", XS_Wx__SetCursorEvent_new);
        newXS_deffile("Wx::SetCursorEvent::GetX", XS_Wx__SetCursorEvent_GetX);
        newXS_deffile("Wx::SetCursorEvent::GetY", XS_Wx__SetCursorEvent_GetY);
        newXS_deffile("Wx::SetCursorEvent::SetCursor", XS_Wx__SetCursorEvent_SetCursor);
        newXS_deffile("Wx::SetCursorEvent::GetCursor", XS_Wx__SetCursorEvent_GetCursor);
        newXS_deffile("Wx::SetCursorEvent::HasCursor", XS_Wx__SetCursorEvent_HasCursor);
        newXS_deffile("Wx::SysColourChangedEvent::new", XS_Wx__SysColourChangedEvent_new);
        newXS_deffile("Wx::UpdateUIEvent::CanUpdate", XS_Wx__UpdateUIEvent_CanUpdate);
        newXS_deffile("Wx::UpdateUIEvent::GetMode", XS_Wx__UpdateUIEvent_GetMode);
        newXS_deffile("Wx::UpdateUIEvent::SetMode", XS_Wx__UpdateUIEvent_SetMode);
        newXS_deffile("Wx::UpdateUIEvent::GetUpdateInterval", XS_Wx__UpdateUIEvent_GetUpdateInterval);
        newXS_deffile("Wx::UpdateUIEvent::ResetUpdateTime", XS_Wx__UpdateUIEvent_ResetUpdateTime);
        newXS_deffile("Wx::UpdateUIEvent::SetUpdateInterval", XS_Wx__UpdateUIEvent_SetUpdateInterval);
        newXS_deffile("Wx::UpdateUIEvent::new", XS_Wx__UpdateUIEvent_new);
        newXS_deffile("Wx::UpdateUIEvent::Check", XS_Wx__UpdateUIEvent_Check);
#if XSubPPtmpAAAT
        newXS_deffile("Wx::UpdateUIEvent::Show", XS_Wx__UpdateUIEvent_Show);
#endif
        newXS_deffile("Wx::UpdateUIEvent::Enable", XS_Wx__UpdateUIEvent_Enable);
        newXS_deffile("Wx::UpdateUIEvent::GetChecked", XS_Wx__UpdateUIEvent_GetChecked);
#if XSubPPtmpAAAU
        newXS_deffile("Wx::UpdateUIEvent::GetShown", XS_Wx__UpdateUIEvent_GetShown);
#endif
        newXS_deffile("Wx::UpdateUIEvent::GetSetEnabled", XS_Wx__UpdateUIEvent_GetSetEnabled);
        newXS_deffile("Wx::UpdateUIEvent::GetSetChecked", XS_Wx__UpdateUIEvent_GetSetChecked);
#if XSubPPtmpAAAV
        newXS_deffile("Wx::UpdateUIEvent::GetSetShown", XS_Wx__UpdateUIEvent_GetSetShown);
#endif
        newXS_deffile("Wx::UpdateUIEvent::GetEnabled", XS_Wx__UpdateUIEvent_GetEnabled);
        newXS_deffile("Wx::UpdateUIEvent::GetText", XS_Wx__UpdateUIEvent_GetText);
        newXS_deffile("Wx::UpdateUIEvent::SetText", XS_Wx__UpdateUIEvent_SetText);
        newXS_deffile("Wx::UpdateUIEvent::GetSetText", XS_Wx__UpdateUIEvent_GetSetText);
        newXS_deffile("Wx::NavigationKeyEvent::new", XS_Wx__NavigationKeyEvent_new);
        newXS_deffile("Wx::NavigationKeyEvent::GetDirection", XS_Wx__NavigationKeyEvent_GetDirection);
        newXS_deffile("Wx::NavigationKeyEvent::SetDirection", XS_Wx__NavigationKeyEvent_SetDirection);
        newXS_deffile("Wx::NavigationKeyEvent::IsWindowChange", XS_Wx__NavigationKeyEvent_IsWindowChange);
        newXS_deffile("Wx::NavigationKeyEvent::SetWindowChange", XS_Wx__NavigationKeyEvent_SetWindowChange);
        newXS_deffile("Wx::NavigationKeyEvent::GetCurrentFocus", XS_Wx__NavigationKeyEvent_GetCurrentFocus);
        newXS_deffile("Wx::NavigationKeyEvent::SetCurrentFocus", XS_Wx__NavigationKeyEvent_SetCurrentFocus);
#if XSubPPtmpAAAW
        newXS_deffile("Wx::NavigationKeyEvent::IsFromTab", XS_Wx__NavigationKeyEvent_IsFromTab);
        newXS_deffile("Wx::NavigationKeyEvent::SetFromTab", XS_Wx__NavigationKeyEvent_SetFromTab);
#endif
        newXS_deffile("Wx::ChildFocusEvent::new", XS_Wx__ChildFocusEvent_new);
        newXS_deffile("Wx::ChildFocusEvent::GetWindow", XS_Wx__ChildFocusEvent_GetWindow);
#if XSubPPtmpAAAX
        newXS_deffile("Wx::ClipboardTextEvent::new", XS_Wx__ClipboardTextEvent_new);
        newXS_deffile("Wx::MouseCaptureChangedEvent::new", XS_Wx__MouseCaptureChangedEvent_new);
        newXS_deffile("Wx::MouseCaptureChangedEvent::GetCapturedWindow", XS_Wx__MouseCaptureChangedEvent_GetCapturedWindow);
        newXS_deffile("Wx::MouseCaptureLostEvent::new", XS_Wx__MouseCaptureLostEvent_new);
#endif
        newXS_deffile("Wx::WindowCreateEvent::new", XS_Wx__WindowCreateEvent_new);
        newXS_deffile("Wx::WindowCreateEvent::GetWindow", XS_Wx__WindowCreateEvent_GetWindow);
        newXS_deffile("Wx::WindowDestroyEvent::new", XS_Wx__WindowDestroyEvent_new);
        newXS_deffile("Wx::WindowDestroyEvent::GetWindow", XS_Wx__WindowDestroyEvent_GetWindow);

    /* Initialisation Section */

#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
#if XSubPPtmpAAAV
#endif
#if XSubPPtmpAAAW
#endif
#if XSubPPtmpAAAX
#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
}

