SettingsExportGroup.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # Copyright (c) 2024 Ultimaker B.V.
  2. # Cura is released under the terms of the LGPLv3 or higher.
  3. from enum import IntEnum
  4. from PyQt6.QtCore import Qt, QObject, pyqtProperty, pyqtEnum
  5. from UM.FlameProfiler import pyqtSlot
  6. from UM.Application import Application
  7. from UM.Qt.ListModel import ListModel
  8. from UM.Logger import Logger
  9. from .SettingExport import SettingsExport
  10. class SettingsExportGroup(QObject):
  11. @pyqtEnum
  12. class Category(IntEnum):
  13. Global = 0
  14. Extruder = 1
  15. Model = 2
  16. def __init__(self, name, category, settings, category_details = '', extruder_index = 0, extruder_color = ''):
  17. super().__init__()
  18. self._name = name
  19. self._settings = settings
  20. self._category = category
  21. self._category_details = category_details
  22. self._extruder_index = extruder_index
  23. self._extruder_color = extruder_color
  24. @pyqtProperty(str, constant=True)
  25. def name(self):
  26. return self._name
  27. @pyqtProperty(list, constant=True)
  28. def settings(self):
  29. return self._settings
  30. @pyqtProperty(int, constant=True)
  31. def category(self):
  32. return self._category
  33. @pyqtProperty(str, constant=True)
  34. def category_details(self):
  35. return self._category_details
  36. @pyqtProperty(int, constant=True)
  37. def extruder_index(self):
  38. return self._extruder_index
  39. @pyqtProperty(str, constant=True)
  40. def extruder_color(self):
  41. return self._extruder_color