calendarui/caleneditor/src/caleneditorreminderfield.cpp
changeset 50 579cc610882e
parent 32 ea672fcb0ea0
child 58 ef813d54df51
equal deleted inserted replaced
49:5de72ea7a065 50:579cc610882e
    67 /*!
    67 /*!
    68 	 Destructor
    68 	 Destructor
    69  */
    69  */
    70 CalenEditorReminderField::~CalenEditorReminderField()
    70 CalenEditorReminderField::~CalenEditorReminderField()
    71 {
    71 {
    72 	// Nothing Yet
    72 	if(mReminderHash.count()) {
       
    73 		mReminderHash.clear();
       
    74 	}
    73 }
    75 }
    74 
    76 
    75 /*!
    77 /*!
    76 	 Set the reminder choices.
    78 	 Set the reminder choices.
    77  */
    79  */
   185 				if (pastEvent) {
   187 				if (pastEvent) {
   186 					mCustomReminderTimeItem->setEnabled(false);
   188 					mCustomReminderTimeItem->setEnabled(false);
   187 				}
   189 				}
   188 			}
   190 			}
   189 			QStringList reminderChoicesForAllDay;
   191 			QStringList reminderChoicesForAllDay;
   190 			reminderChoicesForAllDay << hbTrId("off") 
   192 			reminderChoicesForAllDay << hbTrId("txt_calendar_setlabel_reminder_val_off") 
   191 					<< hbTrId("On event day")
   193 					<< hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
   192 					<< hbTrId("1 day before")
   194 					<< hbTrId("txt_calendar_setlabel_reminder_val_1_day_before")
   193 					<< hbTrId("2 days before");
   195 					<< hbTrId("txt_calendar_setlabel_reminder_val_2_days_before");
   194 			mReminderItem->setContentWidgetData(QString("items"),
   196 			mReminderItem->setContentWidgetData(QString("items"),
   195 			                                    reminderChoicesForAllDay);
   197 			                                    reminderChoicesForAllDay);
   196 			QTime referenceTime(0, 0, 0);
   198 			QTime referenceTime(0, 0, 0);
   197 			// Set the appropriate reminder depending on the value of time offset.
   199 			// Set the appropriate reminder depending on the value of time offset.
   198 			reminder = mCalenEditor->editedEntry()->alarm();
   200 			reminder = mCalenEditor->editedEntry()->alarm();
   286 			reminder.setAlarmSoundName(QString(" "));
   288 			reminder.setAlarmSoundName(QString(" "));
   287 		}
   289 		}
   288 	}
   290 	}
   289 	// Set the reminder to the entry.
   291 	// Set the reminder to the entry.
   290 	mCalenEditor->editedEntry()->setAlarm(reminder);
   292 	mCalenEditor->editedEntry()->setAlarm(reminder);
   291 	mCalenEditor->addDiscardAction();
   293 	if(!mCalenEditor->isNewEntry()) {
       
   294 		mCalenEditor->addDiscardAction();
       
   295 	}
   292 }
   296 }
   293 
   297 
   294 /*!
   298 /*!
   295 	 Returns the mode index of the reminder item
   299 	 Returns the mode index of the reminder item
   296 	 \return Mode index of the reminder item
   300 	 \return Mode index of the reminder item
   398 		index = CalenEditorPrivate::ReminderTimeForAllDayItem - 1;
   402 		index = CalenEditorPrivate::ReminderTimeForAllDayItem - 1;
   399 	} 
   403 	} 
   400 	mCustomReminderTimeItem = mCalenEditorModel->insertDataFormItem(
   404 	mCustomReminderTimeItem = mCalenEditorModel->insertDataFormItem(
   401 							index,
   405 							index,
   402 							itemType,
   406 							itemType,
   403 							QString(hbTrId("Reminder Time")),
   407 							QString(hbTrId("txt_calendar_setlabel_reminder_time")),
   404 							mCalenEditorModel->invisibleRootItem());
   408 							mCalenEditorModel->invisibleRootItem());
   405 	if (currentReminderIndex() != 1){
   409 	if (currentReminderIndex() != 1){
   406 		mReminderTimeForAllDay.setHMS(18,0,0,0);
   410 		mReminderTimeForAllDay.setHMS(18,0,0,0);
   407 	} else {
   411 	} else {
   408 		mReminderTimeForAllDay.setHMS(8,0,0,0);
   412 		mReminderTimeForAllDay.setHMS(8,0,0,0);
   431  */
   435  */
   432 void CalenEditorReminderField::removeReminderTimeField()
   436 void CalenEditorReminderField::removeReminderTimeField()
   433 {
   437 {
   434 	mReminderTimeAdded = false;
   438 	mReminderTimeAdded = false;
   435 	if (mCustomReminderTimeItem) {
   439 	if (mCustomReminderTimeItem) {
   436 					QModelIndex reminderIndex =
   440 		QModelIndex reminderIndex =
   437 					        mCalenEditorModel->indexFromItem(mCustomReminderTimeItem);
   441 				mCalenEditorModel->indexFromItem(mCustomReminderTimeItem);
   438 					mCalenEditorModel->removeItem(
   442 		mCalenEditorModel->removeItem(
   439 					                              mCalenEditorModel->index(
   443 				mCalenEditorModel->index(
   440 					                            		  reminderIndex.row(), 0));
   444 						reminderIndex.row(), 0));
   441 					mCustomReminderTimeItem = NULL;
   445 		mCustomReminderTimeItem = NULL;
   442 				}
   446 	}
   443 }
   447 }
   444 
   448 
   445 /*!
   449 /*!
   446 	 Launches time picker to select time.
   450 	 Launches time picker to select time.
   447  */
   451  */