From: Norbert Moutarde Date: Fri, 16 May 2014 20:52:53 +0000 (+0200) Subject: add insertbutton (function who append all keyword when label and action X-Git-Url: https://git.nothing2do.fr/?a=commitdiff_plain;h=7b7fde55add39439a544cd3bbb2960ca491d4ce3;p=diary-mobile.git add insertbutton (function who append all keyword when label and action is the same) --- diff --git a/mainwindow.cpp b/mainwindow.cpp index 490a29c..dc7c49b 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -323,6 +323,7 @@ void MainWindow::firstrun(){ conf->setValue(QString("editbuttons"), QVariant("select id,keyword,label,action from ui where id=?;")); conf->setValue(QString("updatebuttons"), QVariant("update ui set keyword=?, label=?, action=? where id=?;")); conf->setValue(QString("deletebuttons"), QVariant("delete from ui where id=?")); + conf->setValue(QString("testbuttons"), QVariant("select id,keyword from ui where label=? and action=?;")); conf->setValue(QString("volumdown"), QVariant("config")); conf->setValue(QString("volumup"), QVariant("config")); qDebug()<<"firstrun() finished"; @@ -380,21 +381,15 @@ void MainWindow::createDB(){ } void MainWindow::addButtonDB(){ qDebug()<<"addButtonDB()"; - //QMutexLocker locker(&addblock); - QList cmd; bool ok=0; - cmd.append(conf->value(QString("addbuttons")).toString()); - QString cur=way.last(); + QString cur=label->text(); QString a, b, c=QInputDialog::getText(this, QString("label"), QString("Entrez son label"),QLineEdit::Normal, QString(""), &ok); if ((c=="")||(ok==0))return; - cmd.append(c); b=QInputDialog::getText(this, QString("keyword"), QString("Entrez ses mots clé (no limit !)"), QLineEdit::Normal, cur, &ok); if ((b=="")||(ok==0))return; - cmd.append(b); a=QInputDialog::getText(this, QString("action"), QString("Entrez son action"), QLineEdit::Normal, c, &ok); if ((a=="")||(ok==0))return; - cmd.append(a); - exec(cmd); + insertbutton(b, c, a); return; } void MainWindow::getButtons(const QString &b){ @@ -456,10 +451,6 @@ void MainWindow::editButtonDB(const QString & a){ exec(QList({conf->value(QString("updatebuttons")).toString(), keyword, label, action, a})); } -/*void MainWindow::editButtonById(){ - const QString a=QInputDialog::getText(this, QString("editButtonById"), QString("Entrez l'ID : ")); - editButtonDB(a); -}*/ void MainWindow::downloadUi(){ qDebug()<<"updateUi() : "<value(QString("download")).toString(); download(conf->value(QString("download")).toString()); @@ -671,3 +662,22 @@ void MainWindow::getButtons(){ const QString a=QInputDialog::getText(this, QString("getButtons"), QString("Entrez le mots-clé : ")); getButtons(a); } +void MainWindow::insertbutton(const QString & keyword, const QString & label, const QString & action){ + QList tmp; + tmp.append(conf->value(QString("testbuttons")).toString()); + tmp.append(label); + tmp.append(action); + exec(tmp); + q->first(); + int count=0; + QString key=keyword, id=q->value(0).toString(); + while(q->isValid()){ + count++; + key=key+" "+q->value(1).toString(); + q->next(); + } + if(count==0)exec(QList({conf->value(QString("addbuttons")).toString(), label, keyword, action})); + else{exec(QList({conf->value(QString("updatebuttons")).toString(), key, label, action, id})); + + } +} diff --git a/mainwindow.h b/mainwindow.h index d0716c2..ac7caa7 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -93,7 +93,7 @@ public: void keyReleaseEvent(QKeyEvent *event); explicit MainWindow(QWidget *parent = 0); virtual ~MainWindow(); - + void insertbutton(const QString &, const QString &, const QString &); // Note that this will only have an effect on Symbian and Fremantle. void setOrientation(ScreenOrientation orientation);