work on alarm
authorpavelpa <pavelpa@localhost>
Tue, 19 Jan 2010 15:42:59 +0000 (15:42 +0000)
committerpavelpa <pavelpa@localhost>
Tue, 19 Jan 2010 15:42:59 +0000 (15:42 +0000)
src/alarm/alarm.h
src/gui/alarmdialog.cpp
src/gui/alarmdialog.h
src/sql/sqlengine.cpp
src/src.pro

index c68b554..61834e7 100644 (file)
@@ -9,7 +9,7 @@ extern "C"
 #include <alarmd/libalarm.h>
 }
 
-#define APPID "alarm-example"
+#define APPID "fosdem-alarm"
 
 class Alarm : public QObject
 {
index 413ca89..d1411f9 100644 (file)
@@ -2,9 +2,14 @@
 
 #include <QApplication>
 #include <alarm.h>
+#include <event.h>
+
+#include <QDir>
 
 const int SNOOZE_TIME = 5; // in minutes
 
+const int confId = 1;
+
 AlarmDialog::AlarmDialog(int argc, char *argv[], QWidget *aParent)
     : QDialog(aParent)
     , mEventId(0)
@@ -26,15 +31,23 @@ AlarmDialog::AlarmDialog(int argc, char *argv[], QWidget *aParent)
         mAlarmId = QString(argv[2]).toInt();
     }
 
-    connect(stopPB, SIGNAL(clicked()), qApp, SLOT(quit()));
+    connect(stopPB, SIGNAL(clicked()), SLOT(closeDialog()));
     connect(appPB, SIGNAL(clicked()), SLOT(runApp()));
     connect(snoozePB, SIGNAL(clicked()), SLOT(snooze()));
 
+    QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE");
+    database.setDatabaseName(QDir::homePath() + "/.fosdem/fosdem.sqlite");
+    database.open();
+
+    Event event = Event::getById(mEventId,confId);
     message->setText(QString(argv[1]).append("-").append(QString(argv[2])));
+    message->setText(event.title());
+    setWindowTitle(event.title());
 }
 
 void AlarmDialog::runApp()
 {
+    qWarning("runApp(): NOT IMPLEMENTED YET");
 }
 
 void AlarmDialog::snooze()
@@ -47,3 +60,12 @@ void AlarmDialog::snooze()
     qApp->quit();
 }
 
+void AlarmDialog::closeDialog()
+{
+    // before closing the dialog, it is necessary to remove alarm flag from the DB
+    Event event = Event::getById(mEventId,confId);
+    event.setHasAlarm(false);
+    event.update("alarm");
+    qApp->quit();
+}
+
index c77031a..58d461e 100644 (file)
@@ -13,6 +13,7 @@ class AlarmDialog : public QDialog, Ui::AlarmDialog
     private slots:
         void runApp();
         void snooze();
+        void closeDialog();
     private:
         int mEventId; // event ID obtained from 'schedule'
         int mAlarmId; // cookie assigned by alarmd
index 73c4497..e135f43 100644 (file)
@@ -51,7 +51,6 @@ void SqlEngine::initialize()
     if(!QDir::home().exists(".fosdem"))
         QDir::home().mkdir(".fosdem");
     databaseName = QDir::homePath() + "/.fosdem/" + "fosdem.sqlite";
-qDebug()<<databaseName;
     login("QSQLITE",databaseName);
 }
 
index 374b7b0..fb46540 100644 (file)
@@ -3,5 +3,5 @@ TEMPLATE = subdirs
 SUBDIRS  = orm mvc sql gui app
 maemo : SUBDIRS += alarm
 #SUBDIRS += test
-CONFIG += ordered debug
+CONFIG += ordered