1
0
Fork 0
mirror of synced 2024-06-29 03:31:06 +12:00

GameSettings: Make cloud save box less messy.

This commit is contained in:
Stelios Tsampas 2021-11-21 18:08:43 +02:00
parent 185ce73da2
commit c3defd3a9d
No known key found for this signature in database
GPG key ID: 2FAEBF7B5BE5FD7C
3 changed files with 13 additions and 12 deletions

View file

@ -4,7 +4,7 @@ from logging import getLogger
from typing import Tuple
from PyQt5.QtCore import QSettings, QThreadPool
from PyQt5.QtWidgets import QWidget, QFileDialog, QMessageBox, QLabel, QVBoxLayout, QPushButton
from PyQt5.QtWidgets import QWidget, QFileDialog, QMessageBox, QLabel, QPushButton, QSizePolicy
from qtawesome import icon
from legendary.core import LegendaryCore
@ -54,19 +54,16 @@ class GameSettings(QWidget, Ui_GameSettings):
self.core = core
self.settings = QSettings()
save_widget = QWidget()
save_widget.setLayout(QVBoxLayout())
self.cloud_save_path_edit = PathEdit("", file_type=QFileDialog.DirectoryOnly,
ph_text=self.tr("Cloud save path"),
edit_func=lambda text: (os.path.exists(text), text),
save_func=self.save_save_path)
save_widget.layout().addWidget(self.cloud_save_path_edit)
self.cloud_gb.layout().addRow(QLabel(self.tr("Save path")), self.cloud_save_path_edit)
self.compute_save_path_button = QPushButton(icon("fa.magic"), self.tr("Auto compute save path"))
save_widget.layout().addWidget(self.compute_save_path_button)
self.compute_save_path_button.setSizePolicy(QSizePolicy.Maximum, QSizePolicy.Fixed)
self.compute_save_path_button.clicked.connect(self.compute_save_path)
self.cloud_gb.layout().addRow(QLabel(self.tr("Save path")), save_widget)
self.cloud_gb.layout().addRow(None, self.compute_save_path_button)
self.offline.currentIndexChanged.connect(
lambda x: self.update_combobox(x, "offline")

View file

@ -90,15 +90,16 @@ class Ui_GameSettings(object):
self.game_settings_layout.addWidget(self.launch_settings_groupbox, 0, QtCore.Qt.AlignTop)
self.cloud_gb = QtWidgets.QGroupBox(GameSettings)
self.cloud_gb.setObjectName("cloud_gb")
self.formLayout = QtWidgets.QFormLayout(self.cloud_gb)
self.formLayout.setObjectName("formLayout")
self.cloud_saves_layout = QtWidgets.QFormLayout(self.cloud_gb)
self.cloud_saves_layout.setLabelAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.cloud_saves_layout.setObjectName("cloud_saves_layout")
self.cloud_sync_label = QtWidgets.QLabel(self.cloud_gb)
self.cloud_sync_label.setObjectName("cloud_sync_label")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.cloud_sync_label)
self.cloud_saves_layout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.cloud_sync_label)
self.cloud_sync = QtWidgets.QCheckBox(self.cloud_gb)
self.cloud_sync.setText("")
self.cloud_sync.setObjectName("cloud_sync")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cloud_sync)
self.cloud_saves_layout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cloud_sync)
self.game_settings_layout.addWidget(self.cloud_gb)
self.proton_groupbox = QtWidgets.QGroupBox(GameSettings)
self.proton_groupbox.setObjectName("proton_groupbox")

View file

@ -195,7 +195,10 @@
<property name="title">
<string>Cloud Saves</string>
</property>
<layout class="QFormLayout" name="formLayout">
<layout class="QFormLayout" name="cloud_saves_layout">
<property name="labelAlignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<item row="0" column="0">
<widget class="QLabel" name="cloud_sync_label">
<property name="text">