X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b0e5c039344bdd0e96c423ea59191986526b0efd..c5a2f2747825dc64950478738b113bc2e79f0f25:/wxPython/src/windows2.i diff --git a/wxPython/src/windows2.i b/wxPython/src/windows2.i index d8b73f326b..167ecb379f 100644 --- a/wxPython/src/windows2.i +++ b/wxPython/src/windows2.i @@ -14,9 +14,6 @@ %{ #include "helpers.h" -#ifdef OLD_GRID -#include -#endif #include #include #include @@ -65,7 +62,7 @@ enum { class wxNotebookEvent : public wxNotifyEvent { public: wxNotebookEvent(wxEventType commandType = wxEVT_NULL, int id = 0, - int nSel = -1, int nOldSel = -1); + int sel = -1, int oldSel = -1); int GetSelection(); int GetOldSelection(); @@ -96,36 +93,36 @@ public: %pragma(python) addtomethod = "wxPreNotebook:val._setOORInfo(val)" int GetPageCount(); - int SetSelection(int nPage); - void AdvanceSelection(bool bForward = TRUE); + int SetSelection(int page); + void AdvanceSelection(bool forward = TRUE); int GetSelection(); - bool SetPageText(int nPage, const wxString& strText); - wxString GetPageText(int nPage) const; + bool SetPageText(int page, const wxString& text); + wxString GetPageText(int page) const; void SetImageList(wxImageList* imageList); void AssignImageList(wxImageList *imageList) ; %pragma(python) addtomethod = "AssignImageList:_args[0].thisown = 0" wxImageList* GetImageList(); - int GetPageImage(int nPage); - bool SetPageImage(int nPage, int nImage); + int GetPageImage(int page); + bool SetPageImage(int page, int image); int GetRowCount(); void SetPageSize(const wxSize& size); void SetPadding(const wxSize& padding); - bool DeletePage(int nPage); - bool RemovePage(int nPage); + bool DeletePage(int page); + bool RemovePage(int page); bool DeleteAllPages(); - bool AddPage(/*wxNotebookPage*/ wxWindow *pPage, - const wxString& strText, - int bSelect = FALSE, + bool AddPage(/*wxNotebookPage*/ wxWindow *page, + const wxString& text, + int select = FALSE, int imageId = -1); - bool InsertPage(int nPage, - /*wxNotebookPage*/ wxWindow *pPage, - const wxString& strText, - bool bSelect = FALSE, + bool InsertPage(int page, + /*wxNotebookPage*/ wxWindow *page, + const wxString& text, + bool select = FALSE, int imageId = -1); - /*wxNotebookPage*/ wxWindow *GetPage(int nPage); + /*wxNotebookPage*/ wxWindow *GetPage(int page); %addmethods { void ResizeChildren() { @@ -305,8 +302,7 @@ public: // wxPyWindow derives from wxWindow and adds support for overriding many of // the virtual methods in Python derived classes. -// Which of these should be done??? -// AddChild +// Which (any?) of these should be done also??? // Destroy // DoCaptureMouse // DoClientToScreen @@ -323,7 +319,6 @@ public: // GetClientAreaOrigin // GetDefaultItem // IsTopLevel -// RemoveChild // SetBackgroundColour // SetDefaultItem // SetFocus @@ -369,6 +364,9 @@ public: DEC_PYCALLBACK_BOOL_const(AcceptsFocusFromKeyboard); DEC_PYCALLBACK_SIZE_const(GetMaxSize); + DEC_PYCALLBACK_VOID_WXWINBASE(AddChild); + DEC_PYCALLBACK_VOID_WXWINBASE(RemoveChild); + PYPRIVATE; }; @@ -395,6 +393,9 @@ IMP_PYCALLBACK_BOOL_const(wxPyWindow, wxWindow, AcceptsFocus); IMP_PYCALLBACK_BOOL_const(wxPyWindow, wxWindow, AcceptsFocusFromKeyboard); IMP_PYCALLBACK_SIZE_const(wxPyWindow, wxWindow, GetMaxSize); +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyWindow, wxWindow, AddChild); +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyWindow, wxWindow, RemoveChild); + %} // And now the one for SWIG to see @@ -433,6 +434,9 @@ public: bool base_AcceptsFocus() const; bool base_AcceptsFocusFromKeyboard() const; wxSize base_GetMaxSize() const; + + void base_AddChild(wxWindow* child); + void base_RemoveChild(wxWindow* child); } //--------------------------------------------------------------------------- @@ -475,6 +479,9 @@ public: DEC_PYCALLBACK_BOOL_const(AcceptsFocusFromKeyboard); DEC_PYCALLBACK_SIZE_const(GetMaxSize); + DEC_PYCALLBACK_VOID_WXWINBASE(AddChild); + DEC_PYCALLBACK_VOID_WXWINBASE(RemoveChild); + PYPRIVATE; }; @@ -501,6 +508,9 @@ IMP_PYCALLBACK_BOOL_const(wxPyControl, wxControl, AcceptsFocus); IMP_PYCALLBACK_BOOL_const(wxPyControl, wxControl, AcceptsFocusFromKeyboard); IMP_PYCALLBACK_SIZE_const(wxPyControl, wxControl, GetMaxSize); +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyControl, wxControl, AddChild); +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyControl, wxControl, RemoveChild); + %} // And now the one for SWIG to see @@ -540,6 +550,123 @@ public: bool base_AcceptsFocus() const; bool base_AcceptsFocusFromKeyboard() const; wxSize base_GetMaxSize() const; + + void base_AddChild(wxWindow* child); + void base_RemoveChild(wxWindow* child); } +//--------------------------------------------------------------------------- +// and for wxPanel + +%{ // C++ version of Python aware wxPanel +class wxPyPanel : public wxPanel +{ + DECLARE_DYNAMIC_CLASS(wxPyPanel) +public: + wxPyPanel() : wxPanel() {} + wxPyPanel(wxWindow* parent, const wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxPyPanelNameStr) + : wxPanel(parent, id, pos, size, style, name) {} + + + DEC_PYCALLBACK_VOID_INT4(DoMoveWindow); + DEC_PYCALLBACK_VOID_INT5(DoSetSize); + DEC_PYCALLBACK_VOID_INTINT(DoSetClientSize); + DEC_PYCALLBACK_VOID_INTINT(DoSetVirtualSize); + + DEC_PYCALLBACK_VOID_INTPINTP_const(DoGetSize); + DEC_PYCALLBACK_VOID_INTPINTP_const(DoGetClientSize); + DEC_PYCALLBACK_VOID_INTPINTP_const(DoGetPosition); + + DEC_PYCALLBACK_SIZE_const(DoGetVirtualSize); + DEC_PYCALLBACK_SIZE_const(DoGetBestSize); + + DEC_PYCALLBACK__(InitDialog); + DEC_PYCALLBACK_BOOL_(TransferDataFromWindow); + DEC_PYCALLBACK_BOOL_(TransferDataToWindow); + DEC_PYCALLBACK_BOOL_(Validate); + + DEC_PYCALLBACK_BOOL_const(AcceptsFocus); + DEC_PYCALLBACK_BOOL_const(AcceptsFocusFromKeyboard); + DEC_PYCALLBACK_SIZE_const(GetMaxSize); + + DEC_PYCALLBACK_VOID_WXWINBASE(AddChild); + DEC_PYCALLBACK_VOID_WXWINBASE(RemoveChild); + + PYPRIVATE; +}; + +IMPLEMENT_DYNAMIC_CLASS(wxPyPanel, wxPanel); + +IMP_PYCALLBACK_VOID_INT4(wxPyPanel, wxPanel, DoMoveWindow); +IMP_PYCALLBACK_VOID_INT5(wxPyPanel, wxPanel, DoSetSize); +IMP_PYCALLBACK_VOID_INTINT(wxPyPanel, wxPanel, DoSetClientSize); +IMP_PYCALLBACK_VOID_INTINT(wxPyPanel, wxPanel, DoSetVirtualSize); + +IMP_PYCALLBACK_VOID_INTPINTP_const(wxPyPanel, wxPanel, DoGetSize); +IMP_PYCALLBACK_VOID_INTPINTP_const(wxPyPanel, wxPanel, DoGetClientSize); +IMP_PYCALLBACK_VOID_INTPINTP_const(wxPyPanel, wxPanel, DoGetPosition); + +IMP_PYCALLBACK_SIZE_const(wxPyPanel, wxPanel, DoGetVirtualSize); +IMP_PYCALLBACK_SIZE_const(wxPyPanel, wxPanel, DoGetBestSize); + +IMP_PYCALLBACK__(wxPyPanel, wxPanel, InitDialog); +IMP_PYCALLBACK_BOOL_(wxPyPanel, wxPanel, TransferDataFromWindow); +IMP_PYCALLBACK_BOOL_(wxPyPanel, wxPanel, TransferDataToWindow); +IMP_PYCALLBACK_BOOL_(wxPyPanel, wxPanel, Validate); + +IMP_PYCALLBACK_BOOL_const(wxPyPanel, wxPanel, AcceptsFocus); +IMP_PYCALLBACK_BOOL_const(wxPyPanel, wxPanel, AcceptsFocusFromKeyboard); +IMP_PYCALLBACK_SIZE_const(wxPyPanel, wxPanel, GetMaxSize); + +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyPanel, wxPanel, AddChild); +IMP_PYCALLBACK_VOID_WXWINBASE(wxPyPanel, wxPanel, RemoveChild); + +%} + +// And now the one for SWIG to see +class wxPyPanel : public wxPanel +{ +public: + wxPyPanel(wxWindow* parent, const wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxPyPanelNameStr); + + void _setCallbackInfo(PyObject* self, PyObject* _class); + %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyPanel)" + %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" + + + void base_DoMoveWindow(int x, int y, int width, int height); + void base_DoSetSize(int x, int y, int width, int height, + int sizeFlags = wxSIZE_AUTO); + void base_DoSetClientSize(int width, int height); + void base_DoSetVirtualSize( int x, int y ); + + void base_DoGetSize( int *OUTPUT, int *OUTPUT ) const; + void base_DoGetClientSize( int *OUTPUT, int *OUTPUT ) const; + void base_DoGetPosition( int *OUTPUT, int *OUTPUT ) const; + + wxSize base_DoGetVirtualSize() const; + wxSize base_DoGetBestSize() const; + + void base_InitDialog(); + bool base_TransferDataToWindow(); + bool base_TransferDataFromWindow(); + bool base_Validate(); + + bool base_AcceptsFocus() const; + bool base_AcceptsFocusFromKeyboard() const; + wxSize base_GetMaxSize() const; + + void base_AddChild(wxWindow* child); + void base_RemoveChild(wxWindow* child); +}; + + //---------------------------------------------------------------------------