mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-07 18:24:30 -04:00
Auto completes in convert dialog.
This commit is contained in:
parent
b70c1d1231
commit
4b338c5274
@ -35,21 +35,17 @@ class MetadataWidget(Widget, Ui_Form):
|
|||||||
self.connect(self.cover_button, SIGNAL("clicked()"), self.select_cover)
|
self.connect(self.cover_button, SIGNAL("clicked()"), self.select_cover)
|
||||||
|
|
||||||
def initialize_metadata_options(self):
|
def initialize_metadata_options(self):
|
||||||
all_series = self.db.all_series()
|
self.initialize_combos()
|
||||||
all_series.sort(cmp=lambda x, y : cmp(x[1], y[1]))
|
|
||||||
for series in all_series:
|
|
||||||
self.series.addItem(series[1])
|
|
||||||
self.series.setCurrentIndex(-1)
|
|
||||||
|
|
||||||
mi = self.db.get_metadata(self.book_id, index_is_id=True)
|
mi = self.db.get_metadata(self.book_id, index_is_id=True)
|
||||||
self.title.setText(mi.title)
|
self.title.setText(mi.title)
|
||||||
if mi.authors:
|
if mi.authors:
|
||||||
self.author.setText(authors_to_string(mi.authors))
|
self.author.setCurrentIndex(self.author.findText(authors_to_string(mi.authors)))
|
||||||
else:
|
if mi.publisher:
|
||||||
self.author.setText('')
|
self.publisher.setCurrentIndex(self.publisher.findText(mi.publisher))
|
||||||
self.publisher.setText(mi.publisher if mi.publisher else '')
|
|
||||||
self.author_sort.setText(mi.author_sort if mi.author_sort else '')
|
self.author_sort.setText(mi.author_sort if mi.author_sort else '')
|
||||||
self.tags.setText(', '.join(mi.tags if mi.tags else []))
|
self.tags.setText(', '.join(mi.tags if mi.tags else []))
|
||||||
|
self.tags.update_tags_cache(self.db.all_tags())
|
||||||
self.comment.setText(mi.comments if mi.comments else '')
|
self.comment.setText(mi.comments if mi.comments else '')
|
||||||
if mi.series:
|
if mi.series:
|
||||||
self.series.setCurrentIndex(self.series.findText(mi.series))
|
self.series.setCurrentIndex(self.series.findText(mi.series))
|
||||||
@ -66,6 +62,39 @@ class MetadataWidget(Widget, Ui_Form):
|
|||||||
if not pm.isNull():
|
if not pm.isNull():
|
||||||
self.cover.setPixmap(pm)
|
self.cover.setPixmap(pm)
|
||||||
|
|
||||||
|
def initialize_combos(self):
|
||||||
|
self.initalize_authors()
|
||||||
|
self.initialize_series()
|
||||||
|
self.initialize_publisher()
|
||||||
|
|
||||||
|
def initalize_authors(self):
|
||||||
|
all_authors = self.db.all_authors()
|
||||||
|
all_authors.sort(cmp=lambda x, y : cmp(x[1], y[1]))
|
||||||
|
|
||||||
|
for i in all_authors:
|
||||||
|
id, name = i
|
||||||
|
name = authors_to_string([name.strip().replace('|', ',') for n in name.split(',')])
|
||||||
|
self.author.addItem(name)
|
||||||
|
self.author.setCurrentIndex(-1)
|
||||||
|
|
||||||
|
def initialize_series(self):
|
||||||
|
all_series = self.db.all_series()
|
||||||
|
all_series.sort(cmp=lambda x, y : cmp(x[1], y[1]))
|
||||||
|
|
||||||
|
for i in all_series:
|
||||||
|
id, name = i
|
||||||
|
self.series.addItem(name)
|
||||||
|
self.series.setCurrentIndex(-1)
|
||||||
|
|
||||||
|
def initialize_publisher(self):
|
||||||
|
all_publishers = self.db.all_publishers()
|
||||||
|
all_publishers.sort(cmp=lambda x, y : cmp(x[1], y[1]))
|
||||||
|
|
||||||
|
for i in all_publishers:
|
||||||
|
id, name = i
|
||||||
|
self.publisher.addItem(name)
|
||||||
|
self.publisher.setCurrentIndex(-1)
|
||||||
|
|
||||||
def get_title_and_authors(self):
|
def get_title_and_authors(self):
|
||||||
title = unicode(self.title.text()).strip()
|
title = unicode(self.title.text()).strip()
|
||||||
if not title:
|
if not title:
|
||||||
|
@ -143,19 +143,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
|
||||||
<widget class="EnLineEdit" name="author">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
|
||||||
<horstretch>1</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>Change the author(s) of this book. Multiple authors should be separated by an &. If the author name contains an &, use && to represent it.</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QLabel" name="label_6">
|
<widget class="QLabel" name="label_6">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -195,13 +182,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="1">
|
|
||||||
<widget class="EnLineEdit" name="publisher">
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>Change the publisher of this book</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="4" column="0">
|
<item row="4" column="0">
|
||||||
<widget class="QLabel" name="label_4">
|
<widget class="QLabel" name="label_4">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -216,7 +196,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="1">
|
<item row="4" column="1">
|
||||||
<widget class="EnLineEdit" name="tags">
|
<widget class="TagsLineEdit" name="tags">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Tags categorize the book. This is particularly useful while searching. <br><br>They can be any words or phrases, separated by commas.</string>
|
<string>Tags categorize the book. This is particularly useful while searching. <br><br>They can be any words or phrases, separated by commas.</string>
|
||||||
</property>
|
</property>
|
||||||
@ -276,6 +256,20 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<widget class="EnComboBox" name="publisher">
|
||||||
|
<property name="editable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="EnComboBox" name="author">
|
||||||
|
<property name="editable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -329,11 +323,16 @@
|
|||||||
<extends>QComboBox</extends>
|
<extends>QComboBox</extends>
|
||||||
<header>widgets.h</header>
|
<header>widgets.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
|
<customwidget>
|
||||||
|
<class>TagsLineEdit</class>
|
||||||
|
<extends>QLineEdit</extends>
|
||||||
|
<header>widgets.h</header>
|
||||||
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="../images.qrc"/>
|
<include location="../images.qrc"/>
|
||||||
<include location="../images.qrc"/>
|
<include location="../images.qrc"/>
|
||||||
<include location="../../../../../gui2/images.qrc"/>
|
<include location="../images.qrc"/>
|
||||||
</resources>
|
</resources>
|
||||||
<connections/>
|
<connections/>
|
||||||
</ui>
|
</ui>
|
||||||
|
@ -42,7 +42,6 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
|
|||||||
|
|
||||||
self.exec_()
|
self.exec_()
|
||||||
|
|
||||||
|
|
||||||
def initialize_combos(self):
|
def initialize_combos(self):
|
||||||
self.initalize_authors()
|
self.initalize_authors()
|
||||||
self.initialize_series()
|
self.initialize_series()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user