- Удален кастомный безрамочный режим (FramelessWindowHint) главного окна и диалогов. - Внедрено нативное управление окнами операционной системы (изменение размеров, максимизация, минимизация). - Добавлено применение QPalette под выбранную тему (темную/свелую) и акцент для покраски системных элементов окон. - Внутреннее содержимое диалогов (StyledDialog) обернуто в QScrollArea с автоскроллом и ограничением по высоте до 720px во избежание выхода окон за пределы экрана. - TitleBar упрощен до простой верхней панели вкладок (sub-header/tabs). - В диалог теста подсветки добавлен выбор номера ленты (1..4) при тесте пикселя виртуальной матрицы, обновлена логика генерации и отправки тестовой команды. - Раздел "Бродяга морей" переименован в "Бродяги морей".
31 lines
924 B
Python
31 lines
924 B
Python
from __future__ import annotations
|
|
|
|
import sys
|
|
|
|
from PySide6.QtGui import QFont
|
|
from PySide6.QtWidgets import QApplication
|
|
|
|
from .main_window import MainWindow
|
|
from .services import settings_service
|
|
from .ui.icons import ICON_COLOR_PRIMARY, icon
|
|
from .ui.theme import build_stylesheet, get_palette, create_qpalette
|
|
|
|
|
|
def main() -> None:
|
|
app = QApplication(sys.argv)
|
|
app.setStyle("Fusion")
|
|
app.setFont(QFont("Segoe UI Variable", 10))
|
|
|
|
palette = get_palette(settings_service.theme_mode(),
|
|
settings_service.theme_accent())
|
|
app.setPalette(create_qpalette(palette))
|
|
app.setStyleSheet(build_stylesheet(palette))
|
|
app_icon = icon("fa5s.microchip", color=ICON_COLOR_PRIMARY)
|
|
if not app_icon.isNull():
|
|
app.setWindowIcon(app_icon)
|
|
window = MainWindow()
|
|
if not app_icon.isNull():
|
|
window.setWindowIcon(app_icon)
|
|
window.show()
|
|
sys.exit(app.exec())
|