def __start__(self, fade=False): for cue in Application().cue_model: action = self.__adjust_action(cue, CueAction(self.action)) if action: cue.execute(action=action) return False
def setCurrentAction(self, action): if self.mode is CueActionComboBox.Mode.Value: name = CueAction(action).name elif self.mode is CueActionComboBox.Mode.Action: name = action.name else: name = action self.setCurrentText(translate('CueAction', name))
def setEditorData(self, comboBox, index): value = index.data(Qt.EditRole) if self.mode == CueActionDelegate.Mode.Action: action = value elif self.mode == CueActionDelegate.Mode.Name: action = CueAction[value] else: action = CueAction(value) comboBox.setCurrentText(translate('CueAction', action.name))
def _text(self, painter, option, index): value = index.data(Qt.EditRole) if self.mode == CueActionDelegate.Mode.Action: name = value.name elif self.mode == CueActionDelegate.Mode.Name: name = value else: name = CueAction(value).name return translate('CueAction', name)
def cue_changed(self, cue, property_name, value): if property_name == 'controller': self.delete_from_map(cue) for protocol in self.__protocols: for key, action in value.get(protocol, []): if key not in self.__map: self.__map[key] = set() self.__map[key].add(cue) self.__actions_map[(key, cue)] = CueAction(action)
def load_settings(self, settings): # Remove the edited cue from the list of possible targets edited_cue = Application().cue_model.get(settings.get('id')) if edited_cue: self.cue_select.remove_cue(edited_cue) for trigger, targets in settings.get('triggers', {}).items(): for target, action in targets: target = Application().cue_model.get(target) if target is not None: self.triggersModel.appendRow(target.__class__, trigger, target.id, CueAction(action))
def __start__(self, fade=False): if self.relative: index = self.index + self.target_index else: index = self.target_index try: cue = Application().layout.model_adapter.item(index) if cue is not self: cue.execute(CueAction(self.action)) except IndexError: pass
def __execute(self, trigger): for target_id, action in self.triggers.get(trigger, []): target = Application().cue_model.get(target_id) if target is not None: target.execute(CueAction(action))
def load_settings(self, settings): for target_id, action in settings.get('targets', []): target = Application().cue_model.get(target_id) if target is not None: self._add_cue(target, CueAction(action))