From: Robin Dunn Date: Mon, 4 Apr 2005 23:15:29 +0000 (+0000) Subject: Added wrappers and a demo for the animate contrib X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/2e5aa9c48d73e1302040bee59e4f41197f33b8ee Added wrappers and a demo for the animate contrib git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/wxPython/config.py b/wxPython/config.py index 851c315f89..8e8b617d3d 100644 --- a/wxPython/config.py +++ b/wxPython/config.py @@ -82,6 +82,7 @@ BUILD_GLCANVAS = 1 # If true, build the contrib/glcanvas extension module BUILD_OGL = 0 # If true, build the contrib/ogl extension module BUILD_STC = 1 # If true, build the contrib/stc extension module BUILD_GIZMOS = 1 # Build a module for the gizmos contrib library +BUILD_ANIMATE = 1 # Build a module for the animate contrib library BUILD_DLLWIDGET = 0# Build a module that enables unknown wx widgets # to be loaded from a DLL and to be used from Python. diff --git a/wxPython/contrib/animate/_animate_rename.i b/wxPython/contrib/animate/_animate_rename.i new file mode 100644 index 0000000000..eec258e2c9 --- /dev/null +++ b/wxPython/contrib/animate/_animate_rename.i @@ -0,0 +1,16 @@ +// A bunch of %rename directives generated by BuildRenamers in config.py +// in order to remove the wx prefix from all global scope names. + +#ifndef BUILDING_RENAMERS + +%rename(ANIM_UNSPECIFIED) wxANIM_UNSPECIFIED; +%rename(ANIM_DONOTREMOVE) wxANIM_DONOTREMOVE; +%rename(ANIM_TOBACKGROUND) wxANIM_TOBACKGROUND; +%rename(ANIM_TOPREVIOUS) wxANIM_TOPREVIOUS; +%rename(AnimationPlayer) wxAnimationPlayer; +%rename(AnimationBase) wxAnimationBase; +%rename(GIFAnimation) wxGIFAnimation; +%rename(AN_FIT_ANIMATION) wxAN_FIT_ANIMATION; +%rename(GIFAnimationCtrl) wxGIFAnimationCtrl; + +#endif diff --git a/wxPython/contrib/animate/animate.i b/wxPython/contrib/animate/animate.i new file mode 100644 index 0000000000..ea09116514 --- /dev/null +++ b/wxPython/contrib/animate/animate.i @@ -0,0 +1,323 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: animate.i +// Purpose: Wrappers for the animation classes in wx/contrib +// +// Author: Robin Dunn +// +// Created: 4-April-2005 +// RCS-ID: $Id$ +// Copyright: (c) 2005 by Total Control Software +// Licence: wxWindows license +///////////////////////////////////////////////////////////////////////////// + +%define DOCSTRING +"Simple animation player classes, including `wxGIFAnimationCtrl` for displaying +animated GIF files +" +%enddef + +%module(package="wx", docstring=DOCSTRING) animate + + +%{ +#include "wx/wxPython/wxPython.h" +#include "wx/wxPython/pyclasses.h" +#include +%} + +//--------------------------------------------------------------------------- + +%import core.i +%pythoncode { import wx } +%pythoncode { __docfilter__ = wx._core.__DocFilter(globals()) } + + +MAKE_CONST_WXSTRING2(AnimationControlNameStr, wxT("animationControl")); +MAKE_CONST_WXSTRING_NOSWIG(EmptyString); + +%include _animate_rename.i + +//--------------------------------------------------------------------------- + + +enum wxAnimationDisposal +{ + wxANIM_UNSPECIFIED = -1, + wxANIM_DONOTREMOVE = 0, + wxANIM_TOBACKGROUND = 1, + wxANIM_TOPREVIOUS = 2 +} ; + + +/* wxAnimationPlayer + * Create an object of this class, and either pass an wxXXXAnimation object in + * the constructor, or call SetAnimation. Then call Play(). The wxAnimation + * object is only destroyed in the destructor if destroyAnimation is true in + * the constructor. + */ + +class wxAnimationPlayer : public wxObject +{ +public: + wxAnimationPlayer(wxAnimationBase *animation = NULL, + bool destroyAnimation = false); + ~wxAnimationPlayer(); + + + void SetAnimation(wxAnimationBase* animation, bool destroyAnimation = false); + wxAnimationBase* GetAnimation() const; + + void SetDestroyAnimation(bool destroyAnimation); + bool GetDestroyAnimation() const; + + void SetCurrentFrame(int currentFrame); + int GetCurrentFrame() const; + + void SetWindow(wxWindow* window); + wxWindow* GetWindow() const; + + void SetPosition(const wxPoint& pos); + wxPoint GetPosition() const; + + void SetLooped(bool looped); + bool GetLooped() const; + + bool HasAnimation() const; + + bool IsPlaying() const; + + // Specify whether the GIF's background colour is to be shown, + // or whether the window background should show through (the default) + void UseBackgroundColour(bool useBackground); + bool UsingBackgroundColour() const; + + // Set and use a user-specified background colour (valid for transparent + // animations only) + void SetCustomBackgroundColour(const wxColour& col, + bool useCustomBackgroundColour = true); + + bool UsingCustomBackgroundColour() const; + const wxColour& GetCustomBackgroundColour() const; + + // Another refinement - suppose we're drawing the animation in a separate + // control or window. We may wish to use the background of the parent + // window as the background of our animation. This allows us to specify + // whether to grab from the parent or from this window. + void UseParentBackground(bool useParent); + bool UsingParentBackground() const; + + + // Play + virtual bool Play(wxWindow& window, const wxPoint& pos = wxPoint(0, 0), bool looped = true); + + // Build animation (list of wxImages). If not called before Play + // is called, Play will call this automatically. + virtual bool Build(); + + // Stop the animation + virtual void Stop(); + + // Draw the current view of the animation into this DC. + // Call this from your OnPaint, for example. + virtual void Draw(wxDC& dc); + + + virtual int GetFrameCount() const; + virtual wxImage* GetFrame(int i) const; // Creates a new wxImage + virtual wxAnimationDisposal GetDisposalMethod(int i) const; + virtual wxRect GetFrameRect(int i) const; // Position and size of frame + virtual int GetDelay(int i) const; // Delay for this frame + + virtual wxSize GetLogicalScreenSize() const; + virtual bool GetBackgroundColour(wxColour& col) const ; + virtual bool GetTransparentColour(wxColour& col) const ; + + + // Play the frame + virtual bool PlayFrame(int frame, wxWindow& window, const wxPoint& pos); + %Rename(PlayNextFrame, + virtual bool, PlayFrame()); + + virtual void DrawFrame(int frame, wxDC& dc, const wxPoint& pos); + virtual void DrawBackground(wxDC& dc, const wxPoint& pos, const wxColour& colour); + + // Clear the wxImage cache + virtual void ClearCache(); + + // Save the pertinent area of the window so we can restore + // it if drawing transparently + void SaveBackground(const wxRect& rect); + + wxBitmap& GetBackingStore(); + +}; + + +//--------------------------------------------------------------------------- + +/* wxAnimationBase + * Base class for animations. + * A wxXXXAnimation only stores the animation, providing accessors to + * wxAnimationPlayer. Currently an animation is read-only, but we could + * extend the API for adding frames programmatically, and perhaps have a + * wxMemoryAnimation class that stores its frames in memory, and is able to + * save all files with suitable filenames. You could then use e.g. Ulead GIF + * Animator to load the image files into a GIF animation. + */ + +class wxAnimationBase : public wxObject +{ +public: + //wxAnimationBase() {}; // It's an ABC + ~wxAnimationBase() {}; + +//// Accessors. Should be overridden by each derived class. + + virtual int GetFrameCount() const; + virtual wxImage* GetFrame(int i) const; + virtual wxAnimationDisposal GetDisposalMethod(int i) const; + virtual wxRect GetFrameRect(int i) const; // Position and size of frame + virtual int GetDelay(int i) const; // Delay for this frame + + virtual wxSize GetLogicalScreenSize() const; + virtual bool GetBackgroundColour(wxColour& col) const; + virtual bool GetTransparentColour(wxColour& col) const; + + // Is the animation OK? + virtual bool IsValid() const; + + virtual bool LoadFile(const wxString& filename); +}; + + +// TODO: Add a wxPyAnimationBase class + +//--------------------------------------------------------------------------- + +/* wxGIFAnimation + * This will be moved to a separate file in due course. + */ +class wxGIFAnimation : public wxAnimationBase +{ +public: + wxGIFAnimation() ; + ~wxGIFAnimation() ; + +//// Accessors + + virtual int GetFrameCount() const; + virtual wxImage* GetFrame(int i) const; + virtual wxAnimationDisposal GetDisposalMethod(int i) const; + virtual wxRect GetFrameRect(int i) const; // Position and size of frame + virtual int GetDelay(int i) const; // Delay for this frame + + virtual wxSize GetLogicalScreenSize() const ; + virtual bool GetBackgroundColour(wxColour& col) const ; + virtual bool GetTransparentColour(wxColour& col) const ; + + virtual bool IsValid() const; + +//// Operations + + virtual bool LoadFile(const wxString& filename); + +}; + + +//--------------------------------------------------------------------------- + +/* + * wxAnimationCtrlBase + * Abstract base class for format-specific animation controls. + * This class implements most of the functionality; all a derived + * class has to do is create the appropriate animation class on demand. + */ + +// Resize to animation size if this is set +enum { wxAN_FIT_ANIMATION }; + + +// class wxAnimationCtrlBase: public wxControl +// { +// public: +// %pythonAppend wxAnimationCtrlBase "self._setOORInfo(self)" +// %pythonAppend wxAnimationCtrlBase() "" + +// wxAnimationCtrlBase(wxWindow *parent, wxWindowID id, +// const wxString& filename = wxPyEmptyString, +// const wxPoint& pos = wxDefaultPosition, +// const wxSize& size = wxDefaultSize, +// long style = wxAN_FIT_ANIMATION|wxNO_BORDER, +// const wxString& name = wxPyAnimationControlNameStr); +// %RenameCtor(PreAnimationCtrlBase, wxAnimationCtrlBase()); + +// bool Create(wxWindow *parent, wxWindowID id, +// const wxString& filename = wxPyEmptyString, +// const wxPoint& pos = wxDefaultPosition, +// const wxSize& size = wxDefaultSize, +// long style = wxAN_FIT_ANIMATION|wxNO_BORDER, +// const wxString& name = wxPyAnimationControlNameStr); + +// //// Operations +// virtual bool LoadFile(const wxString& filename = wxPyEmptyString); +// virtual bool Play(bool looped = true) ; +// virtual void Stop(); +// virtual void FitToAnimation(); + +// //// Accessors +// virtual bool IsPlaying() const; +// virtual wxAnimationPlayer& GetPlayer(); +// virtual wxAnimationBase* GetAnimation(); + +// const wxString& GetFilename() const; +// void SetFilename(const wxString& filename); + +// }; + + +/* + * wxGIFAnimationCtrl + * Provides a GIF animation class when required. + */ + +MustHaveApp(wxGIFAnimationCtrl); +class wxGIFAnimationCtrl: public wxControl //wxAnimationCtrlBase +{ +public: + %pythonAppend wxGIFAnimationCtrl "self._setOORInfo(self)" + %pythonAppend wxGIFAnimationCtrl() "" + + wxGIFAnimationCtrl(wxWindow *parent, wxWindowID id=-1, + const wxString& filename = wxPyEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxAN_FIT_ANIMATION|wxNO_BORDER, + const wxString& name = wxPyAnimationControlNameStr); + %RenameCtor(PreGIFAnimationCtrl, wxGIFAnimationCtrl()); + + bool Create(wxWindow *parent, wxWindowID id=-1, + const wxString& filename = wxPyEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxAN_FIT_ANIMATION|wxNO_BORDER, + const wxString& name = wxPyAnimationControlNameStr); + + //// Operations + virtual bool LoadFile(const wxString& filename = wxPyEmptyString); + virtual bool Play(bool looped = true) ; + virtual void Stop(); + virtual void FitToAnimation(); + + //// Accessors + virtual bool IsPlaying() const; + virtual wxAnimationPlayer& GetPlayer(); + virtual wxAnimationBase* GetAnimation(); + + const wxString& GetFilename() const; + void SetFilename(const wxString& filename); + +}; + +//--------------------------------------------------------------------------- +//--------------------------------------------------------------------------- + diff --git a/wxPython/contrib/animate/gtk/animate.py b/wxPython/contrib/animate/gtk/animate.py new file mode 100644 index 0000000000..a86f400d78 --- /dev/null +++ b/wxPython/contrib/animate/gtk/animate.py @@ -0,0 +1,446 @@ +# This file was created automatically by SWIG. +# Don't modify this file, modify the SWIG interface instead. + +""" +Simple animation player classes, including `wxGIFAnimationCtrl` for displaying +animated GIF files + +""" + +import _animate + +def _swig_setattr_nondynamic(self,class_type,name,value,static=1): + if (name == "this"): + if isinstance(value, class_type): + self.__dict__[name] = value.this + if hasattr(value,"thisown"): self.__dict__["thisown"] = value.thisown + del value.thisown + return + method = class_type.__swig_setmethods__.get(name,None) + if method: return method(self,value) + if (not static) or hasattr(self,name) or (name == "thisown"): + self.__dict__[name] = value + else: + raise AttributeError("You cannot add attributes to %s" % self) + +def _swig_setattr(self,class_type,name,value): + return _swig_setattr_nondynamic(self,class_type,name,value,0) + +def _swig_getattr(self,class_type,name): + method = class_type.__swig_getmethods__.get(name,None) + if method: return method(self) + raise AttributeError,name + +import types +try: + _object = types.ObjectType + _newclass = 1 +except AttributeError: + class _object : pass + _newclass = 0 +del types + + +def _swig_setattr_nondynamic_method(set): + def set_attr(self,name,value): + if hasattr(self,name) or (name in ("this", "thisown")): + set(self,name,value) + else: + raise AttributeError("You cannot add attributes to %s" % self) + return set_attr + + +import _core +import wx +__docfilter__ = wx._core.__DocFilter(globals()) +ANIM_UNSPECIFIED = _animate.ANIM_UNSPECIFIED +ANIM_DONOTREMOVE = _animate.ANIM_DONOTREMOVE +ANIM_TOBACKGROUND = _animate.ANIM_TOBACKGROUND +ANIM_TOPREVIOUS = _animate.ANIM_TOPREVIOUS +class AnimationPlayer(_core.Object): + """Proxy of C++ AnimationPlayer class""" + def __repr__(self): + return "<%s.%s; proxy of C++ wxAnimationPlayer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) + def __init__(self, *args, **kwargs): + """__init__(self, AnimationBase animation=None, bool destroyAnimation=False) -> AnimationPlayer""" + newobj = _animate.new_AnimationPlayer(*args, **kwargs) + self.this = newobj.this + self.thisown = 1 + del newobj.thisown + def __del__(self, destroy=_animate.delete_AnimationPlayer): + """__del__(self)""" + try: + if self.thisown: destroy(self) + except: pass + + def SetAnimation(*args, **kwargs): + """SetAnimation(self, AnimationBase animation, bool destroyAnimation=False)""" + return _animate.AnimationPlayer_SetAnimation(*args, **kwargs) + + def GetAnimation(*args, **kwargs): + """GetAnimation(self) -> AnimationBase""" + return _animate.AnimationPlayer_GetAnimation(*args, **kwargs) + + def SetDestroyAnimation(*args, **kwargs): + """SetDestroyAnimation(self, bool destroyAnimation)""" + return _animate.AnimationPlayer_SetDestroyAnimation(*args, **kwargs) + + def GetDestroyAnimation(*args, **kwargs): + """GetDestroyAnimation(self) -> bool""" + return _animate.AnimationPlayer_GetDestroyAnimation(*args, **kwargs) + + def SetCurrentFrame(*args, **kwargs): + """SetCurrentFrame(self, int currentFrame)""" + return _animate.AnimationPlayer_SetCurrentFrame(*args, **kwargs) + + def GetCurrentFrame(*args, **kwargs): + """GetCurrentFrame(self) -> int""" + return _animate.AnimationPlayer_GetCurrentFrame(*args, **kwargs) + + def SetWindow(*args, **kwargs): + """SetWindow(self, Window window)""" + return _animate.AnimationPlayer_SetWindow(*args, **kwargs) + + def GetWindow(*args, **kwargs): + """GetWindow(self) -> Window""" + return _animate.AnimationPlayer_GetWindow(*args, **kwargs) + + def SetPosition(*args, **kwargs): + """SetPosition(self, Point pos)""" + return _animate.AnimationPlayer_SetPosition(*args, **kwargs) + + def GetPosition(*args, **kwargs): + """GetPosition(self) -> Point""" + return _animate.AnimationPlayer_GetPosition(*args, **kwargs) + + def SetLooped(*args, **kwargs): + """SetLooped(self, bool looped)""" + return _animate.AnimationPlayer_SetLooped(*args, **kwargs) + + def GetLooped(*args, **kwargs): + """GetLooped(self) -> bool""" + return _animate.AnimationPlayer_GetLooped(*args, **kwargs) + + def HasAnimation(*args, **kwargs): + """HasAnimation(self) -> bool""" + return _animate.AnimationPlayer_HasAnimation(*args, **kwargs) + + def IsPlaying(*args, **kwargs): + """IsPlaying(self) -> bool""" + return _animate.AnimationPlayer_IsPlaying(*args, **kwargs) + + def UseBackgroundColour(*args, **kwargs): + """UseBackgroundColour(self, bool useBackground)""" + return _animate.AnimationPlayer_UseBackgroundColour(*args, **kwargs) + + def UsingBackgroundColour(*args, **kwargs): + """UsingBackgroundColour(self) -> bool""" + return _animate.AnimationPlayer_UsingBackgroundColour(*args, **kwargs) + + def SetCustomBackgroundColour(*args, **kwargs): + """SetCustomBackgroundColour(self, Colour col, bool useCustomBackgroundColour=True)""" + return _animate.AnimationPlayer_SetCustomBackgroundColour(*args, **kwargs) + + def UsingCustomBackgroundColour(*args, **kwargs): + """UsingCustomBackgroundColour(self) -> bool""" + return _animate.AnimationPlayer_UsingCustomBackgroundColour(*args, **kwargs) + + def GetCustomBackgroundColour(*args, **kwargs): + """GetCustomBackgroundColour(self) -> Colour""" + return _animate.AnimationPlayer_GetCustomBackgroundColour(*args, **kwargs) + + def UseParentBackground(*args, **kwargs): + """UseParentBackground(self, bool useParent)""" + return _animate.AnimationPlayer_UseParentBackground(*args, **kwargs) + + def UsingParentBackground(*args, **kwargs): + """UsingParentBackground(self) -> bool""" + return _animate.AnimationPlayer_UsingParentBackground(*args, **kwargs) + + def Play(*args, **kwargs): + """Play(self, Window window, Point pos=wxPoint(0, 0), bool looped=True) -> bool""" + return _animate.AnimationPlayer_Play(*args, **kwargs) + + def Build(*args, **kwargs): + """Build(self) -> bool""" + return _animate.AnimationPlayer_Build(*args, **kwargs) + + def Stop(*args, **kwargs): + """Stop(self)""" + return _animate.AnimationPlayer_Stop(*args, **kwargs) + + def Draw(*args, **kwargs): + """Draw(self, DC dc)""" + return _animate.AnimationPlayer_Draw(*args, **kwargs) + + def GetFrameCount(*args, **kwargs): + """GetFrameCount(self) -> int""" + return _animate.AnimationPlayer_GetFrameCount(*args, **kwargs) + + def GetFrame(*args, **kwargs): + """GetFrame(self, int i) -> Image""" + return _animate.AnimationPlayer_GetFrame(*args, **kwargs) + + def GetDisposalMethod(*args, **kwargs): + """GetDisposalMethod(self, int i) -> int""" + return _animate.AnimationPlayer_GetDisposalMethod(*args, **kwargs) + + def GetFrameRect(*args, **kwargs): + """GetFrameRect(self, int i) -> Rect""" + return _animate.AnimationPlayer_GetFrameRect(*args, **kwargs) + + def GetDelay(*args, **kwargs): + """GetDelay(self, int i) -> int""" + return _animate.AnimationPlayer_GetDelay(*args, **kwargs) + + def GetLogicalScreenSize(*args, **kwargs): + """GetLogicalScreenSize(self) -> Size""" + return _animate.AnimationPlayer_GetLogicalScreenSize(*args, **kwargs) + + def GetBackgroundColour(*args, **kwargs): + """GetBackgroundColour(self, Colour col) -> bool""" + return _animate.AnimationPlayer_GetBackgroundColour(*args, **kwargs) + + def GetTransparentColour(*args, **kwargs): + """GetTransparentColour(self, Colour col) -> bool""" + return _animate.AnimationPlayer_GetTransparentColour(*args, **kwargs) + + def PlayFrame(*args, **kwargs): + """PlayFrame(self, int frame, Window window, Point pos) -> bool""" + return _animate.AnimationPlayer_PlayFrame(*args, **kwargs) + + def PlayNextFrame(*args, **kwargs): + """PlayNextFrame(self) -> bool""" + return _animate.AnimationPlayer_PlayNextFrame(*args, **kwargs) + + def DrawFrame(*args, **kwargs): + """DrawFrame(self, int frame, DC dc, Point pos)""" + return _animate.AnimationPlayer_DrawFrame(*args, **kwargs) + + def DrawBackground(*args, **kwargs): + """DrawBackground(self, DC dc, Point pos, Colour colour)""" + return _animate.AnimationPlayer_DrawBackground(*args, **kwargs) + + def ClearCache(*args, **kwargs): + """ClearCache(self)""" + return _animate.AnimationPlayer_ClearCache(*args, **kwargs) + + def SaveBackground(*args, **kwargs): + """SaveBackground(self, Rect rect)""" + return _animate.AnimationPlayer_SaveBackground(*args, **kwargs) + + def GetBackingStore(*args, **kwargs): + """GetBackingStore(self) -> Bitmap""" + return _animate.AnimationPlayer_GetBackingStore(*args, **kwargs) + + +class AnimationPlayerPtr(AnimationPlayer): + def __init__(self, this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = AnimationPlayer +_animate.AnimationPlayer_swigregister(AnimationPlayerPtr) +cvar = _animate.cvar +AnimationControlNameStr = cvar.AnimationControlNameStr + +class AnimationBase(_core.Object): + """Proxy of C++ AnimationBase class""" + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "<%s.%s; proxy of C++ wxAnimationBase instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) + def __del__(self, destroy=_animate.delete_AnimationBase): + """__del__(self)""" + try: + if self.thisown: destroy(self) + except: pass + + def GetFrameCount(*args, **kwargs): + """GetFrameCount(self) -> int""" + return _animate.AnimationBase_GetFrameCount(*args, **kwargs) + + def GetFrame(*args, **kwargs): + """GetFrame(self, int i) -> Image""" + return _animate.AnimationBase_GetFrame(*args, **kwargs) + + def GetDisposalMethod(*args, **kwargs): + """GetDisposalMethod(self, int i) -> int""" + return _animate.AnimationBase_GetDisposalMethod(*args, **kwargs) + + def GetFrameRect(*args, **kwargs): + """GetFrameRect(self, int i) -> Rect""" + return _animate.AnimationBase_GetFrameRect(*args, **kwargs) + + def GetDelay(*args, **kwargs): + """GetDelay(self, int i) -> int""" + return _animate.AnimationBase_GetDelay(*args, **kwargs) + + def GetLogicalScreenSize(*args, **kwargs): + """GetLogicalScreenSize(self) -> Size""" + return _animate.AnimationBase_GetLogicalScreenSize(*args, **kwargs) + + def GetBackgroundColour(*args, **kwargs): + """GetBackgroundColour(self, Colour col) -> bool""" + return _animate.AnimationBase_GetBackgroundColour(*args, **kwargs) + + def GetTransparentColour(*args, **kwargs): + """GetTransparentColour(self, Colour col) -> bool""" + return _animate.AnimationBase_GetTransparentColour(*args, **kwargs) + + def IsValid(*args, **kwargs): + """IsValid(self) -> bool""" + return _animate.AnimationBase_IsValid(*args, **kwargs) + + def LoadFile(*args, **kwargs): + """LoadFile(self, String filename) -> bool""" + return _animate.AnimationBase_LoadFile(*args, **kwargs) + + +class AnimationBasePtr(AnimationBase): + def __init__(self, this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = AnimationBase +_animate.AnimationBase_swigregister(AnimationBasePtr) + +class GIFAnimation(AnimationBase): + """Proxy of C++ GIFAnimation class""" + def __repr__(self): + return "<%s.%s; proxy of C++ wxGIFAnimation instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) + def __init__(self, *args, **kwargs): + """__init__(self) -> GIFAnimation""" + newobj = _animate.new_GIFAnimation(*args, **kwargs) + self.this = newobj.this + self.thisown = 1 + del newobj.thisown + def __del__(self, destroy=_animate.delete_GIFAnimation): + """__del__(self)""" + try: + if self.thisown: destroy(self) + except: pass + + def GetFrameCount(*args, **kwargs): + """GetFrameCount(self) -> int""" + return _animate.GIFAnimation_GetFrameCount(*args, **kwargs) + + def GetFrame(*args, **kwargs): + """GetFrame(self, int i) -> Image""" + return _animate.GIFAnimation_GetFrame(*args, **kwargs) + + def GetDisposalMethod(*args, **kwargs): + """GetDisposalMethod(self, int i) -> int""" + return _animate.GIFAnimation_GetDisposalMethod(*args, **kwargs) + + def GetFrameRect(*args, **kwargs): + """GetFrameRect(self, int i) -> Rect""" + return _animate.GIFAnimation_GetFrameRect(*args, **kwargs) + + def GetDelay(*args, **kwargs): + """GetDelay(self, int i) -> int""" + return _animate.GIFAnimation_GetDelay(*args, **kwargs) + + def GetLogicalScreenSize(*args, **kwargs): + """GetLogicalScreenSize(self) -> Size""" + return _animate.GIFAnimation_GetLogicalScreenSize(*args, **kwargs) + + def GetBackgroundColour(*args, **kwargs): + """GetBackgroundColour(self, Colour col) -> bool""" + return _animate.GIFAnimation_GetBackgroundColour(*args, **kwargs) + + def GetTransparentColour(*args, **kwargs): + """GetTransparentColour(self, Colour col) -> bool""" + return _animate.GIFAnimation_GetTransparentColour(*args, **kwargs) + + def IsValid(*args, **kwargs): + """IsValid(self) -> bool""" + return _animate.GIFAnimation_IsValid(*args, **kwargs) + + def LoadFile(*args, **kwargs): + """LoadFile(self, String filename) -> bool""" + return _animate.GIFAnimation_LoadFile(*args, **kwargs) + + +class GIFAnimationPtr(GIFAnimation): + def __init__(self, this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = GIFAnimation +_animate.GIFAnimation_swigregister(GIFAnimationPtr) + +AN_FIT_ANIMATION = _animate.AN_FIT_ANIMATION +class GIFAnimationCtrl(_core.Control): + """Proxy of C++ GIFAnimationCtrl class""" + def __repr__(self): + return "<%s.%s; proxy of C++ wxGIFAnimationCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) + def __init__(self, *args, **kwargs): + """ + __init__(self, Window parent, int id=-1, String filename=EmptyString, + Point pos=DefaultPosition, Size size=DefaultSize, + long style=wxAN_FIT_ANIMATION|wxNO_BORDER, + String name=AnimationControlNameStr) -> GIFAnimationCtrl + """ + newobj = _animate.new_GIFAnimationCtrl(*args, **kwargs) + self.this = newobj.this + self.thisown = 1 + del newobj.thisown + self._setOORInfo(self) + + def Create(*args, **kwargs): + """ + Create(self, Window parent, int id=-1, String filename=EmptyString, + Point pos=DefaultPosition, Size size=DefaultSize, + long style=wxAN_FIT_ANIMATION|wxNO_BORDER, + String name=AnimationControlNameStr) -> bool + """ + return _animate.GIFAnimationCtrl_Create(*args, **kwargs) + + def LoadFile(*args, **kwargs): + """LoadFile(self, String filename=EmptyString) -> bool""" + return _animate.GIFAnimationCtrl_LoadFile(*args, **kwargs) + + def Play(*args, **kwargs): + """Play(self, bool looped=True) -> bool""" + return _animate.GIFAnimationCtrl_Play(*args, **kwargs) + + def Stop(*args, **kwargs): + """Stop(self)""" + return _animate.GIFAnimationCtrl_Stop(*args, **kwargs) + + def FitToAnimation(*args, **kwargs): + """FitToAnimation(self)""" + return _animate.GIFAnimationCtrl_FitToAnimation(*args, **kwargs) + + def IsPlaying(*args, **kwargs): + """IsPlaying(self) -> bool""" + return _animate.GIFAnimationCtrl_IsPlaying(*args, **kwargs) + + def GetPlayer(*args, **kwargs): + """GetPlayer(self) -> AnimationPlayer""" + return _animate.GIFAnimationCtrl_GetPlayer(*args, **kwargs) + + def GetAnimation(*args, **kwargs): + """GetAnimation(self) -> AnimationBase""" + return _animate.GIFAnimationCtrl_GetAnimation(*args, **kwargs) + + def GetFilename(*args, **kwargs): + """GetFilename(self) -> String""" + return _animate.GIFAnimationCtrl_GetFilename(*args, **kwargs) + + def SetFilename(*args, **kwargs): + """SetFilename(self, String filename)""" + return _animate.GIFAnimationCtrl_SetFilename(*args, **kwargs) + + +class GIFAnimationCtrlPtr(GIFAnimationCtrl): + def __init__(self, this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = GIFAnimationCtrl +_animate.GIFAnimationCtrl_swigregister(GIFAnimationCtrlPtr) + +def PreGIFAnimationCtrl(*args, **kwargs): + """PreGIFAnimationCtrl() -> GIFAnimationCtrl""" + val = _animate.new_PreGIFAnimationCtrl(*args, **kwargs) + val.thisown = 1 + return val + + diff --git a/wxPython/contrib/animate/gtk/animate_wrap.cpp b/wxPython/contrib/animate/gtk/animate_wrap.cpp new file mode 100644 index 0000000000..e6de42c8cd --- /dev/null +++ b/wxPython/contrib/animate/gtk/animate_wrap.cpp @@ -0,0 +1,5018 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.24 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + +#define SWIGPYTHON + +#ifdef __cplusplus +template class SwigValueWrapper { + T *tt; +public: + SwigValueWrapper() : tt(0) { } + SwigValueWrapper(const SwigValueWrapper& rhs) : tt(new T(*rhs.tt)) { } + SwigValueWrapper(const T& t) : tt(new T(t)) { } + ~SwigValueWrapper() { delete tt; } + SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; } + operator T&() const { return *tt; } + T *operator&() { return tt; } +private: + SwigValueWrapper& operator=(const SwigValueWrapper& rhs); +}; +#endif + + +#ifndef SWIG_TEMPLATE_DISAMBIGUATOR +# if defined(__SUNPRO_CC) +# define SWIG_TEMPLATE_DISAMBIGUATOR template +# else +# define SWIG_TEMPLATE_DISAMBIGUATOR +# endif +#endif + + +#include + +/*********************************************************************** + * swigrun.swg + * + * This file contains generic CAPI SWIG runtime support for pointer + * type checking. + * + ************************************************************************/ + +/* This should only be incremented when either the layout of swig_type_info changes, + or for whatever reason, the runtime changes incompatibly */ +#define SWIG_RUNTIME_VERSION "1" + +/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */ +#ifdef SWIG_TYPE_TABLE +#define SWIG_QUOTE_STRING(x) #x +#define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x) +#define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE) +#else +#define SWIG_TYPE_TABLE_NAME +#endif + +#include + +#ifndef SWIGINLINE +#if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) +# define SWIGINLINE inline +#else +# define SWIGINLINE +#endif +#endif + +/* + You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for + creating a static or dynamic library from the swig runtime code. + In 99.9% of the cases, swig just needs to declare them as 'static'. + + But only do this if is strictly necessary, ie, if you have problems + with your compiler or so. +*/ +#ifndef SWIGRUNTIME +#define SWIGRUNTIME static +#endif +#ifndef SWIGRUNTIMEINLINE +#define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void *(*swig_converter_func)(void *); +typedef struct swig_type_info *(*swig_dycast_func)(void **); + +typedef struct swig_type_info { + const char *name; + swig_converter_func converter; + const char *str; + void *clientdata; + swig_dycast_func dcast; + struct swig_type_info *next; + struct swig_type_info *prev; +} swig_type_info; + +/* + Compare two type names skipping the space characters, therefore + "char*" == "char *" and "Class" == "Class", etc. + + Return 0 when the two name types are equivalent, as in + strncmp, but skipping ' '. +*/ +SWIGRUNTIME int +SWIG_TypeNameComp(const char *f1, const char *l1, + const char *f2, const char *l2) { + for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) { + while ((*f1 == ' ') && (f1 != l1)) ++f1; + while ((*f2 == ' ') && (f2 != l2)) ++f2; + if (*f1 != *f2) return *f1 - *f2; + } + return (l1 - f1) - (l2 - f2); +} + +/* + Check type equivalence in a name list like ||... +*/ +SWIGRUNTIME int +SWIG_TypeEquiv(const char *nb, const char *tb) { + int equiv = 0; + const char* te = tb + strlen(tb); + const char* ne = nb; + while (!equiv && *ne) { + for (nb = ne; *ne; ++ne) { + if (*ne == '|') break; + } + equiv = SWIG_TypeNameComp(nb, ne, tb, te) == 0; + if (*ne) ++ne; + } + return equiv; +} + +/* + Register a type mapping with the type-checking +*/ +SWIGRUNTIME swig_type_info * +SWIG_TypeRegisterTL(swig_type_info **tl, swig_type_info *ti) { + swig_type_info *tc, *head, *ret, *next; + /* Check to see if this type has already been registered */ + tc = *tl; + while (tc) { + /* check simple type equivalence */ + int typeequiv = (strcmp(tc->name, ti->name) == 0); + /* check full type equivalence, resolving typedefs */ + if (!typeequiv) { + /* only if tc is not a typedef (no '|' on it) */ + if (tc->str && ti->str && !strstr(tc->str,"|")) { + typeequiv = SWIG_TypeEquiv(ti->str,tc->str); + } + } + if (typeequiv) { + /* Already exists in the table. Just add additional types to the list */ + if (ti->clientdata) tc->clientdata = ti->clientdata; + head = tc; + next = tc->next; + goto l1; + } + tc = tc->prev; + } + head = ti; + next = 0; + + /* Place in list */ + ti->prev = *tl; + *tl = ti; + + /* Build linked lists */ + l1: + ret = head; + tc = ti + 1; + /* Patch up the rest of the links */ + while (tc->name) { + head->next = tc; + tc->prev = head; + head = tc; + tc++; + } + if (next) next->prev = head; + head->next = next; + + return ret; +} + +/* + Check the typename +*/ +SWIGRUNTIME swig_type_info * +SWIG_TypeCheck(const char *c, swig_type_info *ty) { + swig_type_info *s; + if (!ty) return 0; /* Void pointer */ + s = ty->next; /* First element always just a name */ + do { + if (strcmp(s->name,c) == 0) { + if (s == ty->next) return s; + /* Move s to the top of the linked list */ + s->prev->next = s->next; + if (s->next) { + s->next->prev = s->prev; + } + /* Insert s as second element in the list */ + s->next = ty->next; + if (ty->next) ty->next->prev = s; + ty->next = s; + s->prev = ty; + return s; + } + s = s->next; + } while (s && (s != ty->next)); + return 0; +} + +/* + Cast a pointer up an inheritance hierarchy +*/ +SWIGRUNTIMEINLINE void * +SWIG_TypeCast(swig_type_info *ty, void *ptr) { + return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr); +} + +/* + Dynamic pointer casting. Down an inheritance hierarchy +*/ +SWIGRUNTIME swig_type_info * +SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) { + swig_type_info *lastty = ty; + if (!ty || !ty->dcast) return ty; + while (ty && (ty->dcast)) { + ty = (*ty->dcast)(ptr); + if (ty) lastty = ty; + } + return lastty; +} + +/* + Return the name associated with this type +*/ +SWIGRUNTIMEINLINE const char * +SWIG_TypeName(const swig_type_info *ty) { + return ty->name; +} + +/* + Return the pretty name associated with this type, + that is an unmangled type name in a form presentable to the user. +*/ +SWIGRUNTIME const char * +SWIG_TypePrettyName(const swig_type_info *type) { + /* The "str" field contains the equivalent pretty names of the + type, separated by vertical-bar characters. We choose + to print the last name, as it is often (?) the most + specific. */ + if (type->str != NULL) { + const char *last_name = type->str; + const char *s; + for (s = type->str; *s; s++) + if (*s == '|') last_name = s+1; + return last_name; + } + else + return type->name; +} + +/* + Search for a swig_type_info structure +*/ +SWIGRUNTIME swig_type_info * +SWIG_TypeQueryTL(swig_type_info *tl, const char *name) { + swig_type_info *ty = tl; + while (ty) { + if (ty->str && (SWIG_TypeEquiv(ty->str,name))) return ty; + if (ty->name && (strcmp(name,ty->name) == 0)) return ty; + ty = ty->prev; + } + return 0; +} + +/* + Set the clientdata field for a type +*/ +SWIGRUNTIME void +SWIG_TypeClientDataTL(swig_type_info *tl, swig_type_info *ti, void *clientdata) { + swig_type_info *tc, *equiv; + if (ti->clientdata) return; + /* if (ti->clientdata == clientdata) return; */ + ti->clientdata = clientdata; + equiv = ti->next; + while (equiv) { + if (!equiv->converter) { + tc = tl; + while (tc) { + if ((strcmp(tc->name, equiv->name) == 0)) + SWIG_TypeClientDataTL(tl,tc,clientdata); + tc = tc->prev; + } + } + equiv = equiv->next; + } +} + +/* + Pack binary data into a string +*/ +SWIGRUNTIME char * +SWIG_PackData(char *c, void *ptr, size_t sz) { + static char hex[17] = "0123456789abcdef"; + unsigned char *u = (unsigned char *) ptr; + const unsigned char *eu = u + sz; + register unsigned char uu; + for (; u != eu; ++u) { + uu = *u; + *(c++) = hex[(uu & 0xf0) >> 4]; + *(c++) = hex[uu & 0xf]; + } + return c; +} + +/* + Unpack binary data from a string +*/ +SWIGRUNTIME const char * +SWIG_UnpackData(const char *c, void *ptr, size_t sz) { + register unsigned char *u = (unsigned char *) ptr; + register const unsigned char *eu = u + sz; + for (; u != eu; ++u) { + register int d = *(c++); + register unsigned char uu = 0; + if ((d >= '0') && (d <= '9')) + uu = ((d - '0') << 4); + else if ((d >= 'a') && (d <= 'f')) + uu = ((d - ('a'-10)) << 4); + else + return (char *) 0; + d = *(c++); + if ((d >= '0') && (d <= '9')) + uu |= (d - '0'); + else if ((d >= 'a') && (d <= 'f')) + uu |= (d - ('a'-10)); + else + return (char *) 0; + *u = uu; + } + return c; +} + +/* + This function will propagate the clientdata field of type to any new + swig_type_info structures that have been added into the list of + equivalent types. It is like calling SWIG_TypeClientData(type, + clientdata) a second time. +*/ +SWIGRUNTIME void +SWIG_PropagateClientDataTL(swig_type_info *tl, swig_type_info *type) { + swig_type_info *equiv = type->next; + swig_type_info *tc; + if (!type->clientdata) return; + while (equiv) { + if (!equiv->converter) { + tc = tl; + while (tc) { + if ((strcmp(tc->name, equiv->name) == 0) && !tc->clientdata) + SWIG_TypeClientDataTL(tl,tc, type->clientdata); + tc = tc->prev; + } + } + equiv = equiv->next; + } +} + +/* + Pack 'void *' into a string buffer. +*/ +SWIGRUNTIME char * +SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) { + char *r = buff; + if ((2*sizeof(void *) + 2) > bsz) return 0; + *(r++) = '_'; + r = SWIG_PackData(r,&ptr,sizeof(void *)); + if (strlen(name) + 1 > (bsz - (r - buff))) return 0; + strcpy(r,name); + return buff; +} + +SWIGRUNTIME const char * +SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) { + if (*c != '_') { + if (strcmp(c,"NULL") == 0) { + *ptr = (void *) 0; + return name; + } else { + return 0; + } + } + return SWIG_UnpackData(++c,ptr,sizeof(void *)); +} + +SWIGRUNTIME char * +SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) { + char *r = buff; + size_t lname = (name ? strlen(name) : 0); + if ((2*sz + 2 + lname) > bsz) return 0; + *(r++) = '_'; + r = SWIG_PackData(r,ptr,sz); + if (lname) { + strncpy(r,name,lname+1); + } else { + *r = 0; + } + return buff; +} + +SWIGRUNTIME const char * +SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) { + if (*c != '_') { + if (strcmp(c,"NULL") == 0) { + memset(ptr,0,sz); + return name; + } else { + return 0; + } + } + return SWIG_UnpackData(++c,ptr,sz); +} + +#ifdef __cplusplus +} +#endif + +/*********************************************************************** + * common.swg + * + * This file contains generic SWIG runtime support for pointer + * type checking as well as a few commonly used macros to control + * external linkage. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + * + * Copyright (c) 1999-2000, The University of Chicago + * + * This file may be freely redistributed without license or fee provided + * this copyright message remains intact. + ************************************************************************/ + + +#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +# if !defined(STATIC_LINKED) +# define SWIGEXPORT(a) __declspec(dllexport) a +# else +# define SWIGEXPORT(a) a +# endif +#else +# define SWIGEXPORT(a) a +#endif + +#ifdef __cplusplus +extern "C" { +#endif + + +/*************************************************************************/ + + +/* The static type info list */ + +static swig_type_info *swig_type_list = 0; +static swig_type_info **swig_type_list_handle = &swig_type_list; + + +/* Register a type mapping with the type-checking */ +static swig_type_info * +SWIG_TypeRegister(swig_type_info *ti) { + return SWIG_TypeRegisterTL(swig_type_list_handle, ti); +} + +/* Search for a swig_type_info structure */ +static swig_type_info * +SWIG_TypeQuery(const char *name) { + return SWIG_TypeQueryTL(*swig_type_list_handle, name); +} + +/* Set the clientdata field for a type */ +static void +SWIG_TypeClientData(swig_type_info *ti, void *clientdata) { + SWIG_TypeClientDataTL(*swig_type_list_handle, ti, clientdata); +} + +/* This function will propagate the clientdata field of type to +* any new swig_type_info structures that have been added into the list +* of equivalent types. It is like calling +* SWIG_TypeClientData(type, clientdata) a second time. +*/ +static void +SWIG_PropagateClientData(swig_type_info *type) { + SWIG_PropagateClientDataTL(*swig_type_list_handle, type); +} + +#ifdef __cplusplus +} +#endif + +/* ----------------------------------------------------------------------------- + * SWIG API. Portion that goes into the runtime + * ----------------------------------------------------------------------------- */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* ----------------------------------------------------------------------------- + * for internal method declarations + * ----------------------------------------------------------------------------- */ + +#ifndef SWIGINTERN +#define SWIGINTERN static +#endif + +#ifndef SWIGINTERNSHORT +#ifdef __cplusplus +#define SWIGINTERNSHORT static inline +#else /* C case */ +#define SWIGINTERNSHORT static +#endif /* __cplusplus */ +#endif + + +/* + Exception handling in wrappers +*/ +#define SWIG_fail goto fail +#define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg) +#define SWIG_append_errmsg(msg) SWIG_Python_AddErrMesg(msg,0) +#define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1) +#define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj) +#define SWIG_null_ref(type) SWIG_Python_NullRef(type) + +/* + Contract support +*/ +#define SWIG_contract_assert(expr, msg) \ + if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else + +/* ----------------------------------------------------------------------------- + * Constant declarations + * ----------------------------------------------------------------------------- */ + +/* Constant Types */ +#define SWIG_PY_INT 1 +#define SWIG_PY_FLOAT 2 +#define SWIG_PY_STRING 3 +#define SWIG_PY_POINTER 4 +#define SWIG_PY_BINARY 5 + +/* Constant information structure */ +typedef struct swig_const_info { + int type; + char *name; + long lvalue; + double dvalue; + void *pvalue; + swig_type_info **ptype; +} swig_const_info; + + +/* ----------------------------------------------------------------------------- + * Alloc. memory flags + * ----------------------------------------------------------------------------- */ +#define SWIG_OLDOBJ 1 +#define SWIG_NEWOBJ SWIG_OLDOBJ + 1 +#define SWIG_PYSTR SWIG_NEWOBJ + 1 + +#ifdef __cplusplus +} +#endif + + +/*********************************************************************** + * pyrun.swg + * + * This file contains the runtime support for Python modules + * and includes code for managing global variables and pointer + * type checking. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + ************************************************************************/ + +/* Common SWIG API */ +#define SWIG_ConvertPtr(obj, pp, type, flags) SWIG_Python_ConvertPtr(obj, pp, type, flags) +#define SWIG_NewPointerObj(p, type, flags) SWIG_Python_NewPointerObj(p, type, flags) +#define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags) + + +/* Python-specific SWIG API */ +#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags) SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags) +#define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type) + + +/* ----------------------------------------------------------------------------- + * Pointer declarations + * ----------------------------------------------------------------------------- */ +/* + Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent + C/C++ pointers in the python side. Very useful for debugging, but + not always safe. +*/ +#if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES) +# define SWIG_COBJECT_TYPES +#endif + +/* Flags for pointer conversion */ +#define SWIG_POINTER_EXCEPTION 0x1 +#define SWIG_POINTER_DISOWN 0x2 + + +#ifdef __cplusplus +extern "C" { +#endif + +/* ----------------------------------------------------------------------------- + * Create a new pointer string + * ----------------------------------------------------------------------------- */ + +#ifndef SWIG_BUFFER_SIZE +#define SWIG_BUFFER_SIZE 1024 +#endif + +#if defined(SWIG_COBJECT_TYPES) +#if !defined(SWIG_COBJECT_PYTHON) +/* ----------------------------------------------------------------------------- + * Implements a simple Swig Object type, and use it instead of PyCObject + * ----------------------------------------------------------------------------- */ + +typedef struct { + PyObject_HEAD + void *ptr; + const char *desc; +} PySwigObject; + +/* Declarations for objects of type PySwigObject */ + +SWIGRUNTIME int +PySwigObject_print(PySwigObject *v, FILE *fp, int flags) +{ + char result[SWIG_BUFFER_SIZE]; + if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) { + fputs("", fp); + return 0; + } else { + return 1; + } +} + +SWIGRUNTIME PyObject * +PySwigObject_repr(PySwigObject *v) +{ + char result[SWIG_BUFFER_SIZE]; + return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ? + PyString_FromFormat("", result) : 0; +} + +SWIGRUNTIME PyObject * +PySwigObject_str(PySwigObject *v) +{ + char result[SWIG_BUFFER_SIZE]; + return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ? + PyString_FromString(result) : 0; +} + +SWIGRUNTIME PyObject * +PySwigObject_long(PySwigObject *v) +{ + return PyLong_FromUnsignedLong((unsigned long) v->ptr); +} + +SWIGRUNTIME PyObject * +PySwigObject_oct(PySwigObject *v) +{ + char buf[100]; + unsigned long x = (unsigned long)v->ptr; + if (x == 0) + strcpy(buf, "0"); + else + PyOS_snprintf(buf, sizeof(buf), "0%lo", x); + return PyString_FromString(buf); +} + +SWIGRUNTIME PyObject * +PySwigObject_hex(PySwigObject *v) +{ + char buf[100]; + PyOS_snprintf(buf, sizeof(buf), "0x%lx", (unsigned long)v->ptr); + return PyString_FromString(buf); +} + +SWIGRUNTIME int +PySwigObject_compare(PySwigObject *v, PySwigObject *w) +{ + int c = strcmp(v->desc, w->desc); + if (c) { + return c; + } else { + void *i = v->ptr; + void *j = w->ptr; + return (i < j) ? -1 : (i > j) ? 1 : 0; + } +} + +SWIGRUNTIME void +PySwigObject_dealloc(PySwigObject *self) +{ + PyObject_DEL(self); +} + +SWIGRUNTIME PyTypeObject* +PySwigObject_GetType() { + static char PySwigObject_Type__doc__[] = + "Swig object carries a C/C++ instance pointer"; + + static PyNumberMethods PySwigObject_as_number = { + (binaryfunc)0, /*nb_add*/ + (binaryfunc)0, /*nb_subtract*/ + (binaryfunc)0, /*nb_multiply*/ + (binaryfunc)0, /*nb_divide*/ + (binaryfunc)0, /*nb_remainder*/ + (binaryfunc)0, /*nb_divmod*/ + (ternaryfunc)0,/*nb_power*/ + (unaryfunc)0, /*nb_negative*/ + (unaryfunc)0, /*nb_positive*/ + (unaryfunc)0, /*nb_absolute*/ + (inquiry)0, /*nb_nonzero*/ + 0, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + 0, /*nb_and*/ + 0, /*nb_xor*/ + 0, /*nb_or*/ + (coercion)0, /*nb_coerce*/ + (unaryfunc)PySwigObject_long, /*nb_int*/ + (unaryfunc)PySwigObject_long, /*nb_long*/ + (unaryfunc)0, /*nb_float*/ + (unaryfunc)PySwigObject_oct, /*nb_oct*/ + (unaryfunc)PySwigObject_hex, /*nb_hex*/ +#if PY_VERSION_HEX >= 0x02000000 + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */ +#endif + }; + + static int type_init = 0; + static PyTypeObject PySwigObject_Type; + + if (!type_init) { + PyTypeObject tmp = { + PyObject_HEAD_INIT(&PyType_Type) + 0, /*ob_size*/ + "PySwigObject", /*tp_name*/ + sizeof(PySwigObject), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + /* methods */ + (destructor)PySwigObject_dealloc, /*tp_dealloc*/ + (printfunc)PySwigObject_print, /*tp_print*/ + (getattrfunc)0, /*tp_getattr*/ + (setattrfunc)0, /*tp_setattr*/ + (cmpfunc)PySwigObject_compare, /*tp_compare*/ + (reprfunc)PySwigObject_repr, /*tp_repr*/ + &PySwigObject_as_number, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + (hashfunc)0, /*tp_hash*/ + (ternaryfunc)0, /*tp_call*/ + (reprfunc)PySwigObject_str, /*tp_str*/ + /* Space for future expansion */ + 0L,0L,0L,0L, + PySwigObject_Type__doc__, /* Documentation string */ +#if PY_VERSION_HEX >= 0x02000000 + 0, /* tp_traverse */ + 0, /* tp_clear */ +#endif +#if PY_VERSION_HEX >= 0x02010000 + 0, /* tp_richcompare */ + 0, /* tp_weaklistoffset */ +#endif +#if PY_VERSION_HEX >= 0x02020000 + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */ +#endif +#if PY_VERSION_HEX >= 0x02030000 + 0, /* tp_del */ +#endif +#ifdef COUNT_ALLOCS + 0,0,0,0 /* tp_alloc -> tp_next */ +#endif + }; + + PySwigObject_Type = tmp; + type_init = 1; + } + + return &PySwigObject_Type; +} + +SWIGRUNTIME PyObject * +PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc) +{ + PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_GetType()); + if (self == NULL) return NULL; + self->ptr = ptr; + self->desc = desc; + return (PyObject *)self; +} + +SWIGRUNTIMEINLINE void * +PySwigObject_AsVoidPtr(PyObject *self) +{ + return ((PySwigObject *)self)->ptr; +} + +SWIGRUNTIMEINLINE const char * +PySwigObject_GetDesc(PyObject *self) +{ + return ((PySwigObject *)self)->desc; +} + +SWIGRUNTIMEINLINE int +PySwigObject_Check(PyObject *op) { + return ((op)->ob_type == PySwigObject_GetType()) + || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0); +} + +/* ----------------------------------------------------------------------------- + * Implements a simple Swig Packed type, and use it instead of string + * ----------------------------------------------------------------------------- */ + +typedef struct { + PyObject_HEAD + void *pack; + const char *desc; + size_t size; +} PySwigPacked; + +SWIGRUNTIME int +PySwigPacked_print(PySwigPacked *v, FILE *fp, int flags) +{ + char result[SWIG_BUFFER_SIZE]; + fputs("pack, v->size, 0, sizeof(result))) { + fputs("at ", fp); + fputs(result, fp); + } + fputs(v->desc,fp); + fputs(">", fp); + return 0; +} + +SWIGRUNTIME PyObject * +PySwigPacked_repr(PySwigPacked *v) +{ + char result[SWIG_BUFFER_SIZE]; + if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) { + return PyString_FromFormat("", result, v->desc); + } else { + return PyString_FromFormat("", v->desc); + } +} + +SWIGRUNTIME PyObject * +PySwigPacked_str(PySwigPacked *v) +{ + char result[SWIG_BUFFER_SIZE]; + if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){ + return PyString_FromFormat("%s%s", result, v->desc); + } else { + return PyString_FromFormat("%s", v->desc); + } +} + +SWIGRUNTIME int +PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w) +{ + int c = strcmp(v->desc, w->desc); + if (c) { + return c; + } else { + size_t i = v->size; + size_t j = w->size; + int s = (i < j) ? -1 : (i > j) ? 1 : 0; + return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size); + } +} + +SWIGRUNTIME void +PySwigPacked_dealloc(PySwigPacked *self) +{ + free(self->pack); + PyObject_DEL(self); +} + +SWIGRUNTIME PyTypeObject* +PySwigPacked_GetType() { + static char PySwigPacked_Type__doc__[] = + "Swig object carries a C/C++ instance pointer"; + static int type_init = 0; + + static PyTypeObject PySwigPacked_Type; + if (!type_init) { + PyTypeObject tmp = { + PyObject_HEAD_INIT(&PyType_Type) + 0, /*ob_size*/ + "PySwigPacked", /*tp_name*/ + sizeof(PySwigPacked), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + /* methods */ + (destructor)PySwigPacked_dealloc, /*tp_dealloc*/ + (printfunc)PySwigPacked_print, /*tp_print*/ + (getattrfunc)0, /*tp_getattr*/ + (setattrfunc)0, /*tp_setattr*/ + (cmpfunc)PySwigPacked_compare, /*tp_compare*/ + (reprfunc)PySwigPacked_repr, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + (hashfunc)0, /*tp_hash*/ + (ternaryfunc)0, /*tp_call*/ + (reprfunc)PySwigPacked_str, /*tp_str*/ + /* Space for future expansion */ + 0L,0L,0L,0L, + PySwigPacked_Type__doc__, /* Documentation string */ +#if PY_VERSION_HEX >= 0x02000000 + 0, /* tp_traverse */ + 0, /* tp_clear */ +#endif +#if PY_VERSION_HEX >= 0x02010000 + 0, /* tp_richcompare */ + 0, /* tp_weaklistoffset */ +#endif +#if PY_VERSION_HEX >= 0x02020000 + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */ +#endif +#if PY_VERSION_HEX >= 0x02030000 + 0, /* tp_del */ +#endif +#ifdef COUNT_ALLOCS + 0,0,0,0 /* tp_alloc -> tp_next */ +#endif + }; + + PySwigPacked_Type = tmp; + type_init = 1; + } + + + + return &PySwigPacked_Type; +} + +SWIGRUNTIME PyObject * +PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc) +{ + PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_GetType()); + if (self == NULL) { + return NULL; + } else { + void *pack = malloc(size); + memcpy(pack, ptr, size); + self->pack = pack; + self->desc = desc; + self->size = size; + return (PyObject *) self; + } +} + +SWIGRUNTIMEINLINE const char * +PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size) +{ + PySwigPacked *self = (PySwigPacked *)obj; + if (self->size != size) return 0; + memcpy(ptr, self->pack, size); + return self->desc; +} + +SWIGRUNTIMEINLINE const char * +PySwigPacked_GetDesc(PyObject *self) +{ + return ((PySwigPacked *)self)->desc; +} + +SWIGRUNTIMEINLINE int +PySwigPacked_Check(PyObject *op) { + return ((op)->ob_type == PySwigPacked_GetType()) + || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0); +} + +#else +/* ----------------------------------------------------------------------------- + * Use the old Python PyCObject instead of PySwigObject + * ----------------------------------------------------------------------------- */ + +#define PySwigObject_GetDesc(obj) PyCObject_GetDesc(obj) +#define PySwigObject_Check(obj) PyCObject_Check(obj) +#define PySwigObject_AsVoidPtr(obj) PyCObject_AsVoidPtr(obj) +#define PySwigObject_FromVoidPtrAndDesc(p, d) PyCObject_FromVoidPtrAndDesc(p, d, NULL) + +#endif + +#endif + +/* ----------------------------------------------------------------------------- + * errors manipulation + * ----------------------------------------------------------------------------- */ + +SWIGRUNTIME void +SWIG_Python_TypeError(const char *type, PyObject *obj) +{ + if (type) { +#if defined(SWIG_COBJECT_TYPES) + if (PySwigObject_Check(obj)) { + const char *otype = (const char *) PySwigObject_GetDesc(obj); + if (otype) { + PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received", + type, otype); + return; + } + } else +#endif + { + const char *otype = (obj ? obj->ob_type->tp_name : 0); + if (otype) { + PyObject *str = PyObject_Str(obj); + const char *cstr = str ? PyString_AsString(str) : 0; + if (cstr) { + PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received", + type, otype, cstr); + } else { + PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received", + type, otype); + } + Py_DECREF(str); + return; + } + } + PyErr_Format(PyExc_TypeError, "a '%s' is expected", type); + } else { + PyErr_Format(PyExc_TypeError, "unexpected type is received"); + } +} + +SWIGRUNTIMEINLINE void +SWIG_Python_NullRef(const char *type) +{ + if (type) { + PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type); + } else { + PyErr_Format(PyExc_TypeError, "null reference was received"); + } +} + +SWIGRUNTIME int +SWIG_Python_AddErrMesg(const char* mesg, int infront) +{ + if (PyErr_Occurred()) { + PyObject *type = 0; + PyObject *value = 0; + PyObject *traceback = 0; + PyErr_Fetch(&type, &value, &traceback); + if (value) { + PyObject *old_str = PyObject_Str(value); + Py_XINCREF(type); + PyErr_Clear(); + if (infront) { + PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str)); + } else { + PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg); + } + Py_DECREF(old_str); + } + return 1; + } else { + return 0; + } +} + +SWIGRUNTIME int +SWIG_Python_ArgFail(int argnum) +{ + if (PyErr_Occurred()) { + /* add information about failing argument */ + char mesg[256]; + sprintf(mesg, "argument number %d:", argnum); + return SWIG_Python_AddErrMesg(mesg, 1); + } else { + return 0; + } +} + + +/* ----------------------------------------------------------------------------- + * pointers/data manipulation + * ----------------------------------------------------------------------------- */ + +/* Convert a pointer value */ +SWIGRUNTIME int +SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) { + swig_type_info *tc; + const char *c = 0; + static PyObject *SWIG_this = 0; + int newref = 0; + PyObject *pyobj = 0; + void *vptr; + + if (!obj) return 0; + if (obj == Py_None) { + *ptr = 0; + return 0; + } + +#ifdef SWIG_COBJECT_TYPES + if (!(PySwigObject_Check(obj))) { + if (!SWIG_this) + SWIG_this = PyString_FromString("this"); + pyobj = obj; + obj = PyObject_GetAttr(obj,SWIG_this); + newref = 1; + if (!obj) goto type_error; + if (!PySwigObject_Check(obj)) { + Py_DECREF(obj); + goto type_error; + } + } + vptr = PySwigObject_AsVoidPtr(obj); + c = (const char *) PySwigObject_GetDesc(obj); + if (newref) { Py_DECREF(obj); } + goto type_check; +#else + if (!(PyString_Check(obj))) { + if (!SWIG_this) + SWIG_this = PyString_FromString("this"); + pyobj = obj; + obj = PyObject_GetAttr(obj,SWIG_this); + newref = 1; + if (!obj) goto type_error; + if (!PyString_Check(obj)) { + Py_DECREF(obj); + goto type_error; + } + } + c = PyString_AS_STRING(obj); + /* Pointer values must start with leading underscore */ + c = SWIG_UnpackVoidPtr(c, &vptr, ty->name); + if (newref) { Py_DECREF(obj); } + if (!c) goto type_error; +#endif + +type_check: + + if (ty) { + tc = SWIG_TypeCheck(c,ty); + if (!tc) goto type_error; + *ptr = SWIG_TypeCast(tc,vptr); + } else { + *ptr = vptr; + } + + if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) { + PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False); + } + return 0; + +type_error: + PyErr_Clear(); + if (pyobj && !obj) { + obj = pyobj; + if (PyCFunction_Check(obj)) { + /* here we get the method pointer for callbacks */ + char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc); + c = doc ? strstr(doc, "swig_ptr: ") : 0; + if (c) { + c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name); + if (!c) goto type_error; + goto type_check; + } + } + } + if (flags & SWIG_POINTER_EXCEPTION) { + if (ty) { + SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj); + } else { + SWIG_Python_TypeError("C/C++ pointer", obj); + } + } + return -1; +} + +/* Convert a pointer value, signal an exception on a type mismatch */ +SWIGRUNTIME void * +SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) { + void *result; + if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) { + PyErr_Clear(); + if (flags & SWIG_POINTER_EXCEPTION) { + SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj); + SWIG_Python_ArgFail(argnum); + } + } + return result; +} + +/* Convert a packed value value */ +SWIGRUNTIME int +SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) { + swig_type_info *tc; + const char *c = 0; + +#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON) + c = PySwigPacked_UnpackData(obj, ptr, sz); +#else + if ((!obj) || (!PyString_Check(obj))) goto type_error; + c = PyString_AS_STRING(obj); + /* Pointer values must start with leading underscore */ + c = SWIG_UnpackDataName(c, ptr, sz, ty->name); +#endif + if (!c) goto type_error; + if (ty) { + tc = SWIG_TypeCheck(c,ty); + if (!tc) goto type_error; + } + return 0; + +type_error: + PyErr_Clear(); + if (flags & SWIG_POINTER_EXCEPTION) { + if (ty) { + SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj); + } else { + SWIG_Python_TypeError("C/C++ packed data", obj); + } + } + return -1; +} + +/* Create a new array object */ +SWIGRUNTIME PyObject * +SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) { + PyObject *robj = 0; + if (!ptr) { + Py_INCREF(Py_None); + return Py_None; + } +#ifdef SWIG_COBJECT_TYPES + robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name); +#else + { + char result[SWIG_BUFFER_SIZE]; + robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ? + PyString_FromString(result) : 0; + } +#endif + if (!robj || (robj == Py_None)) return robj; + if (type->clientdata) { + PyObject *inst; + PyObject *args = Py_BuildValue((char*)"(O)", robj); + Py_DECREF(robj); + inst = PyObject_CallObject((PyObject *) type->clientdata, args); + Py_DECREF(args); + if (inst) { + if (own) { + PyObject_SetAttrString(inst,(char*)"thisown",Py_True); + } + robj = inst; + } + } + return robj; +} + +SWIGRUNTIME PyObject * +SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) { + PyObject *robj = 0; + if (!ptr) { + Py_INCREF(Py_None); + return Py_None; + } +#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON) + robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name); +#else + { + char result[SWIG_BUFFER_SIZE]; + robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ? + PyString_FromString(result) : 0; + } +#endif + return robj; +} + +/* -----------------------------------------------------------------------------* + * Get type list + * -----------------------------------------------------------------------------*/ + +#ifdef SWIG_LINK_RUNTIME +void *SWIG_ReturnGlobalTypeList(void *); +#endif + +SWIGRUNTIME swig_type_info ** +SWIG_Python_GetTypeListHandle() { + static void *type_pointer = (void *)0; + /* first check if module already created */ + if (!type_pointer) { +#ifdef SWIG_LINK_RUNTIME + type_pointer = SWIG_ReturnGlobalTypeList((void *)0); +#else + type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION, + (char*)"type_pointer" SWIG_TYPE_TABLE_NAME); + if (PyErr_Occurred()) { + PyErr_Clear(); + type_pointer = (void *)0; + } + } +#endif + return (swig_type_info **) type_pointer; +} + +/* + Search for a swig_type_info structure + */ +SWIGRUNTIMEINLINE swig_type_info * +SWIG_Python_GetTypeList() { + swig_type_info **tlh = SWIG_Python_GetTypeListHandle(); + return tlh ? *tlh : (swig_type_info*)0; +} + +#define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList + +#ifdef __cplusplus +} +#endif + + +/* -------- TYPES TABLE (BEGIN) -------- */ + +#define SWIGTYPE_p_wxRect swig_types[0] +#define SWIGTYPE_p_wxGIFAnimationCtrl swig_types[1] +#define SWIGTYPE_p_wxObject swig_types[2] +#define SWIGTYPE_p_unsigned_char swig_types[3] +#define SWIGTYPE_p_wxColour swig_types[4] +#define SWIGTYPE_p_wxAnimationPlayer swig_types[5] +#define SWIGTYPE_p_wxWindow swig_types[6] +#define SWIGTYPE_p_unsigned_long swig_types[7] +#define SWIGTYPE_p_wxBitmap swig_types[8] +#define SWIGTYPE_p_form_ops_t swig_types[9] +#define SWIGTYPE_p_unsigned_int swig_types[10] +#define SWIGTYPE_unsigned_int swig_types[11] +#define SWIGTYPE_p_wxDuplexMode swig_types[12] +#define SWIGTYPE_p_wxGIFAnimation swig_types[13] +#define SWIGTYPE_p_char swig_types[14] +#define SWIGTYPE_p_wxAnimationBase swig_types[15] +#define SWIGTYPE_p_wxPoint swig_types[16] +#define SWIGTYPE_p_wxDC swig_types[17] +#define SWIGTYPE_p_wxEvtHandler swig_types[18] +#define SWIGTYPE_std__ptrdiff_t swig_types[19] +#define SWIGTYPE_ptrdiff_t swig_types[20] +#define SWIGTYPE_p_wxControl swig_types[21] +#define SWIGTYPE_p_wxPaperSize swig_types[22] +#define SWIGTYPE_p_wxImage swig_types[23] +#define SWIGTYPE_p_wxSize swig_types[24] +#define SWIGTYPE_p_int swig_types[25] +static swig_type_info *swig_types[27]; + +/* -------- TYPES TABLE (END) -------- */ + + +/*----------------------------------------------- + @(target):= _animate.so + ------------------------------------------------*/ +#define SWIG_init init_animate + +#define SWIG_name "_animate" + +#include "wx/wxPython/wxPython.h" +#include "wx/wxPython/pyclasses.h" +#include + + static const wxString wxPyAnimationControlNameStr(wxT("animationControl")); + static const wxString wxPyEmptyString(wxEmptyString); + + /*@/opt/swig/share/swig/1.3.24/python/pymacros.swg,66,SWIG_define@*/ +#define SWIG_From_int PyInt_FromLong +/*@@*/ + + +#include + + +SWIGINTERN int + SWIG_CheckLongInRange(long value, long min_value, long max_value, + const char *errmsg) +{ + if (value < min_value) { + if (errmsg) { + PyErr_Format(PyExc_OverflowError, + "value %ld is less than '%s' minimum %ld", + value, errmsg, min_value); + } + return 0; + } else if (value > max_value) { + if (errmsg) { + PyErr_Format(PyExc_OverflowError, + "value %ld is greater than '%s' maximum %ld", + value, errmsg, max_value); + } + return 0; + } + return 1; +} + + +SWIGINTERN int +SWIG_AsVal_long(PyObject* obj, long* val) +{ + if (PyNumber_Check(obj)) { + if (val) *val = PyInt_AsLong(obj); + return 1; + } + else { + SWIG_type_error("number", obj); + } + return 0; +} + + +#if INT_MAX != LONG_MAX +SWIGINTERN int + SWIG_AsVal_int(PyObject *obj, int *val) +{ + const char* errmsg = val ? "int" : (char*)0; + long v; + if (SWIG_AsVal_long(obj, &v)) { + if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) { + if (val) *val = (int)(v); + return 1; + } else { + return 0; + } + } else { + PyErr_Clear(); + } + if (val) { + SWIG_type_error(errmsg, obj); + } + return 0; +} +#else +SWIGINTERNSHORT int + SWIG_AsVal_int(PyObject *obj, int *val) +{ + return SWIG_AsVal_long(obj,(long*)val); +} +#endif + + +SWIGINTERN int + SWIG_AsVal_bool(PyObject *obj, bool *val) +{ + if (obj == Py_True) { + if (val) *val = true; + return 1; + } + if (obj == Py_False) { + if (val) *val = false; + return 1; + } + int res = 0; + if (SWIG_AsVal_int(obj, &res)) { + if (val) *val = res ? true : false; + return 1; + } else { + PyErr_Clear(); + } + if (val) { + SWIG_type_error("bool", obj); + } + return 0; +} + + +SWIGINTERNSHORT bool +SWIG_As_bool(PyObject* obj) +{ + bool v; + if (!SWIG_AsVal_bool(obj, &v)) { + /* + this is needed to make valgrind/purify happier. + */ + memset((void*)&v, 0, sizeof(bool)); + } + return v; +} + + +SWIGINTERNSHORT int +SWIG_Check_bool(PyObject* obj) +{ + return SWIG_AsVal_bool(obj, (bool*)0); +} + + +SWIGINTERNSHORT int +SWIG_As_int(PyObject* obj) +{ + int v; + if (!SWIG_AsVal_int(obj, &v)) { + /* + this is needed to make valgrind/purify happier. + */ + memset((void*)&v, 0, sizeof(int)); + } + return v; +} + + +SWIGINTERNSHORT int +SWIG_Check_int(PyObject* obj) +{ + return SWIG_AsVal_int(obj, (int*)0); +} + + +SWIGINTERNSHORT long +SWIG_As_long(PyObject* obj) +{ + long v; + if (!SWIG_AsVal_long(obj, &v)) { + /* + this is needed to make valgrind/purify happier. + */ + memset((void*)&v, 0, sizeof(long)); + } + return v; +} + + +SWIGINTERNSHORT int +SWIG_Check_long(PyObject* obj) +{ + return SWIG_AsVal_long(obj, (long*)0); +} + +#ifdef __cplusplus +extern "C" { +#endif +static int _wrap_AnimationControlNameStr_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable AnimationControlNameStr is read-only."); + return 1; +} + + +static PyObject *_wrap_AnimationControlNameStr_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyAnimationControlNameStr)->c_str(), (&wxPyAnimationControlNameStr)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyAnimationControlNameStr)->c_str(), (&wxPyAnimationControlNameStr)->Len()); +#endif + } + return pyobj; +} + + +static PyObject *_wrap_new_AnimationPlayer(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) NULL ; + bool arg2 = (bool) false ; + wxAnimationPlayer *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "animation",(char *) "destroyAnimation", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:new_AnimationPlayer",kwnames,&obj0,&obj1)) goto fail; + if (obj0) { + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + } + if (obj1) { + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationPlayer *)new wxAnimationPlayer(arg1,arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxAnimationPlayer, 1); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_delete_AnimationPlayer(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_AnimationPlayer",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + delete arg1; + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxAnimationBase *arg2 = (wxAnimationBase *) 0 ; + bool arg3 = (bool) false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "animation",(char *) "destroyAnimation", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:AnimationPlayer_SetAnimation",kwnames,&obj0,&obj1,&obj2)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (obj2) { + { + arg3 = (bool)(SWIG_As_bool(obj2)); + if (SWIG_arg_fail(3)) SWIG_fail; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetAnimation(arg2,arg3); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxAnimationBase *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationBase *)((wxAnimationPlayer const *)arg1)->GetAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxAnimationBase, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetDestroyAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "destroyAnimation", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SetDestroyAnimation",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetDestroyAnimation(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetDestroyAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetDestroyAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->GetDestroyAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetCurrentFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "currentFrame", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SetCurrentFrame",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetCurrentFrame(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetCurrentFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetCurrentFrame",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxAnimationPlayer const *)arg1)->GetCurrentFrame(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetWindow(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxWindow *arg2 = (wxWindow *) 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "window", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SetWindow",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetWindow(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetWindow(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxWindow *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetWindow",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxWindow *)((wxAnimationPlayer const *)arg1)->GetWindow(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = wxPyMake_wxObject(result, 0); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetPosition(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxPoint *arg2 = 0 ; + wxPoint temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "pos", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SetPosition",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetPosition((wxPoint const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetPosition(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxPoint result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetPosition",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxAnimationPlayer const *)arg1)->GetPosition(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxPoint * resultptr; + resultptr = new wxPoint((wxPoint &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxPoint, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetLooped(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "looped", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SetLooped",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetLooped(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetLooped(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetLooped",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->GetLooped(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_HasAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_HasAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->HasAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_IsPlaying(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_IsPlaying",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->IsPlaying(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_UseBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "useBackground", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_UseBackgroundColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->UseBackgroundColour(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_UsingBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_UsingBackgroundColour",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->UsingBackgroundColour(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SetCustomBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxColour *arg2 = 0 ; + bool arg3 = (bool) true ; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col",(char *) "useCustomBackgroundColour", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:AnimationPlayer_SetCustomBackgroundColour",kwnames,&obj0,&obj1,&obj2)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + if (obj2) { + { + arg3 = (bool)(SWIG_As_bool(obj2)); + if (SWIG_arg_fail(3)) SWIG_fail; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetCustomBackgroundColour((wxColour const &)*arg2,arg3); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_UsingCustomBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_UsingCustomBackgroundColour",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->UsingCustomBackgroundColour(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetCustomBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxColour *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetCustomBackgroundColour",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + { + wxColour const &_result_ref = ((wxAnimationPlayer const *)arg1)->GetCustomBackgroundColour(); + result = (wxColour *) &_result_ref; + } + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxColour, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_UseParentBackground(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "useParent", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_UseParentBackground",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->UseParentBackground(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_UsingParentBackground(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_UsingParentBackground",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->UsingParentBackground(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_Play(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxWindow *arg2 = 0 ; + wxPoint const &arg3_defvalue = wxPoint(0, 0) ; + wxPoint *arg3 = (wxPoint *) &arg3_defvalue ; + bool arg4 = (bool) true ; + bool result; + wxPoint temp3 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "window",(char *) "pos",(char *) "looped", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:AnimationPlayer_Play",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxWindow"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + if (obj2) { + { + arg3 = &temp3; + if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail; + } + } + if (obj3) { + { + arg4 = (bool)(SWIG_As_bool(obj3)); + if (SWIG_arg_fail(4)) SWIG_fail; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->Play(*arg2,(wxPoint const &)*arg3,arg4); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_Build(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_Build",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->Build(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_Stop(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_Stop",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->Stop(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_Draw(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxDC *arg2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "dc", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_Draw",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->Draw(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetFrameCount(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetFrameCount",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxAnimationPlayer const *)arg1)->GetFrameCount(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + wxImage *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetFrame",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxImage *)((wxAnimationPlayer const *)arg1)->GetFrame(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxImage, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetDisposalMethod(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + wxAnimationDisposal result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetDisposalMethod",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationDisposal)((wxAnimationPlayer const *)arg1)->GetDisposalMethod(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int((result)); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetFrameRect(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + wxRect result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetFrameRect",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxAnimationPlayer const *)arg1)->GetFrameRect(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxRect * resultptr; + resultptr = new wxRect((wxRect &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxRect, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetDelay(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetDelay",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxAnimationPlayer const *)arg1)->GetDelay(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetLogicalScreenSize(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxSize result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetLogicalScreenSize",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxAnimationPlayer const *)arg1)->GetLogicalScreenSize(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxSize * resultptr; + resultptr = new wxSize((wxSize &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxSize, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetBackgroundColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->GetBackgroundColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetTransparentColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_GetTransparentColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationPlayer const *)arg1)->GetTransparentColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_PlayFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + wxWindow *arg3 = 0 ; + wxPoint *arg4 = 0 ; + bool result; + wxPoint temp4 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "frame",(char *) "window",(char *) "pos", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AnimationPlayer_PlayFrame",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + SWIG_Python_ConvertPtr(obj2, (void **)&arg3, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(3)) SWIG_fail; + if (arg3 == NULL) { + SWIG_null_ref("wxWindow"); + } + if (SWIG_arg_fail(3)) SWIG_fail; + } + { + arg4 = &temp4; + if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->PlayFrame(arg2,*arg3,(wxPoint const &)*arg4); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_PlayNextFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_PlayNextFrame",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->PlayFrame(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_DrawFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + int arg2 ; + wxDC *arg3 = 0 ; + wxPoint *arg4 = 0 ; + wxPoint temp4 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "frame",(char *) "dc",(char *) "pos", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AnimationPlayer_DrawFrame",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + SWIG_Python_ConvertPtr(obj2, (void **)&arg3, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(3)) SWIG_fail; + if (arg3 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(3)) SWIG_fail; + } + { + arg4 = &temp4; + if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->DrawFrame(arg2,*arg3,(wxPoint const &)*arg4); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_DrawBackground(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxDC *arg2 = 0 ; + wxPoint *arg3 = 0 ; + wxColour *arg4 = 0 ; + wxPoint temp3 ; + wxColour temp4 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "dc",(char *) "pos",(char *) "colour", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AnimationPlayer_DrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + arg3 = &temp3; + if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail; + } + { + arg4 = &temp4; + if ( ! wxColour_helper(obj3, &arg4)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->DrawBackground(*arg2,(wxPoint const &)*arg3,(wxColour const &)*arg4); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_ClearCache(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_ClearCache",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->ClearCache(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_SaveBackground(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxRect *arg2 = 0 ; + wxRect temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "rect", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationPlayer_SaveBackground",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SaveBackground((wxRect const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationPlayer_GetBackingStore(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationPlayer *arg1 = (wxAnimationPlayer *) 0 ; + wxBitmap *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationPlayer_GetBackingStore",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationPlayer, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + { + wxBitmap &_result_ref = (arg1)->GetBackingStore(); + result = (wxBitmap *) &_result_ref; + } + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxBitmap* resultptr = new wxBitmap(*result); + resultobj = SWIG_NewPointerObj((void*)(resultptr), SWIGTYPE_p_wxBitmap, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject * AnimationPlayer_swigregister(PyObject *, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_wxAnimationPlayer, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_delete_AnimationBase(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_AnimationBase",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + delete arg1; + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetFrameCount(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + int result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationBase_GetFrameCount",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxAnimationBase const *)arg1)->GetFrameCount(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + int arg2 ; + wxImage *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetFrame",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxImage *)((wxAnimationBase const *)arg1)->GetFrame(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxImage, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetDisposalMethod(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + int arg2 ; + wxAnimationDisposal result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetDisposalMethod",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationDisposal)((wxAnimationBase const *)arg1)->GetDisposalMethod(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int((result)); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetFrameRect(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + int arg2 ; + wxRect result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetFrameRect",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxAnimationBase const *)arg1)->GetFrameRect(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxRect * resultptr; + resultptr = new wxRect((wxRect &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxRect, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetDelay(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + int arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetDelay",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxAnimationBase const *)arg1)->GetDelay(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetLogicalScreenSize(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + wxSize result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationBase_GetLogicalScreenSize",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxAnimationBase const *)arg1)->GetLogicalScreenSize(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxSize * resultptr; + resultptr = new wxSize((wxSize &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxSize, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetBackgroundColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationBase const *)arg1)->GetBackgroundColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_GetTransparentColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_GetTransparentColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationBase const *)arg1)->GetTransparentColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_IsValid(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AnimationBase_IsValid",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxAnimationBase const *)arg1)->IsValid(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_AnimationBase_LoadFile(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxAnimationBase *arg1 = (wxAnimationBase *) 0 ; + wxString *arg2 = 0 ; + bool result; + bool temp2 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "filename", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AnimationBase_LoadFile",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxAnimationBase, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = wxString_in_helper(obj1); + if (arg2 == NULL) SWIG_fail; + temp2 = true; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->LoadFile((wxString const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + { + if (temp2) + delete arg2; + } + return resultobj; + fail: + { + if (temp2) + delete arg2; + } + return NULL; +} + + +static PyObject * AnimationBase_swigregister(PyObject *, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_wxAnimationBase, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_GIFAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *result; + char *kwnames[] = { + NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":new_GIFAnimation",kwnames)) goto fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxGIFAnimation *)new wxGIFAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGIFAnimation, 1); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_delete_GIFAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_GIFAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + delete arg1; + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetFrameCount(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + int result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimation_GetFrameCount",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxGIFAnimation const *)arg1)->GetFrameCount(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetFrame(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + int arg2 ; + wxImage *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetFrame",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxImage *)((wxGIFAnimation const *)arg1)->GetFrame(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxImage, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetDisposalMethod(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + int arg2 ; + wxAnimationDisposal result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetDisposalMethod",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationDisposal)((wxGIFAnimation const *)arg1)->GetDisposalMethod(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int((result)); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetFrameRect(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + int arg2 ; + wxRect result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetFrameRect",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxGIFAnimation const *)arg1)->GetFrameRect(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxRect * resultptr; + resultptr = new wxRect((wxRect &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxRect, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetDelay(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + int arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "i", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetDelay",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxGIFAnimation const *)arg1)->GetDelay(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = SWIG_From_int((int)(result)); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetLogicalScreenSize(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + wxSize result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimation_GetLogicalScreenSize",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = ((wxGIFAnimation const *)arg1)->GetLogicalScreenSize(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + wxSize * resultptr; + resultptr = new wxSize((wxSize &)(result)); + resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxSize, 1); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetBackgroundColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetBackgroundColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxGIFAnimation const *)arg1)->GetBackgroundColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_GetTransparentColour(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + wxColour *arg2 = 0 ; + bool result; + wxColour temp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "col", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_GetTransparentColour",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = &temp2; + if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxGIFAnimation const *)arg1)->GetTransparentColour(*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_IsValid(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimation_IsValid",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxGIFAnimation const *)arg1)->IsValid(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimation_LoadFile(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimation *arg1 = (wxGIFAnimation *) 0 ; + wxString *arg2 = 0 ; + bool result; + bool temp2 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "filename", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimation_LoadFile",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimation, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = wxString_in_helper(obj1); + if (arg2 == NULL) SWIG_fail; + temp2 = true; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->LoadFile((wxString const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + { + if (temp2) + delete arg2; + } + return resultobj; + fail: + { + if (temp2) + delete arg2; + } + return NULL; +} + + +static PyObject * GIFAnimation_swigregister(PyObject *, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_wxGIFAnimation, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_GIFAnimationCtrl(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxWindow *arg1 = (wxWindow *) 0 ; + int arg2 = (int) -1 ; + wxString const &arg3_defvalue = wxPyEmptyString ; + wxString *arg3 = (wxString *) &arg3_defvalue ; + wxPoint const &arg4_defvalue = wxDefaultPosition ; + wxPoint *arg4 = (wxPoint *) &arg4_defvalue ; + wxSize const &arg5_defvalue = wxDefaultSize ; + wxSize *arg5 = (wxSize *) &arg5_defvalue ; + long arg6 = (long) wxAN_FIT_ANIMATION|wxNO_BORDER ; + wxString const &arg7_defvalue = wxPyAnimationControlNameStr ; + wxString *arg7 = (wxString *) &arg7_defvalue ; + wxGIFAnimationCtrl *result; + bool temp3 = false ; + wxPoint temp4 ; + wxSize temp5 ; + bool temp7 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + char *kwnames[] = { + (char *) "parent",(char *) "id",(char *) "filename",(char *) "pos",(char *) "size",(char *) "style",(char *) "name", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:new_GIFAnimationCtrl",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + if (obj1) { + { + arg2 = (int)(SWIG_As_int(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + } + if (obj2) { + { + arg3 = wxString_in_helper(obj2); + if (arg3 == NULL) SWIG_fail; + temp3 = true; + } + } + if (obj3) { + { + arg4 = &temp4; + if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail; + } + } + if (obj4) { + { + arg5 = &temp5; + if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail; + } + } + if (obj5) { + { + arg6 = (long)(SWIG_As_long(obj5)); + if (SWIG_arg_fail(6)) SWIG_fail; + } + } + if (obj6) { + { + arg7 = wxString_in_helper(obj6); + if (arg7 == NULL) SWIG_fail; + temp7 = true; + } + } + { + if (!wxPyCheckForApp()) SWIG_fail; + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxGIFAnimationCtrl *)new wxGIFAnimationCtrl(arg1,arg2,(wxString const &)*arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGIFAnimationCtrl, 1); + { + if (temp3) + delete arg3; + } + { + if (temp7) + delete arg7; + } + return resultobj; + fail: + { + if (temp3) + delete arg3; + } + { + if (temp7) + delete arg7; + } + return NULL; +} + + +static PyObject *_wrap_new_PreGIFAnimationCtrl(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *result; + char *kwnames[] = { + NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":new_PreGIFAnimationCtrl",kwnames)) goto fail; + { + if (!wxPyCheckForApp()) SWIG_fail; + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxGIFAnimationCtrl *)new wxGIFAnimationCtrl(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGIFAnimationCtrl, 1); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_Create(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxWindow *arg2 = (wxWindow *) 0 ; + int arg3 = (int) -1 ; + wxString const &arg4_defvalue = wxPyEmptyString ; + wxString *arg4 = (wxString *) &arg4_defvalue ; + wxPoint const &arg5_defvalue = wxDefaultPosition ; + wxPoint *arg5 = (wxPoint *) &arg5_defvalue ; + wxSize const &arg6_defvalue = wxDefaultSize ; + wxSize *arg6 = (wxSize *) &arg6_defvalue ; + long arg7 = (long) wxAN_FIT_ANIMATION|wxNO_BORDER ; + wxString const &arg8_defvalue = wxPyAnimationControlNameStr ; + wxString *arg8 = (wxString *) &arg8_defvalue ; + bool result; + bool temp4 = false ; + wxPoint temp5 ; + wxSize temp6 ; + bool temp8 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + PyObject * obj7 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "parent",(char *) "id",(char *) "filename",(char *) "pos",(char *) "size",(char *) "style",(char *) "name", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OOOOOO:GIFAnimationCtrl_Create",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (obj2) { + { + arg3 = (int)(SWIG_As_int(obj2)); + if (SWIG_arg_fail(3)) SWIG_fail; + } + } + if (obj3) { + { + arg4 = wxString_in_helper(obj3); + if (arg4 == NULL) SWIG_fail; + temp4 = true; + } + } + if (obj4) { + { + arg5 = &temp5; + if ( ! wxPoint_helper(obj4, &arg5)) SWIG_fail; + } + } + if (obj5) { + { + arg6 = &temp6; + if ( ! wxSize_helper(obj5, &arg6)) SWIG_fail; + } + } + if (obj6) { + { + arg7 = (long)(SWIG_As_long(obj6)); + if (SWIG_arg_fail(7)) SWIG_fail; + } + } + if (obj7) { + { + arg8 = wxString_in_helper(obj7); + if (arg8 == NULL) SWIG_fail; + temp8 = true; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->Create(arg2,arg3,(wxString const &)*arg4,(wxPoint const &)*arg5,(wxSize const &)*arg6,arg7,(wxString const &)*arg8); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + { + if (temp4) + delete arg4; + } + { + if (temp8) + delete arg8; + } + return resultobj; + fail: + { + if (temp4) + delete arg4; + } + { + if (temp8) + delete arg8; + } + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_LoadFile(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxString const &arg2_defvalue = wxPyEmptyString ; + wxString *arg2 = (wxString *) &arg2_defvalue ; + bool result; + bool temp2 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "filename", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:GIFAnimationCtrl_LoadFile",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + if (obj1) { + { + arg2 = wxString_in_helper(obj1); + if (arg2 == NULL) SWIG_fail; + temp2 = true; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->LoadFile((wxString const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + { + if (temp2) + delete arg2; + } + return resultobj; + fail: + { + if (temp2) + delete arg2; + } + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_Play(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + bool arg2 = (bool) true ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "looped", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:GIFAnimationCtrl_Play",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + if (obj1) { + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)(arg1)->Play(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_Stop(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_Stop",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->Stop(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_FitToAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_FitToAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->FitToAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_IsPlaying(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_IsPlaying",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxGIFAnimationCtrl const *)arg1)->IsPlaying(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_GetPlayer(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxAnimationPlayer *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_GetPlayer",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + { + wxAnimationPlayer &_result_ref = (arg1)->GetPlayer(); + result = (wxAnimationPlayer *) &_result_ref; + } + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxAnimationPlayer, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_GetAnimation(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxAnimationBase *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_GetAnimation",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAnimationBase *)(arg1)->GetAnimation(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxAnimationBase, 0); + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_GetFilename(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxString *result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GIFAnimationCtrl_GetFilename",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + { + wxString const &_result_ref = ((wxGIFAnimationCtrl const *)arg1)->GetFilename(); + result = (wxString *) &_result_ref; + } + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { +#if wxUSE_UNICODE + resultobj = PyUnicode_FromWideChar(result->c_str(), result->Len()); +#else + resultobj = PyString_FromStringAndSize(result->c_str(), result->Len()); +#endif + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_GIFAnimationCtrl_SetFilename(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxGIFAnimationCtrl *arg1 = (wxGIFAnimationCtrl *) 0 ; + wxString *arg2 = 0 ; + bool temp2 = false ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "filename", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GIFAnimationCtrl_SetFilename",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGIFAnimationCtrl, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = wxString_in_helper(obj1); + if (arg2 == NULL) SWIG_fail; + temp2 = true; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetFilename((wxString const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + { + if (temp2) + delete arg2; + } + return resultobj; + fail: + { + if (temp2) + delete arg2; + } + return NULL; +} + + +static PyObject * GIFAnimationCtrl_swigregister(PyObject *, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_wxGIFAnimationCtrl, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyMethodDef SwigMethods[] = { + { (char *)"new_AnimationPlayer", (PyCFunction) _wrap_new_AnimationPlayer, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"delete_AnimationPlayer", (PyCFunction) _wrap_delete_AnimationPlayer, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetAnimation", (PyCFunction) _wrap_AnimationPlayer_SetAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetAnimation", (PyCFunction) _wrap_AnimationPlayer_GetAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetDestroyAnimation", (PyCFunction) _wrap_AnimationPlayer_SetDestroyAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetDestroyAnimation", (PyCFunction) _wrap_AnimationPlayer_GetDestroyAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetCurrentFrame", (PyCFunction) _wrap_AnimationPlayer_SetCurrentFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetCurrentFrame", (PyCFunction) _wrap_AnimationPlayer_GetCurrentFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetWindow", (PyCFunction) _wrap_AnimationPlayer_SetWindow, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetWindow", (PyCFunction) _wrap_AnimationPlayer_GetWindow, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetPosition", (PyCFunction) _wrap_AnimationPlayer_SetPosition, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetPosition", (PyCFunction) _wrap_AnimationPlayer_GetPosition, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetLooped", (PyCFunction) _wrap_AnimationPlayer_SetLooped, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetLooped", (PyCFunction) _wrap_AnimationPlayer_GetLooped, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_HasAnimation", (PyCFunction) _wrap_AnimationPlayer_HasAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_IsPlaying", (PyCFunction) _wrap_AnimationPlayer_IsPlaying, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_UseBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_UseBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_UsingBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_UsingBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SetCustomBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_SetCustomBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_UsingCustomBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_UsingCustomBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetCustomBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_GetCustomBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_UseParentBackground", (PyCFunction) _wrap_AnimationPlayer_UseParentBackground, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_UsingParentBackground", (PyCFunction) _wrap_AnimationPlayer_UsingParentBackground, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_Play", (PyCFunction) _wrap_AnimationPlayer_Play, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_Build", (PyCFunction) _wrap_AnimationPlayer_Build, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_Stop", (PyCFunction) _wrap_AnimationPlayer_Stop, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_Draw", (PyCFunction) _wrap_AnimationPlayer_Draw, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetFrameCount", (PyCFunction) _wrap_AnimationPlayer_GetFrameCount, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetFrame", (PyCFunction) _wrap_AnimationPlayer_GetFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetDisposalMethod", (PyCFunction) _wrap_AnimationPlayer_GetDisposalMethod, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetFrameRect", (PyCFunction) _wrap_AnimationPlayer_GetFrameRect, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetDelay", (PyCFunction) _wrap_AnimationPlayer_GetDelay, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetLogicalScreenSize", (PyCFunction) _wrap_AnimationPlayer_GetLogicalScreenSize, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetBackgroundColour", (PyCFunction) _wrap_AnimationPlayer_GetBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetTransparentColour", (PyCFunction) _wrap_AnimationPlayer_GetTransparentColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_PlayFrame", (PyCFunction) _wrap_AnimationPlayer_PlayFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_PlayNextFrame", (PyCFunction) _wrap_AnimationPlayer_PlayNextFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_DrawFrame", (PyCFunction) _wrap_AnimationPlayer_DrawFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_DrawBackground", (PyCFunction) _wrap_AnimationPlayer_DrawBackground, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_ClearCache", (PyCFunction) _wrap_AnimationPlayer_ClearCache, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_SaveBackground", (PyCFunction) _wrap_AnimationPlayer_SaveBackground, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_GetBackingStore", (PyCFunction) _wrap_AnimationPlayer_GetBackingStore, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationPlayer_swigregister", AnimationPlayer_swigregister, METH_VARARGS, NULL}, + { (char *)"delete_AnimationBase", (PyCFunction) _wrap_delete_AnimationBase, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetFrameCount", (PyCFunction) _wrap_AnimationBase_GetFrameCount, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetFrame", (PyCFunction) _wrap_AnimationBase_GetFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetDisposalMethod", (PyCFunction) _wrap_AnimationBase_GetDisposalMethod, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetFrameRect", (PyCFunction) _wrap_AnimationBase_GetFrameRect, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetDelay", (PyCFunction) _wrap_AnimationBase_GetDelay, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetLogicalScreenSize", (PyCFunction) _wrap_AnimationBase_GetLogicalScreenSize, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetBackgroundColour", (PyCFunction) _wrap_AnimationBase_GetBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_GetTransparentColour", (PyCFunction) _wrap_AnimationBase_GetTransparentColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_IsValid", (PyCFunction) _wrap_AnimationBase_IsValid, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_LoadFile", (PyCFunction) _wrap_AnimationBase_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AnimationBase_swigregister", AnimationBase_swigregister, METH_VARARGS, NULL}, + { (char *)"new_GIFAnimation", (PyCFunction) _wrap_new_GIFAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"delete_GIFAnimation", (PyCFunction) _wrap_delete_GIFAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetFrameCount", (PyCFunction) _wrap_GIFAnimation_GetFrameCount, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetFrame", (PyCFunction) _wrap_GIFAnimation_GetFrame, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetDisposalMethod", (PyCFunction) _wrap_GIFAnimation_GetDisposalMethod, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetFrameRect", (PyCFunction) _wrap_GIFAnimation_GetFrameRect, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetDelay", (PyCFunction) _wrap_GIFAnimation_GetDelay, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetLogicalScreenSize", (PyCFunction) _wrap_GIFAnimation_GetLogicalScreenSize, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetBackgroundColour", (PyCFunction) _wrap_GIFAnimation_GetBackgroundColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_GetTransparentColour", (PyCFunction) _wrap_GIFAnimation_GetTransparentColour, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_IsValid", (PyCFunction) _wrap_GIFAnimation_IsValid, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_LoadFile", (PyCFunction) _wrap_GIFAnimation_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimation_swigregister", GIFAnimation_swigregister, METH_VARARGS, NULL}, + { (char *)"new_GIFAnimationCtrl", (PyCFunction) _wrap_new_GIFAnimationCtrl, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"new_PreGIFAnimationCtrl", (PyCFunction) _wrap_new_PreGIFAnimationCtrl, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_Create", (PyCFunction) _wrap_GIFAnimationCtrl_Create, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_LoadFile", (PyCFunction) _wrap_GIFAnimationCtrl_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_Play", (PyCFunction) _wrap_GIFAnimationCtrl_Play, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_Stop", (PyCFunction) _wrap_GIFAnimationCtrl_Stop, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_FitToAnimation", (PyCFunction) _wrap_GIFAnimationCtrl_FitToAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_IsPlaying", (PyCFunction) _wrap_GIFAnimationCtrl_IsPlaying, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_GetPlayer", (PyCFunction) _wrap_GIFAnimationCtrl_GetPlayer, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_GetAnimation", (PyCFunction) _wrap_GIFAnimationCtrl_GetAnimation, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_GetFilename", (PyCFunction) _wrap_GIFAnimationCtrl_GetFilename, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_SetFilename", (PyCFunction) _wrap_GIFAnimationCtrl_SetFilename, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"GIFAnimationCtrl_swigregister", GIFAnimationCtrl_swigregister, METH_VARARGS, NULL}, + { NULL, NULL, 0, NULL } +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ + +static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxLayoutConstraints *) x)); +} +static void *_p_wxGBSizerItemTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x)); +} +static void *_p_wxSizerItemTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxSizerItem *) x)); +} +static void *_p_wxScrollEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x)); +} +static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x)); +} +static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x)); +} +static void *_p_wxBoxSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x)); +} +static void *_p_wxSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxSizer *) x)); +} +static void *_p_wxGridBagSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x)); +} +static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x)); +} +static void *_p_wxEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxEvent *) x)); +} +static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x)); +} +static void *_p_wxGridSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x)); +} +static void *_p_wxInitDialogEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x)); +} +static void *_p_wxAnimationBaseTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxAnimationBase *) x)); +} +static void *_p_wxPaintEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x)); +} +static void *_p_wxNcPaintEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x)); +} +static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x)); +} +static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x)); +} +static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x)); +} +static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x)); +} +static void *_p_wxControlTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x)); +} +static void *_p_wxSetCursorEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x)); +} +static void *_p_wxFSFileTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxFSFile *) x)); +} +static void *_p_wxPySizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x)); +} +static void *_p_wxPyEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x)); +} +static void *_p_wxNotifyEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x)); +} +static void *_p_wxShowEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x)); +} +static void *_p_wxAnimationPlayerTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxAnimationPlayer *) x)); +} +static void *_p_wxMenuItemTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxMenuItem *) x)); +} +static void *_p_wxDateEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x)); +} +static void *_p_wxIdleEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x)); +} +static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x)); +} +static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x)); +} +static void *_p_wxMaximizeEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x)); +} +static void *_p_wxIconizeEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x)); +} +static void *_p_wxSizeEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x)); +} +static void *_p_wxMoveEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x)); +} +static void *_p_wxActivateEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x)); +} +static void *_p_wxXPMHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x)); +} +static void *_p_wxPNMHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x)); +} +static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x)); +} +static void *_p_wxPCXHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x)); +} +static void *_p_wxGIFHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x)); +} +static void *_p_wxPNGHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x)); +} +static void *_p_wxANIHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x)); +} +static void *_p_wxCURHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x)); +} +static void *_p_wxICOHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x)); +} +static void *_p_wxBMPHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x)); +} +static void *_p_wxImageHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxImageHandler *) x)); +} +static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x)); +} +static void *_p_wxEvtHandlerTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxEvtHandler *) x)); +} +static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x)); +} +static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxAcceleratorTable *) x)); +} +static void *_p_wxImageTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxImage *) x)); +} +static void *_p_wxScrollWinEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x)); +} +static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x)); +} +static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x)); +} +static void *_p_wxKeyEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x)); +} +static void *_p_wxWindowTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x)); +} +static void *_p_wxMenuTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x)); +} +static void *_p_wxMenuBarTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x)); +} +static void *_p_wxFileSystemTo_p_wxObject(void *x) { + return (void *)((wxObject *) ((wxFileSystem *) x)); +} +static void *_p_wxGIFAnimationTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxAnimationBase *) ((wxGIFAnimation *) x)); +} +static void *_p_wxContextMenuEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x)); +} +static void *_p_wxMenuEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x)); +} +static void *_p_wxPyAppTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x)); +} +static void *_p_wxCloseEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x)); +} +static void *_p_wxMouseEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x)); +} +static void *_p_wxEraseEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x)); +} +static void *_p_wxPyCommandEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x)); +} +static void *_p_wxCommandEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x)); +} +static void *_p_wxDropFilesEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x)); +} +static void *_p_wxFocusEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x)); +} +static void *_p_wxChildFocusEventTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x)); +} +static void *_p_wxGIFAnimationCtrlTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxGIFAnimationCtrl *) x)); +} +static void *_p_wxControlWithItemsTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x)); +} +static void *_p_wxPyValidatorTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x)); +} +static void *_p_wxValidatorTo_p_wxObject(void *x) { + return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x)); +} +static void *_p_wxControlTo_p_wxWindow(void *x) { + return (void *)((wxWindow *) ((wxControl *) x)); +} +static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) { + return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x)); +} +static void *_p_wxGIFAnimationCtrlTo_p_wxWindow(void *x) { + return (void *)((wxWindow *) (wxControl *) ((wxGIFAnimationCtrl *) x)); +} +static void *_p_wxMenuBarTo_p_wxWindow(void *x) { + return (void *)((wxWindow *) ((wxMenuBar *) x)); +} +static void *_p_wxGIFAnimationTo_p_wxAnimationBase(void *x) { + return (void *)((wxAnimationBase *) ((wxGIFAnimation *) x)); +} +static void *_p_wxControlTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x)); +} +static void *_p_wxWindowTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) ((wxWindow *) x)); +} +static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x)); +} +static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) ((wxPyApp *) x)); +} +static void *_p_wxGIFAnimationCtrlTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxGIFAnimationCtrl *) x)); +} +static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) ((wxValidator *) x)); +} +static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x)); +} +static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x)); +} +static void *_p_wxMenuTo_p_wxEvtHandler(void *x) { + return (void *)((wxEvtHandler *) ((wxMenu *) x)); +} +static void *_p_wxControlWithItemsTo_p_wxControl(void *x) { + return (void *)((wxControl *) ((wxControlWithItems *) x)); +} +static void *_p_wxGIFAnimationCtrlTo_p_wxControl(void *x) { + return (void *)((wxControl *) ((wxGIFAnimationCtrl *) x)); +} +static swig_type_info _swigt__p_wxRect[] = {{"_p_wxRect", 0, "wxRect *", 0, 0, 0, 0},{"_p_wxRect", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxGIFAnimationCtrl[] = {{"_p_wxGIFAnimationCtrl", 0, "wxGIFAnimationCtrl *", 0, 0, 0, 0},{"_p_wxGIFAnimationCtrl", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxObject[] = {{"_p_wxObject", 0, "wxObject *", 0, 0, 0, 0},{"_p_wxLayoutConstraints", _p_wxLayoutConstraintsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizerItem", _p_wxSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizer", _p_wxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvent", _p_wxEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAnimationBase", _p_wxAnimationBaseTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFSFile", _p_wxFSFileTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAnimationPlayer", _p_wxAnimationPlayerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuItem", _p_wxMenuItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxXPMHandler", _p_wxXPMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNMHandler", _p_wxPNMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxJPEGHandler", _p_wxJPEGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPCXHandler", _p_wxPCXHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFHandler", _p_wxGIFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNGHandler", _p_wxPNGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxANIHandler", _p_wxANIHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCURHandler", _p_wxCURHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxICOHandler", _p_wxICOHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBMPHandler", _p_wxBMPHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImageHandler", _p_wxImageHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxTIFFHandler", _p_wxTIFFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", _p_wxEvtHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStdDialogButtonSizer", _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAcceleratorTable", _p_wxAcceleratorTableTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImage", _p_wxImageTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxObject", 0, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFileSystem", _p_wxFileSystemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFAnimation", _p_wxGIFAnimationTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFAnimationCtrl", _p_wxGIFAnimationCtrlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_unsigned_char[] = {{"_p_unsigned_char", 0, "unsigned char *|byte *", 0, 0, 0, 0},{"_p_unsigned_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxColour[] = {{"_p_wxColour", 0, "wxColour *", 0, 0, 0, 0},{"_p_wxColour", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxAnimationPlayer[] = {{"_p_wxAnimationPlayer", 0, "wxAnimationPlayer *", 0, 0, 0, 0},{"_p_wxAnimationPlayer", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxWindow[] = {{"_p_wxWindow", 0, "wxWindow *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxWindow", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxGIFAnimationCtrl", _p_wxGIFAnimationCtrlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxWindow, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *|wxUIntPtr *", 0, 0, 0, 0},{"_p_unsigned_long", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxBitmap[] = {{"_p_wxBitmap", 0, "wxBitmap *", 0, 0, 0, 0},{"_p_wxBitmap", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_unsigned_int[] = {{"_p_unsigned_int", 0, "unsigned int *|time_t *", 0, 0, 0, 0},{"_p_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__unsigned_int[] = {{"_unsigned_int", 0, "unsigned int|std::size_t", 0, 0, 0, 0},{"_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxDuplexMode[] = {{"_p_wxDuplexMode", 0, "enum wxDuplexMode *|wxDuplexMode *", 0, 0, 0, 0},{"_p_wxDuplexMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxGIFAnimation[] = {{"_p_wxGIFAnimation", 0, "wxGIFAnimation *", 0, 0, 0, 0},{"_p_wxGIFAnimation", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0, 0, 0, 0},{"_p_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxAnimationBase[] = {{"_p_wxAnimationBase", 0, "wxAnimationBase *", 0, 0, 0, 0},{"_p_wxAnimationBase", 0, 0, 0, 0, 0, 0},{"_p_wxGIFAnimation", _p_wxGIFAnimationTo_p_wxAnimationBase, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxPoint[] = {{"_p_wxPoint", 0, "wxPoint *", 0, 0, 0, 0},{"_p_wxPoint", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxDC[] = {{"_p_wxDC", 0, "wxDC *", 0, 0, 0, 0},{"_p_wxDC", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxEvtHandler[] = {{"_p_wxEvtHandler", 0, "wxEvtHandler *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", 0, 0, 0, 0, 0, 0},{"_p_wxGIFAnimationCtrl", _p_wxGIFAnimationCtrlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__std__ptrdiff_t[] = {{"_std__ptrdiff_t", 0, "std::ptrdiff_t", 0, 0, 0, 0},{"_std__ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__ptrdiff_t[] = {{"_ptrdiff_t", 0, "ptrdiff_t", 0, 0, 0, 0},{"_ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxControl[] = {{"_p_wxControl", 0, "wxControl *", 0, 0, 0, 0},{"_p_wxControl", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxControl, 0, 0, 0, 0, 0},{"_p_wxGIFAnimationCtrl", _p_wxGIFAnimationCtrlTo_p_wxControl, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxPaperSize[] = {{"_p_wxPaperSize", 0, "enum wxPaperSize *|wxPaperSize *", 0, 0, 0, 0},{"_p_wxPaperSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxImage[] = {{"_p_wxImage", 0, "wxImage *", 0, 0, 0, 0},{"_p_wxImage", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxSize[] = {{"_p_wxSize", 0, "wxSize *", 0, 0, 0, 0},{"_p_wxSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *|wxEventType *", 0, 0, 0, 0},{"_p_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; + +static swig_type_info *swig_types_initial[] = { +_swigt__p_wxRect, +_swigt__p_wxGIFAnimationCtrl, +_swigt__p_wxObject, +_swigt__p_unsigned_char, +_swigt__p_wxColour, +_swigt__p_wxAnimationPlayer, +_swigt__p_wxWindow, +_swigt__p_unsigned_long, +_swigt__p_wxBitmap, +_swigt__p_form_ops_t, +_swigt__p_unsigned_int, +_swigt__unsigned_int, +_swigt__p_wxDuplexMode, +_swigt__p_wxGIFAnimation, +_swigt__p_char, +_swigt__p_wxAnimationBase, +_swigt__p_wxPoint, +_swigt__p_wxDC, +_swigt__p_wxEvtHandler, +_swigt__std__ptrdiff_t, +_swigt__ptrdiff_t, +_swigt__p_wxControl, +_swigt__p_wxPaperSize, +_swigt__p_wxImage, +_swigt__p_wxSize, +_swigt__p_int, +0 +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ + +static swig_const_info swig_const_table[] = { +{0, 0, 0, 0.0, 0, 0}}; + +#ifdef __cplusplus +} +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + /* Python-specific SWIG API */ +#define SWIG_newvarlink() SWIG_Python_newvarlink() +#define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr) +#define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants) + + /* ----------------------------------------------------------------------------- + * global variable support code. + * ----------------------------------------------------------------------------- */ + + typedef struct swig_globalvar { + char *name; /* Name of global variable */ + PyObject *(*get_attr)(); /* Return the current value */ + int (*set_attr)(PyObject *); /* Set the value */ + struct swig_globalvar *next; + } swig_globalvar; + + typedef struct swig_varlinkobject { + PyObject_HEAD + swig_globalvar *vars; + } swig_varlinkobject; + + static PyObject * + swig_varlink_repr(swig_varlinkobject *v) { + v = v; + return PyString_FromString(""); + } + + static int + swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) { + swig_globalvar *var; + flags = flags; + fprintf(fp,"Swig global variables { "); + for (var = v->vars; var; var=var->next) { + fprintf(fp,"%s", var->name); + if (var->next) fprintf(fp,", "); + } + fprintf(fp," }\n"); + return 0; + } + + static PyObject * + swig_varlink_getattr(swig_varlinkobject *v, char *n) { + swig_globalvar *var = v->vars; + while (var) { + if (strcmp(var->name,n) == 0) { + return (*var->get_attr)(); + } + var = var->next; + } + PyErr_SetString(PyExc_NameError,"Unknown C global variable"); + return NULL; + } + + static int + swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) { + swig_globalvar *var = v->vars; + while (var) { + if (strcmp(var->name,n) == 0) { + return (*var->set_attr)(p); + } + var = var->next; + } + PyErr_SetString(PyExc_NameError,"Unknown C global variable"); + return 1; + } + + static PyTypeObject varlinktype = { + PyObject_HEAD_INIT(0) + 0, /* Number of items in variable part (ob_size) */ + (char *)"swigvarlink", /* Type name (tp_name) */ + sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */ + 0, /* Itemsize (tp_itemsize) */ + 0, /* Deallocator (tp_dealloc) */ + (printfunc) swig_varlink_print, /* Print (tp_print) */ + (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */ + (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */ + 0, /* tp_compare */ + (reprfunc) swig_varlink_repr, /* tp_repr */ + 0, /* tp_as_number */ + 0, /* tp_as_sequence */ + 0, /* tp_as_mapping */ + 0, /* tp_hash */ + 0, /* tp_call */ + 0, /* tp_str */ + 0, /* tp_getattro */ + 0, /* tp_setattro */ + 0, /* tp_as_buffer */ + 0, /* tp_flags */ + 0, /* tp_doc */ +#if PY_VERSION_HEX >= 0x02000000 + 0, /* tp_traverse */ + 0, /* tp_clear */ +#endif +#if PY_VERSION_HEX >= 0x02010000 + 0, /* tp_richcompare */ + 0, /* tp_weaklistoffset */ +#endif +#if PY_VERSION_HEX >= 0x02020000 + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */ +#endif +#if PY_VERSION_HEX >= 0x02030000 + 0, /* tp_del */ +#endif +#ifdef COUNT_ALLOCS + 0,0,0,0 /* tp_alloc -> tp_next */ +#endif + }; + + /* Create a variable linking object for use later */ + static PyObject * + SWIG_Python_newvarlink(void) { + swig_varlinkobject *result = 0; + result = PyMem_NEW(swig_varlinkobject,1); + varlinktype.ob_type = &PyType_Type; /* Patch varlinktype into a PyType */ + result->ob_type = &varlinktype; + result->vars = 0; + result->ob_refcnt = 0; + Py_XINCREF((PyObject *) result); + return ((PyObject*) result); + } + + static void + SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) { + swig_varlinkobject *v; + swig_globalvar *gv; + v= (swig_varlinkobject *) p; + gv = (swig_globalvar *) malloc(sizeof(swig_globalvar)); + gv->name = (char *) malloc(strlen(name)+1); + strcpy(gv->name,name); + gv->get_attr = get_attr; + gv->set_attr = set_attr; + gv->next = v->vars; + v->vars = gv; + } + + /* ----------------------------------------------------------------------------- + * constants/methods manipulation + * ----------------------------------------------------------------------------- */ + + /* Install Constants */ + static void + SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) { + PyObject *obj = 0; + size_t i; + for (i = 0; constants[i].type; i++) { + switch(constants[i].type) { + case SWIG_PY_INT: + obj = PyInt_FromLong(constants[i].lvalue); + break; + case SWIG_PY_FLOAT: + obj = PyFloat_FromDouble(constants[i].dvalue); + break; + case SWIG_PY_STRING: + if (constants[i].pvalue) { + obj = PyString_FromString((char *) constants[i].pvalue); + } else { + Py_INCREF(Py_None); + obj = Py_None; + } + break; + case SWIG_PY_POINTER: + obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0); + break; + case SWIG_PY_BINARY: + obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype)); + break; + default: + obj = 0; + break; + } + if (obj) { + PyDict_SetItemString(d,constants[i].name,obj); + Py_DECREF(obj); + } + } + } + + /* -----------------------------------------------------------------------------*/ + /* Fix SwigMethods to carry the callback ptrs when needed */ + /* -----------------------------------------------------------------------------*/ + + static void + SWIG_Python_FixMethods(PyMethodDef *methods, + swig_const_info *const_table, + swig_type_info **types, + swig_type_info **types_initial) { + size_t i; + for (i = 0; methods[i].ml_name; ++i) { + char *c = methods[i].ml_doc; + if (c && (c = strstr(c, "swig_ptr: "))) { + int j; + swig_const_info *ci = 0; + char *name = c + 10; + for (j = 0; const_table[j].type; j++) { + if (strncmp(const_table[j].name, name, + strlen(const_table[j].name)) == 0) { + ci = &(const_table[j]); + break; + } + } + if (ci) { + size_t shift = (ci->ptype) - types; + swig_type_info *ty = types_initial[shift]; + size_t ldoc = (c - methods[i].ml_doc); + size_t lptr = strlen(ty->name)+2*sizeof(void*)+2; + char *ndoc = (char*)malloc(ldoc + lptr + 10); + char *buff = ndoc; + void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue: (void *)(ci->lvalue); + strncpy(buff, methods[i].ml_doc, ldoc); + buff += ldoc; + strncpy(buff, "swig_ptr: ", 10); + buff += 10; + SWIG_PackVoidPtr(buff, ptr, ty->name, lptr); + methods[i].ml_doc = ndoc; + } + } + } + } + + /* -----------------------------------------------------------------------------* + * Initialize type list + * -----------------------------------------------------------------------------*/ + +#if PY_MAJOR_VERSION < 2 + /* PyModule_AddObject function was introduced in Python 2.0. The following function + is copied out of Python/modsupport.c in python version 2.3.4 */ + static int + PyModule_AddObject(PyObject *m, char *name, PyObject *o) + { + PyObject *dict; + if (!PyModule_Check(m)) { + PyErr_SetString(PyExc_TypeError, + "PyModule_AddObject() needs module as first arg"); + return -1; + } + if (!o) { + PyErr_SetString(PyExc_TypeError, + "PyModule_AddObject() needs non-NULL value"); + return -1; + } + + dict = PyModule_GetDict(m); + if (dict == NULL) { + /* Internal error -- modules must have a dict! */ + PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__", + PyModule_GetName(m)); + return -1; + } + if (PyDict_SetItemString(dict, name, o)) + return -1; + Py_DECREF(o); + return 0; + } +#endif + + static swig_type_info ** + SWIG_Python_SetTypeListHandle(swig_type_info **type_list_handle) { + static PyMethodDef swig_empty_runtime_method_table[] = { + { + NULL, NULL, 0, NULL + } + };/* Sentinel */ + + PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION, + swig_empty_runtime_method_table); + PyObject *pointer = PyCObject_FromVoidPtr((void *) type_list_handle, NULL); + if (pointer && module) { + PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer); + } + return type_list_handle; + } + + static swig_type_info ** + SWIG_Python_LookupTypePointer(swig_type_info **type_list_handle) { + swig_type_info **type_pointer; + + /* first check if module already created */ + type_pointer = SWIG_Python_GetTypeListHandle(); + if (type_pointer) { + return type_pointer; + } else { + /* create a new module and variable */ + return SWIG_Python_SetTypeListHandle(type_list_handle); + } + } + +#ifdef __cplusplus +} +#endif + +/* -----------------------------------------------------------------------------* + * Partial Init method + * -----------------------------------------------------------------------------*/ + +#ifdef SWIG_LINK_RUNTIME +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT(void *) SWIG_ReturnGlobalTypeList(void *); +#endif + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT(void) SWIG_init(void) { + static PyObject *SWIG_globals = 0; + static int typeinit = 0; + PyObject *m, *d; + int i; + if (!SWIG_globals) SWIG_globals = SWIG_newvarlink(); + + /* Fix SwigMethods to carry the callback ptrs when needed */ + SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_types_initial); + + m = Py_InitModule((char *) SWIG_name, SwigMethods); + d = PyModule_GetDict(m); + + if (!typeinit) { +#ifdef SWIG_LINK_RUNTIME + swig_type_list_handle = (swig_type_info **) SWIG_ReturnGlobalTypeList(swig_type_list_handle); +#else +# ifndef SWIG_STATIC_RUNTIME + swig_type_list_handle = SWIG_Python_LookupTypePointer(swig_type_list_handle); +# endif +#endif + for (i = 0; swig_types_initial[i]; i++) { + swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]); + } + typeinit = 1; + } + SWIG_InstallConstants(d,swig_const_table); + + PyDict_SetItemString(d,(char*)"cvar", SWIG_globals); + SWIG_addvarlink(SWIG_globals,(char*)"AnimationControlNameStr",_wrap_AnimationControlNameStr_get, _wrap_AnimationControlNameStr_set); + { + PyDict_SetItemString(d,"ANIM_UNSPECIFIED", SWIG_From_int((int)(wxANIM_UNSPECIFIED))); + } + { + PyDict_SetItemString(d,"ANIM_DONOTREMOVE", SWIG_From_int((int)(wxANIM_DONOTREMOVE))); + } + { + PyDict_SetItemString(d,"ANIM_TOBACKGROUND", SWIG_From_int((int)(wxANIM_TOBACKGROUND))); + } + { + PyDict_SetItemString(d,"ANIM_TOPREVIOUS", SWIG_From_int((int)(wxANIM_TOPREVIOUS))); + } + { + PyDict_SetItemString(d,"AN_FIT_ANIMATION", SWIG_From_int((int)(wxAN_FIT_ANIMATION))); + } +} + diff --git a/wxPython/demo/GIFAnimationCtrl.py b/wxPython/demo/GIFAnimationCtrl.py new file mode 100644 index 0000000000..a91c6f0abc --- /dev/null +++ b/wxPython/demo/GIFAnimationCtrl.py @@ -0,0 +1,61 @@ + +import wx +from wx.animate import GIFAnimationCtrl + +from Main import opj + +GIFNames = [ + "bitmaps/ani-bttrfly.gif", + "bitmaps/ani-avtr.gif", + "bitmaps/ani-phone.gif", +# "bitmaps/ani-walker.gif", + "bitmaps/ani-man.gif", + "bitmaps/ani-bookworm.gif", + "bitmaps/ani-hooked.gif", + ] + +#---------------------------------------------------------------------- + +class TestPanel(wx.Panel): + def __init__(self, parent, log): + self.log = log + wx.Panel.__init__(self, parent, -1) + + sizer = wx.FlexGridSizer(2,3,5,5) + for name in GIFNames: + ani = GIFAnimationCtrl(self, -1, opj(name)) + ani.GetPlayer().UseBackgroundColour(True) + ani.Play() + sizer.Add(ani, 0, wx.ALL, 10) + + border = wx.BoxSizer() + border.Add(sizer, 1, wx.EXPAND|wx.ALL, 20) + self.SetSizer(border) + + +#---------------------------------------------------------------------- + +def runTest(frame, nb, log): + win = TestPanel(nb, log) + return win + +#---------------------------------------------------------------------- + + + +overview = """ +

wx.animate.GIFAnimationCtrl

+ +wx.animate.GIFAnimationCtrl is like a wx.StaticBitmap but is able to +display an animation by extracing frames from a multi-images GIF file. + + +""" + + + +if __name__ == '__main__': + import sys,os + import run + run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:]) + diff --git a/wxPython/demo/Main.py b/wxPython/demo/Main.py index 7da1fcad42..25cd079277 100644 --- a/wxPython/demo/Main.py +++ b/wxPython/demo/Main.py @@ -48,6 +48,7 @@ _treeList = [ # new stuff ('Recent Additions/Updates', [ 'FoldPanelBar', + 'GIFAnimationCtrl', ]), # managed windows == things with a (optional) caption you can close @@ -153,6 +154,7 @@ _treeList = [ 'FloatBar', 'FloatCanvas', 'FoldPanelBar', + 'GIFAnimationCtrl', 'HtmlWindow', 'IntCtrl', 'MediaCtrl', @@ -211,6 +213,7 @@ _treeList = [ 'ArtProvider', 'Cursor', 'DragImage', + 'GIFAnimationCtrl', 'Image', 'ImageAlpha', 'ImageFromStream', diff --git a/wxPython/demo/bitmaps/ani-avtr.gif b/wxPython/demo/bitmaps/ani-avtr.gif new file mode 100644 index 0000000000..0cefe1f1fa Binary files /dev/null and b/wxPython/demo/bitmaps/ani-avtr.gif differ diff --git a/wxPython/demo/bitmaps/ani-bookworm.gif b/wxPython/demo/bitmaps/ani-bookworm.gif new file mode 100644 index 0000000000..95ceeabd64 Binary files /dev/null and b/wxPython/demo/bitmaps/ani-bookworm.gif differ diff --git a/wxPython/demo/bitmaps/ani-bttrfly.gif b/wxPython/demo/bitmaps/ani-bttrfly.gif new file mode 100644 index 0000000000..b84ac352d6 Binary files /dev/null and b/wxPython/demo/bitmaps/ani-bttrfly.gif differ diff --git a/wxPython/demo/bitmaps/ani-hooked.gif b/wxPython/demo/bitmaps/ani-hooked.gif new file mode 100644 index 0000000000..7041b8ef55 Binary files /dev/null and b/wxPython/demo/bitmaps/ani-hooked.gif differ diff --git a/wxPython/demo/bitmaps/ani-man.gif b/wxPython/demo/bitmaps/ani-man.gif new file mode 100644 index 0000000000..ece99fd70a Binary files /dev/null and b/wxPython/demo/bitmaps/ani-man.gif differ diff --git a/wxPython/demo/bitmaps/ani-phone.gif b/wxPython/demo/bitmaps/ani-phone.gif new file mode 100644 index 0000000000..5eb09ed887 Binary files /dev/null and b/wxPython/demo/bitmaps/ani-phone.gif differ diff --git a/wxPython/demo/bitmaps/ani-walker.gif b/wxPython/demo/bitmaps/ani-walker.gif new file mode 100644 index 0000000000..0b90744f14 Binary files /dev/null and b/wxPython/demo/bitmaps/ani-walker.gif differ diff --git a/wxPython/demo/bitmaps/tbttrfly.gif b/wxPython/demo/bitmaps/tbttrfly.gif new file mode 100644 index 0000000000..de6f2f4bcf Binary files /dev/null and b/wxPython/demo/bitmaps/tbttrfly.gif differ diff --git a/wxPython/distrib/DIRLIST b/wxPython/distrib/DIRLIST index bff0cf7856..a4a065fc38 100644 --- a/wxPython/distrib/DIRLIST +++ b/wxPython/distrib/DIRLIST @@ -16,6 +16,10 @@ wxPython/contrib/activex/wxie wxPython/contrib/activex/wxie/doxydoc wxPython/contrib/activex/wxie/latex wxPython/contrib/dllwidget +wxPython/contrib/animate +wxPython/contrib/animate/gtk +wxPython/contrib/animate/mac +wxPython/contrib/animate/msw wxPython/contrib/gizmos wxPython/contrib/gizmos/gtk wxPython/contrib/gizmos/mac diff --git a/wxPython/distrib/mac/wxPythonOSX/build b/wxPython/distrib/mac/wxPythonOSX/build index 0ecf121a54..d06e2147ce 100755 --- a/wxPython/distrib/mac/wxPythonOSX/build +++ b/wxPython/distrib/mac/wxPythonOSX/build @@ -258,6 +258,7 @@ if [ $skipbuild != yes ]; then touch lib/libwx*.r* make $MAKEJOBS + make $MAKEJOBS -C contrib/src/animate make $MAKEJOBS -C contrib/src/gizmos make $MAKEJOBS -C contrib/src/stc @@ -277,9 +278,10 @@ fi if [ $skipinstall != yes ]; then # Install wxWidgets cd $WXBLD - make prefix=$INSTALLROOT$PREFIX install - make -C contrib/src/gizmos prefix=$INSTALLROOT$PREFIX install - make -C contrib/src/stc prefix=$INSTALLROOT$PREFIX install + make prefix=$INSTALLROOT$PREFIX install + make -C contrib/src/animate prefix=$INSTALLROOT$PREFIX install + make -C contrib/src/gizmos prefix=$INSTALLROOT$PREFIX install + make -C contrib/src/stc prefix=$INSTALLROOT$PREFIX install # relink wx-config with a relative link diff --git a/wxPython/distrib/make_installer.py b/wxPython/distrib/make_installer.py index 21b77a504b..ed0e57dfd4 100644 --- a/wxPython/distrib/make_installer.py +++ b/wxPython/distrib/make_installer.py @@ -83,6 +83,7 @@ Source: "wx\_calendar.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; C Source: "wx\_controls_.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core Source: "wx\_core_.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core Source: "wx\_gdi_.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core +Source: "wx\_animate.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core Source: "wx\_gizmos.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core Source: "wx\_glcanvas.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core Source: "wx\_grid.pyd"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core diff --git a/wxPython/distrib/wxPythonFull.spec.in b/wxPython/distrib/wxPythonFull.spec.in index 198b24a243..3f08f2b0fa 100644 --- a/wxPython/distrib/wxPythonFull.spec.in +++ b/wxPython/distrib/wxPythonFull.spec.in @@ -211,8 +211,8 @@ cd bld make +make -C contrib/src/animate make -C contrib/src/gizmos -##make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" make -C contrib/src/stc @@ -238,8 +238,8 @@ WXDIR=`pwd` # Install wxGTK and contribs cd bld make prefix=$RPM_BUILD_ROOT%{wxpref} install +make -C contrib/src/animate prefix=$RPM_BUILD_ROOT%{wxpref} install make -C contrib/src/gizmos prefix=$RPM_BUILD_ROOT%{wxpref} install -##make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" prefix=$RPM_BUILD_ROOT%{wxpref} install make -C contrib/src/stc prefix=$RPM_BUILD_ROOT%{wxpref} install diff --git a/wxPython/docs/BUILD.txt b/wxPython/docs/BUILD.txt index e606e4fc44..8b1abf3bbb 100644 --- a/wxPython/docs/BUILD.txt +++ b/wxPython/docs/BUILD.txt @@ -141,6 +141,7 @@ place, then do the same for wxPython. dir I don't lose my scripts too.) This is what it looks like:: make $* \ + && make -C contrib/src/animate $* \ && make -C contrib/src/gizmos $* \ && make -C contrib/src/stc $* @@ -392,6 +393,7 @@ accordingly if you are using the bash shell. same command from the following directories in order to build the contrib libraries:: + %WXDIR%\contrib\build\animate %WXDIR%\contrib\build\gizmos %WXDIR%\contrib\build\stc diff --git a/wxPython/docs/CHANGES.txt b/wxPython/docs/CHANGES.txt index 3a4685573e..ac68fd1751 100644 --- a/wxPython/docs/CHANGES.txt +++ b/wxPython/docs/CHANGES.txt @@ -64,6 +64,13 @@ this gives more flexibility on where the data can come from. Added MDI support to XRC +Added wx.animate module and a demo. The wx.animate module provides a +control that is able to display an animated GIF file. + +wx.lib.plot.py: Applied patch from Werner F. Bruhin that allows either +vertical and/or horizontal gridlines. + + diff --git a/wxPython/setup.py b/wxPython/setup.py index 23e701403f..9775964ee1 100755 --- a/wxPython/setup.py +++ b/wxPython/setup.py @@ -648,6 +648,33 @@ if BUILD_GIZMOS: wxpExtensions.append(ext) +#---------------------------------------------------------------------- +# Define the ANIMATE extension module +#---------------------------------------------------------------------- + +if BUILD_ANIMATE: + msg('Preparing ANIMATE...') + location = 'contrib/animate' + + swig_sources = run_swig(['animate.i'], location, GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + + ext = Extension('_animate', + swig_sources, + + include_dirs = includes + CONTRIBS_INC, + define_macros = defines, + + library_dirs = libdirs, + libraries = libs + makeLibName('animate'), + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) + + #---------------------------------------------------------------------- # Define the DLLWIDGET extension module diff --git a/wxPython/wxPython/animate.py b/wxPython/wxPython/animate.py new file mode 100644 index 0000000000..71da191550 --- /dev/null +++ b/wxPython/wxPython/animate.py @@ -0,0 +1,38 @@ +## This file reverse renames symbols in the wx package to give +## them their wx prefix again, for backwards compatibility. +## +## Generated by BuildRenamers in config.py + +# This silly stuff here is so the wxPython.wx module doesn't conflict +# with the wx package. We need to import modules from the wx package +# here, then we'll put the wxPython.wx entry back in sys.modules. +import sys +_wx = None +if sys.modules.has_key('wxPython.wx'): + _wx = sys.modules['wxPython.wx'] + del sys.modules['wxPython.wx'] + +import wx.animate + +sys.modules['wxPython.wx'] = _wx +del sys, _wx + + +# Now assign all the reverse-renamed names: +wxAnimationControlNameStr = wx.animate.AnimationControlNameStr +wxANIM_UNSPECIFIED = wx.animate.ANIM_UNSPECIFIED +wxANIM_DONOTREMOVE = wx.animate.ANIM_DONOTREMOVE +wxANIM_TOBACKGROUND = wx.animate.ANIM_TOBACKGROUND +wxANIM_TOPREVIOUS = wx.animate.ANIM_TOPREVIOUS +wxAnimationPlayer = wx.animate.AnimationPlayer +wxAnimationPlayerPtr = wx.animate.AnimationPlayerPtr +wxAnimationBase = wx.animate.AnimationBase +wxAnimationBasePtr = wx.animate.AnimationBasePtr +wxGIFAnimation = wx.animate.GIFAnimation +wxGIFAnimationPtr = wx.animate.GIFAnimationPtr +wxAN_FIT_ANIMATION = wx.animate.AN_FIT_ANIMATION +wxGIFAnimationCtrl = wx.animate.GIFAnimationCtrl +wxGIFAnimationCtrlPtr = wx.animate.GIFAnimationCtrlPtr +wxPreGIFAnimationCtrl = wx.animate.PreGIFAnimationCtrl + +