From a8384d904d78be531bec2e23a874b8edbec73b2c Mon Sep 17 00:00:00 2001 From: Stelios Tsampas Date: Mon, 7 Feb 2022 19:19:13 +0200 Subject: [PATCH 1/3] InstallDialog: Rearrange options, fix form gaps --- rare/ui/components/dialogs/install_dialog.py | 69 ++++---- rare/ui/components/dialogs/install_dialog.ui | 173 ++++++++++--------- 2 files changed, 127 insertions(+), 115 deletions(-) diff --git a/rare/ui/components/dialogs/install_dialog.py b/rare/ui/components/dialogs/install_dialog.py index 23451e4b..934ebc94 100644 --- a/rare/ui/components/dialogs/install_dialog.py +++ b/rare/ui/components/dialogs/install_dialog.py @@ -14,7 +14,7 @@ from PyQt5 import QtCore, QtGui, QtWidgets class Ui_InstallDialog(object): def setupUi(self, InstallDialog): InstallDialog.setObjectName("InstallDialog") - InstallDialog.resize(340, 314) + InstallDialog.resize(324, 344) InstallDialog.setWindowTitle("Rare") self.install_dialog_layout = QtWidgets.QFormLayout(InstallDialog) self.install_dialog_layout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) @@ -31,7 +31,7 @@ class Ui_InstallDialog(object): self.install_dialog_layout.setLayout(1, QtWidgets.QFormLayout.FieldRole, self.install_dir_layout) self.max_workers_label = QtWidgets.QLabel(InstallDialog) self.max_workers_label.setObjectName("max_workers_label") - self.install_dialog_layout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.max_workers_label) + self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.max_workers_label) self.max_workers_layout = QtWidgets.QHBoxLayout() self.max_workers_layout.setObjectName("max_workers_layout") self.max_workers_spin = QtWidgets.QSpinBox(InstallDialog) @@ -48,10 +48,10 @@ class Ui_InstallDialog(object): self.max_workers_info_label.setFont(font) self.max_workers_info_label.setObjectName("max_workers_info_label") self.max_workers_layout.addWidget(self.max_workers_info_label) - self.install_dialog_layout.setLayout(2, QtWidgets.QFormLayout.FieldRole, self.max_workers_layout) + self.install_dialog_layout.setLayout(3, QtWidgets.QFormLayout.FieldRole, self.max_workers_layout) self.force_download_label = QtWidgets.QLabel(InstallDialog) self.force_download_label.setObjectName("force_download_label") - self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.force_download_label) + self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.force_download_label) self.force_download_check = QtWidgets.QCheckBox(InstallDialog) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -59,7 +59,18 @@ class Ui_InstallDialog(object): sizePolicy.setHeightForWidth(self.force_download_check.sizePolicy().hasHeightForWidth()) self.force_download_check.setSizePolicy(sizePolicy) self.force_download_check.setObjectName("force_download_check") - self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.force_download_check) + self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.force_download_check) + self.platform_label = QtWidgets.QLabel(InstallDialog) + self.platform_label.setObjectName("platform_label") + self.install_dialog_layout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.platform_label) + self.platform_combo_box = QtWidgets.QComboBox(InstallDialog) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.platform_combo_box.sizePolicy().hasHeightForWidth()) + self.platform_combo_box.setSizePolicy(sizePolicy) + self.platform_combo_box.setObjectName("platform_combo_box") + self.install_dialog_layout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.platform_combo_box) self.ignore_space_label = QtWidgets.QLabel(InstallDialog) self.ignore_space_label.setObjectName("ignore_space_label") self.install_dialog_layout.setWidget(5, QtWidgets.QFormLayout.LabelRole, self.ignore_space_label) @@ -101,9 +112,17 @@ class Ui_InstallDialog(object): self.download_only_info_label.setObjectName("download_only_info_label") self.download_only_layout.addWidget(self.download_only_info_label) self.install_dialog_layout.setLayout(6, QtWidgets.QFormLayout.FieldRole, self.download_only_layout) + self.shortcut_lbl = QtWidgets.QLabel(InstallDialog) + self.shortcut_lbl.setObjectName("shortcut_lbl") + self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.shortcut_lbl) + self.shortcut_cb = QtWidgets.QCheckBox(InstallDialog) + self.shortcut_cb.setText("") + self.shortcut_cb.setChecked(True) + self.shortcut_cb.setObjectName("shortcut_cb") + self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.shortcut_cb) self.sdl_list_label = QtWidgets.QLabel(InstallDialog) self.sdl_list_label.setObjectName("sdl_list_label") - self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.sdl_list_label) + self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.sdl_list_label) self.sdl_list_frame = QtWidgets.QFrame(InstallDialog) self.sdl_list_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) self.sdl_list_frame.setFrameShadow(QtWidgets.QFrame.Raised) @@ -111,29 +130,26 @@ class Ui_InstallDialog(object): self.sdl_list_layout = QtWidgets.QVBoxLayout(self.sdl_list_frame) self.sdl_list_layout.setSpacing(0) self.sdl_list_layout.setObjectName("sdl_list_layout") - self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.sdl_list_frame) + self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.sdl_list_frame) self.download_size_label = QtWidgets.QLabel(InstallDialog) self.download_size_label.setObjectName("download_size_label") - self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.download_size_label) + self.install_dialog_layout.setWidget(9, QtWidgets.QFormLayout.LabelRole, self.download_size_label) self.download_size_info_label = QtWidgets.QLabel(InstallDialog) font = QtGui.QFont() font.setItalic(True) self.download_size_info_label.setFont(font) self.download_size_info_label.setObjectName("download_size_info_label") - self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.download_size_info_label) + self.install_dialog_layout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.download_size_info_label) self.install_size_label = QtWidgets.QLabel(InstallDialog) self.install_size_label.setObjectName("install_size_label") - self.install_dialog_layout.setWidget(9, QtWidgets.QFormLayout.LabelRole, self.install_size_label) + self.install_dialog_layout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.install_size_label) self.install_size_info_label = QtWidgets.QLabel(InstallDialog) font = QtGui.QFont() font.setItalic(True) self.install_size_info_label.setFont(font) self.install_size_info_label.setWordWrap(True) self.install_size_info_label.setObjectName("install_size_info_label") - self.install_dialog_layout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.install_size_info_label) - self.warn_label = QtWidgets.QLabel(InstallDialog) - self.warn_label.setObjectName("warn_label") - self.install_dialog_layout.setWidget(11, QtWidgets.QFormLayout.LabelRole, self.warn_label) + self.install_dialog_layout.setWidget(10, QtWidgets.QFormLayout.FieldRole, self.install_size_info_label) self.warn_message = QtWidgets.QLabel(InstallDialog) font = QtGui.QFont() font.setItalic(True) @@ -141,6 +157,9 @@ class Ui_InstallDialog(object): self.warn_message.setWordWrap(True) self.warn_message.setObjectName("warn_message") self.install_dialog_layout.setWidget(11, QtWidgets.QFormLayout.FieldRole, self.warn_message) + self.warn_label = QtWidgets.QLabel(InstallDialog) + self.warn_label.setObjectName("warn_label") + self.install_dialog_layout.setWidget(11, QtWidgets.QFormLayout.LabelRole, self.warn_label) self.button_layout = QtWidgets.QHBoxLayout() self.button_layout.setObjectName("button_layout") spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) @@ -154,21 +173,7 @@ class Ui_InstallDialog(object): self.install_button = QtWidgets.QPushButton(InstallDialog) self.install_button.setObjectName("install_button") self.button_layout.addWidget(self.install_button) - self.install_dialog_layout.setLayout(14, QtWidgets.QFormLayout.SpanningRole, self.button_layout) - self.platform_combo_box = QtWidgets.QComboBox(InstallDialog) - self.platform_combo_box.setObjectName("platform_combo_box") - self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.platform_combo_box) - self.platform_label = QtWidgets.QLabel(InstallDialog) - self.platform_label.setObjectName("platform_label") - self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.platform_label) - self.shortcut_lbl = QtWidgets.QLabel(InstallDialog) - self.shortcut_lbl.setObjectName("shortcut_lbl") - self.install_dialog_layout.setWidget(12, QtWidgets.QFormLayout.LabelRole, self.shortcut_lbl) - self.shortcut_cb = QtWidgets.QCheckBox(InstallDialog) - self.shortcut_cb.setText("") - self.shortcut_cb.setChecked(True) - self.shortcut_cb.setObjectName("shortcut_cb") - self.install_dialog_layout.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.shortcut_cb) + self.install_dialog_layout.setLayout(12, QtWidgets.QFormLayout.SpanningRole, self.button_layout) self.retranslateUi(InstallDialog) QtCore.QMetaObject.connectSlotsByName(InstallDialog) @@ -180,22 +185,22 @@ class Ui_InstallDialog(object): self.max_workers_label.setText(_translate("InstallDialog", "Max workers")) self.max_workers_info_label.setText(_translate("InstallDialog", "Less is slower. (0: Default)")) self.force_download_label.setText(_translate("InstallDialog", "Force redownload")) + self.platform_label.setText(_translate("InstallDialog", "Platform")) self.ignore_space_label.setText(_translate("InstallDialog", "Ignore free space")) self.ignore_space_info_label.setText(_translate("InstallDialog", "Use with caution!")) self.download_only_label.setText(_translate("InstallDialog", "Download only")) self.download_only_info_label.setText(_translate("InstallDialog", "Do not try to install.")) + self.shortcut_lbl.setText(_translate("InstallDialog", "Create shortcut")) self.sdl_list_label.setText(_translate("InstallDialog", "Optional packs")) self.download_size_label.setText(_translate("InstallDialog", "Download size")) self.download_size_info_label.setText(_translate("InstallDialog", "Click verify...")) self.install_size_label.setText(_translate("InstallDialog", "Total install size")) self.install_size_info_label.setText(_translate("InstallDialog", "Click verify...")) - self.warn_label.setText(_translate("InstallDialog", "Warnings")) self.warn_message.setText(_translate("InstallDialog", "None")) + self.warn_label.setText(_translate("InstallDialog", "Warnings")) self.cancel_button.setText(_translate("InstallDialog", "Cancel")) self.verify_button.setText(_translate("InstallDialog", "Verify")) self.install_button.setText(_translate("InstallDialog", "Install")) - self.platform_label.setText(_translate("InstallDialog", "Platform")) - self.shortcut_lbl.setText(_translate("InstallDialog", "Create shortcut")) if __name__ == "__main__": diff --git a/rare/ui/components/dialogs/install_dialog.ui b/rare/ui/components/dialogs/install_dialog.ui index 886b4cf1..85f04a75 100644 --- a/rare/ui/components/dialogs/install_dialog.ui +++ b/rare/ui/components/dialogs/install_dialog.ui @@ -6,8 +6,8 @@ 0 0 - 340 - 314 + 324 + 344 @@ -37,14 +37,14 @@ - + Max workers - + @@ -70,14 +70,14 @@ - + Force redownload - + @@ -87,6 +87,23 @@ + + + + Platform + + + + + + + + 0 + 0 + + + + @@ -157,13 +174,30 @@ + + + Create shortcut + + + + + + + + + + true + + + + Optional packs - + QFrame::StyledPanel @@ -178,14 +212,14 @@ - + Download size - + @@ -197,61 +231,61 @@ - + Total install size - - - - - true - - - - Click verify... - - - true - - - - - - - Warnings - - - - - - - - true - - - - None - - + + + + + true + + + + Click verify... + + true - - - - - - Qt::Horizontal - - - - 40 - 20 + + + + + true + + + + None + + + true + + + + + + + Warnings + + + + + + + + + Qt::Horizontal + + + + 40 + 20 @@ -277,35 +311,8 @@ - - - - - - - - - Platform - - - - - - - Create shortcut - - - - - - - - - - true - - - + + From 8ac8822194165d2a624052c991ed3c4060fd2cbc Mon Sep 17 00:00:00 2001 From: Stelios Tsampas Date: Mon, 7 Feb 2022 20:15:17 +0200 Subject: [PATCH 2/3] LegendarySettings: Add Ubisoft and EOS widget to the left layout only --- rare/components/tabs/settings/eos.py | 3 - rare/components/tabs/settings/legendary.py | 3 +- .../ui/components/tabs/settings/eos_widget.py | 118 +++-- .../ui/components/tabs/settings/eos_widget.ui | 473 ++++++++++-------- rare/ui/components/tabs/settings/legendary.py | 38 +- rare/ui/components/tabs/settings/legendary.ui | 239 ++++----- 6 files changed, 467 insertions(+), 407 deletions(-) diff --git a/rare/components/tabs/settings/eos.py b/rare/components/tabs/settings/eos.py index cdbe1f72..cb1bb9af 100644 --- a/rare/components/tabs/settings/eos.py +++ b/rare/components/tabs/settings/eos.py @@ -57,9 +57,6 @@ class EosWidget(QGroupBox, Ui_EosWidget): self.prefix_enabled = False - self.info_stack.addWidget(self.installed_info_gb) - self.info_stack.addWidget(self.install_overlay_gb) - self.enabled_cb.stateChanged.connect(self.change_enable) self.uninstall_button.clicked.connect(self.uninstall_overlay) diff --git a/rare/components/tabs/settings/legendary.py b/rare/components/tabs/settings/legendary.py index 18027203..ba631b04 100644 --- a/rare/components/tabs/settings/legendary.py +++ b/rare/components/tabs/settings/legendary.py @@ -86,8 +86,7 @@ class LegendarySettings(QWidget, Ui_LegendarySettings): self.ubi_helper = UbiActivationHelper(self.ubisoft_gb) self.eos_widget = EosWidget() - self.layout().replaceWidget(self.eos_placeholder, self.eos_widget) - self.eos_placeholder.deleteLater() + self.eos_layout.addWidget(self.eos_widget) self.refresh_game_meta_btn.clicked.connect(self.refresh_game_meta) diff --git a/rare/ui/components/tabs/settings/eos_widget.py b/rare/ui/components/tabs/settings/eos_widget.py index afe8073f..acc5f010 100644 --- a/rare/ui/components/tabs/settings/eos_widget.py +++ b/rare/ui/components/tabs/settings/eos_widget.py @@ -14,59 +14,45 @@ from PyQt5 import QtCore, QtGui, QtWidgets class Ui_EosWidget(object): def setupUi(self, EosWidget): EosWidget.setObjectName("EosWidget") - EosWidget.resize(1128, 319) - EosWidget.setWindowTitle("GroupBox") - self.horizontalLayout = QtWidgets.QHBoxLayout(EosWidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.info_stack = QtWidgets.QStackedWidget(EosWidget) - self.info_stack.setObjectName("info_stack") - self.horizontalLayout.addWidget(self.info_stack) - self.enable_gb = QtWidgets.QGroupBox(EosWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + EosWidget.resize(364, 218) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.enable_gb.sizePolicy().hasHeightForWidth()) - self.enable_gb.setSizePolicy(sizePolicy) - self.enable_gb.setObjectName("enable_gb") - self.verticalLayout = QtWidgets.QVBoxLayout(self.enable_gb) - self.verticalLayout.setObjectName("verticalLayout") - self.select_pfx_combo = QtWidgets.QComboBox(self.enable_gb) - self.select_pfx_combo.setObjectName("select_pfx_combo") - self.verticalLayout.addWidget(self.select_pfx_combo, 0, QtCore.Qt.AlignTop) - self.enabled_cb = QtWidgets.QCheckBox(self.enable_gb) - self.enabled_cb.setObjectName("enabled_cb") - self.verticalLayout.addWidget(self.enabled_cb) - self.enabled_info_label = QtWidgets.QLabel(self.enable_gb) - font = QtGui.QFont() - font.setItalic(True) - self.enabled_info_label.setFont(font) - self.enabled_info_label.setText("") - self.enabled_info_label.setObjectName("enabled_info_label") - self.verticalLayout.addWidget(self.enabled_info_label) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout.addItem(spacerItem) - self.horizontalLayout.addWidget(self.enable_gb) - self.installed_info_gb = QtWidgets.QGroupBox(EosWidget) + sizePolicy.setHeightForWidth(EosWidget.sizePolicy().hasHeightForWidth()) + EosWidget.setSizePolicy(sizePolicy) + EosWidget.setWindowTitle("GroupBox") + self.eos_layout = QtWidgets.QHBoxLayout(EosWidget) + self.eos_layout.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint) + self.eos_layout.setObjectName("eos_layout") + self.info_stack = QtWidgets.QStackedWidget(EosWidget) + self.info_stack.setObjectName("info_stack") + self.installed_info_page = QtWidgets.QWidget() + self.installed_info_page.setObjectName("installed_info_page") + self.installed_info_page_layout = QtWidgets.QVBoxLayout(self.installed_info_page) + self.installed_info_page_layout.setContentsMargins(0, 0, 0, 0) + self.installed_info_page_layout.setObjectName("installed_info_page_layout") + self.installed_info_gb = QtWidgets.QGroupBox(self.installed_info_page) self.installed_info_gb.setObjectName("installed_info_gb") - self.formLayout = QtWidgets.QFormLayout(self.installed_info_gb) - self.formLayout.setObjectName("formLayout") + self.installed_info_layout = QtWidgets.QFormLayout(self.installed_info_gb) + self.installed_info_layout.setLabelAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.installed_info_layout.setObjectName("installed_info_layout") self.installed_version_info_lbl = QtWidgets.QLabel(self.installed_info_gb) self.installed_version_info_lbl.setObjectName("installed_version_info_lbl") - self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.installed_version_info_lbl) + self.installed_info_layout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.installed_version_info_lbl) self.installed_version_lbl = QtWidgets.QLabel(self.installed_info_gb) self.installed_version_lbl.setText("TextLabel") self.installed_version_lbl.setObjectName("installed_version_lbl") - self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.installed_version_lbl) + self.installed_info_layout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.installed_version_lbl) self.installed_path_info_lbl = QtWidgets.QLabel(self.installed_info_gb) self.installed_path_info_lbl.setObjectName("installed_path_info_lbl") - self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.installed_path_info_lbl) + self.installed_info_layout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.installed_path_info_lbl) self.installed_path_lbl = QtWidgets.QLabel(self.installed_info_gb) self.installed_path_lbl.setText("TextLabel") self.installed_path_lbl.setObjectName("installed_path_lbl") - self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.installed_path_lbl) + self.installed_info_layout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.installed_path_lbl) self.update_available_info_label = QtWidgets.QLabel(self.installed_info_gb) self.update_available_info_label.setObjectName("update_available_info_label") - self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.update_available_info_label) + self.installed_info_layout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.update_available_info_label) self.update_check_button = QtWidgets.QPushButton(self.installed_info_gb) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(0) @@ -75,10 +61,10 @@ class Ui_EosWidget(object): self.update_check_button.setSizePolicy(sizePolicy) self.update_check_button.setMaximumSize(QtCore.QSize(150, 16777215)) self.update_check_button.setObjectName("update_check_button") - self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.update_check_button) + self.installed_info_layout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.update_check_button) self.uninstall_info_label = QtWidgets.QLabel(self.installed_info_gb) self.uninstall_info_label.setObjectName("uninstall_info_label") - self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.uninstall_info_label) + self.installed_info_layout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.uninstall_info_label) self.uninstall_button = QtWidgets.QPushButton(self.installed_info_gb) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(0) @@ -87,7 +73,7 @@ class Ui_EosWidget(object): self.uninstall_button.setSizePolicy(sizePolicy) self.uninstall_button.setMaximumSize(QtCore.QSize(150, 16777215)) self.uninstall_button.setObjectName("uninstall_button") - self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.uninstall_button) + self.installed_info_layout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.uninstall_button) self.update_button = QtWidgets.QPushButton(self.installed_info_gb) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(0) @@ -96,12 +82,18 @@ class Ui_EosWidget(object): self.update_button.setSizePolicy(sizePolicy) self.update_button.setMaximumSize(QtCore.QSize(150, 16777215)) self.update_button.setObjectName("update_button") - self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.update_button) + self.installed_info_layout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.update_button) self.update_info_lbl = QtWidgets.QLabel(self.installed_info_gb) self.update_info_lbl.setObjectName("update_info_lbl") - self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.update_info_lbl) - self.horizontalLayout.addWidget(self.installed_info_gb) - self.install_overlay_gb = QtWidgets.QGroupBox(EosWidget) + self.installed_info_layout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.update_info_lbl) + self.installed_info_page_layout.addWidget(self.installed_info_gb, 0, QtCore.Qt.AlignTop) + self.info_stack.addWidget(self.installed_info_page) + self.install_overlay_page = QtWidgets.QWidget() + self.install_overlay_page.setObjectName("install_overlay_page") + self.install_overlay_page_layout = QtWidgets.QVBoxLayout(self.install_overlay_page) + self.install_overlay_page_layout.setContentsMargins(0, 0, 0, 0) + self.install_overlay_page_layout.setObjectName("install_overlay_page_layout") + self.install_overlay_gb = QtWidgets.QGroupBox(self.install_overlay_page) self.install_overlay_gb.setObjectName("install_overlay_gb") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.install_overlay_gb) self.verticalLayout_4.setObjectName("verticalLayout_4") @@ -116,19 +108,43 @@ class Ui_EosWidget(object): self.install_button = QtWidgets.QPushButton(self.install_overlay_gb) self.install_button.setObjectName("install_button") self.verticalLayout_4.addWidget(self.install_button) - self.horizontalLayout.addWidget(self.install_overlay_gb) + self.install_overlay_page_layout.addWidget(self.install_overlay_gb, 0, QtCore.Qt.AlignTop) + self.info_stack.addWidget(self.install_overlay_page) + self.eos_layout.addWidget(self.info_stack) + self.enable_gb = QtWidgets.QGroupBox(EosWidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.enable_gb.sizePolicy().hasHeightForWidth()) + self.enable_gb.setSizePolicy(sizePolicy) + self.enable_gb.setObjectName("enable_gb") + self.enable_layout = QtWidgets.QVBoxLayout(self.enable_gb) + self.enable_layout.setObjectName("enable_layout") + self.select_pfx_combo = QtWidgets.QComboBox(self.enable_gb) + self.select_pfx_combo.setObjectName("select_pfx_combo") + self.enable_layout.addWidget(self.select_pfx_combo) + self.enabled_cb = QtWidgets.QCheckBox(self.enable_gb) + self.enabled_cb.setObjectName("enabled_cb") + self.enable_layout.addWidget(self.enabled_cb) + self.enabled_info_label = QtWidgets.QLabel(self.enable_gb) + font = QtGui.QFont() + font.setItalic(True) + self.enabled_info_label.setFont(font) + self.enabled_info_label.setText("") + self.enabled_info_label.setObjectName("enabled_info_label") + self.enable_layout.addWidget(self.enabled_info_label, 0, QtCore.Qt.AlignTop) + self.enable_layout.setStretch(2, 1) + self.eos_layout.addWidget(self.enable_gb) self.retranslateUi(EosWidget) - self.info_stack.setCurrentIndex(-1) + self.info_stack.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(EosWidget) def retranslateUi(self, EosWidget): _translate = QtCore.QCoreApplication.translate EosWidget.setTitle(_translate("EosWidget", "Epic Overlay settings")) - self.enable_gb.setTitle(_translate("EosWidget", "Enable / Disable")) - self.enabled_cb.setText(_translate("EosWidget", "Activated")) self.installed_info_gb.setTitle(_translate("EosWidget", "Installed Info")) - self.installed_version_info_lbl.setText(_translate("EosWidget", "Installed version:")) + self.installed_version_info_lbl.setText(_translate("EosWidget", "Installed version")) self.installed_path_info_lbl.setText(_translate("EosWidget", "Installed path")) self.update_available_info_label.setText(_translate("EosWidget", "Updates")) self.update_check_button.setText(_translate("EosWidget", "Check for Update")) @@ -139,6 +155,8 @@ class Ui_EosWidget(object): self.install_overlay_gb.setTitle(_translate("EosWidget", "Install Overlay")) self.label.setText(_translate("EosWidget", "No overlays are installed")) self.install_button.setText(_translate("EosWidget", "Install")) + self.enable_gb.setTitle(_translate("EosWidget", "Enable / Disable")) + self.enabled_cb.setText(_translate("EosWidget", "Activated")) if __name__ == "__main__": diff --git a/rare/ui/components/tabs/settings/eos_widget.ui b/rare/ui/components/tabs/settings/eos_widget.ui index d55d0836..dfaba72f 100644 --- a/rare/ui/components/tabs/settings/eos_widget.ui +++ b/rare/ui/components/tabs/settings/eos_widget.ui @@ -1,225 +1,256 @@ - EosWidget - - - - 0 - 0 - 1128 - 319 - - - - GroupBox - - - Epic Overlay settings - - - - - - -1 - - - - - - - - 0 - 0 - - - - Enable / Disable - - - - - - - - - Activated - - - - - - - - true - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - Installed Info - - - - - - Installed version: - - - - - - - TextLabel - - - - - - - Installed path - - - - - - - TextLabel - - - - - - - Updates - - - - - - - - 0 - 0 - - - - - 150 - 16777215 - - - - Check for Update - - - - - - - Uninstall - - - - - - - - 0 - 0 - - - - - 150 - 16777215 - - - - Uninstall - - - - - - - - 0 - 0 - - - - - 150 - 16777215 - - - - Update - - - - - - - Install Update - - - - - - - - - - Install Overlay - - - - - - - 0 - 0 - - - - No overlays are installed - - - - - - - Install - - - - - - - + EosWidget + + + + 0 + 0 + 364 + 218 + + + + + 0 + 0 + + + + GroupBox + + + Epic Overlay settings + + + + QLayout::SetDefaultConstraint + + + + + 1 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Installed Info + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + Installed version + + + + + + + TextLabel + + + + + + + Installed path + + + + + + + TextLabel + + + + + + + Updates + + + + + + + + 0 + 0 + + + + + 150 + 16777215 + + + + Check for Update + + + + + + + Uninstall + + + + + + + + 0 + 0 + + + + + 150 + 16777215 + + + + Uninstall + + + + + + + + 0 + 0 + + + + + 150 + 16777215 + + + + Update + + + + + + + Install Update + + + + + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Install Overlay + + + + + + + 0 + 0 + + + + No overlays are installed + + + + + + + Install + + + + + + + + - - + + + + + + 0 + 0 + + + + Enable / Disable + + + + + + + + + Activated + + + + + + + + true + + + + + + + + + + + + + + diff --git a/rare/ui/components/tabs/settings/legendary.py b/rare/ui/components/tabs/settings/legendary.py index 9937b800..f2805129 100644 --- a/rare/ui/components/tabs/settings/legendary.py +++ b/rare/ui/components/tabs/settings/legendary.py @@ -14,7 +14,7 @@ from PyQt5 import QtCore, QtGui, QtWidgets class Ui_LegendarySettings(object): def setupUi(self, LegendarySettings): LegendarySettings.setObjectName("LegendarySettings") - LegendarySettings.resize(905, 568) + LegendarySettings.resize(654, 498) LegendarySettings.setWindowTitle("LegendarySettings") self.gridLayout = QtWidgets.QGridLayout(LegendarySettings) self.gridLayout.setObjectName("gridLayout") @@ -26,13 +26,13 @@ class Ui_LegendarySettings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.locale_group.sizePolicy().hasHeightForWidth()) self.locale_group.setSizePolicy(sizePolicy) - self.locale_group.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) + self.locale_group.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.locale_group.setObjectName("locale_group") self.locale_layout = QtWidgets.QVBoxLayout(self.locale_group) self.locale_layout.setObjectName("locale_layout") - self.right_layout.addWidget(self.locale_group) + self.right_layout.addWidget(self.locale_group, 0, QtCore.Qt.AlignTop) self.cleanup_group = QtWidgets.QGroupBox(LegendarySettings) - self.cleanup_group.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) + self.cleanup_group.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.cleanup_group.setObjectName("cleanup_group") self.cleanup_layout = QtWidgets.QVBoxLayout(self.cleanup_group) self.cleanup_layout.setObjectName("cleanup_layout") @@ -45,18 +45,20 @@ class Ui_LegendarySettings(object): self.refresh_game_meta_btn = QtWidgets.QPushButton(self.cleanup_group) self.refresh_game_meta_btn.setObjectName("refresh_game_meta_btn") self.cleanup_layout.addWidget(self.refresh_game_meta_btn) - self.right_layout.addWidget(self.cleanup_group) + self.right_layout.addWidget(self.cleanup_group, 0, QtCore.Qt.AlignTop) + spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) + self.right_layout.addItem(spacerItem) self.gridLayout.addLayout(self.right_layout, 0, 1, 1, 1) self.left_layout = QtWidgets.QVBoxLayout() self.left_layout.setObjectName("left_layout") self.install_dir_group = QtWidgets.QGroupBox(LegendarySettings) - self.install_dir_group.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) + self.install_dir_group.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.install_dir_group.setObjectName("install_dir_group") self.install_dir_layout = QtWidgets.QVBoxLayout(self.install_dir_group) self.install_dir_layout.setObjectName("install_dir_layout") - self.left_layout.addWidget(self.install_dir_group) + self.left_layout.addWidget(self.install_dir_group, 0, QtCore.Qt.AlignTop) self.download_group = QtWidgets.QGroupBox(LegendarySettings) - self.download_group.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) + self.download_group.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.download_group.setObjectName("download_group") self.download_layout = QtWidgets.QFormLayout(self.download_group) self.download_layout.setLabelAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) @@ -126,20 +128,20 @@ class Ui_LegendarySettings(object): self.disable_https_check.setText("") self.disable_https_check.setObjectName("disable_https_check") self.download_layout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.disable_https_check) - self.left_layout.addWidget(self.download_group) - self.gridLayout.addLayout(self.left_layout, 0, 0, 1, 1) + self.left_layout.addWidget(self.download_group, 0, QtCore.Qt.AlignTop) self.ubisoft_gb = QtWidgets.QGroupBox(LegendarySettings) - self.ubisoft_gb.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) + self.ubisoft_gb.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.ubisoft_gb.setObjectName("ubisoft_gb") self.verticalLayout = QtWidgets.QVBoxLayout(self.ubisoft_gb) self.verticalLayout.setObjectName("verticalLayout") - self.gridLayout.addWidget(self.ubisoft_gb, 2, 0, 1, 2) - self.eos_placeholder = QtWidgets.QGroupBox(LegendarySettings) - self.eos_placeholder.setTitle("GroupBox") - self.eos_placeholder.setObjectName("eos_placeholder") - self.gridLayout.addWidget(self.eos_placeholder, 3, 0, 1, 2) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout.addItem(spacerItem, 4, 0, 1, 2) + self.left_layout.addWidget(self.ubisoft_gb, 0, QtCore.Qt.AlignTop) + self.eos_layout = QtWidgets.QHBoxLayout() + self.eos_layout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) + self.eos_layout.setObjectName("eos_layout") + self.left_layout.addLayout(self.eos_layout) + spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) + self.left_layout.addItem(spacerItem1) + self.gridLayout.addLayout(self.left_layout, 0, 0, 1, 1) self.retranslateUi(LegendarySettings) QtCore.QMetaObject.connectSlotsByName(LegendarySettings) diff --git a/rare/ui/components/tabs/settings/legendary.ui b/rare/ui/components/tabs/settings/legendary.ui index e31956bc..c521ed47 100644 --- a/rare/ui/components/tabs/settings/legendary.ui +++ b/rare/ui/components/tabs/settings/legendary.ui @@ -4,10 +4,10 @@ - 0 - 0 - 905 - 568 + 0 + 0 + 654 + 498 @@ -16,89 +16,102 @@ - - - - - 0 - 0 - - - - Locale - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - + + + + + 0 + 0 + + + + Locale + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + + Cleanup + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + Clean, but keep manifests + + + + + + Remove everything + + + + + + + Refresh game meta + + + + + - - - Cleanup - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - Clean, but keep manifests - - - - - - - Remove everything - - - - - - - Refresh game meta - - - - - + + + Qt::Vertical + + + + 20 + 40 + + + - - - - Default Installation Directory - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - + + + + Default Installation Directory + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + - - - - Download Settings - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - 0 - 0 + + + + Download Settings + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 0 + 0 @@ -123,7 +136,7 @@ 16 - 0 + 0 @@ -213,46 +226,46 @@ - + - - + + + + + + + Link Ubisoft Games + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + + QLayout::SetFixedSize + + + + + + + Qt::Vertical + + + + 20 + 40 + + + - - - - Link Ubisoft Games - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - - - - GroupBox - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - From fa686c5166cab84145119a49842b2980d978626a Mon Sep 17 00:00:00 2001 From: Stelios Tsampas Date: Mon, 7 Feb 2022 22:10:18 +0200 Subject: [PATCH 3/3] LegendarySettings: Add EosWidget directly in the left layout --- rare/components/tabs/settings/legendary.py | 4 +- rare/ui/components/tabs/settings/legendary.py | 4 - rare/ui/components/tabs/settings/legendary.ui | 7 - rare/ui/components/tabs/settings/rare.py | 3 - rare/ui/components/tabs/settings/rare.ui | 559 +++++++++--------- 5 files changed, 280 insertions(+), 297 deletions(-) diff --git a/rare/components/tabs/settings/legendary.py b/rare/components/tabs/settings/legendary.py index ba631b04..8c5cc4de 100644 --- a/rare/components/tabs/settings/legendary.py +++ b/rare/components/tabs/settings/legendary.py @@ -2,7 +2,7 @@ import re from logging import getLogger from typing import Tuple -from PyQt5.QtCore import QRunnable, QObject, pyqtSignal, QThreadPool +from PyQt5.QtCore import Qt, QRunnable, QObject, pyqtSignal, QThreadPool from PyQt5.QtWidgets import QSizePolicy, QWidget, QFileDialog, QMessageBox import rare.shared as shared @@ -86,7 +86,7 @@ class LegendarySettings(QWidget, Ui_LegendarySettings): self.ubi_helper = UbiActivationHelper(self.ubisoft_gb) self.eos_widget = EosWidget() - self.eos_layout.addWidget(self.eos_widget) + self.left_layout.insertWidget(3, self.eos_widget, alignment=Qt.AlignTop) self.refresh_game_meta_btn.clicked.connect(self.refresh_game_meta) diff --git a/rare/ui/components/tabs/settings/legendary.py b/rare/ui/components/tabs/settings/legendary.py index f2805129..35a5c3f9 100644 --- a/rare/ui/components/tabs/settings/legendary.py +++ b/rare/ui/components/tabs/settings/legendary.py @@ -135,10 +135,6 @@ class Ui_LegendarySettings(object): self.verticalLayout = QtWidgets.QVBoxLayout(self.ubisoft_gb) self.verticalLayout.setObjectName("verticalLayout") self.left_layout.addWidget(self.ubisoft_gb, 0, QtCore.Qt.AlignTop) - self.eos_layout = QtWidgets.QHBoxLayout() - self.eos_layout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) - self.eos_layout.setObjectName("eos_layout") - self.left_layout.addLayout(self.eos_layout) spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.left_layout.addItem(spacerItem1) self.gridLayout.addLayout(self.left_layout, 0, 0, 1, 1) diff --git a/rare/ui/components/tabs/settings/legendary.ui b/rare/ui/components/tabs/settings/legendary.ui index c521ed47..eeb4395b 100644 --- a/rare/ui/components/tabs/settings/legendary.ui +++ b/rare/ui/components/tabs/settings/legendary.ui @@ -244,13 +244,6 @@ - - - - QLayout::SetFixedSize - - - diff --git a/rare/ui/components/tabs/settings/rare.py b/rare/ui/components/tabs/settings/rare.py index 530658bd..89daf103 100644 --- a/rare/ui/components/tabs/settings/rare.py +++ b/rare/ui/components/tabs/settings/rare.py @@ -127,9 +127,6 @@ class Ui_RareSettings(object): self.log_dir_size_label.setObjectName("log_dir_size_label") self.log_dir_layout.addWidget(self.log_dir_size_label) self.right_layout.addWidget(self.log_dir_group) - self.rpc_layout = QtWidgets.QVBoxLayout() - self.rpc_layout.setObjectName("rpc_layout") - self.right_layout.addLayout(self.rpc_layout) self.groupBox = QtWidgets.QGroupBox(RareSettings) self.groupBox.setObjectName("groupBox") self.shortcuts_layout = QtWidgets.QVBoxLayout(self.groupBox) diff --git a/rare/ui/components/tabs/settings/rare.ui b/rare/ui/components/tabs/settings/rare.ui index f64a7f89..704a5497 100644 --- a/rare/ui/components/tabs/settings/rare.ui +++ b/rare/ui/components/tabs/settings/rare.ui @@ -1,285 +1,282 @@ - RareSettings - - - - 0 - 0 - 674 - 532 - + RareSettings + + + + 0 + 0 + 674 + 532 + + + + RareSettings + + + + + + + + + 0 + 0 + + + + Interface + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - RareSettings - - - - - - - - - 0 - 0 - - - - Interface - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - Language - - - - - - - - 0 - 0 - - - - - - - - Color Scheme - - - - - - - - 0 - 0 - - - - - None - - - - - - - - Style Sheet - - - - - - - - 0 - 0 - - - - - None - - - - - - - - - true - - - - Restart Rare to apply. - - - true - - - - - - - - - - Behavior - - - - - - Restore window size on application startup - - - - - - - Show notification on download completion - - - - - - - Show console for game debug - - - - - - - Exit to System tray - - - - - - - Update games on application startup - - - - - - - Confirm game launch - - - - - - - Automatically sync with cloud - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - Logs - - - - - - Open Log directory - - - - - - - Clean Log directory - - - - - - - - 0 - 0 - - - - - - - true - - - - - - - - - - - - - Shortcuts - - - - - - Create Desktop link - - - - - - - Create start menu link - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - + + + + Language + + + + + + + + 0 + 0 + + + + + + + + Color Scheme + + + + + + + + 0 + 0 + + + + + None + + + + + + + + Style Sheet + + + + + + + + 0 + 0 + + + + + None + + + + + + + + + true + + + + Restart Rare to apply. + + + true + + + + + + + + + + Behavior + + + + + + Restore window size on application startup + + + + + + + Show notification on download completion + + + + + + + Show console for game debug + + + + + + + Exit to System tray + + + + + + + Update games on application startup + + + + + + + Confirm game launch + + + + + + + Automatically sync with cloud + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + Logs + + + + + + Open Log directory + + + + + + + Clean Log directory + + + + + + + + 0 + 0 + + + + + + + true + + + + + + + + + + Shortcuts + + + + + + Create Desktop link + + + + + + + Create start menu link + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + +