Revert upgrade to pyside6.

This appears to be incompatible with pyinstaller. I get the following
when trying to run the executable generated with pyside6:

```
Traceback (most recent call last):
  File "qt_ui\main.py", line 29, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 476, in exec_module
  File "qt_ui\windows\QLiberationWindow.py", line 28, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 476, in exec_module
  File "qt_ui\widgets\map\QLiberationMap.py", line 11, in <module>
ImportError: could not import module 'PySide6.QtPrintSupport'
```
This commit is contained in:
Dan Albert 2021-11-21 17:34:08 -08:00
parent f3bf9c0c3c
commit 2a75d14e0e
96 changed files with 189 additions and 186 deletions

View File

@ -24,8 +24,8 @@ jobs:
run: | run: |
./venv/scripts/activate ./venv/scripts/activate
python -m pip install -r requirements.txt python -m pip install -r requirements.txt
# For some reason the shiboken6.abi3.dll is not found properly, so I copy it instead # For some reason the shiboken2.abi3.dll is not found properly, so I copy it instead
Copy-Item .\venv\Lib\site-packages\shiboken6\shiboken6.abi3.dll .\venv\Lib\site-packages\PySide6\ -Force Copy-Item .\venv\Lib\site-packages\shiboken2\shiboken2.abi3.dll .\venv\Lib\site-packages\PySide2\ -Force
- name: mypy game - name: mypy game
run: | run: |

View File

@ -26,8 +26,8 @@ jobs:
run: | run: |
./venv/scripts/activate ./venv/scripts/activate
python -m pip install -r requirements.txt python -m pip install -r requirements.txt
# For some reason the shiboken6.abi3.dll is not found properly, so I copy it instead # For some reason the shiboken2.abi3.dll is not found properly, so I copy it instead
Copy-Item .\venv\Lib\site-packages\shiboken6\shiboken6.abi3.dll .\venv\Lib\site-packages\PySide6\ -Force Copy-Item .\venv\Lib\site-packages\shiboken2\shiboken2.abi3.dll .\venv\Lib\site-packages\PySide2\ -Force
- name: Finalize version - name: Finalize version
run: | run: |

View File

@ -24,8 +24,8 @@ jobs:
run: | run: |
./venv/scripts/activate ./venv/scripts/activate
python -m pip install -r requirements.txt python -m pip install -r requirements.txt
# For some reason the shiboken6.abi3.dll is not found properly, so I copy it instead # For some reason the shiboken2.abi3.dll is not found properly, so I copy it instead
Copy-Item .\venv\Lib\site-packages\shiboken6\shiboken6.abi3.dll .\venv\Lib\site-packages\PySide6\ -Force Copy-Item .\venv\Lib\site-packages\shiboken2\shiboken2.abi3.dll .\venv\Lib\site-packages\PySide2\ -Force
- name: run tests - name: run tests
run: | run: |

View File

@ -1,9 +1,9 @@
from contextlib import contextmanager from contextlib import contextmanager
from typing import ContextManager, Optional from typing import ContextManager, Optional
from PySide6.QtCore import QModelIndex, Qt, QSize from PySide2.QtCore import QModelIndex, Qt, QSize
from PySide6.QtGui import QPainter, QFont, QFontMetrics, QIcon from PySide2.QtGui import QPainter, QFont, QFontMetrics, QIcon
from PySide6.QtWidgets import QStyledItemDelegate, QStyleOptionViewItem, QStyle from PySide2.QtWidgets import QStyledItemDelegate, QStyleOptionViewItem, QStyle
@contextmanager @contextmanager

View File

@ -3,7 +3,7 @@ from collections.abc import Iterator
from contextlib import contextmanager from contextlib import contextmanager
from typing import Type from typing import Type
from PySide6.QtWidgets import QDialog, QMessageBox from PySide2.QtWidgets import QDialog, QMessageBox
@contextmanager @contextmanager

View File

@ -6,9 +6,10 @@ from datetime import datetime
from pathlib import Path from pathlib import Path
from typing import Optional from typing import Optional
from PySide6 import QtWidgets from PySide2 import QtWidgets
from PySide6.QtGui import QPixmap from PySide2.QtCore import Qt
from PySide6.QtWidgets import QApplication, QSplashScreen from PySide2.QtGui import QPixmap
from PySide2.QtWidgets import QApplication, QSplashScreen
from dcs.payloads import PayloadDirectories from dcs.payloads import PayloadDirectories
from game import Game, VERSION, persistency from game import Game, VERSION, persistency
@ -58,6 +59,8 @@ def run_ui(game: Optional[Game]) -> None:
os.environ["QT_AUTO_SCREEN_SCALE_FACTOR"] = "1" # Potential fix for 4K screens os.environ["QT_AUTO_SCREEN_SCALE_FACTOR"] = "1" # Potential fix for 4K screens
app = QApplication(sys.argv) app = QApplication(sys.argv)
app.setAttribute(Qt.AA_DisableWindowContextHelpButton)
# init the theme and load the stylesheet based on the theme index # init the theme and load the stylesheet based on the theme index
liberation_theme.init() liberation_theme.init()
with open( with open(
@ -128,7 +131,7 @@ def run_ui(game: Optional[Game]) -> None:
window = QLiberationWindow(game) window = QLiberationWindow(game)
window.showMaximized() window.showMaximized()
splash.finish(window) splash.finish(window)
qt_execution_code = app.exec() qt_execution_code = app.exec_()
# Restore Mission Scripting file # Restore Mission Scripting file
logging.info("QT App terminated with status code : " + str(qt_execution_code)) logging.info("QT App terminated with status code : " + str(qt_execution_code))

View File

@ -4,13 +4,13 @@ from __future__ import annotations
import datetime import datetime
from typing import Any, Callable, Iterator, Optional, TypeVar from typing import Any, Callable, Iterator, Optional, TypeVar
from PySide6.QtCore import ( from PySide2.QtCore import (
QAbstractListModel, QAbstractListModel,
QModelIndex, QModelIndex,
Qt, Qt,
Signal, Signal,
) )
from PySide6.QtGui import QIcon from PySide2.QtGui import QIcon
from game.ato.airtaaskingorder import AirTaskingOrder from game.ato.airtaaskingorder import AirTaskingOrder
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -5,7 +5,7 @@ from datetime import datetime, timedelta
from pathlib import Path from pathlib import Path
from typing import Callable, Optional, TYPE_CHECKING from typing import Callable, Optional, TYPE_CHECKING
from PySide6.QtCore import QObject, Signal from PySide2.QtCore import QObject, Signal
from game.polldebriefingfilethread import PollDebriefingFileThread from game.polldebriefingfilethread import PollDebriefingFileThread
from game.sim.gameloop import GameLoop from game.sim.gameloop import GameLoop

View File

@ -1,7 +1,7 @@
import os import os
from typing import Dict from typing import Dict
from PySide6.QtGui import QPixmap from PySide2.QtGui import QPixmap
from game.theater.theatergroundobject import NAME_BY_CATEGORY from game.theater.theatergroundobject import NAME_BY_CATEGORY
from .liberation_theme import get_theme_icons from .liberation_theme import get_theme_icons

View File

@ -3,8 +3,8 @@ import logging
import sys import sys
import traceback import traceback
from PySide6.QtCore import Signal, QObject from PySide2.QtCore import Signal, QObject
from PySide6.QtWidgets import QMessageBox, QApplication from PySide2.QtWidgets import QMessageBox, QApplication
class UncaughtExceptionHandler(QObject): class UncaughtExceptionHandler(QObject):

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QLabel, QHBoxLayout, QGroupBox, QPushButton from PySide2.QtWidgets import QLabel, QHBoxLayout, QGroupBox, QPushButton
import qt_ui.uiconstants as CONST import qt_ui.uiconstants as CONST
from game import Game from game import Game

View File

@ -1,7 +1,7 @@
from datetime import datetime from datetime import datetime
from PySide6.QtGui import QPixmap from PySide2.QtGui import QPixmap
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QFrame, QFrame,
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QFrame from PySide2.QtWidgets import QFrame
class QDebriefingInformation(QFrame): class QDebriefingInformation(QFrame):

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QLabel, QGroupBox, QGridLayout from PySide2.QtWidgets import QLabel, QGroupBox, QGridLayout
from game import Game from game import Game

View File

@ -1,5 +1,5 @@
"""Spin box for selecting the number of aircraft in a flight.""" """Spin box for selecting the number of aircraft in a flight."""
from PySide6.QtWidgets import QSpinBox from PySide2.QtWidgets import QSpinBox
class QFlightSizeSpinner(QSpinBox): class QFlightSizeSpinner(QSpinBox):

View File

@ -1,6 +1,6 @@
from typing import Optional from typing import Optional
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,
QHBoxLayout, QHBoxLayout,

View File

@ -1,8 +1,8 @@
"""A layout containing a widget with an associated label.""" """A layout containing a widget with an associated label."""
from typing import Optional from typing import Optional
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import QHBoxLayout, QLabel, QWidget from PySide2.QtWidgets import QHBoxLayout, QLabel, QWidget
class QLabeledWidget(QHBoxLayout): class QLabeledWidget(QHBoxLayout):

View File

@ -1,5 +1,5 @@
from PySide6 import QtCore, QtGui from PySide2 import QtCore, QtGui
from PySide6.QtWidgets import QCalendarWidget from PySide2.QtWidgets import QCalendarWidget
class QLiberationCalendar(QCalendarWidget): class QLiberationCalendar(QCalendarWidget):

View File

@ -1,6 +1,6 @@
from typing import List, Optional from typing import List, Optional
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QFrame, QFrame,
QGroupBox, QGroupBox,

View File

@ -3,18 +3,18 @@ import logging
from datetime import timedelta from datetime import timedelta
from typing import Optional from typing import Optional
from PySide6.QtCore import ( from PySide2.QtCore import (
QItemSelectionModel, QItemSelectionModel,
QModelIndex, QModelIndex,
QSize, QSize,
Qt, Qt,
) )
from PySide6.QtGui import ( from PySide2.QtGui import (
QAction,
QContextMenuEvent, QContextMenuEvent,
) )
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAbstractItemView, QAbstractItemView,
QAction,
QGroupBox, QGroupBox,
QHBoxLayout, QHBoxLayout,
QLabel, QLabel,

View File

@ -1,5 +1,5 @@
"""Widgets for displaying client slots.""" """Widgets for displaying client slots."""
from PySide6.QtWidgets import QLabel from PySide2.QtWidgets import QLabel
from qt_ui.models import AtoModel from qt_ui.models import AtoModel
from qt_ui.widgets.QLabeledWidget import QLabeledWidget from qt_ui.widgets.QLabeledWidget import QLabeledWidget

View File

@ -1,7 +1,7 @@
"""Combo box for selecting aircraft types.""" """Combo box for selecting aircraft types."""
from typing import Iterable, Type from typing import Iterable, Type
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from dcs.unittype import FlyingType from dcs.unittype import FlyingType
from gen.flights.ai_flight_planner_db import aircraft_for_task from gen.flights.ai_flight_planner_db import aircraft_for_task

View File

@ -1,7 +1,7 @@
"""Combo box for selecting a departure airfield.""" """Combo box for selecting a departure airfield."""
from typing import Iterable, Optional from typing import Iterable, Optional
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from dcs.unittype import FlyingType from dcs.unittype import FlyingType
from game.dcs.aircrafttype import AircraftType from game.dcs.aircrafttype import AircraftType

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import QSortFilterProxyModel, Qt from PySide2.QtCore import QSortFilterProxyModel, Qt
from PySide6.QtWidgets import QComboBox, QCompleter from PySide2.QtWidgets import QComboBox, QCompleter
class QFilteredComboBox(QComboBox): class QFilteredComboBox(QComboBox):

View File

@ -1,6 +1,6 @@
"""Combo box for selecting a flight's task type.""" """Combo box for selecting a flight's task type."""
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from game.theater import ConflictTheater, MissionTarget from game.theater import ConflictTheater, MissionTarget

View File

@ -1,4 +1,4 @@
from PySide6.QtGui import QStandardItem, QStandardItemModel from PySide2.QtGui import QStandardItem, QStandardItemModel
from game import Game from game import Game
from game.theater import ControlPointType, BuildingGroundObject from game.theater import ControlPointType, BuildingGroundObject

View File

@ -1,4 +1,4 @@
from PySide6.QtGui import QStandardItem, QStandardItemModel from PySide2.QtGui import QStandardItem, QStandardItemModel
from game import Game from game import Game
from qt_ui.widgets.combos.QFilteredComboBox import QFilteredComboBox from qt_ui.widgets.combos.QFilteredComboBox import QFilteredComboBox

View File

@ -1,6 +1,6 @@
from typing import Optional from typing import Optional
from PySide6.QtWidgets import QSpinBox from PySide2.QtWidgets import QSpinBox
class FloatSpinner(QSpinBox): class FloatSpinner(QSpinBox):

View File

@ -6,10 +6,10 @@ from typing import (
Optional, Optional,
) )
from PySide6.QtCore import QUrl from PySide2.QtCore import QUrl
from PySide6.QtWebChannel import QWebChannel from PySide2.QtWebChannel import QWebChannel
from PySide6.QtWebEngineCore import QWebEnginePage from PySide2.QtWebEngineWidgets import (
from PySide6.QtWebEngineWidgets import ( QWebEnginePage,
QWebEngineView, QWebEngineView,
) )
@ -27,7 +27,6 @@ class LoggingWebPage(QWebEnginePage):
line_number: int, line_number: int,
source: str, source: str,
) -> None: ) -> None:
super().javaScriptConsoleMessage(level, message, line_number, source)
if level == QWebEnginePage.JavaScriptConsoleMessageLevel.ErrorMessageLevel: if level == QWebEnginePage.JavaScriptConsoleMessageLevel.ErrorMessageLevel:
logging.error(message) logging.error(message)
elif level == QWebEnginePage.JavaScriptConsoleMessageLevel.WarningMessageLevel: elif level == QWebEnginePage.JavaScriptConsoleMessageLevel.WarningMessageLevel:
@ -49,11 +48,11 @@ class QLiberationMap(QWebEngineView):
self.channel.registerObject("game", self.map_model) self.channel.registerObject("game", self.map_model)
self.page = LoggingWebPage(self) self.page = LoggingWebPage(self)
self.setPage(self.page)
self.page.setWebChannel(self.channel) self.page.setWebChannel(self.channel)
self.page.load( self.page.load(
QUrl.fromLocalFile(str(Path("resources/ui/map/canvas.html").resolve())) QUrl.fromLocalFile(str(Path("resources/ui/map/canvas.html").resolve()))
) )
self.setPage(self.page)
def set_game(self, game: Optional[Game]) -> None: def set_game(self, game: Optional[Game]) -> None:
if game is None: if game is None:

View File

@ -4,7 +4,7 @@ import logging
from datetime import timedelta from datetime import timedelta
from typing import Iterator, List, Optional, Tuple, Union from typing import Iterator, List, Optional, Tuple, Union
from PySide6.QtCore import Property, QObject, Signal, Slot from PySide2.QtCore import Property, QObject, Signal, Slot
from dcs import Point from dcs import Point
from dcs.unit import Unit from dcs.unit import Unit
from dcs.vehicles import vehicle_map from dcs.vehicles import vehicle_map
@ -59,7 +59,7 @@ ENABLE_EXPENSIVE_DEBUG_TOOLS = False
# #
# https://bugreports.qt.io/browse/PYSIDE-1426 # https://bugreports.qt.io/browse/PYSIDE-1426
# #
# PySide6 5.15.2 released 6 days before the fix for this was merged, but presumably we # PySide2 5.15.2 released 6 days before the fix for this was merged, but presumably we
# can clean up after 5.15.3 (or a future version) is released. # can clean up after 5.15.3 (or a future version) is released.
# #
# Until then, all properties must use a notify signal. For some reason the error doesn't # Until then, all properties must use a notify signal. For some reason the error doesn't

View File

@ -2,7 +2,7 @@ from __future__ import annotations
from typing import Optional from typing import Optional
from PySide6.QtWidgets import QButtonGroup, QHBoxLayout, QPushButton, QWidget from PySide2.QtWidgets import QButtonGroup, QHBoxLayout, QPushButton, QWidget
from game.sim.simspeedsetting import SimSpeedSetting from game.sim.simspeedsetting import SimSpeedSetting
from qt_ui.simcontroller import SimController from qt_ui.simcontroller import SimController

View File

@ -1,9 +1,9 @@
from datetime import timedelta from datetime import timedelta
from typing import Optional from typing import Optional
from PySide6 import QtWidgets from PySide2 import QtWidgets
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import QSlider, QHBoxLayout from PySide2.QtWidgets import QSlider, QHBoxLayout
from qt_ui.widgets.floatspinners import FloatSpinner from qt_ui.widgets.floatspinners import FloatSpinner

View File

@ -1,7 +1,7 @@
import random import random
from PySide6.QtGui import QStandardItemModel, QStandardItem from PySide2.QtGui import QStandardItemModel, QStandardItem
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QGroupBox, QGroupBox,
QLabel, QLabel,
QWidget, QWidget,

View File

@ -1,6 +1,6 @@
from typing import Callable, Iterable, Optional from typing import Callable, Iterable, Optional
from PySide6.QtCore import ( from PySide2.QtCore import (
QItemSelection, QItemSelection,
QItemSelectionModel, QItemSelectionModel,
QModelIndex, QModelIndex,
@ -8,9 +8,8 @@ from PySide6.QtCore import (
Qt, Qt,
Signal, Signal,
) )
from PySide6.QtGui import QIcon, QStandardItem, QStandardItemModel from PySide2.QtGui import QIcon, QStandardItem, QStandardItemModel
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QCheckBox,
QComboBox, QComboBox,
QDialog, QDialog,
QGroupBox, QGroupBox,

View File

@ -3,8 +3,8 @@ from __future__ import annotations
from dataclasses import dataclass from dataclasses import dataclass
from typing import Optional, Iterator from typing import Optional, Iterator
from PySide6.QtCore import QItemSelectionModel, QModelIndex, QSize from PySide2.QtCore import QItemSelectionModel, QModelIndex, QSize
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAbstractItemView, QAbstractItemView,
QCheckBox, QCheckBox,
QDialog, QDialog,

View File

@ -2,7 +2,7 @@ from __future__ import annotations
from typing import Optional from typing import Optional
from PySide6.QtCore import QObject, Signal from PySide2.QtCore import QObject, Signal
from game import Game from game import Game
from game.debriefing import Debriefing from game.debriefing import Debriefing

View File

@ -1,12 +1,13 @@
from PySide6.QtCore import ( from PySide2.QtCore import (
QItemSelection, QItemSelection,
QItemSelectionModel, QItemSelectionModel,
QModelIndex, QModelIndex,
Qt, Qt,
) )
from PySide6.QtGui import QAction, QContextMenuEvent from PySide2.QtGui import QContextMenuEvent
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAbstractItemView, QAbstractItemView,
QAction,
QDialog, QDialog,
QHBoxLayout, QHBoxLayout,
QListView, QListView,

View File

@ -1,8 +1,8 @@
import logging import logging
from typing import Callable, Dict, TypeVar from typing import Callable, Dict, TypeVar
from PySide6.QtGui import QIcon, QPixmap from PySide2.QtGui import QIcon, QPixmap
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,

View File

@ -3,9 +3,12 @@ import traceback
import webbrowser import webbrowser
from typing import Optional from typing import Optional
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtGui import QAction, QActionGroup, QCloseEvent, QGuiApplication, QIcon from PySide2.QtGui import QCloseEvent, QIcon
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAction,
QActionGroup,
QDesktopWidget,
QFileDialog, QFileDialog,
QMainWindow, QMainWindow,
QMessageBox, QMessageBox,
@ -64,7 +67,7 @@ class QLiberationWindow(QMainWindow):
self.initMenuBar() self.initMenuBar()
self.connectSignals() self.connectSignals()
screen = QGuiApplication.primaryScreen().availableSize() screen = QDesktopWidget().screenGeometry()
self.setGeometry(0, 0, screen.width(), screen.height()) self.setGeometry(0, 0, screen.width(), screen.height())
self.setWindowState(Qt.WindowMaximized) self.setWindowState(Qt.WindowMaximized)
@ -97,7 +100,7 @@ class QLiberationWindow(QMainWindow):
vbox.setSizes([600, 100]) vbox.setSizes([600, 100])
vbox = QVBoxLayout() vbox = QVBoxLayout()
vbox.setContentsMargins(0, 0, 0, 0) vbox.setMargin(0)
vbox.addWidget(QTopPanel(self.game_model, self.sim_controller)) vbox.addWidget(QTopPanel(self.game_model, self.sim_controller))
vbox.addWidget(hbox) vbox.addWidget(hbox)

View File

@ -1,8 +1,8 @@
from __future__ import annotations from __future__ import annotations
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtGui import QIcon from PySide2.QtGui import QIcon
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QGridLayout, QGridLayout,
QLabel, QLabel,

View File

@ -5,10 +5,10 @@ import os
from pathlib import Path from pathlib import Path
from typing import Optional from typing import Optional
from PySide6 import QtCore from PySide2 import QtCore
from PySide6.QtCore import QObject, Signal from PySide2.QtCore import QObject, Signal
from PySide6.QtGui import QIcon, QMovie, QPixmap from PySide2.QtGui import QIcon, QMovie, QPixmap
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QFileDialog, QFileDialog,
QGridLayout, QGridLayout,

View File

@ -1,13 +1,13 @@
import logging import logging
from typing import Callable, Iterator, Optional from typing import Callable, Iterator, Optional
from PySide6.QtCore import ( from PySide2.QtCore import (
QItemSelectionModel, QItemSelectionModel,
QModelIndex, QModelIndex,
Qt, Qt,
QItemSelection, QItemSelection,
) )
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAbstractItemView, QAbstractItemView,
QDialog, QDialog,
QListView, QListView,

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QFrame, QFrame,
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,

View File

@ -4,8 +4,8 @@ import logging
from collections import defaultdict from collections import defaultdict
from typing import Callable, Dict, Type from typing import Callable, Dict, Type
from PySide6.QtCore import Qt, Signal from PySide2.QtCore import Qt, Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QComboBox, QComboBox,
QDialog, QDialog,
QFrame, QFrame,

View File

@ -1,6 +1,6 @@
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtGui import QCloseEvent, QPixmap from PySide2.QtGui import QCloseEvent, QPixmap
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QHBoxLayout, QHBoxLayout,
QLabel, QLabel,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QTabWidget from PySide2.QtWidgets import QTabWidget
from game.theater import ControlPoint, Fob from game.theater import ControlPoint, Fob
from qt_ui.models import GameModel from qt_ui.models import GameModel

View File

@ -4,8 +4,8 @@ import logging
from enum import Enum from enum import Enum
from typing import Generic, TypeVar from typing import Generic, TypeVar
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QApplication, QApplication,
QFrame, QFrame,
QGridLayout, QGridLayout,

View File

@ -1,7 +1,7 @@
from typing import Set from typing import Set
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QGridLayout, QGridLayout,
QHBoxLayout, QHBoxLayout,
QLabel, QLabel,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QFrame, QGroupBox, QHBoxLayout, QVBoxLayout from PySide2.QtWidgets import QFrame, QGroupBox, QHBoxLayout, QVBoxLayout
from game.theater import ControlPoint from game.theater import ControlPoint
from qt_ui.models import GameModel from qt_ui.models import GameModel

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import QGridLayout, QScrollArea, QVBoxLayout, QWidget from PySide2.QtWidgets import QGridLayout, QScrollArea, QVBoxLayout, QWidget
from game.dcs.groundunittype import GroundUnitType from game.dcs.groundunittype import GroundUnitType
from game.theater import ControlPoint from game.theater import ControlPoint

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QFrame, QGridLayout from PySide2.QtWidgets import QFrame, QGridLayout
from game.theater import ControlPoint from game.theater import ControlPoint
from qt_ui.models import GameModel from qt_ui.models import GameModel

View File

@ -1,6 +1,6 @@
from collections.abc import Callable from collections.abc import Callable
from PySide6.QtWidgets import QGroupBox, QLabel, QPushButton, QVBoxLayout from PySide2.QtWidgets import QGroupBox, QLabel, QPushButton, QVBoxLayout
from game import Game from game import Game
from game.theater import ControlPoint from game.theater import ControlPoint

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from game.theater import CombatStance, ControlPoint from game.theater import CombatStance, ControlPoint

View File

@ -1,7 +1,7 @@
from collections import defaultdict from collections import defaultdict
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QFrame, QFrame,
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,

View File

@ -1,7 +1,7 @@
import itertools import itertools
from typing import Optional from typing import Optional
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QFrame, QFrame,
QGridLayout, QGridLayout,

View File

@ -1,7 +1,7 @@
import os import os
from PySide6.QtGui import QPixmap from PySide2.QtGui import QPixmap
from PySide6.QtWidgets import QGroupBox, QHBoxLayout, QVBoxLayout, QLabel from PySide2.QtWidgets import QGroupBox, QHBoxLayout, QVBoxLayout, QLabel
from game.db import REWARDS from game.db import REWARDS

View File

@ -1,8 +1,8 @@
import logging import logging
from typing import List, Optional from typing import List, Optional
from PySide6.QtGui import Qt from PySide2.QtGui import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QComboBox, QComboBox,
QDialog, QDialog,
QGridLayout, QGridLayout,

View File

@ -1,4 +1,4 @@
from PySide6.QtGui import QStandardItem from PySide2.QtGui import QStandardItem
from game.infos.information import Information from game.infos.information import Information

View File

@ -1,6 +1,6 @@
from PySide6.QtCore import QItemSelectionModel, QPoint from PySide2.QtCore import QItemSelectionModel, QPoint
from PySide6.QtGui import QStandardItemModel from PySide2.QtGui import QStandardItemModel
from PySide6.QtWidgets import QListView from PySide2.QtWidgets import QListView
from game import Game, game from game import Game, game
from qt_ui.windows.infos.QInfoItem import QInfoItem from qt_ui.windows.infos.QInfoItem import QInfoItem

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QFrame, QVBoxLayout, QLabel, QGroupBox from PySide2.QtWidgets import QFrame, QVBoxLayout, QLabel, QGroupBox
from game import Game from game import Game
from qt_ui.windows.infos.QInfoList import QInfoList from qt_ui.windows.infos.QInfoList import QInfoList

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QFrame, QLabel, QGridLayout from PySide2.QtWidgets import QFrame, QLabel, QGridLayout
from game.infos.information import Information from game.infos.information import Information

View File

@ -1,7 +1,7 @@
import itertools import itertools
from typing import Optional from typing import Optional
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QCheckBox, QCheckBox,
QDialog, QDialog,
QFrame, QFrame,

View File

@ -1,14 +1,14 @@
import logging import logging
import typing import typing
from PySide6.QtCore import Signal from PySide2.QtCore import Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QPlainTextEdit, QPlainTextEdit,
QVBoxLayout, QVBoxLayout,
QPushButton, QPushButton,
) )
from PySide6.QtGui import QTextCursor, QIcon from PySide2.QtGui import QTextCursor, QIcon
from qt_ui.logging_handler import HookableInMemoryHandler from qt_ui.logging_handler import HookableInMemoryHandler

View File

@ -1,5 +1,5 @@
"""Dialog window for editing flights.""" """Dialog window for editing flights."""
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QVBoxLayout, QVBoxLayout,
) )

View File

@ -1,4 +1,4 @@
from PySide6.QtGui import QStandardItem, QIcon from PySide2.QtGui import QStandardItem, QIcon
from game.ato.package import Package from game.ato.package import Package
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -3,8 +3,8 @@ import logging
from datetime import timedelta from datetime import timedelta
from typing import Optional from typing import Optional
from PySide6.QtCore import QItemSelection, QTime, Qt, Signal from PySide2.QtCore import QItemSelection, QTime, Qt, Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QCheckBox, QCheckBox,
QDialog, QDialog,
QHBoxLayout, QHBoxLayout,

View File

@ -1,8 +1,8 @@
from datetime import timedelta from datetime import timedelta
from PySide6.QtCore import QItemSelectionModel, QSize from PySide2.QtCore import QItemSelectionModel, QSize
from PySide6.QtGui import QStandardItemModel from PySide2.QtGui import QStandardItemModel
from PySide6.QtWidgets import QAbstractItemView, QListView from PySide2.QtWidgets import QAbstractItemView, QListView
from qt_ui.models import GameModel from qt_ui.models import GameModel
from qt_ui.windows.mission.QFlightItem import QFlightItem from qt_ui.windows.mission.QFlightItem import QFlightItem

View File

@ -1,7 +1,7 @@
from typing import Optional, Type from typing import Optional, Type
from PySide6.QtCore import Qt, Signal from PySide2.QtCore import Qt, Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QComboBox, QComboBox,
QDialog, QDialog,
QLabel, QLabel,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QTabWidget from PySide2.QtWidgets import QTabWidget
from game import Game from game import Game
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -1,7 +1,7 @@
"""Combo box for selecting squadrons.""" """Combo box for selecting squadrons."""
from typing import Optional from typing import Optional
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from game.dcs.aircrafttype import AircraftType from game.dcs.aircrafttype import AircraftType
from game.squadrons.airwing import AirWing from game.squadrons.airwing import AirWing

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import QFrame, QLabel, QComboBox, QVBoxLayout from PySide2.QtWidgets import QFrame, QLabel, QComboBox, QVBoxLayout
from game import Game from game import Game
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,
QLabel, QLabel,

View File

@ -2,7 +2,7 @@ import logging
import operator import operator
from typing import Optional from typing import Optional
from PySide6.QtWidgets import QComboBox from PySide2.QtWidgets import QComboBox
from game import Game from game import Game
from game.data.weapons import Pylon, Weapon from game.data.weapons import Pylon, Weapon

View File

@ -1,6 +1,6 @@
import logging import logging
from PySide6.QtWidgets import QGroupBox, QLabel, QMessageBox, QVBoxLayout from PySide2.QtWidgets import QGroupBox, QLabel, QMessageBox, QVBoxLayout
from game import Game from game import Game
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QGroupBox, QHBoxLayout, QLabel from PySide2.QtWidgets import QGroupBox, QHBoxLayout, QLabel
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -1,8 +1,8 @@
import logging import logging
from typing import Optional, Callable from typing import Optional, Callable
from PySide6.QtCore import Signal, QModelIndex from PySide2.QtCore import Signal, QModelIndex
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QLabel, QLabel,
QGroupBox, QGroupBox,
QSpinBox, QSpinBox,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QComboBox, QComboBox,
QGroupBox, QGroupBox,
QHBoxLayout, QHBoxLayout,

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QLabel, QGroupBox, QGridLayout from PySide2.QtWidgets import QLabel, QGroupBox, QGridLayout
from qt_ui.uiconstants import AIRCRAFT_ICONS from qt_ui.uiconstants import AIRCRAFT_ICONS

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Signal from PySide2.QtCore import Signal
from PySide6.QtWidgets import QFrame, QGridLayout, QVBoxLayout from PySide2.QtWidgets import QFrame, QGridLayout, QVBoxLayout
from game import Game from game import Game
from game.ato.flight import Flight from game.ato.flight import Flight

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QGroupBox, QHBoxLayout, QLabel, QVBoxLayout from PySide2.QtWidgets import QGroupBox, QHBoxLayout, QLabel, QVBoxLayout
from game.ato.flightwaypoint import FlightWaypoint from game.ato.flightwaypoint import FlightWaypoint

View File

@ -1,6 +1,6 @@
from typing import List from typing import List
from PySide6.QtGui import QStandardItem from PySide2.QtGui import QStandardItem
from game.ato.flightwaypoint import FlightWaypoint from game.ato.flightwaypoint import FlightWaypoint

View File

@ -1,8 +1,8 @@
from datetime import timedelta from datetime import timedelta
from PySide6.QtCore import QItemSelectionModel, QPoint from PySide2.QtCore import QItemSelectionModel, QPoint
from PySide6.QtGui import QStandardItem, QStandardItemModel from PySide2.QtGui import QStandardItem, QStandardItemModel
from PySide6.QtWidgets import QHeaderView, QTableView from PySide2.QtWidgets import QHeaderView, QTableView
from game.ato.package import Package from game.ato.package import Package
from game.ato.flightwaypointtype import FlightWaypointType from game.ato.flightwaypointtype import FlightWaypointType

View File

@ -1,8 +1,8 @@
import logging import logging
from typing import Iterable, List, Optional from typing import Iterable, List, Optional
from PySide6.QtCore import Signal from PySide2.QtCore import Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QFrame, QFrame,
QGridLayout, QGridLayout,
QLabel, QLabel,

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Qt, Signal from PySide2.QtCore import Qt, Signal
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QCheckBox, QCheckBox,
QDialog, QDialog,
QHBoxLayout, QHBoxLayout,

View File

@ -2,10 +2,10 @@ from __future__ import annotations
from typing import Optional from typing import Optional
from PySide6 import QtGui from PySide2 import QtGui
from PySide6.QtCore import QItemSelectionModel, QModelIndex, Qt from PySide2.QtCore import QItemSelectionModel, QModelIndex, Qt
from PySide6.QtGui import QStandardItem, QStandardItemModel from PySide2.QtGui import QStandardItem, QStandardItemModel
from PySide6.QtWidgets import QAbstractItemView, QListView from PySide2.QtWidgets import QAbstractItemView, QListView
import qt_ui.uiconstants as CONST import qt_ui.uiconstants as CONST
from game.campaignloader.campaign import Campaign from game.campaignloader.campaign import Campaign

View File

@ -4,9 +4,9 @@ import logging
from datetime import timedelta from datetime import timedelta
from typing import List from typing import List
from PySide6 import QtGui, QtWidgets from PySide2 import QtGui, QtWidgets
from PySide6.QtCore import QDate, QItemSelectionModel, QPoint, Qt from PySide2.QtCore import QDate, QItemSelectionModel, QPoint, Qt
from PySide6.QtWidgets import QCheckBox, QLabel, QTextEdit, QVBoxLayout from PySide2.QtWidgets import QCheckBox, QLabel, QTextEdit, QVBoxLayout
from jinja2 import Environment, FileSystemLoader, select_autoescape from jinja2 import Environment, FileSystemLoader, select_autoescape
from game import db from game import db

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QPlainTextEdit, QPlainTextEdit,
QVBoxLayout, QVBoxLayout,
@ -6,8 +6,8 @@ from PySide6.QtWidgets import (
QPushButton, QPushButton,
QLabel, QLabel,
) )
from PySide6.QtGui import QTextCursor from PySide2.QtGui import QTextCursor
from PySide6.QtCore import QTimer from PySide2.QtCore import QTimer
import qt_ui.uiconstants as CONST import qt_ui.uiconstants as CONST
from game.game import Game from game.game import Game

View File

@ -1,5 +1,5 @@
from PySide6.QtGui import QIcon, Qt from PySide2.QtGui import QIcon, Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QDialog, QDialog,
QVBoxLayout, QVBoxLayout,
QPushButton, QPushButton,

View File

@ -1,7 +1,7 @@
import os import os
from PySide6.QtGui import Qt from PySide2.QtGui import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QComboBox, QComboBox,
QFileDialog, QFileDialog,
QFrame, QFrame,

View File

@ -1,5 +1,5 @@
from PySide6.QtGui import QIcon, Qt from PySide2.QtGui import QIcon, Qt
from PySide6.QtWidgets import QDialog, QVBoxLayout, QPushButton, QHBoxLayout from PySide2.QtWidgets import QDialog, QVBoxLayout, QPushButton, QHBoxLayout
from qt_ui.windows.preferences.QLiberationPreferences import QLiberationPreferences from qt_ui.windows.preferences.QLiberationPreferences import QLiberationPreferences

View File

@ -2,9 +2,9 @@ import logging
import textwrap import textwrap
from typing import Callable from typing import Callable
from PySide6.QtCore import QItemSelectionModel, QPoint, QSize, Qt from PySide2.QtCore import QItemSelectionModel, QPoint, QSize, Qt
from PySide6.QtGui import QStandardItem, QStandardItemModel from PySide2.QtGui import QStandardItem, QStandardItemModel
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QAbstractItemView, QAbstractItemView,
QCheckBox, QCheckBox,
QComboBox, QComboBox,

View File

@ -1,5 +1,5 @@
from PySide6.QtCore import Qt from PySide2.QtCore import Qt
from PySide6.QtWidgets import ( from PySide2.QtWidgets import (
QCheckBox, QCheckBox,
QGridLayout, QGridLayout,
QGroupBox, QGroupBox,

View File

@ -1,8 +1,7 @@
from PySide6 import QtCharts from PySide2.QtCharts import QtCharts
from PySide6.QtCore import QPoint, Qt from PySide2.QtCore import QPoint, Qt
from PySide6.QtGui import QPainter from PySide2.QtGui import QPainter
from PySide6.QtWidgets import QFrame, QGridLayout from PySide2.QtWidgets import QFrame, QGridLayout
from game import Game from game import Game

View File

@ -1,8 +1,7 @@
from PySide6 import QtCharts from PySide2.QtCharts import QtCharts
from PySide6.QtCore import QPoint, Qt from PySide2.QtCore import QPoint, Qt
from PySide6.QtGui import QPainter from PySide2.QtGui import QPainter
from PySide6.QtWidgets import QFrame, QGridLayout from PySide2.QtWidgets import QFrame, QGridLayout
from game import Game from game import Game

View File

@ -1,4 +1,4 @@
from PySide6.QtWidgets import QDialog, QGridLayout, QTabWidget from PySide2.QtWidgets import QDialog, QGridLayout, QTabWidget
import qt_ui.uiconstants as CONST import qt_ui.uiconstants as CONST
from game.game import Game from game.game import Game

View File

@ -33,14 +33,14 @@ pyinstaller==4.7
pyinstaller-hooks-contrib==2021.3 pyinstaller-hooks-contrib==2021.3
pyparsing==3.0.6 pyparsing==3.0.6
pyproj==3.3.0 pyproj==3.3.0
PySide6==6.2.1 PySide2==5.15.2
pytest==6.2.5 pytest==6.2.5
python-dateutil==2.8.2 python-dateutil==2.8.2
pywin32-ctypes==0.2.0 pywin32-ctypes==0.2.0
PyYAML==6.0 PyYAML==6.0
regex==2021.11.10 regex==2021.11.10
Shapely==1.8.0 Shapely==1.8.0
shiboken6==6.2.1 shiboken2==5.15.2
six==1.16.0 six==1.16.0
tabulate==0.8.9 tabulate==0.8.9
text-unidecode==1.3 text-unidecode==1.3