| 1243 | return True, "" |
| 1244 | |
| 1245 | def edit_rule(self, records, _addr=None): |
| 1246 | self.WORK_MODE = self.EDIT_RULE |
| 1247 | self._reset_state() |
| 1248 | |
| 1249 | self.rule = Rule.new_from_records(records) |
| 1250 | if self.rule.operator.type not in Config.RulesTypes: |
| 1251 | Message.ok(QC.translate("rules", "<b>Rule not supported</b>"), |
| 1252 | QC.translate("rules", "This type of rule ({0}) is not supported by version {1}".format(self.rule.operator.type, version)), |
| 1253 | QtWidgets.QMessageBox.Icon.Warning) |
| 1254 | self.hide() |
| 1255 | return |
| 1256 | |
| 1257 | self._old_rule_name = records.value(RuleFields.Name) |
| 1258 | |
| 1259 | if self._load_rule(addr=_addr, rule=self.rule): |
| 1260 | # show() is needed to open the dialog |
| 1261 | self.show() |
| 1262 | self.exec() |
| 1263 | |
| 1264 | def new_rule(self): |
| 1265 | self.WORK_MODE = self.ADD_RULE |