Ticket #6843: tabbedtoolbar-enabled.diff

File tabbedtoolbar-enabled.diff, 1.3 KB (added by Greg Couch, 3 years ago)

alternate fix

  • src/bundles/ui/src/widgets/tabbedtoolbar.py

    diff --git a/src/bundles/ui/src/widgets/tabbedtoolbar.py b/src/bundles/ui/src/widgets/tabbedtoolbar.py
    index bc79d6212..75f4d29ff 100644
    a b class _Section(QWidgetAction):  
    335335            self.add_button_highlight(button_info.title, redo=False)
    336336        self._redo_layout()
    337337
    338     def set_enabled(self, enabled, title, redo=True):
     338    def set_enabled(self, enabled, button_title, redo=True):
    339339        for button_info in self._buttons:
    340             if button_info.title == title:
     340            if button_info.title == button_title:
    341341                break
    342342        else:
    343             raise ValueError(f"Didn't find button '{title}'")
     343            raise ValueError(f"Didn't find button '{button_title}'")
    344344        if button_info.enabled == enabled:
    345345            return
    346346        button_info.enabled = enabled
    347347        if redo:
    348             self._redo_layout()
     348            existing_widgets = self.createdWidgets()
     349            for parent in existing_widgets:
     350                action = self.get_qt_button_action(parent, button_title)
     351                if action is None:
     352                    continue
     353                action.setEnabled(enabled)
    349354
    350355    def show_group_button(self, button_title):
    351356        for button_info in self._buttons: