Changeset 9071:4012ba2fa7d0 in orange


Ignore:
Timestamp:
10/06/11 18:14:32 (3 years ago)
Author:
matija <matija.polajnar@…>
Branch:
default
Convert:
d842d60d56edce4489745ba990409b7894ea67a4
Message:

Remember the chosen tab during icon size (or tab style) change. Closes #431.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeCanvas/orngCanvas.pyw

    r8956 r9071  
    302302             
    303303    def createWidgetsToolbar(self): 
     304        barstate, treestate = None, None 
    304305        if self.widgetsToolBar: 
    305306            self.settings["showWidgetToolbar"] = self.widgetsToolBar.isVisible() 
    306307            if isinstance(self.widgetsToolBar, QToolBar): 
    307308                self.removeToolBar(self.widgetsToolBar) 
     309                barstate = (self.tabs.currentIndex(), ) 
    308310            elif isinstance(self.widgetsToolBar, orngTabs.WidgetToolBox): 
    309311                self.settings["toolboxWidth"] = self.widgetsToolBar.toolbox.width() 
    310312                self.removeDockWidget(self.widgetsToolBar) 
     313                barstate = (self.tabs.toolbox.currentIndex(), ) 
    311314            elif isinstance(self.widgetsToolBar, orngTabs.WidgetTree): 
    312315                self.settings["toolboxWidth"] = self.widgetsToolBar.treeWidget.width() 
    313316                self.removeDockWidget(self.widgetsToolBar) 
     317                treestate = ( [self.tabs.treeWidget.topLevelItem(i).isExpanded() 
     318                               for i in range(self.tabs.treeWidget.topLevelItemCount())], ) 
    314319             
    315320        if self.settings["widgetListType"] == 0: 
     
    334339        if not self.settings.get("showWidgetToolbar", True):  
    335340            self.widgetsToolBar.hide() 
     341        if barstate: 
     342            if self.settings["widgetListType"] == 0: 
     343                self.tabs.toolbox.setCurrentIndex(barstate[0]) 
     344            else: 
     345                self.tabs.setCurrentPage(barstate[0]) 
     346        if treestate and self.settings["widgetListType"] in [1, 2]: 
     347            for i, e in enumerate(treestate[0]): 
     348                self.tabs.treeWidget.topLevelItem(i).setExpanded(e) 
     349 
    336350 
    337351    def readShortcuts(self): 
Note: See TracChangeset for help on using the changeset viewer.