1
0
Fork 0
mirror of synced 2024-06-18 10:34:44 +12:00

Added Cloud Saves

This commit is contained in:
Dummerle 2021-03-16 11:03:55 +01:00
parent e0a4f7cf4c
commit f7dc0cf090
2 changed files with 9 additions and 7 deletions

View file

@ -1,6 +1,7 @@
from PyQt5.QtCore import QSize
from PyQt5.QtGui import QFont
from PyQt5.QtWidgets import QTabWidget, QTabBar, QWidget, QToolButton, QWidgetAction, QMenu
from Rare.Components.Tabs.CloudSaves.CloudSaves import SyncSaves
from legendary.core import LegendaryCore
from qtawesome import icon
@ -15,7 +16,7 @@ from Rare.utils.Models import InstallOptions
class TabWidget(QTabWidget):
def __init__(self, core: LegendaryCore):
super(TabWidget, self).__init__()
disabled_tab = 2
disabled_tab = 3
self.setTabBar(TabBar(disabled_tab))
self.settings = SettingsTab(core)
self.game_list = GameTab(core)
@ -33,8 +34,8 @@ class TabWidget(QTabWidget):
self.tabBarClicked.connect(lambda x: self.game_list.layout.setCurrentIndex(0) if x == 0 else None)
# Commented, because it is not finished
# self.cloud_saves = SyncSaves(core)
# self.addTab(self.cloud_saves, "Cloud Saves")
self.cloud_saves = SyncSaves(core)
self.addTab(self.cloud_saves, "Cloud Saves")
# Space Tab
self.addTab(QWidget(), "")

View file

@ -1,6 +1,6 @@
from logging import getLogger
from PyQt5.QtCore import QThread, pyqtSignal, QObjectCleanupHandler, Qt
from PyQt5.QtCore import QThread, pyqtSignal, Qt
from PyQt5.QtWidgets import *
from legendary.core import LegendaryCore
from legendary.models.game import SaveGameStatus
@ -55,11 +55,12 @@ class SyncSaves(QScrollArea):
self.main_layout.addWidget(self.sync_all_button)
latest_save = {}
for i in saves:
for i in sorted(saves, key=lambda a: a.datetime):
latest_save[i.app_name] = i
logger.info(f'Got {len(latest_save)} remote save game(s)')
if len(latest_save) == 0:
QMessageBox.information(self.tr("No Games Found"), self.tr("Your games don't support cloud save"))
# QMessageBox.information(self.tr("No Games Found"), self.tr("Your games don't support cloud save"))
self.widget = QLabel("No Games found, supporting cloud saves")
self.setWidget(self.widget)
return
@ -97,4 +98,4 @@ class SyncSaves(QScrollArea):
if w.res == SaveGameStatus.REMOTE_NEWER:
w.download()
elif w.res == SaveGameStatus.LOCAL_NEWER:
w.upload()
w.upload()