1
0
Fork 0
mirror of synced 2024-06-02 10:44:40 +12:00
Rare/rare/components/tabs/settings/widgets/rpc.py
loathingKernel af6d7c5055 Various WIP
* Use `vars()` instead of directly accessing `__dict__`
* Remove `auto_update` from RareGame's metadata
* Correct check for updating the Steam App ID (We want to keep any changes from the user)
* Collect both Wine and Proton prefixes when removing overlay registry keys.
* Add few convenience functions in config_helper and paths.
2024-02-12 21:52:07 +02:00

44 lines
1.6 KiB
Python

from PyQt5.QtCore import QSettings
from PyQt5.QtWidgets import QGroupBox
from rare.shared import GlobalSignalsSingleton
from rare.models.options import options
from rare.ui.components.tabs.settings.widgets.rpc import Ui_RPCSettings
class RPCSettings(QGroupBox, Ui_RPCSettings):
def __init__(self, parent):
super(RPCSettings, self).__init__(parent=parent)
self.setupUi(self)
self.signals = GlobalSignalsSingleton()
self.settings = QSettings()
self.enable.setCurrentIndex(self.settings.value(*options.rpc_enable))
self.enable.currentIndexChanged.connect(self.__enable_changed)
self.show_game.setChecked((self.settings.value(*options.rpc_name)))
self.show_game.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_name.key, self.show_game.isChecked())
)
self.show_os.setChecked((self.settings.value(*options.rpc_os)))
self.show_os.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_os.key, self.show_os.isChecked())
)
self.show_time.setChecked((self.settings.value(*options.rpc_time)))
self.show_time.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_time.key, self.show_time.isChecked())
)
try:
import pypresence
except ModuleNotFoundError:
self.setDisabled(True)
self.setToolTip(self.tr("Pypresence is not installed"))
def __enable_changed(self, i):
self.settings.setValue(options.rpc_enable.key, i)
self.signals.discord_rpc.apply_settings.emit()