Console: Move Environment Variables UI to a file
Signed-off-by: Stelios Tsampas <loathingkernel@gmail.com>
This commit is contained in:
parent
1c296474c5
commit
f91b3651ae
5 changed files with 194 additions and 49 deletions
|
@ -1,4 +1,4 @@
|
|||
from PyQt5.QtCore import Qt, QCoreApplication, QMetaObject, QProcessEnvironment
|
||||
from PyQt5.QtCore import QProcessEnvironment
|
||||
from PyQt5.QtGui import QTextCursor, QFont
|
||||
from PyQt5.QtWidgets import (
|
||||
QPlainTextEdit,
|
||||
|
@ -8,20 +8,22 @@ from PyQt5.QtWidgets import (
|
|||
QVBoxLayout,
|
||||
QHBoxLayout,
|
||||
QSpacerItem,
|
||||
QSizePolicy, QTableWidget, QTableWidgetItem, QAbstractItemView, QDialogButtonBox, QHeaderView,
|
||||
QSizePolicy, QTableWidgetItem, QHeaderView,
|
||||
)
|
||||
|
||||
from rare.ui.components.extra.console_env import Ui_ConsoleEnv
|
||||
|
||||
class ConsoleWindow(QDialog):
|
||||
|
||||
class Console(QDialog):
|
||||
env: QProcessEnvironment
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super(ConsoleWindow, self).__init__(parent=parent)
|
||||
self.setWindowTitle("Rare Console")
|
||||
super(Console, self).__init__(parent=parent)
|
||||
self.setWindowTitle("Rare - Console")
|
||||
self.setGeometry(0, 0, 600, 400)
|
||||
layout = QVBoxLayout()
|
||||
|
||||
self.console = Console(self)
|
||||
self.console = ConsoleEdit(self)
|
||||
layout.addWidget(self.console)
|
||||
|
||||
button_layout = QHBoxLayout()
|
||||
|
@ -43,7 +45,7 @@ class ConsoleWindow(QDialog):
|
|||
|
||||
self.setLayout(layout)
|
||||
|
||||
self.env_variables = EnvVariables(self)
|
||||
self.env_variables = ConsoleEnv(self)
|
||||
self.env_variables.hide()
|
||||
|
||||
def save(self):
|
||||
|
@ -72,46 +74,12 @@ class ConsoleWindow(QDialog):
|
|||
self.console.error(text + end)
|
||||
|
||||
|
||||
class EnvVariables(QDialog):
|
||||
|
||||
class Ui(object):
|
||||
def __init__(self, container):
|
||||
layout = QVBoxLayout()
|
||||
self.table = QTableWidget(container)
|
||||
self.table.setColumnCount(2)
|
||||
|
||||
self.table.setHorizontalHeaderItem(0, QTableWidgetItem())
|
||||
self.table.setHorizontalHeaderItem(1, QTableWidgetItem())
|
||||
font = QFont()
|
||||
font.setFamily(u"Monospace")
|
||||
self.table.setFont(font)
|
||||
self.table.setEditTriggers(QAbstractItemView.NoEditTriggers)
|
||||
self.table.setAlternatingRowColors(True)
|
||||
self.table.setSelectionBehavior(QAbstractItemView.SelectRows)
|
||||
self.table.setSortingEnabled(True)
|
||||
self.table.setCornerButtonEnabled(True)
|
||||
self.table.horizontalHeader().setVisible(True)
|
||||
self.table.horizontalHeader().setStretchLastSection(True)
|
||||
self.table.verticalHeader().setVisible(False)
|
||||
self.table.horizontalHeaderItem(0).setText(container.tr("Variable"))
|
||||
self.table.horizontalHeaderItem(1).setText(container.tr("Value"))
|
||||
layout.addWidget(self.table)
|
||||
|
||||
self.buttons = QDialogButtonBox(container)
|
||||
self.buttons.setOrientation(Qt.Horizontal)
|
||||
self.buttons.setStandardButtons(QDialogButtonBox.Close)
|
||||
self.buttons.accepted.connect(container.accept)
|
||||
self.buttons.rejected.connect(container.reject)
|
||||
layout.addWidget(self.buttons)
|
||||
|
||||
container.setLayout(layout)
|
||||
container.setObjectName(type(self).__name__)
|
||||
container.setWindowTitle("Rare Console Environment")
|
||||
container.setGeometry(0, 0, 600, 400)
|
||||
class ConsoleEnv(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super(EnvVariables, self).__init__(parent=parent)
|
||||
self.ui = EnvVariables.Ui(self)
|
||||
super(ConsoleEnv, self).__init__(parent=parent)
|
||||
self.ui = Ui_ConsoleEnv()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
def setTable(self, env: QProcessEnvironment):
|
||||
self.ui.table.clearContents()
|
||||
|
@ -124,9 +92,9 @@ class EnvVariables(QDialog):
|
|||
self.ui.table.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents)
|
||||
|
||||
|
||||
class Console(QPlainTextEdit):
|
||||
class ConsoleEdit(QPlainTextEdit):
|
||||
def __init__(self, parent=None):
|
||||
super(Console, self).__init__(parent=parent)
|
||||
super(ConsoleEdit, self).__init__(parent=parent)
|
||||
self.setReadOnly(True)
|
||||
self.setFont(QFont("monospace"))
|
||||
self._cursor_output = self.textCursor()
|
||||
|
|
|
@ -11,7 +11,7 @@ from PyQt5.QtWidgets import QMessageBox, QPushButton
|
|||
from legendary.models.game import LaunchParameters, InstalledGame
|
||||
|
||||
from rare.components.dialogs.uninstall_dialog import UninstallDialog
|
||||
from rare.components.extra.console import ConsoleWindow
|
||||
from rare.components.extra.console import Console
|
||||
from rare.components.tabs.games import CloudSaveUtils
|
||||
from rare.shared import LegendaryCoreSingleton, GlobalSignalsSingleton, ArgumentsSingleton
|
||||
from rare.utils import legendary_utils
|
||||
|
@ -58,7 +58,7 @@ class GameUtils(QObject):
|
|||
self.signals = GlobalSignalsSingleton()
|
||||
self.args = ArgumentsSingleton()
|
||||
|
||||
self.console = ConsoleWindow()
|
||||
self.console = Console()
|
||||
self.cloud_save_utils = CloudSaveUtils()
|
||||
self.cloud_save_utils.sync_finished.connect(self.sync_finished)
|
||||
self.game_meta = RareGameMeta()
|
||||
|
|
0
rare/ui/components/extra/__init__.py
Normal file
0
rare/ui/components/extra/__init__.py
Normal file
67
rare/ui/components/extra/console_env.py
Normal file
67
rare/ui/components/extra/console_env.py
Normal file
|
@ -0,0 +1,67 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'rare/ui/components/extra/console_env.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.15.6
|
||||
#
|
||||
# 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.
|
||||
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_ConsoleEnv(object):
|
||||
def setupUi(self, ConsoleEnv):
|
||||
ConsoleEnv.setObjectName("ConsoleEnv")
|
||||
ConsoleEnv.resize(600, 400)
|
||||
self.layout = QtWidgets.QVBoxLayout(ConsoleEnv)
|
||||
self.layout.setObjectName("layout")
|
||||
self.table = QtWidgets.QTableWidget(ConsoleEnv)
|
||||
font = QtGui.QFont()
|
||||
font.setFamily("Monospace")
|
||||
self.table.setFont(font)
|
||||
self.table.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
|
||||
self.table.setAlternatingRowColors(True)
|
||||
self.table.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
|
||||
self.table.setCornerButtonEnabled(True)
|
||||
self.table.setColumnCount(2)
|
||||
self.table.setObjectName("table")
|
||||
self.table.setRowCount(0)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.table.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.table.setHorizontalHeaderItem(1, item)
|
||||
self.table.horizontalHeader().setVisible(True)
|
||||
self.table.horizontalHeader().setStretchLastSection(True)
|
||||
self.table.verticalHeader().setVisible(False)
|
||||
self.layout.addWidget(self.table)
|
||||
self.buttons = QtWidgets.QDialogButtonBox(ConsoleEnv)
|
||||
self.buttons.setOrientation(QtCore.Qt.Horizontal)
|
||||
self.buttons.setStandardButtons(QtWidgets.QDialogButtonBox.Close)
|
||||
self.buttons.setObjectName("buttons")
|
||||
self.layout.addWidget(self.buttons)
|
||||
|
||||
self.retranslateUi(ConsoleEnv)
|
||||
self.buttons.accepted.connect(ConsoleEnv.accept) # type: ignore
|
||||
self.buttons.rejected.connect(ConsoleEnv.reject) # type: ignore
|
||||
QtCore.QMetaObject.connectSlotsByName(ConsoleEnv)
|
||||
|
||||
def retranslateUi(self, ConsoleEnv):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
ConsoleEnv.setWindowTitle(_translate("ConsoleEnv", "Rare - Console Environment"))
|
||||
self.table.setSortingEnabled(True)
|
||||
item = self.table.horizontalHeaderItem(0)
|
||||
item.setText(_translate("ConsoleEnv", "Variable"))
|
||||
item = self.table.horizontalHeaderItem(1)
|
||||
item.setText(_translate("ConsoleEnv", "Value"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
ConsoleEnv = QtWidgets.QDialog()
|
||||
ui = Ui_ConsoleEnv()
|
||||
ui.setupUi(ConsoleEnv)
|
||||
ConsoleEnv.show()
|
||||
sys.exit(app.exec_())
|
110
rare/ui/components/extra/console_env.ui
Normal file
110
rare/ui/components/extra/console_env.ui
Normal file
|
@ -0,0 +1,110 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ConsoleEnv</class>
|
||||
<widget class="QDialog" name="ConsoleEnv">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>600</width>
|
||||
<height>400</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Rare - Console Environment</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="layout">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="table">
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Monospace</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::NoEditTriggers</set>
|
||||
</property>
|
||||
<property name="alternatingRowColors">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="sortingEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="cornerButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Variable</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Value</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDialogButtonBox" name="buttons">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Close</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttons</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>ConsoleEnv</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttons</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>ConsoleEnv</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
Loading…
Reference in a new issue