Move output format to config option. Have output format list all avaliable output formats.

This commit is contained in:
John Schember 2009-05-08 20:33:13 -04:00
parent fe9a33adf7
commit 2ae74a0395
4 changed files with 665 additions and 713 deletions

View File

@ -25,7 +25,7 @@ from calibre.customize.ui import initialized_plugins, is_disabled, enable_plugin
disable_plugin, customize_plugin, \
plugin_customization, add_plugin, \
remove_plugin, input_format_plugins, \
output_format_plugins
output_format_plugins, available_output_formats
from calibre.utils.smtp import config as smtp_prefs
from calibre.gui2.convert.look_and_feel import LookAndFeelWidget
from calibre.gui2.convert.page_setup import PageSetupWidget
@ -391,6 +391,13 @@ class ConfigDialog(QDialog, Ui_Dialog):
icons = config['toolbar_icon_size']
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)
self.book_exts = sorted(BOOK_EXTENSIONS)
for ext in self.book_exts:
@ -760,6 +767,7 @@ class ConfigDialog(QDialog, Ui_Dialog):
p = {0:'normal', 1:'high', 2:'low'}[self.priority.currentIndex()]
prefs['worker_process_priority'] = p
prefs['read_file_metadata'] = bool(self.pdf_metadata.isChecked())
prefs['output_format'] = self.output_format.currentText()
config['save_to_disk_single_format'] = self.book_exts[self.single_format.currentIndex()]
config['cover_flow_queue_length'] = self.cover_browse.value()
prefs['language'] = str(self.language.itemData(self.language.currentIndex()).toString())

File diff suppressed because it is too large Load Diff

View File

@ -136,14 +136,6 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
SIGNAL('location_selected(PyQt_PyObject)'),
self.location_selected)
self.output_formats = sorted(['EPUB', 'MOBI', 'LRF'])
for f in self.output_formats:
self.output_format.addItem(f)
self.output_format.setCurrentIndex(self.output_formats.index(
prefs['output_format']))
self.connect(self.output_format, SIGNAL('currentIndexChanged(QString)'),
self.change_output_format, Qt.QueuedConnection)
####################### Vanity ########################
self.vanity_template = _('<p>For help visit <a href="http://%s.'
'kovidgoyal.net/user_manual">%s.kovidgoyal.net</a>'
@ -266,8 +258,6 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
setPopupMode(QToolButton.MenuButtonPopup)
self.tool_bar.setContextMenuPolicy(Qt.PreventContextMenu)
QObject.connect(self.config_button,
SIGNAL('clicked(bool)'), self.do_config)
self.connect(self.preferences_action, SIGNAL('triggered(bool)'),
self.do_config)
self.connect(self.action_preferences, SIGNAL('triggered(bool)'),
@ -452,12 +442,6 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
window.show()
setattr(window, '__systray_minimized', False)
def change_output_format(self, x):
of = unicode(x).strip()
if of != prefs['output_format']:
prefs.set('output_format', of)
def test_server(self, *args):
if self.content_server.exception is not None:
error_dialog(self, _('Failed to start content server'),

View File

@ -1,8 +1,9 @@
<ui version="4.0" >
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<author>Kovid Goyal</author>
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow" >
<property name="geometry" >
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
@ -10,331 +11,279 @@
<height>822</height>
</rect>
</property>
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="contextMenuPolicy" >
<property name="contextMenuPolicy">
<enum>Qt::NoContextMenu</enum>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>__appname__</string>
</property>
<property name="windowIcon" >
<iconset resource="images.qrc" >
<property name="windowIcon">
<iconset resource="images.qrc">
<normaloff>:/library</normaloff>:/library</iconset>
</property>
<widget class="QWidget" name="centralwidget" >
<layout class="QGridLayout" name="gridLayout" >
<item row="0" column="0" >
<layout class="QHBoxLayout" name="horizontalLayout_3" >
<widget class="QWidget" name="centralwidget">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="LocationView" name="location_view" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
<widget class="LocationView" name="location_view">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>16777215</width>
<height>100</height>
</size>
</property>
<property name="verticalScrollBarPolicy" >
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy" >
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>
<property name="editTriggers" >
<property name="editTriggers">
<set>QAbstractItemView::NoEditTriggers</set>
</property>
<property name="tabKeyNavigation" >
<property name="tabKeyNavigation">
<bool>true</bool>
</property>
<property name="showDropIndicator" stdset="0" >
<property name="showDropIndicator" stdset="0">
<bool>true</bool>
</property>
<property name="selectionMode" >
<property name="selectionMode">
<enum>QAbstractItemView::NoSelection</enum>
</property>
<property name="selectionBehavior" >
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="iconSize" >
<property name="iconSize">
<size>
<width>40</width>
<height>40</height>
</size>
</property>
<property name="movement" >
<property name="movement">
<enum>QListView::Static</enum>
</property>
<property name="flow" >
<property name="flow">
<enum>QListView::LeftToRight</enum>
</property>
<property name="gridSize" >
<property name="gridSize">
<size>
<width>175</width>
<height>90</height>
</size>
</property>
<property name="viewMode" >
<property name="viewMode">
<enum>QListView::ListMode</enum>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="donate_button" >
<property name="cursor" >
<widget class="QToolButton" name="donate_button">
<property name="cursor">
<cursorShape>PointingHandCursor</cursorShape>
</property>
<property name="text" >
<property name="text">
<string>...</string>
</property>
<property name="icon" >
<iconset resource="images.qrc" >
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/donate.svg</normaloff>:/images/donate.svg</iconset>
</property>
<property name="iconSize" >
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
<property name="autoRaise" >
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_3" >
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="vanity" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
<widget class="QLabel" name="vanity">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>16777215</width>
<height>90</height>
</size>
</property>
<property name="text" >
<property name="text">
<string/>
</property>
<property name="textFormat" >
<property name="textFormat">
<enum>Qt::RichText</enum>
</property>
<property name="openExternalLinks" >
<property name="openExternalLinks">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2" >
<item>
<widget class="QLabel" name="label_2" >
<property name="text" >
<string>Output:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="output_format" >
<property name="toolTip" >
<string>Set the output format that is used when converting ebooks and downloading news</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</item>
<item row="1" column="0" >
<layout class="QHBoxLayout" >
<property name="spacing" >
<item row="1" column="0">
<layout class="QHBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="margin" >
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QToolButton" name="advanced_search_button" >
<property name="toolTip" >
<widget class="QToolButton" name="advanced_search_button">
<property name="toolTip">
<string>Advanced search</string>
</property>
<property name="text" >
<property name="text">
<string>...</string>
</property>
<property name="icon" >
<iconset resource="images.qrc" >
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/search.svg</normaloff>:/images/search.svg</iconset>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>Alt+S</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label" >
<property name="text" >
<widget class="QLabel" name="label">
<property name="text">
<string>&amp;Search:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>search</cstring>
</property>
</widget>
</item>
<item>
<widget class="SearchBox" name="search" >
<property name="enabled" >
<widget class="SearchBox" name="search">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="acceptDrops" >
<property name="acceptDrops">
<bool>false</bool>
</property>
<property name="toolTip" >
<string>Search the list of books by title or author&lt;br>&lt;br>Words separated by spaces are ANDed</string>
<property name="toolTip">
<string>Search the list of books by title or author&lt;br&gt;&lt;br&gt;Words separated by spaces are ANDed</string>
</property>
<property name="whatsThis" >
<string>Search the list of books by title, author, publisher, tags and comments&lt;br>&lt;br>Words separated by spaces are ANDed</string>
<property name="whatsThis">
<string>Search the list of books by title, author, publisher, tags and comments&lt;br&gt;&lt;br&gt;Words separated by spaces are ANDed</string>
</property>
<property name="autoFillBackground" >
<property name="autoFillBackground">
<bool>false</bool>
</property>
<property name="text" >
<property name="text">
<string/>
</property>
<property name="frame" >
<property name="frame">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="clear_button" >
<property name="toolTip" >
<widget class="QToolButton" name="clear_button">
<property name="toolTip">
<string>Reset Quick Search</string>
</property>
<property name="text" >
<property name="text">
<string>...</string>
</property>
<property name="icon" >
<iconset resource="images.qrc" >
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/clear_left.svg</normaloff>:/images/clear_left.svg</iconset>
</property>
</widget>
</item>
<item>
<widget class="Line" name="line" >
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0" >
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QToolButton" name="config_button" >
<property name="toolTip" >
<string>Configuration</string>
</property>
<property name="text" >
<string>...</string>
</property>
<property name="icon" >
<iconset resource="images.qrc" >
<normaloff>:/images/config.svg</normaloff>:/images/config.svg</iconset>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" >
<widget class="QStackedWidget" name="stack" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
<item row="2" column="0">
<widget class="QStackedWidget" name="stack">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>100</horstretch>
<verstretch>100</verstretch>
</sizepolicy>
</property>
<property name="currentIndex" >
<property name="currentIndex">
<number>3</number>
</property>
<widget class="QWidget" name="library" >
<layout class="QVBoxLayout" name="verticalLayout_2" >
<widget class="QWidget" name="library">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<layout class="QHBoxLayout" name="horizontalLayout" >
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QVBoxLayout" name="verticalLayout" >
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QRadioButton" name="match_any" >
<property name="text" >
<widget class="QRadioButton" name="match_any">
<property name="text">
<string>Match any</string>
</property>
<property name="checked" >
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="match_all" >
<property name="text" >
<widget class="QRadioButton" name="match_all">
<property name="text">
<string>Match all</string>
</property>
<property name="checked" >
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="popularity" >
<property name="text" >
<widget class="QCheckBox" name="popularity">
<property name="text">
<string>Sort by &amp;popularity</string>
</property>
</widget>
</item>
<item>
<widget class="TagsView" name="tags_view" >
<property name="tabKeyNavigation" >
<widget class="TagsView" name="tags_view">
<property name="tabKeyNavigation">
<bool>true</bool>
</property>
<property name="alternatingRowColors" >
<property name="alternatingRowColors">
<bool>true</bool>
</property>
<property name="animated" >
<property name="animated">
<bool>true</bool>
</property>
<property name="headerHidden" >
<property name="headerHidden">
<bool>true</bool>
</property>
</widget>
@ -342,35 +291,35 @@
</layout>
</item>
<item>
<widget class="BooksView" name="library_view" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
<widget class="BooksView" name="library_view">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>100</horstretch>
<verstretch>10</verstretch>
</sizepolicy>
</property>
<property name="acceptDrops" >
<property name="acceptDrops">
<bool>true</bool>
</property>
<property name="dragEnabled" >
<property name="dragEnabled">
<bool>true</bool>
</property>
<property name="dragDropOverwriteMode" >
<property name="dragDropOverwriteMode">
<bool>false</bool>
</property>
<property name="dragDropMode" >
<property name="dragDropMode">
<enum>QAbstractItemView::DragDrop</enum>
</property>
<property name="alternatingRowColors" >
<property name="alternatingRowColors">
<bool>true</bool>
</property>
<property name="selectionBehavior" >
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="showGrid" >
<property name="showGrid">
<bool>false</bool>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
@ -379,114 +328,114 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="main_memory" >
<layout class="QGridLayout" >
<item row="0" column="0" >
<widget class="DeviceBooksView" name="memory_view" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
<widget class="QWidget" name="main_memory">
<layout class="QGridLayout">
<item row="0" column="0">
<widget class="DeviceBooksView" name="memory_view">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>100</horstretch>
<verstretch>10</verstretch>
</sizepolicy>
</property>
<property name="acceptDrops" >
<property name="acceptDrops">
<bool>true</bool>
</property>
<property name="dragEnabled" >
<property name="dragEnabled">
<bool>true</bool>
</property>
<property name="dragDropOverwriteMode" >
<property name="dragDropOverwriteMode">
<bool>false</bool>
</property>
<property name="dragDropMode" >
<property name="dragDropMode">
<enum>QAbstractItemView::DragDrop</enum>
</property>
<property name="alternatingRowColors" >
<property name="alternatingRowColors">
<bool>true</bool>
</property>
<property name="selectionBehavior" >
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="showGrid" >
<property name="showGrid">
<bool>false</bool>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="card_a_memory" >
<layout class="QGridLayout" >
<item row="0" column="0" >
<widget class="DeviceBooksView" name="card_a_view" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
<widget class="QWidget" name="card_a_memory">
<layout class="QGridLayout">
<item row="0" column="0">
<widget class="DeviceBooksView" name="card_a_view">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
<horstretch>10</horstretch>
<verstretch>10</verstretch>
</sizepolicy>
</property>
<property name="acceptDrops" >
<property name="acceptDrops">
<bool>true</bool>
</property>
<property name="dragEnabled" >
<property name="dragEnabled">
<bool>true</bool>
</property>
<property name="dragDropOverwriteMode" >
<property name="dragDropOverwriteMode">
<bool>false</bool>
</property>
<property name="dragDropMode" >
<property name="dragDropMode">
<enum>QAbstractItemView::DragDrop</enum>
</property>
<property name="alternatingRowColors" >
<property name="alternatingRowColors">
<bool>true</bool>
</property>
<property name="selectionBehavior" >
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="showGrid" >
<property name="showGrid">
<bool>false</bool>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="card_b_memory" >
<layout class="QGridLayout" >
<item row="0" column="0" >
<widget class="DeviceBooksView" name="card_b_view" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
<widget class="QWidget" name="card_b_memory">
<layout class="QGridLayout">
<item row="0" column="0">
<widget class="DeviceBooksView" name="card_b_view">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
<horstretch>10</horstretch>
<verstretch>10</verstretch>
</sizepolicy>
</property>
<property name="acceptDrops" >
<property name="acceptDrops">
<bool>true</bool>
</property>
<property name="dragEnabled" >
<property name="dragEnabled">
<bool>true</bool>
</property>
<property name="dragDropOverwriteMode" >
<property name="dragDropOverwriteMode">
<bool>false</bool>
</property>
<property name="dragDropMode" >
<property name="dragDropMode">
<enum>QAbstractItemView::DragDrop</enum>
</property>
<property name="alternatingRowColors" >
<property name="alternatingRowColors">
<bool>true</bool>
</property>
<property name="selectionBehavior" >
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="showGrid" >
<property name="showGrid">
<bool>false</bool>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
@ -497,225 +446,225 @@
</item>
</layout>
</widget>
<widget class="QToolBar" name="tool_bar" >
<property name="minimumSize" >
<widget class="QToolBar" name="tool_bar">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="contextMenuPolicy" >
<property name="contextMenuPolicy">
<enum>Qt::PreventContextMenu</enum>
</property>
<property name="movable" >
<property name="movable">
<bool>false</bool>
</property>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="iconSize" >
<property name="iconSize">
<size>
<width>48</width>
<height>48</height>
</size>
</property>
<property name="toolButtonStyle" >
<property name="toolButtonStyle">
<enum>Qt::ToolButtonTextUnderIcon</enum>
</property>
<attribute name="toolBarArea" >
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak" >
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
<addaction name="action_add" />
<addaction name="action_edit" />
<addaction name="action_convert" />
<addaction name="action_view" />
<addaction name="action_news" />
<addaction name="separator" />
<addaction name="action_sync" />
<addaction name="action_save" />
<addaction name="action_del" />
<addaction name="separator" />
<addaction name="action_preferences" />
<addaction name="action_add"/>
<addaction name="action_edit"/>
<addaction name="action_convert"/>
<addaction name="action_view"/>
<addaction name="action_news"/>
<addaction name="separator"/>
<addaction name="action_sync"/>
<addaction name="action_save"/>
<addaction name="action_del"/>
<addaction name="separator"/>
<addaction name="action_preferences"/>
</widget>
<widget class="QStatusBar" name="statusBar" >
<property name="mouseTracking" >
<widget class="QStatusBar" name="statusBar">
<property name="mouseTracking">
<bool>true</bool>
</property>
</widget>
<action name="action_add" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_add">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/add_book.svg</normaloff>:/images/add_book.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Add books</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>A</string>
</property>
<property name="autoRepeat" >
<property name="autoRepeat">
<bool>false</bool>
</property>
</action>
<action name="action_del" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_del">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/trash.svg</normaloff>:/images/trash.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Remove books</string>
</property>
<property name="toolTip" >
<property name="toolTip">
<string>Remove books</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>Del</string>
</property>
</action>
<action name="action_edit" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_edit">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/edit_input.svg</normaloff>:/images/edit_input.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Edit meta information</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>E</string>
</property>
<property name="autoRepeat" >
<property name="autoRepeat">
<bool>false</bool>
</property>
</action>
<action name="action_sync" >
<property name="enabled" >
<action name="action_sync">
<property name="enabled">
<bool>false</bool>
</property>
<property name="icon" >
<iconset resource="images.qrc" >
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/sync.svg</normaloff>:/images/sync.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Send to device</string>
</property>
</action>
<action name="action_save" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_save">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/save.svg</normaloff>:/images/save.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Save to disk</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>S</string>
</property>
</action>
<action name="action_news" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_news">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/news.svg</normaloff>:/images/news.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Fetch news</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>F</string>
</property>
</action>
<action name="action_convert" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_convert">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/convert.svg</normaloff>:/images/convert.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Convert E-books</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>C</string>
</property>
</action>
<action name="action_view" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_view">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/view.svg</normaloff>:/images/view.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>View</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>V</string>
</property>
</action>
<action name="action_open_containing_folder" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_open_containing_folder">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/document_open.svg</normaloff>:/images/document_open.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Open containing folder</string>
</property>
</action>
<action name="action_show_book_details" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_show_book_details">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/dialog_information.svg</normaloff>:/images/dialog_information.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Show book details</string>
</property>
</action>
<action name="action_books_by_same_author" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_books_by_same_author">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/user_profile.svg</normaloff>:/images/user_profile.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Books by same author</string>
</property>
</action>
<action name="action_books_in_this_series" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_books_in_this_series">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/books_in_series.svg</normaloff>:/images/books_in_series.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Books in this series</string>
</property>
</action>
<action name="action_books_by_this_publisher" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_books_by_this_publisher">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/publisher.png</normaloff>:/images/publisher.png</iconset>
</property>
<property name="text" >
<property name="text">
<string>Books by this publisher</string>
</property>
</action>
<action name="action_books_with_the_same_tags" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_books_with_the_same_tags">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/tags.svg</normaloff>:/images/tags.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Books with the same tags</string>
</property>
</action>
<action name="action_preferences" >
<property name="icon" >
<iconset resource="images.qrc" >
<action name="action_preferences">
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/config.svg</normaloff>:/images/config.svg</iconset>
</property>
<property name="text" >
<property name="text">
<string>Preferences</string>
</property>
<property name="toolTip" >
<property name="toolTip">
<string>Configure calibre</string>
</property>
<property name="shortcut" >
<property name="shortcut">
<string>Ctrl+P</string>
</property>
</action>
@ -748,7 +697,7 @@
</customwidget>
</customwidgets>
<resources>
<include location="images.qrc" />
<include location="images.qrc"/>
</resources>
<connections>
<connection>
@ -757,11 +706,11 @@
<receiver>search</receiver>
<slot>clear()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>787</x>
<y>215</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>755</x>
<y>213</y>
</hint>