From: Norbert Moutarde Date: Tue, 1 Apr 2014 15:13:26 +0000 (+0200) Subject: db and ui can be saved X-Git-Url: https://git.nothing2do.fr/?a=commitdiff_plain;h=2cff9f45128df6c2a8ec03a0eb15969d15b689e7;p=diary-mobile.git db and ui can be saved --- diff --git a/mainwindow.cpp b/mainwindow.cpp index 8db1f6a..347d08c 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -34,7 +34,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) if((conf->value(QString("first")).toInt()==1)){ qDebug()<<"second"; createDB(); - updateUi(); + downloadUi(); conf->setValue(QString("first"), 2); }; statusBar()->addPermanentWidget(label); @@ -144,21 +144,22 @@ void MainWindow::createMenuBar(){ FileMenu=new QMenu(QString("&File"), this); FileMenu->addAction(trUtf8("&Start..."), this, SLOT(start()),QKeySequence(trUtf8("Ctrl+S", "File|Start"))); FileMenu->addAction(trUtf8("&Back"), this, SLOT(back()),QKeySequence(trUtf8("Ctrl+B", "File|Back"))); - FileMenu->addAction(trUtf8("&DownloadUi"), this, SLOT(updateUi()),QKeySequence(trUtf8("Ctrl+W", "File|Downlad"))); - FileMenu->addAction(trUtf8("BackUp"), this, SLOT(sendDB()),QKeySequence(trUtf8("Ctrl+L", "File|Upload"))); - FileMenu->addAction(trUtf8("Rest&ore"), this, SLOT(restoreDB()),QKeySequence(trUtf8("Ctrl+O", "File|Restore"))); + FileMenu->addAction(trUtf8("&DownloadUi"), this, SLOT(downloadUi()),QKeySequence(trUtf8("Ctrl+W", "File|Downlad"))); + FileMenu->addAction(trUtf8("sendDB"), this, SLOT(sendDB()),QKeySequence(trUtf8("Ctrl+L", "File|Upload"))); + //FileMenu->addAction(trUtf8("Rest&ore"), this, SLOT(restoreDB()),QKeySequence(trUtf8("Ctrl+O", "File|Restore"))); FileMenu->addAction(trUtf8("Reset Ui"), this, SLOT(resetUi()), QKeySequence(trUtf8("Ctrl+Z", "File|ResetUi"))); FileMenu->addAction(trUtf8("&Quit..."), this, SLOT(quit()),QKeySequence(trUtf8("Ctrl+Q", "File|Quit"))); menuBar()->addMenu(FileMenu); EditMenu=new QMenu(QString("&Buttons")); - EditMenu->addAction(trUtf8("C&reate Database"), this, SLOT(createDB()), QKeySequence(trUtf8("Ctrl+R", "Buttons|CreateDB"))); + 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("&View/Hide menu"), this, SLOT(toggleMenu()), QKeySequence(trUtf8("Ctrl+T", "Buttons|View menu"))); menuBar()->addMenu(EditMenu); HelpMenu=new QMenu(QString("&Help")); - HelpMenu->addAction(tr("About Qt"), qApp, SLOT(aboutQt()), QKeySequence(tr("ctrl+H", "About Qt"))); + HelpMenu->addAction(tr("About Qt"), qApp, SLOT(aboutQt()), QKeySequence(tr("ctrl+H", "Help|About Qt"))); + EditMenu->addAction(trUtf8("C&reate Database"), this, SLOT(createDB()), QKeySequence(trUtf8("Ctrl+R", "Help|CreateDB"))); menuBar()->addMenu(HelpMenu); } void MainWindow::toggleMenu(){ @@ -213,11 +214,11 @@ void MainWindow::debug(int col){ void MainWindow::connectDB(){ db = QSqlDatabase::addDatabase("QSQLITE"); //db = QSqlDatabase::addDatabase("QPSQL"); - db.setHostName(conf->value(QString("host")).toString()); - db.setDatabaseName(conf->value(QString("database")).toString()); - db.setUserName(conf->value(QString("user")).toString()); - db.setPassword(conf->value(QString("password")).toString()); - db.setConnectOptions(conf->value(QString("SQLsettings")).toString());//10sec, + db.setHostName(conf->value(QString("host"), QVariant("127.0.0.1")).toString()); + db.setDatabaseName(conf->value(QString("database"), QVariant("db")).toString()); + db.setUserName(conf->value(QString("user"), QVariant("user")).toString()); + db.setPassword(conf->value(QString("password"), QVariant("pass")).toString()); + db.setConnectOptions(conf->value(QString("SQLsettings"), QVariant("connect_timeout=10000")).toString());//10sec, qDebug()<<"db.open() ? "<setValue(QString("menu"), QVariant(1)); conf->setValue(QString("download"), QVariant("https://raw.github.com/Nothing2Do/diary-mobile-android/master/ui.sql")); conf->setValue(QString("uploadDB"), QVariant("ftp://:@/db")); - conf->setValue(QString("restore"), QVariant("http://www.xxx.com/db")); + conf->setValue(QString("uploadUi"), QVariant("ftp://:@/ui.sql")); + + conf->setValue(QString("restore"), QVariant("http://www.abc.de/db")); conf->setValue(QString("start"), QVariant("begin")); conf->setValue(QString("db"), QVariant("/data/data/eu.nothing2do.diarymobile/files/db")); conf->setValue(QString("selectbuttons"), QVariant("select keyword,label,action from ui;")); @@ -285,7 +288,7 @@ void MainWindow::entry(const QString &a){ if(a=="")c=context+" : "+entry; else c=context+", "+a+" : "+entry; //qDebug()<<"c="<value(QString("file")).toString()); + QFile fichier(conf->value(QString("file"), QVariant("diary.txt")).toString()); fichier.open(QIODevice::Append | QIODevice::Text); QTextStream flux(&fichier); flux << time << " " << c << endl; @@ -322,7 +325,7 @@ void MainWindow::addButtonDB(){ return; } void MainWindow::getButtons(const QString &a){ - if(a==conf->value(QString("start")).toString())way.clear(); + if(a==conf->value(QString("start"), QVariant("begin")).toString())way.clear(); qDebug()<<"getButtons("<next()){ - addWidget(q->value(actCol).toString(), new CLabel(q->value(labCol).toString(), conf->value(QString("button")).toString())); + 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())); i++; }; qDebug()<<"end getButtons : "<value(QString("download")).toString(); - download(conf->value(QString("download")).toString()); + qDebug()<<"updateUi() : "<value(QString("download"), QVariant("https://raw.github.com/Nothing2Do/diary-mobile-android/master/ui.sql")).toString(); + download(conf->value(QString("download"), QVariant("https://raw.github.com/Nothing2Do/diary-mobile-android/master/ui.sql")).toString()); connect(m, SIGNAL(downloaded()), SLOT(writeUi())); } void MainWindow::writeUi(){ @@ -371,16 +374,15 @@ void MainWindow::sendDB(){ qDebug()<<"sendDB() : "<value(QString("uploadDB")).toString(); QUrl upload(conf->value(QString("uploadDB")).toString()); net=new QNetworkAccessManager(this); - QFile b(conf->value(QString("db")).toString()); + QFile b(conf->value(QString("db"), QVariant("/data/data/eu.nothing2do.diarymobile/files/db")).toString()); b.open(QIODevice::ReadOnly); QByteArray c(b.readAll()); rep=net->put(QNetworkRequest(upload), c); qDebug()<<"net->put : "<put(QNetworkRequest(upload),data); - connect(rep, SIGNAL(finished()), this, SLOT(datasend())); + connect(rep, SIGNAL(finished()), this, SLOT(datasent())); system("exit"); } - void MainWindow::back(){ if(way.size()-1>0){ flush(); @@ -390,7 +392,7 @@ void MainWindow::back(){ } else { flush(); - getButtons(conf->value(QString("start")).toString()); + getButtons(conf->value(QString("start"), QVariant("begin")).toString()); //QMessageBox::information(this, QString("Erreur"), QString("Vous êtes déja au départ.")); } @@ -459,13 +461,13 @@ void MainWindow::readButtons(const QByteArray &in){ flush(); emit datafilled(); } -void MainWindow::datasend(){ - qDebug()<<"datasend"; +void MainWindow::datasent(){ + qDebug()<<"datasent"; QString texte="Upload finish : "; - texte=texte+conf->value(QString("upload")).toString(); + texte=texte+conf->value(QString("uploadDB")).toString(); qDebug()<<"texte : "<({"delete from ui;"})); @@ -478,29 +480,41 @@ void MainWindow::downloadDB(){ } void MainWindow::writeDB(){ system("su"); - QFile a(conf->value(QString("db")).toString()); + QFile a(conf->value(QString("db"), QVariant("/data/data/eu.nothing2do.diarymobile/files/db")).toString()); a.open(QIODevice::WriteOnly | QIODevice::Text); QTextStream b(&a); b<downloadedData(); system("exit"); } - void MainWindow::download(const QString & a){ qDebug()<<"download() : "< ({conf->value(QString("selectbuttons")).toString()})); - QFile a(conf->value(QString("buttonfile")).toString()); - a.open(QIODevice::WriteOnly | QIODevice::Text); + exec(QList ({conf->value(QString("selectbuttons"), QVariant("select keyword,label,action from ui;")).toString()})); + QFile a(conf->value(QString("buttonfile"), QVariant("ui.sql")).toString()); + a.open(QIODevice::WriteOnly|QIODevice::Text); QTextStream b(&a); - b<value("firstline").toString()<<"\n"; + b<value("firstline", "INSERT INTO ui (keyword, label, action) VALUES(?, ?, ?);").toString()<<"\n"; while (q->next()) { - for (int i=0; i<3; i++){ - b<value(i).toString(); + for (int i=0; i<2; i++){ + b<value(i).toString()<<"$"; } - b<<"\n"; + b<value(2).toString()<<"\n"; } a.close(); + QMessageBox::information(this, QString("end"), conf->value(QString("buttonfile"), QVariant("ui.sql")).toString()); + qDebug()<<"a.open()="<value(QString("uploadUi"), QVariant("ftp://:@ftp.abc.de/ui.sql")).toString()); + net=new QNetworkAccessManager(this); + rep=net->put(QNetworkRequest(upload), a.readAll()); + qDebug()<<"net->put : "<value(QString("uploadUi")).toString(); + QMessageBox::information(this, "Uisent", texte); } diff --git a/mainwindow.h b/mainwindow.h index 86e58a0..3b3ddc1 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -96,7 +96,7 @@ public: void showExpanded(); CLabel* addWidget(const QString &, const CLabel *); private slots: - void datasend(); + void datasent(); void back(); void start(); void quit(); @@ -116,9 +116,10 @@ private slots: void writeDB(); void editButtonDB(); void getButtons(const QString &); - void updateUi(); - void writeUpdate(); + void downloadUi(); + void writeUi(); void sendDB(); + void Uisent(); void savButtons(); void readButtons(const QByteArray &); void resetUi();