Ticket #1065: uiApp.patch

File uiApp.patch, 1.9 kB (added by dj, 1 year ago)

patch for uiwx/uiApp.py that adds the TabOrder? and UseTabOrder? properties, Made the UseTabOrder? property False by default

  • I:\python\Table

    old new  
    149149        self._mruMaxItems = 12 
    150150        wx.InitAllImageHandlers() 
    151151         
     152        #Atribute used by CustomTabOrder Property 
     153        self._tabOrder = dabo.ui.dTabGroup() 
     154        self._useTabOrder = False 
     155 
    152156         
    153157    def OnInit(self): 
    154158        app = self.dApp 
     
    799803        if self.ActiveForm: 
    800804            self.ActiveForm.refresh() 
    801805         
     806    def onNav(self, evt): 
     807        self._tabOrder.setCurrent(self.ActiveForm.FindFocus()) 
     808        if evt.GetDirection(): 
     809            self._tabOrder.next() 
     810        else: 
     811            self._tabOrder.prev() 
     812 
    802813     
    803814    def _getActiveForm(self): 
    804815        af = getattr(self, "_activeForm", None) 
     
    810821        self._activeForm = frm 
    811822         
    812823         
     824    def _getTabOrder(self): 
     825        return self._tabOrder 
     826 
     827    def _setTabOrder(self, val): 
     828        if not isinstance(val, dabo.ui.dTabGroup): 
     829            raise ValueError("CustomTabOrder must be an instance of dabo.ui.dTabGroup") 
     830 
     831        self._tabOrder = val 
     832 
     833 
    813834    def _getDrawSizerOutlines(self): 
    814835        return self._drawSizerOutlines 
    815836     
     
    817838        self._drawSizerOutlines = val 
    818839     
    819840     
     841    def _getUseTabOrder(self): 
     842        return self._useTabOrder 
     843 
     844    def _setUseTabOrder(self, val): 
     845        if val: 
     846            self.Bind(wx.EVT_NAVIGATION_KEY, self.onNav) 
     847        else: 
     848            self.Unbind(wx.EVT_NAVIGATION_KEY) 
     849 
     850 
    820851    ActiveForm = property(_getActiveForm, _setActiveForm, None,  
    821852            _("Returns the form that currently has focus, or None.  (dForm)" ) ) 
    822853 
     854    TabOrder = property(_getTabOrder, _setTabOrder, None, 
     855            _("Returns the Custom Tab Order (dTabGroup)") ) 
     856 
    823857    DrawSizerOutlines = property(_getDrawSizerOutlines, _setDrawSizerOutlines, None, 
    824858            _("Determines if sizer outlines are drawn on the ActiveForm.  (bool)") ) 
    825859     
     860    UseTabOrder = property(_getUseTabOrder, _setUseTabOrder, None, 
     861            _("Determins if we should use a custom Tab Order or not.  (bool)") ) 
     862