4 #include <QProgressBar>
7 #include <QTableWidget>
9 #include "advsettingsdlg.h"
11 AdvSettingsDlg::AdvSettingsDlg(QDialog *parent)
19 settings = new QSettings(this);
20 setWindowTitle(tr("Advanced settings"));
22 resetBtn = new QPushButton(tr("Defaults"), this);
23 saveBtn = new QPushButton(tr("Save"), this);
24 table = new QTableWidget(0, 2, this);
25 table->verticalHeader()->setVisible(false);
26 table->horizontalHeader()->setVisible(false);
27 connect(resetBtn, SIGNAL(clicked()), this, SLOT(resetToDefaults()));
28 connect(saveBtn, SIGNAL(clicked()), this, SLOT(save()));
30 layout = new QGridLayout(this);
31 layout->addWidget(table, 0, 0, 2, 3);
32 layout->addWidget(resetBtn, 0, 4);
33 layout->addWidget(saveBtn, 1, 4);
38 AdvSettingsDlg::~AdvSettingsDlg()
47 void AdvSettingsDlg::save()
49 for (int i = 0; i < table->rowCount(); ++i)
51 settings->setValue(table->item(i, 0)->text(),
52 table->item(i, 1)->text());
57 int AdvSettingsDlg::refreshList()
60 table->setRowCount(0);
62 QStringList keys = settings->allKeys();
64 for (int i = 0; i < keys.size(); ++i)
66 QTableWidgetItem *key = new QTableWidgetItem(keys.at(i));
67 QTableWidgetItem *value = new QTableWidgetItem(
68 settings->value(keys.at(i), "n/a").toString());
69 key->setFlags(Qt::NoItemFlags | Qt::ItemIsEnabled);
70 value->setFlags(Qt::ItemIsEnabled | Qt::ItemIsEditable);
71 table->insertRow(table->rowCount());
72 table->setItem(i, 0, key);
73 table->setItem(i, 1, value);
75 table->resizeColumnsToContents();
79 void AdvSettingsDlg::resetToDefaults()
81 QMessageBox mbox(QMessageBox::Question, "",
82 tr("All settings will be reset to defaults"),
83 QMessageBox::Ok, this); // Cancel by clicking outside the
84 // messagebox in maemo
85 if (mbox.exec() == QMessageBox::Ok)
87 settings->setValue("lircPort", 8765);
88 settings->setValue("remoteName", "No remote selected");
89 settings->setValue("lircConf", "/etc/lircd.conf");
90 settings->setValue("cmd0", "VOL+");
91 settings->setValue("cmd1", "VOL-");
92 settings->setValue("cmd2", "P+");
93 settings->setValue("cmd3", "P-");
94 settings->setValue("cmd4", "ON/OFF");
95 settings->setValue("cmd5", "MUTE");
96 settings->setValue("remoteUrl",
97 "http://mercury.wipsl.com/irwi/remotes/");
98 settings->setValue("bgAlpha", 192);