From d3bbba573cc57d942df1090fd7f221128b1ed827 Mon Sep 17 00:00:00 2001 From: Ales Erjavec Date: Wed, 3 Jan 2018 12:36:15 +0100 Subject: [PATCH] OWWidget: Move 'splitter' to private members 'splitter' is to generic name that can be (and is) used by subclasses that now (since gh-2743) raise an "AttributeError: 'QSplitter' object has no attribute 'setControlAreaVisible'" in `OWWidget.showEvent` --- Orange/widgets/widget.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Orange/widgets/widget.py b/Orange/widgets/widget.py index 36900af2a4b..d630dd67cf4 100644 --- a/Orange/widgets/widget.py +++ b/Orange/widgets/widget.py @@ -220,7 +220,7 @@ def __new__(cls, *args, captionTitle=None, **kwargs): self.left_side = None self.controlArea = self.mainArea = self.buttonsArea = None - self.splitter = None + self.__splitter = None if self.want_basic_layout: self.set_basic_layout() @@ -234,13 +234,13 @@ def __new__(cls, *args, captionTitle=None, **kwargs): # Otherwise, the first control has focus self.controlArea.setFocus(Qt.ActiveWindowFocusReason) - if self.splitter is not None: - self.splitter.controlAreaVisibilityChanged.connect( + if self.__splitter is not None: + self.__splitter.controlAreaVisibilityChanged.connect( self.storeControlAreaVisibility) sc = QShortcut( QKeySequence(Qt.ControlModifier | Qt.ShiftModifier | Qt.Key_D), self) - sc.activated.connect(self.splitter.flip) + sc.activated.connect(self.__splitter.flip) return self # pylint: disable=super-init-not-called @@ -316,12 +316,12 @@ def mouseMoveEvent(self, event): return def _insert_splitter(self): - self.splitter = self._Splitter(Qt.Horizontal, self) - self.layout().addWidget(self.splitter) + self.__splitter = self._Splitter(Qt.Horizontal, self) + self.layout().addWidget(self.__splitter) def _insert_control_area(self): - self.left_side = gui.vBox(self.splitter, spacing=0) - self.splitter.setSizes([1]) # Smallest size allowed by policy + self.left_side = gui.vBox(self.__splitter, spacing=0) + self.__splitter.setSizes([1]) # Smallest size allowed by policy if self.buttons_area_orientation is not None: self.controlArea = gui.vBox(self.left_side, addSpace=0) self._insert_buttons_area() @@ -342,12 +342,12 @@ def _insert_buttons_area(self): def _insert_main_area(self): self.mainArea = gui.vBox( - self.splitter, margin=4, + self.__splitter, margin=4, sizePolicy=QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) ) - self.splitter.addWidget(self.mainArea) - self.splitter.setCollapsible( - self.splitter.indexOf(self.mainArea), False) + self.__splitter.addWidget(self.mainArea) + self.__splitter.setCollapsible( + self.__splitter.indexOf(self.mainArea), False) self.mainArea.layout().setContentsMargins( 0 if self.want_control_area else 4, 4, 4, 4) @@ -572,7 +572,7 @@ def showEvent(self, event): QDialog.showEvent(self, event) if self.save_position and not self.__was_restored: # Restore saved geometry on (first) show - self.splitter.setControlAreaVisible(self.controlAreaVisible) + self.__splitter.setControlAreaVisible(self.controlAreaVisible) self.__restoreWidgetGeometry() self.__was_restored = True self.__quicktipOnce()