DazedTL/scripts/start_gui.py
DazedAnon 4d1b01c870 refactor!: rebrand product from DazedMTLTool to DazedTL
- Rename desktop launcher, window titles, About, and User-Agents
- Point QSettings at DazedTL with one-time migration from legacy app key
- Update README, Guide, skills, and launcher/script copy

BREAKING CHANGE: QSettings and desktop id now use DazedTL (legacy keys migrated once)
2026-07-22 12:27:22 -05:00

79 lines
2 KiB
Python

#!/usr/bin/env python3
"""Launch script for DazedTL GUI."""
import sys
from pathlib import Path
PROJECT_ROOT = Path(__file__).resolve().parent.parent
sys.path.insert(0, str(PROJECT_ROOT))
if sys.platform.startswith("linux"):
from util.linux_desktop import configure_qt_platform
configure_qt_platform()
def check_dependencies():
"""Check if required dependencies are installed."""
missing_deps = []
try:
import PyQt5 # noqa: F401
except ImportError:
missing_deps.append("PyQt5")
try:
from dotenv import load_dotenv # noqa: F401
except ImportError:
missing_deps.append("python-dotenv")
if missing_deps:
print("Missing dependencies:")
for dep in missing_deps:
print(f" - {dep}")
print("\nPlease install them using:")
print(" pip install -r requirements.txt")
return False
return True
def main():
"""Main entry point."""
print("DazedTL GUI Launcher")
print("=" * 40)
from util.paths import ensure_vocab_file, migrate_root_data_files
migrate_root_data_files()
ensure_vocab_file()
if not check_dependencies():
sys.exit(1)
try:
from util.ace.update_tools import seed_ace_tools
seed_ace_tools()
except Exception as exc:
print(f"Warning: Ace tool setup failed ({exc}). Ace features may be unavailable.")
try:
from util.forge.update_tools import seed_forge_plugins
seed_forge_plugins()
except Exception as exc:
print(f"Warning: Forge plugin setup failed ({exc}). Playtest Forge may be unavailable.")
try:
from gui.main import main as gui_main
gui_main()
except ImportError as e:
print(f"Error importing GUI modules: {e}")
print("Make sure all GUI files are in the 'gui' directory")
sys.exit(1)
except Exception as e:
print(f"Error starting GUI: {e}")
sys.exit(1)
if __name__ == "__main__":
main()