2023-12-24 09:21:13 +13:00
|
|
|
import platform as pf
|
2023-12-19 04:34:18 +13:00
|
|
|
from logging import getLogger
|
|
|
|
|
|
|
|
from .widgets.env_vars import EnvVars
|
|
|
|
from .widgets.game import GameSettingsBase
|
|
|
|
from .widgets.launch import LaunchSettingsBase
|
2023-12-24 09:21:13 +13:00
|
|
|
from .widgets.overlay import DxvkSettings
|
2023-12-19 04:34:18 +13:00
|
|
|
from .widgets.wrappers import WrapperSettings
|
|
|
|
|
2023-12-24 09:21:13 +13:00
|
|
|
if pf.system() != "Windows":
|
|
|
|
from .widgets.wine import WineSettings
|
|
|
|
|
2023-12-26 09:23:50 +13:00
|
|
|
if pf.system() in {"Linux", "FreeBSD"}:
|
2023-12-24 09:21:13 +13:00
|
|
|
from .widgets.proton import ProtonSettings
|
|
|
|
from .widgets.overlay import MangoHudSettings
|
|
|
|
|
2023-12-19 04:34:18 +13:00
|
|
|
logger = getLogger("GameSettings")
|
|
|
|
|
|
|
|
|
|
|
|
class LaunchSettings(LaunchSettingsBase):
|
|
|
|
def __init__(self, parent=None):
|
|
|
|
super(LaunchSettings, self).__init__(WrapperSettings, parent=parent)
|
|
|
|
|
|
|
|
|
|
|
|
class GameSettings(GameSettingsBase):
|
|
|
|
def __init__(self, parent=None):
|
2023-12-26 09:23:50 +13:00
|
|
|
if pf.system() in {"Linux", "FreeBSD"}:
|
2023-12-24 09:21:13 +13:00
|
|
|
super(GameSettings, self).__init__(
|
|
|
|
LaunchSettings, DxvkSettings, EnvVars,
|
|
|
|
WineSettings, ProtonSettings, MangoHudSettings,
|
|
|
|
parent=parent
|
|
|
|
)
|
|
|
|
elif pf.system() != "Windows":
|
|
|
|
super(GameSettings, self).__init__(
|
|
|
|
LaunchSettings, DxvkSettings, EnvVars,
|
|
|
|
WineSettings,
|
|
|
|
parent=parent
|
|
|
|
)
|
|
|
|
else:
|
|
|
|
super(GameSettings, self).__init__(
|
|
|
|
LaunchSettings, DxvkSettings, EnvVars,
|
|
|
|
parent=parent
|
|
|
|
)
|