|
@@ -38,9 +38,12 @@ SettingsWidget::SettingsWidget(QWidget *parent)
|
|
|
|
|
|
|
|
|
ui->patch_installing_label->hide();
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ connect(&PatchInstaller::instance(), &PatchInstaller::started, this, &SettingsWidget::onPatchTotalOperationsStarted);
|
|
|
+ connect(&PatchInstaller::instance(), &PatchInstaller::finished, this, &SettingsWidget::onPatchTotalOperationsFinished);
|
|
|
+ connect(&PatchDownloader::instance(), &PatchDownloader::started, this, &SettingsWidget::onPatchTotalOperationsStarted);
|
|
|
+ connect(&PatchDownloader::instance(), &PatchDownloader::finished, this, &SettingsWidget::onPatchTotalOperationsFinished);
|
|
|
+
|
|
|
+
|
|
|
|
|
|
|
|
|
ui->apply_changes_button->hide();
|
|
@@ -521,51 +524,55 @@ void SettingsWidget::on_interface_scale_combobox_currentIndexChanged(const QStri
|
|
|
|
|
|
void SettingsWidget::onPatchTotalOperationsStarted()
|
|
|
{
|
|
|
- patch_operations_running_ = true;
|
|
|
- ui->patch_installing_label->show();
|
|
|
-
|
|
|
- ui->change_folder_button->setEnabled(false);
|
|
|
- ui->lotro_base_language_combobox->setEnabled(false);
|
|
|
-
|
|
|
- ui->backup_create_button->setEnabled(false);
|
|
|
- ui->backup_restore_button->setEnabled(false);
|
|
|
- ui->backup_remove_button->setEnabled(false);
|
|
|
-
|
|
|
- ui->patch_texts_checkbox->setEnabled(false);
|
|
|
- ui->patch_items_checkbox->setEnabled(false);
|
|
|
- ui->patch_emotes_checkbox->setEnabled(false);
|
|
|
- ui->patch_maps_checkbox->setEnabled(false);
|
|
|
- ui->patch_textures_checkbox->setEnabled(false);
|
|
|
- ui->patch_loadscreens_checkbox->setEnabled(false);
|
|
|
- ui->patch_sounds_checkbox->setEnabled(false);
|
|
|
- ui->patch_video_checkbox->setEnabled(false);
|
|
|
- ui->patch_force_apply_button->setEnabled(false);
|
|
|
- ui->micropatch_checkbox->setEnabled(false);
|
|
|
+ patch_operations_running_++;
|
|
|
+ if (patch_operations_running_ == 1) {
|
|
|
+ ui->patch_installing_label->show();
|
|
|
+
|
|
|
+ ui->change_folder_button->setEnabled(false);
|
|
|
+ ui->lotro_base_language_combobox->setEnabled(false);
|
|
|
+
|
|
|
+ ui->backup_create_button->setEnabled(false);
|
|
|
+ ui->backup_restore_button->setEnabled(false);
|
|
|
+ ui->backup_remove_button->setEnabled(false);
|
|
|
+
|
|
|
+ ui->patch_texts_checkbox->setEnabled(false);
|
|
|
+ ui->patch_items_checkbox->setEnabled(false);
|
|
|
+ ui->patch_emotes_checkbox->setEnabled(false);
|
|
|
+ ui->patch_maps_checkbox->setEnabled(false);
|
|
|
+ ui->patch_textures_checkbox->setEnabled(false);
|
|
|
+ ui->patch_loadscreens_checkbox->setEnabled(false);
|
|
|
+ ui->patch_sounds_checkbox->setEnabled(false);
|
|
|
+ ui->patch_video_checkbox->setEnabled(false);
|
|
|
+ ui->patch_force_apply_button->setEnabled(false);
|
|
|
+ ui->micropatch_checkbox->setEnabled(false);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
void SettingsWidget::onPatchTotalOperationsFinished()
|
|
|
{
|
|
|
- patch_operations_running_ = false;
|
|
|
- ui->patch_installing_label->hide();
|
|
|
- settings_backup_ = Settings::createSettingsBackup();
|
|
|
-
|
|
|
- ui->change_folder_button->setEnabled(true);
|
|
|
- ui->lotro_base_language_combobox->setEnabled(true);
|
|
|
-
|
|
|
- ui->backup_create_button->setEnabled(true);
|
|
|
- ui->backup_restore_button->setEnabled(true);
|
|
|
- ui->backup_remove_button->setEnabled(true);
|
|
|
-
|
|
|
- ui->patch_texts_checkbox->setEnabled(true);
|
|
|
- ui->patch_items_checkbox->setEnabled(true);
|
|
|
- ui->patch_emotes_checkbox->setEnabled(true);
|
|
|
- ui->patch_maps_checkbox->setEnabled(true);
|
|
|
- ui->patch_textures_checkbox->setEnabled(true);
|
|
|
- ui->patch_loadscreens_checkbox->setEnabled(true);
|
|
|
- ui->patch_sounds_checkbox->setEnabled(true);
|
|
|
- ui->patch_video_checkbox->setEnabled(true);
|
|
|
- ui->patch_force_apply_button->setEnabled(true);
|
|
|
- ui->micropatch_checkbox->setEnabled(true);
|
|
|
+ patch_operations_running_--;
|
|
|
+ if (patch_operations_running_ == 0) {
|
|
|
+ ui->patch_installing_label->hide();
|
|
|
+ settings_backup_ = Settings::createSettingsBackup();
|
|
|
+
|
|
|
+ ui->change_folder_button->setEnabled(true);
|
|
|
+ ui->lotro_base_language_combobox->setEnabled(true);
|
|
|
+
|
|
|
+ ui->backup_create_button->setEnabled(true);
|
|
|
+ ui->backup_restore_button->setEnabled(true);
|
|
|
+ ui->backup_remove_button->setEnabled(true);
|
|
|
+
|
|
|
+ ui->patch_texts_checkbox->setEnabled(true);
|
|
|
+ ui->patch_items_checkbox->setEnabled(true);
|
|
|
+ ui->patch_emotes_checkbox->setEnabled(true);
|
|
|
+ ui->patch_maps_checkbox->setEnabled(true);
|
|
|
+ ui->patch_textures_checkbox->setEnabled(true);
|
|
|
+ ui->patch_loadscreens_checkbox->setEnabled(true);
|
|
|
+ ui->patch_sounds_checkbox->setEnabled(true);
|
|
|
+ ui->patch_video_checkbox->setEnabled(true);
|
|
|
+ ui->patch_force_apply_button->setEnabled(true);
|
|
|
+ ui->micropatch_checkbox->setEnabled(true);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
void SettingsWidget::on_apply_changes_button_clicked()
|