dcs-retribution/qt_ui/windows/mission/flight/settings/QGeneralFlightSettingsTab.py

41 lines
1.5 KiB
Python

from PySide2.QtCore import Signal
from PySide2.QtWidgets import QFrame, QGridLayout, QVBoxLayout
from game.ato.flight import Flight
from qt_ui.models import PackageModel, GameModel
from qt_ui.windows.mission.flight.settings.FlightPlanPropertiesGroup import (
FlightPlanPropertiesGroup,
)
from qt_ui.windows.mission.flight.settings.QCommsEditor import QCommsEditor
from qt_ui.windows.mission.flight.settings.QCustomName import QFlightCustomName
from qt_ui.windows.mission.flight.settings.QFlightSlotEditor import QFlightSlotEditor
from qt_ui.windows.mission.flight.settings.QFlightStartType import QFlightStartType
from qt_ui.windows.mission.flight.settings.QFlightTypeTaskInfo import (
QFlightTypeTaskInfo,
)
class QGeneralFlightSettingsTab(QFrame):
on_flight_settings_changed = Signal()
def __init__(self, game: GameModel, package_model: PackageModel, flight: Flight):
super().__init__()
widgets = [
QFlightTypeTaskInfo(flight),
QCommsEditor(flight, game),
FlightPlanPropertiesGroup(game.game, package_model, flight),
QFlightSlotEditor(package_model, flight, game.game),
QFlightStartType(package_model, flight),
QFlightCustomName(flight),
]
layout = QGridLayout()
row = 0
for w in widgets:
layout.addWidget(w, row, 0)
row += 1
vstretch = QVBoxLayout()
vstretch.addStretch()
layout.addLayout(vstretch, row, 0)
self.setLayout(layout)