1
0
Fork 0
mirror of synced 2024-06-02 02:34:40 +12:00
Rare/rare/components/tabs/settings/widgets/rpc.py

45 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):
def __init__(self, parent):
super(RPCSettings, self).__init__(parent=parent)
self.ui = Ui_RPCSettings()
self.ui.setupUi(self)
self.signals = GlobalSignalsSingleton()
self.settings = QSettings()
self.ui.enable.setCurrentIndex(self.settings.value(*options.rpc_enable))
self.ui.enable.currentIndexChanged.connect(self.__enable_changed)
self.ui.show_game.setChecked((self.settings.value(*options.rpc_name)))
self.ui.show_game.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_name.key, self.ui.show_game.isChecked())
)
self.ui.show_os.setChecked((self.settings.value(*options.rpc_os)))
self.ui.show_os.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_os.key, self.ui.show_os.isChecked())
)
self.ui.show_time.setChecked((self.settings.value(*options.rpc_time)))
self.ui.show_time.stateChanged.connect(
lambda: self.settings.setValue(options.rpc_time.key, self.ui.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()