summaryrefslogtreecommitdiff
path: root/libopie/todoevent.cpp
Unidiff
Diffstat (limited to 'libopie/todoevent.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/todoevent.cpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/libopie/todoevent.cpp b/libopie/todoevent.cpp
index b35ac9d..f744550 100644
--- a/libopie/todoevent.cpp
+++ b/libopie/todoevent.cpp
@@ -63,48 +63,66 @@ bool ToDoEvent::isCompleted() const
63bool ToDoEvent::hasDate() const 63bool ToDoEvent::hasDate() const
64{ 64{
65 return m_hasDate; 65 return m_hasDate;
66} 66}
67int ToDoEvent::priority()const 67int ToDoEvent::priority()const
68{ 68{
69 return m_priority; 69 return m_priority;
70} 70}
71QStringList ToDoEvent::allCategories()const 71QStringList ToDoEvent::allCategories()const
72{ 72{
73 return m_category; 73 return m_category;
74} 74}
75QString ToDoEvent::extra(const QString& )const 75QString ToDoEvent::extra(const QString& )const
76{ 76{
77 return QString::null; 77 return QString::null;
78} 78}
79QString ToDoEvent::summary() const 79QString ToDoEvent::summary() const
80{ 80{
81 return m_sum; 81 return m_sum;
82} 82}
83ushort ToDoEvent::progress() const 83ushort ToDoEvent::progress() const
84{ 84{
85 return m_prog; 85 return m_prog;
86} 86}
87QStringList ToDoEvent::relatedApps() const
88{
89 QStringList list;
90 QMap<QString, QArray<int> >::ConstIterator it;
91 for ( it = m_relations.begin(); it != m_relations.end(); ++it ) {
92 list << it.key();
93 }
94 return list;
95}
96QArray<int> ToDoEvent::relations( const QString& app)const
97{
98 QArray<int> tmp;
99 QMap<QString, QArray<int> >::ConstIterator it;
100 it = m_relations.find( app);
101 if ( it != m_relations.end() )
102 tmp = it.data();
103 return tmp;
104}
87void ToDoEvent::insertCategory(const QString &str ) 105void ToDoEvent::insertCategory(const QString &str )
88{ 106{
89 m_category.append( str ); 107 m_category.append( str );
90} 108}
91void ToDoEvent::clearCategories() 109void ToDoEvent::clearCategories()
92{ 110{
93 m_category.clear(); 111 m_category.clear();
94} 112}
95void ToDoEvent::setCategories(const QStringList &list ) 113void ToDoEvent::setCategories(const QStringList &list )
96{ 114{
97 m_category = list; 115 m_category = list;
98} 116}
99QDate ToDoEvent::date()const 117QDate ToDoEvent::date()const
100{ 118{
101 return m_date; 119 return m_date;
102} 120}
103 121
104QString ToDoEvent::description()const 122QString ToDoEvent::description()const
105{ 123{
106 return m_desc; 124 return m_desc;
107} 125}
108void ToDoEvent::setCompleted( bool completed ) 126void ToDoEvent::setCompleted( bool completed )
109{ 127{
110 m_isCompleted = completed; 128 m_isCompleted = completed;
@@ -118,48 +136,87 @@ void ToDoEvent::setDescription(const QString &desc )
118 m_desc = Qtopia::simplifyMultiLineSpace(desc ); 136 m_desc = Qtopia::simplifyMultiLineSpace(desc );
119} 137}
120void ToDoEvent::setExtra( const QString&, const QString& ) 138void ToDoEvent::setExtra( const QString&, const QString& )
121{ 139{
122 140
123} 141}
124void ToDoEvent::setSummary( const QString& sum ) 142void ToDoEvent::setSummary( const QString& sum )
125{ 143{
126 m_sum = sum; 144 m_sum = sum;
127} 145}
128void ToDoEvent::setCategory( const QString &cat ) 146void ToDoEvent::setCategory( const QString &cat )
129{ 147{
130 qWarning("setCategory %s", cat.latin1() ); 148 qWarning("setCategory %s", cat.latin1() );
131 m_category.clear(); 149 m_category.clear();
132 m_category << cat; 150 m_category << cat;
133} 151}
134void ToDoEvent::setPriority(int prio ) 152void ToDoEvent::setPriority(int prio )
135{ 153{
136 m_priority = prio; 154 m_priority = prio;
137} 155}
138void ToDoEvent::setDate( QDate date ) 156void ToDoEvent::setDate( QDate date )
139{ 157{
140 m_date = date; 158 m_date = date;
141} 159}
160void ToDoEvent::addRelated( const QString &app, int id )
161{
162 QMap<QString, QArray<int> >::Iterator it;
163 QArray<int> tmp;
164 it = m_relations.find( app );
165 if ( it == m_relations.end() ) {
166 tmp.resize(1 );
167 tmp[0] = id;
168 }else{
169 tmp = it.data();
170 tmp.resize( tmp.size() + 1 );
171 tmp[tmp.size() - 1] = id;
172 }
173 m_relations.replace( app, tmp );
174}
175void ToDoEvent::addRelated(const QString& app, QArray<int> ids )
176{
177 QMap<QString, QArray<int> >::Iterator it;
178 QArray<int> tmp;
179 it = m_relations.find( app);
180 if ( it == m_relations.end() ) { // not there
181 /** tmp.resize( ids.size() ); stupid??
182 */
183 tmp = ids;
184 }else{
185 tmp = it.data();
186 int offset = tmp.size()-1;
187 tmp.resize( tmp.size() + ids.size() );
188 for (uint i = 0; i < ids.size(); i++ ) {
189 tmp[offset+i] = ids[i];
190 }
191
192 }
193 m_relations.replace( app, tmp );
194}
195void ToDoEvent::clearRelated( const QString& app )
196{
197 m_relations.remove( app );
198}
142bool ToDoEvent::isOverdue( ) 199bool ToDoEvent::isOverdue( )
143{ 200{
144 if( m_hasDate ) 201 if( m_hasDate )
145 return QDate::currentDate() > m_date; 202 return QDate::currentDate() > m_date;
146 return false; 203 return false;
147} 204}
148void ToDoEvent::setProgress(ushort progress ) 205void ToDoEvent::setProgress(ushort progress )
149{ 206{
150 m_prog = progress; 207 m_prog = progress;
151} 208}
152/*! 209/*!
153 Returns a richt text string 210 Returns a richt text string
154*/ 211*/
155QString ToDoEvent::richText() const 212QString ToDoEvent::richText() const
156{ 213{
157 QString text; 214 QString text;
158 QStringList catlist; 215 QStringList catlist;
159 216
160 // Description of the todo 217 // Description of the todo
161 if ( !description().isEmpty() ){ 218 if ( !description().isEmpty() ){
162 text += "<b>" + QObject::tr( "Summary:") + "</b><br>"; 219 text += "<b>" + QObject::tr( "Summary:") + "</b><br>";
163 text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br>"; 220 text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
164 text += "<b>" + QObject::tr( "Description:" ) + "</b><br>"; 221 text += "<b>" + QObject::tr( "Description:" ) + "</b><br>";
165 text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br><br><br>"; 222 text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br><br><br>";