GameInfo: Enable Import Game
button, redirects to Import Game
tab
This commit is contained in:
parent
1c6a05c3f1
commit
4a96224dd3
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue