Changeset b6cd05c
- Timestamp:
- 01/18/10 16:13:01 (13 years ago)
- Branches:
- master, qt5
- Children:
- f6300c7
- Parents:
- d23aa6a
- Location:
- src
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
src/alarm/alarm.cpp
rd23aa6a rb6cd05c 84 84 } 85 85 86 bool Alarm::hasEventAlarm(int aEventId) 87 { 88 cookie_t *list = 0; 89 cookie_t cookie = 0; 90 alarm_event_t *event = 0; 91 92 bool eventHasAlarm = false; 93 94 // query the APPID's list of alarms 95 if( (list = alarmd_event_query(0,0, 0,0, APPID)) != 0 ) // query OK 96 { 97 for( int i = 0; (cookie = list[i]) != 0; ++i ) 98 { 99 alarm_event_delete(event); 100 101 // get the event for specified alarm cookie (alarmId) 102 if( (event = alarmd_event_get(cookie)) == 0 ) 103 { 104 // should we inform user about it ??? 105 continue; 106 } 107 108 if(aEventId==atoi(alarm_event_get_message(event))) 109 { 110 eventHasAlarm = true; 111 break; 112 } 113 } 114 } 115 else 116 { 117 // query failed 118 } 119 120 free(list); 121 alarm_event_delete(event); 122 123 return eventHasAlarm; 124 } 125 -
src/alarm/alarm.h
rd23aa6a rb6cd05c 20 20 int addAlarm(int aEventId, const QDateTime &aDateTime); 21 21 void deleteAlarm(int aEventId); 22 static bool hasEventAlarm(int aEventId); 22 23 signals: 23 24 void alarmAdded(int aEventId); -
src/mvc/delegate.cpp
rd23aa6a rb6cd05c 84 84 85 85 // draw Controls 86 // favourite 86 87 if(static_cast<Event*>(index.internalPointer())->isFavourite()) 87 88 painter->drawImage(mControls[FavouriteControlOn]->drawPoint(option.rect),*mControls[FavouriteControlOn]->image()); 88 89 else 89 90 painter->drawImage(mControls[FavouriteControlOff]->drawPoint(option.rect),*mControls[FavouriteControlOff]->image()); 90 painter->drawImage(mControls[AlarmControlOn]->drawPoint(option.rect),*mControls[AlarmControlOn]->image()); 91 // alarm 92 if(static_cast<Event*>(index.internalPointer())->hasAlarm()) 93 painter->drawImage(mControls[AlarmControlOn]->drawPoint(option.rect),*mControls[AlarmControlOn]->image()); 94 else 95 painter->drawImage(mControls[AlarmControlOff]->drawPoint(option.rect),*mControls[AlarmControlOff]->image()); 96 // map 91 97 painter->drawImage(mControls[MapControl]->drawPoint(option.rect),*mControls[MapControl]->image()); 92 98 } … … 225 231 // ALARM ICONs 226 232 // on 227 control = new Control(AlarmControlOn,QString(":icons/alarm-o ff.png"));233 control = new Control(AlarmControlOn,QString(":icons/alarm-on.png")); 228 234 p = mControls[FavouriteControlOn]->drawPoint(); 229 235 p.setX(p.x()-control->image()->width()-SPACER); -
src/mvc/event.cpp
rd23aa6a rb6cd05c 6 6 QString const Event::sTable1Name = QString("event"); 7 7 QString const Event::sTable2Name = QString("virtual_event"); 8 int const Event::sTable1ColCount = 8; // see 'toRecord()' for more details8 int const Event::sTable1ColCount = 9; // see 'toRecord()' for more details 9 9 int const Event::sTable2ColCount = 5; // see 'toRecord()' for more details 10 10 … … 19 19 << QSqlField("language", QVariant::String) 20 20 << QSqlField("favourite", QVariant::Bool) 21 << QSqlField("alarm", QVariant::Bool) 21 22 /* 'columns' from Table2 */ 22 23 << QSqlField("tag", QVariant::String) -
src/mvc/event.h
rd23aa6a rb6cd05c 40 40 QString language() const { return value("language").toString(); } 41 41 bool isFavourite() const { return value("favourite").toBool(); } 42 bool hasAlarm() const { return value("alarm").toBool(); } 42 43 // Table 2 : virtual table for FTS (Full Text Search) 43 44 QString tag() const { return value("tag").toString(); } … … 56 57 void setLanguage(const QString& language) { setValue("language", language); } 57 58 void setFavourite(bool favourite) { setValue("favourite", (int)favourite); } 59 void setHasAlarm(bool alarm) { setValue("alarm", (int)alarm); } 58 60 // Table 2 : virtual table for FTS (Full Text Search) 59 61 void setTag(const QString& tag) { setValue("tag", tag); } -
src/mvc/eventmodel.cpp
rd23aa6a rb6cd05c 125 125 Group group = mGroups[i]; 126 126 beginRemoveRows(idx,0,group.mChildCount-1); 127 bool ok =removeRows(0,group.mChildCount,idx);127 removeRows(0,group.mChildCount,idx); 128 128 endRemoveRows(); 129 129 //qDebug() << "removing " << group.mChildCount << " events from group:" << i << idx.data() << ":" << ok; … … 148 148 Group group = mGroups[i]; 149 149 beginRemoveRows(idx,0,group.mChildCount-1); 150 bool ok =removeRows(0,group.mChildCount,idx);150 removeRows(0,group.mChildCount,idx); 151 151 endRemoveRows(); 152 152 //qDebug() << "removing " << group.mChildCount << " events from group:" << i << idx.data() << ":" << ok; -
src/mvc/treeview.cpp
rd23aa6a rb6cd05c 58 58 { 59 59 // handle Alarm Control clicked 60 qDebug() << "ALARM CLICKED: " << qVariantValue<QString>(aIndex.data()); 60 Event event = Event::getById(aIndex.data().toInt(),1); 61 if(event.hasAlarm()) 62 { 63 static_cast<Event*>(aIndex.internalPointer())->setHasAlarm(false); // list of events 64 event.setHasAlarm(false); // update DB 65 } 66 else 67 { 68 static_cast<Event*>(aIndex.internalPointer())->setHasAlarm(true); // list of events 69 event.setHasAlarm(true); 70 } 71 qDebug() << " ALARM [" << qVariantValue<QString>(aIndex.data()) << "] -> " << event.hasAlarm(); 72 event.update("alarm"); 73 // since the Alarm icon has changed, update TreeView accordingly 74 static_cast<EventModel*>(model())->emitDataChangedSignal(aIndex,aIndex); 75 61 76 } 62 77 break; -
src/sql/sqlengine.cpp
rd23aa6a rb6cd05c 91 91 // VIRTUAL_EVENT is for Full-Text-Serach Support 92 92 QDateTime startDateTime = QDateTime(QDate::fromString(aEvent["date"],DATE_FORMAT),QTime::fromString(aEvent["start"],TIME_FORMAT)); 93 QString values = QString("'%1', '%2', '%3', '%4', '%5', '%6', '%7', '%8' ") \93 QString values = QString("'%1', '%2', '%3', '%4', '%5', '%6', '%7', '%8', '%9'") \ 94 94 .arg(aEvent["conference_id"]) \ 95 95 .arg(aEvent["id"]) \ … … 99 99 .arg(aEvent["type"]) \ 100 100 .arg(aEvent["language"]) \ 101 .arg("0"); // not favourite when added 102 103 QString query = QString("INSERT INTO EVENT (xid_conference, id, start, duration, xid_activity, type, language, favourite) VALUES (%1)").arg(values); 101 .arg("0") \ 102 .arg("0"); 103 104 QString query = QString("INSERT INTO EVENT (xid_conference, id, start, duration, xid_activity, type, language, favourite, alarm) VALUES (%1)").arg(values); 104 105 QSqlQuery result (query, db); 105 106 //LOG_AUTOTEST(query); … … 120 121 result2.bindValue(3,aEvent["description"]); 121 122 result2.exec(); 122 123 //LOG_AUTOTEST(query2); 124 qDebug() << query2; 123 //LOG_AUTOTEST(query2); 125 124 } 126 125 } … … 235 234 language VARCHAR, \ 236 235 favourite INTEGER DEFAULT 0, \ 236 alarm INTEGER DEFAULT 0, \ 237 237 PRIMARY KEY (xid_conference,id), \ 238 238 FOREIGN KEY(xid_conference) REFERENCES CONFERENCE(id) \ 239 239 FOREIGN KEY(xid_activity) REFERENCES ACTIVITY(id))"); 240 240 241 // TBD Virtual tables compatibility (waiting for Marek). Temporary non virtual VIRTUAL_TABLE below: To be deleted 242 /* query.exec("CREATE VIRTUAL TABLE VIRTUAL_EVENT using fts3 ( \ 243 xid_conference INTEGER NOT NULL, \ 244 id INTEGER NOT NULL , \ 245 tag VARCHAR,title VARCHAR NOT NULL , \ 246 subtitle VARCHAR, \ 247 abstract VARCHAR, \ 248 description VARCHAR, \ 249 PRIMARY KEY (xid_conference,id))"); 250 */ 241 #ifdef MAEMO 242 // TBD: MAEMO Virtual tables compatibility (waiting for Marek). 243 // MAEMO sqlite Qt driver doesn't provide FTS support by default - use the following HACK 251 244 query.exec("CREATE TABLE VIRTUAL_EVENT ( \ 252 245 xid_conference INTEGER NOT NULL, \ … … 257 250 description VARCHAR, \ 258 251 PRIMARY KEY (xid_conference,id))"); 252 #else 253 query.exec("CREATE VIRTUAL TABLE VIRTUAL_EVENT using fts3 ( \ 254 xid_conference INTEGER NOT NULL, \ 255 id INTEGER NOT NULL , \ 256 tag VARCHAR,title VARCHAR NOT NULL , \ 257 subtitle VARCHAR, \ 258 abstract VARCHAR, \ 259 description VARCHAR, \ 260 PRIMARY KEY (xid_conference,id))"); 261 #endif 259 262 260 263 query.exec("CREATE TABLE EVENT_PERSON ( \
Note: See TracChangeset
for help on using the changeset viewer.