From: Norbert Moutarde Date: Sat, 4 Jan 2014 13:05:01 +0000 (+0100) Subject: added QMutex X-Git-Url: https://git.nothing2do.fr/?a=commitdiff_plain;h=2842019c917073afbfa4876c67f20990c5ccb1bd;p=diary-mobile.git added QMutex --- diff --git a/mainwindow.cpp b/mainwindow.cpp index 6e359cc..7c4e2c6 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -126,10 +126,10 @@ CLabel* MainWindow::addWidget(const QString &key, const CLabel *a){ //QObject::connect(a, SIGNAL(pressed()), signalmap, SLOT(map())); QObject::connect(a, SIGNAL(released()), signalmap, SLOT(map())); signalmap->setMapping(a, key); - /*if(grid->count()==maxc*maxl){ + if(grid->count()==maxc*maxl){ grid->addWidget(new CLabel(QString("next")), maxc, maxl, 1, 1, Qt::AlignVCenter | Qt::AlignHCenter); return NULL; - };*/ + }; return a; } void MainWindow::action(const QString &a){ @@ -145,11 +145,14 @@ void MainWindow::action(const QString &a){ conf->setValue(a.split(QString(" "))[1], QInputDialog::getInt(this, "setInt", a.split(QString(" "))[1] , conf->value(QString(a.split(QString(" "))[1])).toInt())); } else if(a.split(QString(" "))[0]=="new"){ - /*QString b=a.remove(0,4);*/ - /*for(int c=1;csetValue(a.split(QString(" "))[1], QFileDialog::getSaveFileName(this, QString("get file"), conf->value(a.split(QString(" "))[1]).toString())); @@ -267,7 +270,7 @@ QString &MainWindow::get(int row, int column){ } int MainWindow::exec(const QList & a){ qDebug()<<"exec("<prepare(a[0]); for (int j=1; jbindValue(j-1, a[j]); @@ -283,24 +286,6 @@ int MainWindow::exec(const QList & a){ if(q->isSelect())return q->size(); else return 0; } -int MainWindow::alias(const QString & a){ - qDebug()<<"alias("<prepare(cmd); - q->bindValue(":name", a); - q->exec(); - int qs=q->size(); - qDebug()<<"q->size(alias)="<next()){ addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString())); }; @@ -444,9 +430,12 @@ QByteArray FileDownloader::downloadedData() const } void MainWindow::writeUpdate(){ qDebug()<<"downloaded : "<downloadedData().size()<<" byte"; - /* put newly downloaded sql file into database */ + QMutexLocker locker(&sql); + // put newly downloaded sql file into database int a=m->downloadedData().count('\n'); qDebug()<<"first line : "<downloadedData().split('\n').at(0); + q->exec("PRAGMA foreign_keys=OFF;"); + q->exec("BEGIN TRANSACTION;"); q->prepare(m->downloadedData().split('\n').at(0)); for(int i=1; idownloadedData().split('\n').at(i).count('$'); @@ -456,11 +445,12 @@ void MainWindow::writeUpdate(){ qDebug()<<"bind "<downloadedData().split('\n').at(i).split('$').at(j); } }; - q->exec(); + qDebug()<<"q->exec() : "<exec(); + q->exec(QString("COMMIT;")); QFile c(conf->value(QString("buttonfile")).toString()); c.open(QIODevice::Append); c.write(m->downloadedData()); - getButtons(conf->value(QString("start"), QVariant("begin")).toString()); + //getButtons(conf->value(QString("start"), QVariant("begin")).toString()); } diff --git a/mainwindow.h b/mainwindow.h index 50d208f..f05e7dd 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -95,7 +95,6 @@ public: void showExpanded(); CLabel* addWidget(const QString &, const CLabel *); - //void remWidget(const QString &); private slots: void back(); void start(); @@ -109,7 +108,6 @@ private slots: void connectDB(); void firstrun(); QString &get(int, int); - int alias(const QString &); int exec(const QList &); void entry(const QString &); void createDB(); @@ -124,7 +122,7 @@ public slots: signals: private: - //QMutex sql; + QMutex sql; QWidget *screen; QGridLayout *grid; QLabel *label;