]> git.nothing2do.fr Git - diary-mobile.git/commitdiff
you can add buttons in live (edit->addButtons)
authorNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Wed, 4 Dec 2013 15:26:40 +0000 (16:26 +0100)
committerNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Wed, 4 Dec 2013 15:26:40 +0000 (16:26 +0100)
mainwindow.cpp
mainwindow.h

index 9bd6841899c0681394299a8a50d0ebfed7142239..7e928f02e56ff516e8aa152615850c53ad48f16b 100644 (file)
@@ -43,16 +43,17 @@ MainWindow::MainWindow(QWidget *parent)
     label=new QLabel("Save locally");
     setCentralWidget(screen);
     createMenuBar();
+    connectdb();
     statusBar()->addPermanentWidget(label);
     toggleMenu();
     start();
 }
 void MainWindow::start(){
     flush();
-    connectdb();
 
-    qDebug()<<exec(QString("select * from ui;"));
 
+    //qDebug()<<"select * from ui; : "<<exec(QString("select * from ui;"));//SQLite doesn't support this ?
+    exec(QString("select * from ui;"));
     r=q->record();
     qDebug()<<"nmb of col : "<<r.count();
     int labCol = r.indexOf("label");
@@ -186,8 +187,7 @@ void MainWindow::remWidget(const QString & a){
 void MainWindow::action(const QString & a){
     qDebug()<<"action("<<a<<")";
     int b=0;
-    //if(!alias(a))b=exec(a);
-    //qDebug()<<"q->size(action)="<<q->size();
+
     flush();
 
     if (a=="host")choosehost();
@@ -196,11 +196,11 @@ void MainWindow::action(const QString & a){
     else if (a=="database")choosedb();
     else if (a=="password")choosepass();
     else if (a=="file")choosefile();
-    for (int i=0; i<b; i++){
+    /*for (int i=0; i<b; i++){
         QString c=get(i, 0);
         qDebug()<<"c="<<c;
         addWidget(c,  new CLabel(c));
-    }
+    }*/
     qDebug()<<"action() end";
     start();
 
@@ -214,6 +214,7 @@ void MainWindow::createMenuBar(){
     EditMenu=new QMenu(QString("&Edit"));
     EditMenu->addAction(tr("Co&nfig"), this, SLOT(lsconfig()), QKeySequence(tr("Ctrl+N", "Edit|Co&nfig")));
     EditMenu->addAction(tr("C&reate database"), this, SLOT(createdb()), QKeySequence(tr("Ctrl+R", "Edit|Database")));
+    EditMenu->addAction(tr("A&dd buttons"), this, SLOT(addButton()), QKeySequence(tr("Ctrl+D", "Add buttons")));
     menuBar()->addMenu(EditMenu);
     HelpMenu=new QMenu(QString("&Help"));
     HelpMenu->addAction(tr("About Qt"), qApp, SLOT(aboutQt()), QKeySequence(tr("ctrl+H", "About Qt")));
@@ -319,6 +320,7 @@ void MainWindow::firstrun(){
     conf->setValue(QString("database"), QVariant("db"));
     conf->setValue(QString("password"), QVariant("pass"));
     conf->setValue(QString("file"), QVariant("diary.txt"));
+    createdb();
 }
 QString &MainWindow::get(int row, int column){
     q->seek(row);
@@ -363,10 +365,10 @@ int MainWindow::entry(){
     flux << a << endl;
     fichier.close();
     qDebug()<<a<<" content added into file";
-    q->prepare("INSERT INTO raw (texte) VALUES (:txt);");
-    //q->bindValue(":date", v.currentDateTime().toString(QString("yyyy-MM-dd hh:mm:ss")));
+    q->prepare("INSERT INTO raw (date, texte) VALUES (:date, :txt);");
+    q->bindValue(":date", v.currentDateTime().toString(QString("yyyy-MM-dd hh:mm:ss")));
     q->bindValue(":txt", texte->text());
-    //qDebug()<<":date = "<<q->boundValue(QString(":date"));
+    qDebug()<<":date = "<<q->boundValue(QString(":date"));
     qDebug()<<":txt = "<<q->boundValue(QString(":txt"));
     q->exec();
     QSqlError b=q->lastError();
@@ -375,6 +377,17 @@ int MainWindow::entry(){
 }
 int MainWindow::createdb(){
     exec(QString("create table ui(keyword text, label text, action text);"));
-    exec(QString("create table raw(date timestamp, text text);"));
+    exec(QString("create table raw(date timestamp, texte text);"));
     exec(QString("insert into ui (keyword, label, action) values ('begin', 'chat', 'select texte from raw');"));
 }
+void MainWindow::addButton(){
+    QString cmd="insert into ui (keyword, label, action) values ('";
+    QString key=QInputDialog::getText(this, QString("keyword"), QString("Entrez votre mot clé"))+"', '";
+    QString label=QInputDialog::getText(this, QString("label"), QString("Entrez le label"))+"', '";
+    QString action=QInputDialog::getText(this, QString("action"), QString("Entrez l'action"))+"');";
+
+    QString a=cmd+key+label+action;
+    qDebug()<<"a="<<a;
+    exec(a);
+};
+//insert into ui (keyword, label, action) values ('begin', 'chat', 'select texte from raw')
index 7f7872463c9285845168d02667ac580a93cb34a6..d9236a529c42a0eb567ce6469135c899a513f546 100644 (file)
@@ -86,6 +86,7 @@ private slots:
     int exec(const QString &);
     int entry();
     int createdb();
+    void addButton();
 public slots:
 
 signals: