diff --git a/rare/components/tabs/settings/widgets/env_vars.py b/rare/components/tabs/settings/widgets/env_vars.py index c5cb9cd5..00e68833 100644 --- a/rare/components/tabs/settings/widgets/env_vars.py +++ b/rare/components/tabs/settings/widgets/env_vars.py @@ -1,7 +1,8 @@ from logging import getLogger from PyQt5.QtCore import Qt, QFileSystemWatcher -from PyQt5.QtWidgets import QGroupBox, QTableWidgetItem, QMessageBox, QPushButton +from PyQt5.QtGui import QFont +from PyQt5.QtWidgets import QGroupBox, QTableWidgetItem, QMessageBox, QPushButton, QHeaderView, QFrame from rare.shared import LegendaryCoreSingleton from rare.ui.components.tabs.settings.widgets.env_vars import Ui_EnvVars @@ -18,7 +19,13 @@ class EnvVars(QGroupBox, Ui_EnvVars): self.app_name = None self.core = LegendaryCoreSingleton() self.latest_item = None - self.list_of_readonly = ["STEAM_COMPAT_DATA_PATH", "DXVK_HUD", "WINEPREFIX", "STEAM_COMPAT_CLIENT_INSTALL_PATH"] + self.list_of_readonly = [ + "STEAM_COMPAT_DATA_PATH", + "STEAM_COMPAT_CLIENT_INSTALL_PATH", + "WINEPREFIX", + "DXVK_HUD", + "MANGOHUD_CONFIG", + ] self.warn_msg = self.tr("Readonly, please edit this via the appropriate setting above.") self.setup_file_watcher() self.env_vars_table.cellChanged.connect(self.update_env_vars) @@ -74,11 +81,16 @@ class EnvVars(QGroupBox, Ui_EnvVars): trash_icon.setIcon(icon("mdi.delete", "ei.minus")) self.env_vars_table.setVerticalHeaderItem(i, trash_icon) + font = QFont("Monospace") + font.setStyleHint(QFont.Monospace) + key_item = QTableWidgetItem() key_item.setText(key) + key_item.setFont(font) self.env_vars_table.setItem(i, 0, key_item) value_item = QTableWidgetItem() + value_item.setFont(font) value_item.setText(value) self.env_vars_table.setItem(i, 1, value_item) if key in self.list_of_readonly: @@ -91,6 +103,7 @@ class EnvVars(QGroupBox, Ui_EnvVars): trash_icon = QTableWidgetItem() trash_icon.setIcon(icon("mdi.delete", "ei.minus")) self.env_vars_table.setVerticalHeaderItem(self.env_vars_table.rowCount() - 1, trash_icon) + self.env_vars_table.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents) self.env_vars_table.blockSignals(False) diff --git a/rare/ui/components/tabs/settings/widgets/env_vars.py b/rare/ui/components/tabs/settings/widgets/env_vars.py index c9f387b9..a0a08312 100644 --- a/rare/ui/components/tabs/settings/widgets/env_vars.py +++ b/rare/ui/components/tabs/settings/widgets/env_vars.py @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'rare/ui/components/tabs/settings/widgets/env_vars.ui' # -# Created by: PyQt5 UI code generator 5.15.6 +# Created by: PyQt5 UI code generator 5.15.7 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not edit this file unless you know what you are doing. @@ -14,10 +14,11 @@ from PyQt5 import QtCore, QtGui, QtWidgets class Ui_EnvVars(object): def setupUi(self, EnvVars): EnvVars.setObjectName("EnvVars") - EnvVars.resize(720, 561) + EnvVars.resize(592, 200) EnvVars.setMinimumSize(QtCore.QSize(0, 200)) EnvVars.setWindowTitle("GroupBox") self.verticalLayout = QtWidgets.QVBoxLayout(EnvVars) + self.verticalLayout.setContentsMargins(0, -1, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.env_vars_table = QtWidgets.QTableWidget(EnvVars) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) @@ -25,6 +26,7 @@ class Ui_EnvVars(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.env_vars_table.sizePolicy().hasHeightForWidth()) self.env_vars_table.setSizePolicy(sizePolicy) + self.env_vars_table.setFrameShape(QtWidgets.QFrame.NoFrame) self.env_vars_table.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.env_vars_table.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustToContents) self.env_vars_table.setObjectName("env_vars_table") diff --git a/rare/ui/components/tabs/settings/widgets/env_vars.ui b/rare/ui/components/tabs/settings/widgets/env_vars.ui index 42115e41..136e9d74 100644 --- a/rare/ui/components/tabs/settings/widgets/env_vars.ui +++ b/rare/ui/components/tabs/settings/widgets/env_vars.ui @@ -6,8 +6,8 @@ 0 0 - 720 - 561 + 592 + 200 @@ -23,6 +23,15 @@ Environment variables + + 0 + + + 0 + + + 0 + @@ -31,6 +40,9 @@ 0 + + QFrame::NoFrame + Qt::ScrollBarAsNeeded diff --git a/rare/widgets/collapsible_widget.py b/rare/widgets/collapsible_widget.py index dd0c7cae..ae9fb04e 100644 --- a/rare/widgets/collapsible_widget.py +++ b/rare/widgets/collapsible_widget.py @@ -2,7 +2,16 @@ from abc import abstractmethod from typing import Optional from PyQt5.QtCore import QParallelAnimationGroup, Qt, QPropertyAnimation, QAbstractAnimation, QSize -from PyQt5.QtWidgets import QWidget, QFrame, QToolButton, QGridLayout, QSizePolicy, QGroupBox, QLabel +from PyQt5.QtWidgets import ( + QWidget, + QFrame, + QToolButton, + QVBoxLayout, + QGridLayout, + QSizePolicy, + QGroupBox, + QLabel, +) from rare.utils.misc import icon @@ -182,7 +191,7 @@ class CollapsibleGroupBox(QGroupBox, CollapsibleBase): if __name__ == "__main__": import sys - from PyQt5.QtWidgets import QApplication, QDialog, QVBoxLayout + from PyQt5.QtWidgets import QApplication, QDialog from rare.ui.components.dialogs.install_dialog_advanced import Ui_InstallDialogAdvanced from rare.utils.misc import set_style_sheet from rare.resources.stylesheets import RareStyle