diff options
Diffstat (limited to 'src/__main__.py')
| -rw-r--r-- | src/__main__.py | 37 |
1 files changed, 23 insertions, 14 deletions
diff --git a/src/__main__.py b/src/__main__.py index 284fd2c..db48788 100644 --- a/src/__main__.py +++ b/src/__main__.py @@ -1,30 +1,30 @@ -from PyQt5.QtWidgets import QApplication +from PyQt6.QtWidgets import QApplication import sys import logging import re import string -log = logging.getLogger('AVP.Main') +log = logging.getLogger("AVP.Main") def main() -> int: """Returns an exit code (0 for success)""" proj = None - mode = 'GUI' + mode = "GUI" # Determine whether we're in GUI or commandline mode if len(sys.argv) > 2: - mode = 'commandline' + mode = "commandline" elif len(sys.argv) == 2: - if sys.argv[1].startswith('-'): - mode = 'commandline' + if sys.argv[1].startswith("-"): + mode = "commandline" else: # remove unsafe punctuation characters such as \/?*&^%$# - if sys.argv[1].endswith('.avp'): + if sys.argv[1].endswith(".avp"): # remove file extension sys.argv[1] = sys.argv[1][:-4] - sys.argv[1] = re.sub(f'[{re.escape(string.punctuation)}]', '', sys.argv[1]) + sys.argv[1] = re.sub(f"[{re.escape(string.punctuation)}]", "", sys.argv[1]) # opening a project file with gui proj = sys.argv[1] @@ -32,8 +32,16 @@ def main() -> int: app = QApplication(sys.argv) app.setApplicationName("audio-visualizer") + screen = app.primaryScreen() + if screen is None: + dpi = None + log.error("Could not detect DPI") + else: + dpi = screen.physicalDotsPerInchX() + log.info("Detected screen DPI: %s", dpi) + # Launch program - if mode == 'commandline': + if mode == "commandline": from .command import Command main = Command() @@ -42,14 +50,15 @@ def main() -> int: # Both branches here may occur in one execution: # Commandline parsing could change mode back to GUI - if mode == 'GUI': + if mode == "GUI": from .gui.mainwindow import MainWindow - mainWindow = MainWindow(proj) + mainWindow = MainWindow(proj, dpi) log.debug("Finished creating MainWindow") mainWindow.raise_() - return app.exec_() + return app.exec() + -if __name__ == '__main__': - sys.exit(main())
\ No newline at end of file +if __name__ == "__main__": + sys.exit(main()) |
