# Description: GUI entry point for Lemontropia Suite # Launches the full PyQt6 application with main window and HUD import sys import os from pathlib import Path # Load .env before anything else from dotenv import load_dotenv env_path = Path(__file__).parent / ".env" load_dotenv(dotenv_path=env_path) # Add project to path sys.path.insert(0, str(Path(__file__).parent)) from PyQt6.QtWidgets import QApplication from PyQt6.QtCore import Qt from ui.main_window import MainWindow from ui.setup_wizard import SetupWizard def main(): """GUI Application entry point.""" # Enable High DPI support os.environ['QT_ENABLE_HIGHDPI_SCALING'] = '1' os.environ['QT_AUTO_SCREEN_SCALE_FACTOR'] = '1' app = QApplication(sys.argv) app.setApplicationName("Lemontropia Suite") app.setApplicationVersion("0.2.0") # Check if first run - show setup wizard if SetupWizard.is_first_run(): wizard = SetupWizard(first_run=True) if wizard.exec() != SetupWizard.DialogCode.Accepted: # User cancelled wizard, exit print("Setup cancelled by user") sys.exit(0) # Create and show main window window = MainWindow() window.show() sys.exit(app.exec()) if __name__ == "__main__": main()