Removed qt5 and add qt6

parent ace60ace
......@@ -31,19 +31,19 @@ PLATFORM_CONFIG = {
'executable_name': BUILD_CONFIG['app_name'] + '.exe',
'icon_ext': '.ico',
'additional_paths': [],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb'],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb', 'PyQt5', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtWidgets', 'PyQt5.QtMultimedia', 'PyQt5.QtMultimediaWidgets'],
},
'Darwin': { # macOS
'executable_name': BUILD_CONFIG['app_name'],
'icon_ext': '.icns',
'additional_paths': [],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb'],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb', 'PyQt5', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtWidgets', 'PyQt5.QtMultimedia', 'PyQt5.QtMultimediaWidgets'],
},
'Linux': {
'executable_name': BUILD_CONFIG['app_name'],
'icon_ext': '.png',
'additional_paths': [],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb'],
'exclude_modules': ['tkinter', 'unittest', 'doctest', 'pdb', 'PyQt5', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtWidgets', 'PyQt5.QtMultimedia', 'PyQt5.QtMultimediaWidgets'],
}
}
......@@ -109,18 +109,35 @@ def collect_data_files() -> List[tuple]:
relative_path = file_path.relative_to(project_root)
data_files.append((str(file_path), str(relative_path.parent)))
# Include Qt player overlay HTML and resources
qt_player_dir = project_root / 'mbetterclient' / 'qt_player'
if qt_player_dir.exists():
for file_path in qt_player_dir.rglob('*.html'):
if file_path.is_file():
relative_path = file_path.relative_to(project_root)
data_files.append((str(file_path), str(relative_path.parent)))
# Include any CSS, JS, or other web resources
for ext in ['*.css', '*.js', '*.json']:
for file_path in qt_player_dir.rglob(ext):
if file_path.is_file():
relative_path = file_path.relative_to(project_root)
data_files.append((str(file_path), str(relative_path.parent)))
return data_files
def collect_hidden_imports() -> List[str]:
"""Collect hidden imports that PyInstaller might miss"""
return [
# PyQt5 modules
'PyQt5.QtCore',
'PyQt5.QtGui',
'PyQt5.QtWidgets',
'PyQt5.QtMultimedia',
'PyQt5.QtMultimediaWidgets',
# PyQt6 modules
'PyQt6.QtCore',
'PyQt6.QtGui',
'PyQt6.QtWidgets',
'PyQt6.QtMultimedia',
'PyQt6.QtMultimediaWidgets',
'PyQt6.QtWebEngineWidgets',
'PyQt6.QtWebChannel',
# Flask and web dependencies
'flask',
......@@ -289,7 +306,7 @@ def check_dependencies():
# Map package names to their import names
required_packages = {
'PyInstaller': 'PyInstaller',
'PyQt5': 'PyQt5'
'PyQt6': 'PyQt6'
}
missing_packages = []
......
This diff is collapsed.
"""
Overlay engine for rendering dynamic overlays on video content
NOTE: This is legacy code - the new PyQt6 implementation uses QWebEngineView for overlays
"""
import time
import logging
from typing import Dict, Any, Optional, List, Tuple
from pathlib import Path
from PyQt5.QtCore import Qt, QRect, QPoint, QTimer, QPropertyAnimation, QEasingCurve
from PyQt5.QtGui import (
from PyQt6.QtCore import Qt, QRect, QPoint, QTimer, QPropertyAnimation, QEasingCurve
from PyQt6.QtGui import (
QPainter, QPen, QBrush, QColor, QFont, QPixmap, QFontMetrics,
QLinearGradient, QRadialGradient, QPolygon
)
from PyQt5.QtWidgets import QGraphicsEffect
from PyQt6.QtWidgets import QGraphicsEffect
logger = logging.getLogger(__name__)
......
This diff is collapsed.
This diff is collapsed.
......@@ -5,8 +5,9 @@ Flask-WTF>=1.1.0
Flask-JWT-Extended>=4.4.0
requests>=2.28.0
# GUI - PyQt5
PyQt5>=5.15.0
# GUI - PyQt6 with WebEngine (Multimedia included in main package)
PyQt6>=6.4.0
PyQt6-WebEngine>=6.4.0
# Database
SQLAlchemy>=2.0.0
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment