From 7e233696a1c2bbe3ca4c0469a99540da665fc94f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 22 Sep 2010 16:11:53 -0600 Subject: [PATCH] ... --- src/calibre/manual/tutorials.rst | 1 + src/calibre/utils/pyconsole/__init__.py | 4 ++-- src/calibre/utils/pyconsole/main.py | 22 +++++++++++++++++----- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/calibre/manual/tutorials.rst b/src/calibre/manual/tutorials.rst index d07316deb9..1e4cab8493 100644 --- a/src/calibre/manual/tutorials.rst +++ b/src/calibre/manual/tutorials.rst @@ -11,6 +11,7 @@ Here you will find tutorials to get you started using |app|'s more advanced feat .. toctree:: :maxdepth: 1 + news xpath template_lang portable diff --git a/src/calibre/utils/pyconsole/__init__.py b/src/calibre/utils/pyconsole/__init__.py index 32eb926143..cf7e5eab50 100644 --- a/src/calibre/utils/pyconsole/__init__.py +++ b/src/calibre/utils/pyconsole/__init__.py @@ -8,7 +8,7 @@ __docformat__ = 'restructuredtext en' import sys from calibre import prints as prints_ -from calibre.utils.config import Config, ConfigProxy +from calibre.utils.config import Config, ConfigProxy, JSONConfig def console_config(): @@ -20,7 +20,7 @@ def console_config(): return c prefs = ConfigProxy(console_config()) - +dynamic = JSONConfig('console') def prints(*args, **kwargs): kwargs['file'] = sys.__stdout__ diff --git a/src/calibre/utils/pyconsole/main.py b/src/calibre/utils/pyconsole/main.py index a708ca1652..4027897ddd 100644 --- a/src/calibre/utils/pyconsole/main.py +++ b/src/calibre/utils/pyconsole/main.py @@ -12,6 +12,7 @@ from PyQt4.Qt import QDialog, QToolBar, QStatusBar, QLabel, QFont, Qt, \ QApplication, QIcon, QVBoxLayout, QAction from calibre.constants import __appname__, __version__ +from calibre.utils.pyconsole import dynamic from calibre.utils.pyconsole.console import Console class MainWindow(QDialog): @@ -26,6 +27,9 @@ class MainWindow(QDialog): self.setLayout(self.l) self.resize(800, 600) + geom = dynamic.get('console_window_geometry', None) + if geom is not None: + self.restoreGeometry(geom) # Setup tool bar {{{ self.tool_bar = QToolBar(self) @@ -62,17 +66,25 @@ class MainWindow(QDialog): self.restart_requested = True self.reject() -def main(): - QApplication.setApplicationName(__appname__+' console') - QApplication.setOrganizationName('Kovid Goyal') - app = QApplication([]) - app + def closeEvent(self, *args): + dynamic.set('console_window_geometry', + bytearray(self.saveGeometry())) + return QDialog.closeEvent(self, *args) + + +def show(): while True: m = MainWindow() m.exec_() if not m.restart_requested: break +def main(): + QApplication.setApplicationName(__appname__+' console') + QApplication.setOrganizationName('Kovid Goyal') + app = QApplication([]) + app + show() if __name__ == '__main__': main()