cd1743cb92
The default widgets only implement the settings for the `default` "app_name" The game specific widgets sub-class the default widgets and implement whatever they additionally need locally. Remove multiple calls to save config and save when the game settings gets hidden.
33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
from rare.shared import ArgumentsSingleton
|
|
from rare.widgets.side_tab import SideTabWidget
|
|
from .about import About
|
|
from .debug import DebugSettings
|
|
from .settings import GameSettings
|
|
from .legendary import LegendarySettings
|
|
from .rare import RareSettings
|
|
|
|
|
|
class SettingsTab(SideTabWidget):
|
|
def __init__(self, parent=None):
|
|
super(SettingsTab, self).__init__(parent=parent)
|
|
self.args = ArgumentsSingleton()
|
|
|
|
rare_settings = RareSettings(self)
|
|
self.rare_index = self.addTab(rare_settings, "Rare")
|
|
|
|
legendary_settings = LegendarySettings(self)
|
|
self.legendary_index = self.addTab(legendary_settings, "Legendary")
|
|
|
|
game_settings = GameSettings(self)
|
|
self.settings_index = self.addTab(game_settings, self.tr("Defaults"))
|
|
|
|
self.about = About(self)
|
|
self.about_index = self.addTab(self.about, "About", "About")
|
|
self.about.update_available_ready.connect(
|
|
lambda: self.tabBar().setTabText(self.about_index, "About (!)")
|
|
)
|
|
|
|
if self.args.debug:
|
|
self.debug_index = self.addTab(DebugSettings(self), "Debug")
|
|
|
|
self.setCurrentIndex(self.rare_index)
|