Fixed bugs in dxvk settings, make more texts selectable
This commit is contained in:
parent
f6e53a7e1f
commit
61dad1863f
4 changed files with 19 additions and 7 deletions
|
@ -1,7 +1,7 @@
|
||||||
import os
|
import os
|
||||||
from logging import getLogger
|
from logging import getLogger
|
||||||
|
|
||||||
from PyQt5.QtCore import QThread, pyqtSignal
|
from PyQt5.QtCore import QThread, pyqtSignal, Qt
|
||||||
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QPushButton, QHBoxLayout, QLabel
|
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QPushButton, QHBoxLayout, QLabel
|
||||||
|
|
||||||
from Rare.Components.Dialogs.PathInputDialog import PathInputDialog
|
from Rare.Components.Dialogs.PathInputDialog import PathInputDialog
|
||||||
|
@ -130,6 +130,7 @@ class SyncWidget(QWidget):
|
||||||
|
|
||||||
save_path_layout = QHBoxLayout()
|
save_path_layout = QHBoxLayout()
|
||||||
self.save_path_text = QLabel(igame.save_path)
|
self.save_path_text = QLabel(igame.save_path)
|
||||||
|
self.save_path_text.setTextInteractionFlags(Qt.TextSelectableByMouse)
|
||||||
self.save_path_text.setWordWrap(True)
|
self.save_path_text.setWordWrap(True)
|
||||||
self.change_save_path = QPushButton(self.tr("Change path"))
|
self.change_save_path = QPushButton(self.tr("Change path"))
|
||||||
self.change_save_path.clicked.connect(self.change_path)
|
self.change_save_path.clicked.connect(self.change_path)
|
||||||
|
|
|
@ -337,7 +337,6 @@ class UpdateWidget(QWidget):
|
||||||
|
|
||||||
def __init__(self, core: LegendaryCore, game: InstalledGame):
|
def __init__(self, core: LegendaryCore, game: InstalledGame):
|
||||||
super(UpdateWidget, self).__init__()
|
super(UpdateWidget, self).__init__()
|
||||||
print(game)
|
|
||||||
self.core = core
|
self.core = core
|
||||||
self.game = game
|
self.game = game
|
||||||
print(self.game)
|
print(self.game)
|
||||||
|
|
|
@ -65,6 +65,7 @@ class GameInfo(QWidget):
|
||||||
right_layout.addWidget(self.game_title)
|
right_layout.addWidget(self.game_title)
|
||||||
|
|
||||||
self.dev = QLabel("Error")
|
self.dev = QLabel("Error")
|
||||||
|
self.dev.setTextInteractionFlags(Qt.TextSelectableByMouse)
|
||||||
right_layout.addWidget(self.dev)
|
right_layout.addWidget(self.dev)
|
||||||
|
|
||||||
self.app_name = QLabel("Error")
|
self.app_name = QLabel("Error")
|
||||||
|
@ -72,12 +73,14 @@ class GameInfo(QWidget):
|
||||||
right_layout.addWidget(self.app_name)
|
right_layout.addWidget(self.app_name)
|
||||||
|
|
||||||
self.version = QLabel("Error")
|
self.version = QLabel("Error")
|
||||||
|
self.version.setTextInteractionFlags(Qt.TextSelectableByMouse)
|
||||||
right_layout.addWidget(self.version)
|
right_layout.addWidget(self.version)
|
||||||
|
|
||||||
self.install_size = QLabel("Error")
|
self.install_size = QLabel("Error")
|
||||||
right_layout.addWidget(self.install_size)
|
right_layout.addWidget(self.install_size)
|
||||||
|
|
||||||
self.install_path = QLabel("Error")
|
self.install_path = QLabel("Error")
|
||||||
|
self.install_path.setTextInteractionFlags(Qt.TextSelectableByMouse)
|
||||||
right_layout.addWidget(self.install_path)
|
right_layout.addWidget(self.install_path)
|
||||||
|
|
||||||
top_layout.addLayout(right_layout)
|
top_layout.addLayout(right_layout)
|
||||||
|
|
|
@ -41,8 +41,10 @@ class DxvkWidget(QGroupBox):
|
||||||
self.more_settings.setPopupMode(QToolButton.InstantPopup)
|
self.more_settings.setPopupMode(QToolButton.InstantPopup)
|
||||||
self.more_settings.setMenu(QMenu())
|
self.more_settings.setMenu(QMenu())
|
||||||
self.more_settings.setText("More DXVK settings")
|
self.more_settings.setText("More DXVK settings")
|
||||||
|
|
||||||
action = QWidgetAction(self)
|
action = QWidgetAction(self)
|
||||||
self.more_settings_widget = DxvkMoreSettingsWidget(self.dxvk_settings, self.core)
|
self.more_settings_widget = DxvkMoreSettingsWidget(self.dxvk_settings, self.core)
|
||||||
|
self.more_settings_widget.show_dxvk.connect(lambda x: self.show_dxvk.setChecked(x))
|
||||||
action.setDefaultWidget(self.more_settings_widget)
|
action.setDefaultWidget(self.more_settings_widget)
|
||||||
self.more_settings.menu().addAction(action)
|
self.more_settings.menu().addAction(action)
|
||||||
|
|
||||||
|
@ -71,7 +73,8 @@ class DxvkWidget(QGroupBox):
|
||||||
def update_dxvk_active(self):
|
def update_dxvk_active(self):
|
||||||
if self.show_dxvk.isChecked():
|
if self.show_dxvk.isChecked():
|
||||||
if not f"{self.name}.env" in self.core.lgd.config.sections():
|
if not f"{self.name}.env" in self.core.lgd.config.sections():
|
||||||
self.core.lgd.config[f"{self.name}.env"] = {}
|
print("add section dxvk")
|
||||||
|
self.core.lgd.config.add_section(f"{self.name}.env")
|
||||||
self.more_settings.setDisabled(False)
|
self.more_settings.setDisabled(False)
|
||||||
|
|
||||||
for i in self.more_settings_widget.settings:
|
for i in self.more_settings_widget.settings:
|
||||||
|
@ -93,11 +96,11 @@ class DxvkWidget(QGroupBox):
|
||||||
self.core.lgd.config.remove_option(f"{self.name}.env", "DXVK_HUD")
|
self.core.lgd.config.remove_option(f"{self.name}.env", "DXVK_HUD")
|
||||||
if not self.core.lgd.config[f"{self.name}.env"]:
|
if not self.core.lgd.config[f"{self.name}.env"]:
|
||||||
self.core.lgd.config.remove_section(f"{self.name}.env")
|
self.core.lgd.config.remove_section(f"{self.name}.env")
|
||||||
print("Remove Section DXVK_HUD")
|
|
||||||
self.core.lgd.save_config()
|
self.core.lgd.save_config()
|
||||||
|
|
||||||
|
|
||||||
class DxvkMoreSettingsWidget(QWidget):
|
class DxvkMoreSettingsWidget(QWidget):
|
||||||
|
show_dxvk = pyqtSignal(bool)
|
||||||
def __init__(self, settings: dict, core: LegendaryCore):
|
def __init__(self, settings: dict, core: LegendaryCore):
|
||||||
super(DxvkMoreSettingsWidget, self).__init__()
|
super(DxvkMoreSettingsWidget, self).__init__()
|
||||||
self.layout = QVBoxLayout()
|
self.layout = QVBoxLayout()
|
||||||
|
@ -118,16 +121,22 @@ class DxvkMoreSettingsWidget(QWidget):
|
||||||
y = list(self.settings[tag])
|
y = list(self.settings[tag])
|
||||||
y[0] = checked
|
y[0] = checked
|
||||||
self.settings[tag] = tuple(y)
|
self.settings[tag] = tuple(y)
|
||||||
# print(self.settings)
|
|
||||||
sett = []
|
sett = []
|
||||||
logger.debug(self.settings)
|
logger.debug(self.settings)
|
||||||
for i in self.settings:
|
for i in self.settings:
|
||||||
check, _ = self.settings[i]
|
check, _ = self.settings[i]
|
||||||
if check:
|
if check:
|
||||||
sett.append(i)
|
sett.append(i)
|
||||||
if sett:
|
if len(sett) != 0:
|
||||||
self.core.lgd.config[f"{self.name}.env"]["DXVK_HUD"] = ",".join(sett)
|
self.core.lgd.config[f"{self.name}.env"]["DXVK_HUD"] = ",".join(sett)
|
||||||
self.core.lgd.save_config()
|
|
||||||
|
else:
|
||||||
|
self.core.lgd.config.remove_option(f"{self.name}.env", "DXVK_HUD")
|
||||||
|
self.show_dxvk.emit(False)
|
||||||
|
if not self.core.lgd.config.options(f"{self.name}.env"):
|
||||||
|
self.core.lgd.config.remove_section(f"{self.name}.env")
|
||||||
|
self.core.lgd.save_config()
|
||||||
|
|
||||||
|
|
||||||
class CheckBox(QCheckBox):
|
class CheckBox(QCheckBox):
|
||||||
|
|
Loading…
Reference in a new issue