--- a/agendainterface/agendautil/bwins/agendainterfaceu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/agendainterface/agendautil/bwins/agendainterfaceu.def Thu Sep 02 20:25:23 2010 +0300
@@ -57,124 +57,124 @@
?lastModifiedDateTime@AgendaEntry@@QBE?AVQDateTime@@XZ @ 56 NONAME ; class QDateTime AgendaEntry::lastModifiedDateTime(void) const
?attendees@AgendaEntry@@QBEABV?$QList@VAgendaAttendee@@@@XZ @ 57 NONAME ; class QList<class AgendaAttendee> const & AgendaEntry::attendees(void) const
?setInterval@AgendaRepeatRule@@QAEXH@Z @ 58 NONAME ; void AgendaRepeatRule::setInterval(int)
- ?store@AgendaUtil@@QAEKAAVAgendaEntry@@W4RecurrenceRange@1@@Z @ 59 NONAME ; unsigned long AgendaUtil::store(class AgendaEntry &, enum AgendaUtil::RecurrenceRange)
- ??8AgendaGeoValue@@QBE_NABV0@@Z @ 60 NONAME ; bool AgendaGeoValue::operator==(class AgendaGeoValue const &) const
- ?id@AgendaEntry@@QBEKXZ @ 61 NONAME ; unsigned long AgendaEntry::id(void) const
- ?setByDay@AgendaRepeatRule@@QAEXABV?$QList@W4Day@AgendaRepeatRule@@@@@Z @ 62 NONAME ; void AgendaRepeatRule::setByDay(class QList<enum AgendaRepeatRule::Day> const &)
- ?setUntil@AgendaRepeatRule@@QAEXABVQDateTime@@@Z @ 63 NONAME ; void AgendaRepeatRule::setUntil(class QDateTime const &)
- ?setType@AgendaRepeatRule@@QAEXW4RuleType@1@@Z @ 64 NONAME ; void AgendaRepeatRule::setType(enum AgendaRepeatRule::RuleType)
- ?interval@AgendaRepeatRule@@QBEHXZ @ 65 NONAME ; int AgendaRepeatRule::interval(void) const
- ?rDates@AgendaEntry@@QBE?AV?$QList@VQDate@@@@XZ @ 66 NONAME ; class QList<class QDate> AgendaEntry::rDates(void) const
- ?repeatRuleStart@AgendaRepeatRule@@QBE?AVQDateTime@@XZ @ 67 NONAME ; class QDateTime AgendaRepeatRule::repeatRuleStart(void) const
- ??8AgendaAlarm@@QBE_NABV0@@Z @ 68 NONAME ; bool AgendaAlarm::operator==(class AgendaAlarm const &) const
- ??0AgendaRepeatRule@@QAE@ABV0@@Z @ 69 NONAME ; AgendaRepeatRule::AgendaRepeatRule(class AgendaRepeatRule const &)
- ?setStatus@AgendaAttendee@@QAEXW4StatusType@1@@Z @ 70 NONAME ; void AgendaAttendee::setStatus(enum AgendaAttendee::StatusType)
- ?setStatus@AgendaEntry@@QAEXW4Status@1@@Z @ 71 NONAME ; void AgendaEntry::setStatus(enum AgendaEntry::Status)
- ?setExtendedCategoryName@AgendaCategory@@QAEXABVQString@@@Z @ 72 NONAME ; void AgendaCategory::setExtendedCategoryName(class QString const &)
- ?setDescription@AgendaEntry@@QAEXABVQString@@@Z @ 73 NONAME ; void AgendaEntry::setDescription(class QString const &)
- ?recurrenceId@AgendaEntry@@QAE?AVQDateTime@@XZ @ 74 NONAME ; class QDateTime AgendaEntry::recurrenceId(void)
- ?until@AgendaRepeatRule@@QBE?AVQDateTime@@XZ @ 75 NONAME ; class QDateTime AgendaRepeatRule::until(void) const
- ?setByMonth@AgendaRepeatRule@@QAEXABV?$QList@W4Month@AgendaRepeatRule@@@@@Z @ 76 NONAME ; void AgendaRepeatRule::setByMonth(class QList<enum AgendaRepeatRule::Month> const &)
- ?qt_metacall@AgendaUtil@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 77 NONAME ; int AgendaUtil::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?qt_metacast@AgendaUtil@@UAEPAXPBD@Z @ 78 NONAME ; void * AgendaUtil::qt_metacast(char const *)
- ?isNull@AgendaRepeatRule@@QBE_NXZ @ 79 NONAME ; bool AgendaRepeatRule::isNull(void) const
- ?getStaticMetaObject@AgendaUtil@@SAABUQMetaObject@@XZ @ 80 NONAME ; struct QMetaObject const & AgendaUtil::getStaticMetaObject(void)
- ??8AgendaAttendee@@QBE_NABV0@@Z @ 81 NONAME ; bool AgendaAttendee::operator==(class AgendaAttendee const &) const
- ?addCategory@AgendaEntry@@QAEXABVAgendaCategory@@@Z @ 82 NONAME ; void AgendaEntry::addCategory(class AgendaCategory const &)
- ?setLocation@AgendaEntry@@QAEXABVQString@@@Z @ 83 NONAME ; void AgendaEntry::setLocation(class QString const &)
- ?isTimedEntry@AgendaEntry@@QAE_NXZ @ 84 NONAME ; bool AgendaEntry::isTimedEntry(void)
- ?favourite@AgendaEntry@@QBEIXZ @ 85 NONAME ; unsigned int AgendaEntry::favourite(void) const
- ?entryViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 86 NONAME ; void AgendaUtil::entryViewCreationCompleted(int)
- ?durationInSecs@AgendaEntry@@QBEHXZ @ 87 NONAME ; int AgendaEntry::durationInSecs(void) const
- ??1AgendaUtil@@UAE@XZ @ 88 NONAME ; AgendaUtil::~AgendaUtil(void)
- ?category@AgendaCategory@@QBE?AW4CategoryType@1@XZ @ 89 NONAME ; enum AgendaCategory::CategoryType AgendaCategory::category(void) const
- ?entryAdded@AgendaUtil@@IAEXK@Z @ 90 NONAME ; void AgendaUtil::entryAdded(unsigned long)
- ?role@AgendaAttendee@@QBE?AW4ParticipantRole@1@XZ @ 91 NONAME ; enum AgendaAttendee::ParticipantRole AgendaAttendee::role(void) const
- ?type@AgendaEntry@@QBE?AW4Type@1@XZ @ 92 NONAME ; enum AgendaEntry::Type AgendaEntry::type(void) const
- ??0AgendaEntry@@QAE@W4Type@0@@Z @ 93 NONAME ; AgendaEntry::AgendaEntry(enum AgendaEntry::Type)
- ?detach@AgendaRepeatRule@@AAEXXZ @ 94 NONAME ; void AgendaRepeatRule::detach(void)
- ?error@AgendaUtil@@QBE?AW4Error@1@XZ @ 95 NONAME ; enum AgendaUtil::Error AgendaUtil::error(void) const
- ?trUtf8@AgendaUtil@@SA?AVQString@@PBD0@Z @ 96 NONAME ; class QString AgendaUtil::trUtf8(char const *, char const *)
- ?status@AgendaEntry@@QBE?AW4Status@1@XZ @ 97 NONAME ; enum AgendaEntry::Status AgendaEntry::status(void) const
- ??0AgendaEntry@@QAE@ABV0@@Z @ 98 NONAME ; AgendaEntry::AgendaEntry(class AgendaEntry const &)
- ??4AgendaAttendee@@QAEAAV0@ABV0@@Z @ 99 NONAME ; class AgendaAttendee & AgendaAttendee::operator=(class AgendaAttendee const &)
- ?address@AgendaAttendee@@QBE?AVQString@@XZ @ 100 NONAME ; class QString AgendaAttendee::address(void) const
- ?entryDeleted@AgendaUtil@@IAEXK@Z @ 101 NONAME ; void AgendaUtil::entryDeleted(unsigned long)
- ?summary@AgendaEntry@@QBE?AVQString@@XZ @ 102 NONAME ; class QString AgendaEntry::summary(void) const
- ?priority@AgendaEntry@@QBEHXZ @ 103 NONAME ; int AgendaEntry::priority(void) const
- ?fetchById@AgendaUtil@@QAE?AVAgendaEntry@@K@Z @ 104 NONAME ; class AgendaEntry AgendaUtil::fetchById(unsigned long)
- ?setCommonName@AgendaAttendee@@QAEXABVQString@@@Z @ 105 NONAME ; void AgendaAttendee::setCommonName(class QString const &)
- ?setMethod@AgendaEntry@@QAEXW4Method@1@@Z @ 106 NONAME ; void AgendaEntry::setMethod(enum AgendaEntry::Method)
- ?setRDates@AgendaEntry@@QAEXABV?$QList@VQDate@@@@@Z @ 107 NONAME ; void AgendaEntry::setRDates(class QList<class QDate> const &)
- ?parentEntry@AgendaUtil@@QAE?AVAgendaEntry@@AAV2@@Z @ 108 NONAME ; class AgendaEntry AgendaUtil::parentEntry(class AgendaEntry &)
- ?addAttendee@AgendaEntry@@QAEXABVAgendaAttendee@@@Z @ 109 NONAME ; void AgendaEntry::addAttendee(class AgendaAttendee const &)
- ?setCompleted@AgendaUtil@@QAEXAAVAgendaEntry@@_NAAVQDateTime@@@Z @ 110 NONAME ; void AgendaUtil::setCompleted(class AgendaEntry &, bool, class QDateTime &)
- ??0AgendaCategory@@QAE@XZ @ 111 NONAME ; AgendaCategory::AgendaCategory(void)
- ?timeOffset@AgendaAlarm@@QBEHXZ @ 112 NONAME ; int AgendaAlarm::timeOffset(void) const
- ??0AgendaAttendee@@QAE@XZ @ 113 NONAME ; AgendaAttendee::AgendaAttendee(void)
- ?setAlarmSoundName@AgendaAlarm@@QAEXABVQString@@@Z @ 114 NONAME ; void AgendaAlarm::setAlarmSoundName(class QString const &)
- ?fetchEntriesInRange@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@VQDateTime@@0W4FilterFlags@1@@Z @ 115 NONAME ; class QList<class AgendaEntry> AgendaUtil::fetchEntriesInRange(class QDateTime, class QDateTime, enum AgendaUtil::FilterFlags)
- ?detach@AgendaAlarm@@AAEXXZ @ 116 NONAME ; void AgendaAlarm::detach(void)
- ?setWeekStart@AgendaRepeatRule@@QAEXW4Day@1@@Z @ 117 NONAME ; void AgendaRepeatRule::setWeekStart(enum AgendaRepeatRule::Day)
- ?setFavourite@AgendaEntry@@QAEXI@Z @ 118 NONAME ; void AgendaEntry::setFavourite(unsigned int)
- ?setDTStamp@AgendaEntry@@QAEXABVQDateTime@@@Z @ 119 NONAME ; void AgendaEntry::setDTStamp(class QDateTime const &)
- ?cloneEntry@AgendaUtil@@QAEKABVAgendaEntry@@W4Type@2@@Z @ 120 NONAME ; unsigned long AgendaUtil::cloneEntry(class AgendaEntry const &, enum AgendaEntry::Type)
- ?setRepeatRule@AgendaEntry@@QAEXABVAgendaRepeatRule@@@Z @ 121 NONAME ; void AgendaEntry::setRepeatRule(class AgendaRepeatRule const &)
- ?categories@AgendaEntry@@QBEABV?$QList@VAgendaCategory@@@@XZ @ 122 NONAME ; class QList<class AgendaCategory> const & AgendaEntry::categories(void) const
- ?tr@AgendaUtil@@SA?AVQString@@PBD0@Z @ 123 NONAME ; class QString AgendaUtil::tr(char const *, char const *)
- ??4AgendaRepeatRule@@QAEAAV0@ABV0@@Z @ 124 NONAME ; class AgendaRepeatRule & AgendaRepeatRule::operator=(class AgendaRepeatRule const &)
- ?setCompletedDateTime@AgendaEntry@@QAEXABVQDateTime@@@Z @ 125 NONAME ; void AgendaEntry::setCompletedDateTime(class QDateTime const &)
- ??0AgendaRepeatRule@@QAE@XZ @ 126 NONAME ; AgendaRepeatRule::AgendaRepeatRule(void)
- ?dtStamp@AgendaEntry@@QBE?AVQDateTime@@XZ @ 127 NONAME ; class QDateTime AgendaEntry::dtStamp(void) const
- ?method@AgendaEntry@@QBE?AW4Method@1@XZ @ 128 NONAME ; enum AgendaEntry::Method AgendaEntry::method(void) const
- ?type@AgendaRepeatRule@@QBE?AW4RuleType@1@XZ @ 129 NONAME ; enum AgendaRepeatRule::RuleType AgendaRepeatRule::type(void) const
- ??4AgendaGeoValue@@QAEAAV0@ABV0@@Z @ 130 NONAME ; class AgendaGeoValue & AgendaGeoValue::operator=(class AgendaGeoValue const &)
- ??0AgendaCategory@@QAE@W4CategoryType@0@@Z @ 131 NONAME ; AgendaCategory::AgendaCategory(enum AgendaCategory::CategoryType)
- ?commonName@AgendaAttendee@@QBE?AVQString@@XZ @ 132 NONAME ; class QString AgendaAttendee::commonName(void) const
- ?detach@AgendaCategory@@AAEXXZ @ 133 NONAME ; void AgendaCategory::detach(void)
- ??0AgendaGeoValue@@QAE@ABV0@@Z @ 134 NONAME ; AgendaGeoValue::AgendaGeoValue(class AgendaGeoValue const &)
- ?isWorkdaysRepeatingEntry@AgendaUtil@@SA_NABVAgendaRepeatRule@@@Z @ 135 NONAME ; bool AgendaUtil::isWorkdaysRepeatingEntry(class AgendaRepeatRule const &)
- ?setRole@AgendaAttendee@@QAEXW4ParticipantRole@1@@Z @ 136 NONAME ; void AgendaAttendee::setRole(enum AgendaAttendee::ParticipantRole)
- ?detach@AgendaAttendee@@AAEXXZ @ 137 NONAME ; void AgendaAttendee::detach(void)
- ?getLatLong@AgendaGeoValue@@QBEXAAN0@Z @ 138 NONAME ; void AgendaGeoValue::getLatLong(double &, double &) const
- ?maxTime@AgendaUtil@@SA?AVQDateTime@@XZ @ 139 NONAME ; class QDateTime AgendaUtil::maxTime(void)
- ?setCategory@AgendaCategory@@QAEXW4CategoryType@1@@Z @ 140 NONAME ; void AgendaCategory::setCategory(enum AgendaCategory::CategoryType)
- ?endTime@AgendaEntry@@QBE?AVQDateTime@@XZ @ 141 NONAME ; class QDateTime AgendaEntry::endTime(void) const
- ??9AgendaEntry@@QBE_NABV0@@Z @ 142 NONAME ; bool AgendaEntry::operator!=(class AgendaEntry const &) const
- ??0AgendaRepeatRule@@QAE@W4RuleType@0@@Z @ 143 NONAME ; AgendaRepeatRule::AgendaRepeatRule(enum AgendaRepeatRule::RuleType)
- ??9AgendaCategory@@QBE_NABV0@@Z @ 144 NONAME ; bool AgendaCategory::operator!=(class AgendaCategory const &) const
- ??0AgendaAttendee@@QAE@ABV0@@Z @ 145 NONAME ; AgendaAttendee::AgendaAttendee(class AgendaAttendee const &)
- ??0AgendaAttendee@@QAE@ABVQString@@@Z @ 146 NONAME ; AgendaAttendee::AgendaAttendee(class QString const &)
- ?importvCalendar@AgendaUtil@@QAEHABVQString@@AAVAgendaEntry@@@Z @ 147 NONAME ; int AgendaUtil::importvCalendar(class QString const &, class AgendaEntry &)
- ?instanceViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 148 NONAME ; void AgendaUtil::instanceViewCreationCompleted(int)
- ??_EAgendaUtil@@UAE@I@Z @ 149 NONAME ; AgendaUtil::~AgendaUtil(unsigned int)
- ?setGeoValue@AgendaEntry@@QAEXABVAgendaGeoValue@@@Z @ 150 NONAME ; void AgendaEntry::setGeoValue(class AgendaGeoValue const &)
- ?getPreviousInstanceTimes@AgendaUtil@@QAEXAAVAgendaEntry@@AAVQDateTime@@1@Z @ 151 NONAME ; void AgendaUtil::getPreviousInstanceTimes(class AgendaEntry &, class QDateTime &, class QDateTime &)
- ?attendees@AgendaEntry@@QAEAAV?$QList@VAgendaAttendee@@@@XZ @ 152 NONAME ; class QList<class AgendaAttendee> & AgendaEntry::attendees(void)
- ?staticMetaObject@AgendaUtil@@2UQMetaObject@@B @ 153 NONAME ; struct QMetaObject const AgendaUtil::staticMetaObject
- ?entriesDeleted@AgendaUtil@@IAEXH@Z @ 154 NONAME ; void AgendaUtil::entriesDeleted(int)
- ?fetchAllEntries@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@W4FilterFlags@1@@Z @ 155 NONAME ; class QList<class AgendaEntry> AgendaUtil::fetchAllEntries(enum AgendaUtil::FilterFlags)
- ?setTimeOffset@AgendaAlarm@@QAEXH@Z @ 156 NONAME ; void AgendaAlarm::setTimeOffset(int)
- ??0AgendaEntry@@QAE@XZ @ 157 NONAME ; AgendaEntry::AgendaEntry(void)
- ?setPriority@AgendaEntry@@QAEXH@Z @ 158 NONAME ; void AgendaEntry::setPriority(int)
- ?setType@AgendaEntry@@QAEXW4Type@1@@Z @ 159 NONAME ; void AgendaEntry::setType(enum AgendaEntry::Type)
- ?setStartAndEndTime@AgendaEntry@@QAE_NABVQDateTime@@0@Z @ 160 NONAME ; bool AgendaEntry::setStartAndEndTime(class QDateTime const &, class QDateTime const &)
- ?deleteEntries@AgendaUtil@@QAEXAAVQDateTime@@0W4FilterFlags@1@@Z @ 161 NONAME ; void AgendaUtil::deleteEntries(class QDateTime &, class QDateTime &, enum AgendaUtil::FilterFlags)
- ?metaObject@AgendaUtil@@UBEPBUQMetaObject@@XZ @ 162 NONAME ; struct QMetaObject const * AgendaUtil::metaObject(void) const
- ?location@AgendaEntry@@QBE?AVQString@@XZ @ 163 NONAME ; class QString AgendaEntry::location(void) const
- ??8AgendaCategory@@QBE_NABV0@@Z @ 164 NONAME ; bool AgendaCategory::operator==(class AgendaCategory const &) const
- ??0AgendaCategory@@QAE@ABV0@@Z @ 165 NONAME ; AgendaCategory::AgendaCategory(class AgendaCategory const &)
- ??1AgendaGeoValue@@QAE@XZ @ 166 NONAME ; AgendaGeoValue::~AgendaGeoValue(void)
- ??4AgendaEntry@@QAEAAV0@ABV0@@Z @ 167 NONAME ; class AgendaEntry & AgendaEntry::operator=(class AgendaEntry const &)
- ??_EAgendaCategory@@UAE@I@Z @ 168 NONAME ; AgendaCategory::~AgendaCategory(unsigned int)
- ?createEntryIdListForDay@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@VQDateTime@@W4FilterFlags@1@@Z @ 169 NONAME ; class QList<class AgendaEntry> AgendaUtil::createEntryIdListForDay(class QDateTime, enum AgendaUtil::FilterFlags)
- ?repeatRule@AgendaEntry@@QBE?AVAgendaRepeatRule@@XZ @ 170 NONAME ; class AgendaRepeatRule AgendaEntry::repeatRule(void) const
- ??1AgendaCategory@@UAE@XZ @ 171 NONAME ; AgendaCategory::~AgendaCategory(void)
- ?deleteEntry@AgendaUtil@@QAE_NK@Z @ 172 NONAME ; bool AgendaUtil::deleteEntry(unsigned long)
- ??1AgendaAttendee@@UAE@XZ @ 173 NONAME ; AgendaAttendee::~AgendaAttendee(void)
- ?byDay@AgendaRepeatRule@@QBE?AV?$QList@W4Day@AgendaRepeatRule@@@@XZ @ 174 NONAME ; class QList<enum AgendaRepeatRule::Day> AgendaRepeatRule::byDay(void) const
- ?setLatLong@AgendaGeoValue@@QAEXNN@Z @ 175 NONAME ; void AgendaGeoValue::setLatLong(double, double)
- ?completedDateTime@AgendaEntry@@QBE?AVQDateTime@@XZ @ 176 NONAME ; class QDateTime AgendaEntry::completedDateTime(void) const
- ?setRecurrenceId@AgendaEntry@@QAEXAAVQDateTime@@@Z @ 177 NONAME ; void AgendaEntry::setRecurrenceId(class QDateTime &)
+ ??8AgendaGeoValue@@QBE_NABV0@@Z @ 59 NONAME ; bool AgendaGeoValue::operator==(class AgendaGeoValue const &) const
+ ?id@AgendaEntry@@QBEKXZ @ 60 NONAME ; unsigned long AgendaEntry::id(void) const
+ ?setByDay@AgendaRepeatRule@@QAEXABV?$QList@W4Day@AgendaRepeatRule@@@@@Z @ 61 NONAME ; void AgendaRepeatRule::setByDay(class QList<enum AgendaRepeatRule::Day> const &)
+ ?setUntil@AgendaRepeatRule@@QAEXABVQDateTime@@@Z @ 62 NONAME ; void AgendaRepeatRule::setUntil(class QDateTime const &)
+ ?setType@AgendaRepeatRule@@QAEXW4RuleType@1@@Z @ 63 NONAME ; void AgendaRepeatRule::setType(enum AgendaRepeatRule::RuleType)
+ ?interval@AgendaRepeatRule@@QBEHXZ @ 64 NONAME ; int AgendaRepeatRule::interval(void) const
+ ?rDates@AgendaEntry@@QBE?AV?$QList@VQDate@@@@XZ @ 65 NONAME ; class QList<class QDate> AgendaEntry::rDates(void) const
+ ?repeatRuleStart@AgendaRepeatRule@@QBE?AVQDateTime@@XZ @ 66 NONAME ; class QDateTime AgendaRepeatRule::repeatRuleStart(void) const
+ ??8AgendaAlarm@@QBE_NABV0@@Z @ 67 NONAME ; bool AgendaAlarm::operator==(class AgendaAlarm const &) const
+ ??0AgendaRepeatRule@@QAE@ABV0@@Z @ 68 NONAME ; AgendaRepeatRule::AgendaRepeatRule(class AgendaRepeatRule const &)
+ ?setStatus@AgendaAttendee@@QAEXW4StatusType@1@@Z @ 69 NONAME ; void AgendaAttendee::setStatus(enum AgendaAttendee::StatusType)
+ ?setStatus@AgendaEntry@@QAEXW4Status@1@@Z @ 70 NONAME ; void AgendaEntry::setStatus(enum AgendaEntry::Status)
+ ?setExtendedCategoryName@AgendaCategory@@QAEXABVQString@@@Z @ 71 NONAME ; void AgendaCategory::setExtendedCategoryName(class QString const &)
+ ?setDescription@AgendaEntry@@QAEXABVQString@@@Z @ 72 NONAME ; void AgendaEntry::setDescription(class QString const &)
+ ?recurrenceId@AgendaEntry@@QAE?AVQDateTime@@XZ @ 73 NONAME ; class QDateTime AgendaEntry::recurrenceId(void)
+ ?until@AgendaRepeatRule@@QBE?AVQDateTime@@XZ @ 74 NONAME ; class QDateTime AgendaRepeatRule::until(void) const
+ ?setByMonth@AgendaRepeatRule@@QAEXABV?$QList@W4Month@AgendaRepeatRule@@@@@Z @ 75 NONAME ; void AgendaRepeatRule::setByMonth(class QList<enum AgendaRepeatRule::Month> const &)
+ ?qt_metacall@AgendaUtil@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 76 NONAME ; int AgendaUtil::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?qt_metacast@AgendaUtil@@UAEPAXPBD@Z @ 77 NONAME ; void * AgendaUtil::qt_metacast(char const *)
+ ?isNull@AgendaRepeatRule@@QBE_NXZ @ 78 NONAME ; bool AgendaRepeatRule::isNull(void) const
+ ?getStaticMetaObject@AgendaUtil@@SAABUQMetaObject@@XZ @ 79 NONAME ; struct QMetaObject const & AgendaUtil::getStaticMetaObject(void)
+ ??8AgendaAttendee@@QBE_NABV0@@Z @ 80 NONAME ; bool AgendaAttendee::operator==(class AgendaAttendee const &) const
+ ?addCategory@AgendaEntry@@QAEXABVAgendaCategory@@@Z @ 81 NONAME ; void AgendaEntry::addCategory(class AgendaCategory const &)
+ ?setLocation@AgendaEntry@@QAEXABVQString@@@Z @ 82 NONAME ; void AgendaEntry::setLocation(class QString const &)
+ ?isTimedEntry@AgendaEntry@@QAE_NXZ @ 83 NONAME ; bool AgendaEntry::isTimedEntry(void)
+ ?favourite@AgendaEntry@@QBEIXZ @ 84 NONAME ; unsigned int AgendaEntry::favourite(void) const
+ ?entryViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 85 NONAME ; void AgendaUtil::entryViewCreationCompleted(int)
+ ?durationInSecs@AgendaEntry@@QBEHXZ @ 86 NONAME ; int AgendaEntry::durationInSecs(void) const
+ ??1AgendaUtil@@UAE@XZ @ 87 NONAME ; AgendaUtil::~AgendaUtil(void)
+ ?category@AgendaCategory@@QBE?AW4CategoryType@1@XZ @ 88 NONAME ; enum AgendaCategory::CategoryType AgendaCategory::category(void) const
+ ?entryAdded@AgendaUtil@@IAEXK@Z @ 89 NONAME ; void AgendaUtil::entryAdded(unsigned long)
+ ?role@AgendaAttendee@@QBE?AW4ParticipantRole@1@XZ @ 90 NONAME ; enum AgendaAttendee::ParticipantRole AgendaAttendee::role(void) const
+ ?type@AgendaEntry@@QBE?AW4Type@1@XZ @ 91 NONAME ; enum AgendaEntry::Type AgendaEntry::type(void) const
+ ??0AgendaEntry@@QAE@W4Type@0@@Z @ 92 NONAME ; AgendaEntry::AgendaEntry(enum AgendaEntry::Type)
+ ?detach@AgendaRepeatRule@@AAEXXZ @ 93 NONAME ; void AgendaRepeatRule::detach(void)
+ ?error@AgendaUtil@@QBE?AW4Error@1@XZ @ 94 NONAME ; enum AgendaUtil::Error AgendaUtil::error(void) const
+ ?trUtf8@AgendaUtil@@SA?AVQString@@PBD0@Z @ 95 NONAME ; class QString AgendaUtil::trUtf8(char const *, char const *)
+ ?status@AgendaEntry@@QBE?AW4Status@1@XZ @ 96 NONAME ; enum AgendaEntry::Status AgendaEntry::status(void) const
+ ??0AgendaEntry@@QAE@ABV0@@Z @ 97 NONAME ; AgendaEntry::AgendaEntry(class AgendaEntry const &)
+ ??4AgendaAttendee@@QAEAAV0@ABV0@@Z @ 98 NONAME ; class AgendaAttendee & AgendaAttendee::operator=(class AgendaAttendee const &)
+ ?address@AgendaAttendee@@QBE?AVQString@@XZ @ 99 NONAME ; class QString AgendaAttendee::address(void) const
+ ?entryDeleted@AgendaUtil@@IAEXK@Z @ 100 NONAME ; void AgendaUtil::entryDeleted(unsigned long)
+ ?summary@AgendaEntry@@QBE?AVQString@@XZ @ 101 NONAME ; class QString AgendaEntry::summary(void) const
+ ?priority@AgendaEntry@@QBEHXZ @ 102 NONAME ; int AgendaEntry::priority(void) const
+ ?fetchById@AgendaUtil@@QAE?AVAgendaEntry@@K@Z @ 103 NONAME ; class AgendaEntry AgendaUtil::fetchById(unsigned long)
+ ?setCommonName@AgendaAttendee@@QAEXABVQString@@@Z @ 104 NONAME ; void AgendaAttendee::setCommonName(class QString const &)
+ ?setMethod@AgendaEntry@@QAEXW4Method@1@@Z @ 105 NONAME ; void AgendaEntry::setMethod(enum AgendaEntry::Method)
+ ?setRDates@AgendaEntry@@QAEXABV?$QList@VQDate@@@@@Z @ 106 NONAME ; void AgendaEntry::setRDates(class QList<class QDate> const &)
+ ?parentEntry@AgendaUtil@@QAE?AVAgendaEntry@@AAV2@@Z @ 107 NONAME ; class AgendaEntry AgendaUtil::parentEntry(class AgendaEntry &)
+ ?addAttendee@AgendaEntry@@QAEXABVAgendaAttendee@@@Z @ 108 NONAME ; void AgendaEntry::addAttendee(class AgendaAttendee const &)
+ ?setCompleted@AgendaUtil@@QAEXAAVAgendaEntry@@_NAAVQDateTime@@@Z @ 109 NONAME ; void AgendaUtil::setCompleted(class AgendaEntry &, bool, class QDateTime &)
+ ??0AgendaCategory@@QAE@XZ @ 110 NONAME ; AgendaCategory::AgendaCategory(void)
+ ?timeOffset@AgendaAlarm@@QBEHXZ @ 111 NONAME ; int AgendaAlarm::timeOffset(void) const
+ ??0AgendaAttendee@@QAE@XZ @ 112 NONAME ; AgendaAttendee::AgendaAttendee(void)
+ ?setAlarmSoundName@AgendaAlarm@@QAEXABVQString@@@Z @ 113 NONAME ; void AgendaAlarm::setAlarmSoundName(class QString const &)
+ ?fetchEntriesInRange@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@VQDateTime@@0W4FilterFlags@1@@Z @ 114 NONAME ; class QList<class AgendaEntry> AgendaUtil::fetchEntriesInRange(class QDateTime, class QDateTime, enum AgendaUtil::FilterFlags)
+ ?detach@AgendaAlarm@@AAEXXZ @ 115 NONAME ; void AgendaAlarm::detach(void)
+ ?setWeekStart@AgendaRepeatRule@@QAEXW4Day@1@@Z @ 116 NONAME ; void AgendaRepeatRule::setWeekStart(enum AgendaRepeatRule::Day)
+ ?setFavourite@AgendaEntry@@QAEXI@Z @ 117 NONAME ; void AgendaEntry::setFavourite(unsigned int)
+ ?setDTStamp@AgendaEntry@@QAEXABVQDateTime@@@Z @ 118 NONAME ; void AgendaEntry::setDTStamp(class QDateTime const &)
+ ?cloneEntry@AgendaUtil@@QAEKABVAgendaEntry@@W4Type@2@@Z @ 119 NONAME ; unsigned long AgendaUtil::cloneEntry(class AgendaEntry const &, enum AgendaEntry::Type)
+ ?setRepeatRule@AgendaEntry@@QAEXABVAgendaRepeatRule@@@Z @ 120 NONAME ; void AgendaEntry::setRepeatRule(class AgendaRepeatRule const &)
+ ?categories@AgendaEntry@@QBEABV?$QList@VAgendaCategory@@@@XZ @ 121 NONAME ; class QList<class AgendaCategory> const & AgendaEntry::categories(void) const
+ ?tr@AgendaUtil@@SA?AVQString@@PBD0@Z @ 122 NONAME ; class QString AgendaUtil::tr(char const *, char const *)
+ ??4AgendaRepeatRule@@QAEAAV0@ABV0@@Z @ 123 NONAME ; class AgendaRepeatRule & AgendaRepeatRule::operator=(class AgendaRepeatRule const &)
+ ?setCompletedDateTime@AgendaEntry@@QAEXABVQDateTime@@@Z @ 124 NONAME ; void AgendaEntry::setCompletedDateTime(class QDateTime const &)
+ ??0AgendaRepeatRule@@QAE@XZ @ 125 NONAME ; AgendaRepeatRule::AgendaRepeatRule(void)
+ ?dtStamp@AgendaEntry@@QBE?AVQDateTime@@XZ @ 126 NONAME ; class QDateTime AgendaEntry::dtStamp(void) const
+ ?method@AgendaEntry@@QBE?AW4Method@1@XZ @ 127 NONAME ; enum AgendaEntry::Method AgendaEntry::method(void) const
+ ?type@AgendaRepeatRule@@QBE?AW4RuleType@1@XZ @ 128 NONAME ; enum AgendaRepeatRule::RuleType AgendaRepeatRule::type(void) const
+ ??4AgendaGeoValue@@QAEAAV0@ABV0@@Z @ 129 NONAME ; class AgendaGeoValue & AgendaGeoValue::operator=(class AgendaGeoValue const &)
+ ??0AgendaCategory@@QAE@W4CategoryType@0@@Z @ 130 NONAME ; AgendaCategory::AgendaCategory(enum AgendaCategory::CategoryType)
+ ?commonName@AgendaAttendee@@QBE?AVQString@@XZ @ 131 NONAME ; class QString AgendaAttendee::commonName(void) const
+ ?detach@AgendaCategory@@AAEXXZ @ 132 NONAME ; void AgendaCategory::detach(void)
+ ??0AgendaGeoValue@@QAE@ABV0@@Z @ 133 NONAME ; AgendaGeoValue::AgendaGeoValue(class AgendaGeoValue const &)
+ ?isWorkdaysRepeatingEntry@AgendaUtil@@SA_NABVAgendaRepeatRule@@@Z @ 134 NONAME ; bool AgendaUtil::isWorkdaysRepeatingEntry(class AgendaRepeatRule const &)
+ ?setRole@AgendaAttendee@@QAEXW4ParticipantRole@1@@Z @ 135 NONAME ; void AgendaAttendee::setRole(enum AgendaAttendee::ParticipantRole)
+ ?detach@AgendaAttendee@@AAEXXZ @ 136 NONAME ; void AgendaAttendee::detach(void)
+ ?getLatLong@AgendaGeoValue@@QBEXAAN0@Z @ 137 NONAME ; void AgendaGeoValue::getLatLong(double &, double &) const
+ ?maxTime@AgendaUtil@@SA?AVQDateTime@@XZ @ 138 NONAME ; class QDateTime AgendaUtil::maxTime(void)
+ ?setCategory@AgendaCategory@@QAEXW4CategoryType@1@@Z @ 139 NONAME ; void AgendaCategory::setCategory(enum AgendaCategory::CategoryType)
+ ?endTime@AgendaEntry@@QBE?AVQDateTime@@XZ @ 140 NONAME ; class QDateTime AgendaEntry::endTime(void) const
+ ??9AgendaEntry@@QBE_NABV0@@Z @ 141 NONAME ; bool AgendaEntry::operator!=(class AgendaEntry const &) const
+ ??0AgendaRepeatRule@@QAE@W4RuleType@0@@Z @ 142 NONAME ; AgendaRepeatRule::AgendaRepeatRule(enum AgendaRepeatRule::RuleType)
+ ??9AgendaCategory@@QBE_NABV0@@Z @ 143 NONAME ; bool AgendaCategory::operator!=(class AgendaCategory const &) const
+ ??0AgendaAttendee@@QAE@ABV0@@Z @ 144 NONAME ; AgendaAttendee::AgendaAttendee(class AgendaAttendee const &)
+ ??0AgendaAttendee@@QAE@ABVQString@@@Z @ 145 NONAME ; AgendaAttendee::AgendaAttendee(class QString const &)
+ ?importvCalendar@AgendaUtil@@QAEHABVQString@@AAVAgendaEntry@@@Z @ 146 NONAME ; int AgendaUtil::importvCalendar(class QString const &, class AgendaEntry &)
+ ?instanceViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 147 NONAME ; void AgendaUtil::instanceViewCreationCompleted(int)
+ ??_EAgendaUtil@@UAE@I@Z @ 148 NONAME ; AgendaUtil::~AgendaUtil(unsigned int)
+ ?setGeoValue@AgendaEntry@@QAEXABVAgendaGeoValue@@@Z @ 149 NONAME ; void AgendaEntry::setGeoValue(class AgendaGeoValue const &)
+ ?getPreviousInstanceTimes@AgendaUtil@@QAEXAAVAgendaEntry@@AAVQDateTime@@1@Z @ 150 NONAME ; void AgendaUtil::getPreviousInstanceTimes(class AgendaEntry &, class QDateTime &, class QDateTime &)
+ ?attendees@AgendaEntry@@QAEAAV?$QList@VAgendaAttendee@@@@XZ @ 151 NONAME ; class QList<class AgendaAttendee> & AgendaEntry::attendees(void)
+ ?staticMetaObject@AgendaUtil@@2UQMetaObject@@B @ 152 NONAME ; struct QMetaObject const AgendaUtil::staticMetaObject
+ ?entriesDeleted@AgendaUtil@@IAEXH@Z @ 153 NONAME ; void AgendaUtil::entriesDeleted(int)
+ ?fetchAllEntries@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@W4FilterFlags@1@@Z @ 154 NONAME ; class QList<class AgendaEntry> AgendaUtil::fetchAllEntries(enum AgendaUtil::FilterFlags)
+ ?setTimeOffset@AgendaAlarm@@QAEXH@Z @ 155 NONAME ; void AgendaAlarm::setTimeOffset(int)
+ ??0AgendaEntry@@QAE@XZ @ 156 NONAME ; AgendaEntry::AgendaEntry(void)
+ ?setPriority@AgendaEntry@@QAEXH@Z @ 157 NONAME ; void AgendaEntry::setPriority(int)
+ ?setType@AgendaEntry@@QAEXW4Type@1@@Z @ 158 NONAME ; void AgendaEntry::setType(enum AgendaEntry::Type)
+ ?setStartAndEndTime@AgendaEntry@@QAE_NABVQDateTime@@0@Z @ 159 NONAME ; bool AgendaEntry::setStartAndEndTime(class QDateTime const &, class QDateTime const &)
+ ?deleteEntries@AgendaUtil@@QAEXAAVQDateTime@@0W4FilterFlags@1@@Z @ 160 NONAME ; void AgendaUtil::deleteEntries(class QDateTime &, class QDateTime &, enum AgendaUtil::FilterFlags)
+ ?metaObject@AgendaUtil@@UBEPBUQMetaObject@@XZ @ 161 NONAME ; struct QMetaObject const * AgendaUtil::metaObject(void) const
+ ?location@AgendaEntry@@QBE?AVQString@@XZ @ 162 NONAME ; class QString AgendaEntry::location(void) const
+ ??8AgendaCategory@@QBE_NABV0@@Z @ 163 NONAME ; bool AgendaCategory::operator==(class AgendaCategory const &) const
+ ??0AgendaCategory@@QAE@ABV0@@Z @ 164 NONAME ; AgendaCategory::AgendaCategory(class AgendaCategory const &)
+ ??1AgendaGeoValue@@QAE@XZ @ 165 NONAME ; AgendaGeoValue::~AgendaGeoValue(void)
+ ??4AgendaEntry@@QAEAAV0@ABV0@@Z @ 166 NONAME ; class AgendaEntry & AgendaEntry::operator=(class AgendaEntry const &)
+ ??_EAgendaCategory@@UAE@I@Z @ 167 NONAME ; AgendaCategory::~AgendaCategory(unsigned int)
+ ?createEntryIdListForDay@AgendaUtil@@QAE?AV?$QList@VAgendaEntry@@@@VQDateTime@@W4FilterFlags@1@@Z @ 168 NONAME ; class QList<class AgendaEntry> AgendaUtil::createEntryIdListForDay(class QDateTime, enum AgendaUtil::FilterFlags)
+ ?repeatRule@AgendaEntry@@QBE?AVAgendaRepeatRule@@XZ @ 169 NONAME ; class AgendaRepeatRule AgendaEntry::repeatRule(void) const
+ ??1AgendaCategory@@UAE@XZ @ 170 NONAME ; AgendaCategory::~AgendaCategory(void)
+ ?deleteEntry@AgendaUtil@@QAE_NK@Z @ 171 NONAME ; bool AgendaUtil::deleteEntry(unsigned long)
+ ??1AgendaAttendee@@UAE@XZ @ 172 NONAME ; AgendaAttendee::~AgendaAttendee(void)
+ ?byDay@AgendaRepeatRule@@QBE?AV?$QList@W4Day@AgendaRepeatRule@@@@XZ @ 173 NONAME ; class QList<enum AgendaRepeatRule::Day> AgendaRepeatRule::byDay(void) const
+ ?setLatLong@AgendaGeoValue@@QAEXNN@Z @ 174 NONAME ; void AgendaGeoValue::setLatLong(double, double)
+ ?completedDateTime@AgendaEntry@@QBE?AVQDateTime@@XZ @ 175 NONAME ; class QDateTime AgendaEntry::completedDateTime(void) const
+ ?setRecurrenceId@AgendaEntry@@QAEXAAVQDateTime@@@Z @ 176 NONAME ; void AgendaEntry::setRecurrenceId(class QDateTime &)
+ ?store@AgendaUtil@@QAEKAAVAgendaEntry@@W4RecurrenceRange@1@VQDateTime@@@Z @ 177 NONAME ; unsigned long AgendaUtil::store(class AgendaEntry &, enum AgendaUtil::RecurrenceRange, class QDateTime)
?isNull@AgendaGeoValue@@QBE_NXZ @ 178 NONAME ; bool AgendaGeoValue::isNull(void) const
--- a/agendainterface/agendautil/eabi/agendainterfaceu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/agendainterface/agendautil/eabi/agendainterfaceu.def Thu Sep 02 20:25:23 2010 +0300
@@ -26,7 +26,7 @@
_ZN10AgendaUtil24isWorkdaysRepeatingEntryERK16AgendaRepeatRule @ 25 NONAME
_ZN10AgendaUtil26entryViewCreationCompletedEi @ 26 NONAME
_ZN10AgendaUtil29instanceViewCreationCompletedEi @ 27 NONAME
- _ZN10AgendaUtil5storeER11AgendaEntryNS_15RecurrenceRangeE @ 28 NONAME
+ _ZN10AgendaUtil5storeER11AgendaEntryNS_15RecurrenceRangeE9QDateTime @ 28 NONAME
_ZN10AgendaUtil7maxTimeEv @ 29 NONAME
_ZN10AgendaUtil7minTimeEv @ 30 NONAME
_ZN10AgendaUtil8entryIdsENS_11FilterFlagsE @ 31 NONAME
--- a/agendainterface/agendautil/inc/agendautil_p.h Wed Aug 18 09:47:38 2010 +0300
+++ b/agendainterface/agendautil/inc/agendautil_p.h Thu Sep 02 20:25:23 2010 +0300
@@ -61,7 +61,9 @@
AgendaUtilPrivate(AgendaUtil* calendar);
~AgendaUtilPrivate();
- ulong store(AgendaEntry &entry, AgendaUtil::RecurrenceRange range);
+ ulong store(
+ AgendaEntry &entry, AgendaUtil::RecurrenceRange range,
+ QDateTime &instanceOriginalDateTime);
ulong cloneEntry(const AgendaEntry& entry, AgendaEntry::Type type);
bool deleteEntry(ulong id);
--- a/agendainterface/agendautil/src/agendautil.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/agendainterface/agendautil/src/agendautil.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -98,11 +98,14 @@
\param entry The entry to be added/updated
\param range The recurrence range of entry
+ \param instanceOriginalDateTime The start time of the original instance.
\return ulong The local uid of the entry added/updated in the db.
*/
-ulong AgendaUtil::store(AgendaEntry &entry, AgendaUtil::RecurrenceRange range)
+ulong AgendaUtil::store(
+ AgendaEntry &entry, AgendaUtil::RecurrenceRange range,
+ QDateTime instanceOriginalDateTime)
{
- return d->store(entry, range);
+ return d->store(entry, range, instanceOriginalDateTime);
}
/*!
--- a/agendainterface/agendautil/src/agendautil_p.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/agendainterface/agendautil/src/agendautil_p.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -203,11 +203,14 @@
/*!
To store the new entry or update the entry in the Calendar db.
- \param entry The entry to be added/updated
- \param range The recurrence range of entry
+ \param entry The entry to be added/updated.
+ \param range The recurrence range of entry.
+ \param instanceOriginalDateTime The start time of the original instance..
\return ulong The local uid of the entry added/updated in the db.
*/
-ulong AgendaUtilPrivate::store(AgendaEntry &entry, AgendaUtil::RecurrenceRange range)
+ulong AgendaUtilPrivate::store(
+ AgendaEntry &entry, AgendaUtil::RecurrenceRange range,
+ QDateTime &instanceOriginalDateTime)
{
// Will be filled with the lUID of the new entry created.
TCalLocalUid localUid = 0;
@@ -269,7 +272,7 @@
// We are creating an exception, hence get the global Uid
HBufC8* guid = parentEntry->UidL().AllocLC();
- QDateTime instanceOriginalDateTime = entry.startTime();
+
// create new (child) entry
// Use original instance time for recurrenceID as this entry hasn't got one.
--- a/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_calendar_unlocked.docml Wed Aug 18 09:47:38 2010 +0300
+++ b/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_calendar_unlocked.docml Thu Sep 02 20:25:23 2010 +0300
@@ -7,6 +7,8 @@
<string locid="txt_calendar_button_alarm_stop" name="text" value="Stop"/>
</object>
<widget name="dialog" type="HbDialog">
+ <ref object="snoozeAction" role="HbWidget:addAction"/>
+ <ref object="stopAction" role="HbWidget:addAction"/>
<widget name="heading" role="HbDialog:headingWidget" type="HbLabel">
<enums name="alignment" value="AlignLeft|AlignLeading"/>
<string locid="txt_calendar_title_calendar_alarm" name="plainText" value="Calendar alarm"/>
@@ -14,100 +16,124 @@
<widget name="container" role="HbDialog:contentWidget" type="HbWidget">
<widget name="alarmTime" type="HbLabel">
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="1"/>
- <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM"/>
- <string name="plainText" value="9:00 am"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+ <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED" width="24un"/>
+ <string name="plainText" value="time"/>
</widget>
<widget name="alarmDate" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="2"/>
- <sizehint height="var(hb-param-text-height-secondary)" type="PREFERRED"/>
- <string name="plainText" value="01/01/2010"/>
+ <real name="z" value="1"/>
+ <string name="plainText" value="date"/>
</widget>
<widget name="alarmDescription" type="HbLabel">
- <enums name="textWrapping" value="TextWordWrap"/>
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="3"/>
- <sizehint height="8un" type="PREFERRED"/>
- <sizehint height="8un" type="MINIMUM"/>
- <sizehint height="8un" type="MAXIMUM"/>
- <string name="textFormat" value="PlainText"/>
+ <real name="z" value="2"/>
+ <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED"/>
+ <string name="plainText" value="description"/>
</widget>
<widget name="alarmLocation" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="4"/>
+ <real name="z" value="3"/>
<sizehint height="var(hb-param-text-height-secondary)" type="PREFERRED"/>
+ <string name="plainText" value="location"/>
</widget>
<widget name="alarmIcon" type="HbLabel">
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<icon iconName="qtg_large_calendar_alarm" name="icon"/>
- <real name="z" value="5"/>
- <sizehint height="15un" type="PREFERRED" width="15un"/>
- </widget>
- <widget name="nonTimedAlarmDate" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="1"/>
- <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM"/>
- <string name="plainText" value="01/01/2010"/>
+ <real name="z" value="4"/>
+ <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+ <sizehint height="15un" type="FIXED" width="15un"/>
</widget>
<layout type="anchor">
- <anchoritem dst="alarmTime" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmTime" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="TOP"/>
- <anchoritem dst="alarmTime" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmDate" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmDate" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmTime" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmDate" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmDescription" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDate" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmLocation" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmLocation" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDescription" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmLocation" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmIcon" dstEdge="LEFT" spacing="17.5un" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmIcon" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmLocation" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmTime" dstEdge="LEFT" spacing="1.34328un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmTime" dstEdge="TOP" spacing="1.34328un" src="" srcEdge="TOP"/>
+ <anchoritem dst="alarmDate" dstEdge="RIGHT" spacing="-21.37314un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmDate" dstEdge="BOTTOM" spacing="-3.8806un" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="5.8209un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmDescription" dstEdge="BOTTOM" spacing="-3.13433un" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmLocation" dstEdge="TOP" spacing="3.43284un" src="" srcEdge="TOP"/>
+ <anchoritem dst="alarmLocation" dstEdge="RIGHT" spacing="-8.83582un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmIcon" dstEdge="RIGHT" spacing="-3.91045un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="-3.43284un" src="" srcEdge="BOTTOM"/>
+ </layout>
+ </widget>
+ </widget>
+ <section name="nonTimedAlarm">
+ <widget name="container" role="HbDialog:contentWidget" type="HbWidget">
+ <layout type="anchor">
+ <anchoritem dst="alarmDate" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmDate" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="TOP"/>
+ <anchoritem dst="alarmDate" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmDescription" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmDate" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmLocation" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmLocation" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmDescription" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmLocation" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmIcon" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmLocation" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmIcon" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
</layout>
</widget>
- <ref object="snoozeAction" role="HbWidget:addAction"/>
- <ref object="stopAction" role="HbWidget:addAction"/>
- </widget>
- <section name="calendarTimed"/>
- <section name="nonTimedAlarm">
- <widget name="heading" role="HbDialog:headingWidget" type="HbLabel">
- <string locid="txt_calendar_title_calendar_alarm" name="plainText" value="Calendar alarm"/>
+ <widget name="alarmIcon" type="HbLabel">
+ <icon iconName="qtg_large_calendar_alarm" name="icon"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+ </widget>
+ <widget name="alarmLocation" type="HbLabel">
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ </widget>
+ <widget name="alarmDate" type="HbLabel">
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED"/>
</widget>
- <widget name="nonTimedAlarmDate" type="HbLabel">
+ <widget name="alarmTime" type="HbLabel">
+ <bool name="visible" value="FALSE"/>
+ </widget>
+ <widget name="alarmDescription" type="HbLabel">
+ <enums name="textWrapping" value="TextWordWrap"/>
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <real name="z" value="1"/>
- <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM"/>
- <string name="plainText" value="01/01/2010"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Maximum" verticalStretch="0"/>
+ <sizehint height="expr(3 * var(hb-param-text-height-primary))" type="PREFERRED"/>
</widget>
+ </section>
+ <section name="calendarTimed">
<widget name="container" role="HbDialog:contentWidget" type="HbWidget">
<layout type="anchor">
- <anchoritem dst="alarmTime" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmTime" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="TOP"/>
- <anchoritem dst="alarmTime" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmDate" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmDate" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmTime" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmDate" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmDescription" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="nonTimedAlarmDate" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmLocation" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmLocation" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDescription" srcEdge="BOTTOM"/>
- <anchoritem dst="alarmLocation" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="nonTimedAlarmDate" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
- <anchoritem dst="nonTimedAlarmDate" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="TOP"/>
- <anchoritem dst="nonTimedAlarmDate" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmIcon" dstEdge="LEFT" spacing="17.5un" src="" srcEdge="LEFT"/>
- <anchoritem dst="alarmIcon" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmLocation" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmTime" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmTime" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="TOP"/>
+ <anchoritem dst="alarmTime" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmDate" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmDate" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmTime" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmDate" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmDescription" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmDate" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmLocation" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-popup) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="alarmLocation" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmDescription" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmLocation" dstEdge="RIGHT" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="alarmIcon" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-popup) )" src="alarmLocation" srcEdge="BOTTOM"/>
<anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="expr(-var(hb-param-margin-gene-popup) )" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmIcon" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
</layout>
</widget>
+ <widget name="alarmIcon" type="HbLabel">
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+ <icon iconName="qtg_large_calendar_alarm" name="icon"/>
+ </widget>
+ <widget name="alarmLocation" type="HbLabel">
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ </widget>
+ <widget name="alarmDate" type="HbLabel">
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ <sizehint height="var(hb-param-text-height-secondary)" type="PREFERRED"/>
+ </widget>
+ <widget name="alarmDescription" type="HbLabel">
+ <enums name="textWrapping" value="TextWordWrap"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ <sizehint height="expr(2 * var(hb-param-text-height-primary))" type="PREFERRED"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Maximum" verticalStretch="0"/>
+ </widget>
</section>
- <metadata activeUIState="nonTimedAlarm" display="NHD portrait" unit="un">
+ <metadata activeUIState="calendarTimed" display="NHD-3.2-inch_portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
+ <uistate name="nonTimedAlarm" sections="#common nonTimedAlarm"/>
<uistate name="calendarTimed" sections="#common calendarTimed"/>
- <uistate name="nonTimedAlarm" sections="#common nonTimedAlarm"/>
</metadata>
</hbdocument>
--- a/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_clock_unlocked.docml Wed Aug 18 09:47:38 2010 +0300
+++ b/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_clock_unlocked.docml Thu Sep 02 20:25:23 2010 +0300
@@ -16,14 +16,15 @@
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="1"/>
<sizehint height="10un" type="MINIMUM"/>
+ <string name="plainText" value="9:00 am"/>
<fontspec name="fontSpec" role="Primary" textheight="9.8un"/>
- <string name="plainText" value="9:00 am"/>
+ <sizehint height="10un" type="PREFERRED"/>
</widget>
<widget name="alarmDescription" type="HbLabel">
<enums name="textWrapping" value="TextWordWrap"/>
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="3"/>
- <sizehint height="7un" type="PREFERRED"/>
+ <sizehint height="expr(2 * var(hb-param-text-height-secondary) )" type="PREFERRED"/>
<sizehint height="7un" type="MINIMUM"/>
<sizehint height="7un" type="MAXIMUM"/>
<string name="textFormat" value="PlainText"/>
@@ -33,6 +34,7 @@
<icon iconName="qtg_large_bell" name="icon"/>
<real name="z" value="5"/>
<sizehint height="15un" type="PREFERRED" width="15un"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
</widget>
<layout type="anchor">
<anchoritem dst="alarmTime" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
@@ -41,15 +43,15 @@
<anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
<anchoritem dst="alarmDescription" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmTime" srcEdge="BOTTOM"/>
<anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmIcon" dstEdge="LEFT" spacing="17.5un" src="" srcEdge="LEFT"/>
<anchoritem dst="alarmIcon" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDescription" srcEdge="BOTTOM"/>
<anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmIcon" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
</layout>
</widget>
<ref object="snoozeAction" role="HbWidget:addAction"/>
<ref object="stopAction" role="HbWidget:addAction"/>
</widget>
- <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+ <metadata activeUIState="Common ui state" display="NHD-3.2-inch_portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
</metadata>
</hbdocument>
--- a/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_todo_unlocked.docml Wed Aug 18 09:47:38 2010 +0300
+++ b/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_todo_unlocked.docml Thu Sep 02 20:25:23 2010 +0300
@@ -24,14 +24,16 @@
<real name="z" value="3"/>
<sizehint height="16un" type="PREFERRED"/>
<sizehint height="16un" type="MINIMUM"/>
- <sizehint height="16un" type="MAXIMUM"/>
+ <sizehint height="expr(4 * var(hb-param-text-height-primary) )" type="MAXIMUM"/>
<string name="textFormat" value="PlainText"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Maximum" verticalStretch="0"/>
</widget>
<widget name="alarmIcon" type="HbLabel">
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<icon iconName="qtg_large_todo_alarm" name="icon"/>
<real name="z" value="5"/>
<sizehint height="15un" type="PREFERRED" width="15un"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
</widget>
<layout type="anchor">
<anchoritem dst="alarmDate" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
@@ -40,15 +42,15 @@
<anchoritem dst="alarmDescription" dstEdge="LEFT" spacing="var(hb-param-margin-gene-popup)" src="" srcEdge="LEFT"/>
<anchoritem dst="alarmDescription" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDate" srcEdge="BOTTOM"/>
<anchoritem dst="alarmDescription" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="RIGHT"/>
- <anchoritem dst="alarmIcon" dstEdge="LEFT" spacing="17.5un" src="" srcEdge="LEFT"/>
<anchoritem dst="alarmIcon" dstEdge="TOP" spacing="var(hb-param-margin-gene-popup)" src="alarmDescription" srcEdge="BOTTOM"/>
<anchoritem dst="alarmIcon" dstEdge="BOTTOM" spacing="-var(hb-param-margin-gene-popup)" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="alarmIcon" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
</layout>
</widget>
<ref object="snoozeAction" role="HbWidget:addAction"/>
<ref object="stopAction" role="HbWidget:addAction"/>
</widget>
- <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+ <metadata activeUIState="Common ui state" display="NHD-3.2-inch_portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
</metadata>
</hbdocument>
--- a/alarmui/alarmalertwidget/alarmalertplugin/inc/alarmalertwidget_p.h Wed Aug 18 09:47:38 2010 +0300
+++ b/alarmui/alarmalertwidget/alarmalertplugin/inc/alarmalertwidget_p.h Thu Sep 02 20:25:23 2010 +0300
@@ -18,6 +18,7 @@
// System includes
#include <QDateTime>
+#include <QPointer>
#include <hbdialog.h>
#include <hbdevicedialoginterface.h>
#include <hbeffect.h>
@@ -215,19 +216,19 @@
* @var mAlarmDescription
* @brief Points to the alarm description label
*/
- HbLabel *mAlarmDescription;
+ QPointer<HbLabel> mAlarmDescription;
/**
* @var mAlarmDateTime
* @brief Points to the alarm expiry time label
*/
- HbLabel *mAlarmDateTime;
+ QPointer<HbLabel> mAlarmDateTime;
/**
* @var mAlarmIcon
* @brief Points to the alarm icon label
*/
- HbLabel *mAlarmIcon;
+ QPointer<HbLabel> mAlarmIcon;
/**
* @var mMainWindow
--- a/alarmui/alarmalertwidget/alarmalertplugin/src/alarmalertwidget_p.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/alarmui/alarmalertwidget/alarmalertplugin/src/alarmalertwidget_p.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -417,12 +417,6 @@
qFatal("Unable to find the alarmDate label");
}
alarmDate->setPlainText(mAlarmDate);
- HbLabel *alarmDateNonTimed = qobject_cast<HbLabel*> (
- mAlertDocLoader->findWidget("nonTimedAlarmDate"));
- if (!alarmDateNonTimed) {
- qFatal("Unable to find the nonTimedAlarmDate label");
- }
- alarmDateNonTimed->hide();
}else {
mAlertDocLoader->load(
alarmNormalUICalendarDocml, "nonTimedAlarm",&success);
@@ -440,13 +434,7 @@
if (!alarmDate) {
qFatal("Unable to find the alarmDate label");
}
- alarmDate->hide();
- HbLabel *alarmDateNonTimed = qobject_cast<HbLabel*> (
- mAlertDocLoader->findWidget("nonTimedAlarmDate"));
- if (!alarmDateNonTimed) {
- qFatal("Unable to find the alarmDateNonTimed label");
- }
- alarmDateNonTimed->setPlainText(mAlarmDate);
+ alarmDate->setPlainText(mAlarmDate);
}
QGraphicsWidget *headingWidget = mAlertDocLoader->findWidget("heading");
--- a/calendarengines/agnversit2/inc/CleanupPointerArray.inl Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarengines/agnversit2/inc/CleanupPointerArray.inl Thu Sep 02 20:25:23 2010 +0300
@@ -35,7 +35,7 @@
@internalTechnology
*/
template <class T>
-inline void TCleanupPointerArray<class T>::ResetAndDestroy(TAny* aPtr)
+inline void TCleanupPointerArray<T>::ResetAndDestroy(TAny* aPtr)
{
reinterpret_cast<T *>(aPtr)->ResetAndDestroy();
}
--- a/calendarui/agendaeventviewer/bwins/agendaeventvieweru.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/bwins/agendaeventvieweru.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,8 +1,10 @@
EXPORTS
- ?view@AgendaEventViewer@@QAEXVAgendaEntry@@W4Actions@1@@Z @ 1 NONAME ; void AgendaEventViewer::view(class AgendaEntry, enum AgendaEventViewer::Actions)
- ?view@AgendaEventViewer@@QAEXABVQFile@@W4Actions@1@@Z @ 2 NONAME ; void AgendaEventViewer::view(class QFile const &, enum AgendaEventViewer::Actions)
- ??1AgendaEventViewer@@UAE@XZ @ 3 NONAME ; AgendaEventViewer::~AgendaEventViewer(void)
- ??0AgendaEventViewer@@QAE@PAVAgendaUtil@@PAVQObject@@@Z @ 4 NONAME ; AgendaEventViewer::AgendaEventViewer(class AgendaUtil *, class QObject *)
- ?view@AgendaEventViewer@@QAEXKW4Actions@1@@Z @ 5 NONAME ; void AgendaEventViewer::view(unsigned long, enum AgendaEventViewer::Actions)
- ??0AgendaEventViewer@@QAE@PAVQObject@@@Z @ 6 NONAME ; AgendaEventViewer::AgendaEventViewer(class QObject *)
+ ?view@AgendaEventViewer@@QAEXABVQFile@@W4Actions@1@@Z @ 1 NONAME ; void AgendaEventViewer::view(class QFile const &, enum AgendaEventViewer::Actions)
+ ??1AgendaEventViewer@@UAE@XZ @ 2 NONAME ; AgendaEventViewer::~AgendaEventViewer(void)
+ ?saveAndCloseEditor@AgendaEventViewer@@QAEXXZ @ 3 NONAME ; void AgendaEventViewer::saveAndCloseEditor(void)
+ ?view@AgendaEventViewer@@QAEXVAgendaEntry@@W4Actions@1@@Z @ 4 NONAME ; void AgendaEventViewer::view(class AgendaEntry, enum AgendaEventViewer::Actions)
+ ??0AgendaEventViewer@@QAE@PAVAgendaUtil@@PAVQObject@@@Z @ 5 NONAME ; AgendaEventViewer::AgendaEventViewer(class AgendaUtil *, class QObject *)
+ ?closeAgendaEventView@AgendaEventViewer@@QAEXXZ @ 6 NONAME ; void AgendaEventViewer::closeAgendaEventView(void)
+ ?view@AgendaEventViewer@@QAEXKW4Actions@1@@Z @ 7 NONAME ; void AgendaEventViewer::view(unsigned long, enum AgendaEventViewer::Actions)
+ ??0AgendaEventViewer@@QAE@PAVQObject@@@Z @ 8 NONAME ; AgendaEventViewer::AgendaEventViewer(class QObject *)
--- a/calendarui/agendaeventviewer/eabi/agendaeventvieweru.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/eabi/agendaeventvieweru.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,12 +1,14 @@
EXPORTS
- _ZN17AgendaEventViewer4viewE11AgendaEntryNS_7ActionsE @ 1 NONAME
- _ZN17AgendaEventViewer4viewERK5QFileNS_7ActionsE @ 2 NONAME
- _ZN17AgendaEventViewer4viewEmNS_7ActionsE @ 3 NONAME
- _ZN17AgendaEventViewerC1EP10AgendaUtilP7QObject @ 4 NONAME
- _ZN17AgendaEventViewerC1EP7QObject @ 5 NONAME
- _ZN17AgendaEventViewerC2EP10AgendaUtilP7QObject @ 6 NONAME
- _ZN17AgendaEventViewerC2EP7QObject @ 7 NONAME
- _ZN17AgendaEventViewerD0Ev @ 8 NONAME
- _ZN17AgendaEventViewerD1Ev @ 9 NONAME
- _ZN17AgendaEventViewerD2Ev @ 10 NONAME
+ _ZN17AgendaEventViewer18saveAndCloseEditorEv @ 1 NONAME
+ _ZN17AgendaEventViewer20closeAgendaEventViewEv @ 2 NONAME
+ _ZN17AgendaEventViewer4viewE11AgendaEntryNS_7ActionsE @ 3 NONAME
+ _ZN17AgendaEventViewer4viewERK5QFileNS_7ActionsE @ 4 NONAME
+ _ZN17AgendaEventViewer4viewEmNS_7ActionsE @ 5 NONAME
+ _ZN17AgendaEventViewerC1EP10AgendaUtilP7QObject @ 6 NONAME
+ _ZN17AgendaEventViewerC1EP7QObject @ 7 NONAME
+ _ZN17AgendaEventViewerC2EP10AgendaUtilP7QObject @ 8 NONAME
+ _ZN17AgendaEventViewerC2EP7QObject @ 9 NONAME
+ _ZN17AgendaEventViewerD0Ev @ 10 NONAME
+ _ZN17AgendaEventViewerD1Ev @ 11 NONAME
+ _ZN17AgendaEventViewerD2Ev @ 12 NONAME
--- a/calendarui/agendaeventviewer/inc/agendaeventview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/inc/agendaeventview.h Thu Sep 02 20:25:23 2010 +0300
@@ -50,7 +50,19 @@
AgendaEventView(
AgendaEventViewerPrivate *owner, QObject *parent=0);
virtual ~AgendaEventView();
-
+public:
+
+ /*
+ * forcefully closing the editor.
+ * should be call if view is open,
+ */
+ void saveAndCloseEditor();
+
+ /*
+ * forcefully closing the view.
+ * should be call if view is open,
+ */
+ void closeAgendaEventView();
private:
void execute(AgendaEntry entry, AgendaEventViewer::Actions action);
void addViewerData();
@@ -125,6 +137,7 @@
QTimer *mProgressTimer;
int mProgressIconCount;
bool mMaptileStatusReceived;
+ bool mCalenEditorClosed ;
int mMaptileStatus;
bool mNotesPluginLoaded;
--- a/calendarui/agendaeventviewer/inc/agendaeventviewer.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/inc/agendaeventviewer.h Thu Sep 02 20:25:23 2010 +0300
@@ -63,6 +63,10 @@
AGENDAEVENTVIEWER_EXPORT void view(AgendaEntry entry,
Actions action = ActionNothing);
+ AGENDAEVENTVIEWER_EXPORT void saveAndCloseEditor();
+
+ AGENDAEVENTVIEWER_EXPORT void closeAgendaEventView();
+
signals:
void viewingCompleted(const QDate date = QDate());
void editingStarted();
--- a/calendarui/agendaeventviewer/inc/agendaeventviewer_p.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/inc/agendaeventviewer_p.h Thu Sep 02 20:25:23 2010 +0300
@@ -43,6 +43,18 @@
void view(const ulong id, AgendaEventViewer::Actions action);
void view(const QFile &fileHandle, AgendaEventViewer::Actions action);
void view(AgendaEntry entry, AgendaEventViewer::Actions action);
+
+ /**
+ * close the editor and save the entry
+ * should be call if editor is open
+ */
+ void saveAndCloseEditor();
+
+ /**
+ * close agenda event view
+ * should be call if agenda eevent view is open
+ */
+ void closeAgendaEventView();
private slots:
void viewingCompleted(const QDate date);
--- a/calendarui/agendaeventviewer/src/agendaeventview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/src/agendaeventview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -94,7 +94,8 @@
mProgressIconCount(0),
mMaptileStatusReceived(false),
mMaptileStatus(-1),
- mNotesPluginLoaded(false)
+ mNotesPluginLoaded(false),
+ mCalenEditorClosed(true)
{
OstTraceFunctionEntry0( AGENDAEVENTVIEW_AGENDAEVENTVIEW_ENTRY );
mTranslator->loadCommon();
@@ -1110,7 +1111,7 @@
connect(mCalenEditor, SIGNAL(dialogClosed()),
this, SLOT(handleCalendarEditorClosed()));
mCalenEditor->edit(mAgendaEntry, false);
-
+ mCalenEditorClosed = false;
}
OstTraceFunctionExit0( AGENDAEVENTVIEW_EDIT_EXIT );
@@ -1276,6 +1277,7 @@
OstTraceFunctionEntry0( AGENDAEVENTVIEW_HANDLECALENDAREDITORCLOSED_ENTRY );
// Cleanup.
+ mCalenEditorClosed = true;
mCalenEditor->deleteLater();
mOwner->editingCompleted();
@@ -1493,4 +1495,36 @@
OstTraceFunctionExit0( AGENDAEVENTVIEW_CHANGEDORIENTATION_EXIT );
}
+/*!
+ Close the editor and save the entry.
+ should be call if editor is open
+ */
+void AgendaEventView::saveAndCloseEditor()
+{
+ if(mCalenEditorClosed){
+ QObject *plugin = qobject_cast<QObject*> (
+ mNotesEditorPluginLoader->instance());
+
+ NotesEditorInterface* interface =
+ qobject_cast<NotesEditorInterface*>(plugin);
+
+
+ interface->close(NotesEditorInterface::CloseWithSave ,mOwner->mAgendaUtil);
+
+ }
+ else{
+ if(mCalenEditor){
+ mCalenEditor->saveAndCloseEditor();
+ }
+ }
+}
+
+/*!
+ Close the view .
+ should be call if view is open
+ */
+void AgendaEventView::closeAgendaEventView()
+{
+ close();
+}
// End of file
--- a/calendarui/agendaeventviewer/src/agendaeventviewer.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/src/agendaeventviewer.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -147,4 +147,22 @@
OstTraceFunctionExit0( DUP2_AGENDAEVENTVIEWER_VIEW_EXIT );
}
+/*!
+ save the entry and close the editor
+*/
+void AgendaEventViewer::saveAndCloseEditor()
+{
+ d_ptr->saveAndCloseEditor();
+}
+
+
+/*!
+ close the aganda event view
+*/
+void AgendaEventViewer::closeAgendaEventView()
+{
+ d_ptr->closeAgendaEventView();
+}
+
+
// End of file
--- a/calendarui/agendaeventviewer/src/agendaeventviewer_p.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/agendaeventviewer/src/agendaeventviewer_p.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -275,4 +275,25 @@
mAction = AgendaEventViewer::ActionNothing;
OstTraceFunctionExit0( AGENDAEVENTVIEWERPRIVATE_VIEWCREATIONCOMPLETED_EXIT );
}
+
+// ----------------------------------------------------------------------------
+// AgendaEventViewerPrivate::saveAndCloseEditor
+// save the entry and close the editor
+// ----------------------------------------------------------------------------
+//
+void AgendaEventViewerPrivate::saveAndCloseEditor()
+{
+ mAgendaEventView->saveAndCloseEditor();
+}
+
+
+// ----------------------------------------------------------------------------
+// AgendaEventViewerPrivate::closeAgendaEventView
+// close the agenda event view
+// ----------------------------------------------------------------------------
+//
+void AgendaEventViewerPrivate::closeAgendaEventView()
+{
+ mAgendaEventView->closeAgendaEventView();
+}
// End of file
--- a/calendarui/caleneditor/data/caleneditor.qrc Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/data/caleneditor.qrc Thu Sep 02 20:25:23 2010 +0300
@@ -1,6 +1,6 @@
<!DOCTYPE RCC><RCC version="1.0">
<qresource prefix="/xml">
<file alias="caleneditorview.docml">caleneditorview.docml</file>
- <file alias="caleneditorlocationitem.docml">caleneditorlocationitem.docml</file>
+ <file alias="caleneditorcustomitem.css">caleneditorcustomitem.css</file>
</qresource>
</RCC>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/calendarui/caleneditor/data/caleneditorcustomitem.css Thu Sep 02 20:25:23 2010 +0300
@@ -0,0 +1,22 @@
+CalenEditorCustomItem[!hasIcon][expandItem]:landscape
+{
+ layout:layout_portrait_without_icon;
+}
+
+CalenEditorCustomItem[hasIcon][expandItem]:landscape
+{
+ layout:layout_portrait_with_icon;
+}
+
+CalenEditorCustomItem[expandItem]::dataItem_Label:landscape
+{
+ size-policy-horizontal:preferred;
+}
+
+CalenEditorCustomItem[expandItem]::DataItem_ContentWidget:landscape
+{
+ top: -var(hb-param-margin-gene-top);
+ left:-var(hb-param-margin-gene-left);
+ right:var(hb-param-margin-gene-right);
+ bottom:var(hb-param-margin-gene-bottom);
+}
\ No newline at end of file
--- a/calendarui/caleneditor/data/caleneditorlocationitem.docml Wed Aug 18 09:47:38 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<hbdocument version="0.9">
- <widget name="calenEditorLocationWidget" type="HbWidget">
- <widget name="locationLineEdit" type="HbLineEdit">
- <real name="z" value="1"/>
- <string name="text" value=""/>
- </widget>
- <widget name="locationPushButton" type="HbPushButton">
- <real name="z" value="2"/>
- <sizehint height="7.4un" type="MINIMUM" width="9.5un"/>
- <sizehint height="7.4un" type="MAXIMUM" width="9.5un"/>
- </widget>
- <rect height="9.4un" name="geometry" width="53.73134un" x="0un" y="0un"/>
- <sizehint height="9.4un" type="PREFERRED"/>
- <sizehint height="9.4un" type="MINIMUM"/>
- <sizehint height="9.4un" type="MAXIMUM"/>
- <layout type="anchor">
- <anchoritem dst="locationPushButton" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
- <anchoritem dst="locationPushButton" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
- <anchoritem dst="locationLineEdit" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
- <anchoritem dst="locationLineEdit" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-middle-horizontal)" src="locationPushButton" srcEdge="LEFT"/>
- <anchoritem dst="locationLineEdit" dstEdge="CENTERV" spacing="0un" src="locationPushButton" srcEdge="CENTERV"/>
- </layout>
- </widget>
- <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
- <uistate name="Common ui state" sections="#common"/>
- </metadata>
-</hbdocument>
--- a/calendarui/caleneditor/inc/caleneditor_p.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/inc/caleneditor_p.h Thu Sep 02 20:25:23 2010 +0300
@@ -107,11 +107,12 @@
bool isNewEntry();
HbDataFormModelItem* allDayCheckBoxItem();
bool isReminderTimeForAllDayAdded();
+ bool isRepeatUntilItemAdded();
bool isAllDayEvent();
void updateReminderChoices();
int currentIndexOfReminderField();
void setCurrentIndexOfReminderField(int index);
- void setReminderChoices();
+ int getReminderCount();
bool isEditRangeThisOnly();
bool isAllDayFieldAdded();
void forcedSaveEntry();
--- a/calendarui/caleneditor/inc/caleneditorcommon.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/inc/caleneditorcommon.h Thu Sep 02 20:25:23 2010 +0300
@@ -33,6 +33,8 @@
// Constants
const int SecsInOneHour( 3600 );
+const int SecsIn15Mins( 900 ); //15 * 60 secs
+const int SecsIn30Mins( 1800 ); //30 * 60 secs
const int MaxRowsInTextItem(10);
const int MaxCharacterLimit(255);
--- a/calendarui/caleneditor/inc/caleneditorreminderfield.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/inc/caleneditorreminderfield.h Thu Sep 02 20:25:23 2010 +0300
@@ -45,6 +45,14 @@
ReminderOneDayBefore,
ReminderTwoDaysBefore
};
+ enum MeetingReminderIndex
+ {
+ //Starting the enum from 1 bcoz ReminderOff of AllDayReminderIndex can be used.
+ ReminderAtStart = 1,
+ Reminder15MinsBefore,
+ Reminder30MinsBefore,
+ Reminder1HourBefore
+ };
public:
CalenEditorReminderField(CalenEditorPrivate* calenEditor,
HbDataForm* form, HbDataFormModel* model,
@@ -69,6 +77,10 @@
void setCurrentIndex(int index);
void disableReminderTimeField();
bool isReminderTimeForAllDayAdded();
+ void UpdateReminderChoicesForSameDay(QTime startTime);
+ void setSavedMeetingReminderIndex();
+ int getReminderIndexBasedOnEntryAlarm();
+
private slots:
void handleReminderIndexChanged(int index);
void launchReminderTimePicker();
--- a/calendarui/caleneditor/src/caleneditor_p.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/src/caleneditor_p.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -1096,6 +1096,8 @@
{
OstTraceFunctionEntry0( CALENEDITORPRIVATE_SAVEFROMDATETIME_ENTRY );
QDateTime endTime = mEditedEntry->endTime();
+ // Get the previous start date of the entry
+ QDate previousDate = mEditedEntry->startTime().date();
// Update the end time accordingly on UI - duration will be 60 mins
// bydefault only while creating new entry and if it crossed the endtime
if (mNewEntry && fromDateTime > endTime) {
@@ -1122,6 +1124,18 @@
}
updateReminderChoices();
+ // If the entry start date is been changed from past date to a future date
+ // And if the alarm set set is off change the reminder option to
+ // 'one day before' if the option is valid
+ if (isAllDayEvent() && previousDate <= QDate::currentDate()) {
+ if(fromDateTime.date() > QDate::currentDate() &&
+ (mReminderField->currentReminderIndex() ==
+ CalenEditorReminderField::ReminderOff) &&
+ mReminderField->reminderItemsCount() >= 3) {
+ mReminderField->setCurrentIndex(
+ CalenEditorReminderField::ReminderOneDayBefore);
+ }
+ }
OstTraceFunctionExit0( CALENEDITORPRIVATE_SAVEFROMDATETIME_EXIT );
}
@@ -1150,13 +1164,14 @@
{
mReminderField->setReminderOff();
} else {
- // Enabled implies future. If changing from future to future do not
- // do anything.
- if (!mReminderField->isReminderFieldEnabled()) {
+ if (referenceDate == QDate::currentDate()) {
+ mReminderField->UpdateReminderChoicesForSameDay(mEditedEntry->startTime().time());
+ }
+ else {
mReminderField->setReminderChoices();
- // Set the default alarm time 15 minutes before
- mReminderField->setCurrentIndex(2);
}
+ //Set the reminder field to the previous value which was saved.
+ mReminderField->setSavedMeetingReminderIndex();
}
}
OstTraceFunctionExit0( CALENEDITORPRIVATE_UPDATEREMINDERCHOICES_EXIT );
@@ -1355,14 +1370,26 @@
// This is to avoid conflict in the reminder time as
// the index set for the normal meeting may not be valid for an allday
// Set it off before doing the reminder updation for all day
- mReminderField->setCurrentIndex(0);
+ mReminderField->setCurrentIndex(CalenEditorReminderField::ReminderOff);
mReminderField->updateReminderChoicesForAllDay(referenceDate);
- // If the reminder field is enabled and it is not off
- // it implies default alarm day and time is being displayed.
+ // Now the reminder combox box is updated with the valid reminder options
+ // If the reminder field is enabled and it is off
+ // it implies default alarm day and time should be displayed.
if (mReminderField->isReminderFieldEnabled() &&
- mReminderField->currentReminderIndex() != 0) {
+ mReminderField->currentReminderIndex() ==
+ CalenEditorReminderField::ReminderOff) {
+ mReminderField->insertReminderTimeField();
// Set the default alarm for all day.
- mReminderField->setDefaultAlarmForAllDay();
+ if(mReminderField->reminderItemsCount() > 2) {
+ // Set reminder as "One day before"
+ mReminderField->setCurrentIndex(
+ CalenEditorReminderField::ReminderOneDayBefore);
+ }else {
+ // Since the "One day before" is not valid
+ // Set the reminder "On event day"
+ mReminderField->setCurrentIndex(
+ CalenEditorReminderField::ReminderOnEventDay);
+ }
} else {
// Remove reminder time field.
mReminderField->removeReminderTimeField();
@@ -1378,7 +1405,7 @@
mReminderField->removeReminderTimeField();
mReminderField->setReminderChoices();
// Set the default alarm time 15 minutes before
- mReminderField->setCurrentIndex(2);
+ mReminderField->setCurrentIndex(CalenEditorReminderField::Reminder15MinsBefore);
updateReminderChoices();
}
@@ -1695,7 +1722,9 @@
if (!handleAllDayToSave()) {
// creating an exceptional entry
if (!mIsChild && (mEditRange == ThisOnly)) {
- mAgendaUtil->store(*mEditedEntry, AgendaUtil::ThisOnly);
+ mAgendaUtil->store(
+ *mEditedEntry, AgendaUtil::ThisOnly,
+ mOriginalEntry->startTime());
} else {
mAgendaUtil->store(*mEditedEntry);
}
@@ -1913,6 +1942,22 @@
}
/*!
+ Returns true if repeatuntil item is been added
+ Used to know if the entry is repeating. For new entries this
+ is the only way to find whether its repeating or not
+ */
+bool CalenEditorPrivate::isRepeatUntilItemAdded()
+{
+ // For exceptional entries the repeatfield will not be present
+ // So need to check if the repeat field is there or not
+ if( mRepeatField ) {
+ return mRepeatField->isRepeatUntilItemAdded();
+ }else {
+ return false;
+ }
+}
+
+/*!
Checks if it is an all day event or not.
*/
bool CalenEditorPrivate::isAllDayEvent()
@@ -1956,13 +2001,11 @@
}
/*!
- Sets the reminder choices for a non all day event.
+ Gets the reminder options count
*/
-void CalenEditorPrivate::setReminderChoices()
+int CalenEditorPrivate::getReminderCount()
{
- OstTraceFunctionEntry0( CALENEDITORPRIVATE_SETREMINDERCHOICES_ENTRY );
- mReminderField->setReminderChoices();
- OstTraceFunctionExit0( CALENEDITORPRIVATE_SETREMINDERCHOICES_EXIT );
+ return mReminderField->reminderItemsCount();
}
/*!
--- a/calendarui/caleneditor/src/caleneditorcustomitem.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/src/caleneditorcustomitem.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -30,6 +30,7 @@
#include <HbDataFormModel>
#include <HbAbstractViewItem>
#include <HbAbstractItemView>
+#include <hbstyleloader.h>
#include <QGraphicsLinearLayout>
#include <QDate>
#include <QTime>
@@ -72,6 +73,7 @@
mRequestPending(false)
{
OstTraceFunctionEntry0( CALENEDITORCUSTOMITEM_CALENEDITORCUSTOMITEM_ENTRY );
+ HbStyleLoader::registerFilePath(":/xml");
mMinDate = CalenDateUtils::minTime().date();
mMaxDate = CalenDateUtils::maxTime().date();
mMinTime.setHMS(0,0,0,0);
@@ -114,22 +116,43 @@
switch (itemType) {
case CustomWidgetFrom:
{
- HbWidget *widgetTop = new HbWidget();
- QGraphicsLinearLayout *layoutTop =
- new QGraphicsLinearLayout(Qt::Horizontal);
- widgetTop->setLayout(layoutTop);
+ // Set the property so that the custom item layout
+ // will be the same for both portrait and landscape
+ setProperty("expandItem", true);
+ // Create the widget
+ HbWidget *widgetTop = new HbWidget();
+ QGraphicsLinearLayout *layoutTop =
+ new QGraphicsLinearLayout(Qt::Horizontal);
+ layoutTop->setContentsMargins(0, 0, 0, 0);
+
+ widgetTop->setLayout(layoutTop);
+
+ // Set the button spacing.
+ HbDeviceProfile deviceProfile;
+ // The layout guide specifies the spacing as 2 u.
+ qreal spacing = deviceProfile.unitValue() * 2 ;
+ layoutTop->setSpacing(spacing);
+ // Calculate the button width.
+ qreal right = 0.0;
+ qreal left = 0.0;
+ style()->parameter("hb-param-margin-gene-right", right);
+ style()->parameter("hb-param-margin-gene-left", left);
+ qreal screenWidth = 0.0;
+ style()->parameter("hb-param-screen-short-edge", screenWidth);
+ qreal buttonWidth = (screenWidth - right - left - spacing) / 2;
mPushButtonTime = new HbPushButton();
+ mPushButtonTime->setPreferredWidth(buttonWidth);
mPushButtonTime->setObjectName("startTime");
connect(mPushButtonTime, SIGNAL(clicked()),
- this, SLOT(handleTime()));
+ this, SLOT(handleTime()));
layoutTop->addItem(mPushButtonTime);
- mPushButtonDate =
- new HbPushButton();
+ mPushButtonDate = new HbPushButton();
+ mPushButtonDate->setPreferredWidth(buttonWidth);
mPushButtonDate->setObjectName("startDate");
connect(mPushButtonDate, SIGNAL(clicked()),
- this, SLOT(handleDate()));
+ this, SLOT(handleDate()));
layoutTop->addItem(mPushButtonDate);
OstTraceFunctionExit0( CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
return widgetTop;
@@ -138,72 +161,103 @@
case CustomWidgetTo:
{
- HbWidget *widgetBottom = new HbWidget();
- QGraphicsLinearLayout *layoutBottom =
- new QGraphicsLinearLayout(Qt::Horizontal);
- widgetBottom->setLayout(layoutBottom);
+ // Set the property so that the custom item layout
+ // will be the same for both portrait and landscape
+ setProperty("expandItem", true);
+ // Create the widget
+ HbWidget *widgetBottom = new HbWidget();
+
+ QGraphicsLinearLayout *layoutBottom =
+ new QGraphicsLinearLayout(Qt::Horizontal);
+ layoutBottom->setContentsMargins(0, 0, 0, 0);
+ widgetBottom->setLayout(layoutBottom);
- mPushButtonTime = new HbPushButton(this);
- mPushButtonTime->setObjectName("endTime");
- connect(mPushButtonTime, SIGNAL(clicked()),
- this, SLOT(handleTime()));
- layoutBottom->addItem(mPushButtonTime);
-
- mPushButtonDate = new HbPushButton(this);
- mPushButtonDate->setObjectName("endDate");
- connect(mPushButtonDate, SIGNAL(clicked()),
- this, SLOT(handleDate()));
- layoutBottom->addItem(mPushButtonDate);
+ // Set the button spacing.
+ HbDeviceProfile deviceProfile;
+ // The layout guide specifies the spacing as 2 u.
+ qreal spacing = deviceProfile.unitValue() * 2 ;
+ layoutBottom->setSpacing(spacing);
+ // Calculate the button width.
+ qreal right = 0.0;
+ qreal left = 0.0;
+ style()->parameter("hb-param-margin-gene-right", right);
+ style()->parameter("hb-param-margin-gene-left", left);
+ qreal screenWidth = 0.0;
+ style()->parameter("hb-param-screen-short-edge", screenWidth);
+ qreal buttonWidth = (screenWidth - right - left - spacing) / 2;
+
+ mPushButtonTime = new HbPushButton(this);
+ mPushButtonTime->setPreferredWidth(buttonWidth);
+ mPushButtonTime->setObjectName("endTime");
+ connect(mPushButtonTime, SIGNAL(clicked()),
+ this, SLOT(handleTime()));
+ layoutBottom->addItem(mPushButtonTime);
+
+ mPushButtonDate = new HbPushButton(this);
+ mPushButtonDate->setPreferredWidth(buttonWidth);
+ mPushButtonDate->setObjectName("endDate");
+ connect(mPushButtonDate, SIGNAL(clicked()),
+ this, SLOT(handleDate()));
+ layoutBottom->addItem(mPushButtonDate);
OstTraceFunctionExit0( DUP1_CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
- return widgetBottom;
+ return widgetBottom;
}
case CustomWidgetLocation:
{
- CalenEditorDocLoader editorLocationDocLoader;
- bool loadSuccess = false;
-
- editorLocationDocLoader.load(CALEN_EDITOR_LOCATION_XML_FILE,
- &loadSuccess);
- Q_ASSERT_X(loadSuccess, "caleneditor.cpp",
- "Unable to load caleneditor location view XML");
- HbWidget* widgetLocation = qobject_cast<HbWidget *> (
- editorLocationDocLoader.findWidget(CALEN_EDITOR_LOCATION));
-
- mLocationLineEdit = qobject_cast<HbLineEdit *>(
- editorLocationDocLoader.findWidget(
- CALEN_EDITOR_LOCATION_LINEEDIT));
+ setProperty("expandItem", false);
+ HbWidget *widgetLocation = new HbWidget();
+ QGraphicsLinearLayout *layoutLocation =
+ new QGraphicsLinearLayout(Qt::Horizontal);
+ layoutLocation->setContentsMargins(0, 0, 0, 0);
+ widgetLocation->setLayout(layoutLocation);
+
+ // Set the spacing between LineEdit and PushButton
+ qreal spacing = 0.0;
+ style()->parameter(
+ "hb-param-margin-gene-middle-horizontal", spacing);
+ layoutLocation->setSpacing(spacing);
+
+ mLocationLineEdit = new HbLineEdit(this);
mLocationLineEdit->setObjectName("locationLineEdit");
- mLocationLineEdit->setMinRows(1);
mLocationLineEdit->setMaxRows(MaxRowsInTextItem);
- mLocationPushButton = qobject_cast<HbPushButton*>(
- editorLocationDocLoader.findWidget(
- CALEN_EDITOR_LOCATION_PUSHBUTTON));
+ connect(mLocationLineEdit, SIGNAL(textChanged(const QString)),
+ this, SLOT(handleLocationTextChange(const QString)));
+ connect(mLocationLineEdit, SIGNAL(editingFinished()),
+ this, SLOT(handleEditingFinished()));
+ layoutLocation->addItem(mLocationLineEdit);
+
+ mLocationPushButton = new HbPushButton(this);
+
+ HbDeviceProfile deviceProfile;
+ // The layout guide specifies the spacing as 9.5 u
+ // and the height as 7.4 u
+ qreal width = deviceProfile.unitValue() * 9.5;
+ qreal height = deviceProfile.unitValue() * 7.4 ;
+ mLocationPushButton->setPreferredSize(width, height);
+ mLocationPushButton->setSizePolicy(
+ QSizePolicy::Fixed, QSizePolicy::Fixed);
+ mLocationPushButton->setIcon( HbIcon("qtg_mono_location"));
mLocationPushButton->setObjectName("locationIcon");
- mLocationPushButton->setIcon( HbIcon("qtg_mono_location"));
-
connect(mLocationPushButton, SIGNAL(clicked()), this,
SLOT(launchLocationPicker()));
- connect(mLocationLineEdit, SIGNAL(textChanged(const QString)),
- this, SLOT(handleLocationTextChange(const QString)));
-
- connect(mLocationLineEdit, SIGNAL(editingFinished()),
- this, SLOT(handleEditingFinished()));
-
+ layoutLocation->addItem(mLocationPushButton);
OstTraceFunctionExit0( DUP2_CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
return widgetLocation;
}
case RepeatUntilOffset:
{
- mRepeatUntilWidget = new HbPushButton(this);
- mRepeatUntilWidget->setObjectName("repeatUntilItem");
- OstTraceFunctionExit0( DUP3_CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
- return mRepeatUntilWidget;
+ setProperty("expandItem", false);
+ mRepeatUntilWidget = new HbPushButton(this);
+ mRepeatUntilWidget->setObjectName("repeatUntilItem");
+ OstTraceFunctionExit0( DUP3_CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
+ return mRepeatUntilWidget;
}
case ReminderTimeOffset:
{
+ setProperty("expandItem", false);
mReminderTimeWidget = new HbPushButton(this);
mReminderTimeWidget->setObjectName("remainderTimeItem");
OstTraceFunctionExit0( DUP4_CALENEDITORCUSTOMITEM_CREATECUSTOMWIDGET_EXIT );
--- a/calendarui/caleneditor/src/caleneditorreminderfield.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/src/caleneditorreminderfield.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -90,6 +90,13 @@
void CalenEditorReminderField::setReminderChoices()
{
OstTraceFunctionEntry0( CALENEDITORREMINDERFIELD_SETREMINDERCHOICES_ENTRY );
+
+ // Disconnect the slot and connect it back again at end to avoid unnecessary
+ // calls to handleReminderIndexChanged slot. Or else the slot gets called
+ // when we add all of items to the repeat combobox.
+ mEditorForm->removeConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
// Create the reminder choices
QStringList reminderChoices;
reminderChoices << hbTrId("txt_calendar_setlabel_reminder_val_off")
@@ -99,15 +106,11 @@
<< hbTrId("txt_calendar_setlabel_reminder_val_1_hour_before");
mReminderItem->setContentWidgetData("items", reminderChoices);
- mReminderItem->setContentWidgetData("objectName", "remainderItem");
-
- // Build the hash map for the reminder.
- mReminderHash[0] = -1; // OFF.
- mReminderHash[1] = 0;
- mReminderHash[2] = 15;
- mReminderHash[3] = 30;
- mReminderHash[4] = 60;
mReminderItem->setEnabled(true);
+
+ mEditorForm->addConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
OstTraceFunctionExit0( CALENEDITORREMINDERFIELD_SETREMINDERCHOICES_EXIT );
}
@@ -134,6 +137,29 @@
}
/*!
+ Set the current reminder index with the value which was saved
+ before, if it is valid or else default the value to 15MinsBefore
+ or AtTheStart whichever is appropriate
+ */
+void CalenEditorReminderField::setSavedMeetingReminderIndex()
+{
+ // Get the reminder offset value.
+ int reminderOffset =
+ mCalenEditor->editedEntry()->alarm().timeOffset();
+ // Get the index value for the reminder combo box from the hash
+ // table. 2nd argument is defaultKey if the hash contains no item mapped to value
+ //TODO: Need to confirm the default reminder to set if none of the choices are met like in case of synch from outlook.
+ int index = mReminderHash.key(reminderOffset, Reminder15MinsBefore);
+
+ if (index < reminderItemsCount())
+ setCurrentIndex(index);
+ else if (reminderItemsCount() == (ReminderAtStart + 1)) //+1 because enum starts from 0.
+ setCurrentIndex(ReminderAtStart);
+ else
+ setCurrentIndex(Reminder15MinsBefore);
+}
+
+/*!
Populates reminder item with available choices to the user
\param newEntry bool value to indicate if its a new entry
*/
@@ -142,7 +168,17 @@
OstTraceFunctionEntry0( CALENEDITORREMINDERFIELD_POPULATEREMINDERITEM_ENTRY );
AgendaAlarm reminder;
bool pastEvent = false;
+ bool repeatingEntry = false;
+ bool sameDay = false;
+ mReminderItem->setContentWidgetData("objectName", "remainderItem");
+ // Build the hash map for the reminder.
+ mReminderHash[ReminderOff] = -1; // OFF.
+ mReminderHash[ReminderAtStart] = 0;
+ mReminderHash[Reminder15MinsBefore] = 15;
+ mReminderHash[Reminder30MinsBefore] = 30;
+ mReminderHash[Reminder1HourBefore] = 60;
+
// Set reference date to start date or repeat until date accordingly to
// decide whether its a past event or not.
QDate referenceDate;
@@ -151,6 +187,7 @@
referenceDate = mCalenEditor->editedEntry()->startTime().date();
} else {
referenceDate = mCalenEditor->editedEntry()->repeatRule().until().date();
+ repeatingEntry = true;
}
if ((referenceDate < QDate::currentDate()) ||
@@ -163,39 +200,55 @@
if (mCalenEditor->isAllDayEvent()) {
updateReminderChoicesForAllDay(referenceDate);
} else {
+ if((referenceDate == QDate::currentDate())
+ && !pastEvent) {
+ UpdateReminderChoicesForSameDay(mCalenEditor->editedEntry()->startTime().time());
+ sameDay = true;
+ }
+ else {
setReminderChoices();
+ }
}
// Set the default reminder value to 15 minutes
if (newEntry) {
if (!pastEvent) {
- mReminderItem->setContentWidgetData("currentIndex", 2);
+ int defaultIndex = Reminder15MinsBefore;
+ if (reminderItemsCount() == (ReminderAtStart + 1)) //If 15MinsBefore option is not available
+ defaultIndex = ReminderAtStart;
+
+ setCurrentIndex(defaultIndex);
// Save the reminder alarm for the entry
- reminder.setTimeOffset(mReminderHash.value(2));
+ reminder.setTimeOffset(mReminderHash.value(defaultIndex));
reminder.setAlarmSoundName(QString(" "));
// Set the reminder to the entry as well as original entry.
mCalenEditor->editedEntry()->setAlarm(reminder);
mCalenEditor->originalEntry()->setAlarm(reminder);
} else {
- mReminderItem->setContentWidgetData("currentIndex", 0);
- mReminderItem->setEnabled(false);
+ setReminderOff();
}
} else {
+ int offsetInMins = mCalenEditor->editedEntry()->alarm().timeOffset();
// If the alarm is not null,
// Check if all day event or not and then set the choices accordingly.
if (mCalenEditor->editedEntry()->alarm().isNull()) {
// Alarm is set off
- mReminderItem->setContentWidgetData("currentIndex", ReminderOff);
+ setCurrentIndex(ReminderOff);
if(mReminderTimeAdded) {
removeReminderTimeField();
}
} else if (!mCalenEditor->isAllDayEvent()) {
- // Get the reminder offset value.
- int reminderOffset =
- mCalenEditor->editedEntry()->alarm().timeOffset();
- // Get the index value for the reminder combo box from the hash
- // table.
- int index = mReminderHash.key(reminderOffset);
- mReminderItem->setContentWidgetData("currentIndex", index);
+ QTime currentTime = QTime::currentTime();
+
+ //TODO: Still need confirmation for proper behaviour when entry is edited after alarm has expired.
+ if (!repeatingEntry && sameDay && (currentTime.addSecs(offsetInMins * 60) >= mCalenEditor->editedEntry()->startTime().time())) {
+ setCurrentIndex(ReminderOff); //Alarm has expired already, so making it off.
+ //The slot for index 0 is not called, since after UpdateReminderChoicesForSameDay()
+ //index is 0 itself and there is no change. So explicitly calling it here.
+ handleReminderIndexChanged(0);
+ }
+ else {
+ setSavedMeetingReminderIndex();
+ }
} else {
// Insert reminder time field and display entry's reminder time.
// If past then disable the field.
@@ -205,31 +258,9 @@
if (pastEvent && mReminderTimeAdded) {
mCustomReminderTimeItem->setEnabled(false);
}
- QStringList reminderChoicesForAllDay;
- reminderChoicesForAllDay << hbTrId("txt_calendar_setlabel_reminder_val_off")
- << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
- << hbTrId("txt_calendar_setlabel_reminder_val_1_day_before")
- << hbTrId("txt_calendar_setlabel_reminder_val_2_days_before");
- mReminderItem->setContentWidgetData(QString("items"),
- reminderChoicesForAllDay);
- QTime referenceTime(0, 0, 0);
- // Set the appropriate reminder depending on the value of time offset.
- reminder = mCalenEditor->editedEntry()->alarm();
- int offsetInMins = reminder.timeOffset();
- if (offsetInMins < 0 || offsetInMins == 0) {
- mReminderItem->setContentWidgetData("currentIndex", ReminderOnEventDay);
- mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
- * 60));
- } else if (offsetInMins < numberOfMinutesInADay) {
- mReminderItem->setContentWidgetData("currentIndex", ReminderOneDayBefore);
- mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
- * 60));
- } else {
- mReminderItem->setContentWidgetData("currentIndex", ReminderTwoDaysBefore);
- offsetInMins %= (24 * 60);
- mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
- * 60));
- }
+ // Get the appropriate reminder index depending on the value of time offset.
+ int index = getReminderIndexBasedOnEntryAlarm();
+ mReminderItem->setContentWidgetData("currentIndex", index);
setDisplayTime();
}
if (pastEvent) {
@@ -243,7 +274,7 @@
}
/*!
- Triggerd from tapping on reminder item.
+ Triggered from tapping on reminder item.
Handles the reminder time change and updates the same in the event.
\param index The new index chosen in the reminder list.
*/
@@ -269,7 +300,7 @@
reminder.setAlarmSoundName(QString(" "));
}
} else {
- QDateTime reminderDateTimeForAllDay;
+ QDateTime reminderDateTimeForAllDay;
QDateTime
startDateTimeForAllDay(
mCalenEditor->editedEntry()->startTime().date(),
@@ -285,16 +316,21 @@
offset = 2;
}
if(!mReminderTimeAdded) {
- insertReminderTimeField()
-; }
+ insertReminderTimeField();
+ }
// If on same day as that of the event then check if time has been
// changed , if changed retain that else set default time.
if (offset == 0) {
if(mReminderTimeForAllDay == QTime(18, 0, 0, 0)) {
mReminderTimeForAllDay.setHMS(8, 0, 0);
- setDisplayTime();
}
+ }else {
+ // For the reminder options other than ReminderOnEventDay
+ // reset the default values since the time set for one option
+ // may not be valid for the other option
+ mReminderTimeForAllDay.setHMS(18, 0, 0, 0);
}
+ setDisplayTime();
reminderDateTimeForAllDay.setDate(
mCalenEditor->editedEntry()->startTime().date().addDays(
-offset));
@@ -370,6 +406,78 @@
}
/*!
+ Update the reminder choices when the meeting is on same day,
+ based on the time available from current time to start time of the event.
+ */
+void CalenEditorReminderField::UpdateReminderChoicesForSameDay(QTime startTime)
+{
+ QTime currentTime = QTime::currentTime();
+ int offset = currentTime.secsTo(startTime);
+
+ // Disconnect the slot and connect it back again at end to avoid unnecessary
+ // calls to handleReminderIndexChanged slot. Or else the slot gets called
+ // when we add all of items to the repeat combobox.
+ mEditorForm->removeConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
+
+ //The event start time is within 15mins from current time of today,
+ //then we cannot have alarms "15 mins before", "30mins before" and "1 hour before"
+ if (offset <= SecsIn15Mins)
+ {
+ QStringList reminderChoices;
+ //First to clear all items, we just set items with empty list.
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ reminderChoices << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_at_the_start");
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ }
+ //The event start time is within half and hour from current time of today
+ //then we cannot have alarms "30mins before" and "1 hour before"
+ else if (offset <= SecsIn30Mins)
+ {
+ QStringList reminderChoices;
+ //First to clear all items, we just set items with empty list.
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ reminderChoices << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_at_the_start")
+ << hbTrId("txt_calendar_setlabel_reminder_val_15_minutes_befo");
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ }
+ //The event start time is within an hour of the current time of today,
+ //then cannot have alarm "1 hour before".
+ else if (offset <= SecsInOneHour)
+ {
+ QStringList reminderChoices;
+ //First to clear all items, we just set items with empty list.
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ reminderChoices << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_at_the_start")
+ << hbTrId("txt_calendar_setlabel_reminder_val_15_minutes_befo")
+ << hbTrId("txt_calendar_setlabel_reminder_val_30_minutes_befo");
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ }
+ // The event start time is more than one hour from current time
+ // then we can have all choices for alarm.
+ else
+ {
+ QStringList reminderChoices;
+ //First to clear all items, we just set items with empty list.
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ reminderChoices << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_at_the_start")
+ << hbTrId("txt_calendar_setlabel_reminder_val_15_minutes_befo")
+ << hbTrId("txt_calendar_setlabel_reminder_val_30_minutes_befo")
+ << hbTrId("txt_calendar_setlabel_reminder_val_1_hour_before");
+ mReminderItem->setContentWidgetData("items", reminderChoices);
+ }
+ mReminderItem->setEnabled(true);
+ mEditorForm->addConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
+}
+
+/*!
Updates the reminder choices for an all day event.
\param referenceDate to indicate past or not.
*/
@@ -379,69 +487,91 @@
if (!mReminderTimeAdded){
insertReminderTimeField();
}
+ // This functions rearranges the reminder options based on the date and time
+ // To avoid the unecessary call to handleReminderIndexChanged
+ // the connection is removed.
+ mEditorForm->removeConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
+
+ // Since the combox box is not updated as per the current datetime
+ // there can be a conflict between the previousIndex set on the combobox
+ // and the actual index. This comes while populating an existing entry.
+ // So the index has to be taken from the entry alarm
+
+ AgendaAlarm actualAlarm = mCalenEditor->editedEntry()->alarm();
+ // Get the actual alarm index from the entry alarm which is been set
+ int actualIndex = getReminderIndexBasedOnEntryAlarm();
+ int offsetInMins = actualAlarm.timeOffset();
+
+ // Calculate the alarm time
+ QDateTime alarmDateTime;
+ alarmDateTime.setDate(referenceDate);
+ alarmDateTime.setTime(mCalenEditor->editedEntry()->startTime().time());
+ QTime checkTime = alarmDateTime.time().addSecs(-(offsetInMins * 60));
+ alarmDateTime.setTime(checkTime);
+
+ // The combox is updated based on the reference date which is beed passed.
+ // And the reminder time has to be set acoordingly
QStringList reminderChoicesForAllDay;
QDate tomorrow = QDate::currentDate().addDays(1);
QDate theDayAfterTomorrow = QDate::currentDate().addDays(2);
-
- // Get the previous index to retain if the alarm is valid
- QVariant countVariant = mReminderItem->contentWidgetData("currentIndex");
- int previousIndex = countVariant.toInt();
- AgendaAlarm previousAlarm = mCalenEditor->editedEntry()->alarm();
-
- // Update the reminder choices only if the alarm set is not valid
- // Get the alarm offset to check for the validity
- int offset = mCalenEditor->editedEntry()->alarm().timeOffset();
- bool update = true;
-
- // Calculate the alarm time
- QDateTime refDateTime;
- refDateTime.setDate(referenceDate);
- refDateTime.setTime(mCalenEditor->editedEntry()->startTime().time());
- QTime checkTime = refDateTime.time().addSecs(-(offset * 60));
- refDateTime.setTime(checkTime);
- // Check for valid alarm offset
- if(offset >= 0) {
- // If the alarm which was already set is valid,
- // then dont update the reminder choices
- if ((refDateTime > QDateTime::currentDateTime()) ||
- (refDateTime.date() == QDate::currentDate() && (
- refDateTime.time() > QTime::currentTime()))) {
- update = false;
- }
- }
+
// If the event is on a past date the default alarm will be off.
if (referenceDate < QDate::currentDate() ||
referenceDate == QDate::currentDate()) {
// Set reminder off for past event.
reminderChoicesForAllDay << hbTrId("txt_calendar_setlabel_reminder_val_off");
mReminderItem->setContentWidgetData(QString("items"),
- reminderChoicesForAllDay);
+ reminderChoicesForAllDay);
mReminderItem->setEnabled(false);
// Remove the reminder field if it was added
if(mReminderTimeAdded) {
removeReminderTimeField();
}
- } else if (theDayAfterTomorrow < referenceDate ||
- theDayAfterTomorrow == referenceDate) {
+ } else if (theDayAfterTomorrow < referenceDate) {
// If the event is on a future date which is two days after the current date
// The options are off, on event day, 1 day before and 2 days before
reminderChoicesForAllDay
+ << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
+ << hbTrId("txt_calendar_setlabel_reminder_val_1_day_before")
+ << hbTrId("txt_calendar_setlabel_reminder_val_2_days_before");
+ mReminderItem->setEnabled(true);
+ mCustomReminderTimeItem->setEnabled(true);
+ mReminderItem->setContentWidgetData(QString("items"),
+ reminderChoicesForAllDay);
+ } else if (theDayAfterTomorrow == referenceDate) {
+ // If the event is on a future date which is two days after the current date
+ // If the current time is before 6.00 pm (default for 2 days before)
+ // The options are off, on event day, 1 day before and 2 days before
+ if (QTime::currentTime() < QTime(18, 0, 0, 0)) {
+ reminderChoicesForAllDay
<< hbTrId("txt_calendar_setlabel_reminder_val_off")
<< hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
<< hbTrId("txt_calendar_setlabel_reminder_val_1_day_before")
<< hbTrId("txt_calendar_setlabel_reminder_val_2_days_before");
+ }else {
+ // If the event is on a future date which is two days after the current date
+ // the current time is after 6.00 pm (default for 2 days before)
+ // If its after the default time don't show the 2 days before option
+ reminderChoicesForAllDay
+ << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
+ << hbTrId("txt_calendar_setlabel_reminder_val_1_day_before");
+ }
mReminderItem->setEnabled(true);
mCustomReminderTimeItem->setEnabled(true);
mReminderItem->setContentWidgetData(QString("items"),
- reminderChoicesForAllDay);
- } else if (QTime::currentTime() < QTime(18, 0, 0, 0)) {
+ reminderChoicesForAllDay);
+ }else if (QTime::currentTime() < QTime(18, 0, 0, 0)) {
// If the event is on a future date which is one day after the current date
// and current time is before 6.00 pm.
// The options are off, on event day and 1 day before
reminderChoicesForAllDay
- << hbTrId("txt_calendar_setlabel_reminder_val_off")
- << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
- << hbTrId("txt_calendar_setlabel_reminder_val_1_day_before");
+ << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day")
+ << hbTrId("txt_calendar_setlabel_reminder_val_1_day_before");
mReminderItem->setEnabled(true);
mCustomReminderTimeItem->setEnabled(true);
mReminderItem->setContentWidgetData(QString("items"),
@@ -451,52 +581,87 @@
// and current time is after 6.00 pm.
// The options are off and on event day
reminderChoicesForAllDay
- << hbTrId("txt_calendar_setlabel_reminder_val_off")
- << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day");
+ << hbTrId("txt_calendar_setlabel_reminder_val_off")
+ << hbTrId("txt_calendar_setlabel_reminder_val_on_event_day");
mReminderItem->setEnabled(true);
mCustomReminderTimeItem->setEnabled(true);
mReminderItem->setContentWidgetData(QString("items"),
reminderChoicesForAllDay);
}
- // Set the proper index based on the validity of the previous index
+ // Get the count of the reminder options after the rearrangement
+ // based on the date and time
int count = reminderItemsCount();
- // By default, in case of reminder updation, its been agreed to set
- // ReminderOneDayBefore even though ReminderTwoDaysBefore holds good
- // If the ReminderOneDayBefore option is available set it or
- // else set it to ReminderOff
- if(count > ReminderOneDayBefore) {
- // Don't make the reminder off since
- // the valid reminder options are there in the combobox
- // So check for ReminderOff is needed
- if (update &&
- (previousIndex == ReminderOff || previousIndex >= ReminderOneDayBefore)) {
- // If the index has to be updated check the previous index value
- // And set the default reminder as 1 day before.
- mReminderItem->setContentWidgetData("currentIndex",
- ReminderOneDayBefore);
- }else {
- // Set the previous index since the alarm is valid
- mReminderItem->setContentWidgetData("currentIndex", previousIndex);
- // Set the previous alarm also as the value will be changed to default value
- // when the current index is been changed
- mCalenEditor->editedEntry()->setAlarm(previousAlarm);
+ // Set the reminder index
+
+ if (count <= actualIndex ||
+ alarmDateTime < QDateTime::currentDateTime() ||
+ actualIndex == ReminderOff) {
+ // This will be executed when the actual index is not
+ // available in the combobox or the alarm time is already passed
+ // or the actual alarm is off
+ // So set it as off
+ mReminderItem->setContentWidgetData("currentIndex", ReminderOff);
+ actualAlarm = AgendaAlarm();
+ mCalenEditor->editedEntry()->setAlarm(actualAlarm);
+ removeReminderTimeField();
+ }else {
+ // Set the actual reminder index
+ mReminderItem->setContentWidgetData("currentIndex", actualIndex);
+ if( actualIndex != ReminderOff) {
+ if(!mReminderTimeAdded) {
+ insertReminderTimeField();
+ }
+ mCalenEditor->editedEntry()->setAlarm(actualAlarm);
// Get the alarm time from the offset
- QTime alarmTime = refDateTime.time();
+ QTime alarmTime = alarmDateTime.time();
// Set the alarm time and display it on the button
mReminderTimeForAllDay.setHMS(
alarmTime.hour(),alarmTime.minute(),alarmTime.second());
setDisplayTime();
+ }else {
+ actualAlarm = AgendaAlarm();
+ removeReminderTimeField();
}
- }else {
- // Enters this condition if the previous index set is not valid or
- // the index is ReminderOff
- mReminderItem->setContentWidgetData("currentIndex", ReminderOff);
}
-
+ // Connect the slot for the index change
+ mEditorForm->addConnection(mReminderItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(handleReminderIndexChanged(int)));
+
OstTraceFunctionExit0( CALENEDITORREMINDERFIELD_UPDATEREMINDERCHOICESFORALLDAY_EXIT );
}
/*!
+ Gets the reminder index for all day events based on the alarm
+ which is saved for the entry
+ */
+int CalenEditorReminderField::getReminderIndexBasedOnEntryAlarm()
+{
+ // Get the appropriate reminder index depending on the value of time offset.
+ AgendaAlarm actualAlarm = mCalenEditor->editedEntry()->alarm();
+ QTime referenceTime(0, 0, 0);
+ int index = ReminderOff;
+ int offsetInMins = actualAlarm.timeOffset();
+ if(offsetInMins == -1) {
+ index = ReminderOff;
+ }else if (offsetInMins < 0 || offsetInMins == 0) {
+ index = ReminderOnEventDay;
+ mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+ * 60));
+ } else if (offsetInMins <= numberOfMinutesInADay) {
+ index = ReminderOneDayBefore;
+ mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+ * 60));
+ } else {
+ index = ReminderTwoDaysBefore;
+ offsetInMins %= (24 * 60);
+ mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+ * 60));
+ }
+ return index;
+}
+
+/*!
Insert the reminder time field for an all day event.
*/
void CalenEditorReminderField::insertReminderTimeField()
@@ -549,6 +714,8 @@
{
OstTraceFunctionEntry0( CALENEDITORREMINDERFIELD_REMOVEREMINDERTIMEFIELD_ENTRY );
mReminderTimeAdded = false;
+ mEditorForm->removeConnection(mCustomReminderTimeItem, SIGNAL(clicked()),
+ this, SLOT(launchReminderTimePicker()));
if (mCustomReminderTimeItem) {
QModelIndex reminderIndex =
mCalenEditorModel->indexFromItem(mCustomReminderTimeItem);
@@ -576,11 +743,29 @@
HbExtendedLocale locale = HbExtendedLocale::system();
mTimePicker = new HbDateTimePicker(mReminderTimeForAllDay);
+ // Set the display format
if(locale.timeStyle() == HbExtendedLocale::Time12) {
mTimePicker->setDisplayFormat("hh:mm ap");
}else {
mTimePicker->setDisplayFormat("hh:mm");
}
+
+ // Check if the entry is repeating based on the repeatuntil item
+ if(!mCalenEditor->isRepeatUntilItemAdded()) {
+ int index = currentReminderIndex();
+ QDate checkDate = mCalenEditor->editedEntry()->startTime().date();
+ // Restrict the time picker to show the valid time
+ // depending on the reminder options
+ // Take an offset of 5 mins
+ QTime minTime = QTime::currentTime().addSecs(5 * 60);
+ if(index == ReminderTwoDaysBefore && checkDate.addDays(-2) == QDate::currentDate()) {
+ mTimePicker->setMinimumTime(minTime);
+ }else if(index == ReminderOneDayBefore && checkDate.addDays(-1) == QDate::currentDate()) {
+ mTimePicker->setMinimumTime(minTime);
+ }else if(index == ReminderOnEventDay && checkDate == QDate::currentDate()) {
+ mTimePicker->setMinimumTime(minTime);
+ }
+ }
mTimePicker->setTime(mReminderTimeForAllDay);
popUp->setContentWidget(mTimePicker);
@@ -603,7 +788,28 @@
if (mReminderTimeForAllDay.isValid()) {
// Change the time displayed to that selected by the user.
setDisplayTime();
- handleReminderIndexChanged(currentReminderIndex());
+ int offset = 0;
+ if (currentReminderIndex() == ReminderOneDayBefore) {
+ offset = 1;
+ } else if (currentReminderIndex() == ReminderTwoDaysBefore) {
+ offset = 2;
+ }
+ QDateTime startDateTimeForAllDay(
+ mCalenEditor->editedEntry()->startTime().date(), QTime(0, 0, 0));
+ QDateTime reminderDateTimeForAllDay;
+ reminderDateTimeForAllDay.setDate(
+ mCalenEditor->editedEntry()->startTime().date().addDays(
+ -offset));
+ reminderDateTimeForAllDay.setTime(mReminderTimeForAllDay);
+ int seconds =
+ reminderDateTimeForAllDay.secsTo(startDateTimeForAllDay);
+ int timeOffset = seconds / 60;
+ mCustomReminderTimeItem->setEnabled(true);
+ AgendaAlarm reminder;
+ reminder.setTimeOffset(timeOffset);
+ reminder.setAlarmSoundName(QString(" "));
+ // Set the reminder to the entry.
+ mCalenEditor->editedEntry()->setAlarm(reminder);
}
OstTraceFunctionExit0( CALENEDITORREMINDERFIELD_SETREMINDERTIMEFORALLDAY_EXIT );
}
--- a/calendarui/caleneditor/src/caleneditorrepeatfield.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/caleneditor/src/caleneditorrepeatfield.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -32,6 +32,7 @@
// User Included
#include "caleneditorrepeatfield.h"
#include "caleneditorcustomitem.h"
+#include "caleneditorreminderfield.h"
#include "calendateutils.h"
#include "OstTraceDefinitions.h"
#ifdef OST_TRACE_COMPILER_IN_USE
@@ -290,102 +291,108 @@
repeatPropertyChange = false;
}
QDate repeatUntilDate = mRepeatUntilDate;
-
- if (value != mRepeatRoleValue)
- {
- mRepeatRoleValue = value;
- switch (value) {
- case DailyRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
+ // Update the repeat type only if its has been changed
+ // ie. if the previous repeatrole is different from the current repeat role
+ if (value != mRepeatRoleValue) {
+ mRepeatRoleValue = value;
+ switch (value) {
+ case DailyRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till one year for daily rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(1);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::DailyRule;
}
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till one year for daily rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(1);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
+ break;
+ case WorkdaysRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till one year for workdays rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(1);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
+ mIsWorkdays = true;
}
- mRepeatRuleType = AgendaRepeatRule::DailyRule;
- }
- break;
- case WorkdaysRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
+ break;
+ case WeeklyRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till one year for weekly rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(1);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
}
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till one year for workdays rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(1);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
+ break;
+ case BiWeeklyRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till one year for bi-weekly rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(1);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
+ mIsBiWeekly = true;
}
- mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
- mIsWorkdays = true;
- }
- break;
- case WeeklyRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
+ break;
+ case MonthlyRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till one year for monthly rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(1);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::MonthlyRule;
}
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till one year for weekly rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(1);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
+ break;
+ case YearlyRole: {
+ if (!mRepeatUntilItemAdded) {
+ insertRepeatUntilItem();
+ }
+ if (mCustomRepeatUntilItem) {
+ // Show default repeat until date till ten years for yearly rule
+ mRepeatUntilDate =
+ mCalenEditor->editedEntry()->startTime().date().addYears(10);
+ mCustomRepeatUntilItem->setContentWidgetData( "text",
+ locale.format(
+ mRepeatUntilDate, r_qtn_date_usual_with_zero));
+ }
+ mRepeatRuleType = AgendaRepeatRule::YearlyRule;
}
- mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
+ break;
+ default: {
+ removeRepeatUntilItem();
+ }
+ break;
}
- break;
- case BiWeeklyRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
- }
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till one year for bi-weekly rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(1);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
- }
- mRepeatRuleType = AgendaRepeatRule::WeeklyRule;
- mIsBiWeekly = true;
- }
- break;
- case MonthlyRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
- }
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till one year for monthly rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(1);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
- }
- mRepeatRuleType = AgendaRepeatRule::MonthlyRule;
- }
- break;
- case YearlyRole: {
- if (!mRepeatUntilItemAdded) {
- insertRepeatUntilItem();
- }
- if (mCustomRepeatUntilItem) {
- // Show default repeat until date till ten years for yearly rule
- mRepeatUntilDate = mCalenEditor->editedEntry()->startTime().date().addYears(10);
- mCustomRepeatUntilItem->setContentWidgetData( "text",
- locale.format( mRepeatUntilDate,
- r_qtn_date_usual_with_zero));
- }
- mRepeatRuleType = AgendaRepeatRule::YearlyRule;
- }
- break;
- default: {
- removeRepeatUntilItem();
- }
- break;
- }
}
if(!mCalenEditor->isNewEntry()) {
mCalenEditor->addDiscardAction();
@@ -394,6 +401,18 @@
// the reminder choices are updated
if(repeatPropertyChange || repeatUntilDate != mRepeatUntilDate) {
mCalenEditor->updateReminderChoices();
+ // Once the entry is changed from non repeating to repeating
+ // and if the alarm set is off
+ // Then change the reminder option to the default 'one day before'
+ // if the option is valid
+ if (mCalenEditor->isAllDayEvent() &&
+ repeatPropertyChange && mRepeatUntilItemAdded) {
+ if(!mCalenEditor->isReminderTimeForAllDayAdded() &&
+ mCalenEditor->getReminderCount() >= 3) {
+ mCalenEditor->setCurrentIndexOfReminderField(
+ CalenEditorReminderField::ReminderOneDayBefore);
+ }
+ }
}
OstTraceFunctionExit0( CALENEDITORREPEATFIELD_HANDLEREPEATINDEXCHANGED_EXIT );
}
@@ -517,6 +536,8 @@
void CalenEditorRepeatField::setRepeatUntilDate()
{
OstTraceFunctionEntry0( CALENEDITORREPEATFIELD_SETREPEATUNTILDATE_ENTRY );
+ //Get the previous date which was set
+ QDate previousDate = mRepeatUntilDate;
mRepeatUntilDate = mDatePicker->date();
if (mRepeatUntilDate.isValid()) {
HbExtendedLocale locale = HbExtendedLocale::system();
@@ -525,6 +546,18 @@
mCustomRepeatUntilItem->setContentWidgetData("text", dateString);
}
mCalenEditor->updateReminderChoices();
+ // If the entry's repeatuntil date is changed from past to a future date
+ // And if the alarm set set is off
+ // Then change the reminder option to the default 'one day before'
+ // if the option is valid
+ if (mCalenEditor->isAllDayEvent() && previousDate <= QDate::currentDate()) {
+ if(mRepeatUntilDate > QDate::currentDate() &&
+ !mCalenEditor->isReminderTimeForAllDayAdded() &&
+ mCalenEditor->getReminderCount() >= 3) {
+ mCalenEditor->setCurrentIndexOfReminderField(
+ CalenEditorReminderField::ReminderOneDayBefore);
+ }
+ }
OstTraceFunctionExit0( CALENEDITORREPEATFIELD_SETREPEATUNTILDATE_EXIT );
}
@@ -668,8 +701,17 @@
//Connecting back the slot for repeat index change before setting index.
connect(mRepeatComboBox, SIGNAL(currentIndexChanged(int)), this,
SLOT(handleRepeatIndexChanged(int)));
+ // By default the repeat combobox index will be 0
// Set the previous user's choice
mRepeatComboBox->setCurrentIndex(choice);
+ // If the previous user's choice is also zero, then slot
+ // handleRepeatIndexChanged will not be called as
+ // there is no change in current index
+ // So explicitly call updateReminderChoices to update the reminder choices
+ // for choice : 0 (Not repeated)
+ if(choice == 0) {
+ mCalenEditor->updateReminderChoices();
+ }
OstTraceFunctionExit0( DUP1_CALENEDITORREPEATFIELD_UPDATEREPEATCHOICES_EXIT );
}
--- a/calendarui/controller/data/xml/calendayview.docml Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/data/xml/calendayview.docml Thu Sep 02 20:25:23 2010 +0300
@@ -3,20 +3,20 @@
<widget name="dayView" type="HbView">
<widget name="dayViewDayInfo" type="HbGroupBox">
<bool name="collapsable" value="FALSE"/>
- </widget>
- <widget name="dayViewRegionalInfo" type="HbGroupBox">
- <bool name="collapsable" value="FALSE"/>
+ <real name="z" value="4"/>
</widget>
<widget name="dayViewContentWidget" type="HbWidget">
<widget name="dayViewHourScrollArea" type="HbScrollArea">
<enums name="verticalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
+ <real name="z" value="3"/>
</widget>
<widget name="dayViewContentScrollArea" type="HbScrollArea">
<enums name="scrollDirections" value="Horizontal"/>
<enums name="horizontalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
<enums name="clampingStyle" value="StrictClamping"/>
+ <real name="z" value="2"/>
</widget>
- <real name="z" value="0"/>
+ <real name="z" value="1"/>
<layout orientation="Horizontal" spacing="0un" type="linear">
<contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
<linearitem itemname="dayViewHourScrollArea"/>
@@ -27,10 +27,8 @@
<layout orientation="Vertical" spacing="0un" type="linear">
<contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
<linearitem itemname="dayViewDayInfo"/>
- <linearitem itemname="dayViewRegionalInfo"/>
<linearitem itemname="dayViewContentWidget"/>
</layout>
- <string name="title" value="Day view"/>
</widget>
<metadata activeUIState="Common ui state" display="QHD portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
--- a/calendarui/controller/data/xml/calenmonthview.docml Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/data/xml/calenmonthview.docml Thu Sep 02 20:25:23 2010 +0300
@@ -23,7 +23,6 @@
<widget name="monthViewExceptPreviewPane" type="HbWidget">
<widget name="monthTitle" type="HbLabel">
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_monthgrid_title"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
<real name="z" value="6"/>
<sizehint height="expr(var(hb-param-text-height-secondary) + 0.75un + 0.75un)" type="PREFERRED" width="52un"/>
@@ -33,44 +32,37 @@
</widget>
<widget name="dayNamesWidget" type="HbWidget">
<widget name="firstDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="secondDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="thirdDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="fourthDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="fifthDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="sixthDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
<widget name="seventhDayLabel" type="HbLabel">
- <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <string name="textColor" value="qtc_cal_week_day"/>
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
<real name="z" value="6"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-tiny)"/>
</widget>
@@ -169,7 +161,6 @@
<widget name="prevRegionalInfo" type="HbLabel">
<enums name="alignment" value="AlignCenter"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
- <string name="textColor" value="qtc_cal_day_preview_heading"/>
<contentsmargins bottom="0.75un" left="var(hb-param-margin-gene-left)" right="var(hb-param-margin-gene-right)" top="0.75un"/>
</widget>
<widget name="prevPaneLayout" type="HbWidget">
@@ -227,7 +218,6 @@
<widget name="currRegionalInfo" type="HbLabel">
<enums name="alignment" value="AlignCenter"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
- <string name="textColor" value="qtc_cal_day_preview_heading"/>
<contentsmargins bottom="0.75un" left="var(hb-param-margin-gene-left)" right="var(hb-param-margin-gene-right)" top="0.75un"/>
</widget>
<widget name="currPaneLayout" type="HbWidget">
@@ -285,7 +275,6 @@
<widget name="nextRegionalInfo" type="HbLabel">
<enums name="alignment" value="AlignCenter"/>
<fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
- <string name="textColor" value="qtc_cal_day_preview_heading"/>
<contentsmargins bottom="0.75un" left="var(hb-param-margin-gene-left)" right="var(hb-param-margin-gene-right)" top="0.75un"/>
</widget>
<widget name="nextPaneLayout" type="HbWidget">
--- a/calendarui/controller/inc/calenviewmanager.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/inc/calenviewmanager.h Thu Sep 02 20:25:23 2010 +0300
@@ -103,7 +103,28 @@
void constructOtherViews();
void launchSettingsView();
+
+ /**
+ * @brief check if Agenda Event Viewer is active
+ */
+ bool isEventViewerActive();
+
+ /**
+ * save the entry and close the editor
+ */
+ void saveAndCloseEditor();
+
+ /**
+ * close agenda event view
+ * should be call if agenda eevent view is open
+ */
+ void closeAgendaEventView();
+
+ /**
+ * remove the setting view
+ */
+ void removeSettingsView();
public: // from MCalenNotificationHandler
--- a/calendarui/controller/src/calencontroller.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/src/calencontroller.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -644,6 +644,8 @@
// launch the appropriate view
iViewManager->constructAndActivateView(view);
+ iIsFromServiceFrmWrk = false;
+
} else { // Calendar was in backgroung but now its being brought to foreground
// If current state is editing state or printing state
// or deleting state or sending state, then dont do anything as
@@ -654,11 +656,28 @@
(currentState == CCalenStateMachine::ECalenSendingState)) {
// simply return - we dont have anything to do
}
+
+ else if (currentState == CCalenStateMachine::ECalenViewingState) {
+ if(iViewManager->isEventViewerActive()){
+ iViewManager->closeAgendaEventView();
+ }
+ }
else if (currentState == CCalenStateMachine::ECalenEditingState) {
- // close the editor and save the entry
+ // close the editor and save the entry if application is in background
//and launch the desired view
- iActionUi->saveAndCloseEditor();
+ if(iViewManager->isEventViewerActive()){
+ iViewManager->saveAndCloseEditor();
+ iViewManager->closeAgendaEventView();
+ }
+ else{
+ iActionUi->saveAndCloseEditor();
+ }
}
+
+ else if (currentState == CCalenStateMachine::ECalenSettingsState){
+ iViewManager->removeSettingsView();
+ }
+
// Set the context properly
mContext->setFocusDateAndTime(dateTime);
IssueCommandL(view);
--- a/calendarui/controller/src/calendocloader.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/src/calendocloader.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -153,10 +153,6 @@
QObject *calenDayInfo = new HbGroupBox();
calenDayInfo->setObjectName(name);
return calenDayInfo;
- } else if (name == QString(CALEN_DAYVIEW_REGIONALINFO)) {
- QObject *calenRegionalInfo = new HbGroupBox();
- calenRegionalInfo->setObjectName(name);
- return calenRegionalInfo;
} else if (name == QString(CALEN_DAYVIEW_CONTENTWIDGET)) {
QObject *calenContentWidget = new HbWidget();
calenContentWidget->setObjectName(name);
--- a/calendarui/controller/src/calenviewmanager.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/controller/src/calenviewmanager.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -258,6 +258,9 @@
Q_ASSERT_X(mCalenMonthView, "calenviewmanager.cpp",
"Unable to load calenMonth view");
+ // Set the parent to delete the view once will exit the application
+ mCalenMonthView->setParent(this);
+
// Setup the month view.
mCalenMonthView->setupView(mMonthViewDocLoader);
@@ -290,6 +293,9 @@
qFatal("calenviewmanager.cpp : Unable to find agenda view");
}
+ // Set the parent to delete the view once will exit the application
+ mCalenAgendaView->setParent(this);
+
// Setup the agenda view
mCalenAgendaView->setupView(mAgendaViewDocLoader);
@@ -326,6 +332,9 @@
qFatal("calenviewmanager.cpp : Unable to find day view");
}
+ // Set the parent to delete the view once will exit the application
+ mCalenDayView->setParent(this);
+
// Set up the day view - day view takes the ownership
mCalenDayView->setupView(docLoader);
}
@@ -689,6 +698,9 @@
qFatal("calenviewmanager.cpp : Unable to find alternate agenda view");
}
+ // Set the parent to delete the view once will exit the application
+ mCalenAgendaViewAlt->setParent(this);
+
// Setup the agenda view
mCalenAgendaViewAlt->setupView(mAgendaViewAltDocLoader);
OstTraceFunctionExit0( CALENVIEWMANAGER_LOADALTERNATEAGENDAVIEW_EXIT );
@@ -944,12 +956,17 @@
// solution for the month view implements the construction in two phases so
// it needs to be refactored and a common solution needs to be put here. So
// that code doesn't break if another view is added tomorow
- if (mCalenMonthView) {
+ HbView *currentview = mController.MainWindow().currentView();
+
+ if (mCalenMonthView && currentview == mCalenMonthView) {
mCalenMonthView->fetchEntriesAndUpdateModel();
}
- else if (mCalenAgendaView) {
+ else if (mCalenAgendaView && currentview == mCalenAgendaView) {
mCalenAgendaView->doPopulation();
}
+ else if (mCalenDayView && currentview == mCalenDayView) {
+ mCalenDayView->doPopulation();
+ }
// Calls the emitAppReady function of CalenController. Need to emit this
// signal after the view is fully constructed & populated
// with actual data and ready to be used. So entry view & instance view
@@ -1039,4 +1056,53 @@
OstTraceFunctionExit0( CALENVIEWMANAGER_LAUNCHSETTINGSVIEW_EXIT );
}
+
+// ----------------------------------------------------------------------------
+// CalenViewManager::removeSettingsView
+// remove settings view
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::removeSettingsView()
+{
+ if(mSettingsView){
+ mController.Services().MainWindow().removeView(mSettingsView);
+ }
+}
+
+// ----------------------------------------------------------------------------
+// CalenViewManager::isEventViewerActive
+// check if Agenda Event Viewer is active
+// ----------------------------------------------------------------------------
+//
+bool CalenViewManager::isEventViewerActive()
+{
+ if(mCalenEventViewer)
+ return true;
+ else
+ return false;
+}
+
+// ----------------------------------------------------------------------------
+// CalenViewManager::saveAndCloseEditor
+// save the entry and close the editor
+// isEventViewerActive() should be called before this function
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::saveAndCloseEditor()
+{
+ mCalenEventViewer->saveAndCloseEditor();
+}
+
+// ----------------------------------------------------------------------------
+// CalenViewManager::closeAgendaEventView
+// close the agenda event view
+// isEventViewerActive() should be called before this function
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::closeAgendaEventView()
+{
+ mCalenEventViewer->closeAgendaEventView();
+}
+
+
// End of file --Don't remove this.
--- a/calendarui/inc/calencommon.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/inc/calencommon.h Thu Sep 02 20:25:23 2010 +0300
@@ -81,7 +81,6 @@
#define CALEN_DAYVIEW_DOCML ":/xml/calendayview.docml"
#define CALEN_DAYVIEW "dayView"
#define CALEN_DAYVIEW_DAYINFO "dayViewDayInfo"
-#define CALEN_DAYVIEW_REGIONALINFO "dayViewRegionalInfo"
#define CALEN_DAYVIEW_CONTENTWIDGET "dayViewContentWidget"
#define CALEN_DAYVIEW_HOURSCROLLAREA "dayViewHourScrollArea"
#define CALEN_DAYVIEW_CONTENTSCROLLAREA "dayViewContentScrollArea"
--- a/calendarui/regionalplugins/calenregionalutil/calenregionalutil.pro Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/calenregionalutil.pro Thu Sep 02 20:25:23 2010 +0300
@@ -44,7 +44,7 @@
./src/calenlunarinfoprovider.cpp \
./src/calenlunarlocalizedinfo.cpp \
./src/calenlunarlocalizer.cpp \
- ./src/calensolarterms.cpp \
+ ./src/calensolarterms.cpp
--- a/calendarui/regionalplugins/calenregionalutil/eabi/calenregionalutilu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/eabi/calenregionalutilu.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,27 +1,41 @@
EXPORTS
_ZN15TCalenLunarInfo10AnimalYearEv @ 1 NONAME
- _ZN20CCalenLunarLocalizer10ConstructLEv @ 2 NONAME
- _ZN20CCalenLunarLocalizer16GetExtraRowTextLER24CCalenLunarLocalizedInfo @ 3 NONAME
- _ZN20CCalenLunarLocalizer4NewLEv @ 4 NONAME
- _ZN20CCalenLunarLocalizer9LocalizeLER15TCalenLunarInfo @ 5 NONAME
- _ZN20CCalenLunarLocalizerC1Ev @ 6 NONAME
- _ZN20CCalenLunarLocalizerC2Ev @ 7 NONAME
- _ZN20CCalenLunarLocalizerD0Ev @ 8 NONAME
- _ZN20CCalenLunarLocalizerD1Ev @ 9 NONAME
- _ZN20CCalenLunarLocalizerD2Ev @ 10 NONAME
- _ZN23CCalenExtraRowFormatter26FormatExtraRowInformationLER24CCalenLunarLocalizedInfoR6RArrayINS0_6TFieldEE @ 11 NONAME
- _ZN23CCalenExtraRowFormatter4NewLEv @ 12 NONAME
- _ZN23CCalenExtraRowFormatterD0Ev @ 13 NONAME
- _ZN23CCalenExtraRowFormatterD1Ev @ 14 NONAME
- _ZN23CCalenExtraRowFormatterD2Ev @ 15 NONAME
- _ZN23CCalenLunarInfoProvider13GetLunarInfoLERK5TTime @ 16 NONAME
- _ZN23CCalenLunarInfoProvider4NewLER3RFs @ 17 NONAME
- _ZN23CCalenLunarInfoProviderD0Ev @ 18 NONAME
- _ZN23CCalenLunarInfoProviderD1Ev @ 19 NONAME
- _ZN23CCalenLunarInfoProviderD2Ev @ 20 NONAME
- _ZN24CCalenLunarLocalizedInfo4NewLEv @ 21 NONAME
- _ZN24CCalenLunarLocalizedInfo8GetFieldENS_6TFieldE @ 22 NONAME
- _ZN24CCalenLunarLocalizedInfoD0Ev @ 23 NONAME
- _ZN24CCalenLunarLocalizedInfoD1Ev @ 24 NONAME
- _ZN24CCalenLunarLocalizedInfoD2Ev @ 25 NONAME
+ _ZN15TCalenLunarInfo11HasFestivalEv @ 2 NONAME
+ _ZN15TCalenLunarInfo12HasSolarTermEv @ 3 NONAME
+ _ZN16CCalenSolarTerms19CheckSolarTermDateLERK9TDateTime @ 4 NONAME
+ _ZN16CCalenSolarTerms4NewLER3RFs @ 5 NONAME
+ _ZN16CCalenSolarTermsD0Ev @ 6 NONAME
+ _ZN16CCalenSolarTermsD1Ev @ 7 NONAME
+ _ZN16CCalenSolarTermsD2Ev @ 8 NONAME
+ _ZN20CCalenLunarLocalizer10ConstructLEv @ 9 NONAME
+ _ZN20CCalenLunarLocalizer16GetExtraRowTextLER24CCalenLunarLocalizedInfo @ 10 NONAME
+ _ZN20CCalenLunarLocalizer4NewLEv @ 11 NONAME
+ _ZN20CCalenLunarLocalizer9LocalizeLER15TCalenLunarInfo @ 12 NONAME
+ _ZN20CCalenLunarLocalizerC1Ev @ 13 NONAME
+ _ZN20CCalenLunarLocalizerC2Ev @ 14 NONAME
+ _ZN20CCalenLunarLocalizerD0Ev @ 15 NONAME
+ _ZN20CCalenLunarLocalizerD1Ev @ 16 NONAME
+ _ZN20CCalenLunarLocalizerD2Ev @ 17 NONAME
+ _ZN23CCalenExtraRowFormatter26FormatExtraRowInformationLER24CCalenLunarLocalizedInfoR6RArrayINS0_6TFieldEE @ 18 NONAME
+ _ZN23CCalenExtraRowFormatter4NewLEv @ 19 NONAME
+ _ZN23CCalenExtraRowFormatterD0Ev @ 20 NONAME
+ _ZN23CCalenExtraRowFormatterD1Ev @ 21 NONAME
+ _ZN23CCalenExtraRowFormatterD2Ev @ 22 NONAME
+ _ZN23CCalenLunarInfoProvider13GetLunarInfoLERK5TTime @ 23 NONAME
+ _ZN23CCalenLunarInfoProvider4NewLER3RFs @ 24 NONAME
+ _ZN23CCalenLunarInfoProviderD0Ev @ 25 NONAME
+ _ZN23CCalenLunarInfoProviderD1Ev @ 26 NONAME
+ _ZN23CCalenLunarInfoProviderD2Ev @ 27 NONAME
+ _ZN24CCalenLunarLocalizedInfo10AnimalYearEv @ 28 NONAME
+ _ZN24CCalenLunarLocalizedInfo13FullLunarDateEv @ 29 NONAME
+ _ZN24CCalenLunarLocalizedInfo13GregorianDateEv @ 30 NONAME
+ _ZN24CCalenLunarLocalizedInfo16LunarMonthAndDayEv @ 31 NONAME
+ _ZN24CCalenLunarLocalizedInfo4NewLEv @ 32 NONAME
+ _ZN24CCalenLunarLocalizedInfo8FestivalEv @ 33 NONAME
+ _ZN24CCalenLunarLocalizedInfo8GetFieldENS_6TFieldE @ 34 NONAME
+ _ZN24CCalenLunarLocalizedInfo9LunarYearEv @ 35 NONAME
+ _ZN24CCalenLunarLocalizedInfo9SolarTermEv @ 36 NONAME
+ _ZN24CCalenLunarLocalizedInfoD0Ev @ 37 NONAME
+ _ZN24CCalenLunarLocalizedInfoD1Ev @ 38 NONAME
+ _ZN24CCalenLunarLocalizedInfoD2Ev @ 39 NONAME
--- a/calendarui/regionalplugins/calenregionalutil/inc/calenlunarlocalizedinfo.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/inc/calenlunarlocalizedinfo.h Thu Sep 02 20:25:23 2010 +0300
@@ -51,13 +51,13 @@
*/
IMPORT_C const TDesC& GetField( TField aField );
- IMPORT_C const TDesC& Festival() { return iFestival; }
- IMPORT_C const TDesC& SolarTerm() { return iSolarTerm; }
- IMPORT_C const TDesC& FullLunarDate() { return iFullLunarDate; }
- IMPORT_C const TDesC& LunarYear() { return iLunarYear; }
- IMPORT_C const TDesC& LunarMonthAndDay() { return iLunarMonthAndDay; }
- IMPORT_C const TDesC& AnimalYear() { return iAnimalYear; }
- IMPORT_C const TDesC& GregorianDate() { return iGregorianDate; }
+ IMPORT_C const TDesC& Festival();
+ IMPORT_C const TDesC& SolarTerm();
+ IMPORT_C const TDesC& FullLunarDate();
+ IMPORT_C const TDesC& LunarYear();
+ IMPORT_C const TDesC& LunarMonthAndDay();
+ IMPORT_C const TDesC& AnimalYear();
+ IMPORT_C const TDesC& GregorianDate();
private:
CCalenLunarLocalizedInfo();
--- a/calendarui/regionalplugins/calenregionalutil/src/calenlunarlocalizedinfo.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/src/calenlunarlocalizedinfo.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -99,3 +99,80 @@
}
}
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::Festival
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::Festival()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_FESTIVAL_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_FESTIVAL_EXIT );
+ return iFestival;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::SolarTerm
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::SolarTerm()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_SOLARTERM_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_SOLARTERM_EXIT );
+ return iSolarTerm;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::FullLunarDate
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::FullLunarDate()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_EXIT );
+ return iFullLunarDate;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::LunarYear
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::LunarYear()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_LUNARYEAR_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_LUNARYEAR_EXIT );
+ return iLunarYear;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::LunarMonthAndDay
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::LunarMonthAndDay()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_EXIT );
+ return iLunarMonthAndDay;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::AnimalYear
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::AnimalYear()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_EXIT );
+ return iAnimalYear;
+ }
+
+// -----------------------------------------------------------------------------
+// CCalenLunarLocalizedInfo::GregorianDate
+// -----------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CCalenLunarLocalizedInfo::GregorianDate()
+ {
+ OstTraceFunctionEntry0( CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_ENTRY );
+ OstTraceFunctionExit0( CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_EXIT );
+ return iGregorianDate;
+ }
+
--- a/calendarui/regionalplugins/calenregionalutil/traces/calenlunarlocalizedinfoTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/traces/calenlunarlocalizedinfoTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -16,6 +16,20 @@
#define CCALENLUNARLOCALIZEDINFO_CONSTRUCTL_EXIT 0x8a002d
#define CCALENLUNARLOCALIZEDINFO_GETFIELD_ENTRY 0x8a002e
#define CCALENLUNARLOCALIZEDINFO_GETFIELD_EXIT 0x8a002f
+#define CCALENLUNARLOCALIZEDINFO_FESTIVAL_ENTRY 0x8a0054
+#define CCALENLUNARLOCALIZEDINFO_FESTIVAL_EXIT 0x8a0055
+#define CCALENLUNARLOCALIZEDINFO_SOLARTERM_ENTRY 0x8a0056
+#define CCALENLUNARLOCALIZEDINFO_SOLARTERM_EXIT 0x8a0057
+#define CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_ENTRY 0x8a0058
+#define CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_EXIT 0x8a0059
+#define CCALENLUNARLOCALIZEDINFO_LUNARYEAR_ENTRY 0x8a005a
+#define CCALENLUNARLOCALIZEDINFO_LUNARYEAR_EXIT 0x8a005b
+#define CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_ENTRY 0x8a005c
+#define CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_EXIT 0x8a005d
+#define CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_ENTRY 0x8a005e
+#define CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_EXIT 0x8a005f
+#define CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_ENTRY 0x8a0060
+#define CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_EXIT 0x8a0061
#endif
--- a/calendarui/regionalplugins/calenregionalutil/traces/fixed_id.definitions Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/calenregionalutil/traces/fixed_id.definitions Thu Sep 02 20:25:23 2010 +0300
@@ -16,14 +16,28 @@
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARINFOPROVIDER_GETLUNARINFOL_EXIT=0x25
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARINFOPROVIDER_NEWL_ENTRY=0x1c
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARINFOPROVIDER_NEWL_EXIT=0x1d
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_ENTRY=0x5e
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_ANIMALYEAR_EXIT=0x5f
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_CCALENLUNARLOCALIZEDINFO_ENTRY=0x28
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_CCALENLUNARLOCALIZEDINFO_EXIT=0x29
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_CONSTRUCTL_ENTRY=0x2c
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_CONSTRUCTL_EXIT=0x2d
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_FESTIVAL_ENTRY=0x54
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_FESTIVAL_EXIT=0x55
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_ENTRY=0x58
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_FULLLUNARDATE_EXIT=0x59
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_GETFIELD_ENTRY=0x2e
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_GETFIELD_EXIT=0x2f
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_ENTRY=0x60
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_GREGORIANDATE_EXIT=0x61
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_ENTRY=0x5c
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_LUNARMONTHANDDAY_EXIT=0x5d
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_LUNARYEAR_ENTRY=0x5a
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_LUNARYEAR_EXIT=0x5b
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_NEWL_ENTRY=0x26
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_NEWL_EXIT=0x27
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_SOLARTERM_ENTRY=0x56
+[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZEDINFO_SOLARTERM_EXIT=0x57
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZER_CCALENLUNARLOCALIZER_ENTRY=0x32
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZER_CCALENLUNARLOCALIZER_EXIT=0x33
[TRACE]TRACE_FLOW[0x8A]_CCALENLUNARLOCALIZER_CONSTRUCTL_ENTRY=0x36
--- a/calendarui/regionalplugins/lunarchinese/bwins/calenlunarchinesepluginu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/lunarchinese/bwins/calenlunarchinesepluginu.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,10 +1,4 @@
EXPORTS
?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * ImplementationGroupProxy(int &)
- ?AnimalYear@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 2 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::AnimalYear(void)
- ?SolarTerm@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 3 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::SolarTerm(void)
- ?GregorianDate@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 4 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::GregorianDate(void)
- ?LunarMonthAndDay@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 5 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::LunarMonthAndDay(void)
- ?Festival@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 6 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::Festival(void)
- ?FullLunarDate@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 7 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::FullLunarDate(void)
- ?LunarYear@CCalenLunarLocalizedInfo@@QAEABVTDesC16@@XZ @ 8 NONAME ; class TDesC16 const & CCalenLunarLocalizedInfo::LunarYear(void)
+
--- a/calendarui/regionalplugins/lunarchinese/src/CalenLunarChinesePlugin.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/regionalplugins/lunarchinese/src/CalenLunarChinesePlugin.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -208,7 +208,7 @@
void CCalenLunarChinesePlugin::CustomiseMenu(HbMenu* aHbMenu)
{
OstTraceFunctionEntry0( CCALENLUNARCHINESEPLUGIN_CUSTOMISEMENU_ENTRY );
- HbAction* lunarAction = new HbAction("Show Lunar Data");
+ HbAction* lunarAction = new HbAction(hbTrId("txt_calendar_opt_show_lunar_data"));
QList<QAction*> actionList = aHbMenu->actions();
TInt count = actionList.count() - 1; //To show the option "show lunar data"
//as a second last action item for all
--- a/calendarui/views/bwins/calenviewsu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/bwins/calenviewsu.def Thu Sep 02 20:25:23 2010 +0300
@@ -199,4 +199,12 @@
?moveFinished@CalenDayContentScrollArea@@AAEXXZ @ 198 NONAME ; void CalenDayContentScrollArea::moveFinished(void)
?scrollToHour@CalenDayHourScrollArea@@QAEXH@Z @ 199 NONAME ; void CalenDayHourScrollArea::scrollToHour(int)
??1CalenDayContentScrollArea@@UAE@XZ @ 200 NONAME ; CalenDayContentScrollArea::~CalenDayContentScrollArea(void)
+ ?handleThemeChange@CalenMonthGrid@@AAEXXZ @ 201 NONAME ; void CalenMonthGrid::handleThemeChange(void)
+ ?effectStarted@CalenPreviewPane@@QAEXXZ @ 202 NONAME ; void CalenPreviewPane::effectStarted(void)
+ ?handleThemeChange@CalenThickLinesDrawer@@AAEXXZ @ 203 NONAME ; void CalenThickLinesDrawer::handleThemeChange(void)
+ ?effectFinished@CalenPreviewPane@@QAEXXZ @ 204 NONAME ; void CalenPreviewPane::effectFinished(void)
+ ?handleThemeChange@CalenMonthView@@AAEXXZ @ 205 NONAME ; void CalenMonthView::handleThemeChange(void)
+ ?isHorizontalSwipe@CalenDayContentScrollArea@@ABE_NM@Z @ 206 NONAME ; bool CalenDayContentScrollArea::isHorizontalSwipe(float) const
+ ?handleThemeChange@CalenPreviewPane@@QAEXXZ @ 207 NONAME ; void CalenPreviewPane::handleThemeChange(void)
+ ?disconnectAboutToQuitEvent@CalenMonthView@@QAEXXZ @ 208 NONAME ; void CalenMonthView::disconnectAboutToQuitEvent(void)
--- a/calendarui/views/dayview/inc/calendaycommonheaders.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/inc/calendaycommonheaders.h Thu Sep 02 20:25:23 2010 +0300
@@ -44,12 +44,12 @@
/*!
The minimum width [un] of touchable event bubble (UI spec)
*/
-const qreal KCalenMinTouchableEventWidth = 8.2;
+const qreal KCalenMinTouchableEventWidth = 8.0;
/*!
The minimum width [un] of event bubble (UI spec)
*/
-const qreal KCalenMinBubbleWidth = 3.0;
+const qreal KCalenMinEventWidth = 3.0;
/*!
The width [un] of time strip (indicator) in event bubble (UI spec)
@@ -57,11 +57,21 @@
const qreal KCalenTimeStripWidth = 1.5;
/*!
- The width [un] of space beetwen event buubles in Day View (UI spec)
+ The minimum width [un] of time strip (indicator) in event bubble (UI spec)
+ */
+const qreal KCalenMinTimeStripWidth = 1.4;
+
+/*!
+ The width [un] of space beetwen event bubbles in Day View (UI spec)
*/
const qreal KCalenSpaceBeetwenEvents = 1.5;
/*!
+ The minimum width [un] of space beetwen event bubbles in Day View (UI spec)
+ */
+const qreal KCalenMinSpaceBeetwenEvents = 0.1;
+
+/*!
Number of All day events displayed in single day that remains touchable
in portrait orientation (UI spec)
*/
@@ -79,12 +89,17 @@
const qreal KCalenHourLineThickness = 0.15;
/*!
- Thickness [un] of time line (UI spec)
+ Thickness [un] of current time line (UI spec)
*/
-const qreal KCalenTimeLineThickness = 0.75;
+const qreal KCalenCurrentTimeLineThickness = 0.75;
/*!
- Color scheme for hour line (UI spec)
+ Width [un] of dashes in half-hour line (UI spec)
+ */
+const qreal KCalenHalfHourLineDashWidth = 1.5;
+
+/*!
+ Color scheme for hour and half-hour lines (UI spec)
*/
const QString KCalenHourLineColor = "qtc_cal_day_hour_lines";
@@ -93,6 +108,16 @@
*/
const QString KCalenTimeLineColor = "qtc_cal_month_current_day";
+/*!
+ Color scheme for Day View background in portrait mode (UI spec)
+ */
+const QString KCalenBackgroundColorPortrait = "qtg_graf_cal_bg_prt";
+
+/*!
+ Color scheme for Day View background in landscape mode (UI spec)
+ */
+const QString KCalenBackgroundColorLandscape = "qtg_graf_cal_bg_lsc";
+
// Enumerations
--- a/calendarui/views/dayview/inc/calendaycontentscrollarea.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/inc/calendaycontentscrollarea.h Thu Sep 02 20:25:23 2010 +0300
@@ -19,7 +19,7 @@
#define CALENDAYCONTENTSCROLLAREA_H_
// System includes
-#include <hbscrollarea.h>
+#include <HbScrollArea>
// User includes
#include "calendaycommonheaders.h"
--- a/calendarui/views/dayview/inc/calendaycontentwidget.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/inc/calendaycontentwidget.h Thu Sep 02 20:25:23 2010 +0300
@@ -19,7 +19,7 @@
#define CALENDAYCONTENTWIDGET_H_
// System includes
-#include <hbwidget.h>
+#include <HbWidget>
// User includes
#include "calendaycommonheaders.h"
@@ -61,8 +61,8 @@
void relayoutWidgets(CalenScrollDirection scrollTo);
void widgetScrolled(const QPointF &newPos);
-private:
- void initializeViews(QGraphicsItem *parent);
+protected:
+ void initializeViews();
private:
QGraphicsLinearLayout* mLayout; //!< Linear layout for day views
--- a/calendarui/views/dayview/inc/calendaystatusstrip.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/inc/calendaystatusstrip.h Thu Sep 02 20:25:23 2010 +0300
@@ -47,15 +47,11 @@
qreal range() const;
- QColor color() const;
-
CalenDayStatusStrip::DrawingStyle drawingStyle() const;
QPair<QTime,QTime> startEndTime() const;
- void setRange(qreal mRange);
-
- void setColor(QColor mStripColor);
+ void setRange(qreal range);
void setDrawingStyle(CalenDayStatusStrip::DrawingStyle mDrawingStyle);
@@ -78,7 +74,6 @@
private:
qreal mRange; //!<Distance between lines
- QColor mColor;//!<Color of status stripe
CalenDayStatusStrip::DrawingStyle mDrawingStyle;//!<Specify style of drawing
/*!
Original start and end time of event
--- a/calendarui/views/dayview/inc/calendayview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/inc/calendayview.h Thu Sep 02 20:25:23 2010 +0300
@@ -32,6 +32,7 @@
class XQSettingsManager;
class QVariant;
class HbGroupBox;
+class HbFrameItem;
class AgendaEntry;
class CalenDocLoader;
class CalenDayContentScrollArea;
@@ -150,6 +151,7 @@
* Scrolls content to correct position after view repopulation
*/
void setupViewport();
+ void orientationChanged(Qt::Orientation orientation);
private:
/**
@@ -175,6 +177,7 @@
CalenDayContentWidget* mContentWidget; //!< Content widget
CalenDayHourScrollArea* mHourScrollArea; //!< Scroll area for hour elements
QGraphicsLinearLayout* mVLayout; //!< Vertical layout for day view
+ HbWidget* mMainContainer;//!< Container widget for hour elements and content
CalenDocLoader* mDocLoader; //!< Document loader for day view
@@ -183,7 +186,7 @@
private:
XQSettingsManager* mSettingsManager;
- XQSettingsKey mRegionalInfo;
+ XQSettingsKey mRegionalInfoKey;
MCalenServices &mServices;
/**
@@ -198,6 +201,8 @@
* \brief It keep pointer to go to Today action from menu.
*/
HbAction *mGoToTodayMenuAction;
+
+ HbFrameItem *mBg; //!< Background graphic for content and hour elements
};
--- a/calendarui/views/dayview/resources/calendayeventspane.css Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/resources/calendayeventspane.css Thu Sep 02 20:25:23 2010 +0300
@@ -1,4 +1,4 @@
CalenDayEventsPane {
- pref-height: expr(2*var(hb-param-text-height-secondary) + 2*var(hb-param-margin-gene-middle-vertical) + 3un);
+ pref-height: expr(2*var(hb-param-text-height-secondary) + 2*var(hb-param-margin-gene-middle-vertical) + 4.1un);
size-policy-vertical: fixed;
}
\ No newline at end of file
--- a/calendarui/views/dayview/resources/calendayhourelement.css Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/resources/calendayhourelement.css Thu Sep 02 20:25:23 2010 +0300
@@ -1,6 +1,6 @@
CalenDayHourElement {
layout: customCalendarLayout;
- pref-height: expr(2*var(hb-param-text-height-secondary) + 2*var(hb-param-margin-gene-middle-vertical) + 3un);
+ pref-height: expr(2*var(hb-param-text-height-secondary) + 2*var(hb-param-margin-gene-middle-vertical) + 4.1un);
size-policy-vertical: fixed;
}
@@ -25,6 +25,6 @@
}
CalenDayHourElement::bottomSpacer{
- pref-height: 3un;
+ pref-height: 4.1un;
size-policy-vertical: expanding;
}
\ No newline at end of file
--- a/calendarui/views/dayview/resources/calendayitem.css Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/resources/calendayitem.css Thu Sep 02 20:25:23 2010 +0300
@@ -1,12 +1,12 @@
-CalenDayItem{
+CalenDayItem {
layout: noIconLayout;
}
-CalenDayItem[!eventDescription][!backgroundFrame]{
+CalenDayItem[!eventDescription][!backgroundFrame] {
layout: noIconNoTextNoBkgLayout;
}
-CalenDayItem[!eventDescription][backgroundFrame]{
+CalenDayItem[!eventDescription][backgroundFrame] {
layout: noIconNoTextLayout;
}
@@ -20,11 +20,5 @@
}
CalenDayItem::colorStripe {
- pref-width: 1.5un;
- size-policy-horizontal: fixed;
+ size-policy-horizontal: fixed;
}
-
-CalenDayItem::spacerItem{
- pref-width: 1.5un;
- size-policy-horizontal: expanding;
-}
--- a/calendarui/views/dayview/resources/calendayitem.widgetml Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/resources/calendayitem.widgetml Thu Sep 02 20:25:23 2010 +0300
@@ -11,8 +11,8 @@
<meshitem src="colorStripe" srcEdge="LEFT" dst="" dstEdge="LEFT" spacing="-var(hb-param-margin-gene-middle-horizontal)"/>
<meshitem src="colorStripe" srcEdge="RIGHT" dst="eventDescription" dstEdge="LEFT" spacing="var(hb-param-margin-gene-middle-horizontal)"/>
- <meshitem src="eventDescription" srcEdge="TOP" dst="" dstEdge="TOP" spacing="-var(hb-param-margin-gene-middle-vertical)" />
- <meshitem src="eventDescription" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" spacing="var(hb-param-margin-gene-middle-vertical)" />
+ <meshitem src="eventDescription" srcEdge="TOP" dst="" dstEdge="TOP" spacing="-var(hb-param-margin-gene-top)" />
+ <meshitem src="eventDescription" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" spacing="var(hb-param-margin-gene-bottom)" />
<meshitem src="eventDescription" srcEdge="RIGHT" dst="" dstEdge="RIGHT" spacing="var(hb-param-margin-gene-right)"/>
</layout>
@@ -25,7 +25,7 @@
<meshitem src="colorStripe" srcEdge="TOP" dst="" dstEdge="TOP" />
<meshitem src="colorStripe" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
<meshitem src="colorStripe" srcEdge="LEFT" dst="" dstEdge="LEFT" spacing="-var(hb-param-margin-gene-middle-horizontal)"/>
- <meshitem src="colorStripe" srcEdge="RIGHT" dst="" dstEdge="RIGHT" spacer="spacerItem"/>
+ <meshitem src="colorStripe" srcEdge="RIGHT" dst="" dstEdge="RIGHT" spacing="var(hb-param-margin-gene-middle-horizontal)"/>
</layout>
<layout name="noIconNoTextNoBkgLayout" type="mesh">
--- a/calendarui/views/dayview/src/calendaycontainer.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendaycontainer.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -238,17 +238,17 @@
// Event's startX/width
eventWidth /= columns;
-
- // In case when eventWidth will be smaller then KCalenMinBubbleWidth [un]
+
+ // In case when eventWidth will be smaller then KCalenMinEventWidth [un]
// spacings between events should be smaller.
// Check whether it's possible to shrink them so the bubbles width
- // can stay at KCalenMinBubbleWidth [un] (time stripe + frame margins).
- qreal minWidth = KCalenMinBubbleWidth * mLayoutValues.unitInPixels;
+ // can stay at KCalenMinEventWidth [un] (time stripe + frame margins).
+ qreal minWidth = KCalenMinEventWidth * mLayoutValues.unitInPixels;
if (eventWidth - mLayoutValues.eventMargin < minWidth) {
// Calculate new margin value
- // from totalMarginSpace we need to subtract
- // mLayoutValues.eventMargin because first margin is always 1.5un
+ // from totalMarginSpace we need to subtract mLayoutValues.eventMargin
+ // because first margin is always KCalenSpaceBeetwenEvents
qreal totalMarginSpace = mLayoutValues.eventAreaWidth - minWidth
* columns - mLayoutValues.eventMargin;
qreal newMarginValue = totalMarginSpace / (columns - 1);
@@ -259,15 +259,16 @@
}
else {
// There's not enough space
- // New minWidth is KCalenTimeStripWidth [un] (time stripe only)
- minWidth = KCalenTimeStripWidth * mLayoutValues.unitInPixels;
+ // New minWidth is KCalenMinTimeStripWidth [un] (time stripe only)
+ minWidth = KCalenMinTimeStripWidth * mLayoutValues.unitInPixels;
totalMarginSpace = mLayoutValues.eventAreaWidth - minWidth * columns
- mLayoutValues.eventMargin;
newMarginValue = totalMarginSpace / (columns - 1);
eventWidth = minWidth;
}
- //First column margin should be always 1.5un (mLayoutValues.eventMargin)
+ // First column margin should be always KCalenSpaceBeetwenEvents
+ // (mLayoutValues.eventMargin)
eventStartX += columnIdx * (eventWidth + newMarginValue) + mLayoutValues.eventMargin;
}
else {
@@ -277,6 +278,10 @@
}
QRectF eventGeometry(eventStartX, eventStartY, eventWidth, eventHeight);
+
+ // Workaround to prevent size hint caching inside effectiveSizeHint
+ item->setMinimumSize(0, 0);
+ item->setMaximumSize(eventWidth, eventHeight);
item->setGeometry(eventGeometry);
}
@@ -341,6 +346,10 @@
}
QRectF eventGeometry(eventStartX, eventStartY, eventWidth, eventHeight);
+
+ // Workaround to prevent size hint caching inside effectiveSizeHint
+ item->setMinimumSize(0, 0);
+ item->setMaximumSize(eventWidth, eventHeight);
item->setGeometry(eventGeometry);
}
@@ -351,39 +360,42 @@
*/
void CalenDayContainer::getTimedEventLayoutValues(LayoutValues& layoutValues)
{
- // Get the width of content area
+ // Get the width of entire content area
qreal contentWidth = CalenDayUtils::instance()->contentWidth();
- // 1. Time column width -> eventAreaX[out]
HbStyle style;
HbDeviceProfile deviceProfile;
layoutValues.unitInPixels = deviceProfile.unitValue();
+ // Empty right column's width
+ qreal emptyRightColumnWidth = KCalenEmptyRightColumnWidth
+ * layoutValues.unitInPixels;
+
+ // Margins between the overlapping events -> eventMargin[out]
+ layoutValues.eventMargin = KCalenSpaceBeetwenEvents
+ * layoutValues.unitInPixels;
+
+ // Start position (x) for drawing events -> eventAreaX[out]
if (mInfo && mInfo->AlldayCount()) {
- layoutValues.eventAreaX = KCalenAllDayEventArea * contentWidth;
+ layoutValues.eventAreaX = KCalenAllDayEventArea * (contentWidth
+ - emptyRightColumnWidth);
}
else {
layoutValues.eventAreaX = 0;
}
- // 2. event area width -> eventAreaWidth[out]
- qreal emptyRightColumnWidth(0.0);
- emptyRightColumnWidth = KCalenEmptyRightColumnWidth
- * layoutValues.unitInPixels;
+ // Event area width (excluding All Day Events area)-> eventAreaWidth[out]
layoutValues.eventAreaWidth = contentWidth - emptyRightColumnWidth
- layoutValues.eventAreaX;
- // 3. margins between the overlapping events -> eventMargin[out]
- layoutValues.eventMargin = KCalenSpaceBeetwenEvents
- * layoutValues.unitInPixels;
-
- // 4. half-hour slot'h height -> slotHeight[out]
+ // Half-hour slot's height -> slotHeight[out]
layoutValues.slotHeight = CalenDayUtils::instance()->hourElementHeight()
/ KCalenSlotsInHour;
- // check if we should create absorber over some overlapping region
+ // Check if touch absorbers should be created over some overlapping regions
layoutValues.maxColumns = layoutValues.eventAreaWidth
- / (KCalenMinTouchableEventWidth * layoutValues.unitInPixels);
+ / ((KCalenMinTouchableEventWidth + KCalenSpaceBeetwenEvents)
+ * layoutValues.unitInPixels);
}
--- a/calendarui/views/dayview/src/calendaycontentscrollarea.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendaycontentscrollarea.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -19,8 +19,8 @@
#include <QGraphicsLinearLayout>
#include <QGesture>
-#include <hbinstance.h>
-#include <hbswipegesture.h>
+#include <HbInstance>
+#include <HbSwipeGesture>
// User includes
#include "calendaycontentscrollarea.h"
@@ -321,7 +321,7 @@
result = HbScrollArea::event(e);
// Scroll to middle widget when layout request
- if (e->type() == QEvent::LayoutRequest) {
+ if (e->type() == QEvent::LayoutRequest || e->type() == QEvent::Show) {
scrollToMiddleWidget();
}
}
--- a/calendarui/views/dayview/src/calendaycontentwidget.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendaycontentwidget.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -17,7 +17,7 @@
// System includes
#include <QGraphicsLinearLayout>
-#include <hbmodeliterator.h>
+#include <HbModelIterator>
// User includes
#include "calendaymodelmanager.h"
@@ -33,6 +33,7 @@
/*!
\brief Constructor
+ \param modelManager Day View model manager
\param parent The parent of central widget
*/
CalenDayContentWidget::CalenDayContentWidget(
@@ -41,7 +42,7 @@
HbWidget(parent), mLayout(NULL), mModelManager(modelManager)
{
mWidgets.clear();
- initializeViews(parent);
+ initializeViews();
}
/*!
@@ -198,7 +199,7 @@
\param parent Parent object
*/
-void CalenDayContentWidget::initializeViews(QGraphicsItem *parent)
+void CalenDayContentWidget::initializeViews()
{
// Create item views
HbModelIterator *iterator(0);
@@ -227,12 +228,14 @@
connect(nextItemView, SIGNAL(scrollPositionChanged(const QPointF&)), this,
SLOT(widgetScrolled(const QPointF&)));
- // Install event filters to receive events necessary for gesture handling
- CalenDayContentScrollArea* scrollArea =
- static_cast<CalenDayContentScrollArea*> (parent);
- prevItemView->installEventFilter(scrollArea);
- currItemView->installEventFilter(scrollArea);
- nextItemView->installEventFilter(scrollArea);
+ if (parentItem()) {
+ // Install event filters to receive events necessary for gesture handling
+ CalenDayContentScrollArea* scrollArea =
+ static_cast<CalenDayContentScrollArea*> (parentItem());
+ prevItemView->installEventFilter(scrollArea);
+ currItemView->installEventFilter(scrollArea);
+ nextItemView->installEventFilter(scrollArea);
+ }
// Add views to layout
add(prevItemView);
--- a/calendarui/views/dayview/src/calendayeventspane.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayeventspane.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -16,10 +16,11 @@
*/
// System includes
#include <QPainter>
-#include <hbcolorscheme.h>
+#include <HbColorScheme>
// User includes
-#include "CalenDayEventsPane.h"
+#include "calendayeventspane.h"
+#include "calendaycommonheaders.h"
/*!
\class CalenDayEventsPane
@@ -39,12 +40,13 @@
HbDeviceProfile deviceProfile;
mUnitInPixels = deviceProfile.unitValue();
- mHourLineColor = HbColorScheme::color("qtc_cal_day_hour_lines");
+ mHourLineColor = HbColorScheme::color(KCalenHourLineColor);
// Set custom dashed pen
- mCustomDashedPen.setWidth(0.15);
+ mCustomDashedPen.setWidth(KCalenHourLineThickness);
QVector<qreal> dashes;
- dashes << 5 << 5;
+ dashes << KCalenHalfHourLineDashWidth * mUnitInPixels
+ << KCalenHalfHourLineDashWidth * mUnitInPixels;
mCustomDashedPen.setDashPattern(dashes);
mCustomDashedPen.setCapStyle(Qt::FlatCap);
mCustomDashedPen.setColor(mHourLineColor);
@@ -89,7 +91,7 @@
QRectF drawArea = option->rect;
- const qreal hourLineThickness = 0.15; //un (according to UI spec)
+ const qreal hourLineThickness = KCalenHourLineThickness;
painter->save();
--- a/calendarui/views/dayview/src/calendayhourelement.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayhourelement.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -141,8 +141,8 @@
* currentDateTime.time().minute() / 60;
QColor color = HbColorScheme::color(KCalenTimeLineColor);
- painter->setPen(QPen(color, KCalenTimeLineThickness * mUnitInPixels,
- Qt::SolidLine, Qt::FlatCap));
+ painter->setPen(QPen(color, KCalenCurrentTimeLineThickness
+ * mUnitInPixels, Qt::SolidLine, Qt::FlatCap));
QLineF currentTimeline(drawArea.left(), drawArea.top() + currentTimeY,
drawArea.right(), drawArea.top() + currentTimeY);
painter->drawLine(currentTimeline);
--- a/calendarui/views/dayview/src/calendayitem.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayitem.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -16,15 +16,15 @@
*
*/
-//System includes
-#include <hbframeitem.h>
-#include <hbtextitem.h>
+// System includes
+#include <HbFrameItem>
+#include <HbTextItem>
+#include <HbStyle>
+#include <HbColorScheme>
#include <agendaentry.h>
-#include <hbstyle.h>
-#include <hbcolorscheme.h>
-
-//User inlcudes
+// User includes
+#include "calendaycommonheaders.h"
#include "calendayitem.h"
#include "calendaystatusstrip.h"
#include "calendaymodel.h"
@@ -33,69 +33,61 @@
#include "calendaycontainer.h"
/*!
- \brief Constructor.
-*/
-CalenDayItem::CalenDayItem(const CalenDayContainer *container):
- mContainer(container), mUpdated(false), mBg(0), mEventDesc(0), mColorStripe(0),
- mEventDescMinWidth(0.0), mFrameMinWidth(0.0)
+ \brief Constructor.
+ */
+CalenDayItem::CalenDayItem(const CalenDayContainer *container) :
+ mContainer(container), mUpdated(false), mBg(0), mEventDesc(0),
+ mColorStripe(0), mEventDescMinWidth(0.0), mFrameMinWidth(0.0)
{
}
/*!
- \brief Constructor.
-*/
+ \brief Constructor.
+ */
CalenDayItem::CalenDayItem(const CalenDayItem & source) :
- HbAbstractViewItem(source), mContainer(source.container()), mUpdated(false), mBg(0), mEventDesc(0),
- mColorStripe(0), mEventDescMinWidth(0.0), mFrameMinWidth(0.0)
+ HbAbstractViewItem(source), mContainer(source.container()),
+ mUpdated(false), mBg(0), mEventDesc(0), mColorStripe(0),
+ mEventDescMinWidth(0.0), mFrameMinWidth(0.0)
{
- // TODO: "qtg_fr_btn_pressed" need to replaced with qtg_fr_cal_meeting_bg
- // when available
- mBg = new HbFrameItem("qtg_fr_btn_pressed", HbFrameDrawer::NinePieces, this);
+ mBg = new HbFrameItem("qtg_fr_cal_meeting_bg", HbFrameDrawer::NinePieces,
+ this);
mEventDesc = new HbTextItem(this);
// TODO: probably ElideLeft needed for mirrored layout
mEventDesc->setElideMode(Qt::ElideRight);
mEventDesc->setTextWrapping(Hb::TextWrapAnywhere);
-
mColorStripe = new CalenDayStatusStrip(this);
-
+
HbStyle::setItemName(mBg, QLatin1String("backgroundFrame"));
HbStyle::setItemName(mEventDesc, QLatin1String("eventDescription"));
- HbStyle::setItemName(static_cast<QGraphicsItem *>(mColorStripe), QLatin1String("colorStripe"));
-
+ HbStyle::setItemName(static_cast<QGraphicsItem *> (mColorStripe),
+ QLatin1String("colorStripe"));
+
HbDeviceProfile deviceProfile;
- HbStyle style;
-
- qreal horizontalSpacing = 0.0;
- qreal rightMargin = 0.0;
+ qreal stripeWidth = KCalenTimeStripWidth * deviceProfile.unitValue();
+ mColorStripe->setPreferredWidth(stripeWidth);
+
+ // Minimum size of event frame (without/with description)
+ mFrameMinWidth = KCalenMinEventWidth * deviceProfile.unitValue();
+ mEventDescMinWidth = KCalenMinTouchableEventWidth
+ * deviceProfile.unitValue();
- style.parameter(QString("hb-param-margin-gene-middle-horizontal"),
- horizontalSpacing, deviceProfile);
- style.parameter(QString("hb-param-margin-gene-right"),
- rightMargin, deviceProfile);
-
- qreal stripeWidth = 1.5 * deviceProfile.unitValue(); //1.5un according to UI spec
-
- mFrameMinWidth = 2 * horizontalSpacing + stripeWidth; //smallest width for which background frame is displayed
- mEventDescMinWidth = mFrameMinWidth + rightMargin;//smallest width for which text can be displayed
-
- //Minimum width is assured by widgetml and css
- //additionally called here to prevent minimum size hint caching inside effectiveSizeHint
+ // Minimum width is assured by widgetml and css, additionally called here
+ // to prevent minimum size hint caching inside effectiveSizeHint
setMinimumWidth(stripeWidth);
-
}
/*!
- \brief Destructor.
-*/
+ \brief Destructor.
+ */
CalenDayItem::~CalenDayItem()
{
}
/*!
- \brief Creates new instance of day item.
-
- \return New instance of day item.
-*/
+ \brief Creates new instance of day item.
+
+ \return New instance of day item.
+ */
HbAbstractViewItem * CalenDayItem::createItem()
{
CalenDayItem* newItem = new CalenDayItem(*this);
@@ -104,86 +96,72 @@
/*!
- \brief Sets data to be displayed on item.
-*/
+ \brief Sets data to be displayed on item.
+ */
void CalenDayItem::updateChildItems()
{
// there is no need to update items after creation
if (!mUpdated) {
AgendaEntry entry;
- entry = modelIndex().data(CalenDayEntry).value<AgendaEntry>();
+ entry = modelIndex().data(CalenDayEntry).value<AgendaEntry> ();
- bool isAllDayEvent = CalenAgendaUtils::isAlldayEvent(entry);
-
+ bool isAllDayEvent = CalenAgendaUtils::isAlldayEvent(entry);
setDescription(entry, isAllDayEvent);
setStatusStrip(entry, isAllDayEvent);
mUpdated = true;
}
-
- //TODO: check if needed
- //repolish();
- //HbAbstractViewItem::updateChildItems();
}
/*!
- \brief Adds event description for the item.
-
- \param entry An for which description needs to be displayed.
- \param allDayEvent Flag that indicates whether an item is all day event
-*/
+ \brief Adds event description for the item.
+
+ \param entry An for which description needs to be displayed.
+ \param allDayEvent Flag that indicates whether an item is all day event
+ */
void CalenDayItem::setDescription(const AgendaEntry &entry, bool allDayEvent)
{
- QString description(entry.summary());
- QString location(entry.location());
-
-
- int separtorPos = 0;
-
- if(!location.isEmpty()) {
- if ( !description.isEmpty() ) {
- separtorPos = description.count();
- description.append(", ");
- }
-
- description.append(location);
- }
-
- if ( description.isEmpty() ) {
- description.append(hbTrId("txt_calendar_dblist_unnamed"));
- }
-
- //Description of all day events has to be displayed vertically
- if(allDayEvent){
+ QString description(entry.summary());
+ QString location(entry.location());
+
+ int separtorPos = 0;
+ if (!location.isEmpty()) {
+ if (!description.isEmpty()) {
+ separtorPos = description.count();
+ description.append(", ");
+ }
+ description.append(location);
+ }
+
+ if (description.isEmpty()) {
+ description.append(hbTrId("txt_calendar_dblist_unnamed"));
+ }
- QString verticalString;
- for(int i=0; i<description.count(); i++){
-
- verticalString.append(QString(description.at(i)) + "\n");
- }
-
- // remove "\n" before comma separator if exist
- if (separtorPos)
- {
- verticalString.remove( 2*separtorPos-1, 1);
- }
- description = verticalString;
- }
-
- mEventDesc->setText(description);
+ //Description of all day events has to be displayed vertically
+ if (allDayEvent) {
+ QString verticalString;
+ for (int i = 0; i < description.count(); i++) {
+ verticalString.append(QString(description.at(i)) + "\n");
+ }
+
+ // remove "\n" before comma separator if exist
+ if (separtorPos) {
+ verticalString.remove(2 * separtorPos - 1, 1);
+ }
+ description = verticalString;
+ }
+
+ mEventDesc->setText(description);
}
/*!
- \brief It set all needed things for status strip from Agenda Entry.
-
- \param entry Status Strip is created from Agenda Entry
-*/
+ \brief It set all needed things for status strip from Agenda Entry.
+
+ \param entry Status Strip is created from Agenda Entry
+ */
void CalenDayItem::setStatusStrip(const AgendaEntry &entry, bool allDayEvent)
{
- QColor color = HbColorScheme::color("qtc_cal_month_current_day");
- mColorStripe->setColor(color);
-
if (!allDayEvent) {
QDateTime startTime;
@@ -191,8 +169,8 @@
QDateTime currentDateTime;
currentDateTime.setDate(container()->date());
- CalenDayUtils::instance()->getEventValidStartEndTime(startTime, endTime, entry,
- currentDateTime);
+ CalenDayUtils::instance()->getEventValidStartEndTime(startTime,
+ endTime, entry, currentDateTime);
mColorStripe->setStartEndTime(startTime.time(), endTime.time());
}
@@ -202,49 +180,57 @@
// 00:00:00 and 00:00:00 next day respectively.
// To draw it correctly we need times like those visible for user in
// editor: 00:00:00 to 23:59:59 (the same day)
- mColorStripe->setStartEndTime(entry.startTime().time(), entry.endTime().time().addSecs(-1));
+ mColorStripe->setStartEndTime(entry.startTime().time(),
+ entry.endTime().time().addSecs(-1));
}
-
+
switch (entry.status()) {
case AgendaEntry::Confirmed:
mColorStripe->setDrawingStyle(CalenDayStatusStrip::Filled);
- break;
+ break;
case AgendaEntry::Tentative:
mColorStripe->setDrawingStyle(CalenDayStatusStrip::StripWithLines);
- break;
+ break;
case AgendaEntry::Cancelled:
mColorStripe->setDrawingStyle(CalenDayStatusStrip::OnlyFrame);
- break;
+ break;
default:
mColorStripe->setDrawingStyle(CalenDayStatusStrip::Filled);
- break;
+ break;
}
}
/*!
- \brief Reimplemented from HbWidget. Handles resize event.
-
- \param event Instance of an event to be handled.
-*/
+ \brief Reimplemented from HbWidget. Handles resize event.
+
+ \param event Instance of an event to be handled.
+ */
void CalenDayItem::resizeEvent(QGraphicsSceneResizeEvent *event)
{
Q_UNUSED(event)
qreal width = rect().width();
- if(width < mEventDescMinWidth){
+ HbDeviceProfile deviceProfile;
+ if (width < mEventDescMinWidth) {
+ mColorStripe->setPreferredWidth(KCalenMinTimeStripWidth
+ * deviceProfile.unitValue());
mEventDesc->hide();
- } else{
+ }
+ else {
+ mColorStripe->setPreferredWidth(KCalenTimeStripWidth
+ * deviceProfile.unitValue());
mEventDesc->show();
}
-
- if(width < mFrameMinWidth){
+
+ if (width < mFrameMinWidth) {
mBg->hide();
- } else{
+ }
+ else {
mBg->show();
}
- //Necessary to switch layout
+ // Necessary to switch layout
repolish();
}
--- a/calendarui/views/dayview/src/calendayitemview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayitemview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -18,9 +18,9 @@
//System includes
#include <QGesture>
#include <QGraphicsLinearLayout>
-#include <hbabstractviewitem.h>
-#include <hbinstance.h>
-#include <hbaction.h>
+#include <HbAbstractViewItem>
+#include <HbInstance>
+#include <HbAction>
//User includes
#include "calendayitemview.h"
@@ -55,9 +55,6 @@
setScrollingStyle(HbScrollArea::PanWithFollowOn);
setVerticalScrollBarPolicy(HbScrollArea::ScrollBarAlwaysOff);
- grabGesture(Qt::PanGesture);
- ungrabGesture(Qt::SwipeGesture);
-
//TODO: KG: Animate item pressed?! HbAbstractItemView::TouchDown
setEnabledAnimations( HbAbstractItemView::None );
--- a/calendarui/views/dayview/src/calendaymodelmanager.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendaymodelmanager.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -15,9 +15,11 @@
*
*/
+// System includes
#include <calenservices.h>
#include <calencontext.h>
+// User includes
#include "calendaymodelmanager.h"
#include "calendaymodel.h"
--- a/calendarui/views/dayview/src/calendaystatusstrip.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendaystatusstrip.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -15,11 +15,15 @@
*
*/
+// System includes
#include <QPainter>
#include <QPen>
+#include <HbColorScheme>
+// User includes
#include "calendaystatusstrip.h"
+// Constants
qreal const CalenDayStatusStrip::mMinute = 60;
qreal const CalenDayStatusStrip::mMinimumTime = 5;
@@ -28,7 +32,7 @@
*/
CalenDayStatusStrip::CalenDayStatusStrip(HbWidget *parent)
: HbWidget(parent), mRange(2),
- mDrawingStyle(CalenDayStatusStrip::Filled)
+ mDrawingStyle(CalenDayStatusStrip::Filled)
{
setFlag(QGraphicsItem::ItemHasNoContents,false);
@@ -54,16 +58,6 @@
}
/*!
- \brief Returns color drawing
-
- \sa setColor
- */
-QColor CalenDayStatusStrip::color() const
-{
- return mColor;
-}
-
-/*!
\brief Returns style of drawing.
\sa CalenDayStatusStrip::DrawingStyle, setDrawingStyle
@@ -97,18 +91,6 @@
}
/*!
- \brief It sets color drawing
-
- \param stripColor Color of drawing
-
- \sa stripColor
- */
-void CalenDayStatusStrip::setColor(QColor stripColor)
-{
- mColor = stripColor;
-}
-
-/*!
\brief It sets drawing style of strip
\param drawingStyle Style of strip drawing.
@@ -193,7 +175,7 @@
painter->setClipRect(bounding, Qt::IntersectClip);
//prepare brush and paint
- QBrush brush(mColor);
+ QBrush brush(HbColorScheme::color("qtc_cal_month_current_day"));
painter->setBrush(brush);
QPen pen;
pen.setWidth(1);
--- a/calendarui/views/dayview/src/calendayutils.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayutils.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -16,10 +16,10 @@
*/
// System includes
-#include <hbdeviceprofile.h>
-#include <hbstyle.h>
-#include <hbinstance.h>
-#include <qdatetime.h>
+#include <QDateTime>
+#include <HbDeviceProfile>
+#include <HbStyle>
+#include <HbInstance>
// User includes
#include "calendayutils.h"
@@ -203,7 +203,7 @@
qreal textHeight = 0.0;
qreal verticalSpacing = 0.0;
- qreal bottomSpacer = 3.0 * unitInPixels;
+ qreal bottomSpacer = 4.1 * unitInPixels;
style.parameter(QString("hb-param-text-height-secondary"), textHeight,
deviceProfile);
style.parameter(QString("hb-param-margin-gene-middle-vertical"),
--- a/calendarui/views/dayview/src/calendayview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/src/calendayview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -20,13 +20,15 @@
#include <QGraphicsLinearLayout>
#include <xqsettingsmanager.h>
#include <HbWidget>
-#include <hbaction.h>
-#include <hbmenu.h>
-#include <hbmainwindow.h>
-#include <hbmodeliterator.h>
-#include <hbstyleloader.h>
-#include <hbgroupbox.h>
-#include <hbextendedlocale.h>
+#include <HbFrameItem>
+#include <HbInstance>
+#include <HbAction>
+#include <HbMenu>
+#include <HbMainWindow>
+#include <HbModelIterator>
+#include <HbStyleLoader>
+#include <HbGroupBox>
+#include <HbExtendedLocale>
#include <agendautil.h>
// User includes
@@ -44,6 +46,7 @@
#include "CalendarPrivateCRKeys.h"
#include "calenpluginlabel.h"
#include "calendaymodel.h"
+#include "calendayutils.h"
//constants
@@ -53,18 +56,18 @@
*/
CalenDayView::CalenDayView(MCalenServices &services) :
CalenNativeView(services), mContentScrollArea(NULL), mContentWidget(NULL),
- mHourScrollArea(NULL), mVLayout(NULL), mDocLoader(NULL), mIsLaunching(
- true), mSettingsManager(NULL), mRegionalInfo(
- XQSettingsKey::TargetCentralRepository, KCRUidCalendar,
- KCalendarShowRegionalInfo), mServices(services),
- mRegionalInfoGroupBox(NULL), mGoToTodayMenuAction(NULL)
+ mHourScrollArea(NULL), mVLayout(NULL), mMainContainer(NULL),
+ mDocLoader(NULL), mIsLaunching(true), mSettingsManager(NULL),
+ mRegionalInfoKey(XQSettingsKey::TargetCentralRepository,
+ KCRUidCalendar, KCalendarShowRegionalInfo), mServices(services),
+ mRegionalInfoGroupBox(NULL), mGoToTodayMenuAction(NULL), mBg(NULL)
{
setupMenu();
// Create model manager
mModelManager = new CalenDayModelManager(mServices, true, this);
mSettingsManager = new XQSettingsManager(this);
- mSettingsManager->startMonitoring(mRegionalInfo);
+ mSettingsManager->startMonitoring(mRegionalInfoKey);
//setup Back functionality
if (ECalenDayView != mServices.getFirstView()) {
@@ -87,7 +90,13 @@
*/
CalenDayView::~CalenDayView()
{
- mSettingsManager->stopMonitoring(mRegionalInfo);
+ mSettingsManager->stopMonitoring(mRegionalInfoKey);
+
+ if (mRegionalInfoGroupBox) {
+ delete mRegionalInfoGroupBox;
+ mRegionalInfoGroupBox = NULL;
+ }
+
if (mDocLoader) {
delete mDocLoader;
mDocLoader = NULL;
@@ -175,6 +184,19 @@
CALEN_DAYVIEW_DAYINFO));
HbEffect::add(mHeadingLabel, ":/fade_out.fxml", "fadeOut");
HbEffect::add(mHeadingLabel, ":/fade_in.fxml", "fadeIn");
+
+ // Set up main container for hour elements/content area
+ mMainContainer = qobject_cast<HbWidget *> (mDocLoader->findWidget(
+ CALEN_DAYVIEW_CONTENTWIDGET));
+ if (Qt::Vertical == CalenDayUtils::instance()->orientation()) {
+ mBg = new HbFrameItem(KCalenBackgroundColorPortrait,
+ HbFrameDrawer::OnePiece, this);
+ }
+ else {
+ mBg = new HbFrameItem(KCalenBackgroundColorLandscape,
+ HbFrameDrawer::OnePiece, this);
+ }
+ mMainContainer->setBackgroundItem(mBg);
// Set up hour scroll area
mHourScrollArea
@@ -185,13 +207,14 @@
mContentScrollArea
= static_cast<CalenDayContentScrollArea *> (mDocLoader->findWidget(
CALEN_DAYVIEW_CONTENTSCROLLAREA));
- mContentWidget = new CalenDayContentWidget(*mModelManager, NULL);
+ // Pass parent object to mContentWidget to install event filters on parent
+ mContentWidget = new CalenDayContentWidget(*mModelManager, mContentScrollArea);
mContentScrollArea->setContentWidget(mContentWidget);
+ setupSlots();
+
// Set up regional info if variant is correct
showRegionalInformationFadeIn();
-
- setupSlots();
}
//private slots
@@ -229,7 +252,10 @@
// Triggers fading effect for heading label.
HbEffect::start(mHeadingLabel, "fadeOut", this, "setHeadingText");
- HbEffect::start(mRegionalInfoGroupBox, "fadeOut", this, "showRegionalInformation");
+ if (mRegionalInfoGroupBox) {
+ HbEffect::start(mRegionalInfoGroupBox, "fadeOut", this,
+ "showRegionalInformation");
+ }
mServices.Context().setFocusDate(mDate);
}
@@ -314,10 +340,14 @@
connect(mContentWidget, SIGNAL(scrollPositionChanged(const QPointF &)),
mHourScrollArea, SLOT(scrollVertically(const QPointF &)));
-
+
connect(mHourScrollArea, SIGNAL(scrollPositionChanged(const QPointF &)),
mContentWidget, SLOT(widgetScrolled(const QPointF &)));
-
+
+ connect(CalenDayUtils::instance()->mainWindow(),
+ SIGNAL(orientationChanged(Qt::Orientation)), this,
+ SLOT(orientationChanged(Qt::Orientation)));
+
connect(mSettingsManager, SIGNAL(valueChanged(XQSettingsKey, QVariant)),
this, SLOT(showHideRegionalInformationChanged(XQSettingsKey, QVariant)));
}
@@ -377,7 +407,7 @@
// Set the heading
// Append the date which is formatted as per the locale
- mHeadingLabel->setHeading(hbTrId("txt_calendar_subhead_1_2").arg(dayString).arg(
+ mHeadingLabel->setHeading(QString("%1 %2").arg(dayString).arg(
systemLocale.format(mDate.date(), r_qtn_date_usual_with_zero)));
HbEffect::start(mHeadingLabel, "fadeIn");
@@ -400,8 +430,10 @@
*/
void CalenDayView::showRegionalInformationFadeIn()
{
- showHideRegionalInformationChanged(mRegionalInfo, 3);
- HbEffect::start(mRegionalInfoGroupBox, "fadeIn");
+ showHideRegionalInformationChanged(mRegionalInfoKey, 3);
+ if (mRegionalInfoGroupBox) {
+ HbEffect::start(mRegionalInfoGroupBox, "fadeIn");
+ }
}
/*!
@@ -411,34 +443,41 @@
const XQSettingsKey& key,
const QVariant&)
{
- if (key.key() == mRegionalInfo.key()) {
+ if ((key.key() == mRegionalInfoKey.key()) && pluginEnabled()) {
int showRegionalInfo =
- mSettingsManager->readItemValue(mRegionalInfo).toUInt();
+ mSettingsManager->readItemValue(mRegionalInfoKey).toUInt();
+ if (showRegionalInfo) {
+ if (!mRegionalInfoGroupBox) {
+ mRegionalInfoGroupBox = new HbGroupBox();
+ CalenPluginLabel *regionalInfo = new CalenPluginLabel(
+ mServices, this);
+ regionalInfo->setFontSpec(HbFontSpec(HbFontSpec::Primary));
- if (showRegionalInfo) {
+ // Set margins in groupbox according to UI spec
+ HbStyle style;
+ HbDeviceProfile deviceProfile;
+ qreal leftMargin = 0.0;
+ qreal rightMargin = 0.0;
+ qreal topMargin = 0.0;
+ qreal bottomMargin = 0.0;
+ style.parameter(QString("hb-param-margin-gene-left"),
+ leftMargin, deviceProfile);
+ style.parameter(QString("hb-param-margin-gene-right"),
+ rightMargin, deviceProfile);
+ style.parameter(QString("hb-param-margin-gene-top"), topMargin,
+ deviceProfile);
+ style.parameter(QString("hb-param-margin-gene-bottom"),
+ bottomMargin, deviceProfile);
+ regionalInfo->setContentsMargins(leftMargin, topMargin,
+ rightMargin, bottomMargin);
+ mRegionalInfoGroupBox->setContentWidget(regionalInfo);
+
+ mVLayout->insertItem(1, mRegionalInfoGroupBox);
+ }
QString *pluginString = pluginText();
- if (pluginString) {
- if (!mRegionalInfoGroupBox) {
- mRegionalInfoGroupBox = qobject_cast<HbGroupBox *> (
- mDocLoader->findWidget(CALEN_DAYVIEW_REGIONALINFO));
- CalenPluginLabel *regionalInfo = new CalenPluginLabel(
- mServices, this);
- HbEffect::add(mRegionalInfoGroupBox, ":/fade_out.fxml",
- "fadeOut");
- HbEffect::add(mRegionalInfoGroupBox, ":/fade_in.fxml",
- "fadeIn");
- regionalInfo->setContentsMargins(1, 1, 1, 1);
- mRegionalInfoGroupBox->setContentWidget(regionalInfo);
- }
-
- if (pluginEnabled()) {
- HbLabel *pluginInfoLabel = qobject_cast<HbLabel *> (
- mRegionalInfoGroupBox->contentWidget());
-
- pluginInfoLabel->setPlainText(*pluginString);
- mVLayout->insertItem(1, mRegionalInfoGroupBox);
- }
- }
+ HbLabel *pluginInfoLabel = qobject_cast<HbLabel *> (
+ mRegionalInfoGroupBox->contentWidget());
+ pluginInfoLabel->setPlainText(*pluginString);
}
else {
if (mRegionalInfoGroupBox) {
@@ -483,4 +522,24 @@
}
}
+/*!
+ \brief Slot which is called whenever the orientation of the device changes.
+
+ Changes the backgroung graphic element when orientation chandes.
+
+ \param orientation Current device orientation
+ */
+void CalenDayView::orientationChanged(Qt::Orientation orientation)
+{
+ if (Qt::Vertical == orientation) {
+ mBg = new HbFrameItem(KCalenBackgroundColorPortrait,
+ HbFrameDrawer::OnePiece, this);
+ }
+ else {
+ mBg = new HbFrameItem(KCalenBackgroundColorLandscape,
+ HbFrameDrawer::OnePiece, this);
+ }
+ mMainContainer->setBackgroundItem(mBg);
+}
+
//End of File
--- a/calendarui/views/dayview/tsrc/unittests/unittest_calendaystatusstrip/unittest_calendaystatusstrip.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/tsrc/unittests/unittest_calendaystatusstrip/unittest_calendaystatusstrip.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -42,7 +42,6 @@
void cleanup();
void testConstructors();
- void testSetGetColor();
void testSetGetRange();
void testSetGetDrawingStyle_data();
void testSetGetDrawingStyle();
@@ -129,24 +128,6 @@
}
/*!
- Test function for geting and setting color
- 1. Test setting red color
- 2. Test change color to blue
- */
-void TestCalenStatusStrip::testSetGetColor()
-{
- //1)
- mStatusStrip->setColor(QColor(Qt::red));
- QColor testColor = mStatusStrip->color();
- QCOMPARE(QColor(Qt::red),testColor);
-
- //2)
- mStatusStrip->setColor(QColor(Qt::blue));
- testColor = mStatusStrip->color();
- QCOMPARE(QColor(Qt::blue),testColor);
-}
-
-/*!
Test function for geting and setting range
1. Test setting 5px range
2. Test change range to 1px
@@ -339,7 +320,6 @@
void TestCalenStatusStrip::testPaint()
{
//preapre data needed to draw on widget
- mStatusStrip->setColor(QColor(Qt::red));
QPair<QTime, QTime> startEndTime;
startEndTime.first = QTime(10,20,0);
startEndTime.second = QTime(15,10,00);
--- a/calendarui/views/dayview/tsrc/unittests/unittest_calendayview/calendayutils.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/dayview/tsrc/unittests/unittest_calendayview/calendayutils.h Thu Sep 02 20:25:23 2010 +0300
@@ -47,7 +47,7 @@
Qt::Orientation orientation()
{
- return 1;
+ return Qt::Horizontal;
}
HbMainWindow* mainWindow()
--- a/calendarui/views/eabi/calenviewsu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/eabi/calenviewsu.def Thu Sep 02 20:25:23 2010 +0300
@@ -260,4 +260,12 @@
_ZThn8_N22CalenDayHourScrollAreaD1Ev @ 259 NONAME
_ZThn8_N25CalenDayContentScrollAreaD0Ev @ 260 NONAME
_ZThn8_N25CalenDayContentScrollAreaD1Ev @ 261 NONAME
+ _ZN14CalenMonthGrid17handleThemeChangeEv @ 262 NONAME
+ _ZN14CalenMonthView17handleThemeChangeEv @ 263 NONAME
+ _ZN16CalenPreviewPane13effectStartedEv @ 264 NONAME
+ _ZN16CalenPreviewPane14effectFinishedEv @ 265 NONAME
+ _ZN21CalenThickLinesDrawer17handleThemeChangeEv @ 266 NONAME
+ _ZN16CalenPreviewPane17handleThemeChangeEv @ 267 NONAME
+ _ZNK25CalenDayContentScrollArea17isHorizontalSwipeEf @ 268 NONAME
+ _ZN14CalenMonthView26disconnectAboutToQuitEventEv @ 269 NONAME
--- a/calendarui/views/inc/calenagendaviewwidget.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calenagendaviewwidget.h Thu Sep 02 20:25:23 2010 +0300
@@ -118,11 +118,6 @@
*/
bool isAllDayIcon();
- /**
- * @brief return true if location is present
- */
- bool isLocationData();
-
@@ -381,7 +376,6 @@
bool mIconCheck;
bool mNextEntry;
bool mLeftAllDayIcon;
- bool mLocationData;
};
--- a/calendarui/views/inc/caleneventlistviewitem.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/caleneventlistviewitem.h Thu Sep 02 20:25:23 2010 +0300
@@ -26,7 +26,6 @@
{
Q_OBJECT
Q_PROPERTY(bool leftAllDayIcon READ hasAllDayIcon WRITE setAllDayLeftIcon)
- Q_PROPERTY(bool locationEntry READ locationEntryLayout WRITE setLocationEntry)
public:
/**
@@ -60,19 +59,9 @@
*/
void setAllDayLeftIcon(bool icon = false);
- /**
- * @brief sets location entry status
- */
- void setLocationEntry(bool icon);
-
- /**
- * @brief check if location is present
- */
- bool locationEntryLayout();
private:
CalenAgendaViewWidget* mParent;
bool mAllDayIcon ;
- bool mLocationEntry;
};
#endif // __CALEN_EVENT_LIST_VIEW_ITEM_H__
--- a/calendarui/views/inc/calengriditemprototype.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calengriditemprototype.h Thu Sep 02 20:25:23 2010 +0300
@@ -32,15 +32,13 @@
// CONSTANTS
const QString focusIconName = "qtg_fr_cal_focused_day_ind";
-const QString eventIndname = "qtg_graf_cal_event_ind";
+const QString eventIndname = ":/qtg_graf_cal_event_ind.svg";
class CalenGridItemPrototype : public HbGridViewItem
{
Q_OBJECT
public:
- CalenGridItemPrototype(QColor todayIndColor, QColor activeColor, QColor inActiveColor,
- QGraphicsWidget *parent = 0);
CalenGridItemPrototype(QGraphicsWidget *parent = 0);
virtual ~CalenGridItemPrototype()
{
@@ -54,12 +52,14 @@
bool canSetModelIndex(const QModelIndex& index);
void createPrimitives();
+public slots:
+
+ void handleThemeChange();
+
private:
- QColor mTodayUnderLineColor;
QColor mActiveTextColor;
QColor mInActiveTextColor;
QColor mCurrentDateColor;
- QColor mGridBorderColor;
HbIconItem *mEventIndicatorItem;
HbTextItem *mMonthDayInfoItem;
HbFrameItem *mFocusIndicatorItem;
--- a/calendarui/views/inc/calenmonthgrid.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calenmonthgrid.h Thu Sep 02 20:25:23 2010 +0300
@@ -87,6 +87,10 @@
void appendRows();
void itemActivated(const QModelIndex &index);
+private slots:
+
+ void handleThemeChange();
+
private:
QStandardItemModel *mModel;
scrollDirection mDirection;
@@ -95,14 +99,13 @@
CalenMonthView *mView;
int mCurrentRow;
bool mIsNonActiveDayFocused;
- QDateTime mNonActiveFocusedDay;
bool mIgnoreItemActivated;
QPointF mPressedPos;
- QColor mGridLineColor;
- QColor mGridBorderColor;
QGraphicsWidget* mContentWidget;
QList<QString> mLocalisedDates;
QPointF mStartPos;
+ QColor mGridLineColor;
+ bool mActiveDatesSet;
};
#endif // CALENMONTHGRID_H
--- a/calendarui/views/inc/calenmonthview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calenmonthview.h Thu Sep 02 20:25:23 2010 +0300
@@ -86,6 +86,7 @@
QDateTime firstDayOfGrid();
void fetchEntriesAndUpdateModel();
void launchDayView();
+ void disconnectAboutToQuitEvent();
private:
void createGrid();
@@ -116,6 +117,7 @@
void handleRightEffectCompleted(const HbEffect::EffectStatus &status);
void addRemoveActionsInMenu();
void changeOrientation(Qt::Orientation orientation);
+ void handleThemeChange();
private:
bool mIsFirstTimeLoad;
@@ -175,6 +177,7 @@
HbMenu *mDeleteSubMenu;
QColor mWeekDaysColor;
bool mIsAboutToQuitEventConnected; // bool to check if month view is registered to get aboutToQuit signals
+ QColor mPreviewHeadingColor;
};
#endif //CALENMONTHVIEW_H
--- a/calendarui/views/inc/calenpreviewpane.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calenpreviewpane.h Thu Sep 02 20:25:23 2010 +0300
@@ -64,6 +64,7 @@
public slots:
void onTwoSecondsTimeout();
void scrollingFinished();
+ void handleThemeChange();
private:
enum scrollDirection{
@@ -86,6 +87,7 @@
bool mIsGestureHandled;
qreal mHtDiff;
int mScrollDuration;
+ QColor mPreviewTextColor;
};
#endif /* CALENPREVIEWPANE_H_ */
--- a/calendarui/views/inc/calenthicklinesdrawer.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/inc/calenthicklinesdrawer.h Thu Sep 02 20:25:23 2010 +0300
@@ -37,7 +37,10 @@
CalenThickLinesDrawer( CalendarNamespace::WidgetType type,
QGraphicsItem* parent = NULL );
virtual ~CalenThickLinesDrawer();
-
+
+private slots:
+ void handleThemeChange();
+
private:
void paint(QPainter* painter, const QStyleOptionGraphicsItem* option,
QWidget* widget);
--- a/calendarui/views/resources/caleneventlistviewitem.css Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/resources/caleneventlistviewitem.css Thu Sep 02 20:25:23 2010 +0300
@@ -1,27 +1,11 @@
-CalenEventListViewItem[leftAllDayIcon="false"]:portrait{
+CalenEventListViewItem[leftAllDayIcon="false"]{
layout: custom;
}
-CalenEventListViewItem[leftAllDayIcon="false"]:landscape{
- layout: custom;
-}
-
-CalenEventListViewItem[leftAllDayIcon="true"]:portrait{
+CalenEventListViewItem[leftAllDayIcon="true"]{
layout: custom-subjecticon;
}
-CalenEventListViewItem[leftAllDayIcon="true"]:landscape{
- layout: custom-subjecticon;
-}
-
-
-CalenEventListViewItem[locationEntry="true"]:portrait{
- layout: custom-locationentry;
-}
-
-CalenEventListViewItem[locationEntry="true"]:landscape{
- layout: custom-locationentry;
-}
CalenEventListViewItem::icon-1{
@@ -50,6 +34,7 @@
}
CalenEventListViewItem::text-1{
+ top: -var(hb-param-margin-gene-top);
left: -var(hb-param-margin-gene-left);
font-variant: secondary;
text-height: var(hb-param-text-height-secondary);
@@ -61,19 +46,8 @@
CalenEventListViewItem::text-2{
top: -var(hb-param-margin-gene-top);
right: var(hb-param-margin-gene-middle-horizontal);
- left: -var(hb-param-margin-gene-middle-horizontal);
- font-variant: primary;
- text-height: var(hb-param-text-height-primary);
- text-align: left;
-
-}
-
-
-CalenEventListViewItem::text-2[locationEntry="true"]{
- top: -var(hb-param-margin-gene-top);
- bottom: var(hb-param-margin-gene-bottom);
- right: var(hb-param-margin-gene-middle-horizontal);
left: -var(hb-param-margin-gene-middle-horizontal);
+ bottom:var(hb-param-margin-gene-middle-vertical);
font-variant: primary;
text-height: var(hb-param-text-height-primary);
text-align: left;
@@ -82,7 +56,7 @@
CalenEventListViewItem::text-3{
- top: -var(hb-param-margin-gene-middle-vertical);
+
right: var(hb-param-margin-gene-middle-horizontal);
bottom: var(hb-param-margin-gene-bottom);
font-variant: secondary;
--- a/calendarui/views/resources/caleneventlistviewitem.widgetml Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/resources/caleneventlistviewitem.widgetml Thu Sep 02 20:25:23 2010 +0300
@@ -1,15 +1,15 @@
<hbwidget version="0.1" type="CalenEventListViewItem">
<layout name="custom" type="mesh">
- <meshitem src="text-1" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
- <meshitem src="text-1" srcEdge="LEFT" dst="" dstEdge="LEFT"/>
+ <meshitem src="text-1" srcEdge="TOP" dst="" dstEdge="TOP"/>
+ <meshitem src="text-1" srcEdge="LEFT" dst="" dstEdge="LEFT"/>
- <meshitem src="text-2" srcEdge="TOP" dst="" dstEdge="TOP"/>
- <meshitem src="text-2" srcEdge="LEFT" dst="text-1" dstEdge="RIGHT"/>
- <meshitem src="text-2" srcEdge="RIGHT" dst="icon-2" dstEdge="LEFT"/>
-
- <meshitem src="text-3" srcEdge="LEFT" dst="text-2" dstEdge="LEFT"/>
- <meshitem src="text-3" srcEdge="TOP" dst="text-2" dstEdge="BOTTOM"/>
- <meshitem src="text-3" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM"/>
+ <meshitem src="text-2" srcEdge="TOP" dst="" dstEdge="TOP"/>
+ <meshitem src="text-2" srcEdge="LEFT" dst="text-1" dstEdge="RIGHT"/>
+ <meshitem src="text-2" srcEdge="RIGHT" dst="icon-2" dstEdge="LEFT"/>
+ <meshitem src="text-2" srcEdge="BOTTOM" dst="text-3" dstEdge="TOP"/>
+
+ <meshitem src="text-3" srcEdge="LEFT" dst="text-2" dstEdge="LEFT"/>
+ <meshitem src="text-3" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM"/>
<meshitem src="text-3" srcEdge="RIGHT" dst="icon-4" dstEdge="LEFT"/>
@@ -18,13 +18,15 @@
<meshitem src="text-4" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM"/>
- <meshitem src="icon-3" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
+
+ <meshitem src="icon-3" srcEdge="CENTERV" dst="text-2" dstEdge="CENTERV"/>
<meshitem src="icon-3" srcEdge="RIGHT" dst="" dstEdge="RIGHT"/>
- <meshitem src="icon-2" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
+
+ <meshitem src="icon-2" srcEdge="CENTERV" dst="text-2" dstEdge="CENTERV"/>
<meshitem src="icon-2" srcEdge="RIGHT" dst="icon-3" dstEdge="LEFT"/>
- <meshitem src="icon-4" srcEdge="TOP" dst="text-3" dstEdge="TOP"/>
+ <meshitem src="icon-4" srcEdge="CENTERV" dst="text-3" dstEdge="CENTERV"/>
<meshitem src="icon-4" srcEdge="RIGHT" dst="" dstEdge="RIGHT"/>
</layout>
@@ -40,38 +42,20 @@
<meshitem src="text-3" srcEdge="LEFT" dst="text-2" dstEdge="LEFT"/>
- <meshitem src="text-3" srcEdge="TOP" dst="text-2" dstEdge="BOTTOM"/>
- <meshitem src="text-3" srcEdge="RIGHT" dst="icon-4" dstEdge="LEFT"/>
+ <meshitem src="text-2" srcEdge="BOTTOM" dst="text-3" dstEdge="TOP"/>
+ <meshitem src="text-3" srcEdge="RIGHT" dst="icon-4" dstEdge="LEFT"/>
<meshitem src="text-3" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM"/>
- <meshitem src="icon-3" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
+ <meshitem src="icon-3" srcEdge="CENTERV" dst="text-2" dstEdge="CENTERV"/>
<meshitem src="icon-3" srcEdge="RIGHT" dst="" dstEdge="RIGHT"/>
- <meshitem src="icon-2" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
+ <meshitem src="icon-2" srcEdge="CENTERV" dst="text-2" dstEdge="CENTERV"/>
<meshitem src="icon-2" srcEdge="RIGHT" dst="icon-3" dstEdge="LEFT"/>
- <meshitem src="icon-4" srcEdge="TOP" dst="text-3" dstEdge="TOP"/>
+ <meshitem src="icon-4" srcEdge="CENTERV" dst="text-3" dstEdge="CENTERV"/>
<meshitem src="icon-4" srcEdge="RIGHT" dst="" dstEdge="RIGHT"/>
</layout>
- <layout name="custom-locationentry" type="mesh">
-
- <meshitem src="icon-1" srcEdge="LEFT" dst="" dstEdge="LEFT"/>
- <meshitem src="icon-1" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
-
- <meshitem src="text-2" srcEdge="TOP" dst="" dstEdge="TOP"/>
- <meshitem src="text-2" srcEdge="LEFT" dst="icon-1" dstEdge="RIGHT"/>
- <meshitem src="text-2" srcEdge="RIGHT" dst="icon-2" dstEdge="LEFT"/>
- <meshitem src="text-2" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM"/>
-
- <meshitem src="icon-3" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
- <meshitem src="icon-3" srcEdge="RIGHT" dst="" dstEdge="RIGHT"/>
-
- <meshitem src="icon-2" srcEdge="TOP" dst="text-2" dstEdge="TOP"/>
- <meshitem src="icon-2" srcEdge="RIGHT" dst="icon-3" dstEdge="LEFT"/>
-
-
- </layout>
</hbwidget>
\ No newline at end of file
--- a/calendarui/views/resources/calenresources.qrc Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/resources/calenresources.qrc Thu Sep 02 20:25:23 2010 +0300
@@ -5,8 +5,7 @@
<file>caleneventlistviewitem.widgetml</file>
<file>caleneventlistviewitem.css</file>
<file>caleneventlistviewitem_color.css</file>
- <file>qgn_indi_cdr_meeting_layer0.svg</file>
- <file>qtg_mono_exception.png</file>
+ <file>qtg_graf_cal_event_ind.svg</file>
</qresource>
<qresource prefix="/fxml">
<file alias="view_show">view_show_normal.fxml</file>
--- a/calendarui/views/resources/qgn_indi_cdr_meeting_layer0.svg Wed Aug 18 09:47:38 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="tiny" height="100%" preserveAspectRatio="xMidYMid meet" version="1.1" viewBox="8.151 6.36 13.047 13" width="100%" zoomAndPan="magnify">
-<g>
-<path d="M20.513,15.802l-1.189-1.838c-0.126-0.207-2.813-4.224-5.794-4.284c-0.721-0.014-2.656-0.291-2.677-0.295 l-0.034-0.004h-0.034L8.198,9.205l0.005,6.488h0.5c0.945,0,3.811,0.922,5.418,1.788c0.156,0.214,1.572,1.059,2.103,1.039 c0.508-0.018,0.854-0.393,1.023-0.633c0.34,0.088,0.965,0.342,1.309,0.132c0.287-0.177,0.478-0.507,0.58-0.784 c0.316,0.025,0.76,0.023,1.063-0.208C20.636,16.693,20.583,15.981,20.513,15.802z" fill="#F5F661"/>
-<path d="M20.542,16.22c-0.656,0.172-5.156,1.609-6.469-1.609c-1.688,0.344-5.87-0.904-5.87-0.904v1.987l1.307,0.136 c0.938,0.188,3.002,0.786,4.611,1.652c0.156,0.214,1.572,1.059,2.103,1.039c0.508-0.018,2.244-0.41,2.6-0.598 C19.12,17.767,20.558,17.407,20.542,16.22z" fill="#FFCC00"/>
-<g>
-<path d="M17.716,15.979" fill="#8CC2EA"/>
-</g>
-<g>
-<path d="M16.339,14.626" fill="#8CC2EA"/>
-</g>
-<g>
-<path d="M16.273,16.907" fill="#0046B7"/>
-</g>
-<g>
-<path d="M15.166,16.005" fill="#0046B7"/>
-</g>
-<rect fill="none" height="13" width="13" x="8.151" y="6.36"/>
-<path d="M20.488,9.385l-1.942-0.344c-0.022-0.004-3.827-0.494-3.827-0.494l-0.15-0.021l-0.137,0.069l-2.872,1.445 l-0.378,0.188l0.123,0.403c0.021,0.072,0.136,0.799,1.469,1.058c1.008,0.194,2.261-0.293,2.751-0.688l1.99,1.082 c0,0,1.617,1.816,2.374,2.803l0.92,0.817l0.39-0.088V9.385H20.488z" fill="#D98204"/>
-<path d="M16.279,15.708c-0.202-0.607-1.395-1.639-1.713-1.957c-0.398-0.401-1.723-0.857-2.01-1.095 c-0.635-0.525-1.569-0.456-1.659-0.268c-0.091,0.189-0.658,2.239-0.554,3.176c0.104,0.937,0.512,1.171,0.625,1.224 c0.188,0.084,0.463,0.096,0.731,0.08c0.114,0.288,0.28,0.592,0.528,0.729c0.264,0.146,0.748,0.16,1.176,0.139 c0.225,0.203,0.596,0.482,0.975,0.518c0.549,0.049,1.05-0.486,1.263-0.752C15.811,17.339,16.563,16.561,16.279,15.708z" fill="#D98204"/>
-<g>
-<g>
-<path d="M10.448,16.032c0.25,1.063,1.533,1.428,1.781,1.564c0.264,0.146,1.771,0.621,2.151,0.656 c0.547,0.049,1.048-0.488,1.262-0.754c0.168-0.16,0.921-0.938,0.637-1.791C14.401,18.392,10.979,16.642,10.448,16.032z M20.345,13.552l-0.85,0.851l1.04,1.38l0.663-0.166v-2.24L20.345,13.552z" fill="#4C2B0D"/>
-</g>
-</g>
-</g>
-</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/calendarui/views/resources/qtg_graf_cal_event_ind.svg Thu Sep 02 20:25:23 2010 +0300
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
+<svg baseProfile="tiny" height="10px" version="1.1" viewBox="0 0 10 10" width="10px" x="0px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" y="0px">
+<polygon fill="#66CCAD" points="10,0 0,10 10,10 "/>
+<rect fill="none" height="10" width="10"/>
+</svg>
Binary file calendarui/views/resources/qtg_mono_exception.png has changed
--- a/calendarui/views/src/calenagendaviewwidget.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calenagendaviewwidget.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -1306,16 +1306,12 @@
entry = mInstanceArray[mIndex];
mLeftAllDayIcon = false;
- mLocationData = false;
if(!entry.isTimedEntry() || CalenAgendaUtils::isAlldayEvent(entry)){
//all day icon is not there if its a timed entry
mLeftAllDayIcon = true;
}
-
- if (!entry.location().isEmpty()) {
- mLocationData = true ;
- }
+
//check if shift to next entry
if(mNextEntry)
mIndex++;
@@ -1332,13 +1328,4 @@
return mLeftAllDayIcon;
}
-// ----------------------------------------------------------------------------
-// CalenAgendaViewWidget::isLocationData
-// return true if location entry is present
-// ----------------------------------------------------------------------------
-//
-bool CalenAgendaViewWidget::isLocationData()
- {
- return mLocationData;
- }
// End of file --Don't remove this.
--- a/calendarui/views/src/caleneventlistviewitem.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/caleneventlistviewitem.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -31,7 +31,7 @@
// ----------------------------------------------------------------------------
//
CalenEventListViewItem::CalenEventListViewItem(CalenAgendaViewWidget *parent) :
-HbListViewItem(parent),mAllDayIcon(false),mLocationEntry(false),mParent(parent)
+HbListViewItem(parent),mParent(parent),mAllDayIcon(false)
{
OstTraceFunctionEntry0( CALENEVENTLISTVIEWITEM_CALENEVENTLISTVIEWITEM_ENTRY );
@@ -76,7 +76,6 @@
{
mParent->checkEntryIcons();
mAllDayIcon = mParent->isAllDayIcon();
- mLocationEntry = mParent->isLocationData();
}
HbListViewItem::updateChildItems();
@@ -104,27 +103,4 @@
mAllDayIcon = icon;
}
-// ----------------------------------------------------------------------------
-// CalenEventListViewItem::hasAllDayIcon
-// check if location entry is there in item
-// ----------------------------------------------------------------------------
-//
-bool CalenEventListViewItem::locationEntryLayout()
- {
- if(mAllDayIcon && !mLocationEntry)
- return true;
- else
- return false;
- }
-
-// ----------------------------------------------------------------------------
-// CalenEventListViewItem::setAllDayLeftIcon
-// set the location entry status
-// ----------------------------------------------------------------------------
-//
-void CalenEventListViewItem::setLocationEntry(bool icon)
- {
- mLocationEntry = icon;
- }
-
// End of file
--- a/calendarui/views/src/calengriditemprototype.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calengriditemprototype.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -27,6 +27,7 @@
#include <hbiconitem.h>
#include <hbframebackground.h>
#include <hbcolorscheme.h>
+#include <hbtheme.h>
// User includes
#include "calengriditemprototype.h"
@@ -47,19 +48,16 @@
/*!
Constructor.
*/
-CalenGridItemPrototype::CalenGridItemPrototype(QColor todayIndColor, QColor activeColor, QColor inActiveColor,
- QGraphicsWidget *parent) :
- HbGridViewItem(parent),
- mTodayUnderLineColor(todayIndColor),
- mActiveTextColor(activeColor),
- mInActiveTextColor(inActiveColor),
- mCurrentDateColor(Qt::black),
- mGridBorderColor(Qt::gray),
- mEventIndicatorItem(0),
- mMonthDayInfoItem(0),
- mFocusIndicatorItem(0),
- mTodayIndicatorItem(0)
- {
+CalenGridItemPrototype::CalenGridItemPrototype(QGraphicsWidget *parent) :
+ HbGridViewItem(parent),
+ mActiveTextColor(HbColorScheme::color("qtc_cal_month_active_dates")),
+ mInActiveTextColor(HbColorScheme::color("qtc_cal_month_notactive_dates")),
+ mCurrentDateColor(HbColorScheme::color("qtc_cal_month_highlighted_text")),
+ mEventIndicatorItem(0),
+ mMonthDayInfoItem(0),
+ mFocusIndicatorItem(0),
+ mTodayIndicatorItem(0)
+ {
OstTraceFunctionEntry0( CALENGRIDITEMPROTOTYPE_CALENGRIDITEMPROTOTYPE_ENTRY );
OstTraceFunctionExit0( CALENGRIDITEMPROTOTYPE_CALENGRIDITEMPROTOTYPE_EXIT );
@@ -116,6 +114,9 @@
CalenGridItemPrototype* item = new CalenGridItemPrototype(*this);
item->createPrimitives();
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ item, SLOT(handleThemeChange()));
// Set the default frame to NULL so that HbGridView does not add its
// default frame for items
HbFrameBackground frame;
@@ -184,8 +185,13 @@
// Get the text color
monthTextColorRole = itemList.at(CalendarNamespace::CalendarMonthTextColorRole).value<bool>();
if (monthTextColorRole) {
- // Set the active text color
- mMonthDayInfoItem->setTextColor(mActiveTextColor);
+ if (monthFocusRole) {
+ // Set the Highlighted text color
+ mMonthDayInfoItem->setTextColor(mCurrentDateColor);
+ } else {
+ // Set the active text color
+ mMonthDayInfoItem->setTextColor(mActiveTextColor);
+ }
} else {
// Set the inactive text color
mMonthDayInfoItem->setTextColor(mInActiveTextColor);
@@ -233,4 +239,18 @@
return true;
}
+/*!
+ Slot to handle the change in theme
+ */
+void CalenGridItemPrototype::handleThemeChange()
+{
+ OstTraceFunctionEntry0( CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_ENTRY );
+
+ mActiveTextColor = HbColorScheme::color("qtc_cal_month_active_dates");
+ mInActiveTextColor = HbColorScheme::color("qtc_cal_month_notactive_dates");
+ mCurrentDateColor = HbColorScheme::color("qtc_cal_month_highlighted_text");
+
+ OstTraceFunctionExit0( CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_EXIT );
+
+}
// End of file --Don't remove this.
--- a/calendarui/views/src/calenmonthgrid.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calenmonthgrid.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -65,7 +65,8 @@
mCurrentRow(-100),
mIsNonActiveDayFocused(false),
mIgnoreItemActivated(false),
- mGridBorderColor(Qt::gray)
+ mGridLineColor(HbColorScheme::color("qtc_cal_grid_line")),
+ mActiveDatesSet(false)
{
OstTraceFunctionEntry0( CALENMONTHGRID_CALENMONTHGRID_ENTRY );
@@ -81,15 +82,15 @@
setEnabledAnimations(HbAbstractItemView::None);
setFrictionEnabled(false);
setFlag(QGraphicsItem::ItemHasNoContents, false);
+
+ // Disable the rows and columns swapping on orientation change
+ setSwapDimensionsOnOrientationChange(false);
+
resetTransform();
// Get the content widget of the scroll area to draw the grid lines
mContentWidget = contentWidget();
-
- // Get the all required colors
- // Color of the grid lines
- mGridLineColor = HbColorScheme::color("qtc_cal_grid_line");
-
+
// Get the localised dates well before
// TODO: Need to update the mLocalisedDates when user changes the
// phone language keeping calendar application in background
@@ -101,6 +102,13 @@
// Connect to scrolling finished signal
connect(this, SIGNAL(scrollingEnded()), this,
SLOT(scrollingFinished()));
+
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ this, SLOT(handleThemeChange()));
+
+ // Disable the haptic feedback for the month grid during scrolling
+ setAttribute(Hb::InteractionDisabled);
OstTraceFunctionExit0( CALENMONTHGRID_CALENMONTHGRID_EXIT );
}
@@ -218,19 +226,14 @@
}
if (isFirstTime) {
- // Color of the today indicator
- QColor todayIndColor = HbColorScheme::color("qtc_cal_month_current_day");
- // Color of the active dates
- QColor mActiveTextColor =
- HbColorScheme::color("qtc_cal_month_active_dates");
- // Color of the inactive dates
- QColor mInActiveTextColor =
- HbColorScheme::color("qtc_cal_month_notactive_dates");
// Create the prototype
- CalenGridItemPrototype* gridItemPrototype = new CalenGridItemPrototype(
- todayIndColor, mActiveTextColor, mInActiveTextColor, this);
+ CalenGridItemPrototype* gridItemPrototype = new CalenGridItemPrototype(this);
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ gridItemPrototype, SLOT(handleThemeChange()));
+
// Set the mode and the prototype
setModel(mModel,gridItemPrototype);
@@ -339,15 +342,32 @@
OstTraceFunctionEntry0( CALENMONTHGRID_DOWNGESTURE_ENTRY );
// Make sure that content widget is properly placed
+ // We are doing this as tapping on inactive date of previous month is leading to
+ // position the grid at wrong place after scrolling down. Hence, set the grid
+ // at proper position before we start actual scrolling
if (mIsNonActiveDayFocused) {
mIsAtomicScroll = true;
int itemToBeScrolled = mView->rowsInPrevMonth() * KCalenDaysInWeek;
QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
scrollTo(indexToBeScrolled);
}
+
+ // Set the required flags
mDirection = down;
mIsAtomicScroll = false;
- setAttribute(Hb::InteractionDisabled);
+
+ // Set the active and inactive dates
+ QDateTime activeMonth = mView->getActiveDay();
+ // For previous month, substract one month to the current month
+ setActiveDates(activeMonth.addMonths(-1).date());
+ mActiveDatesSet = true;
+ // Set the focus to proper date before scrolling to avoid somekind of
+ // jerkiness
+ if (!mIsNonActiveDayFocused) {
+ setFocusToProperDay();
+ }
+
+ // Start the scrolling
QPointF targetPos(0.0, 0.0);
scrollContentsTo(targetPos,500);
@@ -361,17 +381,23 @@
{
OstTraceFunctionEntry0( CALENMONTHGRID_UPGESTURE_ENTRY );
- // Make sure that content widget is properly placed
- if (mIsNonActiveDayFocused) {
- mIsAtomicScroll = true;
- int itemToBeScrolled = mView->rowsInPrevMonth() * KCalenDaysInWeek;
- itemToBeScrolled += KNumOfVisibleRows * KCalenDaysInWeek;
- QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
- scrollTo(indexToBeScrolled);
- }
+
+ // Set the required flags
mDirection = up;
mIsAtomicScroll = false;
- setAttribute(Hb::InteractionDisabled);
+
+ // Set the active and inactive dates
+ QDateTime activeMonth = mView->getActiveDay();
+ // For next month, add one month to the current month
+ setActiveDates(activeMonth.addMonths(1).date());
+ mActiveDatesSet = true;
+ // Set the focus to proper date before scrolling to avoid somekind of
+ // jerkiness
+ if (!mIsNonActiveDayFocused) {
+ setFocusToProperDay();
+ }
+
+ // Start the scrolling
QPointF targetPos(0.0, mStartPos.y() - size().height());
scrollContentsTo(-targetPos,500);
@@ -420,12 +446,11 @@
if(HbPanGesture *gesture = qobject_cast<HbPanGesture *>(event->gesture(Qt::PanGesture))) {
if (gesture->state() == Qt::GestureStarted) {
- setAttribute(Hb::InteractionDisabled);
mIsAtomicScroll = false;
if (!mIsPanGesture) {
mDirection = invalid;
mStartPos = mContentWidget->pos();
- // TODO: This work aroung till framework provides an api
+ // TODO: This work around till framework provides an api
// to know the direciton of the pan, until then we need
// calculate the direction explicitly
// Get to know the direction of the gesture
@@ -478,7 +503,6 @@
}
} else if(HbSwipeGesture *gesture = qobject_cast<HbSwipeGesture *>(event->gesture(Qt::SwipeGesture))) {
if (gesture->state() == Qt::GestureStarted) {
- setAttribute(Hb::InteractionDisabled);
mIsAtomicScroll = false;
mDirection = invalid;
if (gesture->sceneVerticalDirection() == QSwipeGesture::Down) {
@@ -524,23 +548,25 @@
} else if(!mIsAtomicScroll) {
QDateTime activeDate = mView->getActiveDay();
if(mDirection == down) { // down gesture
- if (!mIsNonActiveDayFocused) {
+ if (!mActiveDatesSet) {
setActiveDates(activeDate.addMonths(-1).date());
+ setFocusToProperDay();
}
prependRows();
} else if (mDirection == up) { //up gesture
- if (!mIsNonActiveDayFocused) {
+ if (!mActiveDatesSet) {
setActiveDates(activeDate.addMonths(1).date());
+ setFocusToProperDay();
}
appendRows();
}
mDirection = invalid;
+ mActiveDatesSet = false;
} else {
mIsAtomicScroll = false;
mDirection = invalid;
}
mIgnoreItemActivated = false;
- setAttribute(Hb::InteractionDisabled, false);
OstTraceFunctionExit0( CALENMONTHGRID_SCROLLINGFINISHED_EXIT );
}
@@ -581,7 +607,6 @@
// we should again show the current month by scrolling downwards
mDirection = down;
mIsAtomicScroll = true;
- setAttribute(Hb::InteractionDisabled);
scrollContentsTo(-mStartPos,500);
}
} else if (month == prevMonth.date().month()) {
@@ -591,7 +616,6 @@
// we should again show the current month by scrolling upwards
mDirection = up;
mIsAtomicScroll = true;
- setAttribute(Hb::InteractionDisabled);
scrollContentsTo(-mStartPos,500);
} else {
// down gesture to show the previous month
@@ -609,8 +633,7 @@
upGesture();
} else {
// we should again show the current month by scrolling upwards
- mDirection = invalid;
- setAttribute(Hb::InteractionDisabled);
+ mDirection = up;
scrollContentsTo(-mStartPos,500);
}
} else if (month == nextMonth.addMonths(1).date().month()) {
@@ -629,13 +652,6 @@
void CalenMonthGrid::prependRows()
{
OstTraceFunctionEntry0( CALENMONTHGRID_PREPENDROWS_ENTRY );
-
- // Before we do anything, set the focus to proper date
- // Set it only when non active day was focussed. When inactive day
- // was focussed, we need to focus the same day
- if (!mIsNonActiveDayFocused) {
- setFocusToProperDay();
- }
// Block the signals generated by model, this is being done as
// we want to avoid the overload of view listening to signals
@@ -756,13 +772,6 @@
void CalenMonthGrid::appendRows()
{
OstTraceFunctionEntry0( CALENMONTHGRID_APPENDROWS_ENTRY );
-
- // Before we do anything, set the focus to proper date
- // Set it only when non active day was focussed. When inactive day
- // was focussed, we need to focus the same day
- if (!mIsNonActiveDayFocused) {
- setFocusToProperDay();
- }
// Block the signals generated by model, this is being done as
// we want to avoid the overload of view listening to signals
@@ -924,21 +933,19 @@
if(month != monthDataList[mCurrentRow].Day().date().month()){
// Set the flag
mIsNonActiveDayFocused = true;
- mNonActiveFocusedDay = monthDataList[mCurrentRow].Day();
+ QDateTime nonActiveFocusedDay = monthDataList[mCurrentRow].Day();
// Add one month to active month
activeMonth = activeMonth.addMonths(1);
if (activeMonth.date().month() ==
- mNonActiveFocusedDay.date().month()) {
+ nonActiveFocusedDay.date().month()) {
mDirection = up;
// up gesture
upGesture();
- setActiveDates(activeMonth.date());
} else {
mDirection = down;
// down gesture
downGesture();
- setActiveDates(activeMonth.addMonths(-2).date());
}
}
mView->setContextForActiveDay(index.row());
@@ -1025,12 +1032,14 @@
end = firstDateInGrid.daysTo(endOfActiveMonth);
// Set the active text color
- for (int i = start; i < end; i++) {
- QModelIndex index = mModel->index(i,0);
- QVariant itemData = index.data(Qt::UserRole + 1);
- QVariantList list = itemData.toList();
- list.replace(CalendarNamespace::CalendarMonthTextColorRole, true);
- mModel->itemFromIndex(index)->setData(list);
+ if (start >= 0 && end < monthDataList.count()) {
+ for (int i = start; i < end; i++) {
+ QModelIndex index = mModel->index(i,0);
+ QVariant itemData = index.data(Qt::UserRole + 1);
+ QVariantList list = itemData.toList();
+ list.replace(CalendarNamespace::CalendarMonthTextColorRole, true);
+ mModel->itemFromIndex(index)->setData(list);
+ }
}
// Now set the inactive text color to those which were active before the swipe
@@ -1071,12 +1080,14 @@
}
// Set the inactive text color
- for (int i = start; i < end; i++) {
- QModelIndex index = mModel->index(i,0);
- QVariant itemData = index.data(Qt::UserRole + 1);
- QVariantList list = itemData.toList();
- list.replace(CalendarNamespace::CalendarMonthTextColorRole, false);
- mModel->itemFromIndex(index)->setData(list);
+ if (start >= 0 && end < monthDataList.count()) {
+ for (int i = start; i < end; i++) {
+ QModelIndex index = mModel->index(i,0);
+ QVariant itemData = index.data(Qt::UserRole + 1);
+ QVariantList list = itemData.toList();
+ list.replace(CalendarNamespace::CalendarMonthTextColorRole, false);
+ mModel->itemFromIndex(index)->setData(list);
+ }
}
OstTraceFunctionExit0( DUP1_CALENMONTHGRID_SETACTIVEDATES_EXIT );
@@ -1162,11 +1173,8 @@
qreal widthInPixels = GRIDLINE_WIDTH * unitValue;
pen.setStyle(Qt::SolidLine);
pen.setWidth(widthInPixels);
- if (mGridLineColor.isValid()) {
- pen.setBrush(mGridLineColor);
- } else {
- pen.setBrush(mGridBorderColor);
- }
+ pen.setBrush(mGridLineColor);
+
// Store the old pen
QPen oldPen = painter->pen();
@@ -1235,4 +1243,16 @@
OstTraceFunctionExit0( CALENMONTHGRID_PAINT_EXIT );
}
+/*!
+ Slot to handle the change in theme
+ */
+void CalenMonthGrid::handleThemeChange()
+{
+ OstTraceFunctionEntry0(CALENMONTHGRID_HANDLETHEMECHANGE_ENTRY);
+
+ mGridLineColor = HbColorScheme::color("qtc_cal_grid_line");
+
+ OstTraceFunctionExit0(CALENMONTHGRID_HANDLETHEMECHANGE_EXIT);
+}
+
// End of File
--- a/calendarui/views/src/calenmonthview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calenmonthview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -27,6 +27,7 @@
#include <hblabel.h>
#include <hbframeitem.h>
#include <hbcolorscheme.h>
+#include <hbtheme.h>
#include <agendautil.h>
#include <agendaentry.h>
#include <hbapplication.h> // hbapplication
@@ -93,9 +94,14 @@
mLocale = HbExtendedLocale::system();
mFirstWeekLabel = NULL;
mIsPrevPaneGesture = false;
- // Get the week day color from the theme
+ // Get the week day and preview heading color from the theme
mWeekDaysColor = HbColorScheme::color("qtc_cal_week_day");
+ mPreviewHeadingColor = HbColorScheme::color("qtc_cal_day_preview_heading");
+
+ connect(HbTheme::instance(), SIGNAL(changed()),
+ this, SLOT(handleThemeChange()));
+
OstTraceFunctionExit0( CALENMONTHVIEW_CALENMONTHVIEW_EXIT );
}
@@ -179,6 +185,10 @@
mCurrPreviewPane->setView(this);
mCurrPreviewPane->setNoEntriesLabel(currPaneNoEntriesLabel);
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ mCurrPreviewPane, SLOT(handleThemeChange()));
+
mCurrPaneLayoutWidget = qobject_cast<HbWidget*>(docLoader->findWidget(CALEN_CURRPANELAYOUT));
mCurrPaneLayout = static_cast<QGraphicsLinearLayout*>(mCurrPaneLayoutWidget->layout());
@@ -194,6 +204,9 @@
docLoader->findWidget(CALEN_NOENTRIES_LABEL_PREV));
mPrevPreviewPane->setView(this);
mPrevPreviewPane->setNoEntriesLabel(prevPaneNoEntriesLabel);
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ mPrevPreviewPane, SLOT(handleThemeChange()));
mPrevPaneParent->setVisible(false);
mPrevPaneLayoutWidget = qobject_cast<HbWidget*>(docLoader->findWidget(CALEN_PREVPANELAYOUT));
@@ -210,6 +223,10 @@
docLoader->findWidget(CALEN_NOENTRIES_LABEL_NEXT));
mNextPreviewPane->setView(this);
mNextPreviewPane->setNoEntriesLabel(nextPaneNoEntriesLabel);
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ mNextPreviewPane, SLOT(handleThemeChange()));
+
mNextPaneParent->setVisible(false);
mNextPaneLayoutWidget = qobject_cast<HbWidget*>(docLoader->findWidget(CALEN_NEXTPANELAYOUT));
mNextPaneLayout = static_cast<QGraphicsLinearLayout*>(mNextPaneLayoutWidget->layout());
@@ -560,8 +577,11 @@
}
QString *pluginString = pluginText();
mPrevRegionalInfo->setPlainText(*pluginString);
+ mPrevRegionalInfo->setTextColor(mPreviewHeadingColor);
mCurrRegionalInfo->setPlainText(*pluginString);
+ mCurrRegionalInfo->setTextColor(mPreviewHeadingColor);
mNextRegionalInfo->setPlainText(*pluginString);
+ mNextRegionalInfo->setTextColor(mPreviewHeadingColor);
} else {
if (mPrevRegionalInfo) {
mPrevPaneLayout->removeItem(mPrevRegionalInfo);
@@ -569,12 +589,12 @@
mPrevRegionalInfo = NULL;
}
if (mCurrRegionalInfo) {
- mPrevPaneLayout->removeItem(mCurrRegionalInfo);
+ mCurrPaneLayout->removeItem(mCurrRegionalInfo);
mCurrRegionalInfo->hide();
mCurrRegionalInfo = NULL;
}
if (mNextRegionalInfo) {
- mPrevPaneLayout->removeItem(mNextRegionalInfo);
+ mNextPaneLayout->removeItem(mNextRegionalInfo);
mNextRegionalInfo->hide();
mNextRegionalInfo = NULL;
}
@@ -1427,16 +1447,27 @@
mServices.IssueCommandL(ECalenDayView);
// day view launched now, disconnect to get the call backs for saveActivity
// on aboutToQuit signal
- if (mIsAboutToQuitEventConnected)
- {
- disconnect(qobject_cast<HbApplication*>(qApp), SIGNAL(aboutToQuit()), this, SLOT(saveActivity()));
- mIsAboutToQuitEventConnected = false;
- }
+ disconnectAboutToQuitEvent();
OstTraceFunctionExit0( CALENMONTHVIEW_LAUNCHDAYVIEW_EXIT );
}
/*!
+disconnects for the aboutToQuit events
+ */
+void CalenMonthView::disconnectAboutToQuitEvent()
+{
+ OstTraceFunctionEntry0( CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_ENTRY );
+
+ if (mIsAboutToQuitEventConnected) {
+ disconnect(qobject_cast<HbApplication*>(qApp), SIGNAL(aboutToQuit()), this, SLOT(saveActivity()));
+ mIsAboutToQuitEventConnected = false;
+ }
+
+ OstTraceFunctionExit0( CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_EXIT );
+}
+
+/*!
Slot to handle the change in orientation
*/
void CalenMonthView::changeOrientation(Qt::Orientation orientation)
@@ -1453,6 +1484,28 @@
}
/*!
+ Slot to handle the change in theme
+ */
+void CalenMonthView::handleThemeChange()
+{
+ OstTraceFunctionEntry0( CALENMONTHVIEW_HANDLETHEMECHANGE_ENTRY );
+
+ // Refresh the month view when the theme change happens
+ mWeekDaysColor = HbColorScheme::color("qtc_cal_week_day");
+ QColor monthTitleColor = HbColorScheme::color("qtc_cal_monthgrid_title");
+
+ if (mTitleLabel && monthTitleColor.isValid()) {
+ mTitleLabel->setTextColor(monthTitleColor);
+ }
+
+ mPreviewHeadingColor = HbColorScheme::color("qtc_cal_day_preview_heading");
+
+ mServices.IssueCommandL(ECalenStartActiveStep);
+
+ OstTraceFunctionExit0( CALENMONTHVIEW_HANDLETHEMECHANGE_EXIT );
+}
+
+/*!
Loads appropriate section from the docml dsepending on the current orientation
of the device
*/
@@ -1721,9 +1774,12 @@
labels.append(mFifthDayLabel);
labels.append(mSixthDayLabel);
labels.append(mSeventhDayLabel);
+ QGraphicsLinearLayout* layout = static_cast<QGraphicsLinearLayout*> (mDayNameWidget->layout());
for(int i=0;i < KCalenDaysInWeek; i++ )
{
labels.at(i)->setPlainText(weekDayArray[weekDayIndex]);
+ // Set the stretch factor as 1 so that each label occupies equal space
+ layout->setStretchFactor(labels.at(i), 1);
if(weekDayIndex == KCalenDaysInWeek - 1 )//Sunday
{
weekDayIndex = 0;//reset to monday
--- a/calendarui/views/src/calenpreviewpane.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calenpreviewpane.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -21,6 +21,7 @@
#include <qfont.h>
#include <qicon.h>
#include <qpainter.h>
+#include <qevent.h>
#include <hblabel.h>
#include <hbmainwindow.h>
#include <hbframeitem.h>
@@ -74,6 +75,8 @@
mNoEntriesLabel = 0;
mHtDiff = 0.0;
mScrollDuration = 0;
+ mPreviewTextColor = HbColorScheme::color("qtc_cal_day_preview_text");
+
setAcceptDrops(true);
setScrollDirections(Qt::Vertical);
setVerticalScrollBarPolicy(HbScrollArea::ScrollBarAlwaysOff);
@@ -107,6 +110,9 @@
mNoEntriesLabel = label;
+ if (mPreviewTextColor.isValid()) {
+ mNoEntriesLabel->setTextColor(mPreviewTextColor);
+ }
OstTraceFunctionExit0( CALENPREVIEWPANE_SETNOENTRIESLABEL_EXIT );
}
@@ -122,6 +128,7 @@
// Scroll contents to zero position before we display to the user
// if it was scrolling already or timer was running
mNumOfScrolls = 0;
+ mScrollDuration = 0;
stopScrolling();
mDate = date;
@@ -138,6 +145,9 @@
HbFontSpec font(HbFontSpec::Secondary);
if (mIsNoEntriesAdded) {
if (!instanceCount) {
+ if (mPreviewTextColor.isValid()) {
+ mNoEntriesLabel->setTextColor(mPreviewTextColor);
+ }
mNoEntriesLabel->setVisible(true);
OstTraceFunctionExit0( CALENPREVIEWPANE_POPULATELABEL_EXIT );
return;
@@ -162,13 +172,6 @@
// Set the required font
label->setFontSpec(font);
- // Set the text color from the theme
- QColor previewPaneColor = HbColorScheme::color(
- "qtc_cal_day_preview_text");
- if (previewPaneColor.isValid()) {
- label->setTextColor(previewPaneColor);
- }
-
// Set the elide mode to right
label->setElideMode(Qt::ElideRight);
// Add the label to the list
@@ -179,6 +182,10 @@
label = mLabelList.at(i);
count--;
}
+
+ if (mPreviewTextColor.isValid()) {
+ label->setTextColor(mPreviewTextColor);
+ }
QString summary = mInstanceArray[i].summary();
if(!summary.length()) {
// No summary display "Unnamed"
@@ -234,6 +241,9 @@
// Clear the list
mLabelList.clear();
+ if (mPreviewTextColor.isValid()) {
+ mNoEntriesLabel->setTextColor(mPreviewTextColor);
+ }
// Add the no entries text to the preview pane
mNoEntriesLabel->setVisible(true);
mIsNoEntriesAdded = true;
@@ -291,7 +301,13 @@
OstTraceFunctionExit0( CALENPREVIEWPANE_STARTAUTOSCROLL_EXIT );
return;
}
-
+
+ // Stop the timer
+ mTwoSecTimer->stop();
+
+ // Set the proper scroll direction
+ mScrollDirection = up;
+
// Start the 2 seconds timer
mTwoSecTimer->setSingleShot(true);
connect(mTwoSecTimer, SIGNAL(timeout()), this, SLOT(onTwoSecondsTimeout()));
@@ -323,13 +339,13 @@
}
// Start the scrolling in the proper direction
- if (mScrollDirection == up) {
+ if (mScrollDirection == up && mScrollDuration) {
// Start scrolling upwards
mScrollDirection = down;
mNumOfScrolls++;
QPointF targetPos(0.0, -mHtDiff);
scrollContentsTo(-targetPos, mScrollDuration * 1000);
- } else if (mScrollDirection == down) {
+ } else if (mScrollDirection == down && mScrollDuration) {
mScrollDirection = up;
mNumOfScrolls++;
// Start scrolling downwards
@@ -430,12 +446,16 @@
if (tapGesture && tapGesture->state() == Qt::GestureFinished) {
HbInstantFeedback::play(HbFeedback::Basic);
// Preview pane tapped
+ // Stop the scrolling first
+ stopScrolling();
+ // Issue command to launch agenda view
mServices.IssueCommandL(ECalenAgendaView);
+ mView->disconnectAboutToQuitEvent();
event->accept(Qt::TapGesture);
}
}
- OstTraceFunctionExit0( DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT );
+ OstTraceFunctionExit0( DUP3_CALENPREVIEWPANE_GESTUREEVENT_EXIT );
}
/*!
@@ -457,12 +477,16 @@
{
OstTraceFunctionEntry0( CALENPREVIEWPANE_STOPSCROLLING_ENTRY );
- if (isScrolling() || mTwoSecTimer->isActive()) {
+ mTwoSecTimer->stop();
+ if (isScrolling()) {
+ mNumOfScrolls = 0; // required so that timer will not get started again in
+ // scrollingFinished() slot
+ // Stop the scrolling by sending the foucs out event
+ QFocusEvent* focusEvent = new QFocusEvent(QFocusEvent::FocusOut, Qt::MouseFocusReason);
+ focusOutEvent(focusEvent);
+
+ // Set the contents position to zero
scrollContentsTo(QPointF(0.0,0.0));
-
- // Call pan gesture with zero delta just to stop the scfrolling
- HbScrollArea::panGesture(QPointF(0.0,0.0));
- mTwoSecTimer->stop();
}
OstTraceFunctionExit0( CALENPREVIEWPANE_STOPSCROLLING_EXIT );
@@ -499,4 +523,16 @@
mIsGestureHandled = false;
}
+/*!
+ Slot to handle the change in theme
+ */
+void CalenPreviewPane::handleThemeChange()
+{
+ OstTraceFunctionEntry0( CALENPREVIEWPANE_HANDLETHEMECHANGE_ENTRY );
+
+ mPreviewTextColor = HbColorScheme::color("qtc_cal_day_preview_text");
+
+ OstTraceFunctionExit0( CALENPREVIEWPANE_HANDLETHEMECHANGE_EXIT );
+}
+
// End of file --Don't remove this.
--- a/calendarui/views/src/calenthicklinesdrawer.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/src/calenthicklinesdrawer.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -21,6 +21,7 @@
#include <QPen>
#include <hbdeviceprofile.h>
#include <hbcolorscheme.h>
+#include <hbtheme.h>
// User includes
#include "calenthicklinesdrawer.h"
@@ -53,6 +54,10 @@
mGridBorderColor = HbColorScheme::color("qtc_cal_grid_line");
setFlag(QGraphicsItem::ItemHasNoContents, false);
+ connect(
+ HbTheme::instance(), SIGNAL(changed()),
+ this, SLOT(handleThemeChange()));
+
OstTraceFunctionExit0( CALENTHICKLINESDRAWER_CALENTHICKLINESDRAWER_EXIT );
}
@@ -121,4 +126,16 @@
OstTraceFunctionExit0( CALENTHICKLINESDRAWER_PAINT_EXIT );
}
+/*!
+ Slot to handle the change in theme
+ */
+void CalenThickLinesDrawer::handleThemeChange()
+{
+ OstTraceFunctionEntry0(CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_ENTRY);
+
+ mGridBorderColor = HbColorScheme::color("qtc_cal_grid_line");
+
+ OstTraceFunctionExit0(CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_EXIT);
+}
+
// End of file --Don't remove this.
--- a/calendarui/views/traces/calengriditemprototypeTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/calengriditemprototypeTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -20,6 +20,8 @@
#define DUP1_CALENGRIDITEMPROTOTYPE_PRESSSTATECHANGED_EXIT 0x8a0079
#define CALENGRIDITEMPROTOTYPE_CANSETMODELINDEX_ENTRY 0x8a007a
#define CALENGRIDITEMPROTOTYPE_CANSETMODELINDEX_EXIT 0x8a007b
+#define CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_ENTRY 0x8a0183
+#define CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_EXIT 0x8a0184
#endif
--- a/calendarui/views/traces/calenmonthgridTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/calenmonthgridTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -60,6 +60,8 @@
#define CALENMONTHGRID_ORIENTATIONCHANGED_EXIT 0x8a00bf
#define CALENMONTHGRID_PAINT_ENTRY 0x8a00c0
#define CALENMONTHGRID_PAINT_EXIT 0x8a00c1
+#define CALENMONTHGRID_HANDLETHEMECHANGE_ENTRY 0x8a0185
+#define CALENMONTHGRID_HANDLETHEMECHANGE_EXIT 0x8a0186
#endif
--- a/calendarui/views/traces/calenmonthviewTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/calenmonthviewTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -105,6 +105,10 @@
#define CALENMONTHVIEW_HANDLERIGHTEFFECTCOMPLETED_EXIT 0x8a0122
#define CALENMONTHVIEW_UPDATEDAYLABEL_ENTRY 0x8a0123
#define CALENMONTHVIEW_UPDATEDAYLABEL_EXIT 0x8a0124
+#define CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_ENTRY 0x8a017f
+#define CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_EXIT 0x8a0180
+#define CALENMONTHVIEW_HANDLETHEMECHANGE_ENTRY 0x8a0187
+#define CALENMONTHVIEW_HANDLETHEMECHANGE_EXIT 0x8a0188
#endif
--- a/calendarui/views/traces/calenpreviewpaneTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/calenpreviewpaneTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -30,11 +30,14 @@
#define CALENPREVIEWPANE_GESTUREEVENT_ENTRY 0x8a015f
#define CALENPREVIEWPANE_GESTUREEVENT_EXIT 0x8a0160
#define DUP1_CALENPREVIEWPANE_GESTUREEVENT_EXIT 0x8a0161
-#define DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT 0x8a0162
#define CALENPREVIEWPANE_SETVIEW_ENTRY 0x8a0163
#define CALENPREVIEWPANE_SETVIEW_EXIT 0x8a0164
#define CALENPREVIEWPANE_STOPSCROLLING_ENTRY 0x8a0165
#define CALENPREVIEWPANE_STOPSCROLLING_EXIT 0x8a0166
+#define DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT 0x8a0181
+#define DUP3_CALENPREVIEWPANE_GESTUREEVENT_EXIT 0x8a0182
+#define CALENPREVIEWPANE_HANDLETHEMECHANGE_ENTRY 0x8a0189
+#define CALENPREVIEWPANE_HANDLETHEMECHANGE_EXIT 0x8a018a
#endif
--- a/calendarui/views/traces/calenthicklinesdrawerTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/calenthicklinesdrawerTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -12,6 +12,8 @@
#define DUP1_CALENTHICKLINESDRAWER_CALENTHICKLINESDRAWER_EXIT 0x8a0174
#define CALENTHICKLINESDRAWER_PAINT_ENTRY 0x8a0175
#define CALENTHICKLINESDRAWER_PAINT_EXIT 0x8a0176
+#define CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_ENTRY 0x8a018b
+#define CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_EXIT 0x8a018c
#endif
--- a/calendarui/views/traces/fixed_id.definitions Wed Aug 18 09:47:38 2010 +0300
+++ b/calendarui/views/traces/fixed_id.definitions Thu Sep 02 20:25:23 2010 +0300
@@ -98,6 +98,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_CREATEITEM_EXIT=0x73
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_CREATEPRIMITIVES_ENTRY=0x70
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_CREATEPRIMITIVES_EXIT=0x71
+[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_ENTRY=0x183
+[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_HANDLETHEMECHANGE_EXIT=0x184
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_PRESSSTATECHANGED_ENTRY=0x76
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_PRESSSTATECHANGED_EXIT=0x77
[TRACE]TRACE_FLOW[0x8A]_CALENGRIDITEMPROTOTYPE_UPDATECHILDITEMS_ENTRY=0x74
@@ -130,6 +132,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_HANDLEPANGESTUREFINISHED_EXIT=0xa8
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_HANDLEPREPENDINGROWS_ENTRY=0xab
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_HANDLEPREPENDINGROWS_EXIT=0xac
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_HANDLETHEMECHANGE_ENTRY=0x185
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_HANDLETHEMECHANGE_EXIT=0x186
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_ITEMACTIVATED_ENTRY=0xb1
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_ITEMACTIVATED_EXIT=0xb2
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHGRID_MOUSEPRESSEVENT_ENTRY=0x9c
@@ -178,6 +182,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_CREATEGRID_EXIT=0xee
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DATEFROMCONTEXT_ENTRY=0xe1
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DATEFROMCONTEXT_EXIT=0xe2
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_ENTRY=0x17f
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DISCONNECTABOUTTOQUITEVENT_EXIT=0x180
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DOLAZYLOADING_ENTRY=0xc8
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DOLAZYLOADING_EXIT=0xc9
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_DOPOPULATION_ENTRY=0xdb
@@ -206,6 +212,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_HANDLEPREVIEWPANEGESTURE_EXIT=0x11a
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_HANDLERIGHTEFFECTCOMPLETED_ENTRY=0x121
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_HANDLERIGHTEFFECTCOMPLETED_EXIT=0x122
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_HANDLETHEMECHANGE_ENTRY=0x187
+[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_HANDLETHEMECHANGE_EXIT=0x188
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_LAUNCHDAYVIEW_ENTRY=0x111
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_LAUNCHDAYVIEW_EXIT=0x112
[TRACE]TRACE_FLOW[0x8A]_CALENMONTHVIEW_MONTHDATALIST_ENTRY=0xeb
@@ -296,6 +304,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_GESTUREEVENT_EXIT=0x160
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_GETINSTANCELISTL_ENTRY=0x153
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_GETINSTANCELISTL_EXIT=0x154
+[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_HANDLETHEMECHANGE_ENTRY=0x189
+[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_HANDLETHEMECHANGE_EXIT=0x18a
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_ONTWOSECONDSTIMEOUT_ENTRY=0x15a
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_ONTWOSECONDSTIMEOUT_EXIT=0x15b
[TRACE]TRACE_FLOW[0x8A]_CALENPREVIEWPANE_POPULATELABEL_ENTRY=0x150
@@ -320,6 +330,8 @@
[TRACE]TRACE_FLOW[0x8A]_CALENSETTINGSVIEW_REFRESHVIEW_EXIT=0x170
[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_CALENTHICKLINESDRAWER_ENTRY=0x171
[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_CALENTHICKLINESDRAWER_EXIT=0x172
+[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_ENTRY=0x18b
+[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_HANDLETHEMECHANGE_EXIT=0x18c
[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_PAINT_ENTRY=0x175
[TRACE]TRACE_FLOW[0x8A]_CALENTHICKLINESDRAWER_PAINT_EXIT=0x176
[TRACE]TRACE_FLOW[0x8A]_CALENTODAYINDICATORLINEDRAWER_CALENTODAYINDICATORLINEDRAWER_ENTRY=0x177
@@ -380,5 +392,7 @@
[TRACE]TRACE_FLOW[0x8A]_DUP2_CALENMONTHDATA_CALENMONTHDATA_EXIT=0x81
[TRACE]TRACE_FLOW[0x8A]_DUP2_CALENMONTHGRID_GESTUREEVENT_EXIT=0xa3
[TRACE]TRACE_FLOW[0x8A]_DUP2_CALENMONTHGRID_ITEMACTIVATED_EXIT=0xb4
-[TRACE]TRACE_FLOW[0x8A]_DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT=0x162
+[TRACE]TRACE_FLOW[0x8A]_DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT=0x181
[TRACE]TRACE_FLOW[0x8A]_DUP3_CALENMONTHGRID_GESTUREEVENT_EXIT=0xa4
+[TRACE]TRACE_FLOW[0x8A]_DUP3_CALENPREVIEWPANE_GESTUREEVENT_EXIT=0x182
+[[OBSOLETE]][TRACE]TRACE_FLOW[0x8A]_DUP2_CALENPREVIEWPANE_GESTUREEVENT_EXIT=0x162
--- a/clock/clock.pro Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clock.pro Thu Sep 02 20:25:23 2010 +0300
@@ -29,8 +29,7 @@
"./rom/clockengines.iby CORE_APP_LAYER_IBY_EXPORT_PATH(clockengines.iby)" \
"./rom/clockresources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(clockresources.iby)" \
\
- "./conf/clockapp.confml APP_LAYER_CONFML(clockapp.confml)" \
- "./conf/CI_clockapp.confml APP_LAYER_CONFML(CI_clockapp.confml)" \
+ "./conf/clockapp.confml APP_LAYER_CONFML(clockapp.confml)" \
"./conf/clockapp_101F874D.crml APP_LAYER_CRML(clockapp_101F874D.crml)" \
"./conf/clockapp_101F8876.crml APP_LAYER_CRML(clockapp_101F8876.crml)" \
# stubsis is added to provide IAD
--- a/clock/clockui/clockalarmeditor/src/clockalarmeditor.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockalarmeditor/src/clockalarmeditor.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -224,6 +224,10 @@
alarmDayIndex -= KDaysInWeek;
}
}
+
+ if(mAlarmId) {
+ mAlarmClient.deleteAlarm(mAlarmId);
+ }
setAlarm(
mAlarmTimeItem->contentWidgetData("text").toString(),
@@ -245,6 +249,9 @@
void ClockAlarmEditor::handleDeleteAction()
{
OstTraceFunctionEntry0( CLOCKALARMEDITOR_HANDLEDELETEACTION_ENTRY );
+ if(mAlarmId) {
+ mAlarmClient.deleteAlarm(mAlarmId);
+ }
closeAlarmEditor();
OstTraceFunctionExit0( CLOCKALARMEDITOR_HANDLEDELETEACTION_EXIT );
}
@@ -362,6 +369,9 @@
// Check if the Alarm days item is added.
// Remove if already added.
if (mAlarmDayItemInserted) {
+ mAlarmEditorForm->removeConnection(
+ mAlarmDayItem, SIGNAL(currentIndexChanged(int)),
+ this, SLOT(handleDayChanged(int)));
mAlarmEditorModel->removeItem(mAlarmDayItem);
mAlarmDayItemInserted = false;
}
@@ -524,7 +534,8 @@
editor->setSelection(0, 0);
if (editor->text().isEmpty()) {
- editor->setText(hbTrId("txt_clk_formlabel_val_alarm"));
+ mAlarmDescription->setContentWidgetData(
+ "text", hbTrId("txt_clk_formlabel_val_alarm"));
}
}
@@ -692,7 +703,6 @@
// get the alarm details and fill it in mAlarmInfo.
if (mAlarmId) {
mAlarmClient.getAlarmInfo(mAlarmId, mAlarmInfo);
- mAlarmClient.deleteAlarm(mAlarmId);
}
// Set the value for previous alarm time.
--- a/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsplugin.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsplugin.h Thu Sep 02 20:25:23 2010 +0300
@@ -23,9 +23,11 @@
// System includes
#include <QObject>
-// User includes
+// User includes.
#include <cpplugininterface.h>
+// Forward class declartion.
+class HbTranslator;
class DateTimeSettingsPlugin : public QObject, public CpPluginInterface
{
Q_OBJECT
@@ -37,6 +39,9 @@
virtual int uid() const;
QList<CpSettingFormItemData*> createSettingFormItemData(CpItemDataHelper &itemDataHelper) const;
+
+private:
+ HbTranslator *mTranslator;
};
#endif /* DATETIMESETTINGSPLUGIN_H_ */
--- a/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsview.h Thu Sep 02 20:25:23 2010 +0300
@@ -25,6 +25,7 @@
// Forward declarations
class QTimer;
class TimezoneClient;
+class HbTranslator;
class DateTimeSettingsView : public CpSettingFormEntryItemData
{
@@ -34,7 +35,8 @@
CpItemDataHelper &itemDataHelper, const QString &text = QString(),
const QString &description = QString(),
const HbIcon &icon = HbIcon(),
- const HbDataFormModelItem *parent = 0);
+ const HbDataFormModelItem *parent = 0,
+ HbTranslator *translator = 0);
virtual ~DateTimeSettingsView();
private slots:
@@ -47,6 +49,7 @@
private:
QTimer *mTickTimer;
TimezoneClient *mTimezoneClient;
+ HbTranslator *mTranslator;
};
--- a/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsplugin.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsplugin.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -19,6 +19,7 @@
#include <QDateTime>
#include <cpsettingformentryitemdataimpl.h>
#include <HbExtendedLocale>
+#include <HbTranslator>
// User includes
#include "datetimesettingsplugin.h"
@@ -35,6 +36,8 @@
DateTimeSettingsPlugin::DateTimeSettingsPlugin()
{
OstTraceFunctionEntry0( DATETIMESETTINGSPLUGIN_DATETIMESETTINGSPLUGIN_ENTRY );
+ mTranslator = new HbTranslator("clocksettingsview");
+ mTranslator->loadCommon();
OstTraceFunctionExit0( DATETIMESETTINGSPLUGIN_DATETIMESETTINGSPLUGIN_EXIT );
}
@@ -44,6 +47,10 @@
DateTimeSettingsPlugin::~DateTimeSettingsPlugin()
{
OstTraceFunctionEntry0( DUP1_DATETIMESETTINGSPLUGIN_DATETIMESETTINGSPLUGIN_ENTRY );
+ if(mTranslator) {
+ delete mTranslator;
+ mTranslator = 0;
+ }
OstTraceFunctionExit0( DUP1_DATETIMESETTINGSPLUGIN_DATETIMESETTINGSPLUGIN_EXIT );
}
@@ -66,7 +73,8 @@
CpItemDataHelper &itemDataHelper) const
{
OstTraceFunctionEntry0( DATETIMESETTINGSPLUGIN_CREATESETTINGFORMITEMDATA_ENTRY );
- HbIcon icon ;
+ HbIcon icon ;
+
HbExtendedLocale locale = HbExtendedLocale::system();
QString timeInfo = locale.format(
QTime::currentTime(), r_qtn_time_usual_with_zero);
@@ -79,8 +87,8 @@
QList<CpSettingFormItemData*> entryItemList;
CpSettingFormItemData *entryItem = new DateTimeSettingsView(
- itemDataHelper,hbTrId("txt_cp_main_view_list_time_date"),
- displayString,icon);
+ itemDataHelper, hbTrId("txt_cp_main_view_list_time_date"),
+ displayString,icon, 0, mTranslator);
entryItemList.append(entryItem);
OstTraceFunctionExit0( DATETIMESETTINGSPLUGIN_CREATESETTINGFORMITEMDATA_EXIT );
return entryItemList;
--- a/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -50,12 +50,13 @@
DateTimeSettingsView::DateTimeSettingsView(
CpItemDataHelper &itemDataHelper, const QString &text,
const QString &description, const HbIcon &icon,
- const HbDataFormModelItem *parent):
+ const HbDataFormModelItem *parent, HbTranslator *translator):
CpSettingFormEntryItemData(
itemDataHelper, text, description, icon, parent)
{
OstTraceFunctionEntry0( DATETIMESETTINGSVIEW_DATETIMESETTINGSVIEW_ENTRY );
// Construct the timezone client.
+ mTranslator = translator;
mTimezoneClient = TimezoneClient::getInstance();
connect(
mTimezoneClient, SIGNAL(timechanged()),
@@ -95,7 +96,7 @@
void DateTimeSettingsView::onLaunchView()
{
OstTraceFunctionEntry0( DATETIMESETTINGSVIEW_ONLAUNCHVIEW_ENTRY );
- ClockSettingsView *settingsView = new ClockSettingsView(this);
+ ClockSettingsView *settingsView = new ClockSettingsView(this, mTranslator, false);
settingsView->loadSettingsView();
OstTraceFunctionExit0( DATETIMESETTINGSVIEW_ONLAUNCHVIEW_EXIT );
}
--- a/clock/clockui/clocksettingsview/bwins/clocksettingsviewu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/bwins/clocksettingsviewu.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,8 +1,8 @@
EXPORTS
- ??0ClockSettingsView@@QAE@PAVQObject@@@Z @ 1 NONAME ; ClockSettingsView::ClockSettingsView(class QObject *)
- ??1ClockRegionalSettingsView@@UAE@XZ @ 2 NONAME ; ClockRegionalSettingsView::~ClockRegionalSettingsView(void)
- ?loadSettingsView@ClockSettingsView@@QAEXXZ @ 3 NONAME ; void ClockSettingsView::loadSettingsView(void)
- ??1ClockSettingsView@@UAE@XZ @ 4 NONAME ; ClockSettingsView::~ClockSettingsView(void)
+ ??1ClockRegionalSettingsView@@UAE@XZ @ 1 NONAME ; ClockRegionalSettingsView::~ClockRegionalSettingsView(void)
+ ?loadSettingsView@ClockSettingsView@@QAEXXZ @ 2 NONAME ; void ClockSettingsView::loadSettingsView(void)
+ ??1ClockSettingsView@@UAE@XZ @ 3 NONAME ; ClockSettingsView::~ClockSettingsView(void)
+ ??0ClockRegionalSettingsView@@QAE@PAVQObject@@_N@Z @ 4 NONAME ; ClockRegionalSettingsView::ClockRegionalSettingsView(class QObject *, bool)
?showView@ClockRegionalSettingsView@@QAEXXZ @ 5 NONAME ; void ClockRegionalSettingsView::showView(void)
- ??0ClockRegionalSettingsView@@QAE@PAVQObject@@@Z @ 6 NONAME ; ClockRegionalSettingsView::ClockRegionalSettingsView(class QObject *)
+ ??0ClockSettingsView@@QAE@PAVQObject@@PAVHbTranslator@@_N@Z @ 6 NONAME ; ClockSettingsView::ClockSettingsView(class QObject *, class HbTranslator *, bool)
--- a/clock/clockui/clocksettingsview/data/clocksettingsview.qrc Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/data/clocksettingsview.qrc Thu Sep 02 20:25:23 2010 +0300
@@ -3,4 +3,7 @@
<file alias="clocksettingsview.docml">xml/clocksettingsview.docml</file>
<file alias="clockregionalsettingsview.docml">xml/clockregionalsettingsview.docml</file>
</qresource>
+ <qresource prefix="/style">
+ <file alias="settingscustomitem.css">style/settingscustomitem.css</file>
+ </qresource>
</RCC>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clocksettingsview/data/style/settingscustomitem.css Thu Sep 02 20:25:23 2010 +0300
@@ -0,0 +1,22 @@
+SettingsCustomItem[!hasIcon][expandItem]:landscape
+{
+ layout:layout_portrait_without_icon;
+}
+
+SettingsCustomItem[hasIcon][expandItem]:landscape
+{
+ layout:layout_portrait_with_icon;
+}
+
+SettingsCustomItem[expandItem]::dataItem_Label:landscape
+{
+ size-policy-horizontal:preferred;
+}
+
+SettingsCustomItem[expandItem]::DataItem_ContentWidget:landscape
+{
+ top: -var(hb-param-margin-gene-top);
+ left:-var(hb-param-margin-gene-left);
+ right:var(hb-param-margin-gene-right);
+ bottom:var(hb-param-margin-gene-bottom);
+}
\ No newline at end of file
--- a/clock/clockui/clocksettingsview/eabi/clocksettingsviewu.def Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/eabi/clocksettingsviewu.def Thu Sep 02 20:25:23 2010 +0300
@@ -1,13 +1,13 @@
EXPORTS
_ZN17ClockSettingsView16loadSettingsViewEv @ 1 NONAME
- _ZN17ClockSettingsViewC1EP7QObject @ 2 NONAME
- _ZN17ClockSettingsViewC2EP7QObject @ 3 NONAME
+ _ZN17ClockSettingsViewC1EP7QObjectP12HbTranslatorb @ 2 NONAME
+ _ZN17ClockSettingsViewC2EP7QObjectP12HbTranslatorb @ 3 NONAME
_ZN17ClockSettingsViewD0Ev @ 4 NONAME
_ZN17ClockSettingsViewD1Ev @ 5 NONAME
_ZN17ClockSettingsViewD2Ev @ 6 NONAME
_ZN25ClockRegionalSettingsView8showViewEv @ 7 NONAME
- _ZN25ClockRegionalSettingsViewC1EP7QObject @ 8 NONAME
- _ZN25ClockRegionalSettingsViewC2EP7QObject @ 9 NONAME
+ _ZN25ClockRegionalSettingsViewC1EP7QObjectb @ 8 NONAME
+ _ZN25ClockRegionalSettingsViewC2EP7QObjectb @ 9 NONAME
_ZN25ClockRegionalSettingsViewD0Ev @ 10 NONAME
_ZN25ClockRegionalSettingsViewD1Ev @ 11 NONAME
_ZN25ClockRegionalSettingsViewD2Ev @ 12 NONAME
--- a/clock/clockui/clocksettingsview/inc/clockregionalsettingsview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/inc/clockregionalsettingsview.h Thu Sep 02 20:25:23 2010 +0300
@@ -45,7 +45,7 @@
Q_OBJECT
public:
- CLOCKSETTINGSVIEW_EXPORT ClockRegionalSettingsView(QObject *parent = 0);
+ CLOCKSETTINGSVIEW_EXPORT ClockRegionalSettingsView(QObject *parent = 0, bool launchedByClock = 1);
CLOCKSETTINGSVIEW_EXPORT virtual ~ClockRegionalSettingsView();
public:
@@ -91,6 +91,7 @@
SettingsUtility *mSettingsUtility;
SettingsCustomItem *mCustomPrototype;
HbTranslator *mTranslator;
+ bool mLauncedByClock;
};
#endif // CLOCKREGIONALSETTINGSVIEW_H
--- a/clock/clockui/clocksettingsview/inc/clocksettingsview.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/inc/clocksettingsview.h Thu Sep 02 20:25:23 2010 +0300
@@ -46,7 +46,8 @@
Q_OBJECT
public:
- CLOCKSETTINGSVIEW_EXPORT ClockSettingsView(QObject *parent = 0);
+ CLOCKSETTINGSVIEW_EXPORT ClockSettingsView(QObject *parent = 0, HbTranslator *translator = 0,
+ bool launchedByClock = 1);
CLOCKSETTINGSVIEW_EXPORT virtual ~ClockSettingsView();
public:
@@ -93,6 +94,7 @@
XQSettingsKey *mAlarmSnoozeTimeKey;
QHash<int, int> mAlarmSnoozeTimeHash;
HbTranslator *mTranslator;
+ bool mLaunchedByClock;
};
#endif // CLOCKSETTINGSVIEW_H
--- a/clock/clockui/clocksettingsview/inc/settingscustomitem.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/inc/settingscustomitem.h Thu Sep 02 20:25:23 2010 +0300
@@ -39,7 +39,7 @@
Q_OBJECT
public:
- SettingsCustomItem(QGraphicsItem *parent = 0);
+ SettingsCustomItem(QGraphicsItem *parent = 0, bool launchedByClock = 1);
virtual ~SettingsCustomItem();
public:
@@ -78,6 +78,7 @@
SettingsUtility *mSettingsUtility;
ClockCitySelectionList *mCitySelectionList;
TimezoneClient *mTimezoneClient;
+ bool mLaunchedByClock;
};
#endif // SETTINGSCUSTOMITEM_H
--- a/clock/clockui/clocksettingsview/inc/settingsdatatypes.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/inc/settingsdatatypes.h Thu Sep 02 20:25:23 2010 +0300
@@ -41,7 +41,8 @@
TimeItemOffset = 1,
DateItemOffset,
PlaceItemOffset,
- RegionalItemOffset
+ RegionalItemOffset,
+ WorkdaysItemOffset
};
#endif // CLOCKSETTINGSDATATYPES_H
--- a/clock/clockui/clocksettingsview/src/clockregionalsettingsview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/src/clockregionalsettingsview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -54,10 +54,11 @@
/*!
Default constructor.
*/
-ClockRegionalSettingsView::ClockRegionalSettingsView(QObject *parent)
+ClockRegionalSettingsView::ClockRegionalSettingsView(QObject *parent, bool launchedByClock)
:QObject(parent),
mView(0),
- mLoader(0)
+ mLoader(0),
+ mLauncedByClock(launchedByClock)
{
OstTraceFunctionEntry0( CLOCKREGIONALSETTINGSVIEW_CLOCKREGIONALSETTINGSVIEW_ENTRY );
// Construct the document loader.
@@ -142,6 +143,9 @@
createModel();
// Set the view as the current view.
+ if(!mLauncedByClock) {
+ mView->setTitle(hbTrId("txt_clock_title_control_panel"));
+ }
HbMainWindow *window = hbInstance->allMainWindows().first();
window->addView(mView);
window->setCurrentView(mView);
@@ -437,7 +441,7 @@
HbDataFormModelItem::DataItemType workdaysItemType =
static_cast<HbDataFormModelItem::DataItemType>
- (HbDataFormModelItem::CustomItemBase + 50);
+ (HbDataFormModelItem::CustomItemBase + WorkdaysItemOffset);
item = new HbDataFormModelItem(workdaysItemType,
hbTrId("txt_clock_setlabel_workdays"));
mFormModel->appendDataFormItem(item);
--- a/clock/clockui/clocksettingsview/src/clocksettingsview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/src/clocksettingsview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -56,14 +56,16 @@
\param parent The parent of type QGraphicsWidget.
*/
-ClockSettingsView::ClockSettingsView(QObject *parent)
-:QObject(parent)
+ClockSettingsView::ClockSettingsView(QObject *parent, HbTranslator *translator, bool launchedByClock)
+:QObject(parent), mTranslator(0), mLaunchedByClock(launchedByClock)
{
OstTraceFunctionEntry0( CLOCKSETTINGSVIEW_CLOCKSETTINGSVIEW_ENTRY );
// Load the translation file and install the editor specific translator
- mTranslator = new HbTranslator("clocksettingsview");
- mTranslator->loadCommon();
+ if(!translator) {
+ mTranslator = new HbTranslator("clocksettingsview");
+ mTranslator->loadCommon();
+ }
// Construct the settings utility.
mSettingsUtility = new SettingsUtility();
@@ -292,6 +294,11 @@
void ClockSettingsView::setupView()
{
OstTraceFunctionEntry0( CLOCKSETTINGSVIEW_SETUPVIEW_ENTRY );
+
+ if(!mLaunchedByClock) {
+ mSettingsView->setTitle(hbTrId("txt_clock_title_control_panel"));
+ }
+
HbMainWindow *window = hbInstance->allMainWindows().first();
window->addView(mSettingsView);
window->setCurrentView(mSettingsView);
@@ -309,7 +316,7 @@
// Create the custom prototype.
QList <HbAbstractViewItem*> prototypes = mSettingsForm->itemPrototypes();
- SettingsCustomItem *customPrototype = new SettingsCustomItem(mSettingsForm);
+ SettingsCustomItem *customPrototype = new SettingsCustomItem(mSettingsForm, mLaunchedByClock);
prototypes.append(customPrototype);
mSettingsForm->setItemPrototypes(prototypes);
--- a/clock/clockui/clocksettingsview/src/settingscustomitem.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/src/settingscustomitem.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -28,6 +28,7 @@
#include <HbListWidget>
#include <HbExtendedLocale>
#include <HbListWidgetItem>
+#include <HbStyleLoader>
// User includes
#include "settingscustomitem.h"
@@ -54,14 +55,16 @@
\param parent The parent.
*/
-SettingsCustomItem::SettingsCustomItem(QGraphicsItem *parent)
-:HbDataFormViewItem(parent)
+SettingsCustomItem::SettingsCustomItem(QGraphicsItem *parent, bool launchedByClock)
+:HbDataFormViewItem(parent), mLaunchedByClock(launchedByClock)
{
OstTraceFunctionEntry0( SETTINGSCUSTOMITEM_SETTINGSCUSTOMITEM_ENTRY );
// Construct the settignsutility.
mSettingsUtility = new SettingsUtility();
// Construct the timezone client.
mTimezoneClient = TimezoneClient::getInstance();
+ // Register for the css.
+ HbStyleLoader::registerFilePath(":/style/settingscustomitem.css");
OstTraceFunctionExit0( SETTINGSCUSTOMITEM_SETTINGSCUSTOMITEM_EXIT );
}
@@ -71,7 +74,8 @@
SettingsCustomItem::~SettingsCustomItem()
{
OstTraceFunctionEntry0( DUP1_SETTINGSCUSTOMITEM_SETTINGSCUSTOMITEM_ENTRY );
- // Nothing yet.
+ // Unregister the css.
+ HbStyleLoader::unregisterFilePath(":/style/settingscustomitem.css");
OstTraceFunctionExit0( DUP1_SETTINGSCUSTOMITEM_SETTINGSCUSTOMITEM_EXIT );
}
@@ -185,6 +189,7 @@
switch (itemType) {
case (TimeItemOffset + HbDataFormModelItem::CustomItemBase):
{
+ setProperty("expandItem", false);
mTimeWidget = new HbPushButton(this);
connect(
mTimeWidget, SIGNAL(clicked()),
@@ -195,6 +200,7 @@
case (DateItemOffset + HbDataFormModelItem::CustomItemBase):
{
+ setProperty("expandItem", false);
mDateWidget = new HbPushButton(this);
connect(
mDateWidget, SIGNAL(clicked()),
@@ -205,6 +211,7 @@
case (PlaceItemOffset + HbDataFormModelItem::CustomItemBase):
{
+ setProperty("expandItem", false);
mPlaceWidget = new HbPushButton(this);
connect(
mPlaceWidget, SIGNAL(clicked()),
@@ -215,6 +222,7 @@
case (RegionalItemOffset + HbDataFormModelItem::CustomItemBase):
{
+ setProperty("expandItem", false);
mRegSettingsWidget = new HbPushButton(this);
connect(
mRegSettingsWidget, SIGNAL(clicked()),
@@ -223,8 +231,11 @@
return mRegSettingsWidget;
}
- case (50 + HbDataFormModelItem::CustomItemBase):
+ case (WorkdaysItemOffset + HbDataFormModelItem::CustomItemBase):
{
+ // Set the property so that the custom item layout
+ // will be the same for both portrait and landscape
+ setProperty("expandItem", true);
mWorkdaysWidget = new HbListWidget(this);
mWorkdaysWidget->setSelectionMode(HbAbstractItemView::MultiSelection);
mWorkdaysWidget->setScrollDirections(0);
@@ -424,7 +435,8 @@
{
OstTraceFunctionEntry0( SETTINGSCUSTOMITEM_LAUNCHREGSETTINGSVIEW_ENTRY );
ClockRegionalSettingsView *view =
- new ClockRegionalSettingsView();
+ new ClockRegionalSettingsView(0, mLaunchedByClock);
+
connect(mTimezoneClient, SIGNAL(timechanged()),
view, SLOT(updateWeekStartOn()));
view->showView();
--- a/clock/clockui/clocksettingsview/traces/clocksettingsviewTraces.h Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/traces/clocksettingsviewTraces.h Thu Sep 02 20:25:23 2010 +0300
@@ -38,6 +38,8 @@
#define CLOCKSETTINGSVIEW_HANDLECLOCKTYPECHANGED_EXIT 0x8a003f
#define CLOCKSETTINGSVIEW_EVENTMONITOR_ENTRY 0x8a0040
#define CLOCKSETTINGSVIEW_EVENTMONITOR_EXIT 0x8a0041
+#define CLOCKSETTINGSVIEW_GETVIEW_ENTRY 0x8a0064
+#define CLOCKSETTINGSVIEW_GETVIEW_EXIT 0x8a0065
#endif
--- a/clock/clockui/clocksettingsview/traces/fixed_id.definitions Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clocksettingsview/traces/fixed_id.definitions Thu Sep 02 20:25:23 2010 +0300
@@ -35,6 +35,8 @@
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_CREATEMODEL_EXIT=0x37
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_EVENTMONITOR_ENTRY=0x40
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_EVENTMONITOR_EXIT=0x41
+[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_GETVIEW_ENTRY=0x64
+[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_GETVIEW_EXIT=0x65
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_HANDLEALARMSNOOZETIMECHANGED_ENTRY=0x3c
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_HANDLEALARMSNOOZETIMECHANGED_EXIT=0x3d
[TRACE]TRACE_FLOW[0x8A]_CLOCKSETTINGSVIEW_HANDLEAUTOTIMEUPDATECHANGE_ENTRY=0x3a
--- a/clock/clockui/clockviewmanager/src/clockviewmanager.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockviewmanager/src/clockviewmanager.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -161,6 +161,7 @@
// Find the main view.
mMainView = static_cast<ClockMainView *> (
docLoader->findWidget(CLOCK_MAIN_VIEW));
+ mMainView->setParent(this);
// Disable animation effect on toolbar.
HbEffect::disable(mMainView->toolBar()->graphicsItem());
@@ -190,6 +191,7 @@
// Get the world list view.
mWorldClockView = static_cast<ClockWorldView *> (
docLoader->findWidget(CLOCK_WORLD_VIEW));
+ mWorldClockView->setParent(this);
// Disable animation effect on toolbar.
HbEffect::disable(mWorldClockView->toolBar()->graphicsItem());
--- a/clock/clockui/clockviews/src/clockworldview.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/clock/clockui/clockviews/src/clockworldview.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -660,25 +660,21 @@
}
}
else if ( hours ){
- if(hours == 1 ) {
- displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_hr");
- offsetString = displayFormat.arg(hours);
- offsetDifference += offsetString;
+ if(hours == 1) {
+ displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_hr",hours);
+ offsetDifference += displayFormat;
}
else {
- displayFormat = hbTrId("txt_clock_dblist_val_1_hrs");
- offsetString = displayFormat.arg(hours);
- offsetDifference += offsetString;
+ displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_hr",hours);
+ offsetDifference += displayFormat;
}
}
else if (minutes){
- displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_mins");
- offsetString = displayFormat.arg(minutes);
- offsetDifference += offsetString;
+ displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_mins",minutes);
+ offsetDifference += displayFormat;
} else {
- displayFormat = hbTrId("txt_clock_dblist_val_1_hrs");
- offsetString = displayFormat.arg(0);
- offsetDifference += offsetString;
+ displayFormat = hbTrId("txt_clock_dblist_daily_val_ln_hr",0);
+ offsetDifference += displayFormat;
}
displayString.append(offsetDifference);
Binary file clock/conf/CI_clockapp.confml has changed
--- a/organizer_plat/agenda_interface_api/inc/agendautil.h Wed Aug 18 09:47:38 2010 +0300
+++ b/organizer_plat/agenda_interface_api/inc/agendautil.h Thu Sep 02 20:25:23 2010 +0300
@@ -21,13 +21,13 @@
// System includes
#include <QObject>
#include <QList>
+#include <QDateTime>
// User includes
#include "agendaentry.h"
#include "agendainterfacedefines.h"
// Forward declarations
-class QDateTime;
class AgendaUtilPrivate;
class XQCALENDAR_EXPORT AgendaUtil : public QObject
@@ -72,7 +72,8 @@
AgendaUtil(QObject* parent = 0);
~AgendaUtil();
- ulong store(AgendaEntry &entry, AgendaUtil::RecurrenceRange range = ThisAndAll);
+ ulong store(AgendaEntry &entry, AgendaUtil::RecurrenceRange range = ThisAndAll,
+ QDateTime instanceOriginalDateTime = QDateTime());
ulong cloneEntry(const AgendaEntry& entry, AgendaEntry::Type type);
bool deleteEntry(ulong id);
void deleteRepeatedEntry(
--- a/organizer_plat/agenda_interface_api/tsrc/unittest_agendautil/src/unittest_agendautil.cpp Wed Aug 18 09:47:38 2010 +0300
+++ b/organizer_plat/agenda_interface_api/tsrc/unittest_agendautil/src/unittest_agendautil.cpp Thu Sep 02 20:25:23 2010 +0300
@@ -51,6 +51,8 @@
void test_fetchEntriesInRange();
void test_cloneEntry();
void test_todoCompleted();
+ void test_createExceptionalEntryWithSubjectChange();
+ void test_createExceptionalEntryWithStartTimeChange();
private:
int createMultipleEntries();
@@ -605,6 +607,153 @@
unCompletedTodo();
}
+/*
+ Test the api AgendaUtil::store for exceptional entry.
+ */
+void TestAgendaUtil::test_createExceptionalEntryWithSubjectChange()
+{
+ // Test case setup.
+
+ // Clean up all the entries.
+ QDateTime startRange(QDate(1900, 01, 1), QTime(0, 0, 0, 0));
+ QDateTime endRange(QDate(2100, 12, 30), QTime(23, 59, 59, 0));
+ mAgendaUtil->deleteEntries(startRange,endRange);
+
+ // Start the timer as the above operation is asynchronous
+ if (!mWait) {
+ QT_TRAP_THROWING(mWait = new (ELeave) CActiveSchedulerWait;);
+ if (!mWait->IsStarted()) {
+ mWait->Start();
+ }
+ }
+
+ // Create the repeating entry.
+ AgendaEntry entry;
+ entry.setType(AgendaEntry::TypeAppoinment);
+ entry.setSummary("Test case");
+ QDateTime startTime(QDate(2010,1,1),QTime(8,0,0,0));
+ QDateTime endTime(QDate(2010,1,1),QTime(9,0,0,0));
+
+ entry.setStartAndEndTime(
+ startTime,
+ endTime);
+
+ AgendaRepeatRule repeatRule;
+ repeatRule.setType(AgendaRepeatRule::DailyRule);
+ repeatRule.setRepeatRuleStart(startTime);
+ QDateTime until(QDate(2010, 2, 3));
+ repeatRule.setUntil(until);
+ repeatRule.setInterval(1);
+ entry.setRepeatRule(repeatRule);
+
+ ulong id = mAgendaUtil->store(entry);
+
+ // Get the instance and create the exceptional entry by changing the subject
+ AgendaEntry savedEntry = mAgendaUtil->fetchById(id);
+ QList<AgendaEntry> entriesRetrieved =
+ mAgendaUtil->fetchEntriesInRange(
+ QDateTime(QDate(2010, 1, 2), QTime(8, 0, 0, 0)),
+ QDateTime(QDate(2010, 1, 2), QTime(9, 0, 0, 0)));
+
+ int numOfEntriesRetrieved = entriesRetrieved.count();
+ AgendaEntry modifiedEntry = entriesRetrieved.first();
+ // Verify
+ QVERIFY(id == modifiedEntry.id());
+
+ modifiedEntry.setSummary("Test case Exceptional");
+
+ // Run the test case
+ ulong newId = mAgendaUtil->store(
+ modifiedEntry, AgendaUtil::ThisOnly, modifiedEntry.startTime());
+
+ // Verify.
+ QVERIFY(id != newId);
+
+ entriesRetrieved.clear();
+
+ // Get the exceptional entry.
+ AgendaEntry exceptionalEntry = mAgendaUtil->fetchById(newId);
+
+ // Verify.
+ QCOMPARE(exceptionalEntry.summary(), modifiedEntry.summary());
+ QVERIFY(exceptionalEntry.recurrenceId() == modifiedEntry.startTime());
+}
+
+/*!
+ Test the api AgendaUtil::store for exceptional entry.
+ */
+void TestAgendaUtil::test_createExceptionalEntryWithStartTimeChange()
+{
+ // Test case setup.
+
+ // Clean up all the entries.
+ QDateTime startRange(QDate(1900, 01, 1), QTime(0, 0, 0, 0));
+ QDateTime endRange(QDate(2100, 12, 30), QTime(23, 59, 59, 0));
+ mAgendaUtil->deleteEntries(startRange,endRange);
+
+ // Start the timer as the above operation is asynchronous
+ if (!mWait) {
+ QT_TRAP_THROWING(mWait = new (ELeave) CActiveSchedulerWait;);
+ if (!mWait->IsStarted()) {
+ mWait->Start();
+ }
+ }
+
+ QList<AgendaEntry> allEntries = mAgendaUtil->fetchAllEntries();
+ int count = allEntries.count();
+
+ // Create the repeating entry.
+ AgendaEntry entry;
+ entry.setType(AgendaEntry::TypeAppoinment);
+ entry.setSummary("Test case");
+ QDateTime startTime(QDate(2010,2,1),QTime(8,0,0,0));
+ QDateTime endTime(QDate(2010,2,1),QTime(9,0,0,0));
+
+ entry.setStartAndEndTime(startTime, endTime);
+
+ AgendaRepeatRule repeatRule;
+ repeatRule.setType(AgendaRepeatRule::DailyRule);
+ repeatRule.setRepeatRuleStart(startTime);
+ QDateTime until(QDate(2010, 3, 3));
+ repeatRule.setUntil(until);
+ repeatRule.setInterval(1);
+ entry.setRepeatRule(repeatRule);
+
+ ulong id = mAgendaUtil->store(entry);
+
+ // Get the instance and create the exceptional entry by changing the subject
+ AgendaEntry savedEntry = mAgendaUtil->fetchById(id);
+ QList<AgendaEntry> entriesRetrieved =
+ mAgendaUtil->fetchEntriesInRange(
+ QDateTime(QDate(2010, 2, 2), QTime(8, 0, 0, 0)),
+ QDateTime(QDate(2010, 2, 2), QTime(9, 0, 0, 0)));
+
+ int numOfEntriesRetrieved = entriesRetrieved.count();
+ AgendaEntry modifiedEntry = entriesRetrieved.first();
+ AgendaEntry originalEntry = modifiedEntry;
+ // Verify
+ QVERIFY(id == modifiedEntry.id());
+
+ QDateTime modifiedStartTime(QDate(2010,2,1),QTime(8,0,0,0));
+ QDateTime modifiedEndTime(QDate(2010,2,1),QTime(9,0,0,0));
+ modifiedEntry.setStartAndEndTime(modifiedStartTime, modifiedStartTime);
+
+ // Run the test case
+ ulong newId = mAgendaUtil->store(
+ modifiedEntry, AgendaUtil::ThisOnly, originalEntry.startTime());
+
+ // Verify.
+ QVERIFY(id != newId);
+
+ entriesRetrieved.clear();
+
+ // Get the exceptional entry.
+ AgendaEntry exceptionalEntry = mAgendaUtil->fetchById(newId);
+
+ // Verify.
+ QVERIFY(exceptionalEntry.recurrenceId() == originalEntry.startTime());
+}
+
/*!
Slot to listen for the completion of deleting the entries asynchronously.
*/