From 86ef9d903867172fb38b23d7cf8e39e9ca1ad980 Mon Sep 17 00:00:00 2001 From: David Robertson Date: Fri, 1 May 2020 02:21:59 +0100 Subject: [PATCH] Introduce a PreferencesSectionUI widget --- .../preferences/PreferencesSectionUI.py | 22 ++++++++++++ .../preferences/PreferencesUIManager.py | 1 - .../general/GeneralPreferencesUI.py | 34 +++++++++---------- 3 files changed, 38 insertions(+), 19 deletions(-) create mode 100644 flatcamGUI/preferences/PreferencesSectionUI.py diff --git a/flatcamGUI/preferences/PreferencesSectionUI.py b/flatcamGUI/preferences/PreferencesSectionUI.py new file mode 100644 index 00000000..ad70a9ff --- /dev/null +++ b/flatcamGUI/preferences/PreferencesSectionUI.py @@ -0,0 +1,22 @@ +from PyQt5 import QtWidgets + +from flatcamGUI.preferences.OptionsGroupUI import OptionsGroupUI + + +class PreferencesSectionUI(QtWidgets.QWidget): + + def __init__(self, **kwargs): + super().__init__(**kwargs) + + self.layout = QtWidgets.QHBoxLayout() + self.setLayout(self.layout) + + self.groups = self.build_groups() + for group in self.groups: + group.setMinimumWidth(250) + self.layout.addWidget(group) + + self.layout.addStretch() + + def build_groups(self) -> [OptionsGroupUI]: + return [] diff --git a/flatcamGUI/preferences/PreferencesUIManager.py b/flatcamGUI/preferences/PreferencesUIManager.py index 1cb17c12..35733b99 100644 --- a/flatcamGUI/preferences/PreferencesUIManager.py +++ b/flatcamGUI/preferences/PreferencesUIManager.py @@ -22,7 +22,6 @@ else: log = logging.getLogger('PreferencesUIManager') - class PreferencesUIManager: def __init__(self, defaults: FlatCAMDefaults, data_path: str, ui, inform): diff --git a/flatcamGUI/preferences/general/GeneralPreferencesUI.py b/flatcamGUI/preferences/general/GeneralPreferencesUI.py index 46636438..59e99174 100644 --- a/flatcamGUI/preferences/general/GeneralPreferencesUI.py +++ b/flatcamGUI/preferences/general/GeneralPreferencesUI.py @@ -1,9 +1,10 @@ -from PyQt5 import QtWidgets from PyQt5.QtCore import QSettings +from flatcamGUI.preferences.OptionsGroupUI import OptionsGroupUI +from flatcamGUI.preferences.PreferencesSectionUI import PreferencesSectionUI from flatcamGUI.preferences.general.GeneralAppPrefGroupUI import GeneralAppPrefGroupUI from flatcamGUI.preferences.general.GeneralAPPSetGroupUI import GeneralAPPSetGroupUI -from flatcamGUI.preferences.general.GeneralGUIPrefGroupUI import GeneralGUIPrefGroupUI +from flatcamGUI.preferences.general.GeneralGUIPrefGroupUI import GeneralGUIPrefGroupUI, GeneralGUIPrefGroupUI2 import gettext import FlatCAMTranslation as fcTranslate @@ -20,24 +21,21 @@ else: machinist_setting = 0 -class GeneralPreferencesUI(QtWidgets.QWidget): - def __init__(self, decimals, parent=None): - QtWidgets.QWidget.__init__(self, parent=parent) - self.layout = QtWidgets.QHBoxLayout() - self.setLayout(self.layout) +class GeneralPreferencesUI(PreferencesSectionUI): + + def __init__(self, decimals, **kwargs): self.decimals = decimals - - self.general_app_group = GeneralAppPrefGroupUI(decimals=self.decimals) - self.general_app_group.setMinimumWidth(250) - self.general_gui_group = GeneralGUIPrefGroupUI(decimals=self.decimals) - self.general_gui_group.setMinimumWidth(250) - + #self.general_gui_group2 = GeneralGUIPrefGroupUI2(decimals=self.decimals) + self.general_app_group = GeneralAppPrefGroupUI(decimals=self.decimals) self.general_app_set_group = GeneralAPPSetGroupUI(decimals=self.decimals) - self.general_app_set_group.setMinimumWidth(250) + super().__init__(**kwargs) - self.layout.addWidget(self.general_app_group) - self.layout.addWidget(self.general_gui_group) - self.layout.addWidget(self.general_app_set_group) + def build_groups(self) -> [OptionsGroupUI]: + return [ + self.general_app_group, + self.general_gui_group, + self.general_gui_group2, + self.general_app_set_group + ] - self.layout.addStretch()