X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fb5e0af035b25afec4bebf8585c1f32766636599..607d79b82b20d9e958cb213017479b84adda02c1:/utils/wxPython/src/_extras.py diff --git a/utils/wxPython/src/_extras.py b/utils/wxPython/src/_extras.py index 1e87311f07..089a250387 100644 --- a/utils/wxPython/src/_extras.py +++ b/utils/wxPython/src/_extras.py @@ -45,6 +45,15 @@ def _StdFrameCallbacks(win): _checkForCallback(win, "OnCloseWindow", wxEVT_CLOSE_WINDOW) +def _StdDialogCallbacks(win): + _StdWindowCallbacks(win) + _checkForCallback(win, "OnOk", wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK) + _checkForCallback(win, "OnApply", wxEVT_COMMAND_BUTTON_CLICKED, wxID_APPLY) + _checkForCallback(win, "OnCancel", wxEVT_COMMAND_BUTTON_CLICKED, wxID_CANCEL) + _checkForCallback(win, "OnCloseWindow", wxEVT_CLOSE_WINDOW) + _checkForCallback(win, "OnCharHook", wxEVT_CHAR_HOOK) + + def _StdOnScrollCallback(win): try: cb = getattr(win, "OnScroll") except: pass @@ -330,7 +339,7 @@ def EVT_COMMAND_ENTER(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_ENTER, func) - +# wxNotebook events def EVT_NOTEBOOK_PAGE_CHANGED(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, func) @@ -338,337 +347,53 @@ def EVT_NOTEBOOK_PAGE_CHANGING(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, func) +#wxTreeCtrl events +def EVT_TREE_BEGIN_DRAG(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_BEGIN_DRAG, func) -#---------------------------------------------------------------------- -#---------------------------------------------------------------------- -# We need to add to the shadow classes a bit to facilitate callbacks via -# virtual functions. These classes replace the shadows generated by SWIG. - -class wxWindow(wxWindowPtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxWindow,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - - -class wxFrame(wxFramePtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxFrame,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdFrameCallbacks(self) - - -if wxPlatform == '__WXMSW__': - class wxMiniFrame(wxMiniFramePtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxMiniFrame,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdFrameCallbacks(self) - - -class wxPanel(wxPanelPtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxPanel,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - - -class wxDialog(wxDialogPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxDialog,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - _checkForCallback(self, "OnOk", wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK) - _checkForCallback(self, "OnApply", wxEVT_COMMAND_BUTTON_CLICKED, wxID_APPLY) - _checkForCallback(self, "OnCancel", wxEVT_COMMAND_BUTTON_CLICKED, wxID_CANCEL) - _checkForCallback(self, "OnCloseWindow", wxEVT_CLOSE_WINDOW) - _checkForCallback(self, "OnCharHook", wxEVT_CHAR_HOOK) - - -class wxScrolledWindow(wxScrolledWindowPtr): - def __init__(self,arg0,*args) : - argl = map(None,args) - try: argl[1] = argl[1].this - except: pass - try: argl[2] = argl[2].this - except: pass - args = tuple(argl) - self.this = apply(windowsc.new_wxScrolledWindow,(arg0.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - _StdOnScrollCallback(self) - - - -class wxMDIParentFrame(wxMDIParentFramePtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(mdic.new_wxMDIParentFrame,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdFrameCallbacks(self) - - -class wxMDIChildFrame(wxMDIChildFramePtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(mdic.new_wxMDIChildFrame,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdFrameCallbacks(self) - - -class wxMDIClientWindow(wxMDIClientWindowPtr): - def __init__(self,arg0,*args) : - self.this = apply(mdic.new_wxMDIClientWindow,(arg0.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - _StdOnScrollCallback(self) - - - -class wxControl(wxControlPtr): - def __init__(self,this): - self.this = this - _StdWindowCallbacks(self) - -class wxButton(wxButtonPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxButton,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxBitmapButton(wxBitmapButtonPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxBitmapButton,(arg0.this,arg1,arg2.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxCheckBox(wxCheckBoxPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxCheckBox,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - - - -class wxChoice(wxChoicePtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxChoice,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxComboBox(wxComboBoxPtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[1] = argl[1].this - except: pass - try: argl[2] = argl[2].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxComboBox,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxGauge(wxGaugePtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxGauge,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxStaticBox(wxStaticBoxPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxStaticBox,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxStaticText(wxStaticTextPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxStaticText,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxListBox(wxListBoxPtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxListBox,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxTextCtrl(wxTextCtrlPtr): - def __init__(self,arg0,arg1,*args) : - argl = map(None,args) - try: argl[1] = argl[1].this - except: pass - try: argl[2] = argl[2].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxTextCtrl,(arg0.this,arg1,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxScrollBar(wxScrollBarPtr): - def __init__(self,arg0,*args) : - argl = map(None,args) - try: argl[1] = argl[1].this - except: pass - try: argl[2] = argl[2].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxScrollBar,(arg0.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -if wxPlatform == '__WXMSW__': - class wxSpinButton(wxSpinButtonPtr): - def __init__(self,arg0,*args) : - argl = map(None,args) - try: argl[1] = argl[1].this - except: pass - try: argl[2] = argl[2].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxSpinButton,(arg0.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxStaticBitmap(wxStaticBitmapPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxStaticBitmap,(arg0.this,arg1,arg2.this,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxRadioBox(wxRadioBoxPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxRadioBox,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxRadioButton(wxRadioButtonPtr): - def __init__(self,arg0,arg1,arg2,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxRadioButton,(arg0.this,arg1,arg2,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) - -class wxSlider(wxSliderPtr): - def __init__(self,arg0,arg1,arg2,arg3,arg4,*args) : - argl = map(None,args) - try: argl[0] = argl[0].this - except: pass - try: argl[1] = argl[1].this - except: pass - args = tuple(argl) - self.this = apply(controlsc.new_wxSlider,(arg0.this,arg1,arg2,arg3,arg4,)+args) - self.thisown = 1 - _StdWindowCallbacks(self) +def EVT_TREE_BEGIN_RDRAG(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_BEGIN_RDRAG, func) + +def EVT_TREE_BEGIN_LABEL_EDIT(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT, func) + +def EVT_TREE_END_LABEL_EDIT(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_END_LABEL_EDIT, func) + +def EVT_TREE_GET_INFO(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_GET_INFO, func) + +def EVT_TREE_SET_INFO(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_SET_INFO, func) + +def EVT_TREE_ITEM_EXPANDED(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_ITEM_EXPANDED, func) +def EVT_TREE_ITEM_EXPANDING(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_ITEM_EXPANDING, func) +def EVT_TREE_ITEM_COLLAPSED(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_ITEM_COLLAPSED, func) +def EVT_TREE_ITEM_COLLAPSING(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_ITEM_COLLAPSING, func) +def EVT_TREE_SEL_CHANGED(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_SEL_CHANGED, func) +def EVT_TREE_SEL_CHANGING(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_SEL_CHANGING, func) + +def EVT_TREE_KEY_DOWN(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_KEY_DOWN, func) + +def EVT_TREE_DELETE_ITEM(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_TREE_DELETE_ITEM, func) + + + + +#---------------------------------------------------------------------- class wxTimer(wxPyTimer): def __init__(self): @@ -762,6 +487,18 @@ class wxApp(wxPyApp): #---------------------------------------------------------------------------- # # $Log$ +# Revision 1.5 1998/10/20 07:38:02 RD +# bug fix +# +# Revision 1.4 1998/10/20 06:43:54 RD +# New wxTreeCtrl wrappers (untested) +# some changes in helpers +# etc. +# +# Revision 1.3 1998/10/02 06:40:33 RD +# +# Version 0.4 of wxPython for MSW. +# # Revision 1.2 1998/08/18 19:48:12 RD # more wxGTK compatibility things. #