From e06337ee1f8a8b57ed3ab49c6051a2059fcc10e8 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 9 Jul 2009 22:36:14 +0900 Subject: [PATCH] save & restore toolbar state in cardlist --- ankiqt/ui/cardlist.py | 6 +++++- ankiqt/ui/utils.py | 9 +++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ankiqt/ui/cardlist.py b/ankiqt/ui/cardlist.py index dab1c2b7b..20031bb89 100644 --- a/ankiqt/ui/cardlist.py +++ b/ankiqt/ui/cardlist.py @@ -14,7 +14,7 @@ from anki.facts import factsTable, fieldsTable, Fact from anki.utils import fmtTimeSpan, parseTags, findTag, addTags, deleteTags, \ stripHTML, ids2str from ankiqt.ui.utils import saveGeom, restoreGeom, saveSplitter, restoreSplitter -from ankiqt.ui.utils import saveHeader, restoreHeader +from ankiqt.ui.utils import saveHeader, restoreHeader, saveState, restoreState from anki.errors import * from anki.db import * from anki.stats import CardStats @@ -326,9 +326,12 @@ class EditDeck(QMainWindow): self.dialog.setupUi(self) self.setUnifiedTitleAndToolBarOnMac(True) restoreGeom(self, "editor") + restoreState(self, "editor") restoreSplitter(self.dialog.splitter, "editor") + # toolbar self.dialog.toolBar.setIconSize(QSize(self.config['iconSize'], self.config['iconSize'])) + self.dialog.toolBar.toggleViewAction().setText(_("Toggle Toolbar")) # flush all changes before we load self.deck.s.flush() self.model = DeckModel(self.parent, self.parent.deck) @@ -686,6 +689,7 @@ class EditDeck(QMainWindow): self.editor.setFact(None) self.editor.close() saveGeom(self, "editor") + saveState(self, "editor") saveHeader(self.dialog.tableView.horizontalHeader(), "editor") self.hide() ui.dialogs.close("CardList") diff --git a/ankiqt/ui/utils.py b/ankiqt/ui/utils.py index bc31c149a..0bc1454c6 100644 --- a/ankiqt/ui/utils.py +++ b/ankiqt/ui/utils.py @@ -166,6 +166,15 @@ def restoreGeom(widget, key): if ankiqt.mw.config.get(key): widget.restoreGeometry(ankiqt.mw.config[key]) +def saveState(widget, key): + key += "State" + ankiqt.mw.config[key] = widget.saveState() + +def restoreState(widget, key): + key += "State" + if ankiqt.mw.config.get(key): + widget.restoreState(ankiqt.mw.config[key]) + def saveSplitter(widget, key): key += "Splitter" ankiqt.mw.config[key] = widget.saveState()