/
DimerTrue
/
ecg_gui
Обзор
Документация
Войти
/
DimerTrue
/
ecg_gui
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
config/theme.py
144 строки
5 KB
DimerTrue
начал делать статус бар со статусом подключения
09 июл 2026, 18:07
09 июл 2026, 18:07
d54c4c7
Код
Авторство
О чём код?
# theme.py from config.ui_config import DEFAULT_THEME class Theme: # Светлая тема light = { # Основной фон фрейма "bg": "#EBEBEB", # Основные тексты "fg": "#000000", "text": "#333333", "value_fg": "#d32f2f", "title_fg": "#1976d2", "error_fg": "#D32F2F", # Элементы управления "disabled_fg": "#888888", "bar_bg": "#D0D0D0", "bar_fg": "#000000", "bar_border": "#000000", "border": "#d0d0d0", "control_bg": "#ffffff", "control_fg": "#000000", "combobox_bg": "#DCDCDC", "combobox_fg": "#000000", "combobox_active_bg": "#A8A8A8", "combobox_active_fg": "#000000", "spinbox_bg": "#DCDCDC", "spinbox_fg": "#000000", "entry_bg": "#DCDCDC", "entry_fg": "#000000", "listbox_bg": "#DCDCDC", "listbox_fg": "#000000", "listbox_bg_active": "#B7B7B7", "listbox_fg_active": "#000000", "scrollbar_bg": "#888888", "scrollbar_tc": "#DCDCDC", "scrollbar_border": "#6D6D6D", # Кнопки "button_bg": "#02BA08", "button_active_bg": "#0F6D12", "button_fg": "#ffffff", "button_plot_bg": "#2196F3", "button_active_plot_bg": "#1973BC", "button_plot_fg": "#ffffff", "button_on_bg": "#2FDD35", "button_active_on_bg": "#114113", "button_on_fg": "#ffffff", "button_off_bg": "#ff4134", "button_active_off_bg": "#c5362c", "button_off_fg": "#ffffff", # Подсказка "tooltip_bg": "#ffffe0", # График "plot_bg": "#EBEBEB", "plot_facecolor": "#EBEBEB", "plot_grid": "#000000", "plot_title": "#000000", "plot_label_x": "#000000", "plot_label_y_left": "#000000", "plot_label_y_right": "#3737db", "plot_ticks_left": "#000000", "plot_ticks_right": "#3737db", "plot_axis": "#000000", "plot_legend_text_left": "#000000", "plot_legend_text_right": "#3737db", } # Темная тема dark = { # Основной фон фрейма "bg": "#1e1e1e", # Основные тексты "fg": "#d4d4d4", "text": "#aaaaaa", "value_fg": "#ff6b6b", "title_fg": "#00ffae", "error_fg": "#D32F2F", # Элементы управления "disabled_fg": "#888888", "border": "#3e3e3e", "bar_bg": "#141414", "bar_fg": "#d4d4d4", "bar_border": "#3e3e3e", "control_bg": "#2b2b2b", "control_fg": "#d4d4d4", "combobox_bg": "#3e3e3e", "combobox_fg": "#ffffff", "combobox_active_bg": "#adadad", "combobox_active_fg": "#ffffff", "spinbox_bg": "#3e3e3e", "spinbox_fg": "#ffffff", "entry_bg": "#515151", "entry_fg": "#ffffff", "listbox_bg": "#515151", "listbox_fg": "#ffffff", "listbox_bg_active": "#2C2C2C", "listbox_fg_active": "#ffffff", "scrollbar_bg": "#4E4E4E", "scrollbar_tc": "#888888", "scrollbar_border": "#383838", # Кнопки "button_bg": "#17B51C", "button_active_bg": "#139417", "button_fg": "#ffffff", "button_plot_bg": "#5E48F3", "button_active_plot_bg": "#4334A7", "button_plot_fg": "#ffffff", "button_on_bg": "#33BB37", "button_active_on_bg": "#207723", "button_on_fg": "#ffffff", "button_off_bg": "#ff5f54", "button_active_off_bg": "#b04038", "button_off_fg": "#ffffff", # Подсказка "tooltip_bg": "#ced9fb", # График "plot_bg": "#1e1e1e", "plot_facecolor": "#2d2d2d", "plot_grid": "#f7f7f7", "plot_title": "#f7f7f7", "plot_label_x": "#00ffae", "plot_label_y_left": "#00ffae", "plot_label_y_right": "#006eff", "plot_ticks_left": "#00ffae", "plot_ticks_right": "#006eff", "plot_axis": "#f7f7f7", "plot_legend_text_left": "#00ffae", "plot_legend_text_right": "#006eff", } # текущая тема current = DEFAULT_THEME @classmethod def get_colors(cls): """Возвращает словарь цветов текущей темы""" return cls.dark if cls.current == "dark" else cls.light @classmethod def switch(cls): """Переключение темы""" cls.current = "dark" if cls.current == "light" else "light" return cls.get_colors()