1
0
Fork 0
mirror of synced 2024-06-29 03:31:06 +12:00

EnvVars: Use monospace fonts for keys and values

This commit is contained in:
loathingKernel 2023-01-24 15:36:27 +02:00
parent 620e8f721c
commit b9e9ed8088
4 changed files with 44 additions and 8 deletions

View file

@ -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)

View file

@ -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")

View file

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>720</width>
<height>561</height>
<width>592</width>
<height>200</height>
</rect>
</property>
<property name="minimumSize">
@ -23,6 +23,15 @@
<string>Environment variables</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="leftMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QTableWidget" name="env_vars_table">
<property name="sizePolicy">
@ -31,6 +40,9 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>

View file

@ -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