]>
git.saurik.com Git - wxWidgets.git/blob - wxPython/include/wx/wxPython/pyclasses.h
f07a5de9184d26336c7fcbd8aac92b9a9ec96ad8
1 ////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxPython python-aware classes for redirecting virtual method
4 // calls for classes located in the core but that need to be
5 // visible to multiple modules
9 // Created: 11-Oct-2003
11 // Copyright: (c) 2003 by Total Control Software
12 // Licence: wxWindows license
13 /////////////////////////////////////////////////////////////////////////////
15 #ifndef __pyclasses_h__
16 #define __pyclasses_h__
20 //---------------------------------------------------------------------------
22 class wxPySizer
: public wxSizer
{
23 DECLARE_DYNAMIC_CLASS(wxPySizer
);
25 wxPySizer() : wxSizer() {};
27 DEC_PYCALLBACK___pure(RecalcSizes
);
28 DEC_PYCALLBACK_wxSize__pure(CalcMin
);
33 //---------------------------------------------------------------------------
35 class wxPyValidator
: public wxValidator
{
36 DECLARE_DYNAMIC_CLASS(wxPyValidator
);
44 wxObject
* Clone() const {
45 wxPyValidator
* ptr
= NULL
;
46 wxPyValidator
* self
= (wxPyValidator
*)this;
48 wxPyBeginBlockThreads();
49 if (wxPyCBH_findCallback(self
->m_myInst
, "Clone")) {
51 ro
= wxPyCBH_callCallbackObj(self
->m_myInst
, Py_BuildValue("()"));
53 wxPyConvertSwigPtr(ro
, (void **)&ptr
, wxT("wxPyValidator"));
57 wxPyEndBlockThreads();
59 // This is very dangerous!!! But is the only way I could find
60 // to squash a memory leak. Currently it is okay, but if the
61 // validator architecture in wxWindows ever changes, problems
68 DEC_PYCALLBACK_BOOL_WXWIN(Validate
);
69 DEC_PYCALLBACK_BOOL_(TransferToWindow
);
70 DEC_PYCALLBACK_BOOL_(TransferFromWindow
);
76 //---------------------------------------------------------------------------
79 class wxPyPen
: public wxPen
{
81 wxPyPen(wxColour
& colour
, int width
=1, int style
=wxSOLID
)
82 : wxPen(colour
, width
, style
)
86 void SetDashes(int nb_dashes
, const wxDash
*dash
);
93 //---------------------------------------------------------------------------
95 class wxPyTimer
: public wxTimer
98 wxPyTimer(wxEvtHandler
*owner
=NULL
, int id
= -1)
101 if (owner
== NULL
) SetOwner(this);
104 DEC_PYCALLBACK__(Notify
);
109 //---------------------------------------------------------------------------
112 class wxPyProcess
: public wxProcess
{
114 wxPyProcess(wxEvtHandler
*parent
= NULL
, int id
= -1)
115 : wxProcess(parent
, id
)
118 DEC_PYCALLBACK_VOID_INTINT(OnTerminate
);
124 //---------------------------------------------------------------------------
126 class wxPyVScrolledWindow
;
128 class wxPyHtmlListBox
;
130 class wxPyPopupTransientWindow
;
131 class wxPyPreviewFrame
;
133 class wxPyPreviewControlBar
;
134 class wxPyPrintPreview
;
138 class wxGenericDragImage
;
143 class wxTaskBarIconEvent
;
145 class wxToggleButton
;
148 //---------------------------------------------------------------------------
150 //---------------------------------------------------------------------------
151 //---------------------------------------------------------------------------