Source code for prsctrl_gui.main

"""Setup path and run init"""
import os
import sys
if __name__ == "__main__":
    if __package__ is None:
        # make relative imports work as described here: https://peps.python.org/pep-0366/#proposed-change
        __package__ = "prsctrl_gui"
        from os import path
        filepath = path.realpath(path.abspath(__file__))
        # Make sure all projects are loaded from the source tree instead of installed packages
        # parent dir of both projects
        pdir = path.dirname(path.dirname(path.dirname(filepath)))
        sys.path.insert(0, path.join(pdir, "devctrl"))
        sys.path.insert(0, path.join(pdir, "prsctrl"))
        sys.path.insert(0, path.join(pdir, "prsctrl-gui"))
        # home pc
        sys.path.insert(0, path.join(pdir, "py-devctrl"))
        sys.path.insert(0, path.join(pdir, "py-prsctrl"))
        sys.path.insert(0, path.join(pdir, "py-prsctrl-gui"))

# Override find_icon_path to get a list of all used icons
import devctrl.resources
ICONS_LIST = set()
_find_icon = devctrl.resources.icon.find_icon_path
[docs] def find_icon_and_store(icon_name: str, dark_mode: bool|None=None) -> str|None: ICONS_LIST.add(icon_name) return _find_icon(icon_name, dark_mode)
devctrl.resources.icon.find_icon_path = find_icon_and_store from prsctrl_gui import init if __name__ == '__main__': import sys exitcode = init.run() with open("required-icons.txt", "w") as file: for icon in sorted(ICONS_LIST): file.write(icon + "\n") sys.exit(exitcode)