From 3291100709402b5da2c278e1ac3569b7961b76e4 Mon Sep 17 00:00:00 2001 From: loathingKernel <142770+loathingKernel@users.noreply.github.com> Date: Sun, 23 Oct 2022 21:36:44 +0300 Subject: [PATCH] InstallDialog: Set irrelevant widgets as disabled. Do not hide irrelevant options, show them as disabled instea. This like the install directory are still informational despite not being editable. Also homogenize variable and widget naming. --- rare/components/dialogs/install_dialog.py | 106 +++++++++---------- rare/ui/components/dialogs/install_dialog.py | 90 ++++++++-------- rare/ui/components/dialogs/install_dialog.ui | 34 ++++-- 3 files changed, 126 insertions(+), 104 deletions(-) diff --git a/rare/components/dialogs/install_dialog.py b/rare/components/dialogs/install_dialog.py index 075169d3..d9cbf953 100644 --- a/rare/components/dialogs/install_dialog.py +++ b/rare/components/dialogs/install_dialog.py @@ -45,7 +45,7 @@ class InstallDialog(QDialog): ) self.ui.advanced_layout.setParent(None) self.advanced_widget = CollabsibleWidget( - self.ui.advanced_layout, self.tr("Advanced options"), parent=self + child_layout=self.ui.advanced_layout, title=self.tr("Advanced options"), parent=self ) self.ui.collapsible_layout.addWidget(self.advanced_widget) @@ -80,12 +80,12 @@ class InstallDialog(QDialog): self.ui.install_dir_layout.addWidget(self.install_dir_edit) if self.update: - self.ui.install_dir_label.setVisible(False) - self.install_dir_edit.setVisible(False) - self.ui.shortcut_lbl.setVisible(False) - self.ui.shortcut_cb.setVisible(False) + self.ui.install_dir_label.setEnabled(False) + self.install_dir_edit.setEnabled(False) + self.ui.shortcut_label.setEnabled(False) + self.ui.shortcut_check.setEnabled(False) else: - self.ui.shortcut_cb.setChecked(QSettings().value("create_shortcut", True, bool)) + self.ui.shortcut_check.setChecked(QSettings().value("create_shortcut", True, bool)) self.error_box() @@ -94,23 +94,23 @@ class InstallDialog(QDialog): platforms.append("Win32") if dl_item.options.app_name in self.api_results.mac_games: platforms.append("Mac") - self.ui.platform_combo_box.addItems(platforms) - self.ui.platform_combo_box.currentIndexChanged.connect(lambda: self.option_changed(None)) - self.ui.platform_combo_box.currentIndexChanged.connect(lambda: self.error_box()) - self.ui.platform_combo_box.currentIndexChanged.connect( + self.ui.platform_combo.addItems(platforms) + self.ui.platform_combo.currentIndexChanged.connect(lambda: self.option_changed(None)) + self.ui.platform_combo.currentIndexChanged.connect(lambda: self.error_box()) + self.ui.platform_combo.currentIndexChanged.connect( lambda i: self.error_box( self.tr("Warning"), self.tr("You will not be able to run the game if you select {} as platform").format( - self.ui.platform_combo_box.itemText(i) + self.ui.platform_combo.itemText(i) ), ) - if (self.ui.platform_combo_box.currentText() == "Mac" and pf.system() != "Darwin") + if (self.ui.platform_combo.currentText() == "Mac" and pf.system() != "Darwin") else None ) - self.ui.platform_combo_box.currentTextChanged.connect(self.setup_sdl_list) + self.ui.platform_combo.currentTextChanged.connect(self.setup_sdl_list) if pf.system() == "Darwin" and "Mac" in platforms: - self.ui.platform_combo_box.setCurrentIndex(platforms.index("Mac")) + self.ui.platform_combo.setCurrentIndex(platforms.index("Mac")) self.ui.max_workers_spin.setValue(self.core.lgd.config.getint("Legendary", "max_workers", fallback=0)) self.ui.max_workers_spin.valueChanged.connect(self.option_changed) @@ -122,7 +122,7 @@ class InstallDialog(QDialog): self.ui.force_download_check.stateChanged.connect(self.option_changed) self.ui.ignore_space_check.stateChanged.connect(self.option_changed) self.ui.download_only_check.stateChanged.connect(lambda: self.non_reload_option_changed("download_only")) - self.ui.shortcut_cb.stateChanged.connect(lambda: self.non_reload_option_changed("shortcut")) + self.ui.shortcut_check.stateChanged.connect(lambda: self.non_reload_option_changed("shortcut")) self.sdl_list_cbs: List[TagCheckBox] = [] self.config_tags: Optional[List[str]] = None @@ -132,21 +132,23 @@ class InstallDialog(QDialog): if self.dl_item.options.overlay: self.ui.platform_label.setVisible(False) - self.ui.platform_combo_box.setVisible(False) - self.ui.ignore_space_check.setVisible(False) + self.ui.platform_combo.setVisible(False) self.ui.ignore_space_label.setVisible(False) - self.ui.download_only_check.setVisible(False) + self.ui.ignore_space_check.setVisible(False) self.ui.download_only_label.setVisible(False) - self.ui.shortcut_cb.setVisible(False) - self.ui.shortcut_lbl.setVisible(False) + self.ui.download_only_check.setVisible(False) + self.ui.shortcut_label.setVisible(False) + self.ui.shortcut_check.setVisible(False) + self.ui.sdl_list_label.setVisible(False) + self.ui.sdl_list_frame.setVisible(False) if pf.system() == "Darwin": - self.ui.shortcut_cb.setDisabled(True) - self.ui.shortcut_cb.setChecked(False) - self.ui.shortcut_cb.setToolTip(self.tr("Creating a shortcut is not supported on MacOS")) + self.ui.shortcut_check.setDisabled(True) + self.ui.shortcut_check.setChecked(False) + self.ui.shortcut_check.setToolTip(self.tr("Creating a shortcut is not supported on MacOS")) - self.ui.install_prereqs_lbl.setVisible(False) - self.ui.install_prereqs_check.setVisible(False) + self.ui.install_prereqs_label.setEnabled(False) + self.ui.install_prereqs_check.setEnabled(False) self.ui.install_prereqs_check.stateChanged.connect(lambda: self.non_reload_option_changed("install_prereqs")) self.non_reload_option_changed("shortcut") @@ -179,6 +181,7 @@ class InstallDialog(QDialog): config_disable_sdl = self.core.lgd.config.getboolean(self.game.app_name, 'disable_sdl', fallback=False) sdl_name = get_sdl_appname(self.game.app_name) if not config_disable_sdl and sdl_name is not None: + self.ui.sdl_list_text.hide() # FIXME: this should be updated whenever platform changes sdl_data = self.core.get_sdl_data(sdl_name, platform=platform) if sdl_data: @@ -192,12 +195,12 @@ class InstallDialog(QDialog): cb.setChecked(True) self.ui.sdl_list_layout.addWidget(cb) self.sdl_list_cbs.append(cb) - self.ui.sdl_list_layout.setSizeConstraint(QLayout.SetFixedSize) for cb in self.sdl_list_cbs: cb.stateChanged.connect(self.option_changed) else: - self.ui.sdl_list_frame.setVisible(False) - self.ui.sdl_list_label.setVisible(False) + self.ui.sdl_list_text.show() + self.ui.sdl_list_label.setEnabled(False) + self.ui.sdl_list_frame.setEnabled(False) def get_options(self): self.dl_item.options.base_path = self.install_dir_edit.text() if not self.update else None @@ -208,9 +211,9 @@ class InstallDialog(QDialog): self.dl_item.options.force = self.ui.force_download_check.isChecked() self.dl_item.options.ignore_space = self.ui.ignore_space_check.isChecked() self.dl_item.options.no_install = self.ui.download_only_check.isChecked() - self.dl_item.options.platform = self.ui.platform_combo_box.currentText() + self.dl_item.options.platform = self.ui.platform_combo.currentText() self.dl_item.options.install_prereqs = self.ui.install_prereqs_check.isChecked() - self.dl_item.options.create_shortcut = self.ui.shortcut_cb.isChecked() + self.dl_item.options.create_shortcut = self.ui.shortcut_check.isChecked() if self.sdl_list_cbs: self.dl_item.options.install_tag = [""] for cb in self.sdl_list_cbs: @@ -231,10 +234,10 @@ class InstallDialog(QDialog): def verify_clicked(self): self.error_box() message = self.tr("Updating...") - self.ui.download_size_info_label.setText(message) - self.ui.download_size_info_label.setStyleSheet("font-style: italic; font-weight: normal") - self.ui.install_size_info_label.setText(message) - self.ui.install_size_info_label.setStyleSheet("font-style: italic; font-weight: normal") + self.ui.download_size_text.setText(message) + self.ui.download_size_text.setStyleSheet("font-style: italic; font-weight: normal") + self.ui.install_size_text.setText(message) + self.ui.install_size_text.setStyleSheet("font-style: italic; font-weight: normal") self.ui.cancel_button.setEnabled(False) self.ui.verify_button.setEnabled(False) self.ui.install_button.setEnabled(False) @@ -252,8 +255,8 @@ class InstallDialog(QDialog): if option == "download_only": self.dl_item.options.no_install = self.ui.download_only_check.isChecked() elif option == "shortcut": - QSettings().setValue("create_shortcut", self.ui.shortcut_cb.isChecked()) - self.dl_item.options.create_shortcut = self.ui.shortcut_cb.isChecked() + QSettings().setValue("create_shortcut", self.ui.shortcut_check.isChecked()) + self.dl_item.options.create_shortcut = self.ui.shortcut_check.isChecked() elif option == "install_prereqs": self.dl_item.options.install_prereqs = self.ui.install_prereqs_check.isChecked() @@ -277,20 +280,20 @@ class InstallDialog(QDialog): download_size = self.dl_item.download.analysis.dl_size install_size = self.dl_item.download.analysis.install_size if download_size: - self.ui.download_size_info_label.setText("{}".format(get_size(download_size))) - self.ui.download_size_info_label.setStyleSheet("font-style: normal; font-weight: bold") + self.ui.download_size_text.setText("{}".format(get_size(download_size))) + self.ui.download_size_text.setStyleSheet("font-style: normal; font-weight: bold") self.ui.install_button.setEnabled(not self.options_changed) else: - self.ui.install_size_info_label.setText(self.tr("Game already installed")) - self.ui.install_size_info_label.setStyleSheet("font-style: italics; font-weight: normal") - self.ui.install_size_info_label.setText("{}".format(get_size(install_size))) - self.ui.install_size_info_label.setStyleSheet("font-style: normal; font-weight: bold") + self.ui.install_size_text.setText(self.tr("Game already installed")) + self.ui.install_size_text.setStyleSheet("font-style: italics; font-weight: normal") + self.ui.install_size_text.setText("{}".format(get_size(install_size))) + self.ui.install_size_text.setStyleSheet("font-style: normal; font-weight: bold") self.ui.verify_button.setEnabled(self.options_changed) self.ui.cancel_button.setEnabled(True) if pf.system() == "Windows" or ArgumentsSingleton().debug: if dl_item.igame.prereq_info and not dl_item.igame.prereq_info.get("installed", False): - self.ui.install_prereqs_check.setVisible(True) - self.ui.install_prereqs_lbl.setVisible(True) + self.ui.install_prereqs_check.setEnabled(True) + self.ui.install_prereqs_label.setEnabled(True) self.ui.install_prereqs_check.setChecked(True) prereq_name = dl_item.igame.prereq_info.get("name", "") prereq_path = os.path.split(dl_item.igame.prereq_info.get("path", ""))[-1] @@ -303,8 +306,8 @@ class InstallDialog(QDialog): def on_worker_failed(self, message: str): error_text = self.tr("Error") - self.ui.download_size_info_label.setText(error_text) - self.ui.install_size_info_label.setText(error_text) + self.ui.download_size_text.setText(error_text) + self.ui.install_size_text.setText(error_text) self.error_box(error_text, message) self.ui.verify_button.setEnabled(self.options_changed) self.ui.cancel_button.setEnabled(True) @@ -312,13 +315,10 @@ class InstallDialog(QDialog): self.show() def error_box(self, label: str = "", message: str = ""): - if message.startswith("403 Client Error: Forbidden for url:"): - message = self.tr("403 Client Error: Wait a few seconds and try Verify again") - self.options_changed = True - self.ui.warn_label.setVisible(bool(label)) - self.ui.warn_label.setText(label) - self.ui.warn_message.setVisible(bool(message)) - self.ui.warn_message.setText(message) + self.ui.warning_label.setVisible(bool(label)) + self.ui.warning_label.setText(label) + self.ui.warning_text.setVisible(bool(message)) + self.ui.warning_text.setText(message) def on_worker_finished(self): self.worker_running = False diff --git a/rare/ui/components/dialogs/install_dialog.py b/rare/ui/components/dialogs/install_dialog.py index 41afaa0c..01c1a99a 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(383, 436) + InstallDialog.resize(383, 438) InstallDialog.setWindowTitle("Rare") self.install_dialog_layout = QtWidgets.QFormLayout(InstallDialog) self.install_dialog_layout.setLabelAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) @@ -31,22 +31,22 @@ class Ui_InstallDialog(object): 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) + self.platform_combo = 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.shortcut_lbl = QtWidgets.QLabel(InstallDialog) - self.shortcut_lbl.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) - self.shortcut_lbl.setObjectName("shortcut_lbl") - self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.shortcut_lbl) - self.shortcut_cb = QtWidgets.QCheckBox(InstallDialog) - self.shortcut_cb.setText("") - self.shortcut_cb.setObjectName("shortcut_cb") - self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.shortcut_cb) + sizePolicy.setHeightForWidth(self.platform_combo.sizePolicy().hasHeightForWidth()) + self.platform_combo.setSizePolicy(sizePolicy) + self.platform_combo.setObjectName("platform_combo") + self.install_dialog_layout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.platform_combo) + self.shortcut_label = QtWidgets.QLabel(InstallDialog) + self.shortcut_label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.shortcut_label.setObjectName("shortcut_label") + self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.shortcut_label) + self.shortcut_check = QtWidgets.QCheckBox(InstallDialog) + self.shortcut_check.setText("") + self.shortcut_check.setObjectName("shortcut_check") + self.install_dialog_layout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.shortcut_check) self.sdl_list_label = QtWidgets.QLabel(InstallDialog) self.sdl_list_label.setObjectName("sdl_list_label") self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.sdl_list_label) @@ -55,8 +55,13 @@ class Ui_InstallDialog(object): self.sdl_list_frame.setFrameShadow(QtWidgets.QFrame.Raised) self.sdl_list_frame.setObjectName("sdl_list_frame") self.sdl_list_layout = QtWidgets.QVBoxLayout(self.sdl_list_frame) + self.sdl_list_layout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) + self.sdl_list_layout.setContentsMargins(-1, 0, -1, 0) self.sdl_list_layout.setSpacing(0) self.sdl_list_layout.setObjectName("sdl_list_layout") + self.sdl_list_text = QtWidgets.QLabel(self.sdl_list_frame) + self.sdl_list_text.setObjectName("sdl_list_text") + self.sdl_list_layout.addWidget(self.sdl_list_text) self.install_dialog_layout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.sdl_list_frame) self.collapsible_layout = QtWidgets.QVBoxLayout() self.collapsible_layout.setObjectName("collapsible_layout") @@ -109,9 +114,9 @@ class Ui_InstallDialog(object): self.max_memory_info_label.setObjectName("max_memory_info_label") self.max_memory_layout.addWidget(self.max_memory_info_label) self.advanced_layout.setLayout(1, QtWidgets.QFormLayout.FieldRole, self.max_memory_layout) - self.install_prereqs_lbl = QtWidgets.QLabel(InstallDialog) - self.install_prereqs_lbl.setObjectName("install_prereqs_lbl") - self.advanced_layout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.install_prereqs_lbl) + self.install_prereqs_label = QtWidgets.QLabel(InstallDialog) + self.install_prereqs_label.setObjectName("install_prereqs_label") + self.advanced_layout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.install_prereqs_label) self.install_prereqs_check = QtWidgets.QCheckBox(InstallDialog) font = QtGui.QFont() font.setItalic(True) @@ -158,34 +163,34 @@ class Ui_InstallDialog(object): self.download_size_label = QtWidgets.QLabel(InstallDialog) self.download_size_label.setObjectName("download_size_label") self.install_dialog_layout.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.download_size_label) - self.download_size_info_label = QtWidgets.QLabel(InstallDialog) + self.download_size_text = 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(6, QtWidgets.QFormLayout.FieldRole, self.download_size_info_label) + self.download_size_text.setFont(font) + self.download_size_text.setObjectName("download_size_text") + self.install_dialog_layout.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.download_size_text) self.install_size_label = QtWidgets.QLabel(InstallDialog) self.install_size_label.setObjectName("install_size_label") self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.install_size_label) - self.install_size_info_label = QtWidgets.QLabel(InstallDialog) + self.install_size_text = 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(7, 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(8, QtWidgets.QFormLayout.LabelRole, self.warn_label) - self.warn_message = QtWidgets.QLabel(InstallDialog) + self.install_size_text.setFont(font) + self.install_size_text.setWordWrap(True) + self.install_size_text.setObjectName("install_size_text") + self.install_dialog_layout.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.install_size_text) + self.warning_label = QtWidgets.QLabel(InstallDialog) + self.warning_label.setObjectName("warning_label") + self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.warning_label) + self.warning_text = QtWidgets.QLabel(InstallDialog) font = QtGui.QFont() font.setItalic(True) - self.warn_message.setFont(font) - self.warn_message.setFrameShape(QtWidgets.QFrame.StyledPanel) - self.warn_message.setFrameShadow(QtWidgets.QFrame.Sunken) - self.warn_message.setWordWrap(True) - self.warn_message.setObjectName("warn_message") - self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.warn_message) + self.warning_text.setFont(font) + self.warning_text.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.warning_text.setFrameShadow(QtWidgets.QFrame.Sunken) + self.warning_text.setWordWrap(True) + self.warning_text.setObjectName("warning_text") + self.install_dialog_layout.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.warning_text) self.button_layout = QtWidgets.QHBoxLayout() self.button_layout.setObjectName("button_layout") spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) @@ -209,14 +214,15 @@ class Ui_InstallDialog(object): self.install_dialog_label.setText(_translate("InstallDialog", "error")) self.install_dir_label.setText(_translate("InstallDialog", "Install directory")) self.platform_label.setText(_translate("InstallDialog", "Platform")) - self.shortcut_lbl.setText(_translate("InstallDialog", "Create shortcut")) + self.shortcut_label.setText(_translate("InstallDialog", "Create shortcut")) self.sdl_list_label.setText(_translate("InstallDialog", "Optional packs")) + self.sdl_list_text.setText(_translate("InstallDialog", "None")) self.max_workers_label.setText(_translate("InstallDialog", "Max workers")) self.max_workers_info_label.setText(_translate("InstallDialog", "Less is slower. (0: Default)")) self.max_memory_label.setText(_translate("InstallDialog", "Max shared memory")) self.max_memory_spin.setSuffix(_translate("InstallDialog", "MiB")) self.max_memory_info_label.setText(_translate("InstallDialog", "Less is slower (0: Default)")) - self.install_prereqs_lbl.setText(_translate("InstallDialog", "Install prerequisites")) + self.install_prereqs_label.setText(_translate("InstallDialog", "Install prerequisites")) self.dl_optimizations_label.setText(_translate("InstallDialog", "Enable reordering")) self.force_download_label.setText(_translate("InstallDialog", "Force redownload")) self.ignore_space_label.setText(_translate("InstallDialog", "Ignore free space")) @@ -224,11 +230,11 @@ class Ui_InstallDialog(object): self.download_only_label.setText(_translate("InstallDialog", "Download only")) self.download_only_check.setText(_translate("InstallDialog", "Do not try to install.")) self.download_size_label.setText(_translate("InstallDialog", "Download size")) - self.download_size_info_label.setText(_translate("InstallDialog", "Click verify...")) + self.download_size_text.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", "Warning")) - self.warn_message.setText(_translate("InstallDialog", "None")) + self.install_size_text.setText(_translate("InstallDialog", "Click verify...")) + self.warning_label.setText(_translate("InstallDialog", "Warning")) + self.warning_text.setText(_translate("InstallDialog", "None")) self.cancel_button.setText(_translate("InstallDialog", "Cancel")) self.verify_button.setText(_translate("InstallDialog", "Verify")) self.install_button.setText(_translate("InstallDialog", "Install")) diff --git a/rare/ui/components/dialogs/install_dialog.ui b/rare/ui/components/dialogs/install_dialog.ui index c276cfda..4111ce79 100644 --- a/rare/ui/components/dialogs/install_dialog.ui +++ b/rare/ui/components/dialogs/install_dialog.ui @@ -7,7 +7,7 @@ 0 0 383 - 436 + 438 @@ -42,7 +42,7 @@ - + 0 @@ -52,7 +52,7 @@ - + Create shortcut @@ -62,7 +62,7 @@ - + @@ -87,6 +87,22 @@ 0 + + QLayout::SetFixedSize + + + 0 + + + 0 + + + + + None + + + @@ -185,7 +201,7 @@ - + Install prerequisites @@ -287,7 +303,7 @@ - + true @@ -306,7 +322,7 @@ - + true @@ -321,14 +337,14 @@ - + Warning - + true