X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..873fb06d2abb91b5ab9168d9ba333b2423d12c14:/wxPython/src/gtk/wx.py diff --git a/wxPython/src/gtk/wx.py b/wxPython/src/gtk/wx.py index 1c1f08c9c8..e43d0f85d8 100644 --- a/wxPython/src/gtk/wx.py +++ b/wxPython/src/gtk/wx.py @@ -13,6 +13,8 @@ from clip_dnd import * from events import * +from streams import * + from mdi import * from frames import * @@ -34,6 +36,10 @@ from image import * from printfw import * from sizers import * + +from filesys import * + +from utils import * class wxPyAppPtr(wxEvtHandlerPtr): def __init__(self,this): self.this = this @@ -138,6 +144,11 @@ _wxStart = wxc._wxStart _wxSetDictionary = wxc._wxSetDictionary +def wxGetApp(*_args, **_kwargs): + val = apply(wxc.wxGetApp,_args,_kwargs) + if val: val = wxPyAppPtr(val) + return val + wxApp_CleanUp = wxc.wxApp_CleanUp @@ -188,6 +199,8 @@ wxDEFAULT_DIALOG_STYLE = wxc.wxDEFAULT_DIALOG_STYLE wxFRAME_TOOL_WINDOW = wxc.wxFRAME_TOOL_WINDOW wxFRAME_FLOAT_ON_PARENT = wxc.wxFRAME_FLOAT_ON_PARENT wxFRAME_NO_WINDOW_MENU = wxc.wxFRAME_NO_WINDOW_MENU +wxFRAME_NO_TASKBAR = wxc.wxFRAME_NO_TASKBAR +wxFRAME_EX_CONTEXTHELP = wxc.wxFRAME_EX_CONTEXTHELP wxED_CLIENT_MARGIN = wxc.wxED_CLIENT_MARGIN wxED_BUTTONS_BOTTOM = wxc.wxED_BUTTONS_BOTTOM wxED_BUTTONS_RIGHT = wxc.wxED_BUTTONS_RIGHT @@ -214,6 +227,7 @@ wxALIGN_TOP = wxc.wxALIGN_TOP wxALIGN_CENTER = wxc.wxALIGN_CENTER wxALIGN_CENTRE = wxc.wxALIGN_CENTRE wxSHAPED = wxc.wxSHAPED +wxADJUST_MINSIZE = wxc.wxADJUST_MINSIZE wxLB_NEEDED_SB = wxc.wxLB_NEEDED_SB wxLB_ALWAYS_SB = wxc.wxLB_ALWAYS_SB wxLB_SORT = wxc.wxLB_SORT @@ -284,12 +298,17 @@ wxLC_SORT_DESCENDING = wxc.wxLC_SORT_DESCENDING wxLC_MASK_TYPE = wxc.wxLC_MASK_TYPE wxLC_MASK_ALIGN = wxc.wxLC_MASK_ALIGN wxLC_MASK_SORT = wxc.wxLC_MASK_SORT +wxLC_HRULES = wxc.wxLC_HRULES +wxLC_VRULES = wxc.wxLC_VRULES wxSP_VERTICAL = wxc.wxSP_VERTICAL wxSP_HORIZONTAL = wxc.wxSP_HORIZONTAL wxSP_ARROW_KEYS = wxc.wxSP_ARROW_KEYS wxSP_WRAP = wxc.wxSP_WRAP wxSP_NOBORDER = wxc.wxSP_NOBORDER wxSP_3D = wxc.wxSP_3D +wxSP_3DSASH = wxc.wxSP_3DSASH +wxSP_3DBORDER = wxc.wxSP_3DBORDER +wxSP_FULLSASH = wxc.wxSP_FULLSASH wxSP_BORDER = wxc.wxSP_BORDER wxSP_LIVE_UPDATE = wxc.wxSP_LIVE_UPDATE wxSP_PERMIT_UNSPLIT = wxc.wxSP_PERMIT_UNSPLIT @@ -401,6 +420,7 @@ wxHIDE_READONLY = wxc.wxHIDE_READONLY wxOVERWRITE_PROMPT = wxc.wxOVERWRITE_PROMPT wxFILE_MUST_EXIST = wxc.wxFILE_MUST_EXIST wxMULTIPLE = wxc.wxMULTIPLE +wxCHANGE_DIR = wxc.wxCHANGE_DIR wxACCEL_ALT = wxc.wxACCEL_ALT wxACCEL_CTRL = wxc.wxACCEL_CTRL wxACCEL_SHIFT = wxc.wxACCEL_SHIFT @@ -437,6 +457,13 @@ wxLI_HORIZONTAL = wxc.wxLI_HORIZONTAL wxLI_VERTICAL = wxc.wxLI_VERTICAL wxHW_SCROLLBAR_NEVER = wxc.wxHW_SCROLLBAR_NEVER wxHW_SCROLLBAR_AUTO = wxc.wxHW_SCROLLBAR_AUTO +wxJOYSTICK1 = wxc.wxJOYSTICK1 +wxJOYSTICK2 = wxc.wxJOYSTICK2 +wxJOY_BUTTON1 = wxc.wxJOY_BUTTON1 +wxJOY_BUTTON2 = wxc.wxJOY_BUTTON2 +wxJOY_BUTTON3 = wxc.wxJOY_BUTTON3 +wxJOY_BUTTON4 = wxc.wxJOY_BUTTON4 +wxJOY_BUTTON_ANY = wxc.wxJOY_BUTTON_ANY wxDEFAULT = wxc.wxDEFAULT wxDECORATIVE = wxc.wxDECORATIVE wxROMAN = wxc.wxROMAN @@ -775,53 +802,13 @@ wxEVT_COMMAND_RIGHT_DCLICK = wxc.wxEVT_COMMAND_RIGHT_DCLICK wxEVT_COMMAND_SET_FOCUS = wxc.wxEVT_COMMAND_SET_FOCUS wxEVT_COMMAND_KILL_FOCUS = wxc.wxEVT_COMMAND_KILL_FOCUS wxEVT_COMMAND_ENTER = wxc.wxEVT_COMMAND_ENTER -wxEVT_COMMAND_TREE_BEGIN_DRAG = wxc.wxEVT_COMMAND_TREE_BEGIN_DRAG -wxEVT_COMMAND_TREE_BEGIN_RDRAG = wxc.wxEVT_COMMAND_TREE_BEGIN_RDRAG -wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT = wxc.wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT -wxEVT_COMMAND_TREE_END_LABEL_EDIT = wxc.wxEVT_COMMAND_TREE_END_LABEL_EDIT -wxEVT_COMMAND_TREE_DELETE_ITEM = wxc.wxEVT_COMMAND_TREE_DELETE_ITEM -wxEVT_COMMAND_TREE_GET_INFO = wxc.wxEVT_COMMAND_TREE_GET_INFO -wxEVT_COMMAND_TREE_SET_INFO = wxc.wxEVT_COMMAND_TREE_SET_INFO -wxEVT_COMMAND_TREE_ITEM_EXPANDED = wxc.wxEVT_COMMAND_TREE_ITEM_EXPANDED -wxEVT_COMMAND_TREE_ITEM_EXPANDING = wxc.wxEVT_COMMAND_TREE_ITEM_EXPANDING -wxEVT_COMMAND_TREE_ITEM_COLLAPSED = wxc.wxEVT_COMMAND_TREE_ITEM_COLLAPSED -wxEVT_COMMAND_TREE_ITEM_COLLAPSING = wxc.wxEVT_COMMAND_TREE_ITEM_COLLAPSING -wxEVT_COMMAND_TREE_SEL_CHANGED = wxc.wxEVT_COMMAND_TREE_SEL_CHANGED -wxEVT_COMMAND_TREE_SEL_CHANGING = wxc.wxEVT_COMMAND_TREE_SEL_CHANGING -wxEVT_COMMAND_TREE_KEY_DOWN = wxc.wxEVT_COMMAND_TREE_KEY_DOWN -wxEVT_COMMAND_TREE_ITEM_ACTIVATED = wxc.wxEVT_COMMAND_TREE_ITEM_ACTIVATED -wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK = wxc.wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK -wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK = wxc.wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK -wxEVT_COMMAND_LIST_BEGIN_DRAG = wxc.wxEVT_COMMAND_LIST_BEGIN_DRAG -wxEVT_COMMAND_LIST_BEGIN_RDRAG = wxc.wxEVT_COMMAND_LIST_BEGIN_RDRAG -wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT = wxc.wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT -wxEVT_COMMAND_LIST_END_LABEL_EDIT = wxc.wxEVT_COMMAND_LIST_END_LABEL_EDIT -wxEVT_COMMAND_LIST_DELETE_ITEM = wxc.wxEVT_COMMAND_LIST_DELETE_ITEM -wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS = wxc.wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS -wxEVT_COMMAND_LIST_GET_INFO = wxc.wxEVT_COMMAND_LIST_GET_INFO -wxEVT_COMMAND_LIST_SET_INFO = wxc.wxEVT_COMMAND_LIST_SET_INFO -wxEVT_COMMAND_LIST_ITEM_SELECTED = wxc.wxEVT_COMMAND_LIST_ITEM_SELECTED -wxEVT_COMMAND_LIST_ITEM_DESELECTED = wxc.wxEVT_COMMAND_LIST_ITEM_DESELECTED -wxEVT_COMMAND_LIST_KEY_DOWN = wxc.wxEVT_COMMAND_LIST_KEY_DOWN -wxEVT_COMMAND_LIST_INSERT_ITEM = wxc.wxEVT_COMMAND_LIST_INSERT_ITEM -wxEVT_COMMAND_LIST_COL_CLICK = wxc.wxEVT_COMMAND_LIST_COL_CLICK -wxEVT_COMMAND_LIST_ITEM_ACTIVATED = wxc.wxEVT_COMMAND_LIST_ITEM_ACTIVATED -wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK = wxc.wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK -wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK = wxc.wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK -wxEVT_COMMAND_TAB_SEL_CHANGED = wxc.wxEVT_COMMAND_TAB_SEL_CHANGED -wxEVT_COMMAND_TAB_SEL_CHANGING = wxc.wxEVT_COMMAND_TAB_SEL_CHANGING -wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED = wxc.wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED -wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING = wxc.wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING -wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING = wxc.wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING -wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED = wxc.wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED -wxEVT_COMMAND_SPLITTER_UNSPLIT = wxc.wxEVT_COMMAND_SPLITTER_UNSPLIT -wxEVT_COMMAND_SPLITTER_DOUBLECLICKED = wxc.wxEVT_COMMAND_SPLITTER_DOUBLECLICKED wxEVT_NAVIGATION_KEY = wxc.wxEVT_NAVIGATION_KEY wxEVT_TIMER = wxc.wxEVT_TIMER +wxWS_EX_VALIDATE_RECURSIVELY = wxc.wxWS_EX_VALIDATE_RECURSIVELY __version__ = wxc.__version__ cvar = wxc.cvar -wxPyDefaultPosition = wxPointPtr(wxc.cvar.wxPyDefaultPosition) -wxPyDefaultSize = wxSizePtr(wxc.cvar.wxPyDefaultSize) +wxDefaultPosition = wxPointPtr(wxc.cvar.wxDefaultPosition) +wxDefaultSize = wxSizePtr(wxc.cvar.wxDefaultSize) #-------------- USER INCLUDE ----------------------- @@ -857,38 +844,6 @@ def _checkForCallback(obj, name, event, theID=-1): except: pass else: obj.Connect(theID, -1, event, cb) -## def _StdWindowCallbacks(win): -## _checkForCallback(win, "OnChar", wxEVT_CHAR) -## _checkForCallback(win, "OnSize", wxEVT_SIZE) -## _checkForCallback(win, "OnEraseBackground", wxEVT_ERASE_BACKGROUND) -## _checkForCallback(win, "OnSysColourChanged", wxEVT_SYS_COLOUR_CHANGED) -## _checkForCallback(win, "OnInitDialog", wxEVT_INIT_DIALOG) -## _checkForCallback(win, "OnPaint", wxEVT_PAINT) -## _checkForCallback(win, "OnIdle", wxEVT_IDLE) - - -## def _StdFrameCallbacks(win): -## _StdWindowCallbacks(win) -## _checkForCallback(win, "OnActivate", wxEVT_ACTIVATE) -## _checkForCallback(win, "OnMenuHighlight", wxEVT_MENU_HIGHLIGHT) -## _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 _StdOnScrollCallbacks(win): -## try: cb = getattr(win, "OnScroll") -## except: pass -## else: EVT_SCROLL(win, cb) - - #---------------------------------------------------------------------- #---------------------------------------------------------------------- @@ -1385,35 +1340,6 @@ def EVT_TASKBAR_RIGHT_DCLICK(win, func): win.Connect(-1, -1, wxEVT_TASKBAR_RIGHT_DCLICK, func) -## # wxGrid *** THE OLD ONE *** -## def EVT_GRID_SELECT_CELL(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_SELECT_CELL, fn) - -## def EVT_GRID_CREATE_CELL(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CREATE_CELL, fn) - -## def EVT_GRID_CHANGE_LABELS(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CHANGE_LABELS, fn) - -## def EVT_GRID_CHANGE_SEL_LABEL(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CHANGE_SEL_LABEL, fn) - -## def EVT_GRID_CELL_CHANGE(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CELL_CHANGE, fn) - -## def EVT_GRID_CELL_LCLICK(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CELL_LCLICK, fn) - -## def EVT_GRID_CELL_RCLICK(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_CELL_RCLICK, fn) - -## def EVT_GRID_LABEL_LCLICK(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_LABEL_LCLICK, fn) - -## def EVT_GRID_LABEL_RCLICK(win, fn): -## win.Connect(-1, -1, wxEVT_GRID_LABEL_RCLICK, fn) - - # wxSashWindow def EVT_SASH_DRAGGED(win, id, func): win.Connect(id, -1, wxEVT_SASH_DRAGGED, func) @@ -1456,9 +1382,6 @@ def EVT_LIST_SET_INFO(win, id, func): def EVT_LIST_ITEM_SELECTED(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_SELECTED, func) -def EVT_LIST_ITEM_ACTIVATED(win, id, func): - win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_ACTIVATED, func) - def EVT_LIST_ITEM_DESELECTED(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_DESELECTED, func) @@ -1477,6 +1400,10 @@ def EVT_LIST_ITEM_RIGHT_CLICK(win, id, func): def EVT_LIST_ITEM_MIDDLE_CLICK(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, func) +def EVT_LIST_ITEM_ACTIVATED(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_ACTIVATED, func) + + #wxSplitterWindow @@ -1497,24 +1424,53 @@ def EVT_SPLITTER_DOUBLECLICKED(win, id, func): def EVT_TIMER(win, id, func): win.Connect(id, -1, wxEVT_TIMER, func) +# wxProcess +def EVT_END_PROCESS(eh, id, func): + eh.Connect(id, -1, wxEVT_END_PROCESS, func) + +# wxJoyStick +def EVT_JOY_DOWN(win, func): + win.Connect(-1, -1, wxEVT_JOY_DOWN, func) + +def EVT_JOY_UP(win, func): + win.Connect(-1, -1, wxEVT_JOY_UP, func) + +def EVT_JOY_MOVE(win, func): + win.Connect(-1, -1, wxEVT_JOY_MOVE, func) + +def EVT_JOY_ZMOVE(win, func): + win.Connect(-1, -1, wxEVT_JOY_ZMOVE, func) + +def EVT_JOYSTICK_EVENTS(win, func): + win.Connect(-1, -1, wxEVT_JOY_DOWN, func) + win.Connect(-1, -1, wxEVT_JOY_UP, func) + win.Connect(-1, -1, wxEVT_JOY_MOVE, func) + win.Connect(-1, -1, wxEVT_JOY_ZMOVE, func) #---------------------------------------------------------------------- class wxTimer(wxPyTimer): - def __init__(self): - wxPyTimer.__init__(self, self.Notify) # derived class must provide - # Notify(self) method. + def __init__(self, evtHandler = None, id = -1): + if evtHandler is None: + wxPyTimer.__init__(self, self.Notify) # derived class must provide + # Notify(self) method. + else: + wxPyTimer.__init__(self, None) + self.SetOwner(evtHandler, id) #---------------------------------------------------------------------- # Some wxWin methods can take "NULL" as parameters, but the shadow classes # expect an object with the SWIG pointer as a 'this' member. This class # and instance fools the shadow into passing the NULL pointer. -class NullObj: +## NOTE: This is not needed anymore as None can be passed instead and +# will be interpreted as NULL. + +class _NullObj: this = 'NULL' # SWIG converts this to (void*)0 -NULL = NullObj() +NULL = _NullObj() #---------------------------------------------------------------------- @@ -1523,15 +1479,11 @@ NULL = NullObj() wxColor = wxColour wxNamedColor = wxNamedColour -wxPyDefaultPosition.Set(-1,-1) -wxPyDefaultSize.Set(-1,-1) - -# aliases so that C++ documentation applies: -wxDefaultPosition = wxPyDefaultPosition -wxDefaultSize = wxPyDefaultSize # backwards compatibility -wxNoRefBitmap = wxBitmap +wxNoRefBitmap = wxBitmap +wxPyDefaultPosition = wxDefaultPosition +wxPyDefaultSize = wxDefaultSize #---------------------------------------------------------------------- # This helper function will take a wxPython object and convert it to @@ -1555,6 +1507,8 @@ wxNoRefBitmap = wxBitmap # def wxPyTypeCast(obj, typeStr): + if obj is None: + return None if hasattr(obj, "this"): newPtr = ptrcast(obj.this, typeStr+"_p") else: @@ -1566,12 +1520,14 @@ def wxPyTypeCast(obj, typeStr): return theObj +#---------------------------------------------------------------------- #---------------------------------------------------------------------- class wxPyOnDemandOutputWindow: def __init__(self, title = "wxPython: stdout/stderr"): self.frame = None self.title = title + self.parent = None def SetParent(self, parent): @@ -1585,7 +1541,7 @@ class wxPyOnDemandOutputWindow: self.text = None - # this provides the file-like behaviour + # this provides the file-like output behaviour def write(self, str): if not self.frame: self.frame = wxFrame(self.parent, -1, self.title) @@ -1599,9 +1555,7 @@ class wxPyOnDemandOutputWindow: def close(self): if self.frame != None: - self.frame.Destroy() - self.frame = None - self.text = None + self.frame.Close() @@ -1635,7 +1589,6 @@ class wxApp(wxPyApp): def SetTopWindow(self, frame): if self.stdioWin: self.stdioWin.SetParent(frame) - sys.stderr = sys.stdout = self.stdioWin wxPyApp.SetTopWindow(self, frame) @@ -1649,18 +1602,18 @@ class wxApp(wxPyApp): sys.stdout = sys.stderr = open(filename, 'a') else: self.stdioWin = self.outputWindowClass() # wxPyOnDemandOutputWindow + sys.stdout = sys.stderr = self.stdioWin def RestoreStdio(self): sys.stdout, sys.stderr = self.saveStdio - if self.stdioWin != None: - self.stdioWin.close() + #---------------------------------------------------------------------------- class wxPySimpleApp(wxApp): - def __init__(self): - wxApp.__init__(self, 0) + def __init__(self, flag=0): + wxApp.__init__(self, flag) def OnInit(self): return true @@ -1693,6 +1646,3 @@ class __wxPyCleanup: __cleanMeUp = __wxPyCleanup() #---------------------------------------------------------------------------- - - -