]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/windows2.i
Committing in .
[wxWidgets.git] / wxPython / src / windows2.i
index d8b73f326b717ad96b7b650d9b3117b89ef15b8b..167ecb379fb62d08d6cfb8d672bdc519872f363b 100644 (file)
@@ -14,9 +14,6 @@
 
 %{
 #include "helpers.h"
-#ifdef OLD_GRID
-#include <wx/grid.h>
-#endif
 #include <wx/notebook.h>
 #include <wx/splitter.h>
 #include <wx/imaglist.h>
@@ -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);
+};
+
+
 //---------------------------------------------------------------------------