PreferencesSectionUI.py 845 B

1234567891011121314151617181920212223242526272829303132
  1. from typing import Dict
  2. from PyQt5 import QtWidgets
  3. from flatcamGUI.preferences.OptionUI import OptionUI
  4. from flatcamGUI.preferences.OptionsGroupUI import OptionsGroupUI
  5. class PreferencesSectionUI(QtWidgets.QWidget):
  6. def __init__(self, **kwargs):
  7. super().__init__(**kwargs)
  8. self.layout = QtWidgets.QHBoxLayout()
  9. self.setLayout(self.layout)
  10. self.groups = self.build_groups()
  11. for group in self.groups:
  12. group.setMinimumWidth(250)
  13. self.layout.addWidget(group)
  14. self.layout.addStretch()
  15. def build_groups(self) -> [OptionsGroupUI]:
  16. return []
  17. def option_dict(self) -> Dict[str, OptionUI]:
  18. result = {}
  19. for group in self.groups:
  20. groupoptions = group.option_dict()
  21. result.update(groupoptions)
  22. return result