00001 /* 00002 * Copyright © 2008 Nokia Corporation. 00003 */ 00004 00005 // INCLUDE FILES 00006 #include "CalendarAPIexampleEntryItemList.h" 00007 #include "CalendarHelperEntry.h" 00008 #include "CalendarAPIexampleEntryView.h" 00009 #include <AknQueryDialog.h> 00010 00011 // ================= MEMBER FUNCTIONS ======================= 00012 00013 00014 // ---------------------------------------------------- 00015 // CCalendarAPIexampleEntryItemList::CreateSettingItemL() 00016 // Framework method to create a setting item based upon 00017 // the user id aSettingId. The client code decides what 00018 // type to construct. new (ELeave) must then be used and 00019 // the resulting pointer returned. Ownership is 00020 // thereafter base class's responsibility. 00021 // ---------------------------------------------------- 00022 // 00023 CAknSettingItem* CCalendarAPIexampleEntryItemList::CreateSettingItemL( 00024 TInt aIdentifier ) 00025 { 00026 CAknSettingItem* settingItem = NULL; 00027 00028 // create a setting item for each setting list resource 00029 switch (aIdentifier) 00030 { 00031 case ECalendarAPIexampleNameItem: 00032 { 00033 settingItem = new (ELeave) CAknTextSettingItem(aIdentifier, iName); 00034 break; 00035 } 00036 case ECalendarAPIexampleDateItem: 00037 settingItem = new (ELeave) CAknTimeOrDateSettingItem( 00038 aIdentifier, 00039 CAknTimeOrDateSettingItem::EDate, 00040 iDate); 00041 break; 00042 case ECalendarAPIexampleAlarmItem: 00043 settingItem = new (ELeave) CAknBinaryPopupSettingItem(aIdentifier, 00044 iAlarm); 00045 break; 00046 case ECalendarAPIexampleAlarmTimeItem: 00047 settingItem = new (ELeave) CAknTimeOrDateSettingItem( 00048 aIdentifier, 00049 CAknTimeOrDateSettingItem::ETime, 00050 iAlarmTime); 00051 break; 00052 case ECalendarAPIexampleAlarmDateItem: 00053 settingItem = new (ELeave) CAknTimeOrDateSettingItem( 00054 aIdentifier, 00055 CAknTimeOrDateSettingItem::EDate, 00056 iAlarmDate); 00057 break; 00058 case ECalendarAPIexampleSyncItem: 00059 settingItem = new (ELeave) CAknEnumeratedTextPopupSettingItem( aIdentifier, 00060 iSync); 00061 break; 00062 default: 00063 break; 00064 } 00065 return settingItem; 00066 00067 } 00068 00069 00070 00071 // ---------------------------------------------------- 00072 // CCalendarAPIexampleEntryItemList::SetData() 00073 // Reads values to each item in item list from the given 00074 // entry. 00075 // ---------------------------------------------------- 00076 // 00077 void CCalendarAPIexampleEntryItemList::SetData(const CCalHelperEntry& aData) 00078 { 00079 iName = aData.Name(); 00080 iDate = aData.Date(); 00081 iAlarm = (aData.Alarm() != 0); 00082 iAlarmTime = aData.AlarmTime(); 00083 iAlarmDate = aData.AlarmTime(); 00084 iSync = aData.SynchronizationMethod(); 00085 } 00086 00087 // ---------------------------------------------------- 00088 // CCalendarAPIexampleEntryItemList::SaveL() 00089 // Sets value from itemlist to the given entry. Returns 00090 // false if user input was invalid, otherwise true is 00091 // returned. 00092 // ---------------------------------------------------- 00093 // 00094 TBool CCalendarAPIexampleEntryItemList::SaveL() 00095 { 00096 StoreSettingsL(); 00097 return ETrue; 00098 } 00099 00100 void CCalendarAPIexampleEntryItemList::GetValues(TDes& aName, TTime& aDate, 00101 TBool& aAlarm, TTime& aAlarmTime, 00102 TInt& aSync) 00103 { 00104 TDateTime alarmTime = iAlarmTime.DateTime(); 00105 TDateTime alarmDate = iAlarmDate.DateTime(); 00106 00107 alarmTime.SetYear(alarmDate.Year()); 00108 alarmTime.SetMonth(alarmDate.Month()); 00109 alarmTime.SetDay(alarmDate.Day()); 00110 00111 aName = iName; 00112 aDate = iDate; 00113 aAlarm = iAlarm; 00114 aAlarmTime = alarmTime; 00115 aSync = iSync; 00116 00117 } 00118 00119 void CCalendarAPIexampleEntryItemList::SetValues( 00120 const TDesC& aName, 00121 const TDateTime& aDate, 00122 const TBool& aAlarm, 00123 const TDateTime& aAlarmTime, 00124 const TInt& aSync) 00125 { 00126 iName = aName; 00127 iDate = aDate; 00128 iAlarm = aAlarm; 00129 iAlarmTime = aAlarmTime; 00130 iAlarmDate = aAlarmTime; 00131 iSync = aSync; 00132 } 00133 00134 00135 // End of File
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.