# -*- coding: utf-8 -*- """ Configuration constants for the PyInstaller GUI Wrapper application. """ # Default values for PyInstaller options managed by the GUI # These are used initially and when resetting options. DEFAULT_SPEC_OPTIONS = { 'onefile': False, # Corresponds to --onefile/--onedir 'windowed': True, # Corresponds to --windowed/--console (--noconsole) 'name': '', # Application name, derived from script if empty 'icon': '', # Path to the application icon (.ico on Win, .icns on Mac) 'add_data': [], # List of tuples (source_path, destination_in_bundle) 'hidden_imports': [], # List of modules PyInstaller might miss 'log_level': 'INFO', # PyInstaller log verbosity 'clean_build': True, # Corresponds to --clean (remove cache before build) 'confirm_overwrite': False,# Corresponds to --noconfirm (True means --noconfirm is active) 'output_dir_name': '_dist', # Custom name for the output directory (default is 'dist') 'work_dir_name': '_build', # Custom name for the temporary build directory (default is 'build') 'use_upx': True, # Whether to attempt using UPX if available # Internal tracking, potentially populated by parser, used by generator 'scripts': [], # Track main script(s) from Analysis 'pathex': [], # Track pathex from Analysis 'binaries': [], # Track binaries from Analysis } # Log levels available in PyInstaller (for potential dropdown/validation) PYINSTALLER_LOG_LEVELS = ["DEBUG", "INFO", "WARN", "ERROR", "CRITICAL"] # Add other constants here as needed, e.g., file type filters SCRIPT_FILE_TYPES = [ ("Python files", "*.py"), ("Pythonw files", "*.pyw"), ("All files", "*.*") ] ICON_FILE_TYPES_WINDOWS = [ ("Icon files", "*.ico"), ("All files", "*.*") ] ICON_DEFAULT_EXT_WINDOWS = ".ico" ICON_FILE_TYPES_MACOS = [ ("Apple Icon files", "*.icns"), ("PNG images", "*.png"), ("All files", "*.*") ] ICON_DEFAULT_EXT_MACOS = ".icns" ICON_FILE_TYPES_LINUX = [ ("Image files", "*.png"), ("Icon files", "*.ico"), ("All files", "*.*") ] ICON_DEFAULT_EXT_LINUX = ".png"