Skip to content

Настройка для переключения темы оформления (светлая/темная) #169

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: experimental
Choose a base branch
from

Conversation

gee12
Copy link
Contributor

@gee12 gee12 commented Jan 12, 2025

  1. В ресурсы добавлен стиль для темной темы (спасибо Илье https://t.me/mytetra/1590).
    Для светлой темы используется уже существующий стандартный файл стилей (stylesheet.css).
    Тема меняется для targetOs = "any".
    image

  2. В рабочем каталоге файл stylesheet.css перенес в подкаталог style, т.к.:

  • это упрощает его поиск и он отличается по смыслу от остальных конфиг-файлов в корне рабочего каталога
  • в связи с тем, что в стилях могут содержаться файлы картинок, чтобы они не засоряли рабочий каталог (хотя вроде бы содержимое картинок можно положить туда же в css, но тогда css может сильно разрастись)
  • когда тема сменяется на другую, файлы старой темы нужно удалять (а не просто заменять, по хорошему, чтобы не оставался мусор), и это было бы проблематично сделать, когда все файлы в 1 каталоге

При запуске программа делает миграцию: если stylesheet.css найден в корне, то он переносится в style/stylesheet.css.

  1. При смене темы содержимое подкаталога style очищается, а потом при перезапуске программы из ресурсов распаковывается нужный stylesheet.css (и если нужно доп.файлы стилей) из каталога light или dark соответственно

  2. В раздел настроек "Appearance" добавлена группа "Интерфейс",в которую добавлен параметр "Тема"
    image

Добавлена очередная миграция файла conf.ini, чтобы добавилось дефолтное значение для нового параметра theme=light. Т.е. для пользователей, которые установят новую версию программы ничего не изменится, будет светлая тема и существующий stylesheet.css сохранится (но будет перенесен в папку style).

  1. На данный момент темная тема выглядит так (на моей Windows 10). Многие моменты нужно подкрутить, пока использовать неудобно. Но как я понимаю все можно настроить в stylesheet.css (или почти все). Сам в стили еще не лез, закинул в ресурсы что предоставил Илья.
    image

@xintrea
Copy link
Owner

xintrea commented Feb 18, 2025

Принял пулл-реквест в эту ветку: https://github.com/xintrea/mytetra_dev/tree/selectThemeSupport

Пока смотрю, но видимо буду много переделывать. Тема, честно говоря, сырая. Ну и подключена "в лоб", без учет общей концепции конфигурации программы.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants