fix(studio): Qt6 compat + Ctrl+C signal handler

- flash_console: setTextFormat(Qt.TextFormat.RichText) — int overload removed in Qt6
- installer_widget: same fix + add Qt to QtCore import
- project_editor/installer_widget: Session.has() → Session.can()
- app.py: signal.signal(SIGINT, SIG_DFL) so Ctrl+C kills the process from terminal

AR_electronics — AR-Autopilot Project
This commit is contained in:
2026-05-24 11:45:17 -04:00
parent 3c4a0b530e
commit b68cd64cf1
4 changed files with 14 additions and 11 deletions
+5 -5
View File
@@ -330,9 +330,9 @@ class ProjectEditorWidget(QWidget):
# ------------------------------------------------------------------
def _apply_rbac(self) -> None:
can_commission = self._session.has(Capability.EDIT_COMMISSIONING)
can_gains = self._session.has(Capability.EDIT_BASE_GAINS)
can_compile = self._session.has(Capability.EDIT_COMMISSIONING)
can_commission = self._session.can(Capability.EDIT_COMMISSIONING)
can_gains = self._session.can(Capability.EDIT_BASE_GAINS)
can_compile = self._session.can(Capability.EDIT_COMMISSIONING)
for w in [
self._max_rudder_deg,
@@ -381,7 +381,7 @@ class ProjectEditorWidget(QWidget):
self._sens_diverge_alarm,
self._sens_diverge_failover,
]:
w.setEnabled(enabled and self._session.has(Capability.EDIT_COMMISSIONING))
w.setEnabled(enabled and self._session.can(Capability.EDIT_COMMISSIONING))
def _on_new(self) -> None:
self._project = None
@@ -425,7 +425,7 @@ class ProjectEditorWidget(QWidget):
QMessageBox.critical(self, "Save error", str(exc))
def _on_compile(self) -> None:
if not self._session.has(Capability.EDIT_COMMISSIONING):
if not self._session.can(Capability.EDIT_COMMISSIONING):
QMessageBox.warning(self, "Access denied", "Engineer or Super Admin required.")
return