From: Norbert Moutarde Date: Thu, 24 Apr 2014 18:34:58 +0000 (+0200) Subject: editButtonDB() is now functional X-Git-Url: https://git.nothing2do.fr/?a=commitdiff_plain;h=refs%2Fremotes%2Forigin%2FHEAD;p=diary-mobile.git editButtonDB() is now functional --- diff --git a/mainwindow.cpp b/mainwindow.cpp index fdb0b64..6b675be 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -117,8 +117,8 @@ CLabel* MainWindow::addWidget(const QString &key, const CLabel *a){ int maxc=conf->value(QString("maxcolumn")).toInt(); int maxl=conf->value(QString("maxline")).toInt(); grid->addWidget(a, grid->count()/maxc, grid->count()%maxc, 1, 1, Qt::AlignJustify| Qt::AlignVCenter | Qt::AlignHCenter); - QObject::connect(a, SIGNAL(pressed()), signalmap, SLOT(map())); - //QObject::connect(a, SIGNAL(released()), signalmap, SLOT(map())); + //QObject::connect(a, SIGNAL(pressed()), signalmap, SLOT(map())); + QObject::connect(a, SIGNAL(released()), signalmap, SLOT(map())); signalmap->setMapping(a, key); return a; } @@ -136,6 +136,9 @@ void MainWindow::action(const QString &a){ else if(b[0]==QString("setint")){ conf->setValue(b[1], QInputDialog::getInt(this, "setInt", b[1] , conf->value(QString(b[1])).toInt())); } + else if(b[0]==QString("start")){ + getButtons(conf->value(QString("start")).toString()); + } else if(b[0]=="new"){ entry(c); } @@ -152,6 +155,9 @@ void MainWindow::action(const QString &a){ else if(b[0]==QString("clear")){ way.clear(); } + else if(b[0]==QString("edit")){ + editButtonDB(b[1]); + } else getButtons(a); } void MainWindow::createMenuBar(){ @@ -169,7 +175,7 @@ void MainWindow::createMenuBar(){ EditMenu->addAction(trUtf8("A&dd buttons"), this, SLOT(addButtonDB()), QKeySequence(trUtf8("Ctrl+D", "Buttons|Add"))); EditMenu->addAction(trUtf8("Sa&v buttons"), this, SLOT(savButtons()), QKeySequence(trUtf8("Ctrl+V", "Buttons|Save"))); - EditMenu->addAction(trUtf8("&Edit buttons"), this, SLOT(editButtonDB()), QKeySequence(trUtf8("Ctrl+E", "Buttons|&Edit"))); + EditMenu->addAction(trUtf8("&Edit buttons"), this, SLOT(chooseButtonDB()), QKeySequence(trUtf8("Ctrl+E", "Buttons|&Edit"))); EditMenu->addAction(trUtf8("&View/Hide menu"), this, SLOT(toggleMenu()), QKeySequence(trUtf8("Ctrl+T", "Buttons|View menu"))); menuBar()->addMenu(EditMenu); HelpMenu=new QMenu(QString("&Help")); @@ -316,7 +322,7 @@ void MainWindow::entry(){ } void MainWindow::createDB(){ qDebug()<<"createDB()"; - exec(QList({"create table ui(keyword text, label text, action text);"})); + exec(QList({"create table ui(id INTEGER PRIMARY KEY AUTOINCREMENT,keyword text, label text, action text);"})); exec(QList({"create table raw(date timestamp, texte text);"})); } void MainWindow::addButtonDB(){ @@ -353,25 +359,38 @@ void MainWindow::getButtons(const QString &a){ int i=0; qDebug()<<"bcl to add buttons"; while(q->next()){ - addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString(), conf->value(QString("button"), QVariant("background-color: red;border-style: outset;border-width: 7px;border-radius: 10px;border-color: beige;font: bold 15px;padding: 6px;")).toString())); + addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString(), conf->value(QString("button")).toString())); i++; }; way.append(a); qDebug()<<"end getButtons : "<next()) { - //QString key=QString("sql select keyword,label,action from ui where keyword like '"+q->value(0).toString()+"';"); - qDebug()<value(0).toString(); - addWidget(QString("sql select keyword,label,action from ui where keyword like '"+q->value(0).toString()+"';"), new CLabel(q->value(0).toString())); + const QString action="edit "+q->value(0).toString(); + addWidget(action, new CLabel(q->value(1).toString(), conf->value(QString("button")).toString())); } - /*flush(); - while (q->next()){ +} +void MainWindow::editButtonDB(const QString & a){ + exec(QList({"select id,keyword,label,action from ui where id=?;", a})); + q->next(); + const QString keyword=QInputDialog::getText(this, "keyword", "new keyword", QLineEdit::Normal, q->value(1).toString()); + const QString label=QInputDialog::getText(this, "label", "new label", QLineEdit::Normal, q->value(2).toString()); + const QString action=QInputDialog::getText(this, "action", "new action", QLineEdit::Normal, q->value(3).toString()); + if((keyword=="")||(label=="")||(action=="")){ + exec(QList({"delete from ui where id=?", a})); + return; + } + exec(QList({"update ui set keyword=?, label=?, action=? where id=?;", keyword, label, action, a})); - }*/ } + void MainWindow::downloadUi(){ qDebug()<<"updateUi() : "<value(QString("download"), QVariant("https://raw.github.com/Nothing2Do/diary-mobile-android/master/ui.sql")).toString(); download(conf->value(QString("download")).toString()); @@ -413,7 +432,8 @@ void MainWindow::RAWsent(){ void MainWindow::back(){ flush(); getButtons(conf->value(QString("menuback")).toString()); - for(int i=0; ivalue(QString("button")).toString())); } }