mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Add ability to remove a format to bulk metadata edit dialog
This commit is contained in:
parent
58e97405fc
commit
5d91dfe0f7
@ -29,6 +29,11 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
|
||||
id, name = i
|
||||
self.series.addItem(name)
|
||||
|
||||
for f in self.db.all_formats():
|
||||
self.remove_format.addItem(f)
|
||||
|
||||
self.remove_format.setCurrentIndex(-1)
|
||||
|
||||
self.series.lineEdit().setText('')
|
||||
QObject.connect(self.series, SIGNAL('currentIndexChanged(int)'), self.series_changed)
|
||||
QObject.connect(self.series, SIGNAL('editTextChanged(QString)'), self.series_changed)
|
||||
@ -66,6 +71,10 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
|
||||
self.db.unapply_tags(id, remove_tags)
|
||||
if self.write_series:
|
||||
self.db.set_series(id, qstring_to_unicode(self.series.currentText()))
|
||||
|
||||
if self.remove_format.currentIndex() > -1:
|
||||
self.db.remove_format(id, unicode(self.remove_format.currentText()), index_is_id=True)
|
||||
|
||||
self.changed = True
|
||||
|
||||
def series_changed(self):
|
||||
|
@ -211,6 +211,19 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1" >
|
||||
<widget class="QComboBox" name="remove_format" />
|
||||
</item>
|
||||
<item row="7" column="0" >
|
||||
<widget class="QLabel" name="label_5" >
|
||||
<property name="text" >
|
||||
<string>Remove &format:</string>
|
||||
</property>
|
||||
<property name="buddy" >
|
||||
<cstring>remove_format</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -570,6 +570,12 @@ class LibraryDatabase2(LibraryDatabase):
|
||||
p.loadFromData(data)
|
||||
p.save(path)
|
||||
|
||||
def all_formats(self):
|
||||
formats = self.conn.execute('SELECT format from data').fetchall()
|
||||
if not formats:
|
||||
return set([])
|
||||
return set([f[0] for f in formats])
|
||||
|
||||
def formats(self, index, index_is_id=False):
|
||||
''' Return available formats as a comma separated list or None if htere are no available formats '''
|
||||
id = index if index_is_id else self.id(index)
|
||||
|
Loading…
x
Reference in New Issue
Block a user