author | zecke <zecke> | 2002-03-19 19:52:28 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-03-19 19:52:28 (UTC) |
commit | 5f6144b48cac5cc058ee06461e865ce03cda00f1 (patch) (unidiff) | |
tree | be269aa0b3370a47d15659d0d03cd4eb286655b9 /libopie | |
parent | ebbdb5c4f1c01881bd09f02d9efaa434a073a788 (diff) | |
download | opie-5f6144b48cac5cc058ee06461e865ce03cda00f1.zip opie-5f6144b48cac5cc058ee06461e865ce03cda00f1.tar.gz opie-5f6144b48cac5cc058ee06461e865ce03cda00f1.tar.bz2 |
fix the crash for harlekin
-rw-r--r-- | libopie/tododb.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libopie/tododb.cpp b/libopie/tododb.cpp index e440dfc..b1b35d0 100644 --- a/libopie/tododb.cpp +++ b/libopie/tododb.cpp | |||
@@ -74,106 +74,108 @@ public: | |||
74 | if(ok ) event.setHasDate( dumInt == 0 ? false: true ); | 74 | if(ok ) event.setHasDate( dumInt == 0 ? false: true ); |
75 | // set the date | 75 | // set the date |
76 | bool hasDa = dumInt; | 76 | bool hasDa = dumInt; |
77 | if ( hasDa ) { //parse the date | 77 | if ( hasDa ) { //parse the date |
78 | int year, day, month = 0; | 78 | int year, day, month = 0; |
79 | year = day = month; | 79 | year = day = month; |
80 | // year | 80 | // year |
81 | dummy = element->attribute("DateYear" ); | 81 | dummy = element->attribute("DateYear" ); |
82 | dumInt = dummy.toInt(&ok ); | 82 | dumInt = dummy.toInt(&ok ); |
83 | if( ok ) year = dumInt; | 83 | if( ok ) year = dumInt; |
84 | // month | 84 | // month |
85 | dummy = element->attribute("DateMonth" ); | 85 | dummy = element->attribute("DateMonth" ); |
86 | dumInt = dummy.toInt(&ok ); | 86 | dumInt = dummy.toInt(&ok ); |
87 | if(ok ) month = dumInt; | 87 | if(ok ) month = dumInt; |
88 | dummy = element->attribute("DateDay" ); | 88 | dummy = element->attribute("DateDay" ); |
89 | dumInt = dummy.toInt(&ok ); | 89 | dumInt = dummy.toInt(&ok ); |
90 | if(ok ) day = dumInt; | 90 | if(ok ) day = dumInt; |
91 | // set the date | 91 | // set the date |
92 | QDate date( year, month, day ); | 92 | QDate date( year, month, day ); |
93 | event.setDate( date); | 93 | event.setDate( date); |
94 | } | 94 | } |
95 | dummy = element->attribute("Priority" ); | 95 | dummy = element->attribute("Priority" ); |
96 | dumInt = dummy.toInt(&ok ); | 96 | dumInt = dummy.toInt(&ok ); |
97 | if(!ok ) dumInt = ToDoEvent::NORMAL; | 97 | if(!ok ) dumInt = ToDoEvent::NORMAL; |
98 | event.setPriority( dumInt ); | 98 | event.setPriority( dumInt ); |
99 | //description | 99 | //description |
100 | dummy = element->attribute("Description" ); | 100 | dummy = element->attribute("Description" ); |
101 | event.setDescription( dummy ); | 101 | event.setDescription( dummy ); |
102 | // category | 102 | // category |
103 | dummy = element->attribute("Categories" ); | 103 | dummy = element->attribute("Categories" ); |
104 | dumInt = dummy.toInt(&ok ); | 104 | dumInt = dummy.toInt(&ok ); |
105 | if(ok ) { | 105 | if(ok ) { |
106 | QArray<int> arrat(1); | 106 | QArray<int> arrat(1); |
107 | arrat[0] = dumInt; | 107 | arrat[0] = dumInt; |
108 | event.setCategory( Qtopia::Record::idsToString( arrat ) ); | 108 | event.setCategory( Qtopia::Record::idsToString( arrat ) ); |
109 | } | 109 | } |
110 | //uid | 110 | //uid |
111 | dummy = element->attribute("Uid" ); | 111 | dummy = element->attribute("Uid" ); |
112 | dumInt = dummy.toInt(&ok ); | 112 | dumInt = dummy.toInt(&ok ); |
113 | if(ok ) event.setUid( dumInt ); | 113 | if(ok ) event.setUid( dumInt ); |
114 | m_todos.append( event ); | 114 | m_todos.append( event ); |
115 | element = element->nextChild(); // next element | 115 | element = element->nextChild(); // next element |
116 | } | 116 | } |
117 | //} | 117 | //} |
118 | }else { | 118 | }else { |
119 | qWarning("could not load" ); | 119 | qWarning("could not load" ); |
120 | } | 120 | } |
121 | delete root; | 121 | delete root; |
122 | qWarning("returning" ); | ||
122 | return m_todos; | 123 | return m_todos; |
123 | } | 124 | } |
124 | }; | 125 | }; |
125 | 126 | ||
126 | } | 127 | } |
127 | 128 | ||
128 | ToDoDB::ToDoDB(const QString &fileName = QString::null, ToDoResource *res ){ | 129 | ToDoDB::ToDoDB(const QString &fileName = QString::null, ToDoResource *res ){ |
129 | m_fileName = fileName; | 130 | m_fileName = fileName; |
130 | if( fileName.isEmpty() && res == 0 ){ | 131 | if( fileName.isEmpty() && res == 0 ){ |
131 | m_fileName = Global::applicationFileName("todolist","todolist.xml");; | 132 | m_fileName = Global::applicationFileName("todolist","todolist.xml"); |
133 | res = new FileToDoResource(); | ||
132 | //qWarning("%s", m_fileName.latin1() ); | 134 | //qWarning("%s", m_fileName.latin1() ); |
133 | }else if(res == 0 ){ // let's create a ToDoResource for xml | 135 | }else if(res == 0 ){ // let's create a ToDoResource for xml |
134 | res = new FileToDoResource(); | 136 | res = new FileToDoResource(); |
135 | } | 137 | } |
136 | m_res = res; | 138 | m_res = res; |
137 | load(); | 139 | load(); |
138 | } | 140 | } |
139 | ToDoDB::~ToDoDB() | 141 | ToDoDB::~ToDoDB() |
140 | { | 142 | { |
141 | delete m_res; | 143 | delete m_res; |
142 | } | 144 | } |
143 | QValueList<ToDoEvent> ToDoDB::effectiveToDos(const QDate &from, const QDate &to, | 145 | QValueList<ToDoEvent> ToDoDB::effectiveToDos(const QDate &from, const QDate &to, |
144 | bool all ) | 146 | bool all ) |
145 | { | 147 | { |
146 | QValueList<ToDoEvent> events; | 148 | QValueList<ToDoEvent> events; |
147 | for( QValueList<ToDoEvent>::Iterator it = m_todos.begin(); it!= m_todos.end(); ++it ){ | 149 | for( QValueList<ToDoEvent>::Iterator it = m_todos.begin(); it!= m_todos.end(); ++it ){ |
148 | if( (*it).hasDate() ){ | 150 | if( (*it).hasDate() ){ |
149 | if( (*it).date() >= from && (*it).date() <= to ) | 151 | if( (*it).date() >= from && (*it).date() <= to ) |
150 | events.append( (*it) ); | 152 | events.append( (*it) ); |
151 | }else if( all ){ | 153 | }else if( all ){ |
152 | events.append( (*it) ); | 154 | events.append( (*it) ); |
153 | } | 155 | } |
154 | } | 156 | } |
155 | return events; | 157 | return events; |
156 | } | 158 | } |
157 | QValueList<ToDoEvent> ToDoDB::effectiveToDos(const QDate &from, | 159 | QValueList<ToDoEvent> ToDoDB::effectiveToDos(const QDate &from, |
158 | bool all) | 160 | bool all) |
159 | { | 161 | { |
160 | return effectiveToDos( from, QDate::currentDate(), all ); | 162 | return effectiveToDos( from, QDate::currentDate(), all ); |
161 | } | 163 | } |
162 | QValueList<ToDoEvent> ToDoDB::overDue() | 164 | QValueList<ToDoEvent> ToDoDB::overDue() |
163 | { | 165 | { |
164 | QValueList<ToDoEvent> events; | 166 | QValueList<ToDoEvent> events; |
165 | for( QValueList<ToDoEvent>::Iterator it = m_todos.begin(); it!= m_todos.end(); ++it ){ | 167 | for( QValueList<ToDoEvent>::Iterator it = m_todos.begin(); it!= m_todos.end(); ++it ){ |
166 | if( (*it).isOverdue() ) | 168 | if( (*it).isOverdue() ) |
167 | events.append((*it) ); | 169 | events.append((*it) ); |
168 | } | 170 | } |
169 | return events; | 171 | return events; |
170 | } | 172 | } |
171 | QValueList<ToDoEvent> ToDoDB::rawToDos() | 173 | QValueList<ToDoEvent> ToDoDB::rawToDos() |
172 | { | 174 | { |
173 | return m_todos; | 175 | return m_todos; |
174 | } | 176 | } |
175 | void ToDoDB::addEvent( const ToDoEvent &event ) | 177 | void ToDoDB::addEvent( const ToDoEvent &event ) |
176 | { | 178 | { |
177 | m_todos.append( event ); | 179 | m_todos.append( event ); |
178 | } | 180 | } |
179 | void ToDoDB::editEvent( const ToDoEvent &event ) | 181 | void ToDoDB::editEvent( const ToDoEvent &event ) |