diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-20 12:23:50 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-20 12:23:50 +0200 |
| commit | ecf11290bda5a670ff520f62a96d85645ad95d82 (patch) | |
| tree | 1e6390a28297e3fb5a9ba8c2fd5c8ee58de37a41 /sb_builder/hints_tab.py | |
| parent | aa4d36c541e603ed4d60ee1185806c51818eccc9 (diff) | |
| download | sb-builder-ecf11290bda5a670ff520f62a96d85645ad95d82.tar.gz sb-builder-ecf11290bda5a670ff520f62a96d85645ad95d82.zip | |
Filter bars: chips read as buttons, status dots, group labels
Chips get a button background and border, a dot in the color the table
uses for that status, and a muted label per group (overlay, status,
state, result). Search fields get a search icon and a clear button.
Phase 2 spec: why the signing key locks after the GUI quits.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'sb_builder/hints_tab.py')
| -rw-r--r-- | sb_builder/hints_tab.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sb_builder/hints_tab.py b/sb_builder/hints_tab.py index feba94d..071e304 100644 --- a/sb_builder/hints_tab.py +++ b/sb_builder/hints_tab.py @@ -21,14 +21,14 @@ import os from PyQt6.QtCore import Qt, pyqtSignal from PyQt6.QtGui import QColor, QFontDatabase, QKeySequence, QShortcut, QSyntaxHighlighter -from PyQt6.QtWidgets import (QDialog, QHBoxLayout, QLabel, QLineEdit, QListWidget, - QListWidgetItem, QMessageBox, QPlainTextEdit, QPushButton, QSplitter, - QTableWidget, QTableWidgetItem, QVBoxLayout, QWidget) +from PyQt6.QtWidgets import (QDialog, QHBoxLayout, QLabel, QListWidget, QListWidgetItem, + QMessageBox, QPlainTextEdit, QPushButton, QSplitter, QTableWidget, + QTableWidgetItem, QVBoxLayout, QWidget) from . import upstream from .dashboard import STATUS -from .packages import chip, load_rows -from .ui import SP, action, enable +from .packages import load_rows +from .ui import SP, action, chip, enable, group_label, search_field STATES = ("outdated", "current", "no stanza", "not checked", "nvchecker error") STATE_COLOR = {"outdated": STATUS["aborted"], "current": STATUS["ok"], @@ -51,12 +51,13 @@ class HintsTab(QWidget): self.checker = upstream.Checker(self) self.checker.done.connect(self._checked) - self.query = QLineEdit(placeholderText="search package") + self.query = search_field("search package") self.query.textChanged.connect(self.refilter) self.chips = {} chips = QHBoxLayout() + chips.addWidget(group_label("state")) for name in STATES: - self.chips[name] = chip(name) + self.chips[name] = chip(name, STATE_COLOR.get(name)) self.chips[name].toggled.connect(self.refilter) chips.addWidget(self.chips[name]) chips.addStretch() |
