1
0
Fork 0
mirror of synced 2024-07-01 12:40:28 +12:00
Rare/rare/components/tabs/settings/rpc_settings.py
2021-04-22 14:34:06 +02:00

42 lines
1.8 KiB
Python

from PyQt5.QtCore import QSettings, pyqtSignal
from PyQt5.QtWidgets import QGroupBox, QCheckBox, QVBoxLayout, QComboBox
class RPCSettings(QGroupBox):
update_settings = pyqtSignal()
def __init__(self):
super(RPCSettings, self).__init__()
self.setTitle(self.tr("Discord RPC"))
self.setObjectName("settings_widget")
self.settings = QSettings()
self.layout = QVBoxLayout()
self.enable = QComboBox()
self.enable_states = [self.tr("Show when playing"), self.tr("Show always"), self.tr("Show never")]
self.enable.addItems(self.enable_states)
self.enable.setCurrentIndex(self.settings.value("rpc_enable", 0, int))
self.layout.addWidget(self.enable)
self.enable.currentIndexChanged.connect(self.changed)
self.show_game = QCheckBox(self.tr("Show Game"))
self.show_game.setChecked((self.settings.value("rpc_name", True, bool)))
self.layout.addWidget(self.show_game)
self.show_game.stateChanged.connect(lambda: self.settings.setValue("rpc_game", self.show_game.isChecked()))
self.show_os = QCheckBox(self.tr("Show OS"))
self.layout.addWidget(self.show_os)
self.show_os.setChecked((self.settings.value("rpc_os", True, bool)))
self.show_os.stateChanged.connect(lambda: self.settings.setValue("rpc_os", self.show_os.isChecked()))
self.show_time = QCheckBox(self.tr("Show Time playing"))
self.layout.addWidget(self.show_time)
self.show_time.setChecked((self.settings.value("rpc_time", True, bool)))
self.show_time.stateChanged.connect(lambda: self.settings.setValue("rpc_time", self.show_time.isChecked()))
self.setLayout(self.layout)
def changed(self, i):
self.settings.setValue("rpc_enable", i)
self.update_settings.emit()