Adjust size of the SearchReplaceWidget and SearchReplaceSlidingWidget to properlyreflect font size changes. 6_0_x

Tue, 03 Feb 2015 19:36:29 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 03 Feb 2015 19:36:29 +0100
branch
6_0_x
changeset 4088
d2be880ee3a2
parent 4075
f8757a7414b3
child 4089
b98cb6bb5079

Adjust size of the SearchReplaceWidget and SearchReplaceSlidingWidget to properlyreflect font size changes.
(Change done by Mikhail Terekhov)
(grafted from 822f456652c52f719de354339bd95234a7e906d6)

QScintilla/SearchReplaceWidget.py file | annotate | diff | comparison | revisions
--- a/QScintilla/SearchReplaceWidget.py	Thu Jan 29 19:57:19 2015 +0100
+++ b/QScintilla/SearchReplaceWidget.py	Tue Feb 03 19:36:29 2015 +0100
@@ -159,11 +159,7 @@
         self.findPrevAct.setEnabled(False)
         self.ui.findtextCombo.addAction(self.findPrevAct)
         
-        self.ensurePolished()
-        msh = self.minimumSizeHint()
-        self.resize(max(self.width(), msh.width()),
-                    max(self.height(), msh.height())
-                    )
+        self.adjustSize()
         
         self.havefound = False
         self.__pos = None
@@ -178,11 +174,7 @@
         @param evt event containing the state change (QEvent)
         """
         if evt.type() == QEvent.FontChange:
-            self.ensurePolished()
-            msh = self.minimumSizeHint()
-            self.resize(max(self.width(), msh.width()),
-                        max(self.height(), msh.height())
-                        )
+            self.adjustSize()
     
     def __selectionBoundary(self, selections=None):
         """
@@ -907,7 +899,6 @@
         
         self.__searchReplaceWidget = \
             SearchReplaceWidget(replace, vm, self, True)
-        srHeight = self.__searchReplaceWidget.height()
         
         self.__layout = QHBoxLayout(self)
         self.setLayout(self.__layout)
@@ -924,7 +915,6 @@
         self.__scroller.setWidget(self.__searchReplaceWidget)
         self.__scroller.setSizePolicy(
             QSizePolicy.Expanding, QSizePolicy.Minimum)
-        self.__scroller.setMaximumHeight(srHeight)
         self.__scroller.setFrameShape(QFrame.NoFrame)
         self.__scroller.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
         self.__scroller.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
@@ -940,13 +930,25 @@
         self.__layout.addWidget(self.__scroller)
         self.__layout.addWidget(self.__rightButton)
         
-        self.setMaximumHeight(srHeight)
+        self.setMaximumHeight(self.__searchReplaceWidget.sizeHint().height())
+        self.adjustSize()
         
         self.__searchReplaceWidget.searchListChanged.connect(
             self.searchListChanged)
         self.__leftButton.clicked.connect(self.__slideLeft)
         self.__rightButton.clicked.connect(self.__slideRight)
     
+    def changeEvent(self, evt):
+        """
+        Protected method handling state changes.
+
+        @param evt event containing the state change (QEvent)
+        """
+        if evt.type() == QEvent.FontChange:
+            self.setMaximumHeight(
+                self.__searchReplaceWidget.sizeHint().height())
+            self.adjustSize()
+    
     def findNext(self):
         """
         Public slot to find the next occurrence of text.

eric ide

mercurial