mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
Implement replace and replace-find actions
This commit is contained in:
parent
ee7b8e572d
commit
ce9bd67edc
@ -328,6 +328,7 @@ class Boss(QObject):
|
|||||||
marked = True
|
marked = True
|
||||||
|
|
||||||
def no_match():
|
def no_match():
|
||||||
|
QApplication.restoreOverrideCursor()
|
||||||
msg = '<p>' + _('No matches were found for %s.') % state['find']
|
msg = '<p>' + _('No matches were found for %s.') % state['find']
|
||||||
if not state['wrap']:
|
if not state['wrap']:
|
||||||
msg += '<p>' + _('You have turned off search wrapping, so all text might not have been searched.'
|
msg += '<p>' + _('You have turned off search wrapping, so all text might not have been searched.'
|
||||||
@ -358,10 +359,29 @@ class Boss(QObject):
|
|||||||
return
|
return
|
||||||
return no_match()
|
return no_match()
|
||||||
|
|
||||||
|
def no_replace(prefix=''):
|
||||||
|
QApplication.restoreOverrideCursor()
|
||||||
|
error_dialog(
|
||||||
|
self.gui, _('Cannot replace'), prefix + _(
|
||||||
|
'You must first click Find, before trying to replace'), show=True)
|
||||||
|
return False
|
||||||
|
|
||||||
|
def do_replace():
|
||||||
|
if editor is None:
|
||||||
|
return no_replace()
|
||||||
|
if not editor.replace(pat, state['replace']):
|
||||||
|
return no_replace(_(
|
||||||
|
'Currently selected text does not match the search query.'))
|
||||||
|
return True
|
||||||
|
|
||||||
QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
|
QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
|
||||||
try:
|
try:
|
||||||
if action == 'find':
|
if action == 'find':
|
||||||
return do_find()
|
return do_find()
|
||||||
|
if action == 'replace':
|
||||||
|
return do_replace()
|
||||||
|
if action == 'replace-find' and do_replace():
|
||||||
|
return do_find()
|
||||||
finally:
|
finally:
|
||||||
QApplication.restoreOverrideCursor()
|
QApplication.restoreOverrideCursor()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user