1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
/* AUDEX CDDA EXTRACTOR
* Copyright (C) 2007-2014 Marco Nelles (audex@maniatek.com)
* <http://kde.maniatek.com/audex>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "customwidget.h"
customWidget::customWidget(Parameters *parameters, QWidget *parent) : customWidgetUI(parent) {
Q_UNUSED(parent);
this->parameters = parameters;
if (!parameters) {
kDebug() << "ParameterString is NULL!";
return;
}
klineedit_pattern->setText(parameters->value(ENCODER_CUSTOM_COMMAND_PATTERN_KEY, ENCODER_CUSTOM_COMMAND_PATTERN));
klineedit_suffix->setText(parameters->value(ENCODER_CUSTOM_SUFFIX_KEY, ENCODER_CUSTOM_SUFFIX));
connect(klineedit_suffix, SIGNAL(textEdited(const QString&)), this, SLOT(trigger_changed()));
connect(klineedit_pattern, SIGNAL(textEdited(const QString&)), this, SLOT(trigger_changed()));
connect(kpushbutton_pattern, SIGNAL(clicked()), this, SLOT(pattern_wizard()));
kpushbutton_pattern->setIcon(KIcon("tools-wizard"));
changed = FALSE;
}
customWidget::~customWidget() {
}
bool customWidget::save() {
bool success = TRUE;
parameters->setValue(ENCODER_CUSTOM_COMMAND_PATTERN_KEY, klineedit_pattern->text());
parameters->setValue(ENCODER_CUSTOM_SUFFIX_KEY, klineedit_suffix->text());
changed = FALSE;
return success;
}
void customWidget::pattern_wizard() {
CommandWizardDialog *dialog = new CommandWizardDialog(klineedit_pattern->text(), this);
if (dialog->exec() != QDialog::Accepted) { delete dialog; return; }
klineedit_pattern->setText(dialog->command);
delete dialog;
trigger_changed();
}
void customWidget::trigger_changed() {
changed = (
klineedit_pattern->text() != parameters->value(ENCODER_CUSTOM_COMMAND_PATTERN_KEY, ENCODER_CUSTOM_COMMAND_PATTERN) ||
klineedit_suffix->text() != parameters->value(ENCODER_CUSTOM_SUFFIX_KEY, ENCODER_CUSTOM_SUFFIX)
);
emit triggerChanged();
}
|