1
0
Fork 0
mirror of synced 2024-06-02 02:34:40 +12:00

GameInfo: Enable Import Game button, redirects to Import Game tab

This commit is contained in:
loathingKernel 2023-04-16 21:53:42 +03:00
parent 1c6a05c3f1
commit 4a96224dd3
No known key found for this signature in database
GPG key ID: CE0C72D0B53821FD
3 changed files with 18 additions and 3 deletions

View file

@ -47,6 +47,7 @@ class GamesTab(QStackedWidget):
self.game_info_page = GameInfoTabs(self)
self.game_info_page.back_clicked.connect(lambda: self.setCurrentWidget(self.games_page))
self.game_info_page.import_clicked.connect(lambda: self.show_import())
self.addWidget(self.game_info_page)
self.integrations_page = IntegrationsTabs(self)

View file

@ -1,6 +1,6 @@
from typing import Optional
from PyQt5.QtCore import Qt
from PyQt5.QtCore import Qt, pyqtSignal, pyqtSlot
from PyQt5.QtGui import QKeyEvent
from PyQt5.QtWidgets import QTreeView
@ -15,6 +15,9 @@ from .cloud_saves import CloudSaves
class GameInfoTabs(SideTabWidget):
# str: app_name
import_clicked = pyqtSignal(str)
def __init__(self, parent=None):
super(GameInfoTabs, self).__init__(show_back=True, parent=parent)
self.core = LegendaryCoreSingleton()
@ -22,6 +25,7 @@ class GameInfoTabs(SideTabWidget):
self.args = ArgumentsSingleton()
self.info_tab = GameInfo(self)
self.info_tab.import_clicked.connect(self.import_clicked)
self.info_index = self.addTab(self.info_tab, self.tr("Information"))
self.settings_tab = GameSettings(self)

View file

@ -7,6 +7,7 @@ from typing import Optional
from PyQt5.QtCore import (
Qt,
pyqtSlot,
pyqtSignal,
)
from PyQt5.QtWidgets import (
QMenu,
@ -28,6 +29,9 @@ logger = getLogger("GameInfo")
class GameInfo(QWidget, SideTabContents):
# str: app_name
import_clicked = pyqtSignal(str)
def __init__(self, parent=None):
super(GameInfo, self).__init__(parent=parent)
self.ui = Ui_GameInfo()
@ -48,6 +52,7 @@ class GameInfo(QWidget, SideTabContents):
self.ui.left_layout.insertWidget(0, self.image, alignment=Qt.AlignTop)
self.ui.install_button.clicked.connect(self.__on_install)
self.ui.import_button.clicked.connect(self.__on_import)
self.ui.verify_button.clicked.connect(self.__on_verify)
self.ui.repair_button.clicked.connect(self.__on_repair)
self.ui.uninstall_button.clicked.connect(self.__on_uninstall)
@ -83,7 +88,10 @@ class GameInfo(QWidget, SideTabContents):
else:
self.rgame.install()
# FIXME: Move to RareGame
@pyqtSlot()
def __on_import(self):
self.import_clicked.emit(self.rgame.app_name)
@pyqtSlot()
def __on_uninstall(self):
""" This method is to be called from the button only """
@ -274,7 +282,9 @@ class GameInfo(QWidget, SideTabContents):
(not self.rgame.is_installed or self.rgame.is_non_asset) and self.rgame.is_idle
)
self.ui.import_button.setEnabled(False)
self.ui.import_button.setEnabled(
(not self.rgame.is_installed or self.rgame.is_non_asset) and self.rgame.is_idle
)
self.ui.verify_button.setEnabled(
self.rgame.is_installed and (not self.rgame.is_non_asset) and self.rgame.is_idle