mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-08-11 09:13:57 -04:00
Bulk metadata download review dialog: When clicking cancel ask for confirmation if some books have already been reviewed
This commit is contained in:
parent
ab57033fcb
commit
49d2f04a7e
@ -21,6 +21,7 @@ from calibre.ebooks.metadata import title_sort, authors_to_sort_string, fmt_sidx
|
|||||||
from calibre.gui2 import pixmap_to_data, gprefs
|
from calibre.gui2 import pixmap_to_data, gprefs
|
||||||
from calibre.gui2.complete2 import LineEdit as EditWithComplete
|
from calibre.gui2.complete2 import LineEdit as EditWithComplete
|
||||||
from calibre.gui2.comments_editor import Editor
|
from calibre.gui2.comments_editor import Editor
|
||||||
|
from calibre.gui2.dialogs.confirm_delete import confirm
|
||||||
from calibre.gui2.languages import LanguagesEdit as LE
|
from calibre.gui2.languages import LanguagesEdit as LE
|
||||||
from calibre.gui2.widgets2 import RightClickButton
|
from calibre.gui2.widgets2 import RightClickButton
|
||||||
from calibre.gui2.metadata.basic_widgets import PubdateEdit, RatingEdit
|
from calibre.gui2.metadata.basic_widgets import PubdateEdit, RatingEdit
|
||||||
@ -540,6 +541,7 @@ class CompareMany(QDialog):
|
|||||||
**kwargs):
|
**kwargs):
|
||||||
QDialog.__init__(self, parent)
|
QDialog.__init__(self, parent)
|
||||||
self.l = l = QVBoxLayout()
|
self.l = l = QVBoxLayout()
|
||||||
|
self.next_called = False
|
||||||
self.setLayout(l)
|
self.setLayout(l)
|
||||||
self.setWindowIcon(QIcon(I('auto_author_sort.png')))
|
self.setWindowIcon(QIcon(I('auto_author_sort.png')))
|
||||||
self.get_metadata = get_metadata
|
self.get_metadata = get_metadata
|
||||||
@ -614,6 +616,7 @@ class CompareMany(QDialog):
|
|||||||
if geom is not None:
|
if geom is not None:
|
||||||
self.restoreGeometry(geom)
|
self.restoreGeometry(geom)
|
||||||
b.setFocus(Qt.OtherFocusReason)
|
b.setFocus(Qt.OtherFocusReason)
|
||||||
|
self.next_called = False
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def mark_rejected(self):
|
def mark_rejected(self):
|
||||||
@ -628,6 +631,10 @@ class CompareMany(QDialog):
|
|||||||
super(CompareMany, self).accept()
|
super(CompareMany, self).accept()
|
||||||
|
|
||||||
def reject(self):
|
def reject(self):
|
||||||
|
if self.next_called and not confirm(_(
|
||||||
|
'All reviewed changes will be lost! Are you sure you want to Cancel?'),
|
||||||
|
'confirm-metadata-diff-dialog-cancel'):
|
||||||
|
return
|
||||||
gprefs.set('diff_dialog_geom', bytearray(self.saveGeometry()))
|
gprefs.set('diff_dialog_geom', bytearray(self.saveGeometry()))
|
||||||
self.compare_widget.save_comments_controls_state()
|
self.compare_widget.save_comments_controls_state()
|
||||||
super(CompareMany, self).reject()
|
super(CompareMany, self).reject()
|
||||||
@ -637,6 +644,7 @@ class CompareMany(QDialog):
|
|||||||
return self.compare_widget.current_mi
|
return self.compare_widget.current_mi
|
||||||
|
|
||||||
def next_item(self, accept):
|
def next_item(self, accept):
|
||||||
|
self.next_called = True
|
||||||
if not self.ids:
|
if not self.ids:
|
||||||
return self.accept()
|
return self.accept()
|
||||||
if self.current_mi is not None:
|
if self.current_mi is not None:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user