summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/keyz-cfg/cfgdlg.cpp4
-rw-r--r--noncore/apps/keyz-cfg/cfgdlg.h2
-rw-r--r--noncore/apps/keyz-cfg/main.cpp12
3 files changed, 10 insertions, 8 deletions
diff --git a/noncore/apps/keyz-cfg/cfgdlg.cpp b/noncore/apps/keyz-cfg/cfgdlg.cpp
index 863f21e..3965198 100644
--- a/noncore/apps/keyz-cfg/cfgdlg.cpp
+++ b/noncore/apps/keyz-cfg/cfgdlg.cpp
@@ -1,131 +1,133 @@
#include <qdir.h>
#include <qpe/qpeapplication.h>
#include <qpe/qcopenvelope_qws.h>
#include <unistd.h>
#include "cfgdlg.h"
-CfgDlg::CfgDlg(QWidget* parent, CfgFile* cf, QApplication* app):QDialog(parent), cfile(cf), application(app) {
+CfgDlg::CfgDlg(QWidget* parent, CfgFile* cf, QApplication* app, bool mod):
+ QDialog(parent, "CfgDlg", mod), cfile(cf), application(app) {
+
setCaption(tr("keyz configurator"));
QGridLayout* gl = new QGridLayout(this, 7, 5, 5, 5);
QLabel* flabel = new QLabel("Available Keymaps", this);
files = new QListBox(this);
QPushButton* addButton = new QPushButton(">>", this); //add->setText("Add");
connect(addButton, SIGNAL(clicked()), this, SLOT(add()));
QLabel* klabel = new QLabel("Selected Keymaps", this);
keymaps = new QListBox(this);
connect(keymaps, SIGNAL(highlighted(const QString&)), this, SLOT(keymapHighlighted(const QString&)));
QPushButton* delButton = new QPushButton("<<", this); //del->setText("Delete");
connect(delButton, SIGNAL(clicked()), this, SLOT(del()));
QPushButton* slabelButton = new QPushButton("Set Label", this); //apply->setText("Apply");
connect(slabelButton, SIGNAL(clicked()), this, SLOT(setLabel()));
QLabel* l = new QLabel("Label", this);
label = new QLineEdit(this);
QLabel* adlabel = new QLabel("Auto Repeat Delay (ms)", this);
QLabel* aplabel = new QLabel("Auto Repeat Period (ms)", this);
ad = new QSpinBox(50, 5000, 5, this);
ap = new QSpinBox(0, 5000, 5, this);
// QLabel* adms = new QLabel("ms", this);
// QLabel* apms = new QLabel("ms", this);
// QCheckBox* enable = new QCheckBox("Enable", t);
gl->setColStretch(0, 1);
gl->setColStretch(1, 1);
gl->setColStretch(3, 1);
gl->setColStretch(4, 1);
gl->setRowStretch(3, 1);
gl->addMultiCellWidget(flabel, 0, 0, 0, 1);
gl->addMultiCellWidget(klabel, 0, 0, 3, 4);
gl->addMultiCellWidget(files, 1, 3, 0, 1);
gl->addMultiCellWidget(keymaps, 1, 3, 3, 4);
gl->addWidget(addButton, 1, 2);
gl->addWidget(delButton, 2, 2);
gl->addWidget(l, 4, 0);
gl->addWidget(label, 4, 1);
gl->addMultiCellWidget(slabelButton, 4, 4, 3, 4);
gl->addMultiCellWidget(adlabel, 5, 5, 0, 2);
gl->addMultiCellWidget(ad, 5, 5, 3, 4);
// gl->addWidget(adms, 5, 3);
gl->addMultiCellWidget(aplabel, 6, 6, 0, 2);
gl->addMultiCellWidget(ap, 6, 6, 3, 4);
// gl->addWidget(apms, 6, 3);
QList<CfgEntry>& e = cfile->getEntries();
for(uint i = 0; i < e.count(); i++) {
CfgEntry* entry = e.at(i);
keymaps->insertItem(entry->getFile());
m.insert(entry->getFile(), entry->getLabel());
}
QDir dir(QPEApplication::qpeDir()+"/share/zkb", "*.xml");
QStringList flist = dir.entryList();
QStringList::Iterator sit;
for(sit = flist.begin(); sit != flist.end(); ++sit) {
if (*sit != "common.xml" && *sit != "zkb.xml" && m.find(*sit) == m.end()) {
files->insertItem(*sit);
}
}
ad->setValue(cfile->getAutorepeatDelay());
ap->setValue(cfile->getAutorepeatPeriod());
// gl->addMultiCellWidget(enable, 7, 7, 0, 4);
}
CfgDlg::~CfgDlg() {
}
void CfgDlg::add() {
if (!files->currentText().isEmpty()) {
QString t = files->currentText();
files->removeItem(files->currentItem());
keymaps->insertItem(t);
cfile->replaceEntry(t, "");
m.replace(t, "");
}
}
void CfgDlg::del() {
if (!keymaps->currentText().isEmpty()) {
QString t = keymaps->currentText();
keymaps->removeItem(keymaps->currentItem());
cfile->deleteEntry(t);
files->insertItem(t);
m.remove(files->currentText());
}
}
void CfgDlg::setLabel() {
if (!keymaps->currentText().isEmpty()) {
cfile->replaceEntry(keymaps->currentText(),
label->text());
m.replace(keymaps->currentText(), label->text());
}
}
void CfgDlg::keymapHighlighted(const QString&text) {
label->setText(*m.find(text));
}
void CfgDlg::accept() {
cfile->setAutorepeatDelay(ad->value());
cfile->setAutorepeatPeriod(ap->value());
CfgParser p;
p.save(QPEApplication::qpeDir()+"/share/zkb/zkb.xml", *cfile);
QCopEnvelope("QPE/zkb", "reload()");
QDialog::accept();
parentWidget()->close(false);
}
diff --git a/noncore/apps/keyz-cfg/cfgdlg.h b/noncore/apps/keyz-cfg/cfgdlg.h
index 16732ee..cbefdf1 100644
--- a/noncore/apps/keyz-cfg/cfgdlg.h
+++ b/noncore/apps/keyz-cfg/cfgdlg.h
@@ -1,39 +1,39 @@
#include <qlabel.h>
#include <qlistbox.h>
#include <qpushbutton.h>
#include <qlineedit.h>
#include <qlayout.h>
#include <qcheckbox.h>
#include <qspinbox.h>
#include <qdialog.h>
#include <qapplication.h>
#include "cfgfile.h"
class CfgDlg : public QDialog {
Q_OBJECT
public:
- CfgDlg(QWidget* parent, CfgFile* cfile, QApplication *);
+ CfgDlg(QWidget* parent, CfgFile* cfile, QApplication *, bool b = false);
virtual ~CfgDlg();
protected:
CfgFile* cfile;
QApplication* application;
QMap<QString, QString> m;
QListBox* files;
QListBox* keymaps;
QLineEdit* label;
QSpinBox* ap;
QSpinBox* ad;
virtual void accept();
protected slots:
void add();
void del();
void setLabel();
void keymapHighlighted(const QString&);
};
diff --git a/noncore/apps/keyz-cfg/main.cpp b/noncore/apps/keyz-cfg/main.cpp
index 55cc23e..4615562 100644
--- a/noncore/apps/keyz-cfg/main.cpp
+++ b/noncore/apps/keyz-cfg/main.cpp
@@ -1,22 +1,22 @@
#include <stdio.h>
#include <qpe/qpeapplication.h>
+#include <qlayout.h>
#include <qmainwindow.h>
#include "cfgdlg.h"
int main( int argc, char **argv ) {
QPEApplication app(argc, argv);
CfgFile cfile;
CfgParser cp;
cp.load(QPEApplication::qpeDir()+"/share/zkb/zkb.xml", cfile);
- QMainWindow m;
- CfgDlg c(&m, &cfile, &app);
- app.showMainWidget(&m);
- m.hide();
- c.showMaximized();
- int ret = app.exec();
+ CfgDlg c(0, &cfile, &app, true);
+
+
+ app.showMainWidget(&c);
+ int ret = QPEApplication::execDialog(&c);
return ret;
}