Add theme management and settings functionality
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled

- Introduced `ThemeManager` to handle application themes using `ttkthemes`.
- Added `SettingsWindow` for user preferences including theme selection and UI settings.
- Integrated theme selection into the main application with a menu for quick access.
- Enhanced UI components with custom styles based on the selected theme.
- Implemented tooltips for better user guidance across various UI elements.
- Updated dependencies to include `ttkthemes` for improved visual appeal.
This commit is contained in:
William Valentin
2025-08-05 11:58:25 -07:00
parent 86606d56b6
commit c3c88c63d2
14 changed files with 1287 additions and 70 deletions

13
uv.lock generated
View File

@@ -1,5 +1,5 @@
version = 1
revision = 2
revision = 3
requires-python = ">=3.13"
[[package]]
@@ -767,6 +767,7 @@ dependencies = [
{ name = "pandas" },
{ name = "reportlab" },
{ name = "tk" },
{ name = "ttkthemes" },
]
[package.dev-dependencies]
@@ -789,6 +790,7 @@ requires-dist = [
{ name = "pandas", specifier = ">=2.3.1" },
{ name = "reportlab", specifier = ">=4.4.3" },
{ name = "tk", specifier = ">=0.1.0" },
{ name = "ttkthemes", specifier = ">=3.2.2" },
]
[package.metadata.requires-dev]
@@ -811,6 +813,15 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/1e/0b/029cbdb868bb555fed99bf6540fff072d500b3f895873709f25084e85e33/tk-0.1.0-py3-none-any.whl", hash = "sha256:703a69ff0d5ba2bd2f7440582ad10160e4a6561595d33457dc6caa79b9bf4930", size = 3879, upload-time = "2019-07-08T06:51:55.175Z" },
]
[[package]]
name = "ttkthemes"
version = "3.2.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "pillow" },
]
sdist = { url = "https://files.pythonhosted.org/packages/fa/45/ab8ada55281af99a03bc0f8be53a502eb37ee34b94819a9ced89e8b0c12f/ttkthemes-3.2.2.tar.gz", hash = "sha256:01daed001f2ff0e4f32832a0d9ea48176c0c505203b030756bdde3bd1bcb21d2", size = 891159, upload-time = "2021-02-15T12:57:14.719Z" }
[[package]]
name = "tzdata"
version = "2025.2"