transcoder: Provide user feedback in options error condition
Remove condition that allows no dialog to be displayed when user selects options for transcoding. Display the dialog with an error message instead. This also applies to the transcode options dialog in the ripping and network remote settings.
This commit is contained in:
parent
b735f5d1c3
commit
281da05325
|
@ -187,9 +187,7 @@ void RipCDDialog::Options() {
|
||||||
.value<TranscoderPreset>();
|
.value<TranscoderPreset>();
|
||||||
|
|
||||||
TranscoderOptionsDialog dialog(preset, this);
|
TranscoderOptionsDialog dialog(preset, this);
|
||||||
if (dialog.is_valid()) {
|
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adds a folder to the destination box.
|
// Adds a folder to the destination box.
|
||||||
|
|
|
@ -314,9 +314,7 @@ void TranscodeDialog::Options() {
|
||||||
.value<TranscoderPreset>();
|
.value<TranscoderPreset>();
|
||||||
|
|
||||||
TranscoderOptionsDialog dialog(preset, this);
|
TranscoderOptionsDialog dialog(preset, this);
|
||||||
if (dialog.is_valid()) {
|
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adds a folder to the destination box.
|
// Adds a folder to the destination box.
|
||||||
|
|
|
@ -56,11 +56,15 @@ TranscoderOptionsDialog::TranscoderOptionsDialog(const TranscoderPreset& preset,
|
||||||
options_ = new TranscoderOptionsWma(this);
|
options_ = new TranscoderOptionsWma(this);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
ui_->errorMessage->setText(
|
||||||
|
tr("Unknown encoder type: %1").arg(preset.name_));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (options_) {
|
if (options_) {
|
||||||
setWindowTitle(windowTitle() + " - " + Song::TextForFiletype(preset.type_));
|
ui_->errorMessage->setVisible(false);
|
||||||
|
setWindowTitle(tr("Transcoding options - %1")
|
||||||
|
.arg(Song::TextForFiletype(preset.type_)));
|
||||||
options_->layout()->setContentsMargins(0, 0, 0, 0);
|
options_->layout()->setContentsMargins(0, 0, 0, 0);
|
||||||
ui_->verticalLayout->insertWidget(0, options_);
|
ui_->verticalLayout->insertWidget(0, options_);
|
||||||
resize(width(), minimumHeight());
|
resize(width(), minimumHeight());
|
||||||
|
|
|
@ -33,8 +33,6 @@ class TranscoderOptionsDialog : public QDialog {
|
||||||
QWidget* parent = nullptr);
|
QWidget* parent = nullptr);
|
||||||
~TranscoderOptionsDialog();
|
~TranscoderOptionsDialog();
|
||||||
|
|
||||||
bool is_valid() const { return options_; }
|
|
||||||
|
|
||||||
void accept();
|
void accept();
|
||||||
|
|
||||||
void set_settings_postfix(const QString& settings_postfix);
|
void set_settings_postfix(const QString& settings_postfix);
|
||||||
|
|
|
@ -14,6 +14,19 @@
|
||||||
<string>Transcoding options</string>
|
<string>Transcoding options</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="errorMessage">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Error</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QDialogButtonBox" name="buttonBox">
|
<widget class="QDialogButtonBox" name="buttonBox">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
|
|
@ -206,7 +206,5 @@ void NetworkRemoteSettingsPage::Options() {
|
||||||
|
|
||||||
TranscoderOptionsDialog dialog(preset, this);
|
TranscoderOptionsDialog dialog(preset, this);
|
||||||
dialog.set_settings_postfix(NetworkRemote::kTranscoderSettingPostfix);
|
dialog.set_settings_postfix(NetworkRemote::kTranscoderSettingPostfix);
|
||||||
if (dialog.is_valid()) {
|
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue