summaryrefslogtreecommitdiffabout
path: root/korganizer/koeditorgeneraltodo.cpp
Unidiff
Diffstat (limited to 'korganizer/koeditorgeneraltodo.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koeditorgeneraltodo.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/korganizer/koeditorgeneraltodo.cpp b/korganizer/koeditorgeneraltodo.cpp
index 10d9a8c..d32d5a5 100644
--- a/korganizer/koeditorgeneraltodo.cpp
+++ b/korganizer/koeditorgeneraltodo.cpp
@@ -163,169 +163,167 @@ void KOEditorGeneralTodo::initCompletion(QWidget *parent, QBoxLayout *topLayout)
163 mCompletedCombo->setSizePolicy( QSizePolicy( QSizePolicy::Preferred,QSizePolicy::Preferred) ); 163 mCompletedCombo->setSizePolicy( QSizePolicy( QSizePolicy::Preferred,QSizePolicy::Preferred) );
164 mCompletedLabel->setSizePolicy( QSizePolicy( QSizePolicy::Expanding,QSizePolicy::Preferred) ); 164 mCompletedLabel->setSizePolicy( QSizePolicy( QSizePolicy::Expanding,QSizePolicy::Preferred) );
165 connect(mCompleteDateEdit,SIGNAL(setTimeTo(QTime)),mCompleteTimeEdit,SLOT(setTime(QTime))); 165 connect(mCompleteDateEdit,SIGNAL(setTimeTo(QTime)),mCompleteTimeEdit,SLOT(setTime(QTime)));
166 166
167 if ( QApplication::desktop()->width() <= 480 ) { 167 if ( QApplication::desktop()->width() <= 480 ) {
168 if ( QApplication::desktop()->width() < 320 ) 168 if ( QApplication::desktop()->width() < 320 )
169 mCompleteDateEdit->setMaximumWidth( 85 ); 169 mCompleteDateEdit->setMaximumWidth( 85 );
170 else 170 else
171 mCompleteDateEdit->setMaximumWidth( 140 ); 171 mCompleteDateEdit->setMaximumWidth( 140 );
172 topLayout->setSpacing( 0 ); 172 topLayout->setSpacing( 0 );
173 } 173 }
174} 174}
175 175
176void KOEditorGeneralTodo::initPriority(QWidget *parent, QBoxLayout *topLayout) 176void KOEditorGeneralTodo::initPriority(QWidget *parent, QBoxLayout *topLayout)
177{ 177{
178 178
179 QHBox* h = new QHBox ( parent ); 179 QHBox* h = new QHBox ( parent );
180 topLayout->addWidget( h ); 180 topLayout->addWidget( h );
181 QLabel *priorityLabel = new QLabel(i18n("Priority:"), h); 181 QLabel *priorityLabel = new QLabel(i18n("Priority:"), h);
182 // topLayout->addWidget(priorityLabel); 182 // topLayout->addWidget(priorityLabel);
183 mPriorityCombo = new QComboBox( h ); 183 mPriorityCombo = new QComboBox( h );
184 mPriorityCombo->insertItem(i18n("1 (high)")); 184 mPriorityCombo->insertItem(i18n("1 (high)"));
185 mPriorityCombo->insertItem(i18n("2")); 185 mPriorityCombo->insertItem(i18n("2"));
186 mPriorityCombo->insertItem(i18n("3")); 186 mPriorityCombo->insertItem(i18n("3"));
187 mPriorityCombo->insertItem(i18n("4")); 187 mPriorityCombo->insertItem(i18n("4"));
188 mPriorityCombo->insertItem(i18n("5 (low)")); 188 mPriorityCombo->insertItem(i18n("5 (low)"));
189 //topLayout->addWidget(mPriorityCombo); 189 //topLayout->addWidget(mPriorityCombo);
190} 190}
191 191
192void KOEditorGeneralTodo::initStatus(QWidget *parent,QBoxLayout *topLayout) 192void KOEditorGeneralTodo::initStatus(QWidget *parent,QBoxLayout *topLayout)
193{ 193{
194 QBoxLayout *statusLayout = new QHBoxLayout(topLayout); 194 QBoxLayout *statusLayout = new QHBoxLayout(topLayout);
195 195
196 initCompletion( parent, statusLayout ); 196 initCompletion( parent, statusLayout );
197 197
198 statusLayout->addStretch( 1 ); 198 statusLayout->addStretch( 1 );
199 199
200 initPriority( parent, statusLayout ); 200 initPriority( parent, statusLayout );
201} 201}
202 202
203void KOEditorGeneralTodo::setDefaults(QDateTime due,bool allDay) 203void KOEditorGeneralTodo::setDefaults(QDateTime due,bool allDay)
204{ 204{
205 205
206 mSummaryEdit->load(KOLocationBox::SUMMARYTODO); 206 mSummaryEdit->load(KOLocationBox::SUMMARYTODO);
207 mLocationEdit->load(KOLocationBox::LOCATION); 207 mLocationEdit->load(KOLocationBox::LOCATION);
208 KOEditorGeneral::setDefaults(allDay); 208 KOEditorGeneral::setDefaults(allDay);
209 209
210 mTimeButton->setChecked( !allDay ); 210 mTimeButton->setChecked( !allDay );
211 if(mTimeButton->isChecked()) { 211 mTimeButton->setEnabled( !allDay );
212 mTimeButton->setEnabled(true);
213 }
214 else {
215 mTimeButton->setEnabled(false);
216 }
217 212
218 enableTimeEdits( !allDay ); 213 enableTimeEdits( !allDay );
219 if ( due.isValid() ) { 214 if ( due.isValid() ) {
220 mDueCheck->setChecked(true); 215 mDueCheck->setChecked(true);
221 enableDueEdit(true); 216 enableDueEdit(true);
222 alarmDisable(false); 217 alarmDisable(false);
223 } else { 218 } else {
224 mDueCheck->setChecked(false); 219 mDueCheck->setChecked(false);
225 enableDueEdit(false); 220 enableDueEdit(false);
226 due = QDateTime::currentDateTime().addDays(7); 221 due = QDateTime::currentDateTime().addDays(7);
227 alarmDisable(true); 222 alarmDisable(true);
228 } 223 }
229 224
230 225
231 mStartCheck->setChecked(false); 226 mStartCheck->setChecked(false);
232 enableStartEdit(false); 227 enableStartEdit(false);
233 228
234 mDueDateEdit->setDate(due.date()); 229 mDueDateEdit->setDate(due.date());
235 mDueTimeEdit->setTime(due.time()); 230 mDueTimeEdit->setTime(due.time());
236 due = due.addDays(-7); 231 due = due.addDays(-7);
237 mStartDateEdit->setDate(due.date()); 232 mStartDateEdit->setDate(due.date());
238 mStartTimeEdit->setTime(due.time()); 233 mStartTimeEdit->setTime(due.time());
239 234
240 mPriorityCombo->setCurrentItem(2); 235 mPriorityCombo->setCurrentItem(2);
241 mCompletedLabel->setText(i18n(" completed"));; 236 mCompletedLabel->setText(i18n(" completed"));;
242 mCompletedCombo->setCurrentItem(0); 237 mCompletedCombo->setCurrentItem(0);
243 mCompleteDateEdit->hide(); 238 mCompleteDateEdit->hide();
244 mCompleteTimeEdit->hide(); 239 mCompleteTimeEdit->hide();
245} 240}
246 241
247void KOEditorGeneralTodo::readTodo(Todo *todo) 242void KOEditorGeneralTodo::readTodo(Todo *todo)
248{ 243{
249 244
250 mSummaryEdit->load(KOLocationBox::SUMMARYTODO); 245 mSummaryEdit->load(KOLocationBox::SUMMARYTODO);
251 mLocationEdit->load(KOLocationBox::LOCATION); 246 mLocationEdit->load(KOLocationBox::LOCATION);
252 KOEditorGeneral::readIncidence(todo); 247 KOEditorGeneral::readIncidence(todo);
253 248
254 QDateTime dueDT; 249 QDateTime dueDT;
250 mTimeButton->setChecked( !todo->doesFloat() );
251 mTimeButton->setEnabled( !todo->doesFloat() );
255 252
256 if (todo->hasDueDate()) { 253 if (todo->hasDueDate()) {
257 enableAlarmEdit(true); 254 enableAlarmEdit(true);
258 dueDT = todo->dtDue(); 255 dueDT = todo->dtDue();
259 mDueDateEdit->setDate(todo->dtDue().date()); 256 mDueDateEdit->setDate(todo->dtDue().date());
260 mDueTimeEdit->setTime(todo->dtDue().time()); 257 mDueTimeEdit->setTime(todo->dtDue().time());
261 mDueCheck->setChecked(true); 258 mDueCheck->setChecked(true);
259 mTimeButton->setEnabled( true );
262 } else { 260 } else {
263 alarmDisable(true); 261 alarmDisable(true);
264 mDueDateEdit->setEnabled(false); 262 mDueDateEdit->setEnabled(false);
265 mDueTimeEdit->setEnabled(false); 263 mDueTimeEdit->setEnabled(false);
266 mDueDateEdit->setDate(QDate::currentDate()); 264 mDueDateEdit->setDate(QDate::currentDate());
267 mDueTimeEdit->setTime(QTime::currentTime()); 265 mDueTimeEdit->setTime(QTime::currentTime());
268 mDueCheck->setChecked(false); 266 mDueCheck->setChecked(false);
269 } 267 }
270 268
271 if (todo->hasStartDate()) { 269 if (todo->hasStartDate()) {
272 mStartDateEdit->setDate(todo->dtStart().date()); 270 mStartDateEdit->setDate(todo->dtStart().date());
273 mStartTimeEdit->setTime(todo->dtStart().time()); 271 mStartTimeEdit->setTime(todo->dtStart().time());
274 mStartCheck->setChecked(true); 272 mStartCheck->setChecked(true);
273 mTimeButton->setEnabled( true );
275 } else { 274 } else {
276 mStartDateEdit->setEnabled(false); 275 mStartDateEdit->setEnabled(false);
277 mStartTimeEdit->setEnabled(false); 276 mStartTimeEdit->setEnabled(false);
278 mStartDateEdit->setDate(QDate::currentDate()); 277 mStartDateEdit->setDate(QDate::currentDate());
279 mStartTimeEdit->setTime(QTime::currentTime()); 278 mStartTimeEdit->setTime(QTime::currentTime());
280 mStartCheck->setChecked(false); 279 mStartCheck->setChecked(false);
281 } 280 }
282 281
283 mTimeButton->setChecked( !todo->doesFloat() );
284 282
285 mCompletedCombo->setCurrentItem(todo->percentComplete() / 20); 283 mCompletedCombo->setCurrentItem(todo->percentComplete() / 20);
286 if (todo->isCompleted() && todo->hasCompletedDate()) { 284 if (todo->isCompleted() && todo->hasCompletedDate()) {
287 mCompleted = todo->completed(); 285 mCompleted = todo->completed();
288 } 286 }
289 setCompletedDate(); 287 setCompletedDate();
290 288
291 mPriorityCombo->setCurrentItem(todo->priority()-1); 289 mPriorityCombo->setCurrentItem(todo->priority()-1);
292} 290}
293 291
294void KOEditorGeneralTodo::writeTodo(Todo *todo) 292void KOEditorGeneralTodo::writeTodo(Todo *todo)
295{ 293{
296 KOEditorGeneral::writeIncidence(todo); 294 KOEditorGeneral::writeIncidence(todo);
297 295
298 // temp. until something better happens. 296 // temp. until something better happens.
299 QString tmpStr; 297 QString tmpStr;
300 298
301 todo->setHasDueDate(mDueCheck->isChecked()); 299 todo->setHasDueDate(mDueCheck->isChecked());
302 todo->setHasStartDate(mStartCheck->isChecked()); 300 todo->setHasStartDate(mStartCheck->isChecked());
303 301
304 QDate tmpDate; 302 QDate tmpDate;
305 QTime tmpTime; 303 QTime tmpTime;
306 QDateTime tmpDT; 304 QDateTime tmpDT;
307 if ( mTimeButton->isChecked() ) { 305 if ( mTimeButton->isChecked() ) {
308 todo->setFloats(false); 306 todo->setFloats(false);
309 307
310 // set due date/time 308 // set due date/time
311 tmpDate = mDueDateEdit->date(); 309 tmpDate = mDueDateEdit->date();
312 tmpTime = mDueTimeEdit->getTime(); 310 tmpTime = mDueTimeEdit->getTime();
313 tmpDT.setDate(tmpDate); 311 tmpDT.setDate(tmpDate);
314 tmpDT.setTime(tmpTime); 312 tmpDT.setTime(tmpTime);
315 todo->setDtDue(tmpDT); 313 todo->setDtDue(tmpDT);
316 314
317 // set start date/time 315 // set start date/time
318 tmpDate = mStartDateEdit->date(); 316 tmpDate = mStartDateEdit->date();
319 tmpTime = mStartTimeEdit->getTime(); 317 tmpTime = mStartTimeEdit->getTime();
320 tmpDT.setDate(tmpDate); 318 tmpDT.setDate(tmpDate);
321 tmpDT.setTime(tmpTime); 319 tmpDT.setTime(tmpTime);
322 todo->setDtStart(tmpDT); 320 todo->setDtStart(tmpDT);
323 } else { 321 } else {
324 todo->setFloats(true); 322 todo->setFloats(true);
325 323
326 // need to change this. 324 // need to change this.
327 tmpDate = mDueDateEdit->date(); 325 tmpDate = mDueDateEdit->date();
328 tmpTime.setHMS(0,0,0); 326 tmpTime.setHMS(0,0,0);
329 tmpDT.setDate(tmpDate); 327 tmpDT.setDate(tmpDate);
330 tmpDT.setTime(tmpTime); 328 tmpDT.setTime(tmpTime);
331 todo->setDtDue(tmpDT); 329 todo->setDtDue(tmpDT);