]> git.nothing2do.fr Git - diary-mobile.git/commitdiff
i've added "sql" to action()
authorNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Wed, 7 May 2014 08:25:02 +0000 (10:25 +0200)
committerNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Wed, 7 May 2014 08:25:02 +0000 (10:25 +0200)
mainwindow.cpp
mainwindow.h

index 2ad62326c1021ba9e448394da74ed44b13a46bea..5e1f14bcc587b88e3c67e251f72bb678a66006f1 100644 (file)
@@ -171,6 +171,10 @@ void MainWindow::action(const QString &a){
     else if(b[0]==QString("clear")){
         way.clear();
     }
+    else if(b[0]==QString("sql")){
+        exec(QList<QString> ({c}));
+    }
+        
     else if(b[0]==QString("edit")){
         const QString a=QInputDialog::getText(this, QString("ID"), QString("Entrez l'ID du bouton à éditez"), QLineEdit::Normal, b[1]);
         editButtonDB(a);
@@ -433,8 +437,6 @@ void MainWindow::downloadUi(){
     connect(m, SIGNAL(downloaded()), SLOT(writeUi()));
 }
 void MainWindow::writeUi(){
-    q->exec("PRAGMA foreign_keys=OFF;");
-    q->exec("BEGIN TRANSACTION;");
     readButtons(m->downloadedData());
     m->deleteLater();
     conf->setValue(QString("lastdownload"), QDateTime::currentDateTime().toString(Qt::ISODate));
@@ -525,6 +527,8 @@ QByteArray FileDownloader::downloadedData() const
 }
 void MainWindow::readButtons(const QByteArray &in){
     qDebug()<<"readButtons";
+    q->exec("PRAGMA foreign_keys=OFF;");
+    q->exec("BEGIN TRANSACTION;");
     int a=in.count('\n');
     QString d=in.split('\n').at(0);
     conf->setValue(QString("firstline"), d);
@@ -540,8 +544,6 @@ void MainWindow::readButtons(const QByteArray &in){
         qDebug()<<"q->exec() : "<<q->exec()<<" lastError()="<<q->lastError();
 
     };
-    db.commit();
-    flush();
 
     /*QDomDocument a("buttons");
     if (!a.setContent(in)){
@@ -549,21 +551,34 @@ void MainWindow::readButtons(const QByteArray &in){
             return;
     }
     QDomElement root = a.documentElement();
-    QDomNode n = root.firstChildElement();
+    QDomNode n = root.firstChild();
     QList<QString> cmd;
     while(!n.isNull()) {
-        QDomNode e = n.firstChildElement();
-        if((cmd.size()<1)&&(n.isText()))e.toText().nodeValue();
-        qDebug()<<"n.nodeName()="<<n.nodeName()<<" n.nodevalue="<<n.nodeValue();
+        QDomNode e = n.firstChild();
+        //if((cmd.size()<1)&&(n.isText()))e.toText().nodeValue();
+        qDebug()<<"n.nodeName()="<<n.nodeName()<<" e.nodevalue="<<qPrintable(e.nodeValue());
+        if(n.nodeName()=="sql"){
+            cmd.insert(0, e.nodeValue());
+            qDebug()<<"cmd[0]="<<cmd[0];
+            }
+        else if(n.nodeName()=="b"){
+            QDomNode f=e.firstChild();
+            while(!f.isNull()){
+                qDebug()<<"f.nodeName()="<<f.nodeName()<<" e.nodeValue()="<<qPrintable(e.nodeValue())<<" e.nodeType()="<<e.nodeType();
+                f=f.nextSibling();
+            }
+        }
         while(!e.isNull()){
             qDebug()<<"e.nodeName = "<<e.nodeName()<<" e.nodevalue="<<e.nodeValue();
-            e.nextSiblingElement();
+
+            e=e.nextSibling();
 
             }
-        n.nextSiblingElement();
+        n=n.nextSibling();
         }*/
 
-
+    db.commit();
+    flush();
     emit datafilled();
 }
 void MainWindow::datasent(){
index 97daecb46ba40ebc0633ad3c16948e626f611eca..8359ee3a5cc2abfeddc9a7b0092c2d8787bef446 100644 (file)
@@ -4,7 +4,7 @@
 #include <QMainWindow>
 //#include <QtGui> don't work since 5.1 (or 5.2)
 #include <QtNetwork/QtNetwork>
-//#include <QtXml/QDomDocument>
+#include <QtXml/QDomDocument>
 #include <QGridLayout>
 #include <QLabel>
 #include <QLineEdit>