def pluginsModel(self): if self._plugins_model is None: self._plugins_model = ListModel() self._plugins_model.addRoleName(Qt.UserRole + 1, "name") self._plugins_model.addRoleName(Qt.UserRole + 2, "version") self._plugins_model.addRoleName(Qt.UserRole + 3, "short_description") self._plugins_model.addRoleName(Qt.UserRole + 4, "author") self._plugins_model.addRoleName(Qt.UserRole + 5, "already_installed") self._plugins_model.addRoleName(Qt.UserRole + 6, "file_location") self._plugins_model.addRoleName(Qt.UserRole + 7, "can_upgrade") else: self._plugins_model.clear() items = [] for metadata in self._plugins_metadata: items.append({ "name": metadata["label"], "version": metadata["version"], "short_description": metadata["short_description"], "author": metadata["author"], "already_installed": self._checkAlreadyInstalled(metadata["id"]), "file_location": metadata["file_location"], "can_upgrade": self._checkCanUpgrade(metadata["id"], metadata["version"]) }) self._plugins_model.setItems(items) return self._plugins_model
def connectedPrinterList(self): self._usb_output_devices_model = ListModel() self._usb_output_devices_model.addRoleName(Qt.UserRole + 1, "name") self._usb_output_devices_model.addRoleName(Qt.UserRole + 2, "printer") for connection in self._usb_output_devices: if self._usb_output_devices[connection].connectionState == ConnectionState.connected: self._usb_output_devices_model.appendItem({"name": connection, "printer": self._usb_output_devices[connection]}) return self._usb_output_devices_model
def createActionsModel(self, options): model = ListModel() model.addRoleName(self.NameRole, "text") for option in options: model.appendItem({"text": str(option)}) if len(options) != 0: return model return None
def connectedPrinterList(self): self._printer_connections_model = ListModel() self._printer_connections_model.addRoleName(Qt.UserRole + 1,"name") self._printer_connections_model.addRoleName(Qt.UserRole + 2, "printer") for connection in self._printer_connections: if self._printer_connections[connection].isConnected(): self._printer_connections_model.appendItem({"name":connection, "printer": self._printer_connections[connection]}) return self._printer_connections_model
def _createPagesModel(self, steps): model = ListModel() model.addRoleName(self.NameRole, "page") model.addRoleName(self.NameRole, "title") for step in steps: _page = step.get("page") _title = step.get("title") model.appendItem({"title": str(_title), "page": str(_page)}) return model
def createOptionsModel(self, options): if not options: return None model = ListModel() model.addRoleName(Qt.UserRole + 1, "value") model.addRoleName(Qt.UserRole + 2, "name") for value, name in options.items(): model.appendItem({"value": str(value), "name": str(name)}) return model
def createActionsModel(self, actions): model = ListModel() model.addRoleName(self.IDRole, "action_id") model.addRoleName(self.TextRole,"name") model.addRoleName(self.IconRole, "icon") model.addRoleName(self.DescriptionRole, "description") for action in actions: model.appendItem(action) return model
def afterInit(self): #Logger.log("d","Log Something") self.loadTokenRegistry() self.loadSettings() self.autodiscoverychanged.connect(self.autodiscoverchanged_exec) if (self.settings["AutoDiscover"]): #Logger.log("d","Auto-Discovery Enabled") self._discoveryThread = threading.Thread( target=self.timedDiscovering) self._discoveryThread.start() self._manualprinters = ListModel() self._manualprinters.addRoleName(Qt.UserRole + 1, "name") self._manualprinters.addRoleName(Qt.UserRole + 2, "address") for x in self.settings["machines"]: printer = x self._manualprinters.appendItem(printer) #Logger.log("d","Getting Item result : "+str(self._manualprinters.getItem(0))) self.managePrinters()
def createOptionsModel(self, options): model = ListModel() model.addRoleName(self.NameRole, "text") for option in options: model.appendItem({"text": str(option)}) return model
def setUp(self): self.list_model = ListModel() self.list_model.addRoleName(self.NameRole, "name") self.list_model.addRoleName(self.DataRole, "data") self.list_model.setItems(deepcopy(self.test_data))