GameInfo: Refactor the move game stack to re-use the existing widgets
instead of adding them again to the layout. Move game should still switch to RareGame, similar to the way it works for verifing. Also add non-functional "Import Game" button
This commit is contained in:
parent
915c41309d
commit
b02483eb80
|
@ -7,14 +7,12 @@ from typing import Optional, Union
|
|||
|
||||
from PyQt5.QtCore import (
|
||||
Qt,
|
||||
pyqtSignal,
|
||||
QThreadPool,
|
||||
pyqtSlot,
|
||||
)
|
||||
from PyQt5.QtWidgets import (
|
||||
QHBoxLayout,
|
||||
QMenu,
|
||||
QProgressBar,
|
||||
QPushButton,
|
||||
QWidget,
|
||||
QMessageBox,
|
||||
|
@ -43,9 +41,6 @@ logger = getLogger("GameInfo")
|
|||
|
||||
|
||||
class GameInfo(QWidget):
|
||||
# verification_finished = pyqtSignal(InstalledGame)
|
||||
# uninstalled = pyqtSignal(str)
|
||||
|
||||
def __init__(self, game_utils, parent=None):
|
||||
super(GameInfo, self).__init__(parent=parent)
|
||||
self.ui = Ui_GameInfo()
|
||||
|
@ -58,8 +53,6 @@ class GameInfo(QWidget):
|
|||
self.game_utils = game_utils
|
||||
|
||||
self.rgame: Optional[RareGame] = None
|
||||
# self.game: Optional[Game] = None
|
||||
# self.igame: Optional[InstalledGame] = None
|
||||
|
||||
self.image = ImageWidget(self)
|
||||
self.image.setFixedSize(ImageSize.Display)
|
||||
|
@ -94,19 +87,11 @@ class GameInfo(QWidget):
|
|||
self.ui.move_button.setMenu(QMenu())
|
||||
self.ui.move_button.menu().addAction(self.move_action)
|
||||
|
||||
self.progress_of_moving = QProgressBar()
|
||||
self.existing_game_dir = False
|
||||
self.is_moving = False
|
||||
self.game_moving = None
|
||||
self.dest_path_with_suffix = None
|
||||
|
||||
self.widget_container = QWidget()
|
||||
box_layout = QHBoxLayout()
|
||||
box_layout.setContentsMargins(0, 0, 0, 0)
|
||||
box_layout.addWidget(self.ui.move_button)
|
||||
self.widget_container.setLayout(box_layout)
|
||||
index = self.ui.move_stack.addWidget(self.widget_container)
|
||||
self.ui.move_stack.setCurrentIndex(index)
|
||||
self.move_game_pop_up.browse_done.connect(self.show_menu_after_browse)
|
||||
self.move_game_pop_up.move_clicked.connect(self.ui.move_button.menu().close)
|
||||
self.move_game_pop_up.move_clicked.connect(self.move_game)
|
||||
|
@ -195,7 +180,7 @@ class GameInfo(QWidget):
|
|||
self.verify_game(self.rgame)
|
||||
|
||||
def verify_game(self, rgame: RareGame):
|
||||
self.ui.verify_widget.setCurrentIndex(1)
|
||||
self.ui.verify_stack.setCurrentWidget(self.ui.verify_progress_page)
|
||||
verify_worker = VerifyWorker(self.core, self.args, rgame)
|
||||
verify_worker.signals.progress.connect(self.__on_verify_progress)
|
||||
verify_worker.signals.result.connect(self.__on_verify_result)
|
||||
|
@ -207,7 +192,7 @@ class GameInfo(QWidget):
|
|||
|
||||
def verify_cleanup(self, rgame: RareGame):
|
||||
rgame.active_worker = None
|
||||
self.ui.verify_widget.setCurrentIndex(0)
|
||||
self.ui.verify_stack.setCurrentWidget(self.ui.verify_button_page)
|
||||
self.ui.move_button.setEnabled(True)
|
||||
self.ui.verify_button.setEnabled(True)
|
||||
|
||||
|
@ -235,7 +220,6 @@ class GameInfo(QWidget):
|
|||
self.tr("<b>{}</b> has been verified successfully. "
|
||||
"No missing or corrupt files found").format(rgame.title),
|
||||
)
|
||||
# self.verification_finished.emit(rgame.igame)
|
||||
else:
|
||||
ans = QMessageBox.question(
|
||||
self,
|
||||
|
@ -283,8 +267,7 @@ class GameInfo(QWidget):
|
|||
else:
|
||||
return
|
||||
|
||||
self.ui.move_stack.addWidget(self.progress_of_moving)
|
||||
self.ui.move_stack.setCurrentWidget(self.progress_of_moving)
|
||||
self.ui.move_stack.setCurrentWidget(self.ui.move_progress)
|
||||
|
||||
self.game_moving = self.rgame.app_name
|
||||
self.is_moving = True
|
||||
|
@ -299,8 +282,8 @@ class GameInfo(QWidget):
|
|||
shutil.move(self.rgame.igame.install_path, dest_path)
|
||||
self.set_new_game(self.dest_path_with_suffix)
|
||||
|
||||
def update_progressbar(self, progress_int):
|
||||
self.progress_of_moving.setValue(progress_int)
|
||||
def __on_move_progress(self, progress_int):
|
||||
self.ui.move_progress.setValue(progress_int)
|
||||
|
||||
def start_copy_diff_drive(self):
|
||||
copy_worker = CopyGameInstallation(
|
||||
|
@ -310,13 +293,13 @@ class GameInfo(QWidget):
|
|||
igame=self.rgame.igame,
|
||||
)
|
||||
|
||||
copy_worker.signals.progress.connect(self.update_progressbar)
|
||||
copy_worker.signals.progress.connect(self.__on_move_progress)
|
||||
copy_worker.signals.finished.connect(self.set_new_game)
|
||||
copy_worker.signals.no_space_left.connect(self.warn_no_space_left)
|
||||
QThreadPool.globalInstance().start(copy_worker)
|
||||
|
||||
def move_helper_clean_up(self):
|
||||
self.ui.move_stack.setCurrentWidget(self.ui.move_button)
|
||||
self.ui.move_stack.setCurrentWidget(self.ui.move_button_page)
|
||||
self.move_game_pop_up.refresh_indicator()
|
||||
self.is_moving = False
|
||||
self.game_moving = None
|
||||
|
@ -364,11 +347,11 @@ class GameInfo(QWidget):
|
|||
self.rgame.signals.game.uninstalled.connect(self.update_game)
|
||||
if (worker := self.rgame.active_worker) is not None:
|
||||
if isinstance(worker, VerifyWorker):
|
||||
self.ui.verify_widget.setCurrentIndex(1)
|
||||
self.ui.verify_stack.setCurrentWidget(self.ui.verify_progress_page)
|
||||
self.ui.verify_progress.setValue(self.rgame.progress)
|
||||
worker.signals.progress.connect(self.__on_verify_progress)
|
||||
else:
|
||||
self.ui.verify_widget.setCurrentIndex(0)
|
||||
self.ui.verify_stack.setCurrentWidget(self.ui.verify_button_page)
|
||||
|
||||
self.title.setTitle(self.rgame.app_title)
|
||||
self.image.setPixmap(rgame.pixmap)
|
||||
|
@ -394,20 +377,20 @@ class GameInfo(QWidget):
|
|||
self.ui.verify_button.setEnabled(bool(self.rgame.igame))
|
||||
self.ui.repair_button.setEnabled(bool(self.rgame.igame))
|
||||
|
||||
if not self.rgame.igame:
|
||||
self.ui.game_actions_stack.setCurrentIndex(1)
|
||||
if not self.rgame.is_installed or self.rgame.is_origin:
|
||||
self.ui.game_actions_stack.setCurrentWidget(self.ui.uninstalled_page)
|
||||
if self.rgame.is_origin:
|
||||
self.ui.version.setText("N/A")
|
||||
self.ui.version.setEnabled(False)
|
||||
self.ui.install_button.setText(self.tr("Link to Origin/Launch"))
|
||||
else:
|
||||
self.ui.install_button.setText(self.tr("Install"))
|
||||
self.ui.install_button.setText(self.tr("Install Game"))
|
||||
else:
|
||||
if not self.args.offline:
|
||||
self.ui.repair_button.setDisabled(
|
||||
not os.path.exists(os.path.join(self.core.lgd.get_tmp_path(), f"{self.rgame.app_name}.repair"))
|
||||
)
|
||||
self.ui.game_actions_stack.setCurrentIndex(0)
|
||||
self.ui.game_actions_stack.setCurrentWidget(self.ui.installed_page)
|
||||
|
||||
grade_visible = not self.rgame.is_unreal and platform.system() != "Windows"
|
||||
self.ui.grade.setVisible(grade_visible)
|
||||
|
@ -422,11 +405,9 @@ class GameInfo(QWidget):
|
|||
# Otherwhise, we show the move tool button.
|
||||
if self.rgame.igame is not None:
|
||||
if self.game_moving == self.rgame.app_name:
|
||||
index = self.ui.move_stack.addWidget(self.progress_of_moving)
|
||||
self.ui.move_stack.setCurrentIndex(index)
|
||||
self.ui.move_stack.setCurrentWidget(self.ui.move_progress_page)
|
||||
else:
|
||||
index = self.ui.move_stack.addWidget(self.ui.move_button)
|
||||
self.ui.move_stack.setCurrentIndex(index)
|
||||
self.ui.move_stack.setCurrentWidget(self.ui.move_button_page)
|
||||
|
||||
# If a game is verifying or moving, disable both verify and moving buttons.
|
||||
if rgame.active_worker is not None:
|
||||
|
|
|
@ -21,22 +21,21 @@ class MoveGamePopUp(QWidget):
|
|||
|
||||
def __init__(self, parent=None):
|
||||
super(MoveGamePopUp, self).__init__(parent=parent)
|
||||
layout: QVBoxLayout = QVBoxLayout()
|
||||
self.install_path = str()
|
||||
self.core = LegendaryCoreSingleton()
|
||||
self.move_path_edit = PathEdit(str(), QFileDialog.Directory, edit_func=self.edit_func_move_game)
|
||||
self.install_path = ""
|
||||
self.move_path_edit = PathEdit("", QFileDialog.Directory, edit_func=self.edit_func_move_game)
|
||||
self.move_path_edit.path_select.clicked.connect(self.emit_browse_done_signal)
|
||||
|
||||
self.move_game = QPushButton(self.tr("Move"))
|
||||
self.move_game.setMaximumWidth(50)
|
||||
self.move_game.clicked.connect(self.emit_move_game_signal)
|
||||
self.move_button = QPushButton(self.tr("Move"))
|
||||
self.move_button.setFixedSize(self.move_path_edit.path_select.sizeHint())
|
||||
self.move_button.clicked.connect(self.emit_move_game_signal)
|
||||
|
||||
self.warn_overwriting = QLabel()
|
||||
|
||||
middle_layout = QHBoxLayout()
|
||||
middle_layout.setAlignment(Qt.AlignRight)
|
||||
middle_layout.addWidget(self.warn_overwriting, stretch=1)
|
||||
middle_layout.addWidget(self.move_game)
|
||||
middle_layout.addWidget(self.move_button)
|
||||
|
||||
bottom_layout = QVBoxLayout()
|
||||
self.aval_space_label = QLabel()
|
||||
|
@ -44,6 +43,7 @@ class MoveGamePopUp(QWidget):
|
|||
bottom_layout.addWidget(self.aval_space_label)
|
||||
bottom_layout.addWidget(self.req_space_label)
|
||||
|
||||
layout: QVBoxLayout = QVBoxLayout()
|
||||
layout.addWidget(self.move_path_edit)
|
||||
layout.addLayout(middle_layout)
|
||||
layout.addLayout(bottom_layout)
|
||||
|
@ -67,11 +67,11 @@ class MoveGamePopUp(QWidget):
|
|||
return os.stat(dir1).st_dev != os.stat(dir2).st_dev
|
||||
|
||||
def edit_func_move_game(self, dir_selected):
|
||||
self.move_game.setEnabled(True)
|
||||
self.move_button.setEnabled(True)
|
||||
self.warn_overwriting.setHidden(True)
|
||||
|
||||
def helper_func(reason: str) -> Tuple[bool, str, str]:
|
||||
self.move_game.setEnabled(False)
|
||||
self.move_button.setEnabled(False)
|
||||
return False, dir_selected, self.tr(reason)
|
||||
|
||||
if not self.install_path or not dir_selected:
|
||||
|
@ -124,7 +124,7 @@ class MoveGamePopUp(QWidget):
|
|||
return helper_func("Not enough space available on drive.")
|
||||
|
||||
# Fallback
|
||||
self.move_game.setEnabled(True)
|
||||
self.move_button.setEnabled(True)
|
||||
return True, dir_selected, str()
|
||||
|
||||
def update_game(self, app_name):
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
# Form implementation generated from reading ui file 'rare/ui/components/tabs/games/game_info/game_info.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,20 +14,20 @@ from PyQt5 import QtCore, QtGui, QtWidgets
|
|||
class Ui_GameInfo(object):
|
||||
def setupUi(self, GameInfo):
|
||||
GameInfo.setObjectName("GameInfo")
|
||||
GameInfo.resize(791, 583)
|
||||
GameInfo.resize(533, 441)
|
||||
self.layout_game_info = QtWidgets.QHBoxLayout(GameInfo)
|
||||
self.layout_game_info.setObjectName("layout_game_info")
|
||||
self.layout_game_info_form = QtWidgets.QGridLayout()
|
||||
self.layout_game_info_form.setContentsMargins(6, 6, 6, 6)
|
||||
self.layout_game_info_form.setSpacing(12)
|
||||
self.layout_game_info_form.setObjectName("layout_game_info_form")
|
||||
spacerItem = QtWidgets.QSpacerItem(0, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||
self.layout_game_info_form.addItem(spacerItem, 8, 1, 1, 1)
|
||||
self.game_info_layout = QtWidgets.QGridLayout()
|
||||
self.game_info_layout.setContentsMargins(6, 6, 6, 6)
|
||||
self.game_info_layout.setSpacing(12)
|
||||
self.game_info_layout.setObjectName("game_info_layout")
|
||||
spacerItem = QtWidgets.QSpacerItem(20, 0, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||
self.game_info_layout.addItem(spacerItem, 8, 1, 1, 1)
|
||||
self.dev = QtWidgets.QLabel(GameInfo)
|
||||
self.dev.setText("error")
|
||||
self.dev.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.dev.setObjectName("dev")
|
||||
self.layout_game_info_form.addWidget(self.dev, 0, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.dev, 0, 1, 1, 1)
|
||||
self.lbl_dev = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -39,18 +39,18 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_dev.setFont(font)
|
||||
self.lbl_dev.setObjectName("lbl_dev")
|
||||
self.layout_game_info_form.addWidget(self.lbl_dev, 0, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_dev, 0, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.app_name = QtWidgets.QLabel(GameInfo)
|
||||
self.app_name.setText("error")
|
||||
self.app_name.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.app_name.setObjectName("app_name")
|
||||
self.layout_game_info_form.addWidget(self.app_name, 1, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.app_name, 1, 1, 1, 1)
|
||||
self.install_path = QtWidgets.QLabel(GameInfo)
|
||||
self.install_path.setText("error")
|
||||
self.install_path.setWordWrap(True)
|
||||
self.install_path.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.install_path.setObjectName("install_path")
|
||||
self.layout_game_info_form.addWidget(self.install_path, 5, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.install_path, 5, 1, 1, 1)
|
||||
self.lbl_platform = QtWidgets.QLabel(GameInfo)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
|
@ -58,12 +58,12 @@ class Ui_GameInfo(object):
|
|||
self.lbl_platform.setFont(font)
|
||||
self.lbl_platform.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
|
||||
self.lbl_platform.setObjectName("lbl_platform")
|
||||
self.layout_game_info_form.addWidget(self.lbl_platform, 6, 0, 1, 1)
|
||||
self.game_info_layout.addWidget(self.lbl_platform, 6, 0, 1, 1)
|
||||
self.version = QtWidgets.QLabel(GameInfo)
|
||||
self.version.setText("error")
|
||||
self.version.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.version.setObjectName("version")
|
||||
self.layout_game_info_form.addWidget(self.version, 2, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.version, 2, 1, 1, 1)
|
||||
self.lbl_install_path = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -75,7 +75,7 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_install_path.setFont(font)
|
||||
self.lbl_install_path.setObjectName("lbl_install_path")
|
||||
self.layout_game_info_form.addWidget(self.lbl_install_path, 5, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_install_path, 5, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.lbl_install_size = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -87,69 +87,80 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_install_size.setFont(font)
|
||||
self.lbl_install_size.setObjectName("lbl_install_size")
|
||||
self.layout_game_info_form.addWidget(self.lbl_install_size, 4, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
spacerItem1 = QtWidgets.QSpacerItem(20, 0, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.layout_game_info_form.addItem(spacerItem1, 8, 0, 1, 1)
|
||||
self.game_info_layout.addWidget(self.lbl_install_size, 4, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
spacerItem1 = QtWidgets.QSpacerItem(0, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.game_info_layout.addItem(spacerItem1, 8, 0, 1, 1)
|
||||
self.platform = QtWidgets.QLabel(GameInfo)
|
||||
self.platform.setText("error")
|
||||
self.platform.setObjectName("platform")
|
||||
self.layout_game_info_form.addWidget(self.platform, 6, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.platform, 6, 1, 1, 1)
|
||||
self.game_actions_stack = QtWidgets.QStackedWidget(GameInfo)
|
||||
self.game_actions_stack.setMinimumSize(QtCore.QSize(250, 0))
|
||||
self.game_actions_stack.setMaximumSize(QtCore.QSize(250, 16777215))
|
||||
self.game_actions_stack.setObjectName("game_actions_stack")
|
||||
self.installed_page = QtWidgets.QWidget()
|
||||
self.installed_page.setObjectName("installed_page")
|
||||
self.installed_layout = QtWidgets.QVBoxLayout(self.installed_page)
|
||||
self.installed_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.installed_layout.setObjectName("installed_layout")
|
||||
self.verify_widget = QtWidgets.QStackedWidget(self.installed_page)
|
||||
self.verify_widget.setObjectName("verify_widget")
|
||||
self.page_verify_button = QtWidgets.QWidget()
|
||||
self.page_verify_button.setObjectName("page_verify_button")
|
||||
self.layout_verify_button = QtWidgets.QVBoxLayout(self.page_verify_button)
|
||||
self.layout_verify_button.setContentsMargins(0, 0, 0, 0)
|
||||
self.layout_verify_button.setSpacing(0)
|
||||
self.layout_verify_button.setObjectName("layout_verify_button")
|
||||
self.verify_button = QtWidgets.QPushButton(self.page_verify_button)
|
||||
self.verify_stack = QtWidgets.QStackedWidget(self.installed_page)
|
||||
self.verify_stack.setObjectName("verify_stack")
|
||||
self.verify_button_page = QtWidgets.QWidget()
|
||||
self.verify_button_page.setObjectName("verify_button_page")
|
||||
self.verify_page_layout = QtWidgets.QHBoxLayout(self.verify_button_page)
|
||||
self.verify_page_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verify_page_layout.setSpacing(0)
|
||||
self.verify_page_layout.setObjectName("verify_page_layout")
|
||||
self.verify_button = QtWidgets.QPushButton(self.verify_button_page)
|
||||
self.verify_button.setObjectName("verify_button")
|
||||
self.layout_verify_button.addWidget(self.verify_button)
|
||||
self.verify_widget.addWidget(self.page_verify_button)
|
||||
self.page_verify_progress = QtWidgets.QWidget()
|
||||
self.page_verify_progress.setObjectName("page_verify_progress")
|
||||
self.layout_verify_progress = QtWidgets.QVBoxLayout(self.page_verify_progress)
|
||||
self.layout_verify_progress.setContentsMargins(0, 0, 0, 0)
|
||||
self.layout_verify_progress.setSpacing(0)
|
||||
self.layout_verify_progress.setObjectName("layout_verify_progress")
|
||||
self.verify_progress = QtWidgets.QProgressBar(self.page_verify_progress)
|
||||
self.verify_page_layout.addWidget(self.verify_button)
|
||||
self.verify_stack.addWidget(self.verify_button_page)
|
||||
self.verify_progress_page = QtWidgets.QWidget()
|
||||
self.verify_progress_page.setObjectName("verify_progress_page")
|
||||
self.verify_progress_layout = QtWidgets.QHBoxLayout(self.verify_progress_page)
|
||||
self.verify_progress_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verify_progress_layout.setSpacing(0)
|
||||
self.verify_progress_layout.setObjectName("verify_progress_layout")
|
||||
self.verify_progress = QtWidgets.QProgressBar(self.verify_progress_page)
|
||||
self.verify_progress.setProperty("value", 24)
|
||||
self.verify_progress.setObjectName("verify_progress")
|
||||
self.layout_verify_progress.addWidget(self.verify_progress)
|
||||
self.verify_widget.addWidget(self.page_verify_progress)
|
||||
self.installed_layout.addWidget(self.verify_widget)
|
||||
self.verify_progress_layout.addWidget(self.verify_progress)
|
||||
self.verify_stack.addWidget(self.verify_progress_page)
|
||||
self.installed_layout.addWidget(self.verify_stack)
|
||||
self.repair_button = QtWidgets.QPushButton(self.installed_page)
|
||||
self.repair_button.setObjectName("repair_button")
|
||||
self.installed_layout.addWidget(self.repair_button)
|
||||
self.move_stack = QtWidgets.QStackedWidget(self.installed_page)
|
||||
self.move_stack.setMinimumSize(QtCore.QSize(0, 20))
|
||||
self.move_stack.setObjectName("move_stack")
|
||||
self.page = QtWidgets.QWidget()
|
||||
self.page.setObjectName("page")
|
||||
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.page)
|
||||
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
||||
self.move_button = QtWidgets.QToolButton(self.page)
|
||||
self.move_button_page = QtWidgets.QWidget()
|
||||
self.move_button_page.setObjectName("move_button_page")
|
||||
self.move_button_layout = QtWidgets.QHBoxLayout(self.move_button_page)
|
||||
self.move_button_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.move_button_layout.setSpacing(0)
|
||||
self.move_button_layout.setObjectName("move_button_layout")
|
||||
self.move_button = QtWidgets.QToolButton(self.move_button_page)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.move_button.sizePolicy().hasHeightForWidth())
|
||||
self.move_button.setSizePolicy(sizePolicy)
|
||||
self.move_button.setPopupMode(QtWidgets.QToolButton.InstantPopup)
|
||||
self.move_button.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
|
||||
self.move_button.setArrowType(QtCore.Qt.DownArrow)
|
||||
self.move_button.setObjectName("move_button")
|
||||
self.horizontalLayout_2.addWidget(self.move_button)
|
||||
self.move_stack.addWidget(self.page)
|
||||
self.page_2 = QtWidgets.QWidget()
|
||||
self.page_2.setObjectName("page_2")
|
||||
self.move_stack.addWidget(self.page_2)
|
||||
self.move_button_layout.addWidget(self.move_button)
|
||||
self.move_stack.addWidget(self.move_button_page)
|
||||
self.move_progress_page = QtWidgets.QWidget()
|
||||
self.move_progress_page.setObjectName("move_progress_page")
|
||||
self.move_progress_layout = QtWidgets.QHBoxLayout(self.move_progress_page)
|
||||
self.move_progress_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.move_progress_layout.setSpacing(0)
|
||||
self.move_progress_layout.setObjectName("move_progress_layout")
|
||||
self.move_progress = QtWidgets.QProgressBar(self.move_progress_page)
|
||||
self.move_progress.setProperty("value", 24)
|
||||
self.move_progress.setObjectName("move_progress")
|
||||
self.move_progress_layout.addWidget(self.move_progress)
|
||||
self.move_stack.addWidget(self.move_progress_page)
|
||||
self.installed_layout.addWidget(self.move_stack)
|
||||
self.uninstall_button = QtWidgets.QPushButton(self.installed_page)
|
||||
self.uninstall_button.setStyleSheet("")
|
||||
|
@ -159,18 +170,28 @@ class Ui_GameInfo(object):
|
|||
self.uninstalled_page = QtWidgets.QWidget()
|
||||
self.uninstalled_page.setObjectName("uninstalled_page")
|
||||
self.uninstalled_layout = QtWidgets.QVBoxLayout(self.uninstalled_page)
|
||||
self.uninstalled_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.uninstalled_layout.setObjectName("uninstalled_layout")
|
||||
spacerItem2 = QtWidgets.QSpacerItem(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.uninstalled_layout.addItem(spacerItem2)
|
||||
self.install_button = QtWidgets.QPushButton(self.uninstalled_page)
|
||||
self.install_button.setStyleSheet("")
|
||||
self.install_button.setObjectName("install_button")
|
||||
self.uninstalled_layout.addWidget(self.install_button)
|
||||
self.import_button = QtWidgets.QPushButton(self.uninstalled_page)
|
||||
self.import_button.setObjectName("import_button")
|
||||
self.uninstalled_layout.addWidget(self.import_button)
|
||||
spacerItem3 = QtWidgets.QSpacerItem(0, 0, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.uninstalled_layout.addItem(spacerItem3)
|
||||
self.uninstalled_layout.setStretch(0, 1)
|
||||
self.uninstalled_layout.setStretch(3, 1)
|
||||
self.game_actions_stack.addWidget(self.uninstalled_page)
|
||||
self.layout_game_info_form.addWidget(self.game_actions_stack, 7, 1, 1, 1, QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
|
||||
self.game_info_layout.addWidget(self.game_actions_stack, 7, 1, 1, 1)
|
||||
self.install_size = QtWidgets.QLabel(GameInfo)
|
||||
self.install_size.setText("error")
|
||||
self.install_size.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.install_size.setObjectName("install_size")
|
||||
self.layout_game_info_form.addWidget(self.install_size, 4, 1, 1, 1)
|
||||
self.game_info_layout.addWidget(self.install_size, 4, 1, 1, 1)
|
||||
self.lbl_version = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -182,7 +203,7 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_version.setFont(font)
|
||||
self.lbl_version.setObjectName("lbl_version")
|
||||
self.layout_game_info_form.addWidget(self.lbl_version, 2, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_version, 2, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.lbl_game_actions = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -194,14 +215,14 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_game_actions.setFont(font)
|
||||
self.lbl_game_actions.setObjectName("lbl_game_actions")
|
||||
self.layout_game_info_form.addWidget(self.lbl_game_actions, 7, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_game_actions, 7, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.lbl_grade = QtWidgets.QLabel(GameInfo)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.lbl_grade.setFont(font)
|
||||
self.lbl_grade.setObjectName("lbl_grade")
|
||||
self.layout_game_info_form.addWidget(self.lbl_grade, 3, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_grade, 3, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.lbl_app_name = QtWidgets.QLabel(GameInfo)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
|
@ -213,17 +234,20 @@ class Ui_GameInfo(object):
|
|||
font.setWeight(75)
|
||||
self.lbl_app_name.setFont(font)
|
||||
self.lbl_app_name.setObjectName("lbl_app_name")
|
||||
self.layout_game_info_form.addWidget(self.lbl_app_name, 1, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.game_info_layout.addWidget(self.lbl_app_name, 1, 0, 1, 1, QtCore.Qt.AlignRight)
|
||||
self.grade = QtWidgets.QLabel(GameInfo)
|
||||
self.grade.setText("error")
|
||||
self.grade.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextSelectableByMouse)
|
||||
self.grade.setObjectName("grade")
|
||||
self.layout_game_info_form.addWidget(self.grade, 3, 1, 1, 1)
|
||||
self.layout_game_info.addLayout(self.layout_game_info_form)
|
||||
self.game_info_layout.addWidget(self.grade, 3, 1, 1, 1)
|
||||
self.game_info_layout.setColumnStretch(1, 1)
|
||||
self.game_info_layout.setRowStretch(8, 1)
|
||||
self.layout_game_info.addLayout(self.game_info_layout)
|
||||
|
||||
self.retranslateUi(GameInfo)
|
||||
self.game_actions_stack.setCurrentIndex(0)
|
||||
self.verify_widget.setCurrentIndex(0)
|
||||
self.verify_stack.setCurrentIndex(0)
|
||||
self.move_stack.setCurrentIndex(0)
|
||||
|
||||
def retranslateUi(self, GameInfo):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
|
@ -237,6 +261,7 @@ class Ui_GameInfo(object):
|
|||
self.move_button.setText(_translate("GameInfo", "Move Installation"))
|
||||
self.uninstall_button.setText(_translate("GameInfo", "Uninstall Game"))
|
||||
self.install_button.setText(_translate("GameInfo", "Install Game"))
|
||||
self.import_button.setText(_translate("GameInfo", "Import Game"))
|
||||
self.lbl_version.setText(_translate("GameInfo", "Version"))
|
||||
self.lbl_game_actions.setText(_translate("GameInfo", "Actions"))
|
||||
self.lbl_grade.setText(_translate("GameInfo", "ProtonDB Grade"))
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>791</width>
|
||||
<height>583</height>
|
||||
<width>533</width>
|
||||
<height>441</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
|
@ -15,7 +15,7 @@
|
|||
</property>
|
||||
<layout class="QHBoxLayout" name="layout_game_info">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="layout_game_info_form">
|
||||
<layout class="QGridLayout" name="game_info_layout" rowstretch="0,0,0,0,0,0,0,0,1" columnstretch="0,1">
|
||||
<property name="leftMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
|
@ -32,14 +32,14 @@
|
|||
<number>12</number>
|
||||
</property>
|
||||
<item row="8" column="1">
|
||||
<spacer name="hs_game_info_form">
|
||||
<spacer name="game_info_hspacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
<width>20</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -161,14 +161,14 @@
|
|||
</widget>
|
||||
</item>
|
||||
<item row="8" column="0">
|
||||
<spacer name="vs_game_info_form">
|
||||
<spacer name="game_info_vspacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>0</height>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -180,7 +180,7 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1" alignment="Qt::AlignLeft|Qt::AlignTop">
|
||||
<item row="7" column="1">
|
||||
<widget class="QStackedWidget" name="game_actions_stack">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
|
@ -188,6 +188,12 @@
|
|||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>250</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -206,12 +212,12 @@
|
|||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QStackedWidget" name="verify_widget">
|
||||
<widget class="QStackedWidget" name="verify_stack">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page_verify_button">
|
||||
<layout class="QVBoxLayout" name="layout_verify_button">
|
||||
<widget class="QWidget" name="verify_button_page">
|
||||
<layout class="QHBoxLayout" name="verify_page_layout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -236,8 +242,8 @@
|
|||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_verify_progress">
|
||||
<layout class="QVBoxLayout" name="layout_verify_progress">
|
||||
<widget class="QWidget" name="verify_progress_page">
|
||||
<layout class="QHBoxLayout" name="verify_progress_layout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -273,14 +279,14 @@
|
|||
</item>
|
||||
<item>
|
||||
<widget class="QStackedWidget" name="move_stack">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="move_button_page">
|
||||
<layout class="QHBoxLayout" name="move_button_layout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -307,11 +313,42 @@
|
|||
<property name="popupMode">
|
||||
<enum>QToolButton::InstantPopup</enum>
|
||||
</property>
|
||||
<property name="toolButtonStyle">
|
||||
<enum>Qt::ToolButtonTextOnly</enum>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="move_progress_page">
|
||||
<layout class="QHBoxLayout" name="move_progress_layout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QProgressBar" name="move_progress">
|
||||
<property name="value">
|
||||
<number>24</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_2"/>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
|
@ -327,7 +364,26 @@
|
|||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="uninstalled_page">
|
||||
<layout class="QVBoxLayout" name="uninstalled_layout">
|
||||
<layout class="QVBoxLayout" name="uninstalled_layout" stretch="1,0,0,1">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="uninstalled_page_top_vspacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="install_button">
|
||||
<property name="styleSheet">
|
||||
|
@ -338,6 +394,26 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="import_button">
|
||||
<property name="text">
|
||||
<string>Import Game</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="uninstalled_page_bot_vspacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
Loading…
Reference in a new issue