Editor - Search & Replace widget eric7

Sat, 02 Sep 2023 12:33:58 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 02 Sep 2023 12:33:58 +0200
branch
eric7
changeset 10187
cd500ea7f787
parent 10186
91c3ba0767ad
child 10188
0f873791d67e

Editor - Search & Replace widget
- Corrected the enable state handling of the "Replace Selection" and "Replace Selection and Search Next" (see issue 509).

src/eric7/QScintilla/SearchReplaceWidget.py file | annotate | diff | comparison | revisions
--- a/src/eric7/QScintilla/SearchReplaceWidget.py	Fri Sep 01 16:54:26 2023 +0200
+++ b/src/eric7/QScintilla/SearchReplaceWidget.py	Sat Sep 02 12:33:58 2023 +0200
@@ -132,10 +132,12 @@
         # set line edit completers
         self.findtextCombo.setCompleter(None)
         self.findtextCombo.lineEdit().returnPressed.connect(self.__findByReturnPressed)
+        self.findtextCombo.lineEdit().setClearButtonEnabled(True)
         self.replacetextCombo.setCompleter(None)
         self.replacetextCombo.lineEdit().returnPressed.connect(
             self.on_replaceButton_clicked
         )
+        self.replacetextCombo.lineEdit().setClearButtonEnabled(True)
 
         self.__currentEditor = None
         self.__replaceMode = False
@@ -359,6 +361,7 @@
         @param enable flag indicating the enable state to be set
         @type bool
         """
+        enable &= self.__replaceMode
         self.replaceSearchButton.setEnabled(enable)
         self.replaceAndSearchAct.setEnabled(enable)
 
@@ -369,6 +372,7 @@
         @param enable flag indicating the enable state to be set
         @type bool
         """
+        enable &= self.__replaceMode
         self.replaceButton.setEnabled(enable)
         self.replaceSelectionAct.setEnabled(enable)
 
@@ -379,6 +383,7 @@
         @param enable flag indicating the enable state to be set
         @type bool
         """
+        enable &= self.__replaceMode
         self.replaceAllButton.setEnabled(enable)
         self.replaceAllAct.setEnabled(enable)
 
@@ -431,8 +436,9 @@
         self.__setFindNextEnabled(enable)
         self.__setFindPrevEnabled(enable)
         self.extendButton.setEnabled(enable)
-        self.__setReplaceSelectionEnabled(False)
-        self.__setReplaceAndSearchEnabled(False)
+        if not Preferences.getEditor("QuickSearchEnabled") or not bool(txt):
+            self.__setReplaceSelectionEnabled(False)
+            self.__setReplaceAndSearchEnabled(False)
         self.__setReplaceAllEnabled(enable)
 
     @pyqtSlot(str)
@@ -487,6 +493,9 @@
 
             self.__finding = False
 
+            self.__setReplaceSelectionEnabled(ok)
+            self.__setReplaceAndSearchEnabled(ok)
+
             if not txt:
                 ok = True  # reset the color in case of an empty text
 

eric ide

mercurial