diff --git a/src/calibre/gui2/convert/bulk.py b/src/calibre/gui2/convert/bulk.py
index 1940b31906..821edd08bd 100644
--- a/src/calibre/gui2/convert/bulk.py
+++ b/src/calibre/gui2/convert/bulk.py
@@ -31,6 +31,13 @@ class BulkConfig(Config):
self.input_label.hide()
self.input_formats.hide()
+ self.opt_individual_saved_settings.setVisible(True)
+ self.opt_individual_saved_settings.setChecked(True)
+ self.opt_individual_saved_settings.setToolTip(_('For '
+ 'settings that cannot be specified in this dialog, use the '
+ 'values saved in a previous conversion (if they exist) instead '
+ 'of using the defaults specified in the Preferences'))
+
self.connect(self.output_formats, SIGNAL('currentIndexChanged(QString)'),
self.setup_pipeline)
diff --git a/src/calibre/gui2/convert/single.py b/src/calibre/gui2/convert/single.py
index c8a4b6bb97..b5cba20c2f 100644
--- a/src/calibre/gui2/convert/single.py
+++ b/src/calibre/gui2/convert/single.py
@@ -116,6 +116,7 @@ class Config(ResizableDialog, Ui_Dialog):
def __init__(self, parent, db, book_id,
preferred_input_format=None, preferred_output_format=None):
ResizableDialog.__init__(self, parent)
+ self.opt_individual_saved_settings.setVisible(False)
self.db, self.book_id = db, book_id
self.setup_input_output_formats(self.db, self.book_id, preferred_input_format,
diff --git a/src/calibre/gui2/convert/single.ui b/src/calibre/gui2/convert/single.ui
index 6fe57f86a2..290b31aaec 100644
--- a/src/calibre/gui2/convert/single.ui
+++ b/src/calibre/gui2/convert/single.ui
@@ -33,6 +33,13 @@
-
+ -
+
+
+ Use &saved conversion settings for individual books
+
+
+
-
@@ -109,7 +116,7 @@
0
0
810
- 492
+ 489
diff --git a/src/calibre/gui2/tools.py b/src/calibre/gui2/tools.py
index c3b442ebcb..cb263e9ca6 100644
--- a/src/calibre/gui2/tools.py
+++ b/src/calibre/gui2/tools.py
@@ -111,17 +111,21 @@ def convert_bulk_ebook(parent, queue, db, book_ids, out_format=None, args=[]):
user_recs = cPickle.loads(d.recommendations)
book_ids = convert_existing(parent, db, book_ids, output_format)
- return QueueBulk(parent, book_ids, output_format, queue, db, user_recs, args)
+ use_saved_single_settings = d.opt_individual_saved_settings.isChecked()
+ return QueueBulk(parent, book_ids, output_format, queue, db, user_recs,
+ args, use_saved_single_settings=use_saved_single_settings)
class QueueBulk(QProgressDialog):
- def __init__(self, parent, book_ids, output_format, queue, db, user_recs, args):
+ def __init__(self, parent, book_ids, output_format, queue, db, user_recs,
+ args, use_saved_single_settings=True):
QProgressDialog.__init__(self, '',
QString(), 0, len(book_ids), parent)
self.setWindowTitle(_('Queueing books for bulk conversion'))
self.book_ids, self.output_format, self.queue, self.db, self.args, self.user_recs = \
book_ids, output_format, queue, db, args, user_recs
self.parent = parent
+ self.use_saved_single_settings = use_saved_single_settings
self.i, self.bad, self.jobs, self.changed = 0, [], [], False
self.timer = QTimer(self)
self.connect(self.timer, SIGNAL('timeout()'), self.do_book)
@@ -149,11 +153,12 @@ class QueueBulk(QProgressDialog):
combined_recs = GuiRecommendations()
default_recs = load_defaults('%s_input' % input_format)
- specific_recs = load_specifics(self.db, book_id)
for key in default_recs:
combined_recs[key] = default_recs[key]
- for key in specific_recs:
- combined_recs[key] = specific_recs[key]
+ if self.use_saved_single_settings:
+ specific_recs = load_specifics(self.db, book_id)
+ for key in specific_recs:
+ combined_recs[key] = specific_recs[key]
for item in self.user_recs:
combined_recs[item[0]] = item[1]
save_specifics(self.db, book_id, combined_recs)
diff --git a/src/calibre/manual/conversion.rst b/src/calibre/manual/conversion.rst
index 67658c3952..8775b864a7 100644
--- a/src/calibre/manual/conversion.rst
+++ b/src/calibre/manual/conversion.rst
@@ -421,7 +421,7 @@ button in the individual book conversion dialog.
When you Bulk Convert a set of books, settings are taken in the following order:
* From the defaults set in Preferences->Conversion
- * From the saved conversion settings for each book being converted (if any)
+ * From the saved conversion settings for each book being converted (if any). This can be turned off by the option in the top left corner of the Bulk Conversion dialog.
* From the settings set in the Bulk conversion dialog
Note that the final settings for each book in a Bulk Conversion will be saved and re-used if the book is converted again. Since the