chipmuenk / pyfda

Python Filter Design Analysis Tool
http://chipmuenk.github.io/
MIT License
643 stars 94 forks source link

Improved dark/light theme with respect for system settings #247

Closed dgrine closed 4 months ago

dgrine commented 4 months ago

The default theme seems to be broken, at least on macOS. This change properly applies the current system theme (dark/light). It uses pyqtdarktheme as a new dependency. dark light

chipmuenk commented 4 months ago

First of all, thanx for your contribution and sorry for keeping you waiting so long! Finally, I created a new branch and merged your PR. Unfortunately, pyqtdarktheme messes with my layout settings without adapting the system wide dark mode under my Windows 10 and Linux Mint installations:

no_pyqtdarkmode pyqtdarkmode

The first image shows the default branch of pyfda, the second image shows your PR into the branch dark_theme. There are no warnings or anything but my guess is that I'm modifying the default look of the widgets too much for pyqtdarktheme. In your screenshots, the tabs are rendered just as text (which doesn't look bad) - is that intentional?

My son keeps nagging about a dark theme, so I'm really motivated to implement that ;-) but it seems this requires some more experimentation. Could you send me a list of the versions you are using (Info -> About -> To Clipboard)? Do you have a possibility to test your updates on windows?

chipmuenk commented 4 months ago

On a second look, I noted that most changes to pyfdax.py are fixes to my (questionable) code formatting except where you commented out the loading of my custom style (which explains the "plain" look). According to https://pypi.org/project/pyqtdarktheme/, some more changes are required to get a light/dark/system default look (like importing pyqtdarktheme and choosing a theme). Have you tried applying those changes on your platform? I'll finish the release of version 0.9 which focusses on fixpoint simulation and saving / loading filters and then I'll take another look at pyqtdarktheme. It would be great if you could tell me in more detail which changes / settings you have tried.