Automatically register the child tab class instances in preferences

This commit is contained in:
Charles Haley 2025-01-20 10:09:51 +00:00
parent b8a3e09955
commit a750fb4d91
2 changed files with 3 additions and 10 deletions

View File

@ -292,6 +292,9 @@ class ConfigWidgetBase(QWidget, ConfigWidgetInterface):
self.setupUi(self) self.setupUi(self)
self.settings = {} self.settings = {}
self.child_tabs = [] self.child_tabs = []
for v in self.__dict__.values():
if isinstance(v, ConfigTabWidget):
self.child_tabs.append(v)
def register(self, name, config_obj, gui_name=None, choices=None, def register(self, name, config_obj, gui_name=None, choices=None,
restart_required=False, empty_string_is_None=True, setting=Setting): restart_required=False, empty_string_is_None=True, setting=Setting):
@ -350,10 +353,6 @@ def get_plugin(category, name):
class ConfigTabWidget(ConfigWidgetBase): class ConfigTabWidget(ConfigWidgetBase):
def __init__(self, parent=None):
super().__init__(parent)
super().register_child_tab(self)
def set_changed_signal(self, changed_signal): def set_changed_signal(self, changed_signal):
self.changed_signal.connect(changed_signal) self.changed_signal.connect(changed_signal)

View File

@ -453,12 +453,6 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
size_calculated = pyqtSignal(object) size_calculated = pyqtSignal(object)
def __init__(self, parent=None):
super().__init__(parent)
self.register_child_tab(self.tb_icon_browser_tab)
self.register_child_tab(self.tb_hierarchy_tab)
self.register_child_tab(self.cover_view)
def genesis(self, gui): def genesis(self, gui):
self.gui = gui self.gui = gui
self.ui_style_available = True self.ui_style_available = True