diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-08-29 20:39:30 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-08-29 20:39:30 +0000 |
| commit | 471b1754f75e462cb6e5dc52d66bdec5745c92e0 (patch) | |
| tree | 9dbc1541bb9221077cc953991e3b485def9717c6 /src/qmmpui/configdialog.cpp | |
| parent | 1abba773217ac19dbcc7f413bfaf8376caf8ba42 (diff) | |
| download | qmmp-471b1754f75e462cb6e5dc52d66bdec5745c92e0.tar.gz qmmp-471b1754f75e462cb6e5dc52d66bdec5745c92e0.tar.bz2 qmmp-471b1754f75e462cb6e5dc52d66bdec5745c92e0.zip | |
changed configuration dialog
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2908 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/configdialog.cpp')
| -rw-r--r-- | src/qmmpui/configdialog.cpp | 100 |
1 files changed, 21 insertions, 79 deletions
diff --git a/src/qmmpui/configdialog.cpp b/src/qmmpui/configdialog.cpp index 948055901..78b62e2cc 100644 --- a/src/qmmpui/configdialog.cpp +++ b/src/qmmpui/configdialog.cpp @@ -42,6 +42,7 @@ #include <qmmp/inputsourcefactory.h> #include "ui_configdialog.h" #include "pluginitem_p.h" +#include "radioitemdelegate_p.h" #include "generalfactory.h" #include "general.h" #include "uihelper.h" @@ -61,8 +62,8 @@ ConfigDialog::ConfigDialog (QWidget *parent) : QDialog (parent) setAttribute(Qt::WA_DeleteOnClose, false); m_ui->preferencesButton->setEnabled(false); m_ui->informationButton->setEnabled(false); + m_ui->treeWidget->setItemDelegate(new RadioItemDelegate(this)); connect (this, SIGNAL(rejected()),SLOT(saveSettings())); - connect (m_ui->fileDialogComboBox, SIGNAL (currentIndexChanged (int)), SLOT(updateDialogButton(int))); m_ui->replayGainModeComboBox->addItem (tr("Track"), QmmpSettings::REPLAYGAIN_TRACK); m_ui->replayGainModeComboBox->addItem (tr("Album"), QmmpSettings::REPLAYGAIN_ALBUM); m_ui->replayGainModeComboBox->addItem (tr("Disabled"), QmmpSettings::REPLAYGAIN_DISABLED); @@ -72,10 +73,6 @@ ConfigDialog::ConfigDialog (QWidget *parent) : QDialog (parent) //setup icons m_ui->preferencesButton->setIcon(QIcon::fromTheme("configure")); m_ui->informationButton->setIcon(QIcon::fromTheme("dialog-information")); - m_ui->fdInformationButton->setIcon(QIcon::fromTheme("dialog-information")); - m_ui->outputInformationButton->setIcon(QIcon::fromTheme("dialog-information")); - m_ui->uiInformationButton->setIcon(QIcon::fromTheme("dialog-information")); - m_ui->outputPreferencesButton->setIcon(QIcon::fromTheme("configure")); } ConfigDialog::~ConfigDialog() @@ -226,47 +223,40 @@ void ConfigDialog::loadPluginsInfo() } m_ui->treeWidget->addTopLevelItem(item); item->setExpanded(true); - - m_ui->treeWidget->blockSignals(false); - m_ui->treeWidget->resizeColumnToContents(0); - m_ui->treeWidget->resizeColumnToContents(1); /* load output plugins information */ - m_ui->outputInformationButton->setEnabled(false); - m_ui->outputPreferencesButton->setEnabled(false); - QList <OutputFactory *> *outputs = Output::factories(); - for (int i = 0; i < outputs->count (); ++i) + item = new QTreeWidgetItem (m_ui->treeWidget, QStringList() << tr("Output")); + foreach(OutputFactory *factory, *Output::factories()) { - m_ui->outputComboBox->addItem(outputs->at(i)->properties().name); - if(Output::currentFactory() == outputs->at(i)) - { - m_ui->outputComboBox->setCurrentIndex(i); - on_outputComboBox_activated (i); - } + new PluginItem (item, factory, Output::file(factory)); } + m_ui->treeWidget->addTopLevelItem(item); + item->setExpanded(true); /* - load file dialog information + load file dialogs information */ + item = new QTreeWidgetItem (m_ui->treeWidget, QStringList() << tr("File Dialogs")); foreach(FileDialogFactory *factory, FileDialog::registeredFactories()) { - m_ui->fileDialogComboBox->addItem(factory->properties().name); - if (FileDialog::isEnabled(factory)) - m_ui->fileDialogComboBox->setCurrentIndex(m_ui->fileDialogComboBox->count()-1); + new PluginItem (item, factory, "Unknown"); } + m_ui->treeWidget->addTopLevelItem(item); + item->setExpanded(true); /* - load ui information + load user interfaces information */ - m_ui->uiInformationButton->setEnabled(false); + item = new QTreeWidgetItem (m_ui->treeWidget, QStringList() << tr("User Interfaces")); foreach(UiFactory *factory, *UiLoader::factories()) { - m_ui->uiComboBox->addItem(factory->properties().name); - if (UiLoader::selected() == factory) - { - m_ui->uiComboBox->setCurrentIndex(m_ui->uiComboBox->count()-1); - on_uiComboBox_activated(m_ui->uiComboBox->count()-1); - } + new PluginItem (item, factory, UiLoader::file(factory)); } + m_ui->treeWidget->addTopLevelItem(item); + item->setExpanded(true); + + m_ui->treeWidget->blockSignals(false); + m_ui->treeWidget->resizeColumnToContents(0); + m_ui->treeWidget->resizeColumnToContents(1); } void ConfigDialog::on_preferencesButton_clicked() @@ -331,7 +321,6 @@ void ConfigDialog::saveSettings() guis->sync(); } - FileDialog::setEnabled(FileDialog::registeredFactories().at(m_ui->fileDialogComboBox->currentIndex())); QmmpSettings *gs = QmmpSettings::instance(); //proxy QUrl proxyUrl; @@ -357,10 +346,6 @@ void ConfigDialog::saveSettings() gs->setBufferSize(m_ui->bufferSizeSpinBox->value()); gs->setDetermineFileTypeByContent(m_ui->byContentCheckBox->isChecked()); gs->sync(); - QList <OutputFactory *> *outputs = Output::factories(); - if(m_ui->outputComboBox->currentIndex() >= 0 && outputs->count()) - Output::setCurrentFactory(outputs->at(m_ui->outputComboBox->currentIndex())); - QList<QVariant> var_sizes; var_sizes << m_ui->splitter->sizes().first() << m_ui->splitter->sizes().last(); QSettings settings (Qmmp::configFile(), QSettings::IniFormat); @@ -368,17 +353,6 @@ void ConfigDialog::saveSettings() settings.setValue("ConfigDialog/window_size", size()); } -void ConfigDialog::updateDialogButton(int index) -{ - m_ui->fdInformationButton->setEnabled(FileDialog::registeredFactories()[index]->properties().hasAbout); -} - -void ConfigDialog::on_fdInformationButton_clicked() -{ - int index = m_ui->fileDialogComboBox->currentIndex (); - FileDialog::registeredFactories()[index]->showAbout(this); -} - void ConfigDialog::on_treeWidget_itemChanged (QTreeWidgetItem *item, int column) { if(column == 0 && item->type() >= PluginItem::TRANSPORT) @@ -398,35 +372,3 @@ void ConfigDialog::on_treeWidget_currentItemChanged (QTreeWidgetItem *current, Q m_ui->informationButton->setEnabled(false); } } - -void ConfigDialog::on_outputComboBox_activated (int index) -{ - OutputFactory *factory = Output::factories()->at(index); - m_ui->outputInformationButton->setEnabled(factory->properties().hasAbout); - m_ui->outputPreferencesButton->setEnabled(factory->properties().hasSettings); -} - -void ConfigDialog::on_outputPreferencesButton_clicked() -{ - int index = m_ui->outputComboBox->currentIndex(); - Output::factories()->at(index)->showSettings(this); -} - -void ConfigDialog::on_uiComboBox_activated (int index) -{ - UiFactory *factory = UiLoader::factories()->at(index); - m_ui->uiInformationButton->setEnabled(factory->properties().hasAbout); - UiLoader::select(factory); -} - -void ConfigDialog::on_outputInformationButton_clicked() -{ - int index = m_ui->outputComboBox->currentIndex(); - Output::factories()->at(index)->showAbout(this); -} - -void ConfigDialog::on_uiInformationButton_clicked() -{ - int index = m_ui->uiComboBox->currentIndex(); - UiLoader::factories()->at(index)->showAbout(this); -} |
