summaryrefslogtreecommitdiff
path: root/main.py
diff options
context:
space:
mode:
authorChristian Kolset <ckolset@colostate.edu>2026-08-11 10:40:12 -0600
committerChristian Kolset <ckolset@colostate.edu>2026-08-11 10:40:12 -0600
commit57a5e6be6d581710d7eeaadc91c3b5742fb81b53 (patch)
tree10b7188fbe885d6d26a95d3c94d75c856d1888c2 /main.py
parente81b74d7faf0ec884749795153124a2fa31411fc (diff)
Fix native-style Qt warning; add a few tooltips; trim Namespace hint text
Root cause of "QFont::setPointSize: Point size <= 0 (-1)" on some dropdowns: the app never sets an explicit widget style, so it defaults to native windowsvista, whose popup code calls setPointSize() on fonts resolved from our QSS's pixel-based font-size (pointSize() is -1 by design for px fonts). Tried app.setStyle("Fusion") first — silences it, but Fusion doesn't render buttons/dropdowns to match the QSS the way the native style does. Kept native style, filtered just that one message via qInstallMessageHandler instead — it's cosmetic Qt console noise (the rejected setPointSize call is a no-op, doesn't affect rendering), not a real bug. Also adds a handful of tooltips (Control Editor's Check Syntax/Cancel/ Create Control, device Configure dialog's Close, main toolbar's View/ Configure/RUN/LOG/Settings, a few Control Panel widgets) from an in-progress app-wide tooltip pass, paused partway through by request — remaining buttons are being done manually. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'main.py')
-rw-r--r--main.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/main.py b/main.py
index dff00bd..26fcaaf 100644
--- a/main.py
+++ b/main.py
@@ -12,10 +12,30 @@ import sys, os
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
from PyQt6.QtWidgets import QApplication
+from PyQt6.QtCore import qInstallMessageHandler, QtMsgType
from ui.main_window import MainWindow
+def _qt_message_handler(msg_type, context, message):
+ """Silence one specific, harmless Qt warning: the native windowsvista
+ style's combo-box/menu popup code calls QFont::setPointSize() on a
+ pixel-sized font (our QSS uses px font-size, so pointSize() is -1 by
+ design) — cosmetic console noise only, doesn't affect rendering.
+ Everything else still prints normally."""
+ if "QFont::setPointSize" in message:
+ return
+ if msg_type == QtMsgType.QtWarningMsg:
+ print(f"Warning: {message}", file=sys.stderr)
+ elif msg_type == QtMsgType.QtCriticalMsg:
+ print(f"Critical: {message}", file=sys.stderr)
+ elif msg_type == QtMsgType.QtFatalMsg:
+ print(f"Fatal: {message}", file=sys.stderr)
+ else:
+ print(message, file=sys.stderr)
+
+
def main():
+ qInstallMessageHandler(_qt_message_handler)
app = QApplication(sys.argv)
app.setApplicationName("LabUI")