From eccab1a711f3fed5d27e026f2f4c496bc6b9a38b Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Sat, 18 Nov 2006 00:35:26 +0000 Subject: [PATCH] reSWIGGed git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/src/gtk/_core.py | 2 +- wxPython/src/gtk/_core_wrap.cpp | 17 +- wxPython/src/gtk/aui.py | 59 +++- wxPython/src/gtk/aui_wrap.cpp | 231 ++++++++++++-- wxPython/src/gtk/combo.py | 537 ++++++++++++++++++++++++++++---- wxPython/src/gtk/combo_wrap.cpp | 295 ++++++++++++++++++ wxPython/src/mac/_core.py | 2 +- wxPython/src/mac/_core_wrap.cpp | 17 +- wxPython/src/mac/aui.py | 59 +++- wxPython/src/mac/aui_wrap.cpp | 231 ++++++++++++-- wxPython/src/mac/combo.py | 537 ++++++++++++++++++++++++++++---- wxPython/src/mac/combo_wrap.cpp | 295 ++++++++++++++++++ wxPython/src/msw/_core.py | 2 +- wxPython/src/msw/_core_wrap.cpp | 17 +- wxPython/src/msw/aui.py | 59 +++- wxPython/src/msw/aui_wrap.cpp | 231 ++++++++++++-- wxPython/src/msw/combo.py | 537 ++++++++++++++++++++++++++++---- wxPython/src/msw/combo_wrap.cpp | 295 ++++++++++++++++++ 18 files changed, 3114 insertions(+), 309 deletions(-) diff --git a/wxPython/src/gtk/_core.py b/wxPython/src/gtk/_core.py index 27f94c41b5..ad1b0401e2 100644 --- a/wxPython/src/gtk/_core.py +++ b/wxPython/src/gtk/_core.py @@ -7247,7 +7247,7 @@ class PyApp(EvtHandler): def SetUseBestVisual(*args, **kwargs): """ - SetUseBestVisual(self, bool flag) + SetUseBestVisual(self, bool flag, bool forceTrueColour=False) Set whether the app should try to use the best available visual on systems where more than one is available, (Sun, SGI, XFree86 4, etc.) diff --git a/wxPython/src/gtk/_core_wrap.cpp b/wxPython/src/gtk/_core_wrap.cpp index 823987d30d..fb58a9db3f 100644 --- a/wxPython/src/gtk/_core_wrap.cpp +++ b/wxPython/src/gtk/_core_wrap.cpp @@ -30805,17 +30805,21 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) PyObject *resultobj = 0; wxPyApp *arg1 = (wxPyApp *) 0 ; bool arg2 ; + bool arg3 = (bool) false ; void *argp1 = 0 ; int res1 = 0 ; bool val2 ; int ecode2 = 0 ; + bool val3 ; + int ecode3 = 0 ; PyObject * obj0 = 0 ; PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; char * kwnames[] = { - (char *) "self",(char *) "flag", NULL + (char *) "self",(char *) "flag",(char *) "forceTrueColour", NULL }; - if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1)) SWIG_fail; + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyApp, 0 | 0 ); if (!SWIG_IsOK(res1)) { SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "1"" of type '" "wxPyApp *""'"); @@ -30826,9 +30830,16 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "2"" of type '" "bool""'"); } arg2 = static_cast< bool >(val2); + if (obj2) { + ecode3 = SWIG_AsVal_bool(obj2, &val3); + if (!SWIG_IsOK(ecode3)) { + SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "3"" of type '" "bool""'"); + } + arg3 = static_cast< bool >(val3); + } { PyThreadState* __tstate = wxPyBeginAllowThreads(); - (arg1)->SetUseBestVisual(arg2); + (arg1)->SetUseBestVisual(arg2,arg3); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } diff --git a/wxPython/src/gtk/aui.py b/wxPython/src/gtk/aui.py index f7268401a7..4de1f4c3e8 100644 --- a/wxPython/src/gtk/aui.py +++ b/wxPython/src/gtk/aui.py @@ -171,23 +171,23 @@ AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT -AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE -AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE -AUI_ART_GRIPPER_SIZE = _aui.AUI_ART_GRIPPER_SIZE -AUI_ART_PANE_BORDER_SIZE = _aui.AUI_ART_PANE_BORDER_SIZE -AUI_ART_PANE_BUTTON_SIZE = _aui.AUI_ART_PANE_BUTTON_SIZE -AUI_ART_BACKGROUND_COLOUR = _aui.AUI_ART_BACKGROUND_COLOUR -AUI_ART_SASH_COLOUR = _aui.AUI_ART_SASH_COLOUR -AUI_ART_ACTIVE_CAPTION_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_COLOUR -AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_INACTIVE_CAPTION_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_COLOUR -AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_BORDER_COLOUR = _aui.AUI_ART_BORDER_COLOUR -AUI_ART_GRIPPER_COLOUR = _aui.AUI_ART_GRIPPER_COLOUR -AUI_ART_CAPTION_FONT = _aui.AUI_ART_CAPTION_FONT -AUI_ART_GRADIENT_TYPE = _aui.AUI_ART_GRADIENT_TYPE +AUI_DOCKART_SASH_SIZE = _aui.AUI_DOCKART_SASH_SIZE +AUI_DOCKART_CAPTION_SIZE = _aui.AUI_DOCKART_CAPTION_SIZE +AUI_DOCKART_GRIPPER_SIZE = _aui.AUI_DOCKART_GRIPPER_SIZE +AUI_DOCKART_PANE_BORDER_SIZE = _aui.AUI_DOCKART_PANE_BORDER_SIZE +AUI_DOCKART_PANE_BUTTON_SIZE = _aui.AUI_DOCKART_PANE_BUTTON_SIZE +AUI_DOCKART_BACKGROUND_COLOUR = _aui.AUI_DOCKART_BACKGROUND_COLOUR +AUI_DOCKART_SASH_COLOUR = _aui.AUI_DOCKART_SASH_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_BORDER_COLOUR = _aui.AUI_DOCKART_BORDER_COLOUR +AUI_DOCKART_GRIPPER_COLOUR = _aui.AUI_DOCKART_GRIPPER_COLOUR +AUI_DOCKART_CAPTION_FONT = _aui.AUI_DOCKART_CAPTION_FONT +AUI_DOCKART_GRADIENT_TYPE = _aui.AUI_DOCKART_GRADIENT_TYPE AUI_GRADIENT_NONE = _aui.AUI_GRADIENT_NONE AUI_GRADIENT_VERTICAL = _aui.AUI_GRADIENT_VERTICAL AUI_GRADIENT_HORIZONTAL = _aui.AUI_GRADIENT_HORIZONTAL @@ -196,6 +196,7 @@ AUI_BUTTON_STATE_HOVER = _aui.AUI_BUTTON_STATE_HOVER AUI_BUTTON_STATE_PRESSED = _aui.AUI_BUTTON_STATE_PRESSED AUI_BUTTON_STATE_DISABLED = _aui.AUI_BUTTON_STATE_DISABLED AUI_BUTTON_STATE_HIDDEN = _aui.AUI_BUTTON_STATE_HIDDEN +AUI_BUTTON_STATE_CHECKED = _aui.AUI_BUTTON_STATE_CHECKED AUI_BUTTON_CLOSE = _aui.AUI_BUTTON_CLOSE AUI_BUTTON_MAXIMIZE_RESTORE = _aui.AUI_BUTTON_MAXIMIZE_RESTORE AUI_BUTTON_MINIMIZE = _aui.AUI_BUTTON_MINIMIZE @@ -592,6 +593,11 @@ class AuiManager(_core.EvtHandler): """GetManagedWindow(self) -> Window""" return _aui.AuiManager_GetManagedWindow(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + + GetManager = staticmethod(GetManager) def SetArtProvider(*args, **kwargs): """SetArtProvider(self, AuiDockArt art_provider)""" return _aui.AuiManager_SetArtProvider(*args, **kwargs) @@ -753,6 +759,10 @@ class AuiManager(_core.EvtHandler): ManagedWindow = property(GetManagedWindow,SetManagedWindow,doc="See `GetManagedWindow` and `SetManagedWindow`") _aui.AuiManager_swigregister(AuiManager) +def AuiManager_GetManager(*args, **kwargs): + """AuiManager_GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + class AuiManagerEvent(_core.Event): """Proxy of C++ AuiManagerEvent class""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') @@ -764,6 +774,10 @@ class AuiManagerEvent(_core.Event): """Clone(self) -> Event""" return _aui.AuiManagerEvent_Clone(*args, **kwargs) + def SetManager(*args, **kwargs): + """SetManager(self, AuiManager mgr)""" + return _aui.AuiManagerEvent_SetManager(*args, **kwargs) + def SetPane(*args, **kwargs): """SetPane(self, AuiPaneInfo p)""" return _aui.AuiManagerEvent_SetPane(*args, **kwargs) @@ -776,6 +790,10 @@ class AuiManagerEvent(_core.Event): """SetDC(self, DC pdc)""" return _aui.AuiManagerEvent_SetDC(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(self) -> AuiManager""" + return _aui.AuiManagerEvent_GetManager(*args, **kwargs) + def GetPane(*args, **kwargs): """GetPane(self) -> AuiPaneInfo""" return _aui.AuiManagerEvent_GetPane(*args, **kwargs) @@ -804,6 +822,7 @@ class AuiManagerEvent(_core.Event): """CanVeto(self) -> bool""" return _aui.AuiManagerEvent_CanVeto(*args, **kwargs) + manager = property(_aui.AuiManagerEvent_manager_get, _aui.AuiManagerEvent_manager_set) pane = property(_aui.AuiManagerEvent_pane_get, _aui.AuiManagerEvent_pane_set) button = property(_aui.AuiManagerEvent_button_get, _aui.AuiManagerEvent_button_set) veto_flag = property(_aui.AuiManagerEvent_veto_flag_get, _aui.AuiManagerEvent_veto_flag_set) @@ -888,11 +907,13 @@ wxEVT_AUI_PANECLOSE = _aui.wxEVT_AUI_PANECLOSE wxEVT_AUI_PANEMAXIMIZE = _aui.wxEVT_AUI_PANEMAXIMIZE wxEVT_AUI_PANERESTORE = _aui.wxEVT_AUI_PANERESTORE wxEVT_AUI_RENDER = _aui.wxEVT_AUI_RENDER +wxEVT_AUI_FINDMANAGER = _aui.wxEVT_AUI_FINDMANAGER EVT_AUI_PANEBUTTON = wx.PyEventBinder( wxEVT_AUI_PANEBUTTON ) EVT_AUI_PANECLOSE = wx.PyEventBinder( wxEVT_AUI_PANECLOSE ) EVT_AUI_PANEMAXIMIZE = wx.PyEventBinder( wxEVT_AUI_PANEMAXIMIZE ) EVT_AUI_PANERESTORE = wx.PyEventBinder( wxEVT_AUI_PANERESTORE ) EVT_AUI_RENDER = wx.PyEventBinder( wxEVT_AUI_RENDER ) +EVT_AUI_FINDMANAGER = wx.PyEventBinder( wxEVT_AUI_FINDMANAGER ) class AuiDockArt(object): """Proxy of C++ AuiDockArt class""" @@ -987,6 +1008,10 @@ class AuiFloatingFrame(_windows.MiniFrame): """SetPaneWindow(self, AuiPaneInfo pane)""" return _aui.AuiFloatingFrame_SetPaneWindow(*args, **kwargs) + def GetOwnerManager(*args, **kwargs): + """GetOwnerManager(self) -> AuiManager""" + return _aui.AuiFloatingFrame_GetOwnerManager(*args, **kwargs) + _aui.AuiFloatingFrame_swigregister(AuiFloatingFrame) AUI_NB_TOP = _aui.AUI_NB_TOP diff --git a/wxPython/src/gtk/aui_wrap.cpp b/wxPython/src/gtk/aui_wrap.cpp index 0e9971757e..61bb06c968 100644 --- a/wxPython/src/gtk/aui_wrap.cpp +++ b/wxPython/src/gtk/aui_wrap.cpp @@ -7357,6 +7357,36 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManager_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxWindow *arg1 = (wxWindow *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + char * kwnames[] = { + (char *) "window", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AuiManager_GetManager",kwnames,&obj0)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManager_GetManager" "', expected argument " "1"" of type '" "wxWindow *""'"); + } + arg1 = reinterpret_cast< wxWindow * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)wxAuiManager::GetManager(arg1); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManager_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManager *arg1 = (wxAuiManager *) 0 ; @@ -8577,6 +8607,44 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "mgr", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiManagerEvent_SetManager",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxAuiManager, 0 | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetManager(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8691,6 +8759,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiManagerEvent const *)arg1)->GetManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8703,12 +8799,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxAuiPaneInfo *)(arg1)->GetPane(); + result = (wxAuiPaneInfo *)((wxAuiManagerEvent const *)arg1)->GetPane(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8731,12 +8827,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetButton(PyObject *SWIGUNUSEDPARM(se swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (int)(arg1)->GetButton(); + result = (int)((wxAuiManagerEvent const *)arg1)->GetButton(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8759,12 +8855,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetDC(PyObject *SWIGUNUSEDPARM(self), swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxDC *)(arg1)->GetDC(); + result = (wxDC *)((wxAuiManagerEvent const *)arg1)->GetDC(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8915,6 +9011,59 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject *swig_obj[2] ; + + if (!SWIG_Python_UnpackTuple(args,"AuiManagerEvent_manager_set",2,2,swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxAuiManager, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + if (arg1) (arg1)->manager = arg2; + + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_get" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + result = (wxAuiManager *) ((arg1)->manager); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_pane_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -11433,6 +11582,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiFloatingFrame_GetOwnerManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiFloatingFrame *arg1 = (wxAuiFloatingFrame *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiFloatingFrame, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiFloatingFrame_GetOwnerManager" "', expected argument " "1"" of type '" "wxAuiFloatingFrame const *""'"); + } + arg1 = reinterpret_cast< wxAuiFloatingFrame * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiFloatingFrame const *)arg1)->GetOwnerManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *AuiFloatingFrame_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -15765,6 +15942,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_GetFlags", (PyCFunction)_wrap_AuiManager_GetFlags, METH_O, NULL}, { (char *)"AuiManager_SetManagedWindow", (PyCFunction) _wrap_AuiManager_SetManagedWindow, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetManagedWindow", (PyCFunction)_wrap_AuiManager_GetManagedWindow, METH_O, NULL}, + { (char *)"AuiManager_GetManager", (PyCFunction) _wrap_AuiManager_GetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_SetArtProvider", (PyCFunction) _wrap_AuiManager_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetArtProvider", (PyCFunction)_wrap_AuiManager_GetArtProvider, METH_O, NULL}, { (char *)"AuiManager__GetPaneByWidget", (PyCFunction) _wrap_AuiManager__GetPaneByWidget, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -15795,9 +15973,11 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_swiginit", AuiManager_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiManagerEvent", (PyCFunction) _wrap_new_AuiManagerEvent, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_Clone", (PyCFunction)_wrap_AuiManagerEvent_Clone, METH_O, NULL}, + { (char *)"AuiManagerEvent_SetManager", (PyCFunction) _wrap_AuiManagerEvent_SetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetPane", (PyCFunction) _wrap_AuiManagerEvent_SetPane, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetButton", (PyCFunction) _wrap_AuiManagerEvent_SetButton, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetDC", (PyCFunction) _wrap_AuiManagerEvent_SetDC, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiManagerEvent_GetManager", (PyCFunction)_wrap_AuiManagerEvent_GetManager, METH_O, NULL}, { (char *)"AuiManagerEvent_GetPane", (PyCFunction)_wrap_AuiManagerEvent_GetPane, METH_O, NULL}, { (char *)"AuiManagerEvent_GetButton", (PyCFunction)_wrap_AuiManagerEvent_GetButton, METH_O, NULL}, { (char *)"AuiManagerEvent_GetDC", (PyCFunction)_wrap_AuiManagerEvent_GetDC, METH_O, NULL}, @@ -15805,6 +15985,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManagerEvent_GetVeto", (PyCFunction)_wrap_AuiManagerEvent_GetVeto, METH_O, NULL}, { (char *)"AuiManagerEvent_SetCanVeto", (PyCFunction) _wrap_AuiManagerEvent_SetCanVeto, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_CanVeto", (PyCFunction)_wrap_AuiManagerEvent_CanVeto, METH_O, NULL}, + { (char *)"AuiManagerEvent_manager_set", _wrap_AuiManagerEvent_manager_set, METH_VARARGS, NULL}, + { (char *)"AuiManagerEvent_manager_get", (PyCFunction)_wrap_AuiManagerEvent_manager_get, METH_O, NULL}, { (char *)"AuiManagerEvent_pane_set", _wrap_AuiManagerEvent_pane_set, METH_VARARGS, NULL}, { (char *)"AuiManagerEvent_pane_get", (PyCFunction)_wrap_AuiManagerEvent_pane_get, METH_O, NULL}, { (char *)"AuiManagerEvent_button_set", _wrap_AuiManagerEvent_button_set, METH_VARARGS, NULL}, @@ -15888,6 +16070,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"new_AuiFloatingFrame", (PyCFunction) _wrap_new_AuiFloatingFrame, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_AuiFloatingFrame", (PyCFunction)_wrap_delete_AuiFloatingFrame, METH_O, NULL}, { (char *)"AuiFloatingFrame_SetPaneWindow", (PyCFunction) _wrap_AuiFloatingFrame_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiFloatingFrame_GetOwnerManager", (PyCFunction)_wrap_AuiFloatingFrame_GetOwnerManager, METH_O, NULL}, { (char *)"AuiFloatingFrame_swigregister", AuiFloatingFrame_swigregister, METH_VARARGS, NULL}, { (char *)"AuiFloatingFrame_swiginit", AuiFloatingFrame_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -18701,23 +18884,23 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BORDER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BUTTON_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BACKGROUND_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BORDER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_FONT))); - SWIG_Python_SetConstant(d, "AUI_ART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRADIENT_TYPE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BORDER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BUTTON_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BACKGROUND_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BORDER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_FONT))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRADIENT_TYPE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_NONE",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_NONE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_VERTICAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_VERTICAL))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_HORIZONTAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_HORIZONTAL))); @@ -18726,6 +18909,7 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_PRESSED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_PRESSED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_DISABLED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_DISABLED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_HIDDEN",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_HIDDEN))); + SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_CHECKED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_CHECKED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_CLOSE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_CLOSE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MAXIMIZE_RESTORE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MAXIMIZE_RESTORE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MINIMIZE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MINIMIZE))); @@ -18785,6 +18969,7 @@ SWIGEXPORT void SWIG_init(void) { PyDict_SetItemString(d, "wxEVT_AUI_PANEMAXIMIZE", PyInt_FromLong(wxEVT_AUI_PANEMAXIMIZE)); PyDict_SetItemString(d, "wxEVT_AUI_PANERESTORE", PyInt_FromLong(wxEVT_AUI_PANERESTORE)); PyDict_SetItemString(d, "wxEVT_AUI_RENDER", PyInt_FromLong(wxEVT_AUI_RENDER)); + PyDict_SetItemString(d, "wxEVT_AUI_FINDMANAGER", PyInt_FromLong(wxEVT_AUI_FINDMANAGER)); SWIG_Python_SetConstant(d, "AUI_NB_TOP",SWIG_From_int(static_cast< int >(wxAUI_NB_TOP))); SWIG_Python_SetConstant(d, "AUI_NB_LEFT",SWIG_From_int(static_cast< int >(wxAUI_NB_LEFT))); SWIG_Python_SetConstant(d, "AUI_NB_RIGHT",SWIG_From_int(static_cast< int >(wxAUI_NB_RIGHT))); diff --git a/wxPython/src/gtk/combo.py b/wxPython/src/gtk/combo.py index 38b097c587..9b15b384e3 100644 --- a/wxPython/src/gtk/combo.py +++ b/wxPython/src/gtk/combo.py @@ -68,7 +68,10 @@ CC_NO_TEXT_AUTO_SELECT = _combo.CC_NO_TEXT_AUTO_SELECT CC_MF_ON_BUTTON = _combo.CC_MF_ON_BUTTON CC_MF_ON_CLICK_AREA = _combo.CC_MF_ON_CLICK_AREA class ComboCtrlFeatures(object): - """Proxy of C++ ComboCtrlFeatures class""" + """ + Namespace for `wx.combo.ComboCtrl` feature flags. See + `wx.combo.ComboCtrl.GetFeatures`. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') def __init__(self): raise AttributeError, "No constructor defined" __repr__ = _swig_repr @@ -83,7 +86,19 @@ class ComboCtrlFeatures(object): _combo.ComboCtrlFeatures_swigregister(ComboCtrlFeatures) class ComboCtrl(_core.Control): - """Proxy of C++ ComboCtrl class""" + """ + A combo control is a generic combobox that allows for a totally custom + popup. In addition it has other customization features. For instance, + position and size of the dropdown button can be changed. + + To specify what to use for the popup control you need to derive a + class from `wx.combo.ComboPopup` and pass it to the ComboCtrl with + `SetPopupControl`. It doesn't derive from any widget class so it can + be used either as a mixin class combined with some standard or custom + widget, or you can use the derived ComboPopup to create and hold an + independent reference to the widget to be used for the popup. + + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -101,47 +116,100 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl__setCallbackInfo(*args, **kwargs) def ShowPopup(*args, **kwargs): - """ShowPopup(self)""" + """ + ShowPopup(self) + + Show the popup window. + """ return _combo.ComboCtrl_ShowPopup(*args, **kwargs) def HidePopup(*args, **kwargs): - """HidePopup(self)""" + """ + HidePopup(self) + + Dismisses the popup window. + """ return _combo.ComboCtrl_HidePopup(*args, **kwargs) def OnButtonClick(*args, **kwargs): - """OnButtonClick(self)""" + """ + OnButtonClick(self) + + Implement in a derived class to define what happens on dropdown button + click. Default action is to show the popup. + """ return _combo.ComboCtrl_OnButtonClick(*args, **kwargs) def IsPopupShown(*args, **kwargs): - """IsPopupShown(self) -> bool""" + """ + IsPopupShown(self) -> bool + + Returns true if the popup is currently shown. + """ return _combo.ComboCtrl_IsPopupShown(*args, **kwargs) def SetPopupControl(*args, **kwargs): - """SetPopupControl(self, ComboPopup popup)""" + """ + SetPopupControl(self, ComboPopup popup) + + Set popup interface class derived from `wx.combo.ComboPopup`. This + method should be called as soon as possible after the control has been + created, unless `OnButtonClick` has been overridden. + """ return _combo.ComboCtrl_SetPopupControl(*args, **kwargs) def GetPopupControl(*args, **kwargs): - """GetPopupControl(self) -> ComboPopup""" + """ + GetPopupControl(self) -> ComboPopup + + Returns the current popup interface that has been set with + `SetPopupControl`. + """ return _combo.ComboCtrl_GetPopupControl(*args, **kwargs) def GetPopupWindow(*args, **kwargs): - """GetPopupWindow(self) -> Window""" + """ + GetPopupWindow(self) -> Window + + Returns the popup window containing the popup control. + """ return _combo.ComboCtrl_GetPopupWindow(*args, **kwargs) def GetTextCtrl(*args, **kwargs): - """GetTextCtrl(self) -> wxTextCtrl""" + """ + GetTextCtrl(self) -> wxTextCtrl + + Get the text control which is part of the combo control. + """ return _combo.ComboCtrl_GetTextCtrl(*args, **kwargs) def GetButton(*args, **kwargs): - """GetButton(self) -> Window""" + """ + GetButton(self) -> Window + + Get the dropdown button which is part of the combobox. Note: it's not + necessarily a wx.Button or wx.BitmapButton. + """ return _combo.ComboCtrl_GetButton(*args, **kwargs) def GetValue(*args, **kwargs): - """GetValue(self) -> String""" + """ + GetValue(self) -> String + + Returns text representation of the current value. For writable combo + control it always returns the value in the text field. + """ return _combo.ComboCtrl_GetValue(*args, **kwargs) def SetValue(*args, **kwargs): - """SetValue(self, String value)""" + """ + SetValue(self, String value) + + Sets the text for the combo control text field. For a combo control + with wx.CB_READONLY style the string must be accepted by the popup (for + instance, exist in the dropdown list), otherwise the call to + SetValue is ignored. + """ return _combo.ComboCtrl_SetValue(*args, **kwargs) def Copy(*args, **kwargs): @@ -189,27 +257,60 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetMark(*args, **kwargs) def SetText(*args, **kwargs): - """SetText(self, String value)""" + """ + SetText(self, String value) + + Sets the text for the text field without affecting the popup. Thus, + unlike `SetValue`, it works equally well with combo control using + wx.CB_READONLY style. + """ return _combo.ComboCtrl_SetText(*args, **kwargs) def SetValueWithEvent(*args, **kwargs): - """SetValueWithEvent(self, String value, bool withEvent=True)""" + """ + SetValueWithEvent(self, String value, bool withEvent=True) + + Same as `SetValue`, but also sends a EVT_TEXT event if withEvent is true. + """ return _combo.ComboCtrl_SetValueWithEvent(*args, **kwargs) def SetPopupMinWidth(*args, **kwargs): - """SetPopupMinWidth(self, int width)""" + """ + SetPopupMinWidth(self, int width) + + Sets minimum width of the popup. If wider than combo control, it will + extend to the left. A value of -1 indicates to use the default. The + popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMinWidth(*args, **kwargs) def SetPopupMaxHeight(*args, **kwargs): - """SetPopupMaxHeight(self, int height)""" + """ + SetPopupMaxHeight(self, int height) + + Sets preferred maximum height of the popup. A value of -1 indicates to + use the default. The popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMaxHeight(*args, **kwargs) def SetPopupExtents(*args, **kwargs): - """SetPopupExtents(self, int extLeft, int extRight)""" + """ + SetPopupExtents(self, int extLeft, int extRight) + + Extends popup size horizontally, relative to the edges of the combo + control. Values are given in pixels, and the defaults are zero. It + is up to th epopup to fully take these values into account. + """ return _combo.ComboCtrl_SetPopupExtents(*args, **kwargs) def SetCustomPaintWidth(*args, **kwargs): - """SetCustomPaintWidth(self, int width)""" + """ + SetCustomPaintWidth(self, int width) + + Set width, in pixels, of custom painted area in control without + wx.CB_READONLY style. In read-only OwnerDrawnComboBox, this is used + to indicate the area that is not covered by the focus rectangle. + """ return _combo.ComboCtrl_SetCustomPaintWidth(*args, **kwargs) def GetCustomPaintWidth(*args, **kwargs): @@ -217,15 +318,29 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetCustomPaintWidth(*args, **kwargs) def SetPopupAnchor(*args, **kwargs): - """SetPopupAnchor(self, int anchorSide)""" + """ + SetPopupAnchor(self, int anchorSide) + + Set side of the control to which the popup will align itself. Valid + values are wx.LEFT, wx.RIGHT and 0. The default value 0 means that the + most appropriate side is used (which, currently, is always wx.LEFT). + """ return _combo.ComboCtrl_SetPopupAnchor(*args, **kwargs) def SetButtonPosition(*args, **kwargs): - """SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0)""" + """ + SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0) + + Set the position of the dropdown button. + """ return _combo.ComboCtrl_SetButtonPosition(*args, **kwargs) def GetButtonSize(*args, **kwargs): - """GetButtonSize(self) -> Size""" + """ + GetButtonSize(self) -> Size + + Returns current size of the dropdown button. + """ return _combo.ComboCtrl_GetButtonSize(*args, **kwargs) def SetButtonBitmaps(*args, **kwargs): @@ -233,39 +348,103 @@ class ComboCtrl(_core.Control): SetButtonBitmaps(self, Bitmap bmpNormal, bool pushButtonBg=False, Bitmap bmpPressed=wxNullBitmap, Bitmap bmpHover=wxNullBitmap, Bitmap bmpDisabled=wxNullBitmap) + + Sets custom dropdown button graphics. + + :param bmpNormal: Default button image + :param pushButtonBg: If ``True``, blank push button background is painted below the image. + :param bmpPressed: Depressed butotn image. + :param bmpHover: Button imate to use when the mouse hovers over it. + :param bmpDisabled: Disabled button image. + """ return _combo.ComboCtrl_SetButtonBitmaps(*args, **kwargs) def SetTextIndent(*args, **kwargs): - """SetTextIndent(self, int indent)""" + """ + SetTextIndent(self, int indent) + + This will set the space in pixels between left edge of the control and + the text, regardless whether control is read-only or not. A value of -1 can + be given to indicate platform default. + """ return _combo.ComboCtrl_SetTextIndent(*args, **kwargs) def GetTextIndent(*args, **kwargs): - """GetTextIndent(self) -> int""" + """ + GetTextIndent(self) -> int + + Returns actual indentation in pixels. + """ return _combo.ComboCtrl_GetTextIndent(*args, **kwargs) def GetTextRect(*args, **kwargs): - """GetTextRect(self) -> Rect""" + """ + GetTextRect(self) -> Rect + + Returns area covered by the text field (includes everything except + borders and the dropdown button). + """ return _combo.ComboCtrl_GetTextRect(*args, **kwargs) def UseAltPopupWindow(*args, **kwargs): - """UseAltPopupWindow(self, bool enable=True)""" + """ + UseAltPopupWindow(self, bool enable=True) + + Enable or disable usage of an alternative popup window, which + guarantees ability to focus the popup control, and allows common + native controls to function normally. This alternative popup window is + usually a wxDialog, and as such, when it is shown, its parent + top-level window will appear as if the focus has been lost from it. + """ return _combo.ComboCtrl_UseAltPopupWindow(*args, **kwargs) def EnablePopupAnimation(*args, **kwargs): - """EnablePopupAnimation(self, bool enable=True)""" + """ + EnablePopupAnimation(self, bool enable=True) + + Enables or disables popup animation, if any, depending on the value of + the argument. + """ return _combo.ComboCtrl_EnablePopupAnimation(*args, **kwargs) def IsKeyPopupToggle(*args, **kwargs): - """IsKeyPopupToggle(self, KeyEvent event) -> bool""" + """ + IsKeyPopupToggle(self, KeyEvent event) -> bool + + Returns true if given key combination should toggle the popup. + """ return _combo.ComboCtrl_IsKeyPopupToggle(*args, **kwargs) def PrepareBackground(*args, **kwargs): - """PrepareBackground(self, DC dc, Rect rect, int flags)""" + """ + PrepareBackground(self, DC dc, Rect rect, int flags) + + Prepare background of combo control or an item in a dropdown list in a + way typical on platform. This includes painting the focus/disabled + background and setting the clipping region. Unless you plan to paint + your own focus indicator, you should always call this in your + wxComboPopup::PaintComboControl implementation. In addition, it sets + pen and text colour to what looks good and proper against the + background. + + flags are the same as wx.RendererNative flags: + + ====================== ============================================ + wx.CONTROL_ISSUBMENU drawing a list item instead of combo control + wx.CONTROL_SELECTED list item is selected + wx.CONTROL_DISABLED control/item is disabled + ====================== ============================================ + + """ return _combo.ComboCtrl_PrepareBackground(*args, **kwargs) def ShouldDrawFocus(*args, **kwargs): - """ShouldDrawFocus(self) -> bool""" + """ + ShouldDrawFocus(self) -> bool + + Returns true if focus indicator should be drawn in the control. + """ return _combo.ComboCtrl_ShouldDrawFocus(*args, **kwargs) def GetBitmapNormal(*args, **kwargs): @@ -289,11 +468,19 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetInternalFlags(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Return true if Create has finished + """ return _combo.ComboCtrl_IsCreated(*args, **kwargs) def OnPopupDismiss(*args, **kwargs): - """OnPopupDismiss(self)""" + """ + OnPopupDismiss(self) + + Common code to be called on popup hide/dismiss + """ return _combo.ComboCtrl_OnPopupDismiss(*args, **kwargs) Hidden = _combo.ComboCtrl_Hidden @@ -312,7 +499,13 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetCtrlMainWnd(*args, **kwargs) def GetFeatures(*args, **kwargs): - """GetFeatures() -> int""" + """ + GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args, **kwargs) GetFeatures = staticmethod(GetFeatures) @@ -320,11 +513,30 @@ class ComboCtrl(_core.Control): ShowAbove = _combo.ComboCtrl_ShowAbove CanDeferShow = _combo.ComboCtrl_CanDeferShow def DoShowPopup(*args, **kwargs): - """DoShowPopup(self, Rect rect, int flags)""" + """ + DoShowPopup(self, Rect rect, int flags) + + Shows and positions the popup. + + Flags: + ============ ===================================================== + ShowBelow Showing popup below the control + ShowAbove Showing popup above the control + CanDeferShow Can only return true from AnimateShow if this is set + ============ ===================================================== + + """ return _combo.ComboCtrl_DoShowPopup(*args, **kwargs) def AnimateShow(*args, **kwargs): - """AnimateShow(self, Rect rect, int flags) -> bool""" + """ + AnimateShow(self, Rect rect, int flags) -> bool + + Implement in derived class to create a drop-down animation. Return + ``True`` if finished immediately. Otherwise the popup is only shown when the + derived class calls `DoShowPopup`. Flags are same as for `DoShowPopup`. + + """ return _combo.ComboCtrl_AnimateShow(*args, **kwargs) _combo.ComboCtrl_swigregister(ComboCtrl) @@ -335,17 +547,37 @@ def PreComboCtrl(*args, **kwargs): return val def ComboCtrl_GetFeatures(*args): - """ComboCtrl_GetFeatures() -> int""" + """ + ComboCtrl_GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args) #--------------------------------------------------------------------------- class ComboPopup(object): - """Proxy of C++ ComboPopup class""" + """ + In order to use a custom popup with `wx.combo.ComboCtrl` an interface + class derived from wx.combo.ComboPopup is used to manage the interface + between the popup control and the popup. You can either derive a new + class from both the widget class and this ComboPopup class, or the + derived class can have a reference to the widget used for the popup. + In either case you simply need to return the widget from the + `GetControl` method to allow the ComboCtrl to interact with it. + + Nearly all of the methods of this class are overridable in Python. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): - """__init__(self) -> ComboPopup""" + """ + __init__(self) -> ComboPopup + + Constructor + """ _combo.ComboPopup_swiginit(self,_combo.new_ComboPopup(*args, **kwargs)) ComboPopup._setCallbackInfo(self, self, ComboPopup) @@ -356,74 +588,173 @@ class ComboPopup(object): return _combo.ComboPopup__setCallbackInfo(*args, **kwargs) def Init(*args, **kwargs): - """Init(self)""" + """ + Init(self) + + This method is called after the popup is contructed and has been + assigned to the ComboCtrl. Derived classes can override this to do + extra inialization or whatever. + """ return _combo.ComboPopup_Init(*args, **kwargs) def Create(*args, **kwargs): - """Create(self, Window parent) -> bool""" + """ + Create(self, Window parent) -> bool + + The derived class must implement this method to create the popup + control. It should be a child of the ``parent`` passed in, but other + than that there is much flexibility in what the widget can be, its + style, etc. Return ``True`` for success, ``False`` otherwise. (NOTE: + this return value is not currently checked...) + """ return _combo.ComboPopup_Create(*args, **kwargs) def GetControl(*args, **kwargs): - """GetControl(self) -> Window""" + """ + GetControl(self) -> Window + + The derived class must implement this method and it should return a + reference to the widget created in the `Create` method. If the + derived class inherits from both the widget class and ComboPopup then + the return value is probably just ``self``. + """ return _combo.ComboPopup_GetControl(*args, **kwargs) def OnPopup(*args, **kwargs): - """OnPopup(self)""" + """ + OnPopup(self) + + The derived class may implement this to do special processing when + popup is shown. + """ return _combo.ComboPopup_OnPopup(*args, **kwargs) def OnDismiss(*args, **kwargs): - """OnDismiss(self)""" + """ + OnDismiss(self) + + The derived class may implement this to do special processing when + popup is hidden. + """ return _combo.ComboPopup_OnDismiss(*args, **kwargs) def SetStringValue(*args, **kwargs): - """SetStringValue(self, String value)""" + """ + SetStringValue(self, String value) + + Called just prior to displaying the popup. The derived class can + implement this to "select" the item in the popup that coresponds to + the passed in string value, if appropriate. The default + implementation does nothing. + """ return _combo.ComboPopup_SetStringValue(*args, **kwargs) def GetStringValue(*args, **kwargs): - """GetStringValue(self) -> String""" + """ + GetStringValue(self) -> String + + Gets the string representation of the currently selected value to be + used to display in the combo widget. + """ return _combo.ComboPopup_GetStringValue(*args, **kwargs) def PaintComboControl(*args, **kwargs): - """PaintComboControl(self, DC dc, Rect rect)""" + """ + PaintComboControl(self, DC dc, Rect rect) + + This is called to custom paint in the combo control itself (ie. not + the popup). Default implementation draws the current value as string. + """ return _combo.ComboPopup_PaintComboControl(*args, **kwargs) def OnComboKeyEvent(*args, **kwargs): - """OnComboKeyEvent(self, KeyEvent event)""" + """ + OnComboKeyEvent(self, KeyEvent event) + + Receives key events from the parent ComboCtrl. Events not handled + should be skipped, as usual. + """ return _combo.ComboPopup_OnComboKeyEvent(*args, **kwargs) def OnComboDoubleClick(*args, **kwargs): - """OnComboDoubleClick(self)""" + """ + OnComboDoubleClick(self) + + Implement this method in the derived class if you need to support + special actions when the user double-clicks on the parent ComboCtrl. + """ return _combo.ComboPopup_OnComboDoubleClick(*args, **kwargs) def GetAdjustedSize(*args, **kwargs): - """GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size""" + """ + GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size + + The derived class may implement this method to return adjusted size + for the popup control, according to the variables given. It is called + on every popup, just prior to `OnPopup`. + + :param minWidth: Preferred minimum width. + :param prefHeight: Preferred height. May be -1 to indicate no preference. + :maxWidth: Max height for window, as limited by screen size, and + should only be rounded down, if necessary. + + """ return _combo.ComboPopup_GetAdjustedSize(*args, **kwargs) def LazyCreate(*args, **kwargs): - """LazyCreate(self) -> bool""" + """ + LazyCreate(self) -> bool + + The derived class may implement this to return ``True`` if it wants to + delay the call to `Create` until the popup is shown for the first + time. It is more efficient, but on the other hand it is often more + convenient to have the control created immediately. The default + implementation returns ``False``. + """ return _combo.ComboPopup_LazyCreate(*args, **kwargs) def Dismiss(*args, **kwargs): - """Dismiss(self)""" + """ + Dismiss(self) + + Hides the popup + """ return _combo.ComboPopup_Dismiss(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Returns true if `Create` has been called. + """ return _combo.ComboPopup_IsCreated(*args, **kwargs) def DefaultPaintComboControl(*args, **kwargs): - """DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) DefaultPaintComboControl = staticmethod(DefaultPaintComboControl) def GetCombo(*args, **kwargs): - """GetCombo(self) -> ComboCtrl""" + """ + GetCombo(self) -> ComboCtrl + + Returns a reference to the `wx.combo.ComboCtrl` this ComboPopup object + is associated with. + """ return _combo.ComboPopup_GetCombo(*args, **kwargs) _combo.ComboPopup_swigregister(ComboPopup) def ComboPopup_DefaultPaintComboControl(*args, **kwargs): - """ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) #--------------------------------------------------------------------------- @@ -433,7 +764,16 @@ ODCB_STD_CONTROL_PAINT = _combo.ODCB_STD_CONTROL_PAINT ODCB_PAINTING_CONTROL = _combo.ODCB_PAINTING_CONTROL ODCB_PAINTING_SELECTED = _combo.ODCB_PAINTING_SELECTED class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): - """Proxy of C++ OwnerDrawnComboBox class""" + """ + wx.combo.OwnerDrawnComboBox is a combobox with owner-drawn list + items. In essence, it is a `wx.combo.ComboCtrl` with a `wx.VListBox` + popup and a `wx.ControlWithItems` API. + + Implementing item drawing and measuring is similar to wx.VListBox. + The application needs to subclass wx.combo.OwnerDrawnComboBox and + implement the `OnDrawItem`, `OnMeasureItem` and `OnMeasureItemWidth` + methods. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -443,10 +783,16 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> OwnerDrawnComboBox + + Standard constructor. """ _combo.OwnerDrawnComboBox_swiginit(self,_combo.new_OwnerDrawnComboBox(*args, **kwargs)) self._setOORInfo(self);OwnerDrawnComboBox._setCallbackInfo(self, self, OwnerDrawnComboBox) + def _setCallbackInfo(*args, **kwargs): + """_setCallbackInfo(self, PyObject self, PyObject _class)""" + return _combo.OwnerDrawnComboBox__setCallbackInfo(*args, **kwargs) + def Create(*args, **kwargs): """ Create(self, Window parent, int id=-1, String value=EmptyString, @@ -454,25 +800,98 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> bool + + Create the UI object, and other initialization. """ return _combo.OwnerDrawnComboBox_Create(*args, **kwargs) def GetWidestItemWidth(*args, **kwargs): - """GetWidestItemWidth(self) -> int""" + """ + GetWidestItemWidth(self) -> int + + Return the widest item width (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItemWidth(*args, **kwargs) def GetWidestItem(*args, **kwargs): - """GetWidestItem(self) -> int""" + """ + GetWidestItem(self) -> int + + Return the index of the widest item (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItem(*args, **kwargs) def SetMark(*args, **kwargs): """SetMark(self, long from, long to)""" return _combo.OwnerDrawnComboBox_SetMark(*args, **kwargs) + def OnDrawItem(*args, **kwargs): + """ + OnDrawItem(self, DC dc, Rect rect, int item, int flags) + + The derived class may implement this function to actually draw the + item with the given index on the provided DC. If this method is not + overridden, the item text is simply drawn as if the control was a + normal combobox. + + :param dc: The device context to use for drawing. + :param rect: The bounding rectangle for the item being drawn, the + DC's clipping region is set to this rectangle before + calling this method. + :param item: The index of the item to be drawn. + + :param flags: ``wx.combo.ODCB_PAINTING_CONTROL`` (The Combo control itself + is being painted, instead of a list item. The ``item`` + parameter may be ``wx.NOT_FOUND`` in this case. + ``wx.combo.ODCB_PAINTING_SELECTED`` (An item with + selection background is being painted. The DC's text colour + should already be correct. + + """ + return _combo.OwnerDrawnComboBox_OnDrawItem(*args, **kwargs) + + def OnMeasureItem(*args, **kwargs): + """ + OnMeasureItem(self, size_t item) -> int + + The derived class may implement this method to return the height of + the specified item (in pixels). The default implementation returns + text height, as if this control was a normal combobox. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItem(*args, **kwargs) + + def OnMeasureItemWidth(*args, **kwargs): + """ + OnMeasureItemWidth(self, size_t item) -> int + + The derived class may implement this method to return the width of the + specified item (in pixels). If -1 is returned, then the item text + width is used. The default implementation returns -1. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItemWidth(*args, **kwargs) + + def OnDrawBackground(*args, **kwargs): + """ + OnDrawBackground(self, DC dc, Rect rect, int item, int flags) + + This method is used to draw the items background and, maybe, a border + around it. + + The base class version implements a reasonable default behaviour which + consists in drawing the selected item with the standard background + colour and drawing a border around the item if it is either selected + or current. ``flags`` has the sam meaning as with `OnDrawItem`. + """ + return _combo.OwnerDrawnComboBox_OnDrawBackground(*args, **kwargs) + _combo.OwnerDrawnComboBox_swigregister(OwnerDrawnComboBox) def PreOwnerDrawnComboBox(*args, **kwargs): - """PreOwnerDrawnComboBox() -> OwnerDrawnComboBox""" + """ + PreOwnerDrawnComboBox() -> OwnerDrawnComboBox + + 2-phase create constructor. + """ val = _combo.new_PreOwnerDrawnComboBox(*args, **kwargs) return val diff --git a/wxPython/src/gtk/combo_wrap.cpp b/wxPython/src/gtk/combo_wrap.cpp index a4fcb2d324..10ec23204f 100644 --- a/wxPython/src/gtk/combo_wrap.cpp +++ b/wxPython/src/gtk/combo_wrap.cpp @@ -2775,6 +2775,23 @@ public: wxComboCtrl::DoSetPopupControl(popup); } + virtual bool IsKeyPopupToggle( const wxKeyEvent& event ) const + { + bool found; + bool rval = false; + wxPyBlock_t blocked = wxPyBeginBlockThreads(); + if ((found = wxPyCBH_findCallback(m_myInst, "OnComboKeyEvent"))) { + PyObject* oevt = wxPyConstructObject((void*)&event, wxT("wxKeyEvent"), 0); + rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(O)", oevt)); + Py_DECREF(oevt); + } + wxPyEndBlockThreads(blocked); + if (! found) + rval = wxComboCtrl::IsKeyPopupToggle(event); + return rval; + } + + enum { ShowBelow = 0x0000, // Showing popup below the control @@ -2783,6 +2800,8 @@ public: }; + DEC_PYCALLBACK_VOID_(ShowPopup); + DEC_PYCALLBACK_VOID_(HidePopup); DEC_PYCALLBACK_VOID_(OnButtonClick); DEC_PYCALLBACK__RECTINT(DoShowPopup); DEC_PYCALLBACK_BOOL_RECTINT(AnimateShow); @@ -2792,6 +2811,8 @@ public: IMPLEMENT_ABSTRACT_CLASS(wxPyComboCtrl, wxComboCtrl); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, ShowPopup); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, HidePopup); IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, OnButtonClick); IMP_PYCALLBACK__RECTINT(wxPyComboCtrl, wxComboCtrl, DoShowPopup); IMP_PYCALLBACK_BOOL_RECTINT(wxPyComboCtrl, wxComboCtrl, AnimateShow); @@ -3013,6 +3034,29 @@ IMP_PYCALLBACK_COORD_SIZET_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, O IMP_PYCALLBACK__DCRECTINTINT_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, OnDrawBackground); + +SWIGINTERN int +SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val) +{ + long v = 0; + if (SWIG_AsVal_long(obj, &v) && v < 0) { + return SWIG_TypeError; + } + else if (val) + *val = (unsigned long)v; + return SWIG_OK; +} + + +SWIGINTERNINLINE int +SWIG_AsVal_size_t (PyObject * obj, size_t *val) +{ + unsigned long v; + int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0); + if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v); + return res; +} + #ifdef __cplusplus extern "C" { #endif @@ -6051,6 +6095,41 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox__setCallbackInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + PyObject *arg2 = (PyObject *) 0 ; + PyObject *arg3 = (PyObject *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "self",(char *) "_class", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:OwnerDrawnComboBox__setCallbackInfo",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox__setCallbackInfo" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + arg2 = obj1; + arg3 = obj2; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->_setCallbackInfo(arg2,arg3); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_Create(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; @@ -6319,6 +6398,216 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawItem",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawItem(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItem",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItem(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItemWidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItemWidth",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItemWidth(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawBackground(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *OwnerDrawnComboBox_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -6414,10 +6703,15 @@ static PyMethodDef SwigMethods[] = { { (char *)"ComboPopup_swiginit", ComboPopup_swiginit, METH_VARARGS, NULL}, { (char *)"new_OwnerDrawnComboBox", (PyCFunction) _wrap_new_OwnerDrawnComboBox, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"new_PreOwnerDrawnComboBox", (PyCFunction)_wrap_new_PreOwnerDrawnComboBox, METH_NOARGS, NULL}, + { (char *)"OwnerDrawnComboBox__setCallbackInfo", (PyCFunction) _wrap_OwnerDrawnComboBox__setCallbackInfo, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_Create", (PyCFunction) _wrap_OwnerDrawnComboBox_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItemWidth", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItemWidth, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItem", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItem, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_SetMark", (PyCFunction) _wrap_OwnerDrawnComboBox_SetMark, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItemWidth", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItemWidth, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawBackground", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawBackground, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_swigregister", OwnerDrawnComboBox_swigregister, METH_VARARGS, NULL}, { (char *)"OwnerDrawnComboBox_swiginit", OwnerDrawnComboBox_swiginit, METH_VARARGS, NULL}, { NULL, NULL, 0, NULL } @@ -8359,6 +8653,7 @@ SWIGEXPORT void SWIG_init(void) { // Map renamed classes back to their common name for OOR wxPyPtrTypeMap_Add("wxComboCtrl", "wxPyComboCtrl"); wxPyPtrTypeMap_Add("wxComboPopup", "wxPyComboPopup"); + wxPyPtrTypeMap_Add("wxOwnerDrawnComboBox", "wxPyOwnerDrawnComboBox"); } diff --git a/wxPython/src/mac/_core.py b/wxPython/src/mac/_core.py index 27f94c41b5..ad1b0401e2 100644 --- a/wxPython/src/mac/_core.py +++ b/wxPython/src/mac/_core.py @@ -7247,7 +7247,7 @@ class PyApp(EvtHandler): def SetUseBestVisual(*args, **kwargs): """ - SetUseBestVisual(self, bool flag) + SetUseBestVisual(self, bool flag, bool forceTrueColour=False) Set whether the app should try to use the best available visual on systems where more than one is available, (Sun, SGI, XFree86 4, etc.) diff --git a/wxPython/src/mac/_core_wrap.cpp b/wxPython/src/mac/_core_wrap.cpp index cd66e31019..3d6e2fc8e4 100644 --- a/wxPython/src/mac/_core_wrap.cpp +++ b/wxPython/src/mac/_core_wrap.cpp @@ -30804,17 +30804,21 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) PyObject *resultobj = 0; wxPyApp *arg1 = (wxPyApp *) 0 ; bool arg2 ; + bool arg3 = (bool) false ; void *argp1 = 0 ; int res1 = 0 ; bool val2 ; int ecode2 = 0 ; + bool val3 ; + int ecode3 = 0 ; PyObject * obj0 = 0 ; PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; char * kwnames[] = { - (char *) "self",(char *) "flag", NULL + (char *) "self",(char *) "flag",(char *) "forceTrueColour", NULL }; - if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1)) SWIG_fail; + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyApp, 0 | 0 ); if (!SWIG_IsOK(res1)) { SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "1"" of type '" "wxPyApp *""'"); @@ -30825,9 +30829,16 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "2"" of type '" "bool""'"); } arg2 = static_cast< bool >(val2); + if (obj2) { + ecode3 = SWIG_AsVal_bool(obj2, &val3); + if (!SWIG_IsOK(ecode3)) { + SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "3"" of type '" "bool""'"); + } + arg3 = static_cast< bool >(val3); + } { PyThreadState* __tstate = wxPyBeginAllowThreads(); - (arg1)->SetUseBestVisual(arg2); + (arg1)->SetUseBestVisual(arg2,arg3); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } diff --git a/wxPython/src/mac/aui.py b/wxPython/src/mac/aui.py index f7268401a7..4de1f4c3e8 100644 --- a/wxPython/src/mac/aui.py +++ b/wxPython/src/mac/aui.py @@ -171,23 +171,23 @@ AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT -AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE -AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE -AUI_ART_GRIPPER_SIZE = _aui.AUI_ART_GRIPPER_SIZE -AUI_ART_PANE_BORDER_SIZE = _aui.AUI_ART_PANE_BORDER_SIZE -AUI_ART_PANE_BUTTON_SIZE = _aui.AUI_ART_PANE_BUTTON_SIZE -AUI_ART_BACKGROUND_COLOUR = _aui.AUI_ART_BACKGROUND_COLOUR -AUI_ART_SASH_COLOUR = _aui.AUI_ART_SASH_COLOUR -AUI_ART_ACTIVE_CAPTION_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_COLOUR -AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_INACTIVE_CAPTION_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_COLOUR -AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_BORDER_COLOUR = _aui.AUI_ART_BORDER_COLOUR -AUI_ART_GRIPPER_COLOUR = _aui.AUI_ART_GRIPPER_COLOUR -AUI_ART_CAPTION_FONT = _aui.AUI_ART_CAPTION_FONT -AUI_ART_GRADIENT_TYPE = _aui.AUI_ART_GRADIENT_TYPE +AUI_DOCKART_SASH_SIZE = _aui.AUI_DOCKART_SASH_SIZE +AUI_DOCKART_CAPTION_SIZE = _aui.AUI_DOCKART_CAPTION_SIZE +AUI_DOCKART_GRIPPER_SIZE = _aui.AUI_DOCKART_GRIPPER_SIZE +AUI_DOCKART_PANE_BORDER_SIZE = _aui.AUI_DOCKART_PANE_BORDER_SIZE +AUI_DOCKART_PANE_BUTTON_SIZE = _aui.AUI_DOCKART_PANE_BUTTON_SIZE +AUI_DOCKART_BACKGROUND_COLOUR = _aui.AUI_DOCKART_BACKGROUND_COLOUR +AUI_DOCKART_SASH_COLOUR = _aui.AUI_DOCKART_SASH_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_BORDER_COLOUR = _aui.AUI_DOCKART_BORDER_COLOUR +AUI_DOCKART_GRIPPER_COLOUR = _aui.AUI_DOCKART_GRIPPER_COLOUR +AUI_DOCKART_CAPTION_FONT = _aui.AUI_DOCKART_CAPTION_FONT +AUI_DOCKART_GRADIENT_TYPE = _aui.AUI_DOCKART_GRADIENT_TYPE AUI_GRADIENT_NONE = _aui.AUI_GRADIENT_NONE AUI_GRADIENT_VERTICAL = _aui.AUI_GRADIENT_VERTICAL AUI_GRADIENT_HORIZONTAL = _aui.AUI_GRADIENT_HORIZONTAL @@ -196,6 +196,7 @@ AUI_BUTTON_STATE_HOVER = _aui.AUI_BUTTON_STATE_HOVER AUI_BUTTON_STATE_PRESSED = _aui.AUI_BUTTON_STATE_PRESSED AUI_BUTTON_STATE_DISABLED = _aui.AUI_BUTTON_STATE_DISABLED AUI_BUTTON_STATE_HIDDEN = _aui.AUI_BUTTON_STATE_HIDDEN +AUI_BUTTON_STATE_CHECKED = _aui.AUI_BUTTON_STATE_CHECKED AUI_BUTTON_CLOSE = _aui.AUI_BUTTON_CLOSE AUI_BUTTON_MAXIMIZE_RESTORE = _aui.AUI_BUTTON_MAXIMIZE_RESTORE AUI_BUTTON_MINIMIZE = _aui.AUI_BUTTON_MINIMIZE @@ -592,6 +593,11 @@ class AuiManager(_core.EvtHandler): """GetManagedWindow(self) -> Window""" return _aui.AuiManager_GetManagedWindow(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + + GetManager = staticmethod(GetManager) def SetArtProvider(*args, **kwargs): """SetArtProvider(self, AuiDockArt art_provider)""" return _aui.AuiManager_SetArtProvider(*args, **kwargs) @@ -753,6 +759,10 @@ class AuiManager(_core.EvtHandler): ManagedWindow = property(GetManagedWindow,SetManagedWindow,doc="See `GetManagedWindow` and `SetManagedWindow`") _aui.AuiManager_swigregister(AuiManager) +def AuiManager_GetManager(*args, **kwargs): + """AuiManager_GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + class AuiManagerEvent(_core.Event): """Proxy of C++ AuiManagerEvent class""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') @@ -764,6 +774,10 @@ class AuiManagerEvent(_core.Event): """Clone(self) -> Event""" return _aui.AuiManagerEvent_Clone(*args, **kwargs) + def SetManager(*args, **kwargs): + """SetManager(self, AuiManager mgr)""" + return _aui.AuiManagerEvent_SetManager(*args, **kwargs) + def SetPane(*args, **kwargs): """SetPane(self, AuiPaneInfo p)""" return _aui.AuiManagerEvent_SetPane(*args, **kwargs) @@ -776,6 +790,10 @@ class AuiManagerEvent(_core.Event): """SetDC(self, DC pdc)""" return _aui.AuiManagerEvent_SetDC(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(self) -> AuiManager""" + return _aui.AuiManagerEvent_GetManager(*args, **kwargs) + def GetPane(*args, **kwargs): """GetPane(self) -> AuiPaneInfo""" return _aui.AuiManagerEvent_GetPane(*args, **kwargs) @@ -804,6 +822,7 @@ class AuiManagerEvent(_core.Event): """CanVeto(self) -> bool""" return _aui.AuiManagerEvent_CanVeto(*args, **kwargs) + manager = property(_aui.AuiManagerEvent_manager_get, _aui.AuiManagerEvent_manager_set) pane = property(_aui.AuiManagerEvent_pane_get, _aui.AuiManagerEvent_pane_set) button = property(_aui.AuiManagerEvent_button_get, _aui.AuiManagerEvent_button_set) veto_flag = property(_aui.AuiManagerEvent_veto_flag_get, _aui.AuiManagerEvent_veto_flag_set) @@ -888,11 +907,13 @@ wxEVT_AUI_PANECLOSE = _aui.wxEVT_AUI_PANECLOSE wxEVT_AUI_PANEMAXIMIZE = _aui.wxEVT_AUI_PANEMAXIMIZE wxEVT_AUI_PANERESTORE = _aui.wxEVT_AUI_PANERESTORE wxEVT_AUI_RENDER = _aui.wxEVT_AUI_RENDER +wxEVT_AUI_FINDMANAGER = _aui.wxEVT_AUI_FINDMANAGER EVT_AUI_PANEBUTTON = wx.PyEventBinder( wxEVT_AUI_PANEBUTTON ) EVT_AUI_PANECLOSE = wx.PyEventBinder( wxEVT_AUI_PANECLOSE ) EVT_AUI_PANEMAXIMIZE = wx.PyEventBinder( wxEVT_AUI_PANEMAXIMIZE ) EVT_AUI_PANERESTORE = wx.PyEventBinder( wxEVT_AUI_PANERESTORE ) EVT_AUI_RENDER = wx.PyEventBinder( wxEVT_AUI_RENDER ) +EVT_AUI_FINDMANAGER = wx.PyEventBinder( wxEVT_AUI_FINDMANAGER ) class AuiDockArt(object): """Proxy of C++ AuiDockArt class""" @@ -987,6 +1008,10 @@ class AuiFloatingFrame(_windows.MiniFrame): """SetPaneWindow(self, AuiPaneInfo pane)""" return _aui.AuiFloatingFrame_SetPaneWindow(*args, **kwargs) + def GetOwnerManager(*args, **kwargs): + """GetOwnerManager(self) -> AuiManager""" + return _aui.AuiFloatingFrame_GetOwnerManager(*args, **kwargs) + _aui.AuiFloatingFrame_swigregister(AuiFloatingFrame) AUI_NB_TOP = _aui.AUI_NB_TOP diff --git a/wxPython/src/mac/aui_wrap.cpp b/wxPython/src/mac/aui_wrap.cpp index a0b8b9a7ce..8d1a3e3479 100644 --- a/wxPython/src/mac/aui_wrap.cpp +++ b/wxPython/src/mac/aui_wrap.cpp @@ -7357,6 +7357,36 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManager_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxWindow *arg1 = (wxWindow *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + char * kwnames[] = { + (char *) "window", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AuiManager_GetManager",kwnames,&obj0)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManager_GetManager" "', expected argument " "1"" of type '" "wxWindow *""'"); + } + arg1 = reinterpret_cast< wxWindow * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)wxAuiManager::GetManager(arg1); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManager_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManager *arg1 = (wxAuiManager *) 0 ; @@ -8577,6 +8607,44 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "mgr", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiManagerEvent_SetManager",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxAuiManager, 0 | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetManager(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8691,6 +8759,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiManagerEvent const *)arg1)->GetManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8703,12 +8799,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxAuiPaneInfo *)(arg1)->GetPane(); + result = (wxAuiPaneInfo *)((wxAuiManagerEvent const *)arg1)->GetPane(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8731,12 +8827,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetButton(PyObject *SWIGUNUSEDPARM(se swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (int)(arg1)->GetButton(); + result = (int)((wxAuiManagerEvent const *)arg1)->GetButton(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8759,12 +8855,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetDC(PyObject *SWIGUNUSEDPARM(self), swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxDC *)(arg1)->GetDC(); + result = (wxDC *)((wxAuiManagerEvent const *)arg1)->GetDC(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8915,6 +9011,59 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject *swig_obj[2] ; + + if (!SWIG_Python_UnpackTuple(args,"AuiManagerEvent_manager_set",2,2,swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxAuiManager, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + if (arg1) (arg1)->manager = arg2; + + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_get" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + result = (wxAuiManager *) ((arg1)->manager); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_pane_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -11433,6 +11582,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiFloatingFrame_GetOwnerManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiFloatingFrame *arg1 = (wxAuiFloatingFrame *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiFloatingFrame, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiFloatingFrame_GetOwnerManager" "', expected argument " "1"" of type '" "wxAuiFloatingFrame const *""'"); + } + arg1 = reinterpret_cast< wxAuiFloatingFrame * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiFloatingFrame const *)arg1)->GetOwnerManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *AuiFloatingFrame_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -15765,6 +15942,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_GetFlags", (PyCFunction)_wrap_AuiManager_GetFlags, METH_O, NULL}, { (char *)"AuiManager_SetManagedWindow", (PyCFunction) _wrap_AuiManager_SetManagedWindow, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetManagedWindow", (PyCFunction)_wrap_AuiManager_GetManagedWindow, METH_O, NULL}, + { (char *)"AuiManager_GetManager", (PyCFunction) _wrap_AuiManager_GetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_SetArtProvider", (PyCFunction) _wrap_AuiManager_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetArtProvider", (PyCFunction)_wrap_AuiManager_GetArtProvider, METH_O, NULL}, { (char *)"AuiManager__GetPaneByWidget", (PyCFunction) _wrap_AuiManager__GetPaneByWidget, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -15795,9 +15973,11 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_swiginit", AuiManager_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiManagerEvent", (PyCFunction) _wrap_new_AuiManagerEvent, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_Clone", (PyCFunction)_wrap_AuiManagerEvent_Clone, METH_O, NULL}, + { (char *)"AuiManagerEvent_SetManager", (PyCFunction) _wrap_AuiManagerEvent_SetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetPane", (PyCFunction) _wrap_AuiManagerEvent_SetPane, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetButton", (PyCFunction) _wrap_AuiManagerEvent_SetButton, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetDC", (PyCFunction) _wrap_AuiManagerEvent_SetDC, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiManagerEvent_GetManager", (PyCFunction)_wrap_AuiManagerEvent_GetManager, METH_O, NULL}, { (char *)"AuiManagerEvent_GetPane", (PyCFunction)_wrap_AuiManagerEvent_GetPane, METH_O, NULL}, { (char *)"AuiManagerEvent_GetButton", (PyCFunction)_wrap_AuiManagerEvent_GetButton, METH_O, NULL}, { (char *)"AuiManagerEvent_GetDC", (PyCFunction)_wrap_AuiManagerEvent_GetDC, METH_O, NULL}, @@ -15805,6 +15985,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManagerEvent_GetVeto", (PyCFunction)_wrap_AuiManagerEvent_GetVeto, METH_O, NULL}, { (char *)"AuiManagerEvent_SetCanVeto", (PyCFunction) _wrap_AuiManagerEvent_SetCanVeto, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_CanVeto", (PyCFunction)_wrap_AuiManagerEvent_CanVeto, METH_O, NULL}, + { (char *)"AuiManagerEvent_manager_set", _wrap_AuiManagerEvent_manager_set, METH_VARARGS, NULL}, + { (char *)"AuiManagerEvent_manager_get", (PyCFunction)_wrap_AuiManagerEvent_manager_get, METH_O, NULL}, { (char *)"AuiManagerEvent_pane_set", _wrap_AuiManagerEvent_pane_set, METH_VARARGS, NULL}, { (char *)"AuiManagerEvent_pane_get", (PyCFunction)_wrap_AuiManagerEvent_pane_get, METH_O, NULL}, { (char *)"AuiManagerEvent_button_set", _wrap_AuiManagerEvent_button_set, METH_VARARGS, NULL}, @@ -15888,6 +16070,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"new_AuiFloatingFrame", (PyCFunction) _wrap_new_AuiFloatingFrame, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_AuiFloatingFrame", (PyCFunction)_wrap_delete_AuiFloatingFrame, METH_O, NULL}, { (char *)"AuiFloatingFrame_SetPaneWindow", (PyCFunction) _wrap_AuiFloatingFrame_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiFloatingFrame_GetOwnerManager", (PyCFunction)_wrap_AuiFloatingFrame_GetOwnerManager, METH_O, NULL}, { (char *)"AuiFloatingFrame_swigregister", AuiFloatingFrame_swigregister, METH_VARARGS, NULL}, { (char *)"AuiFloatingFrame_swiginit", AuiFloatingFrame_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -18707,23 +18890,23 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BORDER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BUTTON_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BACKGROUND_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BORDER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_FONT))); - SWIG_Python_SetConstant(d, "AUI_ART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRADIENT_TYPE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BORDER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BUTTON_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BACKGROUND_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BORDER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_FONT))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRADIENT_TYPE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_NONE",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_NONE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_VERTICAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_VERTICAL))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_HORIZONTAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_HORIZONTAL))); @@ -18732,6 +18915,7 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_PRESSED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_PRESSED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_DISABLED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_DISABLED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_HIDDEN",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_HIDDEN))); + SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_CHECKED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_CHECKED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_CLOSE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_CLOSE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MAXIMIZE_RESTORE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MAXIMIZE_RESTORE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MINIMIZE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MINIMIZE))); @@ -18791,6 +18975,7 @@ SWIGEXPORT void SWIG_init(void) { PyDict_SetItemString(d, "wxEVT_AUI_PANEMAXIMIZE", PyInt_FromLong(wxEVT_AUI_PANEMAXIMIZE)); PyDict_SetItemString(d, "wxEVT_AUI_PANERESTORE", PyInt_FromLong(wxEVT_AUI_PANERESTORE)); PyDict_SetItemString(d, "wxEVT_AUI_RENDER", PyInt_FromLong(wxEVT_AUI_RENDER)); + PyDict_SetItemString(d, "wxEVT_AUI_FINDMANAGER", PyInt_FromLong(wxEVT_AUI_FINDMANAGER)); SWIG_Python_SetConstant(d, "AUI_NB_TOP",SWIG_From_int(static_cast< int >(wxAUI_NB_TOP))); SWIG_Python_SetConstant(d, "AUI_NB_LEFT",SWIG_From_int(static_cast< int >(wxAUI_NB_LEFT))); SWIG_Python_SetConstant(d, "AUI_NB_RIGHT",SWIG_From_int(static_cast< int >(wxAUI_NB_RIGHT))); diff --git a/wxPython/src/mac/combo.py b/wxPython/src/mac/combo.py index 38b097c587..9b15b384e3 100644 --- a/wxPython/src/mac/combo.py +++ b/wxPython/src/mac/combo.py @@ -68,7 +68,10 @@ CC_NO_TEXT_AUTO_SELECT = _combo.CC_NO_TEXT_AUTO_SELECT CC_MF_ON_BUTTON = _combo.CC_MF_ON_BUTTON CC_MF_ON_CLICK_AREA = _combo.CC_MF_ON_CLICK_AREA class ComboCtrlFeatures(object): - """Proxy of C++ ComboCtrlFeatures class""" + """ + Namespace for `wx.combo.ComboCtrl` feature flags. See + `wx.combo.ComboCtrl.GetFeatures`. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') def __init__(self): raise AttributeError, "No constructor defined" __repr__ = _swig_repr @@ -83,7 +86,19 @@ class ComboCtrlFeatures(object): _combo.ComboCtrlFeatures_swigregister(ComboCtrlFeatures) class ComboCtrl(_core.Control): - """Proxy of C++ ComboCtrl class""" + """ + A combo control is a generic combobox that allows for a totally custom + popup. In addition it has other customization features. For instance, + position and size of the dropdown button can be changed. + + To specify what to use for the popup control you need to derive a + class from `wx.combo.ComboPopup` and pass it to the ComboCtrl with + `SetPopupControl`. It doesn't derive from any widget class so it can + be used either as a mixin class combined with some standard or custom + widget, or you can use the derived ComboPopup to create and hold an + independent reference to the widget to be used for the popup. + + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -101,47 +116,100 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl__setCallbackInfo(*args, **kwargs) def ShowPopup(*args, **kwargs): - """ShowPopup(self)""" + """ + ShowPopup(self) + + Show the popup window. + """ return _combo.ComboCtrl_ShowPopup(*args, **kwargs) def HidePopup(*args, **kwargs): - """HidePopup(self)""" + """ + HidePopup(self) + + Dismisses the popup window. + """ return _combo.ComboCtrl_HidePopup(*args, **kwargs) def OnButtonClick(*args, **kwargs): - """OnButtonClick(self)""" + """ + OnButtonClick(self) + + Implement in a derived class to define what happens on dropdown button + click. Default action is to show the popup. + """ return _combo.ComboCtrl_OnButtonClick(*args, **kwargs) def IsPopupShown(*args, **kwargs): - """IsPopupShown(self) -> bool""" + """ + IsPopupShown(self) -> bool + + Returns true if the popup is currently shown. + """ return _combo.ComboCtrl_IsPopupShown(*args, **kwargs) def SetPopupControl(*args, **kwargs): - """SetPopupControl(self, ComboPopup popup)""" + """ + SetPopupControl(self, ComboPopup popup) + + Set popup interface class derived from `wx.combo.ComboPopup`. This + method should be called as soon as possible after the control has been + created, unless `OnButtonClick` has been overridden. + """ return _combo.ComboCtrl_SetPopupControl(*args, **kwargs) def GetPopupControl(*args, **kwargs): - """GetPopupControl(self) -> ComboPopup""" + """ + GetPopupControl(self) -> ComboPopup + + Returns the current popup interface that has been set with + `SetPopupControl`. + """ return _combo.ComboCtrl_GetPopupControl(*args, **kwargs) def GetPopupWindow(*args, **kwargs): - """GetPopupWindow(self) -> Window""" + """ + GetPopupWindow(self) -> Window + + Returns the popup window containing the popup control. + """ return _combo.ComboCtrl_GetPopupWindow(*args, **kwargs) def GetTextCtrl(*args, **kwargs): - """GetTextCtrl(self) -> wxTextCtrl""" + """ + GetTextCtrl(self) -> wxTextCtrl + + Get the text control which is part of the combo control. + """ return _combo.ComboCtrl_GetTextCtrl(*args, **kwargs) def GetButton(*args, **kwargs): - """GetButton(self) -> Window""" + """ + GetButton(self) -> Window + + Get the dropdown button which is part of the combobox. Note: it's not + necessarily a wx.Button or wx.BitmapButton. + """ return _combo.ComboCtrl_GetButton(*args, **kwargs) def GetValue(*args, **kwargs): - """GetValue(self) -> String""" + """ + GetValue(self) -> String + + Returns text representation of the current value. For writable combo + control it always returns the value in the text field. + """ return _combo.ComboCtrl_GetValue(*args, **kwargs) def SetValue(*args, **kwargs): - """SetValue(self, String value)""" + """ + SetValue(self, String value) + + Sets the text for the combo control text field. For a combo control + with wx.CB_READONLY style the string must be accepted by the popup (for + instance, exist in the dropdown list), otherwise the call to + SetValue is ignored. + """ return _combo.ComboCtrl_SetValue(*args, **kwargs) def Copy(*args, **kwargs): @@ -189,27 +257,60 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetMark(*args, **kwargs) def SetText(*args, **kwargs): - """SetText(self, String value)""" + """ + SetText(self, String value) + + Sets the text for the text field without affecting the popup. Thus, + unlike `SetValue`, it works equally well with combo control using + wx.CB_READONLY style. + """ return _combo.ComboCtrl_SetText(*args, **kwargs) def SetValueWithEvent(*args, **kwargs): - """SetValueWithEvent(self, String value, bool withEvent=True)""" + """ + SetValueWithEvent(self, String value, bool withEvent=True) + + Same as `SetValue`, but also sends a EVT_TEXT event if withEvent is true. + """ return _combo.ComboCtrl_SetValueWithEvent(*args, **kwargs) def SetPopupMinWidth(*args, **kwargs): - """SetPopupMinWidth(self, int width)""" + """ + SetPopupMinWidth(self, int width) + + Sets minimum width of the popup. If wider than combo control, it will + extend to the left. A value of -1 indicates to use the default. The + popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMinWidth(*args, **kwargs) def SetPopupMaxHeight(*args, **kwargs): - """SetPopupMaxHeight(self, int height)""" + """ + SetPopupMaxHeight(self, int height) + + Sets preferred maximum height of the popup. A value of -1 indicates to + use the default. The popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMaxHeight(*args, **kwargs) def SetPopupExtents(*args, **kwargs): - """SetPopupExtents(self, int extLeft, int extRight)""" + """ + SetPopupExtents(self, int extLeft, int extRight) + + Extends popup size horizontally, relative to the edges of the combo + control. Values are given in pixels, and the defaults are zero. It + is up to th epopup to fully take these values into account. + """ return _combo.ComboCtrl_SetPopupExtents(*args, **kwargs) def SetCustomPaintWidth(*args, **kwargs): - """SetCustomPaintWidth(self, int width)""" + """ + SetCustomPaintWidth(self, int width) + + Set width, in pixels, of custom painted area in control without + wx.CB_READONLY style. In read-only OwnerDrawnComboBox, this is used + to indicate the area that is not covered by the focus rectangle. + """ return _combo.ComboCtrl_SetCustomPaintWidth(*args, **kwargs) def GetCustomPaintWidth(*args, **kwargs): @@ -217,15 +318,29 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetCustomPaintWidth(*args, **kwargs) def SetPopupAnchor(*args, **kwargs): - """SetPopupAnchor(self, int anchorSide)""" + """ + SetPopupAnchor(self, int anchorSide) + + Set side of the control to which the popup will align itself. Valid + values are wx.LEFT, wx.RIGHT and 0. The default value 0 means that the + most appropriate side is used (which, currently, is always wx.LEFT). + """ return _combo.ComboCtrl_SetPopupAnchor(*args, **kwargs) def SetButtonPosition(*args, **kwargs): - """SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0)""" + """ + SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0) + + Set the position of the dropdown button. + """ return _combo.ComboCtrl_SetButtonPosition(*args, **kwargs) def GetButtonSize(*args, **kwargs): - """GetButtonSize(self) -> Size""" + """ + GetButtonSize(self) -> Size + + Returns current size of the dropdown button. + """ return _combo.ComboCtrl_GetButtonSize(*args, **kwargs) def SetButtonBitmaps(*args, **kwargs): @@ -233,39 +348,103 @@ class ComboCtrl(_core.Control): SetButtonBitmaps(self, Bitmap bmpNormal, bool pushButtonBg=False, Bitmap bmpPressed=wxNullBitmap, Bitmap bmpHover=wxNullBitmap, Bitmap bmpDisabled=wxNullBitmap) + + Sets custom dropdown button graphics. + + :param bmpNormal: Default button image + :param pushButtonBg: If ``True``, blank push button background is painted below the image. + :param bmpPressed: Depressed butotn image. + :param bmpHover: Button imate to use when the mouse hovers over it. + :param bmpDisabled: Disabled button image. + """ return _combo.ComboCtrl_SetButtonBitmaps(*args, **kwargs) def SetTextIndent(*args, **kwargs): - """SetTextIndent(self, int indent)""" + """ + SetTextIndent(self, int indent) + + This will set the space in pixels between left edge of the control and + the text, regardless whether control is read-only or not. A value of -1 can + be given to indicate platform default. + """ return _combo.ComboCtrl_SetTextIndent(*args, **kwargs) def GetTextIndent(*args, **kwargs): - """GetTextIndent(self) -> int""" + """ + GetTextIndent(self) -> int + + Returns actual indentation in pixels. + """ return _combo.ComboCtrl_GetTextIndent(*args, **kwargs) def GetTextRect(*args, **kwargs): - """GetTextRect(self) -> Rect""" + """ + GetTextRect(self) -> Rect + + Returns area covered by the text field (includes everything except + borders and the dropdown button). + """ return _combo.ComboCtrl_GetTextRect(*args, **kwargs) def UseAltPopupWindow(*args, **kwargs): - """UseAltPopupWindow(self, bool enable=True)""" + """ + UseAltPopupWindow(self, bool enable=True) + + Enable or disable usage of an alternative popup window, which + guarantees ability to focus the popup control, and allows common + native controls to function normally. This alternative popup window is + usually a wxDialog, and as such, when it is shown, its parent + top-level window will appear as if the focus has been lost from it. + """ return _combo.ComboCtrl_UseAltPopupWindow(*args, **kwargs) def EnablePopupAnimation(*args, **kwargs): - """EnablePopupAnimation(self, bool enable=True)""" + """ + EnablePopupAnimation(self, bool enable=True) + + Enables or disables popup animation, if any, depending on the value of + the argument. + """ return _combo.ComboCtrl_EnablePopupAnimation(*args, **kwargs) def IsKeyPopupToggle(*args, **kwargs): - """IsKeyPopupToggle(self, KeyEvent event) -> bool""" + """ + IsKeyPopupToggle(self, KeyEvent event) -> bool + + Returns true if given key combination should toggle the popup. + """ return _combo.ComboCtrl_IsKeyPopupToggle(*args, **kwargs) def PrepareBackground(*args, **kwargs): - """PrepareBackground(self, DC dc, Rect rect, int flags)""" + """ + PrepareBackground(self, DC dc, Rect rect, int flags) + + Prepare background of combo control or an item in a dropdown list in a + way typical on platform. This includes painting the focus/disabled + background and setting the clipping region. Unless you plan to paint + your own focus indicator, you should always call this in your + wxComboPopup::PaintComboControl implementation. In addition, it sets + pen and text colour to what looks good and proper against the + background. + + flags are the same as wx.RendererNative flags: + + ====================== ============================================ + wx.CONTROL_ISSUBMENU drawing a list item instead of combo control + wx.CONTROL_SELECTED list item is selected + wx.CONTROL_DISABLED control/item is disabled + ====================== ============================================ + + """ return _combo.ComboCtrl_PrepareBackground(*args, **kwargs) def ShouldDrawFocus(*args, **kwargs): - """ShouldDrawFocus(self) -> bool""" + """ + ShouldDrawFocus(self) -> bool + + Returns true if focus indicator should be drawn in the control. + """ return _combo.ComboCtrl_ShouldDrawFocus(*args, **kwargs) def GetBitmapNormal(*args, **kwargs): @@ -289,11 +468,19 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetInternalFlags(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Return true if Create has finished + """ return _combo.ComboCtrl_IsCreated(*args, **kwargs) def OnPopupDismiss(*args, **kwargs): - """OnPopupDismiss(self)""" + """ + OnPopupDismiss(self) + + Common code to be called on popup hide/dismiss + """ return _combo.ComboCtrl_OnPopupDismiss(*args, **kwargs) Hidden = _combo.ComboCtrl_Hidden @@ -312,7 +499,13 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetCtrlMainWnd(*args, **kwargs) def GetFeatures(*args, **kwargs): - """GetFeatures() -> int""" + """ + GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args, **kwargs) GetFeatures = staticmethod(GetFeatures) @@ -320,11 +513,30 @@ class ComboCtrl(_core.Control): ShowAbove = _combo.ComboCtrl_ShowAbove CanDeferShow = _combo.ComboCtrl_CanDeferShow def DoShowPopup(*args, **kwargs): - """DoShowPopup(self, Rect rect, int flags)""" + """ + DoShowPopup(self, Rect rect, int flags) + + Shows and positions the popup. + + Flags: + ============ ===================================================== + ShowBelow Showing popup below the control + ShowAbove Showing popup above the control + CanDeferShow Can only return true from AnimateShow if this is set + ============ ===================================================== + + """ return _combo.ComboCtrl_DoShowPopup(*args, **kwargs) def AnimateShow(*args, **kwargs): - """AnimateShow(self, Rect rect, int flags) -> bool""" + """ + AnimateShow(self, Rect rect, int flags) -> bool + + Implement in derived class to create a drop-down animation. Return + ``True`` if finished immediately. Otherwise the popup is only shown when the + derived class calls `DoShowPopup`. Flags are same as for `DoShowPopup`. + + """ return _combo.ComboCtrl_AnimateShow(*args, **kwargs) _combo.ComboCtrl_swigregister(ComboCtrl) @@ -335,17 +547,37 @@ def PreComboCtrl(*args, **kwargs): return val def ComboCtrl_GetFeatures(*args): - """ComboCtrl_GetFeatures() -> int""" + """ + ComboCtrl_GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args) #--------------------------------------------------------------------------- class ComboPopup(object): - """Proxy of C++ ComboPopup class""" + """ + In order to use a custom popup with `wx.combo.ComboCtrl` an interface + class derived from wx.combo.ComboPopup is used to manage the interface + between the popup control and the popup. You can either derive a new + class from both the widget class and this ComboPopup class, or the + derived class can have a reference to the widget used for the popup. + In either case you simply need to return the widget from the + `GetControl` method to allow the ComboCtrl to interact with it. + + Nearly all of the methods of this class are overridable in Python. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): - """__init__(self) -> ComboPopup""" + """ + __init__(self) -> ComboPopup + + Constructor + """ _combo.ComboPopup_swiginit(self,_combo.new_ComboPopup(*args, **kwargs)) ComboPopup._setCallbackInfo(self, self, ComboPopup) @@ -356,74 +588,173 @@ class ComboPopup(object): return _combo.ComboPopup__setCallbackInfo(*args, **kwargs) def Init(*args, **kwargs): - """Init(self)""" + """ + Init(self) + + This method is called after the popup is contructed and has been + assigned to the ComboCtrl. Derived classes can override this to do + extra inialization or whatever. + """ return _combo.ComboPopup_Init(*args, **kwargs) def Create(*args, **kwargs): - """Create(self, Window parent) -> bool""" + """ + Create(self, Window parent) -> bool + + The derived class must implement this method to create the popup + control. It should be a child of the ``parent`` passed in, but other + than that there is much flexibility in what the widget can be, its + style, etc. Return ``True`` for success, ``False`` otherwise. (NOTE: + this return value is not currently checked...) + """ return _combo.ComboPopup_Create(*args, **kwargs) def GetControl(*args, **kwargs): - """GetControl(self) -> Window""" + """ + GetControl(self) -> Window + + The derived class must implement this method and it should return a + reference to the widget created in the `Create` method. If the + derived class inherits from both the widget class and ComboPopup then + the return value is probably just ``self``. + """ return _combo.ComboPopup_GetControl(*args, **kwargs) def OnPopup(*args, **kwargs): - """OnPopup(self)""" + """ + OnPopup(self) + + The derived class may implement this to do special processing when + popup is shown. + """ return _combo.ComboPopup_OnPopup(*args, **kwargs) def OnDismiss(*args, **kwargs): - """OnDismiss(self)""" + """ + OnDismiss(self) + + The derived class may implement this to do special processing when + popup is hidden. + """ return _combo.ComboPopup_OnDismiss(*args, **kwargs) def SetStringValue(*args, **kwargs): - """SetStringValue(self, String value)""" + """ + SetStringValue(self, String value) + + Called just prior to displaying the popup. The derived class can + implement this to "select" the item in the popup that coresponds to + the passed in string value, if appropriate. The default + implementation does nothing. + """ return _combo.ComboPopup_SetStringValue(*args, **kwargs) def GetStringValue(*args, **kwargs): - """GetStringValue(self) -> String""" + """ + GetStringValue(self) -> String + + Gets the string representation of the currently selected value to be + used to display in the combo widget. + """ return _combo.ComboPopup_GetStringValue(*args, **kwargs) def PaintComboControl(*args, **kwargs): - """PaintComboControl(self, DC dc, Rect rect)""" + """ + PaintComboControl(self, DC dc, Rect rect) + + This is called to custom paint in the combo control itself (ie. not + the popup). Default implementation draws the current value as string. + """ return _combo.ComboPopup_PaintComboControl(*args, **kwargs) def OnComboKeyEvent(*args, **kwargs): - """OnComboKeyEvent(self, KeyEvent event)""" + """ + OnComboKeyEvent(self, KeyEvent event) + + Receives key events from the parent ComboCtrl. Events not handled + should be skipped, as usual. + """ return _combo.ComboPopup_OnComboKeyEvent(*args, **kwargs) def OnComboDoubleClick(*args, **kwargs): - """OnComboDoubleClick(self)""" + """ + OnComboDoubleClick(self) + + Implement this method in the derived class if you need to support + special actions when the user double-clicks on the parent ComboCtrl. + """ return _combo.ComboPopup_OnComboDoubleClick(*args, **kwargs) def GetAdjustedSize(*args, **kwargs): - """GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size""" + """ + GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size + + The derived class may implement this method to return adjusted size + for the popup control, according to the variables given. It is called + on every popup, just prior to `OnPopup`. + + :param minWidth: Preferred minimum width. + :param prefHeight: Preferred height. May be -1 to indicate no preference. + :maxWidth: Max height for window, as limited by screen size, and + should only be rounded down, if necessary. + + """ return _combo.ComboPopup_GetAdjustedSize(*args, **kwargs) def LazyCreate(*args, **kwargs): - """LazyCreate(self) -> bool""" + """ + LazyCreate(self) -> bool + + The derived class may implement this to return ``True`` if it wants to + delay the call to `Create` until the popup is shown for the first + time. It is more efficient, but on the other hand it is often more + convenient to have the control created immediately. The default + implementation returns ``False``. + """ return _combo.ComboPopup_LazyCreate(*args, **kwargs) def Dismiss(*args, **kwargs): - """Dismiss(self)""" + """ + Dismiss(self) + + Hides the popup + """ return _combo.ComboPopup_Dismiss(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Returns true if `Create` has been called. + """ return _combo.ComboPopup_IsCreated(*args, **kwargs) def DefaultPaintComboControl(*args, **kwargs): - """DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) DefaultPaintComboControl = staticmethod(DefaultPaintComboControl) def GetCombo(*args, **kwargs): - """GetCombo(self) -> ComboCtrl""" + """ + GetCombo(self) -> ComboCtrl + + Returns a reference to the `wx.combo.ComboCtrl` this ComboPopup object + is associated with. + """ return _combo.ComboPopup_GetCombo(*args, **kwargs) _combo.ComboPopup_swigregister(ComboPopup) def ComboPopup_DefaultPaintComboControl(*args, **kwargs): - """ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) #--------------------------------------------------------------------------- @@ -433,7 +764,16 @@ ODCB_STD_CONTROL_PAINT = _combo.ODCB_STD_CONTROL_PAINT ODCB_PAINTING_CONTROL = _combo.ODCB_PAINTING_CONTROL ODCB_PAINTING_SELECTED = _combo.ODCB_PAINTING_SELECTED class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): - """Proxy of C++ OwnerDrawnComboBox class""" + """ + wx.combo.OwnerDrawnComboBox is a combobox with owner-drawn list + items. In essence, it is a `wx.combo.ComboCtrl` with a `wx.VListBox` + popup and a `wx.ControlWithItems` API. + + Implementing item drawing and measuring is similar to wx.VListBox. + The application needs to subclass wx.combo.OwnerDrawnComboBox and + implement the `OnDrawItem`, `OnMeasureItem` and `OnMeasureItemWidth` + methods. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -443,10 +783,16 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> OwnerDrawnComboBox + + Standard constructor. """ _combo.OwnerDrawnComboBox_swiginit(self,_combo.new_OwnerDrawnComboBox(*args, **kwargs)) self._setOORInfo(self);OwnerDrawnComboBox._setCallbackInfo(self, self, OwnerDrawnComboBox) + def _setCallbackInfo(*args, **kwargs): + """_setCallbackInfo(self, PyObject self, PyObject _class)""" + return _combo.OwnerDrawnComboBox__setCallbackInfo(*args, **kwargs) + def Create(*args, **kwargs): """ Create(self, Window parent, int id=-1, String value=EmptyString, @@ -454,25 +800,98 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> bool + + Create the UI object, and other initialization. """ return _combo.OwnerDrawnComboBox_Create(*args, **kwargs) def GetWidestItemWidth(*args, **kwargs): - """GetWidestItemWidth(self) -> int""" + """ + GetWidestItemWidth(self) -> int + + Return the widest item width (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItemWidth(*args, **kwargs) def GetWidestItem(*args, **kwargs): - """GetWidestItem(self) -> int""" + """ + GetWidestItem(self) -> int + + Return the index of the widest item (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItem(*args, **kwargs) def SetMark(*args, **kwargs): """SetMark(self, long from, long to)""" return _combo.OwnerDrawnComboBox_SetMark(*args, **kwargs) + def OnDrawItem(*args, **kwargs): + """ + OnDrawItem(self, DC dc, Rect rect, int item, int flags) + + The derived class may implement this function to actually draw the + item with the given index on the provided DC. If this method is not + overridden, the item text is simply drawn as if the control was a + normal combobox. + + :param dc: The device context to use for drawing. + :param rect: The bounding rectangle for the item being drawn, the + DC's clipping region is set to this rectangle before + calling this method. + :param item: The index of the item to be drawn. + + :param flags: ``wx.combo.ODCB_PAINTING_CONTROL`` (The Combo control itself + is being painted, instead of a list item. The ``item`` + parameter may be ``wx.NOT_FOUND`` in this case. + ``wx.combo.ODCB_PAINTING_SELECTED`` (An item with + selection background is being painted. The DC's text colour + should already be correct. + + """ + return _combo.OwnerDrawnComboBox_OnDrawItem(*args, **kwargs) + + def OnMeasureItem(*args, **kwargs): + """ + OnMeasureItem(self, size_t item) -> int + + The derived class may implement this method to return the height of + the specified item (in pixels). The default implementation returns + text height, as if this control was a normal combobox. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItem(*args, **kwargs) + + def OnMeasureItemWidth(*args, **kwargs): + """ + OnMeasureItemWidth(self, size_t item) -> int + + The derived class may implement this method to return the width of the + specified item (in pixels). If -1 is returned, then the item text + width is used. The default implementation returns -1. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItemWidth(*args, **kwargs) + + def OnDrawBackground(*args, **kwargs): + """ + OnDrawBackground(self, DC dc, Rect rect, int item, int flags) + + This method is used to draw the items background and, maybe, a border + around it. + + The base class version implements a reasonable default behaviour which + consists in drawing the selected item with the standard background + colour and drawing a border around the item if it is either selected + or current. ``flags`` has the sam meaning as with `OnDrawItem`. + """ + return _combo.OwnerDrawnComboBox_OnDrawBackground(*args, **kwargs) + _combo.OwnerDrawnComboBox_swigregister(OwnerDrawnComboBox) def PreOwnerDrawnComboBox(*args, **kwargs): - """PreOwnerDrawnComboBox() -> OwnerDrawnComboBox""" + """ + PreOwnerDrawnComboBox() -> OwnerDrawnComboBox + + 2-phase create constructor. + """ val = _combo.new_PreOwnerDrawnComboBox(*args, **kwargs) return val diff --git a/wxPython/src/mac/combo_wrap.cpp b/wxPython/src/mac/combo_wrap.cpp index c5ab2b8699..d19638edc1 100644 --- a/wxPython/src/mac/combo_wrap.cpp +++ b/wxPython/src/mac/combo_wrap.cpp @@ -2775,6 +2775,23 @@ public: wxComboCtrl::DoSetPopupControl(popup); } + virtual bool IsKeyPopupToggle( const wxKeyEvent& event ) const + { + bool found; + bool rval = false; + wxPyBlock_t blocked = wxPyBeginBlockThreads(); + if ((found = wxPyCBH_findCallback(m_myInst, "OnComboKeyEvent"))) { + PyObject* oevt = wxPyConstructObject((void*)&event, wxT("wxKeyEvent"), 0); + rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(O)", oevt)); + Py_DECREF(oevt); + } + wxPyEndBlockThreads(blocked); + if (! found) + rval = wxComboCtrl::IsKeyPopupToggle(event); + return rval; + } + + enum { ShowBelow = 0x0000, // Showing popup below the control @@ -2783,6 +2800,8 @@ public: }; + DEC_PYCALLBACK_VOID_(ShowPopup); + DEC_PYCALLBACK_VOID_(HidePopup); DEC_PYCALLBACK_VOID_(OnButtonClick); DEC_PYCALLBACK__RECTINT(DoShowPopup); DEC_PYCALLBACK_BOOL_RECTINT(AnimateShow); @@ -2792,6 +2811,8 @@ public: IMPLEMENT_ABSTRACT_CLASS(wxPyComboCtrl, wxComboCtrl); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, ShowPopup); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, HidePopup); IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, OnButtonClick); IMP_PYCALLBACK__RECTINT(wxPyComboCtrl, wxComboCtrl, DoShowPopup); IMP_PYCALLBACK_BOOL_RECTINT(wxPyComboCtrl, wxComboCtrl, AnimateShow); @@ -3013,6 +3034,29 @@ IMP_PYCALLBACK_COORD_SIZET_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, O IMP_PYCALLBACK__DCRECTINTINT_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, OnDrawBackground); + +SWIGINTERN int +SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val) +{ + long v = 0; + if (SWIG_AsVal_long(obj, &v) && v < 0) { + return SWIG_TypeError; + } + else if (val) + *val = (unsigned long)v; + return SWIG_OK; +} + + +SWIGINTERNINLINE int +SWIG_AsVal_size_t (PyObject * obj, size_t *val) +{ + unsigned long v; + int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0); + if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v); + return res; +} + #ifdef __cplusplus extern "C" { #endif @@ -6051,6 +6095,41 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox__setCallbackInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + PyObject *arg2 = (PyObject *) 0 ; + PyObject *arg3 = (PyObject *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "self",(char *) "_class", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:OwnerDrawnComboBox__setCallbackInfo",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox__setCallbackInfo" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + arg2 = obj1; + arg3 = obj2; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->_setCallbackInfo(arg2,arg3); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_Create(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; @@ -6319,6 +6398,216 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawItem",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawItem(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItem",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItem(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItemWidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItemWidth",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItemWidth(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawBackground(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *OwnerDrawnComboBox_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -6414,10 +6703,15 @@ static PyMethodDef SwigMethods[] = { { (char *)"ComboPopup_swiginit", ComboPopup_swiginit, METH_VARARGS, NULL}, { (char *)"new_OwnerDrawnComboBox", (PyCFunction) _wrap_new_OwnerDrawnComboBox, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"new_PreOwnerDrawnComboBox", (PyCFunction)_wrap_new_PreOwnerDrawnComboBox, METH_NOARGS, NULL}, + { (char *)"OwnerDrawnComboBox__setCallbackInfo", (PyCFunction) _wrap_OwnerDrawnComboBox__setCallbackInfo, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_Create", (PyCFunction) _wrap_OwnerDrawnComboBox_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItemWidth", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItemWidth, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItem", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItem, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_SetMark", (PyCFunction) _wrap_OwnerDrawnComboBox_SetMark, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItemWidth", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItemWidth, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawBackground", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawBackground, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_swigregister", OwnerDrawnComboBox_swigregister, METH_VARARGS, NULL}, { (char *)"OwnerDrawnComboBox_swiginit", OwnerDrawnComboBox_swiginit, METH_VARARGS, NULL}, { NULL, NULL, 0, NULL } @@ -8359,6 +8653,7 @@ SWIGEXPORT void SWIG_init(void) { // Map renamed classes back to their common name for OOR wxPyPtrTypeMap_Add("wxComboCtrl", "wxPyComboCtrl"); wxPyPtrTypeMap_Add("wxComboPopup", "wxPyComboPopup"); + wxPyPtrTypeMap_Add("wxOwnerDrawnComboBox", "wxPyOwnerDrawnComboBox"); } diff --git a/wxPython/src/msw/_core.py b/wxPython/src/msw/_core.py index 216fc30986..f1b2555834 100644 --- a/wxPython/src/msw/_core.py +++ b/wxPython/src/msw/_core.py @@ -7247,7 +7247,7 @@ class PyApp(EvtHandler): def SetUseBestVisual(*args, **kwargs): """ - SetUseBestVisual(self, bool flag) + SetUseBestVisual(self, bool flag, bool forceTrueColour=False) Set whether the app should try to use the best available visual on systems where more than one is available, (Sun, SGI, XFree86 4, etc.) diff --git a/wxPython/src/msw/_core_wrap.cpp b/wxPython/src/msw/_core_wrap.cpp index e9d9d3256d..1ab0ed448b 100644 --- a/wxPython/src/msw/_core_wrap.cpp +++ b/wxPython/src/msw/_core_wrap.cpp @@ -30789,17 +30789,21 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) PyObject *resultobj = 0; wxPyApp *arg1 = (wxPyApp *) 0 ; bool arg2 ; + bool arg3 = (bool) false ; void *argp1 = 0 ; int res1 = 0 ; bool val2 ; int ecode2 = 0 ; + bool val3 ; + int ecode3 = 0 ; PyObject * obj0 = 0 ; PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; char * kwnames[] = { - (char *) "self",(char *) "flag", NULL + (char *) "self",(char *) "flag",(char *) "forceTrueColour", NULL }; - if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1)) SWIG_fail; + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:PyApp_SetUseBestVisual",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyApp, 0 | 0 ); if (!SWIG_IsOK(res1)) { SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "1"" of type '" "wxPyApp *""'"); @@ -30810,9 +30814,16 @@ SWIGINTERN PyObject *_wrap_PyApp_SetUseBestVisual(PyObject *SWIGUNUSEDPARM(self) SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "2"" of type '" "bool""'"); } arg2 = static_cast< bool >(val2); + if (obj2) { + ecode3 = SWIG_AsVal_bool(obj2, &val3); + if (!SWIG_IsOK(ecode3)) { + SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "PyApp_SetUseBestVisual" "', expected argument " "3"" of type '" "bool""'"); + } + arg3 = static_cast< bool >(val3); + } { PyThreadState* __tstate = wxPyBeginAllowThreads(); - (arg1)->SetUseBestVisual(arg2); + (arg1)->SetUseBestVisual(arg2,arg3); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } diff --git a/wxPython/src/msw/aui.py b/wxPython/src/msw/aui.py index f7268401a7..4de1f4c3e8 100644 --- a/wxPython/src/msw/aui.py +++ b/wxPython/src/msw/aui.py @@ -171,23 +171,23 @@ AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT -AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE -AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE -AUI_ART_GRIPPER_SIZE = _aui.AUI_ART_GRIPPER_SIZE -AUI_ART_PANE_BORDER_SIZE = _aui.AUI_ART_PANE_BORDER_SIZE -AUI_ART_PANE_BUTTON_SIZE = _aui.AUI_ART_PANE_BUTTON_SIZE -AUI_ART_BACKGROUND_COLOUR = _aui.AUI_ART_BACKGROUND_COLOUR -AUI_ART_SASH_COLOUR = _aui.AUI_ART_SASH_COLOUR -AUI_ART_ACTIVE_CAPTION_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_COLOUR -AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_INACTIVE_CAPTION_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_COLOUR -AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR -AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR -AUI_ART_BORDER_COLOUR = _aui.AUI_ART_BORDER_COLOUR -AUI_ART_GRIPPER_COLOUR = _aui.AUI_ART_GRIPPER_COLOUR -AUI_ART_CAPTION_FONT = _aui.AUI_ART_CAPTION_FONT -AUI_ART_GRADIENT_TYPE = _aui.AUI_ART_GRADIENT_TYPE +AUI_DOCKART_SASH_SIZE = _aui.AUI_DOCKART_SASH_SIZE +AUI_DOCKART_CAPTION_SIZE = _aui.AUI_DOCKART_CAPTION_SIZE +AUI_DOCKART_GRIPPER_SIZE = _aui.AUI_DOCKART_GRIPPER_SIZE +AUI_DOCKART_PANE_BORDER_SIZE = _aui.AUI_DOCKART_PANE_BORDER_SIZE +AUI_DOCKART_PANE_BUTTON_SIZE = _aui.AUI_DOCKART_PANE_BUTTON_SIZE +AUI_DOCKART_BACKGROUND_COLOUR = _aui.AUI_DOCKART_BACKGROUND_COLOUR +AUI_DOCKART_SASH_COLOUR = _aui.AUI_DOCKART_SASH_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR +AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR = _aui.AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR +AUI_DOCKART_BORDER_COLOUR = _aui.AUI_DOCKART_BORDER_COLOUR +AUI_DOCKART_GRIPPER_COLOUR = _aui.AUI_DOCKART_GRIPPER_COLOUR +AUI_DOCKART_CAPTION_FONT = _aui.AUI_DOCKART_CAPTION_FONT +AUI_DOCKART_GRADIENT_TYPE = _aui.AUI_DOCKART_GRADIENT_TYPE AUI_GRADIENT_NONE = _aui.AUI_GRADIENT_NONE AUI_GRADIENT_VERTICAL = _aui.AUI_GRADIENT_VERTICAL AUI_GRADIENT_HORIZONTAL = _aui.AUI_GRADIENT_HORIZONTAL @@ -196,6 +196,7 @@ AUI_BUTTON_STATE_HOVER = _aui.AUI_BUTTON_STATE_HOVER AUI_BUTTON_STATE_PRESSED = _aui.AUI_BUTTON_STATE_PRESSED AUI_BUTTON_STATE_DISABLED = _aui.AUI_BUTTON_STATE_DISABLED AUI_BUTTON_STATE_HIDDEN = _aui.AUI_BUTTON_STATE_HIDDEN +AUI_BUTTON_STATE_CHECKED = _aui.AUI_BUTTON_STATE_CHECKED AUI_BUTTON_CLOSE = _aui.AUI_BUTTON_CLOSE AUI_BUTTON_MAXIMIZE_RESTORE = _aui.AUI_BUTTON_MAXIMIZE_RESTORE AUI_BUTTON_MINIMIZE = _aui.AUI_BUTTON_MINIMIZE @@ -592,6 +593,11 @@ class AuiManager(_core.EvtHandler): """GetManagedWindow(self) -> Window""" return _aui.AuiManager_GetManagedWindow(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + + GetManager = staticmethod(GetManager) def SetArtProvider(*args, **kwargs): """SetArtProvider(self, AuiDockArt art_provider)""" return _aui.AuiManager_SetArtProvider(*args, **kwargs) @@ -753,6 +759,10 @@ class AuiManager(_core.EvtHandler): ManagedWindow = property(GetManagedWindow,SetManagedWindow,doc="See `GetManagedWindow` and `SetManagedWindow`") _aui.AuiManager_swigregister(AuiManager) +def AuiManager_GetManager(*args, **kwargs): + """AuiManager_GetManager(Window window) -> AuiManager""" + return _aui.AuiManager_GetManager(*args, **kwargs) + class AuiManagerEvent(_core.Event): """Proxy of C++ AuiManagerEvent class""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') @@ -764,6 +774,10 @@ class AuiManagerEvent(_core.Event): """Clone(self) -> Event""" return _aui.AuiManagerEvent_Clone(*args, **kwargs) + def SetManager(*args, **kwargs): + """SetManager(self, AuiManager mgr)""" + return _aui.AuiManagerEvent_SetManager(*args, **kwargs) + def SetPane(*args, **kwargs): """SetPane(self, AuiPaneInfo p)""" return _aui.AuiManagerEvent_SetPane(*args, **kwargs) @@ -776,6 +790,10 @@ class AuiManagerEvent(_core.Event): """SetDC(self, DC pdc)""" return _aui.AuiManagerEvent_SetDC(*args, **kwargs) + def GetManager(*args, **kwargs): + """GetManager(self) -> AuiManager""" + return _aui.AuiManagerEvent_GetManager(*args, **kwargs) + def GetPane(*args, **kwargs): """GetPane(self) -> AuiPaneInfo""" return _aui.AuiManagerEvent_GetPane(*args, **kwargs) @@ -804,6 +822,7 @@ class AuiManagerEvent(_core.Event): """CanVeto(self) -> bool""" return _aui.AuiManagerEvent_CanVeto(*args, **kwargs) + manager = property(_aui.AuiManagerEvent_manager_get, _aui.AuiManagerEvent_manager_set) pane = property(_aui.AuiManagerEvent_pane_get, _aui.AuiManagerEvent_pane_set) button = property(_aui.AuiManagerEvent_button_get, _aui.AuiManagerEvent_button_set) veto_flag = property(_aui.AuiManagerEvent_veto_flag_get, _aui.AuiManagerEvent_veto_flag_set) @@ -888,11 +907,13 @@ wxEVT_AUI_PANECLOSE = _aui.wxEVT_AUI_PANECLOSE wxEVT_AUI_PANEMAXIMIZE = _aui.wxEVT_AUI_PANEMAXIMIZE wxEVT_AUI_PANERESTORE = _aui.wxEVT_AUI_PANERESTORE wxEVT_AUI_RENDER = _aui.wxEVT_AUI_RENDER +wxEVT_AUI_FINDMANAGER = _aui.wxEVT_AUI_FINDMANAGER EVT_AUI_PANEBUTTON = wx.PyEventBinder( wxEVT_AUI_PANEBUTTON ) EVT_AUI_PANECLOSE = wx.PyEventBinder( wxEVT_AUI_PANECLOSE ) EVT_AUI_PANEMAXIMIZE = wx.PyEventBinder( wxEVT_AUI_PANEMAXIMIZE ) EVT_AUI_PANERESTORE = wx.PyEventBinder( wxEVT_AUI_PANERESTORE ) EVT_AUI_RENDER = wx.PyEventBinder( wxEVT_AUI_RENDER ) +EVT_AUI_FINDMANAGER = wx.PyEventBinder( wxEVT_AUI_FINDMANAGER ) class AuiDockArt(object): """Proxy of C++ AuiDockArt class""" @@ -987,6 +1008,10 @@ class AuiFloatingFrame(_windows.MiniFrame): """SetPaneWindow(self, AuiPaneInfo pane)""" return _aui.AuiFloatingFrame_SetPaneWindow(*args, **kwargs) + def GetOwnerManager(*args, **kwargs): + """GetOwnerManager(self) -> AuiManager""" + return _aui.AuiFloatingFrame_GetOwnerManager(*args, **kwargs) + _aui.AuiFloatingFrame_swigregister(AuiFloatingFrame) AUI_NB_TOP = _aui.AUI_NB_TOP diff --git a/wxPython/src/msw/aui_wrap.cpp b/wxPython/src/msw/aui_wrap.cpp index 0e9971757e..61bb06c968 100644 --- a/wxPython/src/msw/aui_wrap.cpp +++ b/wxPython/src/msw/aui_wrap.cpp @@ -7357,6 +7357,36 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManager_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxWindow *arg1 = (wxWindow *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + char * kwnames[] = { + (char *) "window", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:AuiManager_GetManager",kwnames,&obj0)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManager_GetManager" "', expected argument " "1"" of type '" "wxWindow *""'"); + } + arg1 = reinterpret_cast< wxWindow * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)wxAuiManager::GetManager(arg1); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManager_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManager *arg1 = (wxAuiManager *) 0 ; @@ -8577,6 +8607,44 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "mgr", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiManagerEvent_SetManager",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxAuiManager, 0 | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_SetManager" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetManager(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_SetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8691,6 +8759,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetManager" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiManagerEvent const *)arg1)->GetManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -8703,12 +8799,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetPane(PyObject *SWIGUNUSEDPARM(self swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetPane" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxAuiPaneInfo *)(arg1)->GetPane(); + result = (wxAuiPaneInfo *)((wxAuiManagerEvent const *)arg1)->GetPane(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8731,12 +8827,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetButton(PyObject *SWIGUNUSEDPARM(se swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetButton" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (int)(arg1)->GetButton(); + result = (int)((wxAuiManagerEvent const *)arg1)->GetButton(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8759,12 +8855,12 @@ SWIGINTERN PyObject *_wrap_AuiManagerEvent_GetDC(PyObject *SWIGUNUSEDPARM(self), swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_GetDC" "', expected argument " "1"" of type '" "wxAuiManagerEvent const *""'"); } arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); { PyThreadState* __tstate = wxPyBeginAllowThreads(); - result = (wxDC *)(arg1)->GetDC(); + result = (wxDC *)((wxAuiManagerEvent const *)arg1)->GetDC(); wxPyEndAllowThreads(__tstate); if (PyErr_Occurred()) SWIG_fail; } @@ -8915,6 +9011,59 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *arg2 = (wxAuiManager *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + PyObject *swig_obj[2] ; + + if (!SWIG_Python_UnpackTuple(args,"AuiManagerEvent_manager_set",2,2,swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxAuiManager, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiManagerEvent_manager_set" "', expected argument " "2"" of type '" "wxAuiManager *""'"); + } + arg2 = reinterpret_cast< wxAuiManager * >(argp2); + if (arg1) (arg1)->manager = arg2; + + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_AuiManagerEvent_manager_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiManagerEvent, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiManagerEvent_manager_get" "', expected argument " "1"" of type '" "wxAuiManagerEvent *""'"); + } + arg1 = reinterpret_cast< wxAuiManagerEvent * >(argp1); + result = (wxAuiManager *) ((arg1)->manager); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_AuiManagerEvent_pane_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; wxAuiManagerEvent *arg1 = (wxAuiManagerEvent *) 0 ; @@ -11433,6 +11582,34 @@ fail: } +SWIGINTERN PyObject *_wrap_AuiFloatingFrame_GetOwnerManager(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + wxAuiFloatingFrame *arg1 = (wxAuiFloatingFrame *) 0 ; + wxAuiManager *result = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiFloatingFrame, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiFloatingFrame_GetOwnerManager" "', expected argument " "1"" of type '" "wxAuiFloatingFrame const *""'"); + } + arg1 = reinterpret_cast< wxAuiFloatingFrame * >(argp1); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (wxAuiManager *)((wxAuiFloatingFrame const *)arg1)->GetOwnerManager(); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxAuiManager, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *AuiFloatingFrame_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -15765,6 +15942,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_GetFlags", (PyCFunction)_wrap_AuiManager_GetFlags, METH_O, NULL}, { (char *)"AuiManager_SetManagedWindow", (PyCFunction) _wrap_AuiManager_SetManagedWindow, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetManagedWindow", (PyCFunction)_wrap_AuiManager_GetManagedWindow, METH_O, NULL}, + { (char *)"AuiManager_GetManager", (PyCFunction) _wrap_AuiManager_GetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_SetArtProvider", (PyCFunction) _wrap_AuiManager_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManager_GetArtProvider", (PyCFunction)_wrap_AuiManager_GetArtProvider, METH_O, NULL}, { (char *)"AuiManager__GetPaneByWidget", (PyCFunction) _wrap_AuiManager__GetPaneByWidget, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -15795,9 +15973,11 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManager_swiginit", AuiManager_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiManagerEvent", (PyCFunction) _wrap_new_AuiManagerEvent, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_Clone", (PyCFunction)_wrap_AuiManagerEvent_Clone, METH_O, NULL}, + { (char *)"AuiManagerEvent_SetManager", (PyCFunction) _wrap_AuiManagerEvent_SetManager, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetPane", (PyCFunction) _wrap_AuiManagerEvent_SetPane, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetButton", (PyCFunction) _wrap_AuiManagerEvent_SetButton, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_SetDC", (PyCFunction) _wrap_AuiManagerEvent_SetDC, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiManagerEvent_GetManager", (PyCFunction)_wrap_AuiManagerEvent_GetManager, METH_O, NULL}, { (char *)"AuiManagerEvent_GetPane", (PyCFunction)_wrap_AuiManagerEvent_GetPane, METH_O, NULL}, { (char *)"AuiManagerEvent_GetButton", (PyCFunction)_wrap_AuiManagerEvent_GetButton, METH_O, NULL}, { (char *)"AuiManagerEvent_GetDC", (PyCFunction)_wrap_AuiManagerEvent_GetDC, METH_O, NULL}, @@ -15805,6 +15985,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"AuiManagerEvent_GetVeto", (PyCFunction)_wrap_AuiManagerEvent_GetVeto, METH_O, NULL}, { (char *)"AuiManagerEvent_SetCanVeto", (PyCFunction) _wrap_AuiManagerEvent_SetCanVeto, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"AuiManagerEvent_CanVeto", (PyCFunction)_wrap_AuiManagerEvent_CanVeto, METH_O, NULL}, + { (char *)"AuiManagerEvent_manager_set", _wrap_AuiManagerEvent_manager_set, METH_VARARGS, NULL}, + { (char *)"AuiManagerEvent_manager_get", (PyCFunction)_wrap_AuiManagerEvent_manager_get, METH_O, NULL}, { (char *)"AuiManagerEvent_pane_set", _wrap_AuiManagerEvent_pane_set, METH_VARARGS, NULL}, { (char *)"AuiManagerEvent_pane_get", (PyCFunction)_wrap_AuiManagerEvent_pane_get, METH_O, NULL}, { (char *)"AuiManagerEvent_button_set", _wrap_AuiManagerEvent_button_set, METH_VARARGS, NULL}, @@ -15888,6 +16070,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"new_AuiFloatingFrame", (PyCFunction) _wrap_new_AuiFloatingFrame, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_AuiFloatingFrame", (PyCFunction)_wrap_delete_AuiFloatingFrame, METH_O, NULL}, { (char *)"AuiFloatingFrame_SetPaneWindow", (PyCFunction) _wrap_AuiFloatingFrame_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"AuiFloatingFrame_GetOwnerManager", (PyCFunction)_wrap_AuiFloatingFrame_GetOwnerManager, METH_O, NULL}, { (char *)"AuiFloatingFrame_swigregister", AuiFloatingFrame_swigregister, METH_VARARGS, NULL}, { (char *)"AuiFloatingFrame_swiginit", AuiFloatingFrame_swiginit, METH_VARARGS, NULL}, { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -18701,23 +18884,23 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE))); SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BORDER_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_PANE_BUTTON_SIZE))); - SWIG_Python_SetConstant(d, "AUI_ART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BACKGROUND_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_GRADIENT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_ACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_INACTIVE_CAPTION_TEXT_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_BORDER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_ART_GRIPPER_COLOUR))); - SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_FONT))); - SWIG_Python_SetConstant(d, "AUI_ART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_ART_GRADIENT_TYPE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BORDER_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BORDER_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_PANE_BUTTON_SIZE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_PANE_BUTTON_SIZE))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BACKGROUND_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BACKGROUND_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_SASH_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_SASH_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_BORDER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_BORDER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRIPPER_COLOUR",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRIPPER_COLOUR))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_CAPTION_FONT",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_CAPTION_FONT))); + SWIG_Python_SetConstant(d, "AUI_DOCKART_GRADIENT_TYPE",SWIG_From_int(static_cast< int >(wxAUI_DOCKART_GRADIENT_TYPE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_NONE",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_NONE))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_VERTICAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_VERTICAL))); SWIG_Python_SetConstant(d, "AUI_GRADIENT_HORIZONTAL",SWIG_From_int(static_cast< int >(wxAUI_GRADIENT_HORIZONTAL))); @@ -18726,6 +18909,7 @@ SWIGEXPORT void SWIG_init(void) { SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_PRESSED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_PRESSED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_DISABLED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_DISABLED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_HIDDEN",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_HIDDEN))); + SWIG_Python_SetConstant(d, "AUI_BUTTON_STATE_CHECKED",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_STATE_CHECKED))); SWIG_Python_SetConstant(d, "AUI_BUTTON_CLOSE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_CLOSE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MAXIMIZE_RESTORE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MAXIMIZE_RESTORE))); SWIG_Python_SetConstant(d, "AUI_BUTTON_MINIMIZE",SWIG_From_int(static_cast< int >(wxAUI_BUTTON_MINIMIZE))); @@ -18785,6 +18969,7 @@ SWIGEXPORT void SWIG_init(void) { PyDict_SetItemString(d, "wxEVT_AUI_PANEMAXIMIZE", PyInt_FromLong(wxEVT_AUI_PANEMAXIMIZE)); PyDict_SetItemString(d, "wxEVT_AUI_PANERESTORE", PyInt_FromLong(wxEVT_AUI_PANERESTORE)); PyDict_SetItemString(d, "wxEVT_AUI_RENDER", PyInt_FromLong(wxEVT_AUI_RENDER)); + PyDict_SetItemString(d, "wxEVT_AUI_FINDMANAGER", PyInt_FromLong(wxEVT_AUI_FINDMANAGER)); SWIG_Python_SetConstant(d, "AUI_NB_TOP",SWIG_From_int(static_cast< int >(wxAUI_NB_TOP))); SWIG_Python_SetConstant(d, "AUI_NB_LEFT",SWIG_From_int(static_cast< int >(wxAUI_NB_LEFT))); SWIG_Python_SetConstant(d, "AUI_NB_RIGHT",SWIG_From_int(static_cast< int >(wxAUI_NB_RIGHT))); diff --git a/wxPython/src/msw/combo.py b/wxPython/src/msw/combo.py index 38b097c587..9b15b384e3 100644 --- a/wxPython/src/msw/combo.py +++ b/wxPython/src/msw/combo.py @@ -68,7 +68,10 @@ CC_NO_TEXT_AUTO_SELECT = _combo.CC_NO_TEXT_AUTO_SELECT CC_MF_ON_BUTTON = _combo.CC_MF_ON_BUTTON CC_MF_ON_CLICK_AREA = _combo.CC_MF_ON_CLICK_AREA class ComboCtrlFeatures(object): - """Proxy of C++ ComboCtrlFeatures class""" + """ + Namespace for `wx.combo.ComboCtrl` feature flags. See + `wx.combo.ComboCtrl.GetFeatures`. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') def __init__(self): raise AttributeError, "No constructor defined" __repr__ = _swig_repr @@ -83,7 +86,19 @@ class ComboCtrlFeatures(object): _combo.ComboCtrlFeatures_swigregister(ComboCtrlFeatures) class ComboCtrl(_core.Control): - """Proxy of C++ ComboCtrl class""" + """ + A combo control is a generic combobox that allows for a totally custom + popup. In addition it has other customization features. For instance, + position and size of the dropdown button can be changed. + + To specify what to use for the popup control you need to derive a + class from `wx.combo.ComboPopup` and pass it to the ComboCtrl with + `SetPopupControl`. It doesn't derive from any widget class so it can + be used either as a mixin class combined with some standard or custom + widget, or you can use the derived ComboPopup to create and hold an + independent reference to the widget to be used for the popup. + + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -101,47 +116,100 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl__setCallbackInfo(*args, **kwargs) def ShowPopup(*args, **kwargs): - """ShowPopup(self)""" + """ + ShowPopup(self) + + Show the popup window. + """ return _combo.ComboCtrl_ShowPopup(*args, **kwargs) def HidePopup(*args, **kwargs): - """HidePopup(self)""" + """ + HidePopup(self) + + Dismisses the popup window. + """ return _combo.ComboCtrl_HidePopup(*args, **kwargs) def OnButtonClick(*args, **kwargs): - """OnButtonClick(self)""" + """ + OnButtonClick(self) + + Implement in a derived class to define what happens on dropdown button + click. Default action is to show the popup. + """ return _combo.ComboCtrl_OnButtonClick(*args, **kwargs) def IsPopupShown(*args, **kwargs): - """IsPopupShown(self) -> bool""" + """ + IsPopupShown(self) -> bool + + Returns true if the popup is currently shown. + """ return _combo.ComboCtrl_IsPopupShown(*args, **kwargs) def SetPopupControl(*args, **kwargs): - """SetPopupControl(self, ComboPopup popup)""" + """ + SetPopupControl(self, ComboPopup popup) + + Set popup interface class derived from `wx.combo.ComboPopup`. This + method should be called as soon as possible after the control has been + created, unless `OnButtonClick` has been overridden. + """ return _combo.ComboCtrl_SetPopupControl(*args, **kwargs) def GetPopupControl(*args, **kwargs): - """GetPopupControl(self) -> ComboPopup""" + """ + GetPopupControl(self) -> ComboPopup + + Returns the current popup interface that has been set with + `SetPopupControl`. + """ return _combo.ComboCtrl_GetPopupControl(*args, **kwargs) def GetPopupWindow(*args, **kwargs): - """GetPopupWindow(self) -> Window""" + """ + GetPopupWindow(self) -> Window + + Returns the popup window containing the popup control. + """ return _combo.ComboCtrl_GetPopupWindow(*args, **kwargs) def GetTextCtrl(*args, **kwargs): - """GetTextCtrl(self) -> wxTextCtrl""" + """ + GetTextCtrl(self) -> wxTextCtrl + + Get the text control which is part of the combo control. + """ return _combo.ComboCtrl_GetTextCtrl(*args, **kwargs) def GetButton(*args, **kwargs): - """GetButton(self) -> Window""" + """ + GetButton(self) -> Window + + Get the dropdown button which is part of the combobox. Note: it's not + necessarily a wx.Button or wx.BitmapButton. + """ return _combo.ComboCtrl_GetButton(*args, **kwargs) def GetValue(*args, **kwargs): - """GetValue(self) -> String""" + """ + GetValue(self) -> String + + Returns text representation of the current value. For writable combo + control it always returns the value in the text field. + """ return _combo.ComboCtrl_GetValue(*args, **kwargs) def SetValue(*args, **kwargs): - """SetValue(self, String value)""" + """ + SetValue(self, String value) + + Sets the text for the combo control text field. For a combo control + with wx.CB_READONLY style the string must be accepted by the popup (for + instance, exist in the dropdown list), otherwise the call to + SetValue is ignored. + """ return _combo.ComboCtrl_SetValue(*args, **kwargs) def Copy(*args, **kwargs): @@ -189,27 +257,60 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetMark(*args, **kwargs) def SetText(*args, **kwargs): - """SetText(self, String value)""" + """ + SetText(self, String value) + + Sets the text for the text field without affecting the popup. Thus, + unlike `SetValue`, it works equally well with combo control using + wx.CB_READONLY style. + """ return _combo.ComboCtrl_SetText(*args, **kwargs) def SetValueWithEvent(*args, **kwargs): - """SetValueWithEvent(self, String value, bool withEvent=True)""" + """ + SetValueWithEvent(self, String value, bool withEvent=True) + + Same as `SetValue`, but also sends a EVT_TEXT event if withEvent is true. + """ return _combo.ComboCtrl_SetValueWithEvent(*args, **kwargs) def SetPopupMinWidth(*args, **kwargs): - """SetPopupMinWidth(self, int width)""" + """ + SetPopupMinWidth(self, int width) + + Sets minimum width of the popup. If wider than combo control, it will + extend to the left. A value of -1 indicates to use the default. The + popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMinWidth(*args, **kwargs) def SetPopupMaxHeight(*args, **kwargs): - """SetPopupMaxHeight(self, int height)""" + """ + SetPopupMaxHeight(self, int height) + + Sets preferred maximum height of the popup. A value of -1 indicates to + use the default. The popup implementation may choose to ignore this. + """ return _combo.ComboCtrl_SetPopupMaxHeight(*args, **kwargs) def SetPopupExtents(*args, **kwargs): - """SetPopupExtents(self, int extLeft, int extRight)""" + """ + SetPopupExtents(self, int extLeft, int extRight) + + Extends popup size horizontally, relative to the edges of the combo + control. Values are given in pixels, and the defaults are zero. It + is up to th epopup to fully take these values into account. + """ return _combo.ComboCtrl_SetPopupExtents(*args, **kwargs) def SetCustomPaintWidth(*args, **kwargs): - """SetCustomPaintWidth(self, int width)""" + """ + SetCustomPaintWidth(self, int width) + + Set width, in pixels, of custom painted area in control without + wx.CB_READONLY style. In read-only OwnerDrawnComboBox, this is used + to indicate the area that is not covered by the focus rectangle. + """ return _combo.ComboCtrl_SetCustomPaintWidth(*args, **kwargs) def GetCustomPaintWidth(*args, **kwargs): @@ -217,15 +318,29 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetCustomPaintWidth(*args, **kwargs) def SetPopupAnchor(*args, **kwargs): - """SetPopupAnchor(self, int anchorSide)""" + """ + SetPopupAnchor(self, int anchorSide) + + Set side of the control to which the popup will align itself. Valid + values are wx.LEFT, wx.RIGHT and 0. The default value 0 means that the + most appropriate side is used (which, currently, is always wx.LEFT). + """ return _combo.ComboCtrl_SetPopupAnchor(*args, **kwargs) def SetButtonPosition(*args, **kwargs): - """SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0)""" + """ + SetButtonPosition(self, int width=-1, int height=-1, int side=RIGHT, int spacingX=0) + + Set the position of the dropdown button. + """ return _combo.ComboCtrl_SetButtonPosition(*args, **kwargs) def GetButtonSize(*args, **kwargs): - """GetButtonSize(self) -> Size""" + """ + GetButtonSize(self) -> Size + + Returns current size of the dropdown button. + """ return _combo.ComboCtrl_GetButtonSize(*args, **kwargs) def SetButtonBitmaps(*args, **kwargs): @@ -233,39 +348,103 @@ class ComboCtrl(_core.Control): SetButtonBitmaps(self, Bitmap bmpNormal, bool pushButtonBg=False, Bitmap bmpPressed=wxNullBitmap, Bitmap bmpHover=wxNullBitmap, Bitmap bmpDisabled=wxNullBitmap) + + Sets custom dropdown button graphics. + + :param bmpNormal: Default button image + :param pushButtonBg: If ``True``, blank push button background is painted below the image. + :param bmpPressed: Depressed butotn image. + :param bmpHover: Button imate to use when the mouse hovers over it. + :param bmpDisabled: Disabled button image. + """ return _combo.ComboCtrl_SetButtonBitmaps(*args, **kwargs) def SetTextIndent(*args, **kwargs): - """SetTextIndent(self, int indent)""" + """ + SetTextIndent(self, int indent) + + This will set the space in pixels between left edge of the control and + the text, regardless whether control is read-only or not. A value of -1 can + be given to indicate platform default. + """ return _combo.ComboCtrl_SetTextIndent(*args, **kwargs) def GetTextIndent(*args, **kwargs): - """GetTextIndent(self) -> int""" + """ + GetTextIndent(self) -> int + + Returns actual indentation in pixels. + """ return _combo.ComboCtrl_GetTextIndent(*args, **kwargs) def GetTextRect(*args, **kwargs): - """GetTextRect(self) -> Rect""" + """ + GetTextRect(self) -> Rect + + Returns area covered by the text field (includes everything except + borders and the dropdown button). + """ return _combo.ComboCtrl_GetTextRect(*args, **kwargs) def UseAltPopupWindow(*args, **kwargs): - """UseAltPopupWindow(self, bool enable=True)""" + """ + UseAltPopupWindow(self, bool enable=True) + + Enable or disable usage of an alternative popup window, which + guarantees ability to focus the popup control, and allows common + native controls to function normally. This alternative popup window is + usually a wxDialog, and as such, when it is shown, its parent + top-level window will appear as if the focus has been lost from it. + """ return _combo.ComboCtrl_UseAltPopupWindow(*args, **kwargs) def EnablePopupAnimation(*args, **kwargs): - """EnablePopupAnimation(self, bool enable=True)""" + """ + EnablePopupAnimation(self, bool enable=True) + + Enables or disables popup animation, if any, depending on the value of + the argument. + """ return _combo.ComboCtrl_EnablePopupAnimation(*args, **kwargs) def IsKeyPopupToggle(*args, **kwargs): - """IsKeyPopupToggle(self, KeyEvent event) -> bool""" + """ + IsKeyPopupToggle(self, KeyEvent event) -> bool + + Returns true if given key combination should toggle the popup. + """ return _combo.ComboCtrl_IsKeyPopupToggle(*args, **kwargs) def PrepareBackground(*args, **kwargs): - """PrepareBackground(self, DC dc, Rect rect, int flags)""" + """ + PrepareBackground(self, DC dc, Rect rect, int flags) + + Prepare background of combo control or an item in a dropdown list in a + way typical on platform. This includes painting the focus/disabled + background and setting the clipping region. Unless you plan to paint + your own focus indicator, you should always call this in your + wxComboPopup::PaintComboControl implementation. In addition, it sets + pen and text colour to what looks good and proper against the + background. + + flags are the same as wx.RendererNative flags: + + ====================== ============================================ + wx.CONTROL_ISSUBMENU drawing a list item instead of combo control + wx.CONTROL_SELECTED list item is selected + wx.CONTROL_DISABLED control/item is disabled + ====================== ============================================ + + """ return _combo.ComboCtrl_PrepareBackground(*args, **kwargs) def ShouldDrawFocus(*args, **kwargs): - """ShouldDrawFocus(self) -> bool""" + """ + ShouldDrawFocus(self) -> bool + + Returns true if focus indicator should be drawn in the control. + """ return _combo.ComboCtrl_ShouldDrawFocus(*args, **kwargs) def GetBitmapNormal(*args, **kwargs): @@ -289,11 +468,19 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_GetInternalFlags(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Return true if Create has finished + """ return _combo.ComboCtrl_IsCreated(*args, **kwargs) def OnPopupDismiss(*args, **kwargs): - """OnPopupDismiss(self)""" + """ + OnPopupDismiss(self) + + Common code to be called on popup hide/dismiss + """ return _combo.ComboCtrl_OnPopupDismiss(*args, **kwargs) Hidden = _combo.ComboCtrl_Hidden @@ -312,7 +499,13 @@ class ComboCtrl(_core.Control): return _combo.ComboCtrl_SetCtrlMainWnd(*args, **kwargs) def GetFeatures(*args, **kwargs): - """GetFeatures() -> int""" + """ + GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args, **kwargs) GetFeatures = staticmethod(GetFeatures) @@ -320,11 +513,30 @@ class ComboCtrl(_core.Control): ShowAbove = _combo.ComboCtrl_ShowAbove CanDeferShow = _combo.ComboCtrl_CanDeferShow def DoShowPopup(*args, **kwargs): - """DoShowPopup(self, Rect rect, int flags)""" + """ + DoShowPopup(self, Rect rect, int flags) + + Shows and positions the popup. + + Flags: + ============ ===================================================== + ShowBelow Showing popup below the control + ShowAbove Showing popup above the control + CanDeferShow Can only return true from AnimateShow if this is set + ============ ===================================================== + + """ return _combo.ComboCtrl_DoShowPopup(*args, **kwargs) def AnimateShow(*args, **kwargs): - """AnimateShow(self, Rect rect, int flags) -> bool""" + """ + AnimateShow(self, Rect rect, int flags) -> bool + + Implement in derived class to create a drop-down animation. Return + ``True`` if finished immediately. Otherwise the popup is only shown when the + derived class calls `DoShowPopup`. Flags are same as for `DoShowPopup`. + + """ return _combo.ComboCtrl_AnimateShow(*args, **kwargs) _combo.ComboCtrl_swigregister(ComboCtrl) @@ -335,17 +547,37 @@ def PreComboCtrl(*args, **kwargs): return val def ComboCtrl_GetFeatures(*args): - """ComboCtrl_GetFeatures() -> int""" + """ + ComboCtrl_GetFeatures() -> int + + Returns a bit-list of flags indicating which features of the ComboCtrl + functionality are implemented by this implemetation. See + `wx.combo.ComboCtrlFeatures`. + """ return _combo.ComboCtrl_GetFeatures(*args) #--------------------------------------------------------------------------- class ComboPopup(object): - """Proxy of C++ ComboPopup class""" + """ + In order to use a custom popup with `wx.combo.ComboCtrl` an interface + class derived from wx.combo.ComboPopup is used to manage the interface + between the popup control and the popup. You can either derive a new + class from both the widget class and this ComboPopup class, or the + derived class can have a reference to the widget used for the popup. + In either case you simply need to return the widget from the + `GetControl` method to allow the ComboCtrl to interact with it. + + Nearly all of the methods of this class are overridable in Python. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): - """__init__(self) -> ComboPopup""" + """ + __init__(self) -> ComboPopup + + Constructor + """ _combo.ComboPopup_swiginit(self,_combo.new_ComboPopup(*args, **kwargs)) ComboPopup._setCallbackInfo(self, self, ComboPopup) @@ -356,74 +588,173 @@ class ComboPopup(object): return _combo.ComboPopup__setCallbackInfo(*args, **kwargs) def Init(*args, **kwargs): - """Init(self)""" + """ + Init(self) + + This method is called after the popup is contructed and has been + assigned to the ComboCtrl. Derived classes can override this to do + extra inialization or whatever. + """ return _combo.ComboPopup_Init(*args, **kwargs) def Create(*args, **kwargs): - """Create(self, Window parent) -> bool""" + """ + Create(self, Window parent) -> bool + + The derived class must implement this method to create the popup + control. It should be a child of the ``parent`` passed in, but other + than that there is much flexibility in what the widget can be, its + style, etc. Return ``True`` for success, ``False`` otherwise. (NOTE: + this return value is not currently checked...) + """ return _combo.ComboPopup_Create(*args, **kwargs) def GetControl(*args, **kwargs): - """GetControl(self) -> Window""" + """ + GetControl(self) -> Window + + The derived class must implement this method and it should return a + reference to the widget created in the `Create` method. If the + derived class inherits from both the widget class and ComboPopup then + the return value is probably just ``self``. + """ return _combo.ComboPopup_GetControl(*args, **kwargs) def OnPopup(*args, **kwargs): - """OnPopup(self)""" + """ + OnPopup(self) + + The derived class may implement this to do special processing when + popup is shown. + """ return _combo.ComboPopup_OnPopup(*args, **kwargs) def OnDismiss(*args, **kwargs): - """OnDismiss(self)""" + """ + OnDismiss(self) + + The derived class may implement this to do special processing when + popup is hidden. + """ return _combo.ComboPopup_OnDismiss(*args, **kwargs) def SetStringValue(*args, **kwargs): - """SetStringValue(self, String value)""" + """ + SetStringValue(self, String value) + + Called just prior to displaying the popup. The derived class can + implement this to "select" the item in the popup that coresponds to + the passed in string value, if appropriate. The default + implementation does nothing. + """ return _combo.ComboPopup_SetStringValue(*args, **kwargs) def GetStringValue(*args, **kwargs): - """GetStringValue(self) -> String""" + """ + GetStringValue(self) -> String + + Gets the string representation of the currently selected value to be + used to display in the combo widget. + """ return _combo.ComboPopup_GetStringValue(*args, **kwargs) def PaintComboControl(*args, **kwargs): - """PaintComboControl(self, DC dc, Rect rect)""" + """ + PaintComboControl(self, DC dc, Rect rect) + + This is called to custom paint in the combo control itself (ie. not + the popup). Default implementation draws the current value as string. + """ return _combo.ComboPopup_PaintComboControl(*args, **kwargs) def OnComboKeyEvent(*args, **kwargs): - """OnComboKeyEvent(self, KeyEvent event)""" + """ + OnComboKeyEvent(self, KeyEvent event) + + Receives key events from the parent ComboCtrl. Events not handled + should be skipped, as usual. + """ return _combo.ComboPopup_OnComboKeyEvent(*args, **kwargs) def OnComboDoubleClick(*args, **kwargs): - """OnComboDoubleClick(self)""" + """ + OnComboDoubleClick(self) + + Implement this method in the derived class if you need to support + special actions when the user double-clicks on the parent ComboCtrl. + """ return _combo.ComboPopup_OnComboDoubleClick(*args, **kwargs) def GetAdjustedSize(*args, **kwargs): - """GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size""" + """ + GetAdjustedSize(self, int minWidth, int prefHeight, int maxHeight) -> Size + + The derived class may implement this method to return adjusted size + for the popup control, according to the variables given. It is called + on every popup, just prior to `OnPopup`. + + :param minWidth: Preferred minimum width. + :param prefHeight: Preferred height. May be -1 to indicate no preference. + :maxWidth: Max height for window, as limited by screen size, and + should only be rounded down, if necessary. + + """ return _combo.ComboPopup_GetAdjustedSize(*args, **kwargs) def LazyCreate(*args, **kwargs): - """LazyCreate(self) -> bool""" + """ + LazyCreate(self) -> bool + + The derived class may implement this to return ``True`` if it wants to + delay the call to `Create` until the popup is shown for the first + time. It is more efficient, but on the other hand it is often more + convenient to have the control created immediately. The default + implementation returns ``False``. + """ return _combo.ComboPopup_LazyCreate(*args, **kwargs) def Dismiss(*args, **kwargs): - """Dismiss(self)""" + """ + Dismiss(self) + + Hides the popup + """ return _combo.ComboPopup_Dismiss(*args, **kwargs) def IsCreated(*args, **kwargs): - """IsCreated(self) -> bool""" + """ + IsCreated(self) -> bool + + Returns true if `Create` has been called. + """ return _combo.ComboPopup_IsCreated(*args, **kwargs) def DefaultPaintComboControl(*args, **kwargs): - """DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) DefaultPaintComboControl = staticmethod(DefaultPaintComboControl) def GetCombo(*args, **kwargs): - """GetCombo(self) -> ComboCtrl""" + """ + GetCombo(self) -> ComboCtrl + + Returns a reference to the `wx.combo.ComboCtrl` this ComboPopup object + is associated with. + """ return _combo.ComboPopup_GetCombo(*args, **kwargs) _combo.ComboPopup_swigregister(ComboPopup) def ComboPopup_DefaultPaintComboControl(*args, **kwargs): - """ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect)""" + """ + ComboPopup_DefaultPaintComboControl(wxComboCtrlBase combo, DC dc, Rect rect) + + Default PaintComboControl behaviour + """ return _combo.ComboPopup_DefaultPaintComboControl(*args, **kwargs) #--------------------------------------------------------------------------- @@ -433,7 +764,16 @@ ODCB_STD_CONTROL_PAINT = _combo.ODCB_STD_CONTROL_PAINT ODCB_PAINTING_CONTROL = _combo.ODCB_PAINTING_CONTROL ODCB_PAINTING_SELECTED = _combo.ODCB_PAINTING_SELECTED class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): - """Proxy of C++ OwnerDrawnComboBox class""" + """ + wx.combo.OwnerDrawnComboBox is a combobox with owner-drawn list + items. In essence, it is a `wx.combo.ComboCtrl` with a `wx.VListBox` + popup and a `wx.ControlWithItems` API. + + Implementing item drawing and measuring is similar to wx.VListBox. + The application needs to subclass wx.combo.OwnerDrawnComboBox and + implement the `OnDrawItem`, `OnMeasureItem` and `OnMeasureItemWidth` + methods. + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, *args, **kwargs): @@ -443,10 +783,16 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> OwnerDrawnComboBox + + Standard constructor. """ _combo.OwnerDrawnComboBox_swiginit(self,_combo.new_OwnerDrawnComboBox(*args, **kwargs)) self._setOORInfo(self);OwnerDrawnComboBox._setCallbackInfo(self, self, OwnerDrawnComboBox) + def _setCallbackInfo(*args, **kwargs): + """_setCallbackInfo(self, PyObject self, PyObject _class)""" + return _combo.OwnerDrawnComboBox__setCallbackInfo(*args, **kwargs) + def Create(*args, **kwargs): """ Create(self, Window parent, int id=-1, String value=EmptyString, @@ -454,25 +800,98 @@ class OwnerDrawnComboBox(ComboCtrl,_core.ItemContainer): wxArrayString choices=wxPyEmptyStringArray, long style=0, Validator validator=DefaultValidator, String name=wxPyComboBoxNameStr) -> bool + + Create the UI object, and other initialization. """ return _combo.OwnerDrawnComboBox_Create(*args, **kwargs) def GetWidestItemWidth(*args, **kwargs): - """GetWidestItemWidth(self) -> int""" + """ + GetWidestItemWidth(self) -> int + + Return the widest item width (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItemWidth(*args, **kwargs) def GetWidestItem(*args, **kwargs): - """GetWidestItem(self) -> int""" + """ + GetWidestItem(self) -> int + + Return the index of the widest item (recalculating it if necessary.) + """ return _combo.OwnerDrawnComboBox_GetWidestItem(*args, **kwargs) def SetMark(*args, **kwargs): """SetMark(self, long from, long to)""" return _combo.OwnerDrawnComboBox_SetMark(*args, **kwargs) + def OnDrawItem(*args, **kwargs): + """ + OnDrawItem(self, DC dc, Rect rect, int item, int flags) + + The derived class may implement this function to actually draw the + item with the given index on the provided DC. If this method is not + overridden, the item text is simply drawn as if the control was a + normal combobox. + + :param dc: The device context to use for drawing. + :param rect: The bounding rectangle for the item being drawn, the + DC's clipping region is set to this rectangle before + calling this method. + :param item: The index of the item to be drawn. + + :param flags: ``wx.combo.ODCB_PAINTING_CONTROL`` (The Combo control itself + is being painted, instead of a list item. The ``item`` + parameter may be ``wx.NOT_FOUND`` in this case. + ``wx.combo.ODCB_PAINTING_SELECTED`` (An item with + selection background is being painted. The DC's text colour + should already be correct. + + """ + return _combo.OwnerDrawnComboBox_OnDrawItem(*args, **kwargs) + + def OnMeasureItem(*args, **kwargs): + """ + OnMeasureItem(self, size_t item) -> int + + The derived class may implement this method to return the height of + the specified item (in pixels). The default implementation returns + text height, as if this control was a normal combobox. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItem(*args, **kwargs) + + def OnMeasureItemWidth(*args, **kwargs): + """ + OnMeasureItemWidth(self, size_t item) -> int + + The derived class may implement this method to return the width of the + specified item (in pixels). If -1 is returned, then the item text + width is used. The default implementation returns -1. + """ + return _combo.OwnerDrawnComboBox_OnMeasureItemWidth(*args, **kwargs) + + def OnDrawBackground(*args, **kwargs): + """ + OnDrawBackground(self, DC dc, Rect rect, int item, int flags) + + This method is used to draw the items background and, maybe, a border + around it. + + The base class version implements a reasonable default behaviour which + consists in drawing the selected item with the standard background + colour and drawing a border around the item if it is either selected + or current. ``flags`` has the sam meaning as with `OnDrawItem`. + """ + return _combo.OwnerDrawnComboBox_OnDrawBackground(*args, **kwargs) + _combo.OwnerDrawnComboBox_swigregister(OwnerDrawnComboBox) def PreOwnerDrawnComboBox(*args, **kwargs): - """PreOwnerDrawnComboBox() -> OwnerDrawnComboBox""" + """ + PreOwnerDrawnComboBox() -> OwnerDrawnComboBox + + 2-phase create constructor. + """ val = _combo.new_PreOwnerDrawnComboBox(*args, **kwargs) return val diff --git a/wxPython/src/msw/combo_wrap.cpp b/wxPython/src/msw/combo_wrap.cpp index a4fcb2d324..10ec23204f 100644 --- a/wxPython/src/msw/combo_wrap.cpp +++ b/wxPython/src/msw/combo_wrap.cpp @@ -2775,6 +2775,23 @@ public: wxComboCtrl::DoSetPopupControl(popup); } + virtual bool IsKeyPopupToggle( const wxKeyEvent& event ) const + { + bool found; + bool rval = false; + wxPyBlock_t blocked = wxPyBeginBlockThreads(); + if ((found = wxPyCBH_findCallback(m_myInst, "OnComboKeyEvent"))) { + PyObject* oevt = wxPyConstructObject((void*)&event, wxT("wxKeyEvent"), 0); + rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(O)", oevt)); + Py_DECREF(oevt); + } + wxPyEndBlockThreads(blocked); + if (! found) + rval = wxComboCtrl::IsKeyPopupToggle(event); + return rval; + } + + enum { ShowBelow = 0x0000, // Showing popup below the control @@ -2783,6 +2800,8 @@ public: }; + DEC_PYCALLBACK_VOID_(ShowPopup); + DEC_PYCALLBACK_VOID_(HidePopup); DEC_PYCALLBACK_VOID_(OnButtonClick); DEC_PYCALLBACK__RECTINT(DoShowPopup); DEC_PYCALLBACK_BOOL_RECTINT(AnimateShow); @@ -2792,6 +2811,8 @@ public: IMPLEMENT_ABSTRACT_CLASS(wxPyComboCtrl, wxComboCtrl); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, ShowPopup); +IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, HidePopup); IMP_PYCALLBACK_VOID_(wxPyComboCtrl, wxComboCtrl, OnButtonClick); IMP_PYCALLBACK__RECTINT(wxPyComboCtrl, wxComboCtrl, DoShowPopup); IMP_PYCALLBACK_BOOL_RECTINT(wxPyComboCtrl, wxComboCtrl, AnimateShow); @@ -3013,6 +3034,29 @@ IMP_PYCALLBACK_COORD_SIZET_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, O IMP_PYCALLBACK__DCRECTINTINT_const(wxPyOwnerDrawnComboBox, wxOwnerDrawnComboBox, OnDrawBackground); + +SWIGINTERN int +SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val) +{ + long v = 0; + if (SWIG_AsVal_long(obj, &v) && v < 0) { + return SWIG_TypeError; + } + else if (val) + *val = (unsigned long)v; + return SWIG_OK; +} + + +SWIGINTERNINLINE int +SWIG_AsVal_size_t (PyObject * obj, size_t *val) +{ + unsigned long v; + int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0); + if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v); + return res; +} + #ifdef __cplusplus extern "C" { #endif @@ -6051,6 +6095,41 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox__setCallbackInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + PyObject *arg2 = (PyObject *) 0 ; + PyObject *arg3 = (PyObject *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "self",(char *) "_class", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:OwnerDrawnComboBox__setCallbackInfo",kwnames,&obj0,&obj1,&obj2)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox__setCallbackInfo" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + arg2 = obj1; + arg3 = obj2; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->_setCallbackInfo(arg2,arg3); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_Create(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { PyObject *resultobj = 0; wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; @@ -6319,6 +6398,216 @@ fail: } +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawItem",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawItem" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawItem(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItem",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItem" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItem(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnMeasureItemWidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + size_t arg2 ; + int result; + void *argp1 = 0 ; + int res1 = 0 ; + size_t val2 ; + int ecode2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "item", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:OwnerDrawnComboBox_OnMeasureItemWidth",kwnames,&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + ecode2 = SWIG_AsVal_size_t(obj1, &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "OwnerDrawnComboBox_OnMeasureItemWidth" "', expected argument " "2"" of type '" "size_t""'"); + } + arg2 = static_cast< size_t >(val2); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (int)((wxPyOwnerDrawnComboBox const *)arg1)->OnMeasureItemWidth(arg2); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_From_int(static_cast< int >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_OwnerDrawnComboBox_OnDrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) { + PyObject *resultobj = 0; + wxPyOwnerDrawnComboBox *arg1 = (wxPyOwnerDrawnComboBox *) 0 ; + wxDC *arg2 = 0 ; + wxRect *arg3 = 0 ; + int arg4 ; + int arg5 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; + wxRect temp3 ; + int val4 ; + int ecode4 = 0 ; + int val5 ; + int ecode5 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + char * kwnames[] = { + (char *) "self",(char *) "dc",(char *) "rect",(char *) "item",(char *) "flags", NULL + }; + + if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:OwnerDrawnComboBox_OnDrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyOwnerDrawnComboBox, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "1"" of type '" "wxPyOwnerDrawnComboBox const *""'"); + } + arg1 = reinterpret_cast< wxPyOwnerDrawnComboBox * >(argp1); + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDC, 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); + } + arg2 = reinterpret_cast< wxDC * >(argp2); + { + arg3 = &temp3; + if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail; + } + ecode4 = SWIG_AsVal_int(obj3, &val4); + if (!SWIG_IsOK(ecode4)) { + SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "4"" of type '" "int""'"); + } + arg4 = static_cast< int >(val4); + ecode5 = SWIG_AsVal_int(obj4, &val5); + if (!SWIG_IsOK(ecode5)) { + SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "OwnerDrawnComboBox_OnDrawBackground" "', expected argument " "5"" of type '" "int""'"); + } + arg5 = static_cast< int >(val5); + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + ((wxPyOwnerDrawnComboBox const *)arg1)->OnDrawBackground(*arg2,(wxRect const &)*arg3,arg4,arg5); + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *OwnerDrawnComboBox_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL; @@ -6414,10 +6703,15 @@ static PyMethodDef SwigMethods[] = { { (char *)"ComboPopup_swiginit", ComboPopup_swiginit, METH_VARARGS, NULL}, { (char *)"new_OwnerDrawnComboBox", (PyCFunction) _wrap_new_OwnerDrawnComboBox, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"new_PreOwnerDrawnComboBox", (PyCFunction)_wrap_new_PreOwnerDrawnComboBox, METH_NOARGS, NULL}, + { (char *)"OwnerDrawnComboBox__setCallbackInfo", (PyCFunction) _wrap_OwnerDrawnComboBox__setCallbackInfo, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_Create", (PyCFunction) _wrap_OwnerDrawnComboBox_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItemWidth", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItemWidth, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_GetWidestItem", (PyCFunction)_wrap_OwnerDrawnComboBox_GetWidestItem, METH_O, NULL}, { (char *)"OwnerDrawnComboBox_SetMark", (PyCFunction) _wrap_OwnerDrawnComboBox_SetMark, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItem", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItem, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnMeasureItemWidth", (PyCFunction) _wrap_OwnerDrawnComboBox_OnMeasureItemWidth, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"OwnerDrawnComboBox_OnDrawBackground", (PyCFunction) _wrap_OwnerDrawnComboBox_OnDrawBackground, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"OwnerDrawnComboBox_swigregister", OwnerDrawnComboBox_swigregister, METH_VARARGS, NULL}, { (char *)"OwnerDrawnComboBox_swiginit", OwnerDrawnComboBox_swiginit, METH_VARARGS, NULL}, { NULL, NULL, 0, NULL } @@ -8359,6 +8653,7 @@ SWIGEXPORT void SWIG_init(void) { // Map renamed classes back to their common name for OOR wxPyPtrTypeMap_Add("wxComboCtrl", "wxPyComboCtrl"); wxPyPtrTypeMap_Add("wxComboPopup", "wxPyComboPopup"); + wxPyPtrTypeMap_Add("wxOwnerDrawnComboBox", "wxPyOwnerDrawnComboBox"); } -- 2.45.2