12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- from UM.Extension import Extension
- from UM.Preferences import Preferences
- from UM.Logger import Logger
- from UM.i18n import i18nCatalog
- from cura.Settings.GlobalStack import GlobalStack
- from .FirmwareUpdateCheckerJob import FirmwareUpdateCheckerJob
- from UM.Settings.ContainerRegistry import ContainerRegistry
- i18n_catalog = i18nCatalog("cura")
- class FirmwareUpdateChecker(Extension):
- JEDI_VERSION_URL = "http://software.ultimaker.com/jedi/releases/latest.version"
- def __init__(self):
- super().__init__()
-
-
- Preferences.getInstance().addPreference("info/latest_checked_firmware", "")
-
-
- Preferences.getInstance().addPreference("info/automatic_update_check", True)
- if Preferences.getInstance().getValue("info/automatic_update_check"):
- ContainerRegistry.getInstance().containerAdded.connect(self._onContainerAdded)
- def _onContainerAdded(self, container):
-
- if isinstance(container, GlobalStack):
- Logger.log("i", "You have a '%s' in printer list. Let's check the firmware!", container.getId())
- self.checkFirmwareVersion(container, True)
-
-
-
-
-
-
- def checkFirmwareVersion(self, container = None, silent = False):
- job = FirmwareUpdateCheckerJob(container = container, silent = silent, url = self.JEDI_VERSION_URL)
- job.start()
|