Sync to pluginize

This commit is contained in:
John Schember 2009-05-09 13:33:07 -04:00
commit 02c7fb0209
5 changed files with 102 additions and 99 deletions

View File

@ -392,13 +392,6 @@ class ConfigDialog(QDialog, Ui_Dialog):
self.toolbar_button_size.setCurrentIndex(0 if icons == self.ICON_SIZES[0] else 1 if icons == self.ICON_SIZES[1] else 2)
self.show_toolbar_text.setChecked(config['show_text_in_toolbar'])
output_formats = sorted(available_output_formats())
output_formats.remove('oeb')
for f in output_formats:
self.output_format.addItem(f)
default_index = self.output_format.findText(prefs['output_format'])
self.output_format.setCurrentIndex(default_index if default_index != -1 else 0)
output_formats = sorted(available_output_formats())
output_formats.remove('oeb')
for f in output_formats:

View File

@ -220,7 +220,10 @@
<item row="0" column="0">
<widget class="QLabel" name="label_23">
<property name="text">
<string>Output Format:</string>
<string>Preferred &amp;output format:</string>
</property>
<property name="buddy">
<cstring>output_format</cstring>
</property>
</widget>
</item>

View File

@ -1,7 +1,8 @@
<ui version="4.0" >
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog" >
<property name="geometry" >
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
@ -9,150 +10,157 @@
<height>574</height>
</rect>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>Configure Ebook viewer</string>
</property>
<property name="windowIcon" >
<iconset resource="../images.qrc" >
<property name="windowIcon">
<iconset resource="../images.qrc">
<normaloff>:/images/config.svg</normaloff>:/images/config.svg</iconset>
</property>
<layout class="QGridLayout" name="gridLayout_4" >
<item row="0" column="0" >
<widget class="QGroupBox" name="groupBox" >
<property name="title" >
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>&amp;Font options</string>
</property>
<layout class="QGridLayout" name="gridLayout_3" >
<item row="0" column="0" >
<layout class="QGridLayout" name="gridLayout" >
<item row="0" column="0" >
<widget class="QLabel" name="label" >
<property name="text" >
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Se&amp;rif family:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>serif_family</cstring>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="QFontComboBox" name="serif_family" />
<item row="0" column="1">
<widget class="QFontComboBox" name="serif_family"/>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="label_2" >
<property name="text" >
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>&amp;Sans family:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>sans_family</cstring>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QFontComboBox" name="sans_family" />
<item row="1" column="1">
<widget class="QFontComboBox" name="sans_family"/>
</item>
<item row="2" column="0" >
<widget class="QLabel" name="label_3" >
<property name="text" >
<item row="2" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>&amp;Monospace family:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>mono_family</cstring>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QFontComboBox" name="mono_family" />
<item row="2" column="1">
<widget class="QFontComboBox" name="mono_family"/>
</item>
</layout>
</item>
<item row="1" column="0" >
<layout class="QGridLayout" name="gridLayout_2" >
<item row="0" column="0" >
<widget class="QLabel" name="label_4" >
<property name="text" >
<item row="1" column="0">
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>&amp;Default font size:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>default_font_size</cstring>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="QSpinBox" name="default_font_size" >
<property name="suffix" >
<item row="0" column="1">
<widget class="QSpinBox" name="default_font_size">
<property name="suffix">
<string> px</string>
</property>
<property name="minimum" >
<property name="minimum">
<number>8</number>
</property>
<property name="maximum" >
<property name="maximum">
<number>40</number>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="label_5" >
<property name="text" >
<item row="1" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>Monospace &amp;font size:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>mono_font_size</cstring>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QSpinBox" name="mono_font_size" >
<property name="suffix" >
<item row="1" column="1">
<widget class="QSpinBox" name="mono_font_size">
<property name="suffix">
<string> px</string>
</property>
<property name="minimum" >
<property name="minimum">
<number>8</number>
</property>
<property name="maximum" >
<property name="maximum">
<number>50</number>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QLabel" name="label_6" >
<property name="text" >
<item row="2" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>S&amp;tandard font:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>standard_font</cstring>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QComboBox" name="standard_font" >
<item row="2" column="1">
<widget class="QComboBox" name="standard_font">
<item>
<property name="text" >
<property name="text">
<string>Serif</string>
</property>
</item>
<item>
<property name="text" >
<property name="text">
<string>Sans-serif</string>
</property>
</item>
<item>
<property name="text" >
<property name="text">
<string>Monospace</string>
</property>
</item>
</widget>
</item>
<item row="3" column="0" colspan="2">
<widget class="QCheckBox" name="opt_remember_window_size">
<property name="text">
<string>Remember last used &amp;window size</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" >
<widget class="QGroupBox" name="groupBox_2" >
<property name="title" >
<item row="2" column="0">
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>&amp;User stylesheet</string>
</property>
<layout class="QGridLayout" name="gridLayout_5" >
<item row="0" column="0" >
<widget class="QPlainTextEdit" name="css" />
<layout class="QGridLayout" name="gridLayout_5">
<item row="0" column="0">
<widget class="QPlainTextEdit" name="css"/>
</item>
</layout>
</widget>
@ -160,12 +168,12 @@
</layout>
</widget>
</item>
<item row="1" column="0" >
<widget class="QDialogButtonBox" name="buttonBox" >
<property name="orientation" >
<item row="1" column="0">
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons" >
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
@ -173,7 +181,7 @@
</layout>
</widget>
<resources>
<include location="../images.qrc" />
<include location="../images.qrc"/>
</resources>
<connections>
<connection>
@ -182,11 +190,11 @@
<receiver>Dialog</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
@ -198,11 +206,11 @@
<receiver>Dialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>

View File

@ -53,6 +53,8 @@ def config(defaults=None):
else:
c = StringConfig(defaults, desc)
c.add_opt('remember_window_size', default=False,
help=_('Remember last used window size'))
c.add_opt('user_css', default='',
help=_('Set the user CSS stylesheet. This can be used to customize the look of all books.'))
@ -76,6 +78,7 @@ class ConfigDialog(QDialog, Ui_Dialog):
self.setupUi(self)
opts = config().parse()
self.opt_remember_window_size.setChecked(opts.remember_window_size)
self.serif_family.setCurrentFont(QFont(opts.serif_family))
self.sans_family.setCurrentFont(QFont(opts.sans_family))
self.mono_family.setCurrentFont(QFont(opts.mono_family))
@ -94,6 +97,7 @@ class ConfigDialog(QDialog, Ui_Dialog):
c.set('mono_font_size', self.mono_font_size.value())
c.set('standard_font', {0:'serif', 1:'sans', 2:'mono'}[self.standard_font.currentIndex()])
c.set('user_css', unicode(self.css.toPlainText()))
c.set('remember_window_size', self.opt_remember_window_size.isChecked())
return QDialog.accept(self, *args)

View File

@ -20,7 +20,7 @@ from calibre.gui2 import Application, ORG_NAME, APP_UID, choose_files, \
from calibre.ebooks.oeb.iterator import EbookIterator
from calibre.ebooks import DRMError
from calibre.constants import islinux
from calibre.utils.config import Config, ConfigProxy, StringConfig
from calibre.utils.config import Config, StringConfig, dynamic
from calibre.gui2.library import SearchBox
from calibre.ebooks.metadata import MetaInformation
from calibre.customize.ui import available_input_formats
@ -598,29 +598,21 @@ class EbookViewer(MainWindow, Ui_EbookViewer):
return self
def __exit__(self, *args):
self.write_settings()
if self.iterator is not None:
self.save_current_position()
self.iterator.__exit__(*args)
def closeEvent(self, e):
self.write_settings()
def write_settings(self):
dynamic.set('viewer_window_geometry', self.saveGeometry())
def read_settings(self):
geometry = settings['viewer_window_geometry']
if geometry is not None:
self.restoreGeometry(geometry)
def write_settings(self):
settings.set('viewer_window_geometry', self.saveGeometry())
c = config().parse()
wg = dynamic['viewer_window_geometry']
if wg is not None and c.remember_window_size:
self.restoreGeometry(wg)
def _settings():
c = Config('viewer_gui', 'preferences for the calibre viewer GUI')
c.add_opt('viewer_window_geometry', default=None,
help=_('Viewer window geometry')) # value QVariant.toByteArray
return ConfigProxy(c)
settings = _settings()
def config(defaults=None):
@ -633,6 +625,9 @@ def config(defaults=None):
c.add_opt('raise_window', ['--raise-window'], default=False,
help=_('If specified, viewer window will try to come to the '
'front when started.'))
c.add_opt('remember_window_size', default=False,
help=_('Remember last used window size'))
return c
def option_parser():