Merge docml changeset with recent Nokia delivery.
authorPat Downey <patd@symbian.org>
Tue, 18 May 2010 13:16:49 +0100
changeset 28 c690c592b381
parent 26 a949c2543c15 (diff)
parent 24 f6320731c6bb (current diff)
child 34 1850873ab5e9
child 35 17d7fc491159
Merge docml changeset with recent Nokia delivery.
alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_calendar_unlocked.docml
alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_todo_unlocked.docml
clock/clockui/clocksettingsview/data/xml/clocksettingsview.docml
clock/clockui/clockviews/data/xml/clockmainview.docml
notes/data/xml/notescollectionsview.docml
notes/data/xml/notesfavoriteview.docml
notes/data/xml/notesmainview.docml
notes/data/xml/notesnoteview.docml
notes/data/xml/notestodoview.docml
notes/notesui/noteseditor/data/xml/notesnoteeditor.docml
--- a/agendainterface/agendautil/inc/agendautil.h	Tue May 11 12:31:38 2010 +0100
+++ b/agendainterface/agendautil/inc/agendautil.h	Tue May 18 13:16:49 2010 +0100
@@ -120,6 +120,8 @@
 	void entryDeleted(ulong id);
 	void entryUpdated(ulong id);
 	void entriesDeleted(int status);
+	void entryViewCreationCompleted(int status);
+	void instanceViewCreationCompleted(int status);
 
 private:
 	friend class AgendaUtilPrivate;
--- a/agendainterface/agendautil/src/agendautil_p.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/agendainterface/agendautil/src/agendautil_p.cpp	Tue May 18 13:16:49 2010 +0100
@@ -108,70 +108,24 @@
 		delete filter;
 		}
 
-	/*
-	// If view creation is in progress, then wait till it gets completed
-	if((iCalEntryView && !mEntryViewCreated)
-			|| (iCalInstanceView && !mInstanceViewCreated))
-	{
-		if(!iWait)
-		{
-			TRAP(iError, iWait = new (ELeave) CActiveSchedulerWait;);
-			if(!iWait->IsStarted())
-			{
-				iWait->Start();
-			}
-		}
+	// First construct the CCalInstanceView if not already available.
+	// The CCalEntryView is constructed in CompletedL. Instance view
+	// is created before entry view since entry view is required only
+	// when editing/saving any entry. So we will construct it later
+	if (!iCalInstanceView) {
+	    TRAP (iError, iCalInstanceView = CCalInstanceView::NewL(*iCalSession,
+	                                                           *this);)
 	}
-	*/
-
-	// First construct the CCalEntryView if not already available.
-	// The CCalInstanceView is constructed in ::CompletedL. We block the
-	// thread here until everything is setup.
-	if (!iCalEntryView)
-		{
-		TRAP(
-				iError,
-				iCalEntryView = CCalEntryView::NewL(*iCalSession, *this);
-		);
-		if (!iWait)
-			{
-			TRAP(
-					iError,
-					iWait = new (ELeave) CActiveSchedulerWait;
-			)
-			if (!iWait->IsStarted())
-				{
-				iWait->Start();
-				}
-			}
-		}
-
-	// Comes here only when timer is expired, hence one more
-	// check is needed here.
-	if (iCalSession && mEntryViewCreated && mInstanceViewCreated)
-		{
-		// Everything is ready.
-		return true;
-		}
-
-	else
-		{
-		return false;
-		}
+	
+	// All the requests have been made
+	return true;
 }
 
 AgendaUtilPrivate::~AgendaUtilPrivate()
 {
 	delete iCalEntryView;
 	delete iCalInstanceView;
-	if (iWait && iWait->IsStarted())
-	{
-		iWait->AsyncStop();
-	}
-
-	delete iWait;
-	if (iCalSession)
-	{
+	if (iCalSession) {
 		iCalSession->StopChangeNotification();
 	}
 	delete iCalSession;
@@ -188,39 +142,33 @@
 		emit q->entriesDeleted(iError);
 	}
 
-	if(KErrNone != iError)
-	{
+	if (KErrNone != iError) {
 		// Something has gone wrong, return
+		if (iCalEntryView) {
 		delete iCalEntryView;
 		iCalEntryView = NULL;
+		}
+		if (iCalInstanceView) {
 		delete iCalInstanceView;
 		iCalInstanceView = NULL;
+		}
 		return;
 	}
 
-	if(iCalEntryView && !mEntryViewCreated)
-	{
-		mEntryViewCreated = true;
-
-		// Start creating the instance view.
-		if(!iCalInstanceView)
-		{
-			TRAP(iError, iCalInstanceView = CCalInstanceView::NewL(
-					*iCalSession, *this);)
+	if (iCalInstanceView && !mInstanceViewCreated) {
+	    // Instance view is now created.
+	    mInstanceViewCreated = true;
+	    emit q->instanceViewCreationCompleted(iError);
+	    // Start with the construction of entry view
+		if (!iCalEntryView) {
+		    TRAP (iError,
+		          iCalEntryView = CCalEntryView::NewL(*iCalSession, *this);
+		    );
 		}
-	}
-	else if(iCalInstanceView && !mInstanceViewCreated)
-	{
-		mInstanceViewCreated = true;
-	}
-
-	// Stop the wait timer
-	if( iWait && iWait->IsStarted())
-	{
-		if(mEntryViewCreated &&  mInstanceViewCreated)
-		{
-			iWait->AsyncStop();
-		}
+	} else if(iCalEntryView && !mEntryViewCreated) {
+	    // Entry view is now constructed
+		mEntryViewCreated = true;
+		emit q->entryViewCreationCompleted(iError);
 	}
 }
 
@@ -248,7 +196,7 @@
 	int success = 0;
 
 	// First check if the session to the calendar database is prepared or not.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong
 		return localUid;
 	}
@@ -309,7 +257,7 @@
 						dtStamp.time().minute(), 0, 0);
 				TTime creationTTime(creationDateTime);
 				creationCalTime.SetTimeLocalL(creationTTime);
-				//newEntry->SetDTStampL(creationCalTime);
+				newEntry->SetDTStampL(creationCalTime);
 
 				// Finally set the entry to the database using the entry view.
 				entryArray.AppendL(newEntry);
@@ -467,7 +415,7 @@
 		const AgendaEntry &entry, AgendaEntry::Type type)
 {
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return 0;
 	}
@@ -671,7 +619,7 @@
 bool AgendaUtilPrivate::deleteEntry(ulong id)
 {
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return false;
 	}
@@ -709,7 +657,7 @@
 	qDebug("AgendaUtilPrivate::deleteRepeatedEntry");
 
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return;
 	}
@@ -766,7 +714,7 @@
 bool AgendaUtilPrivate::updateEntry(const AgendaEntry& entry, bool isChild)
 {
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return false;
 	}
@@ -1033,7 +981,7 @@
                                             bool copyToChildren)
 {
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return false;
 	}
@@ -1203,7 +1151,7 @@
 {
 
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Something went wrong.
 		return false;
 	}
@@ -1464,7 +1412,7 @@
 	AgendaEntry entry;
 
 	// First check if the session with the calendar exists.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Return empty AgendaEntry.
 		return entry;
 	}
@@ -1500,7 +1448,7 @@
 	QList<ulong> listOfIds;
 
 	// First check if the session with agenda server exists.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Return empty list.
 		return listOfIds;
 	}
@@ -1561,7 +1509,7 @@
 	QList<AgendaEntry> entryList;
 
 	// First check if the session with agenda server exists.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Return empty list.
 		return entryList;
 	}
@@ -1619,7 +1567,7 @@
 		AgendaUtil::FilterFlags filter)
 {
     QList<AgendaEntry> entryList;
-    if(!prepareSession())
+    if(!mInstanceViewCreated)
         {
             // return empty list
             return entryList;
@@ -1676,6 +1624,12 @@
 	QDateTime rangeEnd,AgendaUtil::FilterFlags filter, QList<QDate>& dates)
 {
 	RPointerArray<CCalInstance> instanceList;
+	
+	if(!mInstanceViewCreated) {
+	    // return empty list
+	    return;
+	}
+	
 	CleanupClosePushL(instanceList);
 	CalCommon::TCalViewFilter filters = filter;
 	TCalTime startDateForInstanceSearch;
@@ -1757,7 +1711,7 @@
                             AgendaUtil::FilterFlags filter )
 {
     QList<AgendaEntry> entryList;
-    if(!prepareSession()) {
+    if(!mInstanceViewCreated) {
         // return empty list
         return entryList;
     }
@@ -1833,7 +1787,7 @@
 	int success = -1 ;
 
 	// First prepare the session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		return success;
 	}
 
@@ -1886,7 +1840,7 @@
 		const QString& fileName, ulong calendarEntryId)
 {
 	// First prepare session with agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		return false;
 	}
 	TRAP(
@@ -2022,7 +1976,7 @@
 {
 	AgendaEntry parentEntry;
 	// First check if the session with the calendar exists.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		// Return empty AgendaEntry.
 		return entry;
 	}
@@ -2458,6 +2412,11 @@
  */
 bool AgendaUtilPrivate::areNoEntriesInCalendar()
 {
+	// First prepare the session with the agenda server.
+	if (!mInstanceViewCreated) {
+		return false;
+	}
+	
 	bool isEmpty;
 	// Query for the entries for entire range
 	RPointerArray<CCalInstance> instanceList;
@@ -2846,7 +2805,7 @@
 		const QList<AgendaAttendee>& attendees, CCalEntry& entry)
 {
 	// First prepare the session with the agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		return false;
 	}
 
@@ -2878,7 +2837,7 @@
 		const QList<AgendaCategory>& categories, CCalEntry& entry)
 {
 	// First prepare the session with the agenda server.
-	if (!prepareSession()) {
+	if (!mInstanceViewCreated) {
 		return false;
 	}
 	TRAP(
@@ -2984,7 +2943,7 @@
 
 CCalInstance* AgendaUtilPrivate::findPossibleInstance(AgendaEntry& entry)
 {
-    if(!prepareSession()) {
+    if(!mInstanceViewCreated) {
         // return empty list
         return NULL;
     }
--- a/agendainterface/bwins/agendainterfaceu.def	Tue May 11 12:31:38 2010 +0100
+++ b/agendainterface/bwins/agendainterfaceu.def	Tue May 18 13:16:49 2010 +0100
@@ -178,4 +178,6 @@
 	?setRecurrenceId@AgendaEntry@@QAEXAAVQDateTime@@@Z @ 177 NONAME ; void AgendaEntry::setRecurrenceId(class QDateTime &)
 	?isNull@AgendaGeoValue@@QBE_NXZ @ 178 NONAME ; bool AgendaGeoValue::isNull(void) const
 	?areNoEntriesInCalendar@AgendaUtil@@QAE_NXZ @ 179 NONAME ; bool AgendaUtil::areNoEntriesInCalendar(void)
+	?entryViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 180 NONAME ; void AgendaUtil::entryViewCreationCompleted(int)
+	?instanceViewCreationCompleted@AgendaUtil@@IAEXH@Z @ 181 NONAME ; void AgendaUtil::instanceViewCreationCompleted(int)
 
--- a/agendainterface/eabi/agendainterfaceu.def	Tue May 11 12:31:38 2010 +0100
+++ b/agendainterface/eabi/agendainterfaceu.def	Tue May 18 13:16:49 2010 +0100
@@ -206,4 +206,6 @@
 	_ZTV14AgendaAttendee @ 205 NONAME
 	_ZTV14AgendaCategory @ 206 NONAME
 	_ZN10AgendaUtil22areNoEntriesInCalendarEv @ 207 NONAME
+	_ZN10AgendaUtil26entryViewCreationCompletedEi @ 208 NONAME
+	_ZN10AgendaUtil29instanceViewCreationCompletedEi @ 209 NONAME
 
--- a/agendainterface/inc/agendautil.h	Tue May 11 12:31:38 2010 +0100
+++ b/agendainterface/inc/agendautil.h	Tue May 18 13:16:49 2010 +0100
@@ -106,18 +106,22 @@
 	                              QDateTime& endTime);
 	void getNextInstanceTimes(AgendaEntry& entry, QDateTime& startTime, 
 	                          QDateTime& endTime);
-	
+	void markDatesWithEvents(QDateTime rangeStart, QDateTime rangeEnd,
+						 AgendaUtil::FilterFlags filter, QList<QDate>& dates);
+	bool areNoEntriesInCalendar();
 	static QDateTime minTime();
 	static QDateTime maxTime();
-	
+
 	static bool isWorkdaysRepeatingEntry(const AgendaRepeatRule& repeatRule);
-
+	
 Q_SIGNALS:
 	void entriesChanged(QList<ulong> ids);
 	void entryAdded(ulong id);
 	void entryDeleted(ulong id);
 	void entryUpdated(ulong id);
 	void entriesDeleted(int status);
+	void entryViewCreationCompleted(int status);
+	void instanceViewCreationCompleted(int status);
 
 private:
 	friend class AgendaUtilPrivate;
--- a/alarmui/DataSrc/AlmAlert.rss	Tue May 11 12:31:38 2010 +0100
+++ b/alarmui/DataSrc/AlmAlert.rss	Tue May 18 13:16:49 2010 +0100
@@ -21,7 +21,7 @@
 NAME ALRT
 
 #include <eikon.rh>
-#include <almalert.loc>
+#include <AlmAlert.loc>
 #include "AlmAlertVariant.hrh"
 
 
--- a/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_calendar_unlocked.docml	Tue May 11 12:31:38 2010 +0100
+++ b/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_calendar_unlocked.docml	Tue May 18 13:16:49 2010 +0100
@@ -42,7 +42,7 @@
             </widget>
             <widget name="alarmIcon" type="HbLabel">
                 <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-                <icon iconName="qtg_large_calendar_alarm.svg" name="icon"/>
+                <icon iconName="qtg_large_calendar_alarm" name="icon"/>
                 <real name="z" value="5"/>
                 <sizehint height="15un" type="PREFERRED" width="15un"/>
             </widget>
--- a/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_todo_unlocked.docml	Tue May 11 12:31:38 2010 +0100
+++ b/alarmui/alarmalertwidget/alarmalertplugin/data/xml/alarmalert_todo_unlocked.docml	Tue May 18 13:16:49 2010 +0100
@@ -31,7 +31,7 @@
             </widget>
             <widget name="alarmIcon" type="HbLabel">
                 <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-                <icon iconName="qtg_large_todo_alarm.svg" name="icon"/>
+                <icon iconName="qtg_large_todo_alarm" name="icon"/>
                 <real name="z" value="5"/>
                 <sizehint height="15un" type="PREFERRED" width="15un"/>
             </widget>
--- a/calendarui/agendaeventviewer/data/agendaeventvieweritem.css	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/data/agendaeventvieweritem.css	Tue May 18 13:16:49 2010 +0100
@@ -1,3 +1,14 @@
+
+AgendaEventViewerItem[leftPrimaryIconItem="true"]:portrait {
+		layout: layout-eventvieweritem-stretch;
+		fixed-width: var(hb-param-screen-width);
+}
+
+AgendaEventViewerItem[leftPrimaryIconItem="true"]:landscape {
+		layout: layout-eventvieweritem-stretch;
+		fixed-width: var(hb-param-screen-width);
+}
+
 
 AgendaEventViewerItem:portrait {
 		layout: layout-eventvieweritem;
@@ -9,7 +20,16 @@
 		fixed-width: var(hb-param-screen-width);
 }
 
-AgendaEventViewerItem::primaryIconItem {
+
+AgendaEventViewerItem::primaryLeftIconItem {
+        fixed-width:var(hb-param-graphic-size-primary-small);
+        fixed-height:var(hb-param-graphic-size-primary-small);
+        top: -var(hb-param-margin-gene-top);
+        left: -var(hb-param-margin-gene-left);
+		right: var(hb-param-margin-gene-middle-horizontal);
+}
+
+AgendaEventViewerItem::primaryRightIconItem {
         fixed-width:var(hb-param-graphic-size-secondary);
         fixed-height:var(hb-param-graphic-size-secondary);
         top: -var(hb-param-margin-gene-top);
@@ -20,6 +40,7 @@
 		fixed-width:var(hb-param-graphic-size-primary-small);
 		fixed-height:var(hb-param-graphic-size-primary-small);	
 		left: -var(hb-param-margin-gene-left);
+		right: var(hb-param-margin-gene-middle-horizontal);
 }
 
 AgendaEventViewerItem::primaryTextItem {
@@ -28,7 +49,6 @@
 		text-align: left;
         top: -var(hb-param-margin-gene-top);
 		right: var(hb-param-margin-gene-middle-horizontal);
-
 }
 
 AgendaEventViewerItem::secondaryTextItem {
@@ -37,7 +57,6 @@
         text-align: left;
         top: -var(hb-param-margin-gene-middle-vertical);
 		right: var(hb-param-margin-gene-right);
-        left: -var(hb-param-margin-gene-middle-horizontal);
 		bottom: var(hb-param-margin-gene-bottom);
 
 }
--- a/calendarui/agendaeventviewer/data/agendaeventvieweritem.widgetml	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/data/agendaeventvieweritem.widgetml	Tue May 18 13:16:49 2010 +0100
@@ -16,4 +16,26 @@
      <meshitem src="secondaryTextItem" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
 
   </layout>
-</hbwidget>
+
+  <layout name="layout-eventvieweritem-stretch" type="mesh">
+
+     
+     <meshitem src="primaryLeftIconItem" srcEdge="TOP" dst="" dstEdge="TOP" /> 
+     <meshitem src="primaryLeftIconItem" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+
+     <meshitem src="primaryTextItem" srcEdge="TOP" dst="" dstEdge="TOP" />
+     <meshitem src="primaryTextItem" srcEdge="LEFT" dst="primaryLeftIconItem" dstEdge="RIGHT" />
+
+     <meshitem src="primaryRightIconItem" srcEdge="TOP" dst="" dstEdge="TOP" /> 
+     <meshitem src="primaryRightIconItem" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+     <meshitem src="secondaryIconItem" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+     <meshitem src="secondaryIconItem" srcEdge="TOP" dst="secondaryTextItem" dstEdge="TOP" />
+
+     <meshitem src="secondaryTextItem" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
+     <meshitem src="secondaryTextItem" srcEdge="TOP" dst="primaryTextItem" dstEdge="BOTTOM" />
+     <meshitem src="secondaryTextItem" srcEdge="LEFT" dst="primaryTextItem" dstEdge="LEFT" />
+     <meshitem src="secondaryTextItem" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+  </layout>
+</hbwidget>
\ No newline at end of file
--- a/calendarui/agendaeventviewer/inc/agendaeventview.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/inc/agendaeventview.h	Tue May 18 13:16:49 2010 +0100
@@ -71,7 +71,8 @@
 	void removeAllWidgets();
 	void addAllWidgets();
 	void showDeleteOccurencePopup();
-	int showDeleteConfirmationQuery();
+	void showDeleteConfirmationQuery();
+	void getSubjectIcon(AgendaEntry::Type type, QString &subjectIcon);
 
 private slots:
 	void markTodoStatus();
@@ -84,7 +85,7 @@
 	void handleNoteEditorClosed(bool status);
 	void handleCalendarEditorClosed();
 	void handleDeleteOccurence(int index);
-
+	void handleDeleteAction();
 private:
 	
 	HbView *mViewer;
--- a/calendarui/agendaeventviewer/inc/agendaeventvieweritem.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/inc/agendaeventvieweritem.h	Tue May 18 13:16:49 2010 +0100
@@ -43,6 +43,8 @@
 	HbTextItem *mSecondaryText;
 	HbIconItem *mPrimaryIcon;
 	HbIconItem *mSecondaryIcon;
+	HbIconItem *mPrimaryRightIcon;
+	HbIconItem *mPrimaryLeftIcon;
 
 };
 
--- a/calendarui/agendaeventviewer/src/agendaeventview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/src/agendaeventview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -64,6 +64,10 @@
 //because HbLabel by default not displaying the actual size of image 
 const int height = 128;
 const int width =  330;
+
+//This Property is use for setting a primary left icon
+static const char *primaryLeftIconItem("leftPrimaryIconItem");
+
 /*!
 	\class AgendaEventView.
 
@@ -113,6 +117,9 @@
 	mSubjectWidget = qobject_cast<AgendaEventViewerItem *> (
 			mDocLoader->findWidget(AGENDA_EVENT_VIEWER_SUBJECT_WIDGET));
 
+    //load layout that supports icon before subject label
+    mSubjectWidget->setProperty(primaryLeftIconItem,true);  
+
 	mDateTimeWidget = qobject_cast<AgendaEventViewerItem *> (
 			mDocLoader->findWidget(AGENDA_EVENT_VIEWER_DATE_TIME_WIDGET));
 
@@ -228,7 +235,7 @@
 	}
 	
 	// Add softkey after adding view on window
-	mBackAction = new HbAction(Hb::BackAction);
+	mBackAction = new HbAction(Hb::BackNaviAction);
 	mViewer->setNavigationAction(mBackAction);
 		
 	connect(mBackAction, SIGNAL(triggered()), this, SLOT(close()));
@@ -383,11 +390,14 @@
 
 	mSubjectWidget->setEventViewerItemData(itemList, Qt::DisplayRole);
 
-	itemList.clear();
-	QString priorityIcon(QString::null);
-	getPriorityIcon(mAgendaEntry.priority(), priorityIcon);
-	itemList.append(priorityIcon);
-	itemList.append(QString::null);
+    itemList.clear();
+    QString priorityIcon(QString::null);
+    QString subjectIcon(QString::null);
+    getPriorityIcon(mAgendaEntry.priority(), priorityIcon);
+    getSubjectIcon(mAgendaEntry.type(),subjectIcon);
+    itemList.append(subjectIcon);
+    itemList.append(priorityIcon);
+    itemList.append(QString::null);
 
 	mSubjectWidget->setEventViewerItemData(itemList, Qt::DecorationRole);
 
@@ -410,7 +420,11 @@
     QDateTime endDateTime = mAgendaEntry.endTime();
     
     itemData.append(QString::null);
+    itemData.append(QString::null);
     itemData.append("qtg_small_calendar");
+
+    mDateTimeWidget->setProperty(primaryLeftIconItem, false);  
+
     mDateTimeWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
     itemData.clear();
     itemData.append(QString::null);
@@ -492,7 +506,9 @@
 	qDebug() << "AgendaEventViewer: AgendaEventView::addLocationData -->";
 	QStringList itemData;
 	itemData.append(QString::null);
-	itemData.append("qtg_small_location");
+    itemData.append(QString::null);
+    itemData.append("qtg_small_location");
+    mLocationWidget->setProperty(primaryLeftIconItem, false); 
 	mLocationWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
 	itemData.clear();
 	itemData.append(QString::null);
@@ -518,7 +534,7 @@
         {                        
             QIcon mapTileIcon(mMaptilePath);
             QPainter painter;
-            QPixmap baloon(HbIcon("qtg_small_location.svg").pixmap());
+            QPixmap baloon(HbIcon("qtg_small_location").pixmap());
             QPixmap map (mapTileIcon.pixmap(width,height));
             //Display pin image in the center of maptile image
             painter.begin( &map );
@@ -549,14 +565,16 @@
 	qDebug() << "AgendaEventViewer: AgendaEventView::addReminderData -->";
 	QStringList itemData;
 	itemData.append(QString::null);
-	itemData.append("qtg_small_reminder");
+    itemData.append(QString::null);
+    itemData.append("qtg_small_reminder");
+    mReminderWidget->setProperty(primaryLeftIconItem, false); 
 	mReminderWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
 	itemData.clear();
 	itemData.append(QString::null);
 	itemData.append(alarmTimeText());
 	mReminderWidget->setEventViewerItemData(itemData, Qt::DisplayRole);
 	qDebug() << "AgendaEventViewer: AgendaEventView::addReminderData <--";
-}
+    }
 
 /*!
 	Add completed to-do data to Event viewer
@@ -566,10 +584,11 @@
 	qDebug() << "AgendaEventViewer: AgendaEventView::addCompletedTodoData -->";
 	QStringList itemData;
 	QString     completedText;
-	HbExtendedLocale systemLocale = HbExtendedLocale::system();;
-	
+    HbExtendedLocale systemLocale = HbExtendedLocale::system();;
+    itemData.append(QString::null);
 	itemData.append(QString::null);
 	itemData.append(QString::null);
+    mReminderWidget->setProperty(primaryLeftIconItem, false);
 	mReminderWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
 	itemData.clear();
 	completedText = systemLocale.format(mAgendaEntry.completedDateTime().date(),
@@ -588,7 +607,9 @@
 	qDebug() << "AgendaEventViewer: AgendaEventView::addRepeatData -->";
 	QStringList itemData;
 	itemData.append(QString::null);
-	itemData.append("qtg_mono_repeat.svg");
+    itemData.append(QString::null);
+    itemData.append("qtg_mono_repeat.svg");
+    mRepeatWidget->setProperty(primaryLeftIconItem, false);
 	mRepeatWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
 	itemData.clear();
 	itemData.append(QString::null);
@@ -606,6 +627,8 @@
 	QStringList itemData;
 	itemData.append(QString::null);
 	itemData.append(QString::null);
+    itemData.append(QString::null);
+    mDescriptionWidget->setProperty(primaryLeftIconItem, false);
 	mDescriptionWidget->setEventViewerItemData(itemData, Qt::DecorationRole);
 	itemData.clear();
 	itemData.append(hbTrId("txt_calendar_dblist_description"));
@@ -859,10 +882,11 @@
 void AgendaEventView::showDeleteOccurencePopup()
 {
 	qDebug()
-	      << "AgendaEventViewer: AgendaEventView::showDeleteOccurencePopup -->";
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
+		<< "AgendaEventViewer: AgendaEventView::showDeleteOccurencePopup -->";
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
 
 	QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
 	HbWidget *deleteWidget = new HbWidget(mViewer);
@@ -872,84 +896,94 @@
 
 	QStringList list;
 	list << hbTrId("txt_calendar_info_this_occurrence_only") 
-		 << hbTrId("txt_calendar_info_all_occurences");
+				<< hbTrId("txt_calendar_info_all_occurences");
 
 	deleteButtonList->setItems(list);
 
 	layout->addItem(deleteButtonList);
 
-	popUp.setContentWidget(deleteWidget);
-	popUp.setHeadingWidget(new HbLabel(
-						hbTrId("txt_calendar_title_delete_repeated_entry")));
+	popUp->setContentWidget(deleteWidget);
+	popUp->setHeadingWidget(new HbLabel(
+			hbTrId("txt_calendar_title_delete_repeated_entry")));
 
 	connect(deleteButtonList, SIGNAL(itemSelected(int)), this,
-	        SLOT(handleDeleteOccurence(int)));
-	connect(deleteButtonList, SIGNAL(itemSelected(int)), &popUp, SLOT(close()));
+											SLOT(handleDeleteOccurence(int)));
+	connect(deleteButtonList, SIGNAL(itemSelected(int)), popUp, SLOT(close()));
 
-	// Create secondary action
-	HbAction *cancelAction = new HbAction(
-						hbTrId("txt_calendar_button_softkey1_cancel"));
-	popUp.setSecondaryAction(cancelAction);
-	connect(cancelAction, SIGNAL(triggered()), &popUp, SLOT(close()));
+	popUp->addAction(new HbAction(
+			hbTrId("txt_calendar_button_softkey1_cancel")));
 
 	// Show the popup
-	popUp.exec();
+	popUp->open();
 
 	qDebug()
-	      << "AgendaEventViewer: AgendaEventView::showDeleteOccurencePopup <--";
+		<< "AgendaEventViewer: AgendaEventView::showDeleteOccurencePopup <--";
 }
 
-
 /*!
- * Show delete confirmation query
+	Show delete confirmation query
  */
-int AgendaEventView::showDeleteConfirmationQuery()
-{
-	qDebug()
-	   << "AgendaEventViewer: AgendaEventView::showDeleteConfirmationQuery -->";
-	int retStatus = 0;
+void AgendaEventView::showDeleteConfirmationQuery()
+    {
+    qDebug()
+		<< "AgendaEventViewer: AgendaEventView::showDeleteConfirmationQuery -->";
+    
+    HbMessageBox *popup = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
+    popup->setDismissPolicy(HbDialog::NoDismiss);
+    popup->setTimeout(HbDialog::NoTimeout);
+    popup->setAttribute( Qt::WA_DeleteOnClose, true );
 
-	HbMessageBox popup(HbMessageBox::MessageTypeQuestion);
-	popup.setDismissPolicy(HbDialog::NoDismiss);
-	popup.setTimeout(HbDialog::NoTimeout);
-	popup.setIconVisible(true);
-
-	QString text = 0;
+    QString text = 0;
 
-	switch (mAgendaEntry.type()) {
-		case AgendaEntry::TypeAppoinment:
-		case AgendaEntry::TypeEvent: {
-			text.append(hbTrId("txt_calendar_info_delete_meeting"));
-			break;
-		}
-		case AgendaEntry::TypeAnniversary: {
-			text.append(hbTrId("txt_calendar_info_delete_anniversary"));
-			break;
-		}
-		case AgendaEntry::TypeTodo: {
-			text.append(hbTrId("txt_calendar_info_delete_todo_note"));
-			break;
-		}
-		case AgendaEntry::TypeNote: {
-			text.append(hbTrId("txt_calendar_info_delete_anniversary"));
-			break;
-		}
-	}
+    switch (mAgendaEntry.type()) {
+        case AgendaEntry::TypeAppoinment:
+        case AgendaEntry::TypeEvent: {
+        text.append(hbTrId("txt_calendar_info_delete_meeting"));
+        break;
+        }
+        case AgendaEntry::TypeAnniversary: {
+        text.append(hbTrId("txt_calendar_info_delete_anniversary"));
+        break;
+        }
+        case AgendaEntry::TypeTodo: {
+        text.append(hbTrId("txt_calendar_info_delete_todo_note"));
+        break;
+        }
+        case AgendaEntry::TypeNote: {
+        text.append(hbTrId("txt_calendar_info_delete_anniversary"));
+        break;
+        }
+    }
+    popup->setText(text);
+    
+    QList<QAction*> list = popup->actions();
+    for(int i=0; i < list.count(); i++)
+        {
+        popup->removeAction(list[i]);
+        }
+    HbAction *deleteAction = 
+					new HbAction(hbTrId("txt_calendar_button_delete"), popup);
+    popup->addAction(deleteAction);
+    connect(deleteAction, SIGNAL(triggered()), this ,
+												SLOT(handleDeleteAction()));
+    popup->addAction(new HbAction(hbTrId("txt_calendar_button_cancel"), popup));
+    popup->open();
+    qDebug()
+		<< "AgendaEventViewer: AgendaEventView::showDeleteConfirmationQuery <--";
+}
 
-	popup.setText(text);
-	
-	popup.setPrimaryAction(new HbAction(
-								hbTrId("txt_calendar_button_delete"), &popup));
-	popup.setSecondaryAction(new HbAction(
-								hbTrId("txt_calendar_button_cancel"), &popup));
-	HbAction *selected = popup.exec();
-	if (selected == popup.primaryAction()) { 
-		retStatus = 1;
-	}
+/*!
+	Handles the delete action
+ */
+void AgendaEventView::handleDeleteAction()
+    {
+    // If delete button is pressed delete the entry
+    // To notify client that deleting Started
+    // Calendar Application changing state from viewing to deleting.
+    mOwner->deletingStarted();
 
-	qDebug()
-	   << "AgendaEventViewer: AgendaEventView::showDeleteConfirmationQuery <--";
-	return retStatus;
+    // Delete the entry.
+    mOwner->mAgendaUtil->deleteEntry(mAgendaEntry.id());
 }
 
 /*!
@@ -1038,15 +1072,7 @@
 		// Query user if he wants to delete whole series or just this occurence
 		showDeleteOccurencePopup();
 	} else {
-		if (showDeleteConfirmationQuery()) {
-			
-			// To notify client that deleting Started
-			// Calendar Application changing state from viewing to deleting.
-			mOwner->deletingStarted();
-				
-			// Delete the entry.
-			mOwner->mAgendaUtil->deleteEntry(mAgendaEntry.id());
-		}
+        showDeleteConfirmationQuery();
 	}
 
 	qDebug() << "AgendaEventViewer: AgendaEventView::deleteAgendaEntry <--";
@@ -1216,4 +1242,38 @@
 	qDebug() << "AgendaEventViewer: AgendaEventView::handleDeleteOccurence <--";
 }
 
+/*!
+    Returns subject icon
+ */
+void AgendaEventView::getSubjectIcon(AgendaEntry::Type type, QString &subjectIcon)
+    {
+    qDebug() << "AgendaEventViewer: AgendaEventView::getSubjectIcon -->";
+    switch(type) {
+        case AgendaEntry::TypeAppoinment:
+            {
+            subjectIcon.append("qtg_small_favorite");//@to do add proper icon
+            }
+            break;
+        case AgendaEntry::TypeTodo:
+            {
+            subjectIcon.append("qtg_small_todo");
+            }
+            break;
+        case AgendaEntry::TypeEvent:
+            {
+            subjectIcon.append("qtg_small_allday");//@ TODO add proper icon
+            }
+            break;
+        case AgendaEntry::TypeAnniversary:
+            {
+            subjectIcon.append("qtg_small_anniversary");
+            }
+            break;
+        default:
+            break;
+    }
+
+    qDebug() << "AgendaEventViewer: AgendaEventView::getSubjectIcon <--";
+    }
+
 // End of file
--- a/calendarui/agendaeventviewer/src/agendaeventvieweritem.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/agendaeventviewer/src/agendaeventvieweritem.cpp	Tue May 18 13:16:49 2010 +0100
@@ -40,7 +40,8 @@
  */
 AgendaEventViewerItem::AgendaEventViewerItem(QGraphicsItem *parent) :
 	HbWidget(parent), mPrimaryText(NULL), mSecondaryText(NULL),
-	        mPrimaryIcon(NULL), mSecondaryIcon(NULL)
+	        mPrimaryIcon(NULL), mSecondaryIcon(NULL),mPrimaryRightIcon(NULL),
+	        mPrimaryLeftIcon(NULL)
 {
 
 	// Path for widgetml and css files.
@@ -70,10 +71,15 @@
 	if (!itemData.isEmpty()) {
 		QString firstItemData(QString::null);
 		QString secondItemData(QString::null);
-
-		if (itemData.count() == 2) {
+		QString thirdItemData(QString::null);
+        if (itemData.count() == 2) {
+            firstItemData = itemData.at(0);
+            secondItemData = itemData.at(1);
+        }
+        else if (itemData.count() == 3) {
 			firstItemData = itemData.at(0);
 			secondItemData = itemData.at(1);
+			thirdItemData = itemData.at(2);
 		} else {
 			firstItemData = itemData.at(0);
 		}
@@ -107,28 +113,43 @@
 				}
 		} else {
 			if (role == Qt::DecorationRole) {
-				if (!firstItemData.isEmpty()) {
-					if (!mPrimaryIcon) {
-						mPrimaryIcon = new HbIconItem(this);
+               if (!firstItemData.isEmpty()) {
+                   if (!mPrimaryLeftIcon) {
+                   mPrimaryLeftIcon = new HbIconItem(this);
+                   }
+                   HbStyle::setItemName(mPrimaryLeftIcon, "primaryLeftIconItem");
+                   mPrimaryLeftIcon->setVisible(true);
+                   mPrimaryLeftIcon->setIconName(firstItemData);
+
+               } else {
+                   if (mPrimaryLeftIcon) {
+                       HbStyle::setItemName(mPrimaryLeftIcon,"");
+                       mPrimaryLeftIcon->setVisible(false); 
+                   }
+                   
+               }
+				if (!secondItemData.isEmpty()) {
+					if (!mPrimaryRightIcon) {
+					mPrimaryRightIcon = new HbIconItem(this);
 					}
-					HbStyle::setItemName(mPrimaryIcon, "primaryIconItem");
-					mPrimaryIcon->setVisible(true);
-					mPrimaryIcon->setIconName(firstItemData);
+					HbStyle::setItemName(mPrimaryRightIcon, "primaryRightIconItem");
+					mPrimaryRightIcon->setVisible(true);
+					mPrimaryRightIcon->setIconName(secondItemData);
 
 				} else {
-					if (mPrimaryIcon) {
-						HbStyle::setItemName(mPrimaryIcon,"");
-						mPrimaryIcon->setVisible(false); 
+					if (mPrimaryRightIcon) {
+						HbStyle::setItemName(mPrimaryRightIcon,"");
+						mPrimaryRightIcon->setVisible(false); 
 					}
 					
 				}
-				if (!secondItemData.isEmpty()) {
+				if (!thirdItemData.isEmpty()) {
 					if (!mSecondaryIcon) {
 						mSecondaryIcon = new HbIconItem(this);
 						HbStyle::setItemName(mSecondaryIcon, 
 						                     "secondaryIconItem");
 					}
-					mSecondaryIcon->setIconName(secondItemData);
+					mSecondaryIcon->setIconName(thirdItemData);
 
 				} else {
 					if (mSecondaryIcon) {
--- a/calendarui/application/src/main.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/application/src/main.cpp	Tue May 18 13:16:49 2010 +0100
@@ -31,16 +31,12 @@
     
     // Main window for providing the scene context
 	HbMainWindow window;
-	window.setRenderHints(
-			QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
-	window.setViewportUpdateMode(QGraphicsView::MinimalViewportUpdate);
 	
     //For translation, loading and installing translator
 	QTranslator translator;
     QString lang = QLocale::system().name();
     QString path = "Z:/resource/qt/translations/";
     // TODO: Load the appropriate .qm file based on locale
-    //bool loaded = translator.load("calendar_" + lang, path);
     bool loaded = translator.load("calendar_en_GB",":/translations");
     app.installTranslator(&translator);
 
@@ -56,6 +52,7 @@
     int retValue = app.exec();
     
     // delete the controller
+    controller->ReleaseCustomisations();
     controller->Release();
     
     return retValue;
--- a/calendarui/bwins/calencontrolleru.def	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/bwins/calencontrolleru.def	Tue May 18 13:16:49 2010 +0100
@@ -24,4 +24,5 @@
 	?OfferMenu@CCalenController@@QAEXPAVHbMenu@@@Z @ 23 NONAME ; void CCalenController::OfferMenu(class HbMenu *)
 	?RegisterForNotificationsL@CCalenController@@QAEXPAVMCalenNotificationHandler@@AAV?$RArray@W4TCalenNotification@@@@@Z @ 24 NONAME ; void CCalenController::RegisterForNotificationsL(class MCalenNotificationHandler *, class RArray<enum TCalenNotification> &)
 	?NewServicesL@CCalenController@@UAEPAVMCalenServices@@XZ @ 25 NONAME ; class MCalenServices * CCalenController::NewServicesL(void)
+	?ReleaseCustomisations@CCalenController@@QAEXXZ @ 26 NONAME ; void CCalenController::ReleaseCustomisations(void)
 
--- a/calendarui/bwins/calenviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/bwins/calenviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,147 +1,154 @@
 EXPORTS
 	?scrollingFinished@CalenPreviewPane@@QAEXXZ @ 1 NONAME ; void CalenPreviewPane::scrollingFinished(void)
-	?setDate@CalenMonthView@@AAEXXZ @ 2 NONAME ; void CalenMonthView::setDate(void)
-	?handleGridItemActivated@CalenMonthView@@QAEXXZ @ 3 NONAME ; void CalenMonthView::handleGridItemActivated(void)
-	?setFocusToProperDay@CalenMonthGrid@@AAEXXZ @ 4 NONAME ; void CalenMonthGrid::setFocusToProperDay(void)
-	??1CalenPreviewPane@@UAE@XZ @ 5 NONAME ; CalenPreviewPane::~CalenPreviewPane(void)
-	?mousePressEvent@CalenMonthGrid@@EAEXPAVQGraphicsSceneMouseEvent@@@Z @ 6 NONAME ; void CalenMonthGrid::mousePressEvent(class QGraphicsSceneMouseEvent *)
-	?completePopulation@CalenMonthView@@AAEXXZ @ 7 NONAME ; void CalenMonthView::completePopulation(void)
-	?handleChangeOrientation@CalenMonthView@@AAEXXZ @ 8 NONAME ; void CalenMonthView::handleChangeOrientation(void)
-	?staticMetaObject@CalenSettingsView@@2UQMetaObject@@B @ 9 NONAME ; struct QMetaObject const CalenSettingsView::staticMetaObject
-	?upGesture@CalenMonthGrid@@MAEXH@Z @ 10 NONAME ; void CalenMonthGrid::upGesture(int)
-	?getStaticMetaObject@CalenSettingsView@@SAABUQMetaObject@@XZ @ 11 NONAME ; struct QMetaObject const & CalenSettingsView::getStaticMetaObject(void)
-	?updateMonthDataArrayWithActiveDates@CalenMonthView@@AAEXXZ @ 12 NONAME ; void CalenMonthView::updateMonthDataArrayWithActiveDates(void)
-	?scrollingFinished@CalenMonthGrid@@QAEXXZ @ 13 NONAME ; void CalenMonthGrid::scrollingFinished(void)
-	?setCurrentIdex@CalenMonthGrid@@QAEXH@Z @ 14 NONAME ; void CalenMonthGrid::setCurrentIdex(int)
-	??_ECalenMonthGrid@@UAE@I@Z @ 15 NONAME ; CalenMonthGrid::~CalenMonthGrid(unsigned int)
-	?trUtf8@CalenPreviewPane@@SA?AVQString@@PBD0@Z @ 16 NONAME ; class QString CalenPreviewPane::trUtf8(char const *, char const *)
-	?trUtf8@CalenMonthGrid@@SA?AVQString@@PBD0@Z @ 17 NONAME ; class QString CalenMonthGrid::trUtf8(char const *, char const *)
-	?populatePrevMonth@CalenMonthView@@QAEXXZ @ 18 NONAME ; void CalenMonthView::populatePrevMonth(void)
-	?qt_metacall@CalenSettingsView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 19 NONAME ; int CalenSettingsView::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?handleLeftEffectCompleted@CalenMonthView@@AAEXABUEffectStatus@HbEffect@@@Z @ 20 NONAME ; void CalenMonthView::handleLeftEffectCompleted(struct HbEffect::EffectStatus const &)
-	?getStaticMetaObject@CalenMonthGrid@@SAABUQMetaObject@@XZ @ 21 NONAME ; struct QMetaObject const & CalenMonthGrid::getStaticMetaObject(void)
-	?trUtf8@CalenSettingsView@@SA?AVQString@@PBD0H@Z @ 22 NONAME ; class QString CalenSettingsView::trUtf8(char const *, char const *, int)
-	?qt_metacast@CalenMonthView@@UAEPAXPBD@Z @ 23 NONAME ; void * CalenMonthView::qt_metacast(char const *)
-	?staticMetaObject@CalenMonthView@@2UQMetaObject@@B @ 24 NONAME ; struct QMetaObject const CalenMonthView::staticMetaObject
-	?setupView@CalenMonthView@@QAEXPAVCalenDocLoader@@@Z @ 25 NONAME ; void CalenMonthView::setupView(class CalenDocLoader *)
-	?metaObject@CalenMonthGrid@@UBEPBUQMetaObject@@XZ @ 26 NONAME ; struct QMetaObject const * CalenMonthGrid::metaObject(void) const
-	?startAutoScroll@CalenPreviewPane@@QAEXXZ @ 27 NONAME ; void CalenPreviewPane::startAutoScroll(void)
-	?setView@CalenMonthGrid@@QAEXPAVCalenMonthView@@@Z @ 28 NONAME ; void CalenMonthGrid::setView(class CalenMonthView *)
-	?HandleNotification@CalenDayView@@UAEXW4TCalenNotification@@@Z @ 29 NONAME ; void CalenDayView::HandleNotification(enum TCalenNotification)
-	?panGesture@CalenMonthGrid@@MAEXABVQPointF@@@Z @ 30 NONAME ; void CalenMonthGrid::panGesture(class QPointF const &)
-	?mousePressEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 31 NONAME ; void CalenPreviewPane::mousePressEvent(class QGraphicsSceneMouseEvent *)
-	??1CalenSettingsView@@UAE@XZ @ 32 NONAME ; CalenSettingsView::~CalenSettingsView(void)
-	?Date@CalenPreviewPane@@QAE?AVQDateTime@@XZ @ 33 NONAME ; class QDateTime CalenPreviewPane::Date(void)
-	?tr@CalenPreviewPane@@SA?AVQString@@PBD0H@Z @ 34 NONAME ; class QString CalenPreviewPane::tr(char const *, char const *, int)
-	?getInstanceList@CalenMonthView@@AAEXAAV?$QList@VAgendaEntry@@@@VQDateTime@@1@Z @ 35 NONAME ; void CalenMonthView::getInstanceList(class QList<class AgendaEntry> &, class QDateTime, class QDateTime)
-	?metaObject@CalenMonthView@@UBEPBUQMetaObject@@XZ @ 36 NONAME ; struct QMetaObject const * CalenMonthView::metaObject(void) const
-	??0CalenPreviewPane@@QAE@AAVMCalenServices@@PAVQGraphicsItem@@@Z @ 37 NONAME ; CalenPreviewPane::CalenPreviewPane(class MCalenServices &, class QGraphicsItem *)
-	?mouseReleaseEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 38 NONAME ; void CalenPreviewPane::mouseReleaseEvent(class QGraphicsSceneMouseEvent *)
-	?rowsInPrevMonth@CalenMonthView@@QAEHXZ @ 39 NONAME ; int CalenMonthView::rowsInPrevMonth(void)
-	?metaObject@CalenPreviewPane@@UBEPBUQMetaObject@@XZ @ 40 NONAME ; struct QMetaObject const * CalenPreviewPane::metaObject(void) const
-	??0CalenDayView@@QAE@AAVMCalenServices@@@Z @ 41 NONAME ; CalenDayView::CalenDayView(class MCalenServices &)
-	?populateNextMonth@CalenMonthView@@QAEXXZ @ 42 NONAME ; void CalenMonthView::populateNextMonth(void)
-	?handleRightEffectCompleted@CalenMonthView@@AAEXABUEffectStatus@HbEffect@@@Z @ 43 NONAME ; void CalenMonthView::handleRightEffectCompleted(struct HbEffect::EffectStatus const &)
-	?qt_metacast@CalenMonthGrid@@UAEPAXPBD@Z @ 44 NONAME ; void * CalenMonthGrid::qt_metacast(char const *)
-	?firstDayOfGrid@CalenMonthView@@QAE?AVQDateTime@@XZ @ 45 NONAME ; class QDateTime CalenMonthView::firstDayOfGrid(void)
-	?rowsInFutMonth@CalenMonthView@@QAEHXZ @ 46 NONAME ; int CalenMonthView::rowsInFutMonth(void)
-	?getCurrGridIndex@CalenMonthView@@QAEHXZ @ 47 NONAME ; int CalenMonthView::getCurrGridIndex(void)
-	?launchDayView@CalenMonthView@@QAEXXZ @ 48 NONAME ; void CalenMonthView::launchDayView(void)
-	??1CalenDayViewWidget@@UAE@XZ @ 49 NONAME ; CalenDayViewWidget::~CalenDayViewWidget(void)
-	??0CalenDayViewWidget@@QAE@AAVMCalenServices@@PAVCalenDocLoader@@@Z @ 50 NONAME ; CalenDayViewWidget::CalenDayViewWidget(class MCalenServices &, class CalenDocLoader *)
-	?prependRows@CalenMonthGrid@@QAEXXZ @ 51 NONAME ; void CalenMonthGrid::prependRows(void)
-	?orientationChanged@CalenMonthGrid@@MAEXW4Orientation@Qt@@@Z @ 52 NONAME ; void CalenMonthGrid::orientationChanged(enum Qt::Orientation)
-	?handleGridItemLongPressed@CalenMonthView@@QAEXHAAVQPointF@@@Z @ 53 NONAME ; void CalenMonthView::handleGridItemLongPressed(int, class QPointF &)
-	?qt_metacall@CalenPreviewPane@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 54 NONAME ; int CalenPreviewPane::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?trUtf8@CalenPreviewPane@@SA?AVQString@@PBD0H@Z @ 55 NONAME ; class QString CalenPreviewPane::trUtf8(char const *, char const *, int)
-	??1CalenThickLinesDrawer@@UAE@XZ @ 56 NONAME ; CalenThickLinesDrawer::~CalenThickLinesDrawer(void)
-	?setView@CalenPreviewPane@@QAEXPAVCalenMonthView@@@Z @ 57 NONAME ; void CalenPreviewPane::setView(class CalenMonthView *)
-	??_ECalenMonthView@@UAE@I@Z @ 58 NONAME ; CalenMonthView::~CalenMonthView(unsigned int)
-	?changeOrientation@CalenMonthView@@UAEXW4Orientation@Qt@@@Z @ 59 NONAME ; void CalenMonthView::changeOrientation(enum Qt::Orientation)
-	?populatePreviewPane@CalenMonthView@@QAEXAAVQDateTime@@@Z @ 60 NONAME ; void CalenMonthView::populatePreviewPane(class QDateTime &)
-	??0CalenSettingsView@@QAE@AAVMCalenServices@@PAVQGraphicsItem@@@Z @ 61 NONAME ; CalenSettingsView::CalenSettingsView(class MCalenServices &, class QGraphicsItem *)
-	?updateModelWithPrevMonth@CalenMonthView@@QAEXXZ @ 62 NONAME ; void CalenMonthView::updateModelWithPrevMonth(void)
-	?stopScrolling@CalenPreviewPane@@QAEXXZ @ 63 NONAME ; void CalenPreviewPane::stopScrolling(void)
-	?addBackgroundFrame@CalenMonthView@@AAEXXZ @ 64 NONAME ; void CalenMonthView::addBackgroundFrame(void)
-	?createGrid@CalenMonthView@@AAEXXZ @ 65 NONAME ; void CalenMonthView::createGrid(void)
-	?tr@CalenPreviewPane@@SA?AVQString@@PBD0@Z @ 66 NONAME ; class QString CalenPreviewPane::tr(char const *, char const *)
-	?getStaticMetaObject@CalenPreviewPane@@SAABUQMetaObject@@XZ @ 67 NONAME ; struct QMetaObject const & CalenPreviewPane::getStaticMetaObject(void)
-	?launchPreviousView@CalenSettingsView@@AAEXXZ @ 68 NONAME ; void CalenSettingsView::launchPreviousView(void)
-	?setCurrGridIndex@CalenMonthView@@QAEXH@Z @ 69 NONAME ; void CalenMonthView::setCurrGridIndex(int)
-	?setDateToLabel@CalenMonthView@@AAEXXZ @ 70 NONAME ; void CalenMonthView::setDateToLabel(void)
-	?addWeekNumbers@CalenMonthView@@AAEXXZ @ 71 NONAME ; void CalenMonthView::addWeekNumbers(void)
-	?qt_metacall@CalenThickLinesDrawer@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 72 NONAME ; int CalenThickLinesDrawer::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?setupView@CalenDayView@@QAEXPAVCalenDocLoader@@@Z @ 73 NONAME ; void CalenDayView::setupView(class CalenDocLoader *)
-	??1CalenMonthView@@UAE@XZ @ 74 NONAME ; CalenMonthView::~CalenMonthView(void)
-	?dateFromContext@CalenMonthView@@AAE?AVQDateTime@@ABVMCalenContext@@@Z @ 75 NONAME ; class QDateTime CalenMonthView::dateFromContext(class MCalenContext const &)
-	?staticMetaObject@CalenMonthGrid@@2UQMetaObject@@B @ 76 NONAME ; struct QMetaObject const CalenMonthGrid::staticMetaObject
-	?paint@CalenThickLinesDrawer@@EAEXPAVQPainter@@PBVQStyleOptionGraphicsItem@@PAVQWidget@@@Z @ 77 NONAME ; void CalenThickLinesDrawer::paint(class QPainter *, class QStyleOptionGraphicsItem const *, class QWidget *)
-	?trUtf8@CalenMonthGrid@@SA?AVQString@@PBD0H@Z @ 78 NONAME ; class QString CalenMonthGrid::trUtf8(char const *, char const *, int)
-	?initializeForm@CalenSettingsView@@QAEXXZ @ 79 NONAME ; void CalenSettingsView::initializeForm(void)
-	?tr@CalenMonthGrid@@SA?AVQString@@PBD0H@Z @ 80 NONAME ; class QString CalenMonthGrid::tr(char const *, char const *, int)
-	?goToToday@CalenMonthView@@AAEXXZ @ 81 NONAME ; void CalenMonthView::goToToday(void)
-	?trUtf8@CalenThickLinesDrawer@@SA?AVQString@@PBD0H@Z @ 82 NONAME ; class QString CalenThickLinesDrawer::trUtf8(char const *, char const *, int)
-	?qt_metacast@CalenPreviewPane@@UAEPAXPBD@Z @ 83 NONAME ; void * CalenPreviewPane::qt_metacast(char const *)
-	?docLoader@CalenDayView@@QAEPAVCalenDocLoader@@XZ @ 84 NONAME ; class CalenDocLoader * CalenDayView::docLoader(void)
-	?getCurrentIndex@CalenMonthGrid@@QAEHXZ @ 85 NONAME ; int CalenMonthGrid::getCurrentIndex(void)
-	?removeWeekNumbers@CalenMonthView@@AAEXXZ @ 86 NONAME ; void CalenMonthView::removeWeekNumbers(void)
-	?tr@CalenSettingsView@@SA?AVQString@@PBD0H@Z @ 87 NONAME ; class QString CalenSettingsView::tr(char const *, char const *, int)
-	?trUtf8@CalenMonthView@@SA?AVQString@@PBD0H@Z @ 88 NONAME ; class QString CalenMonthView::trUtf8(char const *, char const *, int)
-	??0CalenMonthView@@QAE@AAVMCalenServices@@@Z @ 89 NONAME ; CalenMonthView::CalenMonthView(class MCalenServices &)
-	?getStaticMetaObject@CalenThickLinesDrawer@@SAABUQMetaObject@@XZ @ 90 NONAME ; struct QMetaObject const & CalenThickLinesDrawer::getStaticMetaObject(void)
-	?setNoEntriesLabel@CalenPreviewPane@@QAEXPAVHbLabel@@@Z @ 91 NONAME ; void CalenPreviewPane::setNoEntriesLabel(class HbLabel *)
-	??0CalenThickLinesDrawer@@QAE@W4WidgetType@CalendarNamespace@@PAVQGraphicsItem@@@Z @ 92 NONAME ; CalenThickLinesDrawer::CalenThickLinesDrawer(enum CalendarNamespace::WidgetType, class QGraphicsItem *)
-	?onLocaleChanged@CalenMonthView@@UAEXH@Z @ 93 NONAME ; void CalenMonthView::onLocaleChanged(int)
-	?doPopulation@CalenMonthView@@UAEXXZ @ 94 NONAME ; void CalenMonthView::doPopulation(void)
-	?tr@CalenMonthView@@SA?AVQString@@PBD0H@Z @ 95 NONAME ; class QString CalenMonthView::tr(char const *, char const *, int)
-	?GetInstanceListL@CalenPreviewPane@@AAEXXZ @ 96 NONAME ; void CalenPreviewPane::GetInstanceListL(void)
-	?tr@CalenMonthView@@SA?AVQString@@PBD0@Z @ 97 NONAME ; class QString CalenMonthView::tr(char const *, char const *)
-	??0CalenMonthGrid@@QAE@PAVQGraphicsItem@@@Z @ 98 NONAME ; CalenMonthGrid::CalenMonthGrid(class QGraphicsItem *)
-	?refreshViewOnGoToDate@CalenMonthView@@EAEXXZ @ 99 NONAME ; void CalenMonthView::refreshViewOnGoToDate(void)
-	?appendRows@CalenMonthGrid@@QAEXXZ @ 100 NONAME ; void CalenMonthGrid::appendRows(void)
-	?tr@CalenThickLinesDrawer@@SA?AVQString@@PBD0H@Z @ 101 NONAME ; class QString CalenThickLinesDrawer::tr(char const *, char const *, int)
-	?mouseReleaseEvent@CalenMonthGrid@@EAEXPAVQGraphicsSceneMouseEvent@@@Z @ 102 NONAME ; void CalenMonthGrid::mouseReleaseEvent(class QGraphicsSceneMouseEvent *)
-	?getCurrentDay@CalenMonthView@@QAE?AVQDateTime@@XZ @ 103 NONAME ; class QDateTime CalenMonthView::getCurrentDay(void)
-	?staticMetaObject@CalenPreviewPane@@2UQMetaObject@@B @ 104 NONAME ; struct QMetaObject const CalenPreviewPane::staticMetaObject
-	?tr@CalenSettingsView@@SA?AVQString@@PBD0@Z @ 105 NONAME ; class QString CalenSettingsView::tr(char const *, char const *)
-	?onTwoSecondsTimeout@CalenPreviewPane@@QAEXXZ @ 106 NONAME ; void CalenPreviewPane::onTwoSecondsTimeout(void)
-	?timerExpired@CalenMonthGrid@@IAEXXZ @ 107 NONAME ; void CalenMonthGrid::timerExpired(void)
-	?tr@CalenThickLinesDrawer@@SA?AVQString@@PBD0@Z @ 108 NONAME ; class QString CalenThickLinesDrawer::tr(char const *, char const *)
-	?staticMetaObject@CalenThickLinesDrawer@@2UQMetaObject@@B @ 109 NONAME ; struct QMetaObject const CalenThickLinesDrawer::staticMetaObject
-	?populateWithInstanceView@CalenMonthView@@AAEXXZ @ 110 NONAME ; void CalenMonthView::populateWithInstanceView(void)
-	?trUtf8@CalenThickLinesDrawer@@SA?AVQString@@PBD0@Z @ 111 NONAME ; class QString CalenThickLinesDrawer::trUtf8(char const *, char const *)
-	?downGesture@CalenMonthGrid@@MAEXH@Z @ 112 NONAME ; void CalenMonthGrid::downGesture(int)
-	?populateLabel@CalenPreviewPane@@QAEXVQDateTime@@@Z @ 113 NONAME ; void CalenPreviewPane::populateLabel(class QDateTime)
-	?doPopulation@CalenDayView@@UAEXXZ @ 114 NONAME ; void CalenDayView::doPopulation(void)
-	??1CalenDayView@@UAE@XZ @ 115 NONAME ; CalenDayView::~CalenDayView(void)
-	?updateModelWithFutureMonth@CalenMonthView@@QAEXXZ @ 116 NONAME ; void CalenMonthView::updateModelWithFutureMonth(void)
-	?monthDataList@CalenMonthView@@QAE?AV?$QList@VCalenMonthData@@@@XZ @ 117 NONAME ; class QList<class CalenMonthData> CalenMonthView::monthDataList(void)
-	?metaObject@CalenThickLinesDrawer@@UBEPBUQMetaObject@@XZ @ 118 NONAME ; struct QMetaObject const * CalenThickLinesDrawer::metaObject(void) const
-	??1CalenMonthGrid@@UAE@XZ @ 119 NONAME ; CalenMonthGrid::~CalenMonthGrid(void)
-	?updateWeekNumGridModel@CalenMonthView@@AAEXXZ @ 120 NONAME ; void CalenMonthView::updateWeekNumGridModel(void)
-	?qt_metacast@CalenThickLinesDrawer@@UAEPAXPBD@Z @ 121 NONAME ; void * CalenThickLinesDrawer::qt_metacast(char const *)
-	?prepareForPopulation@CalenMonthView@@AAEXXZ @ 122 NONAME ; void CalenMonthView::prepareForPopulation(void)
-	?handlePreviewPaneGesture@CalenMonthView@@QAEX_N@Z @ 123 NONAME ; void CalenMonthView::handlePreviewPaneGesture(bool)
-	?updateMonthGridModel@CalenMonthGrid@@QAEXAAV?$QList@VCalenMonthData@@@@H@Z @ 124 NONAME ; void CalenMonthGrid::updateMonthGridModel(class QList<class CalenMonthData> &, int)
-	?setActiveDates@CalenMonthGrid@@AAEXVQDate@@@Z @ 125 NONAME ; void CalenMonthGrid::setActiveDates(class QDate)
-	?trUtf8@CalenMonthView@@SA?AVQString@@PBD0@Z @ 126 NONAME ; class QString CalenMonthView::trUtf8(char const *, char const *)
-	?setContextForActiveDay@CalenMonthView@@QAEXH@Z @ 127 NONAME ; void CalenMonthView::setContextForActiveDay(int)
-	?trUtf8@CalenSettingsView@@SA?AVQString@@PBD0@Z @ 128 NONAME ; class QString CalenSettingsView::trUtf8(char const *, char const *)
-	??_ECalenSettingsView@@UAE@I@Z @ 129 NONAME ; CalenSettingsView::~CalenSettingsView(unsigned int)
-	??_ECalenThickLinesDrawer@@UAE@I@Z @ 130 NONAME ; CalenThickLinesDrawer::~CalenThickLinesDrawer(unsigned int)
-	?metaObject@CalenSettingsView@@UBEPBUQMetaObject@@XZ @ 131 NONAME ; struct QMetaObject const * CalenSettingsView::metaObject(void) const
-	?getStaticMetaObject@CalenMonthView@@SAABUQMetaObject@@XZ @ 132 NONAME ; struct QMetaObject const & CalenMonthView::getStaticMetaObject(void)
-	?qt_metacast@CalenSettingsView@@UAEPAXPBD@Z @ 133 NONAME ; void * CalenSettingsView::qt_metacast(char const *)
-	?tr@CalenMonthGrid@@SA?AVQString@@PBD0@Z @ 134 NONAME ; class QString CalenMonthGrid::tr(char const *, char const *)
-	?qt_metacall@CalenMonthView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 135 NONAME ; int CalenMonthView::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?setActiveDay@CalenMonthView@@AAEXVQDateTime@@@Z @ 136 NONAME ; void CalenMonthView::setActiveDay(class QDateTime)
-	?itemActivated@CalenMonthGrid@@QAEXABVQModelIndex@@@Z @ 137 NONAME ; void CalenMonthGrid::itemActivated(class QModelIndex const &)
-	?qt_metacall@CalenMonthGrid@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 138 NONAME ; int CalenMonthGrid::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??_ECalenPreviewPane@@UAE@I@Z @ 139 NONAME ; CalenPreviewPane::~CalenPreviewPane(unsigned int)
-	?createEditor@CalenMonthView@@AAEXXZ @ 140 NONAME ; void CalenMonthView::createEditor(void)
-	?getActiveDay@CalenMonthView@@QAE?AVQDateTime@@XZ @ 141 NONAME ; class QDateTime CalenMonthView::getActiveDay(void)
-	?showHideRegionalInformation@CalenMonthView@@AAEXXZ @ 142 NONAME ; void CalenMonthView::showHideRegionalInformation(void)
-	?paint@CalenMonthGrid@@EAEXPAVQPainter@@PBVQStyleOptionGraphicsItem@@PAVQWidget@@@Z @ 143 NONAME ; void CalenMonthGrid::paint(class QPainter *, class QStyleOptionGraphicsItem const *, class QWidget *)
-	?mouseMoveEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 144 NONAME ; void CalenPreviewPane::mouseMoveEvent(class QGraphicsSceneMouseEvent *)
-	?addRemoveActionsInMenu@CalenMonthView@@AAEXXZ @ 145 NONAME ; void CalenMonthView::addRemoveActionsInMenu(void)
+	?fetchEntriesAndUpdateModel@CalenMonthView@@QAEXXZ @ 2 NONAME ; void CalenMonthView::fetchEntriesAndUpdateModel(void)
+	?setDate@CalenMonthView@@AAEXXZ @ 3 NONAME ; void CalenMonthView::setDate(void)
+	?showHideRegionalInformation@CalenMonthView@@AAEXXZ @ 4 NONAME ; void CalenMonthView::showHideRegionalInformation(void)
+	?updateMonthGridWithEventIndicators@CalenMonthGrid@@QAEXAAV?$QList@VCalenMonthData@@@@@Z @ 5 NONAME ; void CalenMonthGrid::updateMonthGridWithEventIndicators(class QList<class CalenMonthData> &)
+	?handleGridItemActivated@CalenMonthView@@QAEXXZ @ 6 NONAME ; void CalenMonthView::handleGridItemActivated(void)
+	?setFocusToProperDay@CalenMonthGrid@@AAEXXZ @ 7 NONAME ; void CalenMonthGrid::setFocusToProperDay(void)
+	??1CalenPreviewPane@@UAE@XZ @ 8 NONAME ; CalenPreviewPane::~CalenPreviewPane(void)
+	?mousePressEvent@CalenMonthGrid@@EAEXPAVQGraphicsSceneMouseEvent@@@Z @ 9 NONAME ; void CalenMonthGrid::mousePressEvent(class QGraphicsSceneMouseEvent *)
+	?completePopulation@CalenMonthView@@AAEXXZ @ 10 NONAME ; void CalenMonthView::completePopulation(void)
+	?handleAppendingRows@CalenMonthGrid@@AAEXAAV?$QList@VCalenMonthData@@@@@Z @ 11 NONAME ; void CalenMonthGrid::handleAppendingRows(class QList<class CalenMonthData> &)
+	?handleChangeOrientation@CalenMonthView@@AAEXXZ @ 12 NONAME ; void CalenMonthView::handleChangeOrientation(void)
+	?staticMetaObject@CalenSettingsView@@2UQMetaObject@@B @ 13 NONAME ; struct QMetaObject const CalenSettingsView::staticMetaObject
+	?upGesture@CalenMonthGrid@@MAEXH@Z @ 14 NONAME ; void CalenMonthGrid::upGesture(int)
+	?getStaticMetaObject@CalenSettingsView@@SAABUQMetaObject@@XZ @ 15 NONAME ; struct QMetaObject const & CalenSettingsView::getStaticMetaObject(void)
+	?updateMonthDataArrayWithActiveDates@CalenMonthView@@AAEXXZ @ 16 NONAME ; void CalenMonthView::updateMonthDataArrayWithActiveDates(void)
+	?scrollingFinished@CalenMonthGrid@@QAEXXZ @ 17 NONAME ; void CalenMonthGrid::scrollingFinished(void)
+	?setCurrentIdex@CalenMonthGrid@@QAEXH@Z @ 18 NONAME ; void CalenMonthGrid::setCurrentIdex(int)
+	??_ECalenMonthGrid@@UAE@I@Z @ 19 NONAME ; CalenMonthGrid::~CalenMonthGrid(unsigned int)
+	?trUtf8@CalenPreviewPane@@SA?AVQString@@PBD0@Z @ 20 NONAME ; class QString CalenPreviewPane::trUtf8(char const *, char const *)
+	?trUtf8@CalenMonthGrid@@SA?AVQString@@PBD0@Z @ 21 NONAME ; class QString CalenMonthGrid::trUtf8(char const *, char const *)
+	?populatePrevMonth@CalenMonthView@@QAEXXZ @ 22 NONAME ; void CalenMonthView::populatePrevMonth(void)
+	?qt_metacall@CalenSettingsView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 23 NONAME ; int CalenSettingsView::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?handleLeftEffectCompleted@CalenMonthView@@AAEXABUEffectStatus@HbEffect@@@Z @ 24 NONAME ; void CalenMonthView::handleLeftEffectCompleted(struct HbEffect::EffectStatus const &)
+	?getStaticMetaObject@CalenMonthGrid@@SAABUQMetaObject@@XZ @ 25 NONAME ; struct QMetaObject const & CalenMonthGrid::getStaticMetaObject(void)
+	?trUtf8@CalenSettingsView@@SA?AVQString@@PBD0H@Z @ 26 NONAME ; class QString CalenSettingsView::trUtf8(char const *, char const *, int)
+	?qt_metacast@CalenMonthView@@UAEPAXPBD@Z @ 27 NONAME ; void * CalenMonthView::qt_metacast(char const *)
+	?staticMetaObject@CalenMonthView@@2UQMetaObject@@B @ 28 NONAME ; struct QMetaObject const CalenMonthView::staticMetaObject
+	?setupView@CalenMonthView@@QAEXPAVCalenDocLoader@@@Z @ 29 NONAME ; void CalenMonthView::setupView(class CalenDocLoader *)
+	?metaObject@CalenMonthGrid@@UBEPBUQMetaObject@@XZ @ 30 NONAME ; struct QMetaObject const * CalenMonthGrid::metaObject(void) const
+	?startAutoScroll@CalenPreviewPane@@QAEXXZ @ 31 NONAME ; void CalenPreviewPane::startAutoScroll(void)
+	?doLazyLoading@CalenMonthView@@QAEXXZ @ 32 NONAME ; void CalenMonthView::doLazyLoading(void)
+	?setView@CalenMonthGrid@@QAEXPAVCalenMonthView@@@Z @ 33 NONAME ; void CalenMonthGrid::setView(class CalenMonthView *)
+	?HandleNotification@CalenDayView@@UAEXW4TCalenNotification@@@Z @ 34 NONAME ; void CalenDayView::HandleNotification(enum TCalenNotification)
+	?panGesture@CalenMonthGrid@@MAEXABVQPointF@@@Z @ 35 NONAME ; void CalenMonthGrid::panGesture(class QPointF const &)
+	?mousePressEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 36 NONAME ; void CalenPreviewPane::mousePressEvent(class QGraphicsSceneMouseEvent *)
+	??1CalenSettingsView@@UAE@XZ @ 37 NONAME ; CalenSettingsView::~CalenSettingsView(void)
+	?Date@CalenPreviewPane@@QAE?AVQDateTime@@XZ @ 38 NONAME ; class QDateTime CalenPreviewPane::Date(void)
+	?tr@CalenPreviewPane@@SA?AVQString@@PBD0H@Z @ 39 NONAME ; class QString CalenPreviewPane::tr(char const *, char const *, int)
+	?metaObject@CalenMonthView@@UBEPBUQMetaObject@@XZ @ 40 NONAME ; struct QMetaObject const * CalenMonthView::metaObject(void) const
+	??0CalenPreviewPane@@QAE@AAVMCalenServices@@PAVQGraphicsItem@@@Z @ 41 NONAME ; CalenPreviewPane::CalenPreviewPane(class MCalenServices &, class QGraphicsItem *)
+	?mouseReleaseEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 42 NONAME ; void CalenPreviewPane::mouseReleaseEvent(class QGraphicsSceneMouseEvent *)
+	?rowsInPrevMonth@CalenMonthView@@QAEHXZ @ 43 NONAME ; int CalenMonthView::rowsInPrevMonth(void)
+	?handlePrependingRows@CalenMonthGrid@@AAEXAAV?$QList@VCalenMonthData@@@@@Z @ 44 NONAME ; void CalenMonthGrid::handlePrependingRows(class QList<class CalenMonthData> &)
+	?mouseMoveEvent@CalenPreviewPane@@UAEXPAVQGraphicsSceneMouseEvent@@@Z @ 45 NONAME ; void CalenPreviewPane::mouseMoveEvent(class QGraphicsSceneMouseEvent *)
+	?metaObject@CalenPreviewPane@@UBEPBUQMetaObject@@XZ @ 46 NONAME ; struct QMetaObject const * CalenPreviewPane::metaObject(void) const
+	??0CalenDayView@@QAE@AAVMCalenServices@@@Z @ 47 NONAME ; CalenDayView::CalenDayView(class MCalenServices &)
+	?populateNextMonth@CalenMonthView@@QAEXXZ @ 48 NONAME ; void CalenMonthView::populateNextMonth(void)
+	?handleRightEffectCompleted@CalenMonthView@@AAEXABUEffectStatus@HbEffect@@@Z @ 49 NONAME ; void CalenMonthView::handleRightEffectCompleted(struct HbEffect::EffectStatus const &)
+	?qt_metacast@CalenMonthGrid@@UAEPAXPBD@Z @ 50 NONAME ; void * CalenMonthGrid::qt_metacast(char const *)
+	?firstDayOfGrid@CalenMonthView@@QAE?AVQDateTime@@XZ @ 51 NONAME ; class QDateTime CalenMonthView::firstDayOfGrid(void)
+	?rowsInFutMonth@CalenMonthView@@QAEHXZ @ 52 NONAME ; int CalenMonthView::rowsInFutMonth(void)
+	?getCurrGridIndex@CalenMonthView@@QAEHXZ @ 53 NONAME ; int CalenMonthView::getCurrGridIndex(void)
+	?launchDayView@CalenMonthView@@QAEXXZ @ 54 NONAME ; void CalenMonthView::launchDayView(void)
+	??1CalenDayViewWidget@@UAE@XZ @ 55 NONAME ; CalenDayViewWidget::~CalenDayViewWidget(void)
+	??0CalenDayViewWidget@@QAE@AAVMCalenServices@@PAVCalenDocLoader@@@Z @ 56 NONAME ; CalenDayViewWidget::CalenDayViewWidget(class MCalenServices &, class CalenDocLoader *)
+	?prependRows@CalenMonthGrid@@QAEXXZ @ 57 NONAME ; void CalenMonthGrid::prependRows(void)
+	?orientationChanged@CalenMonthGrid@@MAEXW4Orientation@Qt@@@Z @ 58 NONAME ; void CalenMonthGrid::orientationChanged(enum Qt::Orientation)
+	?qt_metacall@CalenPreviewPane@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 59 NONAME ; int CalenPreviewPane::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?trUtf8@CalenPreviewPane@@SA?AVQString@@PBD0H@Z @ 60 NONAME ; class QString CalenPreviewPane::trUtf8(char const *, char const *, int)
+	??1CalenThickLinesDrawer@@UAE@XZ @ 61 NONAME ; CalenThickLinesDrawer::~CalenThickLinesDrawer(void)
+	?setView@CalenPreviewPane@@QAEXPAVCalenMonthView@@@Z @ 62 NONAME ; void CalenPreviewPane::setView(class CalenMonthView *)
+	??_ECalenMonthView@@UAE@I@Z @ 63 NONAME ; CalenMonthView::~CalenMonthView(unsigned int)
+	?changeOrientation@CalenMonthView@@UAEXW4Orientation@Qt@@@Z @ 64 NONAME ; void CalenMonthView::changeOrientation(enum Qt::Orientation)
+	?populatePreviewPane@CalenMonthView@@QAEXAAVQDateTime@@@Z @ 65 NONAME ; void CalenMonthView::populatePreviewPane(class QDateTime &)
+	??0CalenSettingsView@@QAE@AAVMCalenServices@@PAVQGraphicsItem@@@Z @ 66 NONAME ; CalenSettingsView::CalenSettingsView(class MCalenServices &, class QGraphicsItem *)
+	?updateModelWithPrevMonth@CalenMonthView@@QAEXXZ @ 67 NONAME ; void CalenMonthView::updateModelWithPrevMonth(void)
+	?stopScrolling@CalenPreviewPane@@QAEXXZ @ 68 NONAME ; void CalenPreviewPane::stopScrolling(void)
+	?addBackgroundFrame@CalenMonthView@@AAEXXZ @ 69 NONAME ; void CalenMonthView::addBackgroundFrame(void)
+	?createGrid@CalenMonthView@@AAEXXZ @ 70 NONAME ; void CalenMonthView::createGrid(void)
+	?tr@CalenPreviewPane@@SA?AVQString@@PBD0@Z @ 71 NONAME ; class QString CalenPreviewPane::tr(char const *, char const *)
+	?getStaticMetaObject@CalenPreviewPane@@SAABUQMetaObject@@XZ @ 72 NONAME ; struct QMetaObject const & CalenPreviewPane::getStaticMetaObject(void)
+	?launchPreviousView@CalenSettingsView@@AAEXXZ @ 73 NONAME ; void CalenSettingsView::launchPreviousView(void)
+	?setCurrGridIndex@CalenMonthView@@QAEXH@Z @ 74 NONAME ; void CalenMonthView::setCurrGridIndex(int)
+	?setDateToLabel@CalenMonthView@@AAEXXZ @ 75 NONAME ; void CalenMonthView::setDateToLabel(void)
+	?addWeekNumbers@CalenMonthView@@AAEXXZ @ 76 NONAME ; void CalenMonthView::addWeekNumbers(void)
+	?qt_metacall@CalenThickLinesDrawer@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 77 NONAME ; int CalenThickLinesDrawer::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?setupView@CalenDayView@@QAEXPAVCalenDocLoader@@@Z @ 78 NONAME ; void CalenDayView::setupView(class CalenDocLoader *)
+	??1CalenMonthView@@UAE@XZ @ 79 NONAME ; CalenMonthView::~CalenMonthView(void)
+	?dateFromContext@CalenMonthView@@AAE?AVQDateTime@@ABVMCalenContext@@@Z @ 80 NONAME ; class QDateTime CalenMonthView::dateFromContext(class MCalenContext const &)
+	?staticMetaObject@CalenMonthGrid@@2UQMetaObject@@B @ 81 NONAME ; struct QMetaObject const CalenMonthGrid::staticMetaObject
+	?trUtf8@CalenMonthGrid@@SA?AVQString@@PBD0H@Z @ 82 NONAME ; class QString CalenMonthGrid::trUtf8(char const *, char const *, int)
+	?paint@CalenThickLinesDrawer@@EAEXPAVQPainter@@PBVQStyleOptionGraphicsItem@@PAVQWidget@@@Z @ 83 NONAME ; void CalenThickLinesDrawer::paint(class QPainter *, class QStyleOptionGraphicsItem const *, class QWidget *)
+	?initializeForm@CalenSettingsView@@QAEXXZ @ 84 NONAME ; void CalenSettingsView::initializeForm(void)
+	?handlePanGestureFinished@CalenMonthGrid@@AAEXXZ @ 85 NONAME ; void CalenMonthGrid::handlePanGestureFinished(void)
+	?tr@CalenMonthGrid@@SA?AVQString@@PBD0H@Z @ 86 NONAME ; class QString CalenMonthGrid::tr(char const *, char const *, int)
+	?goToToday@CalenMonthView@@AAEXXZ @ 87 NONAME ; void CalenMonthView::goToToday(void)
+	?trUtf8@CalenThickLinesDrawer@@SA?AVQString@@PBD0H@Z @ 88 NONAME ; class QString CalenThickLinesDrawer::trUtf8(char const *, char const *, int)
+	?onContextChanged@CalenMonthView@@EAEXXZ @ 89 NONAME ; void CalenMonthView::onContextChanged(void)
+	?qt_metacast@CalenPreviewPane@@UAEPAXPBD@Z @ 90 NONAME ; void * CalenPreviewPane::qt_metacast(char const *)
+	?docLoader@CalenDayView@@QAEPAVCalenDocLoader@@XZ @ 91 NONAME ; class CalenDocLoader * CalenDayView::docLoader(void)
+	?getCurrentIndex@CalenMonthGrid@@QAEHXZ @ 92 NONAME ; int CalenMonthGrid::getCurrentIndex(void)
+	?tr@CalenSettingsView@@SA?AVQString@@PBD0H@Z @ 93 NONAME ; class QString CalenSettingsView::tr(char const *, char const *, int)
+	?removeWeekNumbers@CalenMonthView@@AAEXXZ @ 94 NONAME ; void CalenMonthView::removeWeekNumbers(void)
+	?trUtf8@CalenMonthView@@SA?AVQString@@PBD0H@Z @ 95 NONAME ; class QString CalenMonthView::trUtf8(char const *, char const *, int)
+	??0CalenMonthView@@QAE@AAVMCalenServices@@@Z @ 96 NONAME ; CalenMonthView::CalenMonthView(class MCalenServices &)
+	?getStaticMetaObject@CalenThickLinesDrawer@@SAABUQMetaObject@@XZ @ 97 NONAME ; struct QMetaObject const & CalenThickLinesDrawer::getStaticMetaObject(void)
+	?setNoEntriesLabel@CalenPreviewPane@@QAEXPAVHbLabel@@@Z @ 98 NONAME ; void CalenPreviewPane::setNoEntriesLabel(class HbLabel *)
+	?clearListModel@CalenDayView@@QAEXXZ @ 99 NONAME ; void CalenDayView::clearListModel(void)
+	??0CalenThickLinesDrawer@@QAE@W4WidgetType@CalendarNamespace@@PAVQGraphicsItem@@@Z @ 100 NONAME ; CalenThickLinesDrawer::CalenThickLinesDrawer(enum CalendarNamespace::WidgetType, class QGraphicsItem *)
+	?onLocaleChanged@CalenMonthView@@UAEXH@Z @ 101 NONAME ; void CalenMonthView::onLocaleChanged(int)
+	?doPopulation@CalenMonthView@@UAEXXZ @ 102 NONAME ; void CalenMonthView::doPopulation(void)
+	?tr@CalenMonthView@@SA?AVQString@@PBD0H@Z @ 103 NONAME ; class QString CalenMonthView::tr(char const *, char const *, int)
+	?GetInstanceListL@CalenPreviewPane@@AAEXXZ @ 104 NONAME ; void CalenPreviewPane::GetInstanceListL(void)
+	?getInstanceList@CalenMonthView@@AAEXAAV?$QList@VQDate@@@@VQDateTime@@1@Z @ 105 NONAME ; void CalenMonthView::getInstanceList(class QList<class QDate> &, class QDateTime, class QDateTime)
+	?tr@CalenMonthView@@SA?AVQString@@PBD0@Z @ 106 NONAME ; class QString CalenMonthView::tr(char const *, char const *)
+	??0CalenMonthGrid@@QAE@PAVQGraphicsItem@@@Z @ 107 NONAME ; CalenMonthGrid::CalenMonthGrid(class QGraphicsItem *)
+	?refreshViewOnGoToDate@CalenMonthView@@EAEXXZ @ 108 NONAME ; void CalenMonthView::refreshViewOnGoToDate(void)
+	?appendRows@CalenMonthGrid@@QAEXXZ @ 109 NONAME ; void CalenMonthGrid::appendRows(void)
+	?tr@CalenThickLinesDrawer@@SA?AVQString@@PBD0H@Z @ 110 NONAME ; class QString CalenThickLinesDrawer::tr(char const *, char const *, int)
+	?mouseReleaseEvent@CalenMonthGrid@@EAEXPAVQGraphicsSceneMouseEvent@@@Z @ 111 NONAME ; void CalenMonthGrid::mouseReleaseEvent(class QGraphicsSceneMouseEvent *)
+	?updateMonthGridWithInActiveMonths@CalenMonthGrid@@QAEXAAV?$QList@VCalenMonthData@@@@@Z @ 112 NONAME ; void CalenMonthGrid::updateMonthGridWithInActiveMonths(class QList<class CalenMonthData> &)
+	?getCurrentDay@CalenMonthView@@QAE?AVQDateTime@@XZ @ 113 NONAME ; class QDateTime CalenMonthView::getCurrentDay(void)
+	?staticMetaObject@CalenPreviewPane@@2UQMetaObject@@B @ 114 NONAME ; struct QMetaObject const CalenPreviewPane::staticMetaObject
+	?tr@CalenSettingsView@@SA?AVQString@@PBD0@Z @ 115 NONAME ; class QString CalenSettingsView::tr(char const *, char const *)
+	?onTwoSecondsTimeout@CalenPreviewPane@@QAEXXZ @ 116 NONAME ; void CalenPreviewPane::onTwoSecondsTimeout(void)
+	?tr@CalenThickLinesDrawer@@SA?AVQString@@PBD0@Z @ 117 NONAME ; class QString CalenThickLinesDrawer::tr(char const *, char const *)
+	?staticMetaObject@CalenThickLinesDrawer@@2UQMetaObject@@B @ 118 NONAME ; struct QMetaObject const CalenThickLinesDrawer::staticMetaObject
+	?populateWithInstanceView@CalenMonthView@@AAEXXZ @ 119 NONAME ; void CalenMonthView::populateWithInstanceView(void)
+	?trUtf8@CalenThickLinesDrawer@@SA?AVQString@@PBD0@Z @ 120 NONAME ; class QString CalenThickLinesDrawer::trUtf8(char const *, char const *)
+	?downGesture@CalenMonthGrid@@MAEXH@Z @ 121 NONAME ; void CalenMonthGrid::downGesture(int)
+	?populateLabel@CalenPreviewPane@@QAEXVQDateTime@@@Z @ 122 NONAME ; void CalenPreviewPane::populateLabel(class QDateTime)
+	?doPopulation@CalenDayView@@UAEXXZ @ 123 NONAME ; void CalenDayView::doPopulation(void)
+	??1CalenDayView@@UAE@XZ @ 124 NONAME ; CalenDayView::~CalenDayView(void)
+	?updateModelWithFutureMonth@CalenMonthView@@QAEXXZ @ 125 NONAME ; void CalenMonthView::updateModelWithFutureMonth(void)
+	?monthDataList@CalenMonthView@@QAE?AV?$QList@VCalenMonthData@@@@XZ @ 126 NONAME ; class QList<class CalenMonthData> CalenMonthView::monthDataList(void)
+	?updateMonthGridModel@CalenMonthGrid@@QAEXAAV?$QList@VCalenMonthData@@@@H_N@Z @ 127 NONAME ; void CalenMonthGrid::updateMonthGridModel(class QList<class CalenMonthData> &, int, bool)
+	??1CalenMonthGrid@@UAE@XZ @ 128 NONAME ; CalenMonthGrid::~CalenMonthGrid(void)
+	?metaObject@CalenThickLinesDrawer@@UBEPBUQMetaObject@@XZ @ 129 NONAME ; struct QMetaObject const * CalenThickLinesDrawer::metaObject(void) const
+	?updateWeekNumGridModel@CalenMonthView@@AAEXXZ @ 130 NONAME ; void CalenMonthView::updateWeekNumGridModel(void)
+	?qt_metacast@CalenThickLinesDrawer@@UAEPAXPBD@Z @ 131 NONAME ; void * CalenThickLinesDrawer::qt_metacast(char const *)
+	?prepareForPopulation@CalenMonthView@@AAEXXZ @ 132 NONAME ; void CalenMonthView::prepareForPopulation(void)
+	?handlePreviewPaneGesture@CalenMonthView@@QAEX_N@Z @ 133 NONAME ; void CalenMonthView::handlePreviewPaneGesture(bool)
+	?setActiveDates@CalenMonthGrid@@AAEXVQDate@@@Z @ 134 NONAME ; void CalenMonthGrid::setActiveDates(class QDate)
+	?trUtf8@CalenMonthView@@SA?AVQString@@PBD0@Z @ 135 NONAME ; class QString CalenMonthView::trUtf8(char const *, char const *)
+	?setContextForActiveDay@CalenMonthView@@QAEXH@Z @ 136 NONAME ; void CalenMonthView::setContextForActiveDay(int)
+	?trUtf8@CalenSettingsView@@SA?AVQString@@PBD0@Z @ 137 NONAME ; class QString CalenSettingsView::trUtf8(char const *, char const *)
+	??_ECalenSettingsView@@UAE@I@Z @ 138 NONAME ; CalenSettingsView::~CalenSettingsView(unsigned int)
+	??_ECalenThickLinesDrawer@@UAE@I@Z @ 139 NONAME ; CalenThickLinesDrawer::~CalenThickLinesDrawer(unsigned int)
+	?metaObject@CalenSettingsView@@UBEPBUQMetaObject@@XZ @ 140 NONAME ; struct QMetaObject const * CalenSettingsView::metaObject(void) const
+	?getStaticMetaObject@CalenMonthView@@SAABUQMetaObject@@XZ @ 141 NONAME ; struct QMetaObject const & CalenMonthView::getStaticMetaObject(void)
+	?paint@CalenMonthGrid@@EAEXPAVQPainter@@PBVQStyleOptionGraphicsItem@@PAVQWidget@@@Z @ 142 NONAME ; void CalenMonthGrid::paint(class QPainter *, class QStyleOptionGraphicsItem const *, class QWidget *)
+	?qt_metacast@CalenSettingsView@@UAEPAXPBD@Z @ 143 NONAME ; void * CalenSettingsView::qt_metacast(char const *)
+	?tr@CalenMonthGrid@@SA?AVQString@@PBD0@Z @ 144 NONAME ; class QString CalenMonthGrid::tr(char const *, char const *)
+	?qt_metacall@CalenMonthView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 145 NONAME ; int CalenMonthView::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?setActiveDay@CalenMonthView@@AAEXVQDateTime@@@Z @ 146 NONAME ; void CalenMonthView::setActiveDay(class QDateTime)
+	?itemActivated@CalenMonthGrid@@QAEXABVQModelIndex@@@Z @ 147 NONAME ; void CalenMonthGrid::itemActivated(class QModelIndex const &)
+	?qt_metacall@CalenMonthGrid@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 148 NONAME ; int CalenMonthGrid::qt_metacall(enum QMetaObject::Call, int, void * *)
+	??_ECalenPreviewPane@@UAE@I@Z @ 149 NONAME ; CalenPreviewPane::~CalenPreviewPane(unsigned int)
+	?createEditor@CalenMonthView@@AAEXXZ @ 150 NONAME ; void CalenMonthView::createEditor(void)
+	?getActiveDay@CalenMonthView@@QAE?AVQDateTime@@XZ @ 151 NONAME ; class QDateTime CalenMonthView::getActiveDay(void)
+	?addRemoveActionsInMenu@CalenMonthView@@AAEXXZ @ 152 NONAME ; void CalenMonthView::addRemoveActionsInMenu(void)
 
--- a/calendarui/caleneditor/inc/caleneditor_p.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/inc/caleneditor_p.h	Tue May 18 13:16:49 2010 +0100
@@ -92,6 +92,7 @@
 			DateTimeToItem,
 			LocationItem,
 			ReminderItem,
+			ReminderTimeForAllDayItem,
 			RepeatItem,
 			RepeatUntilItem
 			};
@@ -104,7 +105,14 @@
 	AgendaEntry* originalEntry();
 	bool isNewEntry();
 	HbDataFormModelItem* allDayCheckBoxItem();
-
+	bool isReminderTimeForAllDayAdded();
+	bool isAllDayEvent();
+	void updateReminderChoices();
+	int currentIndexOfReminderField();
+	void setCurrentIndexOfReminderField(int index);
+	void setReminderChoices();
+	bool isEditRangeThisOnly();
+	bool isAllDayFieldAdded();
 private:
 	void edit(const QFile &handle, bool launchCalendar);
 	void edit(AgendaEntry entry, bool launchCalendar);
@@ -113,6 +121,7 @@
 	            bool launchCalendar);
 	void create(CalenEditor::CreateType type, AgendaEntry entry, 
 		            bool launchCalendar);
+	void openEditor(AgendaEntry entry);
 	void showEditor(AgendaEntry entry);
 	void showEditOccurencePopup();
 	void setUpView();
@@ -135,7 +144,6 @@
 	void populateRepeatItem();
 	void populateDescriptionItem();
 	void removeDescriptionItem();
-	void closeEditor();
 		
 	bool isChild() const ;
 	
@@ -144,7 +152,6 @@
 	void deleteEntry(bool close = false);
 	bool handleAllDayToSave();
 	void enableFromTotimeFileds(bool, QDateTime, QDateTime);
-	int showDeleteConfirmationQuery();
 	
 private slots:
 	void handleSubjectChange(const QString subject);
@@ -154,6 +161,7 @@
 	void handleLocationChange(const QString location);
 	void handleDescriptionChange(const QString description);
 	void saveAndCloseEditor();
+	void showDeleteConfirmationQuery(bool closeEditor = false);
 	void handleDeleteAction();
 	void launchSettingsView();
 	void discardChanges();
@@ -161,6 +169,7 @@
 	void handleEditOccurence(int index);
 	void handleCancel();
 	void handleCalendarLaunchError(int error);
+	void closeEditor();
 	
 private:
 	enum EditRange {
@@ -191,7 +200,8 @@
 	EditRange mEditRange;
 	
 	QDateTime mNewEntryDateTime;
-		
+	
+	AgendaEntry mEntry;
 	AgendaEntry *mOriginalEntry;
 	AgendaEntry *mEditedEntry;
 
--- a/calendarui/caleneditor/inc/caleneditorcommon.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/inc/caleneditorcommon.h	Tue May 18 13:16:49 2010 +0100
@@ -35,7 +35,8 @@
     CustomWidgetFrom = HbDataFormModelItem::CustomItemBase + 1,
     CustomWidgetTo,
     CustomWidgetLocation,
-    RepeatUntilOffset
+    RepeatUntilOffset,
+    ReminderTimeOffset
 };
 
 #endif /* CALENEDITORCOMMON_H_ */
--- a/calendarui/caleneditor/inc/caleneditorcustomitem.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/inc/caleneditorcustomitem.h	Tue May 18 13:16:49 2010 +0100
@@ -39,6 +39,7 @@
 	~CalenEditorCustomItem();
 	virtual HbAbstractViewItem* createItem();
 	void enableFromTimeFieldAndSetTime(bool, QDateTime);
+	void disableFromToDateField();
 	void enableToTimeFieldAndSetTime(bool, QDateTime);	
 	void populateDateTime(QDateTime defaultDateTime, bool isFromItem);
 	void populateLocation( QString location);
@@ -78,6 +79,7 @@
 	HbPushButton* mPushButtonTime;
 	HbPushButton* mPushButtonDate;
 	HbPushButton *mRepeatUntilWidget;
+	HbPushButton *mReminderTimeWidget;
 
 	HbDateTimePicker *mDatePicker;
 	HbDateTimePicker *mTimePicker;
--- a/calendarui/caleneditor/inc/caleneditorreminderfield.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/inc/caleneditorreminderfield.h	Tue May 18 13:16:49 2010 +0100
@@ -30,6 +30,7 @@
 class HbDataFormModelItem;
 class HbDataForm;
 class HbDataFormModelItem;
+class HbDateTimePicker;
 class CalenEditorDataHandler;
 
 class CalenEditorReminderField : public QObject
@@ -43,20 +44,37 @@
 	virtual ~CalenEditorReminderField();
 
 public:
+	void setReminderChoices();
 	void addItemToModel();
 	void removeItemFromModel();
 	void populateReminderItem(bool newEntry);
 	QModelIndex modelIndex();
-	
+	void setReminderOff();
+	void setDefaultAlarmForAllDay();
+	void updateReminderChoicesForAllDay(QDate repeatUntilDate);
+	void insertReminderTimeField();
+	void setDisplayTime();
+	void removeReminderTimeField();
+	bool isReminderFieldEnabled();
+	int reminderItemsCount();
+	int currentReminderIndex();
+	void setCurrentIndex(int index);
+	void disableReminderTimeField();
+	bool isReminderTimeForAllDayAdded();
 private slots:
 	void handleReminderIndexChanged(int index);
-	
+	void launchReminderTimePicker();
+	void setReminderTimeForAllDay();
 private:
 	CalenEditorPrivate* mCalenEditor;
 	HbDataForm* mEditorForm;
 	HbDataFormModel* mCalenEditorModel;
 	HbDataFormModelItem* mReminderItem;
+	HbDataFormModelItem *mCustomReminderTimeItem;
+	HbDateTimePicker *mTimePicker;
+	QTime mReminderTimeForAllDay;
 	QHash<int, int> mReminderHash;
+	bool mReminderTimeAdded;
 };
 
 #endif // CALENEDITORREMINDERFIELD_H
--- a/calendarui/caleneditor/inc/caleneditorrepeatfield.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/inc/caleneditorrepeatfield.h	Tue May 18 13:16:49 2010 +0100
@@ -53,6 +53,7 @@
 	void updateRepeatChoices();
 	void saveRepeatRule();
 	bool isRepeatUntilItemAdded();
+	QDate repeatUntilDate();          
 
 private:
 	void insertRepeatUntilItem();
--- a/calendarui/caleneditor/src/caleneditor_p.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/src/caleneditor_p.cpp	Tue May 18 13:16:49 2010 +0100
@@ -41,7 +41,6 @@
 #include <hbextendedlocale.h>
 #include <hbi18ndef.h>
 #include <qdatetime.h>
-#include <HbMessageBox>
 #include <hbgroupbox.h>
 #include <hbapplication.h>
 #include <hbradiobuttonlist.h>
@@ -290,7 +289,7 @@
 {
 	mNewEntry = false;
 	mLaunchCalendar = launchCalendar;
-	showEditor(entry);
+	openEditor(entry);
 }
 
 /*!
@@ -326,7 +325,7 @@
 			break;
 	}
 	mLaunchCalendar = launchCalendar;
-	showEditor(entry);
+	openEditor(entry);
 }
 
 /*!
@@ -350,7 +349,7 @@
 	}
 	mNewEntryDateTime = entry.startTime();
 	mLaunchCalendar = launchCalendar;
-	showEditor(entry);
+	openEditor(entry);
 }
 
 /*!
@@ -358,10 +357,11 @@
  */
 void CalenEditorPrivate::showEditOccurencePopup()
 {
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
-
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
+	
 	QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
 	HbWidget *editWidget = new HbWidget();
 	editWidget->setLayout(layout);
@@ -376,22 +376,20 @@
 
 	layout->addItem(editButtonList);
 
-	popUp.setContentWidget(editWidget);
-	popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_edit")));
+	popUp->setContentWidget(editWidget);
+	popUp->setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_edit")));
 
-	// Create secondary action
+	// Create cancel action
 	HbAction *cancelAction =
 	        new HbAction(hbTrId("txt_calendar_button_softkey1_cancel"));
-	popUp.setSecondaryAction(cancelAction);
+	popUp->addAction(cancelAction);
 	connect(editButtonList, SIGNAL(itemSelected(int)), this,
 	        SLOT(handleEditOccurence(int)));
-	connect(editButtonList, SIGNAL(itemSelected(int)), &popUp, SLOT(close()));
-
-	connect(cancelAction, SIGNAL(triggered()), &popUp, SLOT(close()));
+	connect(editButtonList, SIGNAL(itemSelected(int)), popUp, SLOT(close()));
 	connect(cancelAction, SIGNAL(triggered()), this, SLOT(handleCancel()));
 
 	// Show the popup
-	popUp.exec();
+	popUp->open();
 }
 
 /*!
@@ -409,6 +407,13 @@
 			mEditRange = ThisAndAll;
 			break;
 	}
+	// If user has selected to edit all the occurences, 
+	// then get the parent of it
+	AgendaEntry entryToBeEdited = mEntry;
+	if (mEditRange == ThisAndAll) {
+		entryToBeEdited = mAgendaUtil->parentEntry(mEntry);
+	}
+	showEditor(entryToBeEdited);
 }
 
 /*!
@@ -418,6 +423,36 @@
 {
 	// User has chosen not to edit the event, hence return
 	mEditRange = UserCancelled;
+	// Do cleanup and return
+	emit q_ptr->dialogClosed();
+	return;
+}
+
+/*!
+	Opens the editor.
+ */
+void CalenEditorPrivate::openEditor(AgendaEntry entry)
+{
+	if (0 < entry.id()) {
+		mNewEntry = false;
+	}
+	if (!mNewEntry) {
+		// Before we do anything, check in the entry is repeating
+		// OR its a child item
+		mIsChild = !(entry.recurrenceId().isNull());
+		bool isRepeating = entry.isRepeating();
+		// For later reference
+		mEntry = entry;
+		if (mIsChild || isRepeating) {
+			// Query user if he wants to edit whole series 
+			// or just this occurence
+			showEditOccurencePopup();
+			return;
+		}else {
+			mEditRange = ThisAndAll;
+		}
+	}
+	showEditor(entry);
 }
 
 /*!
@@ -425,52 +460,23 @@
  */
 void CalenEditorPrivate::showEditor(AgendaEntry entry)
 {
-	
-	if (0 < entry.id()) {
-		mNewEntry = false;
-	}
-
-	AgendaEntry entryToBeEdited = entry;
-	if (!mNewEntry) {
-		// Before we do anything, check in the entry is repeating
-		// OR its a child item
-		mIsChild = !(entry.recurrenceId().isNull());
-		bool isRepeating = entry.isRepeating();
-		if (mIsChild || isRepeating) {
-			// Query user if he wants to edit whole series 
-			// or just this occurence
-			showEditOccurencePopup();
-			// If user has selected to edit all the occurences, 
-			// then get the parent of it
-			if (mEditRange == ThisAndAll) {
-				entryToBeEdited = mAgendaUtil->parentEntry(entry);
-			} else if (mEditRange == UserCancelled) {
-				// Do cleanup and return
-				emit q_ptr->dialogClosed();
-				return;
-			}
-		} else {
-			mEditRange = ThisAndAll;
-		}
-	}
-
-	mOriginalEntry = new AgendaEntry(entryToBeEdited);
-	mEditedEntry = new AgendaEntry(entryToBeEdited);
+	mOriginalEntry = new AgendaEntry(entry);
+	mEditedEntry = new AgendaEntry(entry);
 
 	if (!mEditedEntry->description().isEmpty()) {
 		mDescriptionItemAdded = true;
 	}
 	// Construct the view using docloader
 	setUpView();
-		
+
 	// Set the title text. 
 	mEditorView->setTitle(hbTrId("txt_calendar_title_calendar"));
 
-	mSoftKeyAction = new HbAction(Hb::BackAction);
+	mSoftKeyAction = new HbAction(Hb::BackNaviAction);
 	mEditorView->setNavigationAction(mSoftKeyAction);
 	connect(mSoftKeyAction, SIGNAL(triggered()), this,
 	        SLOT(saveAndCloseEditor()));
-	
+
 	// Create the data handler
 	mDataHandler = new CalenEditorDataHandler(this,mEditedEntry, mOriginalEntry);
 }
@@ -514,7 +520,7 @@
 							mEditorDocLoader->findObject(
 										CALEN_EDITOR_DELETE_EVENT_ACTION));
 	connect(deleteEventAction, SIGNAL(triggered()), this,
-							SLOT(handleDeleteAction()));
+							SLOT(showDeleteConfirmationQuery()));
 
 	if (!mNewEntry) {
 		//TODO: Add the text id based on the entry type Anniversary or meeting
@@ -582,14 +588,9 @@
 
 	// Add all day check box for new entry creation or while editing
 	// parent entry or existing non repeating event
-	if (mNewEntry) {
+	if (mNewEntry || (mEditRange == ThisAndAll)) {
 		addAllDayCheckBoxItem();
-	} else { 
-		if (!mEditedEntry->isRepeating() || (mEditRange == ThisAndAll)) {
-			addAllDayCheckBoxItem();
-		}
 	}
-	
 	addCustomItemFrom();
 	addCustomItemTo();
 	addCustomItemLocation();
@@ -598,7 +599,6 @@
 	if (mEditRange == ThisAndAll) {
 		addRepeatItem();
 	}
-
 	mCalenEditorForm->setModel(mCalenEditorModel);
 }
 
@@ -793,7 +793,7 @@
 			QDateTime endTime =
 			        mEditedEntry-> startTime().addSecs(durationInSeconds);
 
-			// set this to the original entr as well as edited entry
+			// set this to the original entry as well as edited entry
 			mOriginalEntry->setStartAndEndTime(mOriginalEntry->startTime(),
 										endTime);
 			mEditedEntry->setStartAndEndTime(mEditedEntry->startTime(), endTime);
@@ -859,6 +859,12 @@
 									nextInstanceStartTime.addDays(-1).date());
 			mViewToItem->setDateRange(prevInstanceEndTime.date().addDays(1),
 			                        nextInstanceEndTime.date().addDays(-1));
+			
+			// If repeating daily then disable the date fields as 
+			// date cannot be changed
+ 			if (mEditedEntry->repeatRule().type() == AgendaRepeatRule::DailyRule) {
+				mViewFromItem->disableFromToDateField();
+			}
 		}
 	} else {
 		toDateTime = fromDateTime.addSecs(60 * 60);
@@ -871,9 +877,9 @@
 	if (mNewEntry) {
 		mOriginalEntry->setStartAndEndTime(fromDateTime, toDateTime);
 	}
-	if (mAllDayCheckBoxItem
-	        && (mAllDayCheckBoxItem->contentWidgetData("checkState")
-	                == Qt::Checked)) {
+	if ((mAllDayCheckBoxItem && 
+		(mAllDayCheckBoxItem->contentWidgetData("checkState") == Qt::Checked))
+		|| (!mNewEntry && mEditedEntry->type() == AgendaEntry::TypeEvent)) {
 		// If the all day option is checked, we need to
 		// disable the time fields
 		enableFromTotimeFileds(false, mEditedEntry->startTime(),
@@ -898,11 +904,11 @@
 	}
 	QModelIndex index = mCalenEditorModel->index(itemIndex, 0);
 	mViewLocationItem = qobject_cast<CalenEditorCustomItem *> 
-	                      (mCalenEditorForm->dataFormViewItem(index));        
-                
+	                      (mCalenEditorForm->itemByIndex(index));
+
 	connect(mViewLocationItem, SIGNAL(locationTextChanged(const QString)),
 			this, SLOT(handleLocationChange(const QString)));
-                    
+
 	mViewLocationItem->populateLocation(mEditedEntry->location());
 }
 /*!
@@ -935,6 +941,49 @@
 		// update the repeat choices depending on the meeting duration
 		mRepeatField->updateRepeatChoices();
 	}
+
+	updateReminderChoices();
+}
+
+void CalenEditorPrivate::updateReminderChoices()
+{
+	QDate referenceDate;
+	
+	// Start date or repeat until date will be the reference to decide 
+	// whether the event is in past or future.
+	if (mRepeatField && mRepeatField->isRepeatUntilItemAdded()) {
+		referenceDate = mRepeatField->repeatUntilDate();
+	} else {
+		referenceDate = mEditedEntry->startTime().date();
+	}
+	
+	// Check if all day event or not.
+	if (isAllDayEvent()) {
+		int currentIndex = mReminderField->currentReminderIndex();
+		mReminderField->updateReminderChoicesForAllDay(referenceDate);
+		int numberOfReminderChoices = mReminderField->reminderItemsCount();
+		if (currentIndex >= numberOfReminderChoices) {
+			currentIndex = 0;
+			mReminderField->disableReminderTimeField();
+		} 
+		mReminderField->setCurrentIndex(currentIndex);
+		if(currentIndex == 0 && mReminderField->isReminderTimeForAllDayAdded()) {
+			mReminderField->removeReminderTimeField();
+		}
+	} else { 
+		if ((referenceDate < QDate::currentDate())
+						|| (referenceDate == QDate::currentDate()
+				&& (mEditedEntry->startTime().time() < QTime::currentTime())))
+				 {
+					mReminderField->setReminderOff();
+		} else {
+			// Enabled implies future. If changing from future to future do not 
+			// do anything.
+			if (!mReminderField->isReminderFieldEnabled()) {
+				mReminderField->setReminderChoices();
+			}
+		}
+	}
 }
 
 /*!
@@ -943,17 +992,21 @@
 void CalenEditorPrivate::saveToDateTime(QDateTime& toDateTime)
 {
 	QDateTime startTime = mEditedEntry->startTime();
+	bool fromDateChanged = false;
 	// Update the start time accordingly on UI - duration will be 60 mins
 	// bydefault for new entry and if it crosses the starttime
 	if (mNewEntry && toDateTime < startTime) {
 		startTime = toDateTime.addSecs(-3600);
-	} else { // for exisitng entry
+		fromDateChanged = true;
+	} else { 
+		// for exisitng entry
 		// we need to see if user has moved end time before the start time
 		// then substract the duration of the meeting that was saved earlier to 
 		// the new end time to get the new start time
 		if (toDateTime < startTime) {
 			int duration = mEditedEntry->durationInSecs();
 			startTime = toDateTime.addSecs(-duration);
+			fromDateChanged = true;
 		}
 	}
 	// Set the new start time to the form
@@ -968,6 +1021,11 @@
 		// update the repeat choices depending on the meeting duration
 		mRepeatField->updateRepeatChoices();
 	}
+	
+	// Update reminder choices if start time got changed.
+	if (fromDateChanged) {
+		updateReminderChoices();
+	}
 }
 
 /*!
@@ -977,11 +1035,14 @@
 {
 	// Check if all day has been added or not 
 	// and calculate the index accordingly
+	// all day added implies reminder time field is also added
 	int index;
-	if (mIsAllDayItemAdded) {
+	if (mIsAllDayItemAdded && !isReminderTimeForAllDayAdded()) {
+		index = RepeatItem - 1;
+	} else if (!mNewEntry && isReminderTimeForAllDayAdded()) {
 		index = RepeatItem;
 	} else {
-		index = RepeatItem - 1;
+		index = RepeatItem - 2;
 	}
 	
 	mRepeatField->populateRepeatItem(index);
@@ -1096,13 +1157,38 @@
 		tempEndTime.setTime(tempEndQTime);
 
 		enableFromTotimeFileds(false, tempSartTime, tempEndTime);
+		QDate referenceDate;
+		if (mRepeatField->isRepeatUntilItemAdded()) {
+			referenceDate = mRepeatField->repeatUntilDate();
+		} else {
+			referenceDate = mEditedEntry->startTime().date();
+		}
+		mReminderField->updateReminderChoicesForAllDay(referenceDate);
+		// If the reminder field is enabled and it is not off 
+		// it implies default alarm day and time is being displayed.
+		if (mReminderField->isReminderFieldEnabled() && 
+					mReminderField->currentReminderIndex() != 0) {
+			// Set the default alarm for all day.
+			mReminderField->setDefaultAlarmForAllDay();
+		} else {
+			// Remove reminder time field.
+			mReminderField->removeReminderTimeField();
+		}
 	} else {
 		// AllDayCheckBox in un-checked
 		// Set From/To times buttons editable
 		// Update Start/End Times with Edited entry values
 		enableFromTotimeFileds(true, mEditedEntry->startTime(),
 		                       mEditedEntry->endTime());
-
+		int index;
+		if (mIsAllDayItemAdded) {
+			index = ReminderTimeForAllDayItem;
+		} else {
+			index = ReminderTimeForAllDayItem - 1;
+		}
+		mReminderField->removeReminderTimeField();
+		mReminderField->setReminderChoices();
+		updateReminderChoices();
 	}
 	addDiscardAction();
 }
@@ -1135,7 +1221,9 @@
 void CalenEditorPrivate::saveAndCloseEditor()
 {
 	Action action = handleDone();
-	closeEditor();
+	if (CalenEditorPrivate::ActionDelete != action) {
+		closeEditor();
+	}
 
 	if (CalenEditorPrivate::ActionSave == action) {
 		// check if we need to launch the calendar application
@@ -1165,17 +1253,14 @@
  */
 void CalenEditorPrivate::handleDeleteAction()
 {
-
+	// If its a new entry just close the editor
 	if (mNewEntry) {
-		if (showDeleteConfirmationQuery()) {
-			closeEditor();
-		}
+		closeEditor();
 		return;
+	}else {
+		// Delete entry and close editor
+		deleteEntry(true);
 	}
-	
-	// Delete entry and close editor
-	deleteEntry(true);
-
 }
 
 /*!
@@ -1198,14 +1283,12 @@
 /*!
  * Show delete confirmation query
  */
-int CalenEditorPrivate::showDeleteConfirmationQuery()
+void CalenEditorPrivate::showDeleteConfirmationQuery(bool closeEditor)
 {
-	int retStatus = 0;
-
-	HbMessageBox popup(HbMessageBox::MessageTypeQuestion);
-	popup.setDismissPolicy(HbDialog::NoDismiss);
-	popup.setTimeout(HbDialog::NoTimeout);
-	popup.setIconVisible(true);
+	HbMessageBox *popup = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
+	popup->setDismissPolicy(HbDialog::NoDismiss);
+	popup->setTimeout(HbDialog::NoTimeout);
+	popup->setAttribute( Qt::WA_DeleteOnClose, true );
 
 	QString text = 0;
 
@@ -1225,18 +1308,27 @@
 		}
 	}
 
-	popup.setText(text);
-
-	popup.setPrimaryAction(new HbAction(hbTrId("txt_calendar_button_delete"),
-	                                    &popup));
-	popup.setSecondaryAction(new HbAction(hbTrId("txt_calendar_button_cancel"),
-	                                      &popup));
-	HbAction *selected = popup.exec();
-	if (selected == popup.primaryAction()) {
-		retStatus = 1;
+	popup->setText(text);
+	
+    QList<QAction*> list = popup->actions();
+    for(int i=0; i < list.count(); i++)
+        {
+        popup->removeAction(list[i]);
+        }
+	HbAction *deleteAction = new HbAction(hbTrId("txt_calendar_button_delete"),
+										popup);
+	popup->addAction(deleteAction);
+	connect(deleteAction, SIGNAL(triggered()), this, 
+										SLOT(handleDeleteAction()));
+	HbAction *cancelAction = new HbAction(hbTrId("txt_calendar_button_cancel"),
+											popup);
+	// Editor should not be closed for all the cases when cancel is pressed
+	if(closeEditor) {
+		connect(cancelAction, SIGNAL(triggered()), this, 
+											SLOT(closeEditor()));
 	}
-
-	return retStatus;
+	popup->addAction(cancelAction);
+	popup->open();
 }
 
 /*!
@@ -1273,7 +1365,7 @@
 			}
 			return CalenEditorPrivate::ActionNothing;
 		case CalenEditorPrivate::ActionDelete:
-			deleteEntry();
+			showDeleteConfirmationQuery(true);
 			return CalenEditorPrivate::ActionDelete;
 		case CalenEditorPrivate::ActionNothing:
 			return CalenEditorPrivate::ActionNothing;
@@ -1341,26 +1433,22 @@
  */
 void CalenEditorPrivate::deleteEntry(bool close)
 {
-
 	// if editor is launched from Notes then don't delete entry
 	// Just exit from calendar editor
 	if (mOriginalEntry->id() > 0) {
-
 		// If user is editing single instanc then delete single instance 
 		// else delete entry
-		if (showDeleteConfirmationQuery()) {
-			if (mEditRange == ThisOnly) {
-				// User wants to delete only this occurence
-				mAgendaUtil->deleteRepeatedEntry(*mOriginalEntry,
-				                                 AgendaUtil::ThisOnly);
-			} else {
-				// Delete the entry.
-				mAgendaUtil->deleteEntry(mOriginalEntry->id());
-			}
+		if (mEditRange == ThisOnly) {
+			// User wants to delete only this occurence
+			mAgendaUtil->deleteRepeatedEntry(*mOriginalEntry,
+			                                 AgendaUtil::ThisOnly);
+		} else {
+			// Delete the entry.
+			mAgendaUtil->deleteEntry(mOriginalEntry->id());
+		}
 
-			if (close) {
-				closeEditor();
-			}
+		if (close) {
+			closeEditor();
 		}
 	}
 }
@@ -1462,4 +1550,74 @@
 {
 	return mAllDayCheckBoxItem;
 }
+
+/*!
+	Checks if all day item is added and if selected implies reminder time is added.
+	When editing single occurence irrespective of type of the event 
+	the all day item is not shown.
+	Used to calculate the index of other items which are dependant on this.
+ */
+bool CalenEditorPrivate::isReminderTimeForAllDayAdded()
+{
+	return mReminderField->isReminderTimeForAllDayAdded();
+}
+
+/*!
+	Checks if it is an all day event or not.
+ */
+bool CalenEditorPrivate::isAllDayEvent()
+{
+	if (mAllDayCheckBoxItem) {
+		return (mAllDayCheckBoxItem->contentWidgetData("checkState") 
+													== Qt::Checked)? true:false;
+	} else if (!mNewEntry && mEditedEntry->type() == AgendaEntry::TypeEvent) {
+		// If editing single occurence then all day item not shown but still it 
+		// is an all day event..
+		return true;;
+	} else {
+		return false;
+	}
+}
+
+/*!
+	Returns the current index of the reminder field.
+ */
+int CalenEditorPrivate::currentIndexOfReminderField()
+{
+	return mReminderField->currentReminderIndex();
+}
+
+/*!
+	Sets the index. 
+	/param index indicates the index value to be set.
+ */
+void CalenEditorPrivate::setCurrentIndexOfReminderField(int index)
+{
+	mReminderField->setCurrentIndex(index);
+}
+
+/*!
+	Sets the reminder choices for a non all day event.
+ */
+void CalenEditorPrivate::setReminderChoices()
+{
+		mReminderField->setReminderChoices();
+}
+
+/*!
+	Checks if editing all occurences or a single occurence.
+ */
+bool CalenEditorPrivate::isEditRangeThisOnly()
+{
+	return (mEditRange == ThisOnly);
+}
+
+/*!
+	Checks if all day field is added.
+ */
+bool CalenEditorPrivate::isAllDayFieldAdded()
+{
+	return mIsAllDayItemAdded;
+}
+
 // End of file	--Don't remove this.
--- a/calendarui/caleneditor/src/caleneditorcustomitem.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/src/caleneditorcustomitem.cpp	Tue May 18 13:16:49 2010 +0100
@@ -113,7 +113,8 @@
 		case CustomWidgetTo:
 		{
 		HbWidget *widgetBottom = new HbWidget();
-		QGraphicsLinearLayout *layoutBottom = new QGraphicsLinearLayout(Qt::Horizontal);
+		QGraphicsLinearLayout *layoutBottom = 
+									new QGraphicsLinearLayout(Qt::Horizontal);
 		widgetBottom->setLayout(layoutBottom);
 
 		mPushButtonTime = new HbPushButton(this);
@@ -133,20 +134,27 @@
 			CalenEditorDocLoader editorLocationDocLoader;
 			bool loadSuccess = false;
 
-			editorLocationDocLoader.load(CALEN_EDITOR_LOCATION_XML_FILE, &loadSuccess);
+			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));
+								"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));
 			mLocationLineEdit->setMinRows(1);
 			mLocationLineEdit->setMaxRows(4);
-			mLocationPushButton = qobject_cast<HbPushButton*>(editorLocationDocLoader.findWidget(CALEN_EDITOR_LOCATION_PUSHBUTTON));
+			mLocationPushButton = qobject_cast<HbPushButton*>(
+									editorLocationDocLoader.findWidget(
+											CALEN_EDITOR_LOCATION_PUSHBUTTON));
 			mLocationPushButton->setIcon( HbIcon("qtg_mono_location"));
 			
-			connect(mLocationPushButton, SIGNAL(clicked()), this, SLOT(launchLocationPicker()));
+			connect(mLocationPushButton, SIGNAL(clicked()), this, 
+												SLOT(launchLocationPicker()));
 			connect(mLocationLineEdit, SIGNAL(textChanged(const QString)),
-		                this, SLOT(handleLocationTextChange(const QString)));
+						this, SLOT(handleLocationTextChange(const QString)));
 			return widgetLocation;
 		}
 		
@@ -156,7 +164,12 @@
 		return mRepeatUntilWidget;
 		}
 				
-
+		case ReminderTimeOffset:
+		{
+			mReminderTimeWidget = new HbPushButton(this);
+			return mReminderTimeWidget;
+		}
+		
 		default:
 			return 0;
 	}
@@ -204,6 +217,10 @@
 		mLocationLineEdit->setText(locationString );
     }
 }
+
+/*!
+	Populates the date and time in proper formats on the buttons
+ */
 void CalenEditorCustomItem::populateDateTime(QDateTime defaultDateTime, bool isFromItem)
 {
 	// Store the date and time to be shown
@@ -213,17 +230,22 @@
 	mIsFromItem = isFromItem;
 	
     mPushButtonDate->setText(mLocale.format(defaultDateTime.date(), 
-	                                           r_qtn_date_usual_with_zero));
+												r_qtn_date_usual_with_zero));
 	mPushButtonTime->setText(mLocale.format(defaultDateTime.time(), 
-	                                           r_qtn_time_usual_with_zero));
+												r_qtn_time_usual_with_zero));
 }
 
+/*!
+	Sets the location on the button
+ */
 void CalenEditorCustomItem::populateLocation(QString location )
 {
 	mLocationLineEdit->setText( location );
-   
 }
 
+/*!
+	Sets the date range
+ */
 void CalenEditorCustomItem::setDateRange(QDate start, QDate end)
 {
 	mMaxDate = end;
@@ -236,82 +258,104 @@
 	}
 }
 
+/*!
+	Sets the time range
+ */
 void CalenEditorCustomItem::setTimeRange(QTime start, QTime end)
 {
 	mMaxTime = start;
 	mMinTime = end;
 }
 
+/*!
+	Enables the date button
+ */
 void CalenEditorCustomItem::enableDateButton(bool value)
 {
 	mPushButtonDate->setEnabled(value);
 }
 
-
+/*!
+	Handles the location change
+ */
 void CalenEditorCustomItem::handleLocationTextChange(QString location)
 {
 	emit locationTextChanged(location);
 }
 
-
-
+/*!
+	Launches the date picker
+ */
 void CalenEditorCustomItem::handleDate()
 {
-	// Create a date picker
-	mDatePicker = new HbDateTimePicker(mDate, this);
-	mDatePicker->setMinimumDate(mMinDate);
-	mDatePicker->setMaximumDate(mMaxDate);
-
 	// Create a popup with datepicker for the user to select date.
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
 	
 	// Set the proper heading
 	if (mIsFromItem) {
-        popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_start_date")));   
-    }else {
-        popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_end_date")));
-    }
-
-	popUp.setContentWidget(mDatePicker);
+		popUp->setHeadingWidget(
+						new HbLabel(hbTrId("txt_calendar_title_start_date")));
+	}else {
+		popUp->setHeadingWidget(
+						new HbLabel(hbTrId("txt_calendar_title_end_date")));
+	}
+	// Create a date picker
+	if(mDatePicker) {
+		mDatePicker = NULL;
+	}
+	mDatePicker = new HbDateTimePicker(mDate, popUp);
+	mDatePicker->setMinimumDate(mMinDate);
+	mDatePicker->setMaximumDate(mMaxDate);
+	
+	popUp->setContentWidget(mDatePicker);
 	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
-	popUp.setPrimaryAction(okAction);
+	popUp->addAction(okAction);
 	connect(okAction, SIGNAL(triggered()), this, SLOT(saveDate()));
-	connect(okAction, SIGNAL(triggered()), &popUp, SLOT(close()));
-	popUp.setSecondaryAction(new HbAction(hbTrId("txt_common_button_cancel")));
-	popUp.exec();
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel")));
+	popUp->open();
 }
 
+/*!
+	Launches the time picker
+ */
 void CalenEditorCustomItem::handleTime()
 {
+	// Create a popup with time picker for the user to select time.
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
+	
+	// Set the proper heading
+	if (mIsFromItem) {
+		popUp->setHeadingWidget(
+					new HbLabel(hbTrId("txt_calendar_title_start_time")));
+	}else {
+		popUp->setHeadingWidget(
+					new HbLabel(hbTrId("txt_calendar_title_end_time")));
+	}
 	// Create a time picker.
-	mTimePicker = new HbDateTimePicker(mTime, this);
+	if(mTimePicker) {
+		mTimePicker = NULL;
+	}
+	mTimePicker = new HbDateTimePicker(mTime, popUp);
+	
 	if(mLocale.timeStyle() == HbExtendedLocale::Time12) {
 		mTimePicker->setDisplayFormat("hh:mm ap");	
 	}else {
 		mTimePicker->setDisplayFormat("hh:mm");
 	}
 	mTimePicker->setTime(mTime);
-	// Create a popup with time picker for the user to select time.
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
-	
-	// Set the proper heading
-    if (mIsFromItem) {
-        popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_start_time")));   
-    }else {
-        popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_end_time")));
-    }
-    
-	popUp.setContentWidget(mTimePicker);
+	popUp->setContentWidget(mTimePicker);
+
 	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
-	popUp.setPrimaryAction(okAction);
+	popUp->addAction(okAction);
 	connect(okAction, SIGNAL(triggered()), this, SLOT(saveTime()));
-	connect(okAction, SIGNAL(triggered()), &popUp, SLOT(close()));
-	popUp.setSecondaryAction(new HbAction(hbTrId("txt_common_button_cancel"), &popUp));
-	popUp.exec();
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel"), popUp));
+	popUp->open();
 }
 
 /*!
@@ -356,6 +400,15 @@
 }
 
 /*!
+	Disable Date field.
+ */
+void CalenEditorCustomItem::disableFromToDateField()
+{
+	// disable the date field.
+	mPushButtonDate->setEnabled(false);
+}
+
+/*!
 	Enable/Desable ToTime filed and update time value
  */
 void CalenEditorCustomItem::enableToTimeFieldAndSetTime(bool enableTimeFiles, QDateTime toDateTime)
@@ -364,7 +417,8 @@
 	mPushButtonTime->setEnabled(enableTimeFiles);
 	
 	// Set ToTime in Editor
-	mPushButtonTime->setText(mLocale.format(toDateTime.time(),r_qtn_time_usual_with_zero));
+	mPushButtonTime->setText(mLocale.format(
+							toDateTime.time(),r_qtn_time_usual_with_zero));
 }
 
 /*!
@@ -377,7 +431,7 @@
         index.data(HbDataFormModelItem::ItemTypeRole).toInt());
 
     if(itemType == CustomWidgetFrom || itemType == CustomWidgetTo || itemType == RepeatUntilOffset 
-			|| itemType == CustomWidgetLocation ) {
+			|| itemType == CustomWidgetLocation || itemType == ReminderTimeOffset ) {
         return true;
     } else {
         return false;
@@ -400,6 +454,12 @@
     		mRepeatUntilWidget->setText(modelItem->contentWidgetData("text").toString());
     	}
     	break;
+    	
+    	case ReminderTimeOffset:
+    	{
+    		mReminderTimeWidget->setText(modelItem->contentWidgetData("text").toString());
+    	}
+    	break;
     }
 }
 
--- a/calendarui/caleneditor/src/caleneditorreminderfield.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/src/caleneditorreminderfield.cpp	Tue May 18 13:16:49 2010 +0100
@@ -18,13 +18,22 @@
 
 
 // System Includes
+#include <QDate>
+
 #include <hbdataformmodelitem.h>
 #include <hbdataformmodel.h>
 #include <hbdataform.h>
+#include <hbdatetimepicker.h>
+#include <hbextendedlocale.h>
+#include <hbi18ndef.h>
+#include <hbdialog.h>
+#include <hblabel.h>
+#include <hbaction.h>
 
 // User Includes
 #include "caleneditorreminderfield.h"
 
+#define numberOfMinutesInADay 1440
 /*!
 	\class CalenEditorReminderField
  */
@@ -42,35 +51,16 @@
 	:QObject(parent),
 	 mCalenEditor(calenEditor), 
 	 mEditorForm(form), 
-	 mCalenEditorModel(model)
+	 mCalenEditorModel(model),
+	 mCustomReminderTimeItem(NULL),
+	 mReminderTimeAdded(false)
 {
 	mReminderItem = new HbDataFormModelItem();
 	mReminderItem->setType(HbDataFormModelItem::ComboBoxItem);
 	mReminderItem->setData(HbDataFormModelItem::LabelRole,
-						   hbTrId("txt_calendar_setlabel_alarm"));
-	// Create the remaindar choices
-	QStringList remaindarChoices;
-	remaindarChoices << hbTrId("txt_calendar_setlabel_alarm_val_off")
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 5)
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 10)
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 15)
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 30)
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_hours", 1)
-			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_hours", 2);
-
-	mReminderItem->setContentWidgetData(QString("items"), remaindarChoices);
-
-	// Build the hash map for the reminder.
-	mReminderHash[0] = 0; // OFF.
-	mReminderHash[1] = 5;
-	mReminderHash[2] = 10;
-	mReminderHash[3] = 15;
-	mReminderHash[4] = 30;
-	mReminderHash[5] = 60;
-	mReminderHash[6] = 120;	
-	
+						   hbTrId("txt_calendar_setlabel_alarm"));	
 	// Add it to the model
-	mCalenEditorModel->appendDataFormItem( mReminderItem,
+	mCalenEditorModel->appendDataFormItem(mReminderItem,
 										mCalenEditorModel->invisibleRootItem());
 }
 
@@ -83,6 +73,35 @@
 }
 
 /*!
+	 Set the reminder choices.
+ */
+void CalenEditorReminderField::setReminderChoices()
+{
+	// Create the reminder choices
+	QStringList reminderChoices;
+	reminderChoices << hbTrId("txt_calendar_setlabel_alarm_val_off")
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 5)
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 10)
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 15)
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_minutes", 30)
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_hours", 1)
+			<< hbTrId("txt_calendar_setlabel_alarm_val_before_ln_hours", 2);
+
+	mReminderItem->setContentWidgetData(QString("items"), reminderChoices);
+
+	// Build the hash map for the reminder.
+	mReminderHash[0] = 0; // OFF.
+	mReminderHash[1] = 5;
+	mReminderHash[2] = 10;
+	mReminderHash[3] = 15;
+	mReminderHash[4] = 30;
+	mReminderHash[5] = 60;
+	mReminderHash[6] = 120;
+
+	mReminderItem->setEnabled(true);
+}
+
+/*!
 	 Adds reminder item to the model
  */
 void CalenEditorReminderField::addItemToModel()
@@ -93,7 +112,7 @@
 }
 
 /*!
-	 Removes reminder item frm the model
+	 Removes reminder item from the model
  */
 void CalenEditorReminderField::removeItemFromModel()
 {
@@ -106,33 +125,106 @@
  */
 void CalenEditorReminderField::populateReminderItem(bool newEntry)
 {
+	AgendaAlarm reminder;
+	bool pastEvent =  false;
+	
+	// Set reference date to start date or repeat until date accordingly to 
+	// decide whether its a past event or not.
+	QDate referenceDate;
+	if (!mCalenEditor->editedEntry()->isRepeating() || 
+					(mCalenEditor->isEditRangeThisOnly())) {
+		referenceDate = mCalenEditor->editedEntry()->startTime().date();
+	} else {
+		referenceDate = mCalenEditor->editedEntry()->repeatRule().until().date();
+	}
+	
+	if ((referenceDate < QDate::currentDate()) || 
+					(referenceDate == QDate::currentDate()
+					&& (mCalenEditor->editedEntry()->startTime().time() < 
+					QTime::currentTime()))) {
+		pastEvent = true;
+	}
+	
+	if (mCalenEditor->isAllDayEvent()) {
+		updateReminderChoicesForAllDay(referenceDate);
+	} else {
+		setReminderChoices();
+	}
 	// Set the default reminder value to 15 minutes 
 	if (newEntry) {
-		mReminderItem->setContentWidgetData("currentIndex", 3);
-		// Save the reminder alarm for the entry
-		AgendaAlarm reminder;
-		reminder.setTimeOffset(mReminderHash.value(3));
-		reminder.setAlarmSoundName(QString(" "));
-		// Set the reminder to the entry as well as original entry.
-		mCalenEditor->editedEntry()->setAlarm(reminder);
-		mCalenEditor->originalEntry()->setAlarm(reminder);
+		if (!pastEvent) {
+			mReminderItem->setContentWidgetData("currentIndex", 3);
+			// Save the reminder alarm for the entry
+			reminder.setTimeOffset(mReminderHash.value(3));
+			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);
+		}
 	} else {
+		// 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", 0);
-		} else {
+			if(mReminderTimeAdded) {
+				removeReminderTimeField();
+			}
+		} else if (mCalenEditor->editedEntry()->type()
+		        != AgendaEntry::TypeEvent) {
 			// Get the reminder offset value.
-			int reminderOffset = mCalenEditor->editedEntry()->alarm().timeOffset();
+			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);
+		} else {
+			// Insert reminder time field and display entry's reminder time.
+			// If past then disable the field.
+			if (!mReminderTimeAdded) {
+				insertReminderTimeField();
+				if (pastEvent) {
+					mCustomReminderTimeItem->setEnabled(false);
+				}
+			}
+			QStringList reminderChoicesForAllDay;
+			reminderChoicesForAllDay << hbTrId("off") 
+					<< hbTrId("On event day")
+					<< hbTrId("1 day before")
+					<< hbTrId("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", 1);
+				mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+						* 60));
+			} else if (offsetInMins < numberOfMinutesInADay) {
+				mReminderItem->setContentWidgetData("currentIndex", 2);
+				mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+						* 60));
+			} else {
+				mReminderItem->setContentWidgetData("currentIndex", 3);
+				offsetInMins %= (24 * 60);
+				mReminderTimeForAllDay = referenceTime.addSecs(-(offsetInMins
+						* 60));
+			}
+			setDisplayTime();
+		}
+		if (pastEvent) {
+			mReminderItem->setEnabled(false);
 		}
 	}
 	mEditorForm->addConnection(mReminderItem,
 							SIGNAL(currentIndexChanged(int)), this,
 							SLOT(handleReminderIndexChanged(int)));
-
 }
 
 /*!
@@ -146,17 +238,58 @@
 	if (!mCalenEditor->editedEntry()->alarm().isNull()) {
 		reminder = mCalenEditor->editedEntry()->alarm();
 	}
-	// If value for the index in hash table is 0 i.e reminder is "OFF",
-	// then dont do anything only set the default constructed reminder to
-	// the entry which is Null.
-	if (mReminderHash.value(index)) {
-		// If not zero then set the reminder offset
-		// value to the entry.
-		reminder.setTimeOffset(mReminderHash.value(index));
-		reminder.setAlarmSoundName(QString(" "));
+	// Check whether all day event or not and store appropriately.
+	if (!mCalenEditor->isAllDayEvent()) {
+		// If value for the index in hash table is 0 i.e reminder is "OFF",
+		// then set the default constructed reminder to
+		// the entry which is Null.
+		if (!mReminderHash.value(index)) {
+			// Construct the default alarm which is NULL
+			reminder = AgendaAlarm();
+		} else {
+			// If not zero then set the reminder offset
+			// value to the entry.
+			reminder.setTimeOffset(mReminderHash.value(index));
+			reminder.setAlarmSoundName(QString(" "));
+		}
 	} else {
-		// Construct the default alarm which is NULL
-		reminder = AgendaAlarm();
+		QDateTime reminderDateTimeForAllDay; 
+		QDateTime
+		        startDateTimeForAllDay(
+		                               mCalenEditor->editedEntry()->startTime().date(),
+		                               QTime(0, 0, 0));
+		if (mReminderItem->contentWidgetData("currentIndex") == 0) {
+			reminder = AgendaAlarm();
+			mCustomReminderTimeItem->setEnabled(false);
+		} else {
+			int offset = 0;
+			if (mReminderItem->contentWidgetData("currentIndex") == 2) {
+				offset = 1;
+			} else if (mReminderItem->contentWidgetData("currentIndex") == 3) {
+				offset = 2;
+			}
+			if(!mReminderTimeAdded) {
+				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();
+				}
+			}
+			reminderDateTimeForAllDay.setDate(
+					mCalenEditor->editedEntry()->startTime().date().addDays(
+																	-offset));
+			reminderDateTimeForAllDay.setTime(mReminderTimeForAllDay);
+			int seconds =
+					reminderDateTimeForAllDay.secsTo(startDateTimeForAllDay);
+			int timeOffest = seconds / 60;
+			mCustomReminderTimeItem->setEnabled(true);
+			reminder.setTimeOffset(timeOffest);
+			reminder.setAlarmSoundName(QString(" "));
+		}
 	}
 	// Set the reminder to the entry.
 	mCalenEditor->editedEntry()->setAlarm(reminder);
@@ -171,4 +304,236 @@
 {
 	return mCalenEditorModel->indexFromItem(mReminderItem);
 }
+
+/*!
+	 Set reminder off.
+ */
+void CalenEditorReminderField::setReminderOff()
+{
+	// Create the remindar choices
+	QStringList reminderChoices;
+	reminderChoices << hbTrId("txt_calendar_setlabel_alarm_val_off");
+	mReminderItem->setContentWidgetData(QString("items"), reminderChoices);
+	mReminderItem->setEnabled(false); 
+}
+
+/*!
+	 Set the default alarm for a new all day event.
+ */
+void CalenEditorReminderField::setDefaultAlarmForAllDay()
+{	
+	// Set default alarm if its a new entry.
+	if (mCalenEditor->isNewEntry()) {
+		AgendaAlarm reminder;
+		QDate defaultDate
+				(mCalenEditor->editedEntry()->startTime().date().addDays(-1));
+		// Set default time.
+		mReminderTimeForAllDay.setHMS(18, 0, 0, 0);
+		setDisplayTime();
+		QDateTime startDateTimeForAllDay(
+				mCalenEditor->editedEntry()->startTime().date(), QTime(0, 0));
+		QDateTime defaultReminderDateTimeForAllDay
+				(defaultDate, mReminderTimeForAllDay);
+		int offsetInSecs = 
+				defaultReminderDateTimeForAllDay.secsTo(startDateTimeForAllDay);
+		int offsetInMins = offsetInSecs/60;
+		reminder.setTimeOffset(offsetInMins);
+		reminder.setAlarmSoundName(QString(" "));
+		// Set the reminder to the entry as well as original entry.
+		mCalenEditor->editedEntry()->setAlarm(reminder);
+		mCalenEditor->originalEntry()->setAlarm(reminder);
+	}
+}
+
+/*!
+	 Updates the reminder choices for an all day event.
+	 \param referenceDate to indicate past or not.
+ */
+void CalenEditorReminderField::updateReminderChoicesForAllDay(QDate referenceDate)
+{
+	if (!mReminderTimeAdded){
+		insertReminderTimeField();
+	}
+	QStringList reminderChoicesForAllDay;
+	QDate tomorrow = QDate::currentDate().addDays(1);
+	QDate theDayAfterTomorrow = QDate::currentDate().addDays(2);
+	
+	if (referenceDate < QDate::currentDate() || 
+			referenceDate == QDate::currentDate()) {
+		// Set reminder off for past event.
+		reminderChoicesForAllDay << hbTrId("off");
+		mReminderItem->setContentWidgetData(QString("items"), 
+													reminderChoicesForAllDay);
+		mReminderItem->setEnabled(false); 
+		removeReminderTimeField();
+	} else if (theDayAfterTomorrow < referenceDate || 
+			theDayAfterTomorrow == referenceDate) {
+		reminderChoicesForAllDay << hbTrId("off")
+								 << hbTrId("On event day")
+								 << hbTrId("1 day before")
+								 << hbTrId("2 days before");
+		mReminderItem->setEnabled(true);
+		mCustomReminderTimeItem->setEnabled(true);
+	} else {
+		reminderChoicesForAllDay << hbTrId("off")
+								 << hbTrId("On event day")
+								 << hbTrId("1 day before");
+		mReminderItem->setEnabled(true);
+		mCustomReminderTimeItem->setEnabled(true);
+	}
+	if (mReminderItem->isEnabled()) {
+		mReminderItem->setContentWidgetData(QString("items"), 
+											reminderChoicesForAllDay);
+	}
+}
+
+/*!
+	 Insert the reminder time field for an all day event.
+ */
+void CalenEditorReminderField::insertReminderTimeField()
+{
+	HbDataFormModelItem::DataItemType itemType =
+			static_cast<HbDataFormModelItem::DataItemType> (ReminderTimeOffset);
+	
+	// If all day item is not added then insert at one level before.
+	int index = CalenEditorPrivate::ReminderTimeForAllDayItem;
+	if(!mCalenEditor->isAllDayFieldAdded()) {
+		index = CalenEditorPrivate::ReminderTimeForAllDayItem - 1;
+	} 
+	mCustomReminderTimeItem = mCalenEditorModel->insertDataFormItem(
+							index,
+							itemType,
+							QString(hbTrId("Reminder Time")),
+							mCalenEditorModel->invisibleRootItem());
+	if (currentReminderIndex() != 1){
+		mReminderTimeForAllDay.setHMS(18,0,0,0);
+	} else {
+		mReminderTimeForAllDay.setHMS(8,0,0,0);
+	}
+	
+	mEditorForm->addConnection(mCustomReminderTimeItem, SIGNAL(clicked()),
+	                           this, SLOT(launchReminderTimePicker()));
+	setDisplayTime();
+	mReminderTimeAdded = true;
+}
+
+/*!
+	 Set the reminder time selected by the user.
+ */
+void CalenEditorReminderField::setDisplayTime()
+{
+	HbExtendedLocale locale = HbExtendedLocale::system();
+	QString timeString = locale.format(
+			mReminderTimeForAllDay,
+			r_qtn_time_usual_with_zero);
+	mCustomReminderTimeItem->setContentWidgetData("text", timeString);
+}
+
+/*!
+	Remove the reminder time field if its not an all day event.
+ */
+void CalenEditorReminderField::removeReminderTimeField()
+{
+	mReminderTimeAdded = false;
+	if (mCustomReminderTimeItem) {
+					QModelIndex reminderIndex =
+					        mCalenEditorModel->indexFromItem(mCustomReminderTimeItem);
+					mCalenEditorModel->removeItem(
+					                              mCalenEditorModel->index(
+					                            		  reminderIndex.row(), 0));
+					mCustomReminderTimeItem = NULL;
+				}
+}
+
+/*!
+	 Launches time picker to select time.
+ */
+void CalenEditorReminderField::launchReminderTimePicker()
+{
+	mTimePicker = new HbDateTimePicker(mReminderTimeForAllDay);
+	mTimePicker->setTime(mReminderTimeForAllDay);
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setContentWidget(mTimePicker);
+	popUp->setHeadingWidget( new HbLabel(
+			hbTrId("Reminder Time")));
+	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
+	popUp->addAction(okAction);
+	connect(okAction, SIGNAL(triggered()), this, SLOT(setReminderTimeForAllDay()));
+	connect(okAction, SIGNAL(triggered()), popUp, SLOT(close()));
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel"),
+	                                      popUp));
+	popUp->open();
+}
+
+/*!
+	 Set the reminder time chosen.
+ */
+void CalenEditorReminderField::setReminderTimeForAllDay()
+{
+	mReminderTimeForAllDay = mTimePicker->time();
+	if (mReminderTimeForAllDay.isValid()) {
+		// Change the time displayed to that selected by the user.
+		setDisplayTime();
+		handleReminderIndexChanged(currentReminderIndex());
+	}	
+}
+
+/*!
+	 Checks if reminder field is enabled or not.
+ */
+bool CalenEditorReminderField::isReminderFieldEnabled()
+{
+	return mReminderItem->isEnabled();
+}
+
+/*!
+	 Returns the number of items present in the reminder option.
+ */
+int CalenEditorReminderField::reminderItemsCount()
+{
+	QVariant strings = mReminderItem->contentWidgetData("items");
+	QStringList stringList(strings.toStringList());
+	int count = stringList.count();
+	return count;
+}
+
+/*!
+	 Returns the current chosen index.
+ */
+int CalenEditorReminderField::currentReminderIndex()
+{
+	QVariant countVariant = mReminderItem->contentWidgetData("currentIndex");
+	int index = countVariant.toInt();
+	return index;
+}
+
+/*!
+	 Sets the chosen index as current index.
+	 /param index indicates the idex value to be set.
+ */
+void CalenEditorReminderField::setCurrentIndex(int index)
+{
+	mReminderItem->setContentWidgetData("currentIndex", index);
+}
+
+/*!
+	 Disables the reminder time field.
+ */
+void CalenEditorReminderField::disableReminderTimeField()
+{
+	if (mReminderTimeAdded) {
+		mCustomReminderTimeItem->setEnabled(false);
+	}
+}
+
+/*!
+	 Checks if reminder time field is added or not.
+ */
+bool CalenEditorReminderField::isReminderTimeForAllDayAdded()
+{
+	return mReminderTimeAdded;
+}
+
 // End of file	--Don't remove this.
--- a/calendarui/caleneditor/src/caleneditorrepeatfield.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/caleneditor/src/caleneditorrepeatfield.cpp	Tue May 18 13:16:49 2010 +0100
@@ -18,6 +18,7 @@
 
 
 // System Includes
+#include <QDate>
 #include <hbdataformmodelitem.h>
 #include <hbdataformviewitem.h>
 #include <hbdataformmodel.h>
@@ -178,11 +179,11 @@
 									  AgendaRepeatRule(
 									  AgendaRepeatRule::InvalidRule));
 	}
-	connect(mRepeatComboBox, SIGNAL(currentIndexChanged(int)), this,
-			SLOT(handleRepeatIndexChanged(int)));
 	
 	// Update the repeat choices depending upon the duration
 	updateRepeatChoices();
+	connect(mRepeatComboBox, SIGNAL(currentIndexChanged(int)), this,
+				SLOT(handleRepeatIndexChanged(int)));
 }
 
 /*!
@@ -296,6 +297,7 @@
 		break;
 	}
 	mCalenEditor->addDiscardAction();
+	mCalenEditor->updateReminderChoices();
 }
 
 /*!
@@ -314,10 +316,13 @@
 {
 	HbDataFormModelItem::DataItemType itemType =
 	        static_cast<HbDataFormModelItem::DataItemType> (RepeatUntilOffset);
-
-	QModelIndex repeatIndex = mCalenEditorModel->indexFromItem(mRepeatItem);
+	
+	int index = CalenEditorPrivate::RepeatUntilItem;
+	if (!mCalenEditor->isReminderTimeForAllDayAdded()) {
+		index -= 1;
+	}
 	mCustomRepeatUntilItem = mCalenEditorModel->insertDataFormItem(
-										CalenEditorPrivate::RepeatUntilItem,
+										index,
 										itemType,
 										QString(
 										hbTrId(
@@ -351,12 +356,19 @@
  */
 void CalenEditorRepeatField::launchRepeatUntilDatePicker()
 {
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setHeadingWidget( new HbLabel(
+									hbTrId("txt_calendar_title_repeat_until")));
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
+	
 	if (mDatePicker) {
 		mDatePicker = NULL;
 	}
 	if (mRepeatRuleType == AgendaRepeatRule::DailyRule) {
 		QDate minDate = mCalenEditor->editedEntry()->endTime().date().addDays(1);
-		mDatePicker = new HbDateTimePicker(mRepeatUntilDate);
+		mDatePicker = new HbDateTimePicker(mRepeatUntilDate, popUp);
 		mDatePicker->setMinimumDate(minDate);
 		mDatePicker->setMaximumDate(QDate(31, 12, 2100));
 		mDatePicker->setDate(mRepeatUntilDate);
@@ -367,36 +379,30 @@
 		} else {
 			minDate = mCalenEditor->editedEntry()->endTime().date().addDays(14);
 		}
-		mDatePicker = new HbDateTimePicker(mRepeatUntilDate);
+		mDatePicker = new HbDateTimePicker(mRepeatUntilDate, popUp);
 		mDatePicker->setMinimumDate(minDate);
 		mDatePicker->setMaximumDate(QDate(31, 12, 2100));
 		mDatePicker->setDate(mRepeatUntilDate);
 	} else if (mRepeatRuleType == AgendaRepeatRule::MonthlyRule) {
 		QDate minDate = mCalenEditor->editedEntry()->endTime().date().addMonths(1);
-		mDatePicker = new HbDateTimePicker(mRepeatUntilDate);
+		mDatePicker = new HbDateTimePicker(mRepeatUntilDate, popUp);
 		mDatePicker->setMinimumDate(minDate);
 		mDatePicker->setMaximumDate(QDate(31, 12, 2100));
 		mDatePicker->setDate(mRepeatUntilDate);
 	} else if (mRepeatRuleType == AgendaRepeatRule::YearlyRule) {
 		QDate minDate = mCalenEditor->editedEntry()->endTime().date().addYears(1);
-		mDatePicker = new HbDateTimePicker(mRepeatUntilDate);
+		mDatePicker = new HbDateTimePicker(mRepeatUntilDate, popUp);
 		mDatePicker->setMinimumDate(minDate);
 		mDatePicker->setMaximumDate(QDate(31, 12, 2100));
 		mDatePicker->setDate(mRepeatUntilDate);
 	}
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
-	popUp.setContentWidget(mDatePicker);
-	popUp.setHeadingWidget( new HbLabel(
-								hbTrId("txt_calendar_title_repeat_until")));
+	popUp->setContentWidget(mDatePicker);
+	
 	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
-	popUp.setPrimaryAction(okAction);
+	popUp->addAction(okAction);
 	connect(okAction, SIGNAL(triggered()), this, SLOT(setRepeatUntilDate()));
-	connect(okAction, SIGNAL(triggered()), &popUp, SLOT(close()));
-	popUp.setSecondaryAction(new HbAction(hbTrId("txt_common_button_cancel"),
-								&popUp));
-	popUp.exec();
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel"), popUp));
+	popUp->open();
 }
 
 /*!
@@ -411,6 +417,15 @@
 									r_qtn_date_usual_with_zero);
 		mCustomRepeatUntilItem->setContentWidgetData("text", dateString);
 	}
+	mCalenEditor->updateReminderChoices();
+}
+
+/*!
+	Returns the repeatuntildate displayed.
+ */
+QDate CalenEditorRepeatField::repeatUntilDate()
+{
+	return mRepeatUntilDate;
 }
 
 /*!
@@ -526,7 +541,6 @@
 	}
 	// Set the previous user's choice
 	mRepeatComboBox->setCurrentIndex(choice);
-	handleRepeatIndexChanged(choice);
 }
 
 /*!
--- a/calendarui/calenplugins/calenplugins.pro	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/calenplugins/calenplugins.pro	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 
 TEMPLATE = subdirs
 
-SUBDIRS += calensettingsplugin
 SUBDIRS += agendaeventviewerplugin
 CONFIG += ordered
 
--- a/calendarui/calenplugins/calensettingsplugin/calensettingsplugin.pro	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-#
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-# 
-# Description: This is the project file defnition for calensettingsplugin.
-#
-
-
-TEMPLATE = lib
-TARGET = calensettingsplugin
-DEPENDPATH += . \
-			  ./inc \
-			  ./src
-INCLUDEPATH += . \
-               ../../inc
-
-CONFIG += hb plugin
-
-
-symbian: {
-
-    TARGET.EPOCALLOWDLLDATA = 1  
-    TARGET.UID3 = 0x2002B338
-	
-    LIBS += -lcalensettings \
-		-lcpframework
-
-    deploy.path = C:
-    headers.sources = qmakepluginstubs/calensettingsplugin.qtplugin
-    headers.path = /resource/qt/plugins/controlpanel
-
-    # This is for new exporting system coming in garden
-    for(header, headers.sources):BLD_INF_RULES.prj_exports += "./$$header $$deploy.path$$headers.path/$$basename(header)"
-
-    TARGET.CAPABILITY = CAP_GENERAL_DLL
-
-    plugin.sources = calensettingsplugin.dll
-    plugin.path = \resource\qt\plugins\controlpanel
-    DEPLOYMENT += plugin
-}
-
-# Input
-HEADERS += calensettingsplugin.h \
-		   calendarsettingsview.h
-		   
-SOURCES += calensettingsplugin.cpp \
-		   calendarsettingsview.cpp
-		   
-
-# End of file	--Don't remove this.
\ No newline at end of file
--- a/calendarui/calenplugins/calensettingsplugin/inc/calendarsettingsview.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
- *
- * Description:   
- *
-*/
-
-#ifndef	CalendarSettingsView_H_
-#define	CalendarSettingsView_H_
-
-#include <cpbasesettingview.h>
-
-class SettingsUiUtility;
-
-class CalendarSettingsView : public CpBaseSettingView
-{
-    Q_OBJECT
-public:
-    explicit CalendarSettingsView(QGraphicsItem *parent = 0);
-    virtual ~CalendarSettingsView();
-public slots:
-
-private:
-	SettingsUiUtility *mSettingsUtility;
-
-};
-#endif//	CalendarSettingsView_H_
--- a/calendarui/calenplugins/calensettingsplugin/inc/calensettingsplugin.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
- *
- * Description: 
- *
-*/
-
-
-#ifndef CalenSettingsPlugin_H_
-#define CalenSettingsPlugin_H_
-
-#include <cppluginplatinterface.h>
-#include <qobject.h>
-
-class CpItemDataHelper;
-
-class CalenSettingsPlugin : public QObject, public CpPluginPlatInterface
-{
-	Q_OBJECT
-    Q_INTERFACES(CpPluginPlatInterface)
-
-public:
-	CalenSettingsPlugin();
-    virtual ~CalenSettingsPlugin();
-
-    virtual int uid() const;
-    virtual CpSettingFormItemData *createSettingFormItemData(CpItemDataHelper &itemDataHelper) const;
-};
-
-#endif /* CalenSettingsPlugin_H_ */
--- a/calendarui/calenplugins/calensettingsplugin/src/calendarsettingsview.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
- *
- * Description:   
- *
-*/
-
-
-#include <hbdataform.h>
-#include "calendarsettingsview.h"
-#include "calensettings.h"
-
-CalendarSettingsView::CalendarSettingsView(QGraphicsItem *parent)
-:CpBaseSettingView(0, parent)
-{
-	HbDataForm *form = settingForm();
-	
-	if (form) {
-		form->setHeading(hbTrId("txt_calendar_subhead_calendar_settings"));
-		
-		CalenSettings *settings = new CalenSettings(form);
-		settings->createModel();
-		settings->populateSettingList();
-    }
-}
-
-CalendarSettingsView::~CalendarSettingsView()
-{
-}
--- a/calendarui/calenplugins/calensettingsplugin/src/calensettingsplugin.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
- *
- * Description: 
- *
-*/
-
-#include <cpsettingformentryitemdataimpl.h>
-
-#include "calensettingsplugin.h"
-#include "calendarsettingsview.h"
-#include <cpitemdatahelper.h>
-
-
-CalenSettingsPlugin::CalenSettingsPlugin()
-{
-}
-
-CalenSettingsPlugin::~CalenSettingsPlugin()
-{
-}
-
-int CalenSettingsPlugin::uid() const
-{
-	// TODO: get a uid and replace it.
-    return 0x20029F7F;
-}
-
-CpSettingFormItemData *CalenSettingsPlugin::createSettingFormItemData(CpItemDataHelper& itemDataHelper) const
-{
-    //CpItemDataHelper* pHelper = new CpItemDataHelper();
-	
-	// For now dummyicon
-    HbIcon* icon = new HbIcon();
-    return new CpSettingFormEntryItemDataImpl<CalendarSettingsView>(itemDataHelper, QString("Calendar application"),
-                                          QString("Calendar settings plugin"), *icon);
-}
-
-Q_EXPORT_PLUGIN2(CalenSettingsPlugin, CalenSettingsPlugin)
--- a/calendarui/controller/inc/calenactionuiutils.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/inc/calenactionuiutils.h	Tue May 18 13:16:49 2010 +0100
@@ -42,13 +42,6 @@
     {
     
     public:
-        enum TDeleteConfirmationType
-            {
-            EDeleteEntry = 1,
-            EDeleteToDo,
-            EDeleteToDos,
-            EDeleteAll
-            };
 
         enum TRepeatQueryType
             {
@@ -78,9 +71,6 @@
                                             AgendaEntry& entry,
                                             const bool status );
         
-        static int showDeleteConfirmationQueryL(const TDeleteConfirmationType type,
-                                                 const TInt count = 0);
-        
     private: // Construction and destruction
         // Hiding constructor, because this is static utility class.
         //lint -e{1526}
--- a/calendarui/controller/inc/calencontroller.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/inc/calencontroller.h	Tue May 18 13:16:49 2010 +0100
@@ -62,25 +62,32 @@
     {
   
     public:  // Construction and destruction
-	/**
+		/**
 		 * C++ constructor
 		 */
 		CCalenController(bool isFromServiceFrmwrk);
 		
 		/**
-			 * Constructs CCalenController with existing CAknViewAppUi. If the
-			 * controller has been previously initialized with the same CAknViewAppUi,
-			 * the existing instance will be returned.
-			 * @param aAppUi Reference to CAknViewAppUi
-			 * @return CCalenController pointer
-			 */
-			static CCalenController* InstanceL();
+		 * Constructs CCalenController with existing CAknViewAppUi. If the
+		 * controller has been previously initialized with the same CAknViewAppUi,
+		 * the existing instance will be returned.
+		 * @param aAppUi Reference to CAknViewAppUi
+		 * @return CCalenController pointer
+		 */
+		static CCalenController* InstanceL();
 
-			/**
-			 * CCalenController is a reference counting singleton. Call Release()
-			 * when you are done with it, it will clean itself when it needs to
-			 */
-			 void Release();
+		 
+		 /**
+		 * Releases all plugins, should only be called when 
+		 * the application is exiting.
+		 */
+		void ReleaseCustomisations();
+
+		/**
+		 * CCalenController is a reference counting singleton. Call Release()
+		 * when you are done with it, it will clean itself when it needs to
+		 */
+		void Release();
 		
 		/**
 		 * destructor
--- a/calendarui/controller/inc/calendeleteui.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/inc/calendeleteui.h	Tue May 18 13:16:49 2010 +0100
@@ -29,11 +29,19 @@
 #include "calenactionuiutils.h"
 #include "calennotificationhandler.h"
 #include "calencommandhandler.h"
-
+#include "hb_calencommands.hrh"
 
 // FORWARD DECLARATIONS
 class CCalenController;
+class HbAction;
 
+enum TDeleteConfirmationType
+{
+	EDeleteEntry = 1,
+	EDeleteToDo,
+	EDeleteToDos,
+	EDeleteAll
+};
 
 // CLASS DECLARATION
 /**
@@ -121,28 +129,21 @@
     void deleteEntriesEndingAtMidnight( QDateTime aMidnight );
 
     /**
-     * Delete entry by passing CCalEntryView and CCalEntry
-     * Will query user for confirmation before deletion
-     * @return ETrue user confirms to delete EFalse otherwise 
-     */
-    TBool DeleteEntryL( AgendaEntry& aEntry );
-    
-    /**
      * Delete entry without querying the user
      */
     TBool DeleteEntryWithoutQueryL();
-
+    
     /**
      * Delete the given entry. Ask the user whether to delete the
      * instance or the entire series.
      */
-    TBool DeleteSingleInstanceL( AgendaEntry& aInstance );
+    void DeleteSingleInstanceL( AgendaEntry& aInstance );
 
     /**
      * Delete the given entry, using aRepeatType to determine
      * whether to delete the instance or the entire series.
      */
-    TBool DeleteSingleInstanceL( AgendaEntry& aInstance, 
+    void DeleteSingleInstanceL( AgendaEntry& aInstance, 
             AgendaUtil::RecurrenceRange aRepeatType );
     
     /**
@@ -152,7 +153,7 @@
      * @param aRepeatType Repeat type choosen to apply on delete
      * @return ETrue is user confirms to delete, EFalse otherwise
      */
-    TBool DoDeleteSingleInstanceL( AgendaEntry& aInstance,
+    void DoDeleteSingleInstanceL( AgendaEntry& aInstance,
                                    bool aHasRepeatType,
                                    AgendaUtil::RecurrenceRange aRepeatType );
     
@@ -162,11 +163,6 @@
     void HandleECalenNotifyViewCreatedL();
     
    /**
-    * Multiple entries delete query
-    */ 
-    TInt ShowMultipleEntriesDeleteQueryL(int aCount);
-    
-   /**
     * Get the date from user.
     */
     void dateQuery();
@@ -177,6 +173,18 @@
      * or the entire series of a repeating entry
      */
     void showRepeatingEntryDeleteQuery();
+    
+    /**
+     * Shows a confirmation query to the user if
+     * he/she wants to delete instance/instances
+     */
+    void showDeleteQuery(const TDeleteConfirmationType type,
+                         const int count = 0);
+    
+    /**
+     * Deletes the entries before the selected date
+     */
+    void getSelectedDateAndDelete();
 
 private: // own methods
     /**
@@ -200,7 +208,9 @@
 public slots:
 
     void doCompleted( int aFirstPassError );
-    void getSelectedDate();
+    void handleDateQuery(HbAction* action);
+    void handleDeletion(HbAction* action);
+    void handleDeleteCancel();
     
 private slots:
     void handleRepeatedEntryDelete(int index);
@@ -228,20 +238,20 @@
     bool iIsDeleting; // True, if asynchronous delete is running
     QDateTime iStartTime;
     QDateTime iEndTime;
-    QDateTime mDateTime; // Get the date selected by user.
     HbDateTimePicker *mDatePicker;
     // Confirmation note id is stored here. Note is shown when asynchronous
     // delete completes.
     int iConfirmationNoteId;
     CCalenController& iController;
-
+    TCalenCommandId mDeleteCommand;
+    AgendaUtil::RecurrenceRange mRecurrenceRange;
+    
     // Stored command if the entry view
     // needs to constructed asyncronously
     TCalenCommand iStoredCommand;
     int iMutlipleContextIdsCount;
     bool iMoreEntriesToDelete;
     bool iDisplayQuery;
-    bool mIsDateValid;
     int iEntriesToDelete;
     };
 
--- a/calendarui/controller/inc/calenviewmanager.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/inc/calenviewmanager.h	Tue May 18 13:16:49 2010 +0100
@@ -95,6 +95,8 @@
 		
 		void removeDayViews();
 		
+		void constructOtherViews();
+		
 	public: // from MCalenNotificationHandler
    
         /**
@@ -132,16 +134,16 @@
 		 * day
 		 */
 		void loadAlternateDayView();
-		
-	public slots:
-		void constructOtherViews();
         
     private slots:
+		void handleMainViewReady();
 		void handleViewingCompleted(const QDate date);
 		void handleEditingStarted();
 		void handleEditingCompleted();
 		void handleDeletingStarted();
 		void handleDeletingCompleted();
+		void handleInstanceViewCreation(int status);
+		void handleEntryViewCreation(int status);
 		
     private:  // Data        
 
--- a/calendarui/controller/src/calenactionuiutils.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/src/calenactionuiutils.cpp	Tue May 18 13:16:49 2010 +0100
@@ -105,62 +105,4 @@
     TRACE_EXIT_POINT;
     }
 
-int CalenActionUiUtils::showDeleteConfirmationQueryL(const TDeleteConfirmationType type,
-                                                     const int count)
-    {
-    TRACE_ENTRY_POINT;
-    int retStatus = 0;
-
-    
-    HbMessageBox popup(HbMessageBox::MessageTypeQuestion);
-    popup.setIconVisible(true);
-    popup.setTimeout(HbPopup::NoTimeout);
-       
-    QString text = 0;
-    
-    switch(type)
-        {
-        case CalenActionUiUtils::EDeleteEntry:
-            {
-            // TODO: Add the text id
-            text.append("Delete entry?");
-            break;
-            }
-        case CalenActionUiUtils::EDeleteToDo:
-            {
-            text.append(hbTrId("txt_calendar_info_delete_todo_note"));
-            break;
-            }
-        case CalenActionUiUtils::EDeleteToDos:
-            {//"Delete %N to-do notes?"
-            // TODO: Add the text id
-            text.append("Delete %N to-do's?").arg(count);
-            break;
-            }
-        case CalenActionUiUtils::EDeleteAll:
-            {
-            text.append(hbTrId("txt_calendar_info_delete_all_calendar_entries"));
-            break;
-            }
-        default:
-            break;
-        }
-    
-    popup.setText(text);
-    		
-	popup.setPrimaryAction(new HbAction(
-								hbTrId("txt_calendar_button_delete"), &popup));
-	popup.setSecondaryAction(new HbAction(
-								hbTrId("txt_calendar_button_cancel"), &popup));
-	HbAction *selected = popup.exec();
-	if (selected == popup.primaryAction()) { 
-		retStatus = 1;
-	}
-
-    TRACE_EXIT_POINT
-    return retStatus;
-    }
-
-
-
 // End of file
--- a/calendarui/controller/src/calencontroller.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/src/calencontroller.cpp	Tue May 18 13:16:49 2010 +0100
@@ -51,6 +51,7 @@
     TRACE_ENTRY_POINT;
     iIsFromServiceFrmWrk = isFromServiceFrmwrk;
     iNextServicesCommandBase = KCustomCommandRangeStart;
+    iRefCount = 0;
     
     // Store the pointer in tls, also avoid multiple creations
     checkMultipleCreation();
@@ -171,7 +172,24 @@
     TRACE_EXIT_POINT;
     return self;    
     }
+
+// ----------------------------------------------------------------------------
+// CCalenController::ReleaseCustomisations
+// Releases any plugins by deleting the customisation manager
+// should only be called on exiting by the application.
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CCalenController::ReleaseCustomisations()
+    {
+    TRACE_ENTRY_POINT;
     
+    delete iCustomisationManager;
+    iCustomisationManager = NULL;
+    
+    TRACE_EXIT_POINT;
+    }
+
 // ----------------------------------------------------------------------------
 // CCalenController::Release
 // Decrement the reference count of this singleton.
@@ -204,14 +222,38 @@
 CCalenController::~CCalenController()
     {
     TRACE_ENTRY_POINT;
+    
     if ( iServices )
         {
         iServices->Release();
         }
-    delete iNotifier;
-    delete iActionUi;
-    delete iViewManager;
-    delete iCustomisationManager;
+    
+    if( iNotifier )
+		{
+    	delete iNotifier;
+    	iNotifier = NULL;
+		}
+    
+   if( iActionUi )
+	   {
+	   delete iActionUi;
+	   iActionUi = NULL;
+	   }
+   
+    if( iViewManager )
+		{
+    	delete iViewManager;
+    	iViewManager = NULL;
+		}
+    
+    if( iCustomisationManager )
+		{
+    	delete iCustomisationManager;
+    	iCustomisationManager = NULL;
+		}
+    
+    
+    Dll::SetTls( NULL );
     
     TRACE_EXIT_POINT;
     }
--- a/calendarui/controller/src/calendeleteui.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/src/calendeleteui.cpp	Tue May 18 13:16:49 2010 +0100
@@ -20,6 +20,7 @@
 #include <QtGui>
 #include <hbdatetimepicker.h>
 #include <hbdialog.h>
+#include <hbmessagebox.h>
 #include <hbaction.h>
 #include <hblabel.h>
 #include <hbradiobuttonlist.h>
@@ -29,7 +30,6 @@
 // User includes
 #include "calendarui_debug.h"
 #include "calendeleteui.h"
-#include "hb_calencommands.hrh"
 #include "calencontext.h"
 #include "calencontroller.h"
 #include "CleanupResetAndDestroy.h"
@@ -139,28 +139,35 @@
     {
     TRACE_ENTRY_POINT;
     TBool continueCommand(EFalse);
-   
+    
     switch( aCommand.Command() )
         {
         case ECalenDeleteCurrentEntry:
-            
-            DeleteCurrentEntryL(); // Entry & instance
+        	mDeleteCommand = ECalenDeleteCurrentEntry;
+        	DeleteCurrentEntryL(); // Entry & instance
             break;
 
         case ECalenDeleteSeries:
-            DeleteThisOrAllL( AgendaUtil::ThisAndAll );
+        	mDeleteCommand = ECalenDeleteSeries;
+        	DeleteThisOrAllL( AgendaUtil::ThisAndAll );
             break;
             
         case ECalenDeleteCurrentOccurrence:
-            DeleteThisOrAllL( AgendaUtil::ThisOnly );
+        	mDeleteCommand = ECalenDeleteCurrentOccurrence;
+        	DeleteThisOrAllL( AgendaUtil::ThisOnly );
             break;
             
         case ECalenDeleteEntryWithoutQuery:
-            continueCommand = DeleteEntryWithoutQueryL();
+        	//TODO:
+        	// This case is not handled currently as no such commands
+        	// has been issued. So this has to be handled once we start 
+        	// issuing the command. 
+        	/*continueCommand = DeleteEntryWithoutQueryL();*/
             break;
 
         case ECalenDeleteAllEntries:
-            DeleteAllEntriesL(); // EntryView & instance
+        	mDeleteCommand = ECalenDeleteAllEntries;
+        	DeleteAllEntriesL(); // EntryView & instance
             break;
 
         case ECalenDeleteEntriesBeforeDate:
@@ -186,26 +193,21 @@
 // ----------------------------------------------------------------------------
 //
 void CalenDeleteUi::DeleteThisOrAllL( AgendaUtil::RecurrenceRange aRepeatType )
-    {
-    TRACE_ENTRY_POINT;
-    
-    bool isDeleted( false );
-    
-    if( iController.context().instanceId().mEntryLocalUid )
-        {
-        AgendaEntry instance = 
-            CalenActionUiUtils::findPossibleInstanceL(iController.context().instanceId(),
-                                                   iController.Services().agendaInterface() );
-         if( !instance.isNull() )
-            {
-            isDeleted = DeleteSingleInstanceL( instance, aRepeatType );
-            }
-        }
-    iController.BroadcastNotification( isDeleted? ECalenNotifyEntryDeleted :
-                                                               ECalenNotifyDeleteFailed );
-    
-    TRACE_EXIT_POINT;
-    }
+{
+	TRACE_ENTRY_POINT;
+
+	if( iController.context().instanceId().mEntryLocalUid )
+	{
+		AgendaEntry instance = CalenActionUiUtils::findPossibleInstanceL(
+									iController.context().instanceId(),
+									iController.Services().agendaInterface() );
+		if( !instance.isNull() )
+		{
+			DeleteSingleInstanceL( instance, aRepeatType );
+		}
+	}
+	TRACE_EXIT_POINT;
+}
 
 // ----------------------------------------------------------------------------
 // CalenDeleteUi::DeleteEntryWithoutQueryL()
@@ -228,7 +230,7 @@
 
 	    if(!iMoreEntriesToDelete)
 		    {
-		    iDisplayQuery = ShowMultipleEntriesDeleteQueryL(iMutlipleContextIdsCount);
+		    //iDisplayQuery = ShowMultipleEntriesDeleteQueryL(iMutlipleContextIdsCount);
 		    }
 		
 		if(iDisplayQuery)
@@ -290,47 +292,38 @@
 //
 void CalenDeleteUi::DeleteCurrentEntryL()
 {
-    TRACE_ENTRY_POINT;
+	TRACE_ENTRY_POINT;
+
+	// Make sure we're focused on an entry.
+	if (iController.context().instanceId().mEntryLocalUid) {
+		// Fetch the entry
+		AgendaEntry entry = iController.Services().agendaInterface()->fetchById(
+				iController.context().instanceId().mEntryLocalUid);
 
-    bool deleted( false );
-    TCalenNotification notification = ECalenNotifyDeleteFailed;
-    
-    // Make sure we're focused on an entry.
-    if (iController.context().instanceId().mEntryLocalUid) {
-        // Fetch the entry
-        AgendaEntry entry = iController.Services().agendaInterface()->fetchById(
-                                iController.context().instanceId().mEntryLocalUid);
-        
-        // Check if the entry is a To-Do
-        if (AgendaEntry::TypeTodo == entry.type()) {
-            if(!entry.isNull()) {
-                deleted = DeleteEntryL(entry);
-                if(deleted) {
-                    // Delete is successful
-                    notification = ECalenNotifyEntryDeleted;
-                }
-            }
-        }
-        else {
-            if (entry.isRepeating() || !entry.recurrenceId().isNull()) {
-                // Show a confirmation note whether the user
-                // wants to delete the single instance or all of them
-                showRepeatingEntryDeleteQuery();
-            } else {
-                // If the entry is not a repeating entry,
-                // delete it directly
-                deleted = DeleteEntryL(entry);
-                if (deleted) {
-                    // Delete is successful
-                    notification = ECalenNotifyEntryDeleted;
-                }
-            }
-        }
-    }
-
-    iController.BroadcastNotification( notification );
-
-    TRACE_EXIT_POINT;
+		// Check if the entry is a To-Do
+		if (AgendaEntry::TypeTodo == entry.type()) {
+			if(!entry.isNull()) {
+				showDeleteQuery(entry.type() == AgendaEntry::TypeTodo ?
+															EDeleteToDo :
+															EDeleteEntry );
+			}
+		}
+		else {
+			if (entry.isRepeating() || !entry.recurrenceId().isNull()) {
+				// Show a confirmation note whether the user
+				// wants to delete the single instance or all of them
+				showRepeatingEntryDeleteQuery();
+			} else {
+				// If the entry is not a repeating entry,
+				// delete it directly
+				// Save the entry for later reference in the slot
+				showDeleteQuery(entry.type() == AgendaEntry::TypeTodo ?
+															EDeleteToDo :
+															EDeleteEntry );
+			}
+		}
+	}
+	TRACE_EXIT_POINT;
 }
 
 // ----------------------------------------------------------------------------
@@ -341,24 +334,10 @@
 //
 void CalenDeleteUi::DeleteAllEntriesL()
     {
-    TRACE_ENTRY_POINT;
-
     ASSERT( !iIsDeleting );
 
-    const int buttonId = CalenActionUiUtils::showDeleteConfirmationQueryL( 
-                                                                        CalenActionUiUtils::EDeleteAll );   
-    if( buttonId )
-        {
-        HandleDeleteMultipleEventsL( AgendaUtil::minTime(), AgendaUtil::maxTime(),1 );
-        }
-    else
-        {
-        // notify delete failed
-        iController.BroadcastNotification(ECalenNotifyDeleteFailed); 
-        }
-
-    TRACE_EXIT_POINT;
-    }
+    showDeleteQuery(EDeleteAll );
+	}
 
 // ----------------------------------------------------------------------------
 // CalenDeleteUi::DeleteEntriesBeforeDateL
@@ -369,63 +348,72 @@
 void CalenDeleteUi::DeleteEntriesBeforeDateL()
     {
     TRACE_ENTRY_POINT;
-
     ASSERT( !iIsDeleting );
-
-    TCalenNotification notification = ECalenNotifyDeleteFailed;
     
     // launch the datepicker
-    mIsDateValid = false;
     dateQuery();
-
-    if( mIsDateValid )
-        {
-        // Do delete only if inputted day is after beginning of range
-        if( mDateTime > AgendaUtil::minTime() )
-            {
-            // Two pass delete:
-            // 1. pass
-            // To prevent destroying entries starting and ending midnight
-            // subtract one second and do delete on that range.
-            mDateTime = mDateTime.addSecs(-1);
-            mDateTime = ( mDateTime > AgendaUtil::minTime()? mDateTime :  AgendaUtil::minTime());
-
-            HandleDeleteMultipleEventsL( AgendaUtil::minTime(),
-                                                    mDateTime,1 );
-            notification = ECalenNotifyMultipleEntriesDeleted;
-            }
-        }
-
-    iController.BroadcastNotification( notification );
     TRACE_EXIT_POINT;
     }
-    
+
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::dateQuery
+// Launches the popup for the date selection
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
 void CalenDeleteUi::dateQuery()
 	{
 	// Create a popup with datepicker to select the date.
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout );
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
+	popUp->setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_set_date")));
+	
 	QDateTime currentDateTime(CalenDateUtils::today());
 	QDate currentDate(currentDateTime.date());
-	mDatePicker = new  HbDateTimePicker(currentDate);
+	if(mDatePicker) {
+		mDatePicker = NULL;
+	}
+	mDatePicker = new  HbDateTimePicker(popUp);
 	mDatePicker->setMinimumDate(CalenDateUtils::minTime().date());
 	mDatePicker->setMaximumDate(currentDate);
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout );
-	popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_title_set_date")));
-	popUp.setContentWidget(mDatePicker);  
-	HbAction *okAction = new HbAction(hbTrId("txt_calendar_button_dialog_delete"));
-	popUp.setPrimaryAction(okAction);
-	connect(okAction,SIGNAL(triggered()),this,SLOT(getSelectedDate()));
-	connect(okAction,SIGNAL(triggered()),&popUp,SLOT(close()));
-	popUp.setSecondaryAction(new HbAction(hbTrId("txt_common_button_cancel"),&popUp));
-	popUp.exec();
+	mDatePicker->setDate(currentDate);
+
+	popUp->setContentWidget(mDatePicker);  
+	
+	popUp->addAction(new HbAction(hbTrId("txt_calendar_button_dialog_delete")));
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel"),popUp));
+	// Show the popup
+	popUp->open(this, SLOT(handleDateQuery(HbAction*)));
 	}
 
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::handleDateQuery
+// Handles the selection for the date query
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenDeleteUi::handleDateQuery(HbAction* action)
+{
+	if(action->text() == hbTrId("txt_calendar_button_dialog_delete")) {
+		getSelectedDateAndDelete();
+	}else {
+		handleDeleteCancel();
+	}
+}
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::showRepeatingEntryDeleteQuery
+// Launches the popup for deleting the repeating entry
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
 void CalenDeleteUi::showRepeatingEntryDeleteQuery()
 {
-    HbDialog popUp;
-    popUp.setDismissPolicy(HbDialog::NoDismiss);
-    popUp.setTimeout(HbDialog::NoTimeout);
+    HbDialog *popUp = new HbDialog();
+    popUp->setDismissPolicy(HbDialog::NoDismiss);
+    popUp->setTimeout(HbDialog::NoTimeout);
+    popUp->setAttribute( Qt::WA_DeleteOnClose, true );
     
     QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
     HbWidget *editWidget = new HbWidget();
@@ -441,38 +429,67 @@
 
     layout->addItem(editButtonList);
     
-    popUp.setContentWidget(editWidget);
-    popUp.setHeadingWidget(new HbLabel(
+    popUp->setContentWidget(editWidget);
+    popUp->setHeadingWidget(new HbLabel(
 						hbTrId("txt_calendar_title_delete_repeated_entry")));
 
-    connect(editButtonList, SIGNAL(itemSelected(int)), this,
-            SLOT(handleRepeatedEntryDelete(int)));
-    connect(editButtonList, SIGNAL(itemSelected(int)), &popUp, SLOT(close()));
-
-    // Create secondary action
+    // Add cancel action
     HbAction *cancelAction = new HbAction(
 							hbTrId("txt_calendar_button_softkey1_cancel"));
-    popUp.setSecondaryAction(cancelAction);
-    connect(cancelAction, SIGNAL(triggered()), this, SLOT(handleCancel()));
-    connect(cancelAction, SIGNAL(triggered()), &popUp, SLOT(close()));
+    popUp->addAction(cancelAction);
+    connect(editButtonList, SIGNAL(itemSelected(int)), this,
+										SLOT(handleRepeatedEntryDelete(int)));
+    connect(editButtonList, SIGNAL(itemSelected(int)), popUp, SLOT(close()));
+    connect(cancelAction, SIGNAL(triggered()), this, 
+										SLOT(handleDeleteCancel()));
     
     // Show the popup
-    popUp.exec();
+    popUp->open();
+}
+
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::handleDeleteCancel
+// Handles the cancel action
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenDeleteUi::handleDeleteCancel()
+{
+	iController.BroadcastNotification(ECalenNotifyDeleteFailed);
 }
 
-void CalenDeleteUi::getSelectedDate()
-	{  
-    QDate selectedDate(mDatePicker->date());
-        
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::getSelectedDateAndDelete
+// Deletes the entries before the selected date
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenDeleteUi::getSelectedDateAndDelete()
+{
+	QDate selectedDate(mDatePicker->date());
+
 	// Check if the date is within the range.
-	if(selectedDate.isValid())
-		{
+	if(selectedDate.isValid()) {
 		QTime time(0,0,0,0);
-		mDateTime.setDate(selectedDate);
-		mDateTime.setTime(time);
-		mIsDateValid = true;
+		QDateTime dateTime;
+		dateTime.setDate(selectedDate);
+		dateTime.setTime(time);
+		// Do delete only if inputted day is after beginning of range
+		if(dateTime > AgendaUtil::minTime()) {
+			// Two pass delete:
+			// 1. pass
+			// To prevent destroying entries starting and ending midnight
+			// subtract one second and do delete on that range.
+			dateTime = dateTime.addSecs(-1);
+			dateTime = ( dateTime > AgendaUtil::minTime()? dateTime :  AgendaUtil::minTime());
+
+			HandleDeleteMultipleEventsL( AgendaUtil::minTime(), dateTime,1 );
+			iController.BroadcastNotification(ECalenNotifyEntryDeleted);
+		}else {
+			iController.BroadcastNotification(ECalenNotifyDeleteFailed);
 		}
-    }
+	}
+}
 
 void CalenDeleteUi::handleRepeatedEntryDelete(int index)
 {
@@ -498,6 +515,127 @@
     }
 }
 
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::showDeleteQuery
+// Launches the popup for deleting the instance/instances
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenDeleteUi::showDeleteQuery(const TDeleteConfirmationType type,
+                                                     const int count)
+    {
+    HbMessageBox *popup = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
+    popup->setDismissPolicy(HbDialog::NoDismiss);
+    popup->setTimeout(HbDialog::NoTimeout);
+    popup->setAttribute( Qt::WA_DeleteOnClose, true );
+    
+    QString text = 0;
+    
+    switch(type)
+        {
+        case EDeleteEntry:
+            {
+            // TODO: Add the text id
+            text.append("Delete entry?");
+            break;
+            }
+        case EDeleteToDo:
+            {
+            text.append(hbTrId("txt_calendar_info_delete_todo_note"));
+            break;
+            }
+        case EDeleteToDos:
+            {//"Delete %N to-do notes?"
+            // TODO: Add the text id
+            text.append("Delete %N to-do's?").arg(count);
+            break;
+            }
+        case EDeleteAll:
+            {
+            text.append(hbTrId("txt_calendar_info_delete_all_calendar_entries"));
+            break;
+            }
+        default:
+            break;
+        }
+    
+    popup->setText(text);
+    	
+    QList<QAction*> list = popup->actions();
+    for(int i=0; i < list.count(); i++)
+        {
+        popup->removeAction(list[i]);
+        }
+    popup->addAction(new HbAction(hbTrId("txt_calendar_button_delete"), popup));
+    popup->addAction(new HbAction(
+    		hbTrId("txt_calendar_button_cancel"), popup));
+    popup->open(this, SLOT(handleDeletion(HbAction*)));
+    }
+
+// ----------------------------------------------------------------------------
+// CalenDeleteUi::handleDeletion
+// Deletes the entries based on the user selection
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenDeleteUi::handleDeletion(HbAction* action)
+{
+	TCalenNotification notification = ECalenNotifyDeleteFailed;
+	
+	if(action->text() == hbTrId("txt_calendar_button_delete")) {
+		
+		switch (mDeleteCommand) {
+			
+			case ECalenDeleteCurrentEntry:
+			{
+				// Get the entry
+				AgendaEntry entry = 
+						iController.Services().agendaInterface()->fetchById(
+							iController.context().instanceId().mEntryLocalUid);
+				// Delete the entry if the delete button is been pressed
+				iController.Services().agendaInterface()->deleteEntry(entry.id());
+				notification = ECalenNotifyEntryDeleted;
+			}
+				break;
+			
+			case ECalenDeleteSeries:
+			case ECalenDeleteCurrentOccurrence:
+			{
+				AgendaEntry instance = 
+						CalenActionUiUtils::findPossibleInstanceL(
+								iController.context().instanceId(),
+								iController.Services().agendaInterface() );
+				QDateTime recId = instance.recurrenceId().toUTC();
+				const bool child = recId.isNull();
+
+				if( !child || mRecurrenceRange == AgendaUtil::ThisOnly 
+						|| mRecurrenceRange == AgendaUtil::ThisAndAll) {
+					iController.Services().agendaInterface()->deleteRepeatedEntry( 
+							instance, mRecurrenceRange );
+				}
+				notification = ECalenNotifyEntryDeleted;
+			}
+				break;
+			
+			case ECalenDeleteAllEntries:
+			{
+				HandleDeleteMultipleEventsL( AgendaUtil::minTime(), 
+											AgendaUtil::maxTime(),1 );
+				notification = ECalenNotifyEntryDeleted;
+			}
+				break;
+			
+			default:
+				break;
+				
+		}
+	}
+	// If the user presses cancel button the notification will be
+	// ECalenNotifyDeleteFailed as default.
+	// Notify the status
+	iController.BroadcastNotification(notification);
+}
+
 void CalenDeleteUi::entryDeleted(ulong id)
 {
     if (iController.context().instanceId().mEntryLocalUid == id) {
@@ -639,11 +777,11 @@
 // (other items were commented in a header).
 // -----------------------------------------------------------------------------
 //
-TBool CalenDeleteUi::DeleteSingleInstanceL( AgendaEntry& aInstance )
+void CalenDeleteUi::DeleteSingleInstanceL( AgendaEntry& aInstance )
     {
     TRACE_ENTRY_POINT;
+    DoDeleteSingleInstanceL( aInstance, EFalse, AgendaUtil::ThisAndAll );
     TRACE_EXIT_POINT;
-    return DoDeleteSingleInstanceL( aInstance, EFalse, AgendaUtil::ThisAndAll );
     }
 
 // -----------------------------------------------------------------------------
@@ -652,12 +790,13 @@
 // (other items were commented in a header).
 // -----------------------------------------------------------------------------
 //
-TBool CalenDeleteUi::DeleteSingleInstanceL( AgendaEntry& aInstance, 
+void CalenDeleteUi::DeleteSingleInstanceL( AgendaEntry& aInstance, 
                                 AgendaUtil::RecurrenceRange aRepeatType )
     {
     TRACE_ENTRY_POINT;
+    DoDeleteSingleInstanceL( aInstance, ETrue, aRepeatType );
     TRACE_EXIT_POINT;
-    return DoDeleteSingleInstanceL( aInstance, ETrue, aRepeatType );
+    
     }
 
 // -----------------------------------------------------------------------------
@@ -669,107 +808,43 @@
 // (other items were commented in a header).
 // -----------------------------------------------------------------------------
 //
-TBool CalenDeleteUi::DoDeleteSingleInstanceL( AgendaEntry& aInstance,
-                                               bool aHasRepeatType,
-                                               AgendaUtil::RecurrenceRange aRepeatType )
-    {
-    TRACE_ENTRY_POINT;
-
-    bool repeating = aInstance.isRepeating();
-
-    if( !repeating )
-        {
-        // Even though there is no RRule, the entry might
-        // have a list of rdates.
-       QList<QDate> rDates = aInstance.rDates();
-        repeating = ( rDates.count() > 0 );
-        }
-    QDateTime recId = aInstance.recurrenceId().toUTC();
-    const bool child = recId.isNull();
-
-    if( !aHasRepeatType )
-        {
-        aRepeatType = AgendaUtil::ThisAndAll;
-        }
+void CalenDeleteUi::DoDeleteSingleInstanceL(
+									AgendaEntry& aInstance,
+									bool aHasRepeatType,
+									AgendaUtil::RecurrenceRange aRepeatType )
+{
+	TRACE_ENTRY_POINT;
+	bool repeating = aInstance.isRepeating();
 
-    bool doDelete( ETrue );
-
-    if( !aHasRepeatType && ( child || repeating ) && ( aInstance.type() != AgendaEntry::TypeAnniversary ) )
-        {
-        //doDelete = CalenActionUiUtils::ShowRepeatTypeQueryL( aRepeatType,
-          //                                                 CalenActionUiUtils::EDelete );
-        }
-    else
-        {
-        doDelete = CalenActionUiUtils::showDeleteConfirmationQueryL(aInstance.type() == AgendaEntry::TypeTodo ?
-                                                                   CalenActionUiUtils::EDeleteToDo :
-                                                                   CalenActionUiUtils::EDeleteEntry );
-        }
-        
-    if( doDelete )
-        {
-        if( !child || aRepeatType == AgendaUtil::ThisOnly )
-            {
-            iController.Services().agendaInterface()->deleteRepeatedEntry( aInstance, aRepeatType );
-            }
-        else if( aRepeatType == AgendaUtil::ThisAndAll )
-            {
-            iController.Services().agendaInterface()->deleteRepeatedEntry( aInstance, aRepeatType );
-            }
-        }
+	if( !repeating ) {
+		// Even though there is no RRule, the entry might
+		// have a list of rdates.
+		QList<QDate> rDates = aInstance.rDates();
+		repeating = ( rDates.count() > 0 );
+	}
+	QDateTime recId = aInstance.recurrenceId().toUTC();
+	const bool child = recId.isNull();
 
-    TRACE_EXIT_POINT;
-    return doDelete;
-    }
-
-// -----------------------------------------------------------------------------
-// CalenDeleteUi::DeleteEntryL
-// Deletes an entry from the database
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TBool CalenDeleteUi::DeleteEntryL( AgendaEntry& entry )
-    {
-    TRACE_ENTRY_POINT;
-
-    TBool doDelete = CalenActionUiUtils::showDeleteConfirmationQueryL(entry.type() == AgendaEntry::TypeTodo ?
-                                                                      CalenActionUiUtils::EDeleteToDo :
-                                                                      CalenActionUiUtils::EDeleteEntry );
-    
-    if( doDelete )
-        {
-        iController.Services().agendaInterface()->deleteEntry(entry.id());
-        }
+	if( !aHasRepeatType ) {
+		aRepeatType = AgendaUtil::ThisAndAll;
+	}
+	// For later reference in handleDeletion()
+	mRecurrenceRange = aRepeatType;
 
-    TRACE_EXIT_POINT;
-    return doDelete;
-    }
-
-// -----------------------------------------------------------------------------
-// CalenDeleteUi::ShowMultipleEntriesDeleteQueryL
-// For displaying multiple entries deletion confirmation query
-// -----------------------------------------------------------------------------
-//
-TInt CalenDeleteUi::ShowMultipleEntriesDeleteQueryL(int aCount)
+	if( !aHasRepeatType && ( child || repeating ) && 
+			( aInstance.type() != AgendaEntry::TypeAnniversary ) ) {
+		//doDelete = CalenActionUiUtils::ShowRepeatTypeQueryL( aRepeatType,
+		//                                                 CalenActionUiUtils::EDelete );
+	}
+	else
 	{
-    TRACE_ENTRY_POINT;
-    if( aCount > 1 )
-        {
-        TRACE_EXIT_POINT;
-        return CalenActionUiUtils::showDeleteConfirmationQueryL(CalenActionUiUtils::EDeleteToDos, aCount );
-        }
-    else if( aCount ==  1 )
-        {
-        TRACE_EXIT_POINT;
-        return CalenActionUiUtils::showDeleteConfirmationQueryL(CalenActionUiUtils::EDeleteToDo);
-        }
-    else
-        {        
-        TRACE_EXIT_POINT;
-        return 0;   //return 0 for other invalid aCount value ( < 0 )
-        }   
-    
+		showDeleteQuery(aInstance.type() == AgendaEntry::TypeTodo ?
+														EDeleteToDo :
+														EDeleteEntry );
 	}
+	TRACE_EXIT_POINT;
+}
+
 
 // -----------------------------------------------------------------------------
 // CalenDeleteUi::DialogDismissedL
--- a/calendarui/controller/src/calenviewmanager.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/controller/src/calenviewmanager.cpp	Tue May 18 13:16:49 2010 +0100
@@ -53,8 +53,16 @@
 	mMonthViewDocLoader = NULL;
 	mDayViewDocLoader = NULL;	
 	mDayViewAltDocLoader = NULL;
+	mCalenDayView = NULL;
+	mCalenMonthView = NULL;
+	mCalenDayViewAlt = NULL;
 	
-	mController.MainWindow().setItemVisible(Hb::NaviPaneItem, false);
+	// Connect to instance view and entry view creation signals from agenda
+	// interface
+	connect(mController.agendaInterface(), SIGNAL(instanceViewCreationCompleted(int)),
+	        this, SLOT(handleInstanceViewCreation(int)));
+	connect(mController.agendaInterface(), SIGNAL(entryViewCreationCompleted(int)),
+		        this, SLOT(handleEntryViewCreation(int)));
 	
 	if (isFromServiceFrmwrk) {
 		// Dont load any views until our remote slot gets called in
@@ -69,7 +77,7 @@
 		// Connect to the view ready signal so that we construct other view 
 		// once this view is shown
 		connect(&mController.MainWindow(), SIGNAL(viewReady()), 
-						this, SLOT(constructOtherViews()));
+						this, SLOT(handleMainViewReady()));
 		
 		mController.MainWindow().addView(mCalenMonthView);
 		mController.MainWindow().setCurrentView(mCalenMonthView);
@@ -106,18 +114,28 @@
 void CalenViewManager::constructAndActivateView(int view)
 {
 	TRACE_ENTRY_POINT;
+	// We are here because, some other application is launching calendar with 
+	// the view, hence connect to viewReady() signal to do any lazy loading
+	// in the slot
+	
+	// Connect to the view ready signal so that we construct other view 
+	// once this view is shown
+	connect(&mController.MainWindow(), SIGNAL(viewReady()), 
+					this, SLOT(handleMainViewReady()));
 	if (view == ECalenMonthView) {
 		mFirstView = ECalenMonthView;
 		loadMonthView();
 		ActivateDefaultViewL(ECalenMonthView);
 		// Add month view to mainwindow.
 		mController.MainWindow().addView(mCalenMonthView);
+		mController.MainWindow().setCurrentView(mCalenMonthView);
 	} else if (view == ECalenDayView) {
 		mFirstView = ECalenDayView;
 		loadDayView();
 		ActivateDefaultViewL(ECalenDayView);
 		// Add day view to mainwindow.
 		mController.MainWindow().addView(mCalenDayView);
+		mController.MainWindow().setCurrentView(mCalenDayView);
 	}
 	TRACE_EXIT_POINT;
 }
@@ -150,7 +168,7 @@
 	// Get the calenmonth view from the loader.
 	mCalenMonthView = static_cast<CalenMonthView *> 
 							(mMonthViewDocLoader->findWidget(CALEN_MONTHVIEW));
-	Q_ASSERT_X(mCalenDayView, "calenviewmanager.cpp", 
+	Q_ASSERT_X(mCalenMonthView, "calenviewmanager.cpp", 
 											"Unable to load calenMonth view");
 	
 	// Setup the month view.
@@ -192,6 +210,27 @@
 }
 
 // ----------------------------------------------------------------------------
+// CalenViewManager::handleMainViewReady
+// Slot to handle viewReady() signal from mainwindow
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::handleMainViewReady()
+{
+	// Construct the month view part that is kept for lazy loading
+	if (mCalenMonthView) {
+		mCalenMonthView->doLazyLoading();
+	}
+	
+	// Construct other views
+	constructOtherViews();
+	
+	// disconnect the view ready signal as we dont need it anymore
+	disconnect(&mController.MainWindow(), SIGNAL(viewReady()), 
+			   this, SLOT(handleMainViewReady()));
+}
+
+// ----------------------------------------------------------------------------
 // CalenViewManager::constructOtherViews
 // Constructs the other views apart frm firstview and adds them to main window
 // (other items were commented in a header).
@@ -217,10 +256,6 @@
 
 	// Setup the settings view
 	mSettingsView = new CalenSettingsView(mController.Services());
-	
-	// disconnect the view ready signal as we dont need it anymore
-	disconnect(&mController.MainWindow(), SIGNAL(viewReady()), 
-	           this, SLOT(constructOtherViews()));
 }
 
 // ----------------------------------------------------------------------------
@@ -283,22 +318,22 @@
     mCurrentViewId = ECalenDayView;
     if (mController.MainWindow().currentView() == mCalenDayView) {
         HbEffect::add(mCalenDayView,
-                      ":/fxml/view_show",
+                      ":/fxml/view_hide_back",
                       "hide");
         HbEffect::add(mCalenDayViewAlt,
-                      ":/fxml/view_hide",
+                      ":/fxml/view_show_back",
                       "show");
         mCalenDayViewAlt->doPopulation();
-        mController.MainWindow().setCurrentView(mCalenDayViewAlt, true, Hb::ViewSwitchUseBackAnim);
+        mController.MainWindow().setCurrentView(mCalenDayViewAlt, true, Hb::ViewSwitchUseNormalAnim);
     } else {
         HbEffect::add(mCalenDayViewAlt,
-                      ":/fxml/view_show",
+                      ":/fxml/view_hide_back",
                       "hide");
         HbEffect::add(mCalenDayView,
-                      ":/fxml/view_hide",
+                      ":/fxml/view_show_back",
                       "show");
         mCalenDayView->doPopulation();
-        mController.MainWindow().setCurrentView(mCalenDayView, true, Hb::ViewSwitchUseBackAnim);
+        mController.MainWindow().setCurrentView(mCalenDayView, true, Hb::ViewSwitchUseNormalAnim);
     }
 }
 
@@ -309,6 +344,8 @@
 //
 void CalenViewManager::removeDayViews()
 {
+    mCalenDayView->clearListModel();
+    mCalenDayViewAlt->clearListModel();
     mController.MainWindow().removeView(mCalenDayView);
     mController.MainWindow().removeView(mCalenDayViewAlt);
 }
@@ -358,22 +395,28 @@
 		    if (mController.MainWindow().currentView() == mCalenDayView) {
 		        // This happens when settings view or event viewer is opened
 		        // from the agenda view. Simply repopulate the view
-                mCalenDayView->doPopulation();
-                mController.MainWindow().setCurrentView(mCalenDayView);
+		    	if (mCalenDayView) {
+					mCalenDayView->doPopulation();
+					mController.MainWindow().setCurrentView(mCalenDayView);
+		    	}
 		    } else if (mController.MainWindow().currentView() == mCalenDayViewAlt){
 		        // This happens when settings view or event viewer is opened
 		        // from the agenda view. Simply repopulate the view
-		        mCalenDayViewAlt->doPopulation();
-		        mController.MainWindow().setCurrentView(mCalenDayViewAlt);
+		    	if (mCalenDayViewAlt) {
+					mCalenDayViewAlt->doPopulation();
+					mController.MainWindow().setCurrentView(mCalenDayViewAlt);
+		    	}
 		    } else {
 		        // This is called whenever the day view is opened from the month
 		        // view. Since the day view is not added to the mainwindow,
 		        // add the day views to mainwindow and set any one of them as 
 		        // current view
-		        mCalenDayView->doPopulation();
-		        mController.MainWindow().addView(mCalenDayView);
-		        mController.MainWindow().setCurrentView(mCalenDayView);
-		        mController.MainWindow().addView(mCalenDayViewAlt);
+		    	if (mCalenDayView) {
+		    		mCalenDayView->doPopulation();
+					mController.MainWindow().addView(mCalenDayView);
+					mController.MainWindow().setCurrentView(mCalenDayView);
+					mController.MainWindow().addView(mCalenDayViewAlt);
+		    	}
 		    }
 			break;
 		case ECalenLandscapeDayView:
@@ -611,4 +654,27 @@
 	qDebug() <<"calendar: CalenViewManager::handleEditingStarted <--";
 }
 
+// ----------------------------------------------------------------------------
+// CalenViewManager::handleInstanceViewCreation
+//  Slot to handle completion of instance view creation
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::handleInstanceViewCreation(int status)
+{
+	Q_UNUSED(status);
+	mCalenMonthView->fetchEntriesAndUpdateModel();
+}
+
+// ----------------------------------------------------------------------------
+// CalenViewManager::handleDeletingCompleted
+//  Slot to handle completion of entry view creation
+// (other items were commented in a header).
+// ----------------------------------------------------------------------------
+//
+void CalenViewManager::handleEntryViewCreation(int status)
+{
+	// Nothing Yet
+	Q_UNUSED(status);
+}
 // End of file	--Don't remove this.
--- a/calendarui/eabi/calencontrolleru.def	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/eabi/calencontrolleru.def	Tue May 18 13:16:49 2010 +0100
@@ -11,21 +11,22 @@
 	_ZN16CCalenController19CancelNotificationsEP25MCalenNotificationHandler @ 10 NONAME
 	_ZN16CCalenController20CustomisationManagerEv @ 11 NONAME
 	_ZN16CCalenController21BroadcastNotificationE18TCalenNotification @ 12 NONAME
-	_ZN16CCalenController21checkMultipleCreationEv @ 13 NONAME
-	_ZN16CCalenController24handleServiceManagerSlotEiRK9QDateTime @ 14 NONAME
-	_ZN16CCalenController25RegisterForNotificationsLEP25MCalenNotificationHandler18TCalenNotification @ 15 NONAME
-	_ZN16CCalenController25RegisterForNotificationsLEP25MCalenNotificationHandlerR6RArrayI18TCalenNotificationE @ 16 NONAME
-	_ZN16CCalenController7InfobarEv @ 17 NONAME
-	_ZN16CCalenController7ReleaseEv @ 18 NONAME
-	_ZN16CCalenController7contextEv @ 19 NONAME
-	_ZN16CCalenController8NotifierEv @ 20 NONAME
-	_ZN16CCalenController8ServicesEv @ 21 NONAME
-	_ZN16CCalenController9InstanceLEv @ 22 NONAME
-	_ZN16CCalenController9OfferMenuEP6HbMenu @ 23 NONAME
-	_ZN16CCalenControllerC1Eb @ 24 NONAME
-	_ZN16CCalenControllerC2Eb @ 25 NONAME
-	_ZN16CCalenControllerD1Ev @ 26 NONAME
-	_ZN16CCalenControllerD2Ev @ 27 NONAME
-	_ZTI16CCalenController @ 28 NONAME
-	_ZTV16CCalenController @ 29 NONAME
+	_ZN16CCalenController21ReleaseCustomisationsEv @ 13 NONAME
+	_ZN16CCalenController21checkMultipleCreationEv @ 14 NONAME
+	_ZN16CCalenController24handleServiceManagerSlotEiRK9QDateTime @ 15 NONAME
+	_ZN16CCalenController25RegisterForNotificationsLEP25MCalenNotificationHandler18TCalenNotification @ 16 NONAME
+	_ZN16CCalenController25RegisterForNotificationsLEP25MCalenNotificationHandlerR6RArrayI18TCalenNotificationE @ 17 NONAME
+	_ZN16CCalenController7InfobarEv @ 18 NONAME
+	_ZN16CCalenController7ReleaseEv @ 19 NONAME
+	_ZN16CCalenController7contextEv @ 20 NONAME
+	_ZN16CCalenController8NotifierEv @ 21 NONAME
+	_ZN16CCalenController8ServicesEv @ 22 NONAME
+	_ZN16CCalenController9InstanceLEv @ 23 NONAME
+	_ZN16CCalenController9OfferMenuEP6HbMenu @ 24 NONAME
+	_ZN16CCalenControllerC1Eb @ 25 NONAME
+	_ZN16CCalenControllerC2Eb @ 26 NONAME
+	_ZN16CCalenControllerD1Ev @ 27 NONAME
+	_ZN16CCalenControllerD2Ev @ 28 NONAME
+	_ZTI16CCalenController @ 29 NONAME
+	_ZTV16CCalenController @ 30 NONAME
 
--- a/calendarui/eabi/calenviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/eabi/calenviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,20 +1,20 @@
 EXPORTS
 	_ZN12CalenDayView12doPopulationEv @ 1 NONAME
-	_ZN12CalenDayView18HandleNotificationE18TCalenNotification @ 2 NONAME
-	_ZN12CalenDayView9docLoaderEv @ 3 NONAME
-	_ZN12CalenDayView9setupViewEP14CalenDocLoader @ 4 NONAME
-	_ZN12CalenDayViewC1ER14MCalenServices @ 5 NONAME
-	_ZN12CalenDayViewC2ER14MCalenServices @ 6 NONAME
-	_ZN12CalenDayViewD0Ev @ 7 NONAME
-	_ZN12CalenDayViewD1Ev @ 8 NONAME
-	_ZN12CalenDayViewD2Ev @ 9 NONAME
-	_ZN14CalenMonthGrid10appendRowsEv @ 10 NONAME
-	_ZN14CalenMonthGrid10panGestureERK7QPointF @ 11 NONAME
-	_ZN14CalenMonthGrid11downGestureEi @ 12 NONAME
-	_ZN14CalenMonthGrid11prependRowsEv @ 13 NONAME
-	_ZN14CalenMonthGrid11qt_metacallEN11QMetaObject4CallEiPPv @ 14 NONAME
-	_ZN14CalenMonthGrid11qt_metacastEPKc @ 15 NONAME
-	_ZN14CalenMonthGrid12timerExpiredEv @ 16 NONAME
+	_ZN12CalenDayView14clearListModelEv @ 2 NONAME
+	_ZN12CalenDayView18HandleNotificationE18TCalenNotification @ 3 NONAME
+	_ZN12CalenDayView9docLoaderEv @ 4 NONAME
+	_ZN12CalenDayView9setupViewEP14CalenDocLoader @ 5 NONAME
+	_ZN12CalenDayViewC1ER14MCalenServices @ 6 NONAME
+	_ZN12CalenDayViewC2ER14MCalenServices @ 7 NONAME
+	_ZN12CalenDayViewD0Ev @ 8 NONAME
+	_ZN12CalenDayViewD1Ev @ 9 NONAME
+	_ZN12CalenDayViewD2Ev @ 10 NONAME
+	_ZN14CalenMonthGrid10appendRowsEv @ 11 NONAME
+	_ZN14CalenMonthGrid10panGestureERK7QPointF @ 12 NONAME
+	_ZN14CalenMonthGrid11downGestureEi @ 13 NONAME
+	_ZN14CalenMonthGrid11prependRowsEv @ 14 NONAME
+	_ZN14CalenMonthGrid11qt_metacallEN11QMetaObject4CallEiPPv @ 15 NONAME
+	_ZN14CalenMonthGrid11qt_metacastEPKc @ 16 NONAME
 	_ZN14CalenMonthGrid13itemActivatedERK11QModelIndex @ 17 NONAME
 	_ZN14CalenMonthGrid14setActiveDatesE5QDate @ 18 NONAME
 	_ZN14CalenMonthGrid14setCurrentIdexEi @ 19 NONAME
@@ -25,165 +25,172 @@
 	_ZN14CalenMonthGrid17scrollingFinishedEv @ 24 NONAME
 	_ZN14CalenMonthGrid18orientationChangedEN2Qt11OrientationE @ 25 NONAME
 	_ZN14CalenMonthGrid19getStaticMetaObjectEv @ 26 NONAME
-	_ZN14CalenMonthGrid19setFocusToProperDayEv @ 27 NONAME
-	_ZN14CalenMonthGrid20updateMonthGridModelER5QListI14CalenMonthDataEi @ 28 NONAME
-	_ZN14CalenMonthGrid7setViewEP14CalenMonthView @ 29 NONAME
-	_ZN14CalenMonthGrid9upGestureEi @ 30 NONAME
-	_ZN14CalenMonthGridC1EP13QGraphicsItem @ 31 NONAME
-	_ZN14CalenMonthGridC2EP13QGraphicsItem @ 32 NONAME
-	_ZN14CalenMonthGridD0Ev @ 33 NONAME
-	_ZN14CalenMonthGridD1Ev @ 34 NONAME
-	_ZN14CalenMonthGridD2Ev @ 35 NONAME
-	_ZN14CalenMonthView10createGridEv @ 36 NONAME
-	_ZN14CalenMonthView11qt_metacallEN11QMetaObject4CallEiPPv @ 37 NONAME
-	_ZN14CalenMonthView11qt_metacastEPKc @ 38 NONAME
-	_ZN14CalenMonthView12createEditorEv @ 39 NONAME
-	_ZN14CalenMonthView12doPopulationEv @ 40 NONAME
-	_ZN14CalenMonthView12getActiveDayEv @ 41 NONAME
-	_ZN14CalenMonthView12setActiveDayE9QDateTime @ 42 NONAME
-	_ZN14CalenMonthView13getCurrentDayEv @ 43 NONAME
-	_ZN14CalenMonthView13launchDayViewEv @ 44 NONAME
-	_ZN14CalenMonthView13monthDataListEv @ 45 NONAME
-	_ZN14CalenMonthView14addWeekNumbersEv @ 46 NONAME
-	_ZN14CalenMonthView14firstDayOfGridEv @ 47 NONAME
-	_ZN14CalenMonthView14rowsInFutMonthEv @ 48 NONAME
-	_ZN14CalenMonthView14setDateToLabelEv @ 49 NONAME
-	_ZN14CalenMonthView15dateFromContextERK13MCalenContext @ 50 NONAME
-	_ZN14CalenMonthView15getInstanceListER5QListI11AgendaEntryE9QDateTimeS4_ @ 51 NONAME
-	_ZN14CalenMonthView15onLocaleChangedEi @ 52 NONAME
-	_ZN14CalenMonthView15rowsInPrevMonthEv @ 53 NONAME
-	_ZN14CalenMonthView16getCurrGridIndexEv @ 54 NONAME
-	_ZN14CalenMonthView16setCurrGridIndexEi @ 55 NONAME
-	_ZN14CalenMonthView16staticMetaObjectE @ 56 NONAME DATA 16
-	_ZN14CalenMonthView17changeOrientationEN2Qt11OrientationE @ 57 NONAME
-	_ZN14CalenMonthView17populateNextMonthEv @ 58 NONAME
-	_ZN14CalenMonthView17populatePrevMonthEv @ 59 NONAME
-	_ZN14CalenMonthView17removeWeekNumbersEv @ 60 NONAME
-	_ZN14CalenMonthView18addBackgroundFrameEv @ 61 NONAME
-	_ZN14CalenMonthView18completePopulationEv @ 62 NONAME
-	_ZN14CalenMonthView19getStaticMetaObjectEv @ 63 NONAME
-	_ZN14CalenMonthView19populatePreviewPaneER9QDateTime @ 64 NONAME
-	_ZN14CalenMonthView20prepareForPopulationEv @ 65 NONAME
-	_ZN14CalenMonthView21refreshViewOnGoToDateEv @ 66 NONAME
-	_ZN14CalenMonthView22setContextForActiveDayEi @ 67 NONAME
-	_ZN14CalenMonthView22updateWeekNumGridModelEv @ 68 NONAME
-	_ZN14CalenMonthView23handleChangeOrientationEv @ 69 NONAME
-	_ZN14CalenMonthView23handleGridItemActivatedEv @ 70 NONAME
-	_ZN14CalenMonthView24handlePreviewPaneGestureEb @ 71 NONAME
-	_ZN14CalenMonthView24populateWithInstanceViewEv @ 72 NONAME
-	_ZN14CalenMonthView24updateModelWithPrevMonthEv @ 73 NONAME
-	_ZN14CalenMonthView25handleGridItemLongPressedEiR7QPointF @ 74 NONAME
-	_ZN14CalenMonthView25handleLeftEffectCompletedERKN8HbEffect12EffectStatusE @ 75 NONAME
-	_ZN14CalenMonthView26handleRightEffectCompletedERKN8HbEffect12EffectStatusE @ 76 NONAME
-	_ZN14CalenMonthView26updateModelWithFutureMonthEv @ 77 NONAME
-	_ZN14CalenMonthView35updateMonthDataArrayWithActiveDatesEv @ 78 NONAME
-	_ZN14CalenMonthView7setDateEv @ 79 NONAME
-	_ZN14CalenMonthView9goToTodayEv @ 80 NONAME
-	_ZN14CalenMonthView9setupViewEP14CalenDocLoader @ 81 NONAME
-	_ZN14CalenMonthViewC1ER14MCalenServices @ 82 NONAME
-	_ZN14CalenMonthViewC2ER14MCalenServices @ 83 NONAME
-	_ZN14CalenMonthViewD0Ev @ 84 NONAME
-	_ZN14CalenMonthViewD1Ev @ 85 NONAME
-	_ZN14CalenMonthViewD2Ev @ 86 NONAME
-	_ZN16CalenPreviewPane11qt_metacallEN11QMetaObject4CallEiPPv @ 87 NONAME
-	_ZN16CalenPreviewPane11qt_metacastEPKc @ 88 NONAME
-	_ZN16CalenPreviewPane13populateLabelE9QDateTime @ 89 NONAME
-	_ZN16CalenPreviewPane13stopScrollingEv @ 90 NONAME
-	_ZN16CalenPreviewPane15mousePressEventEP24QGraphicsSceneMouseEvent @ 91 NONAME
-	_ZN16CalenPreviewPane15startAutoScrollEv @ 92 NONAME
-	_ZN16CalenPreviewPane16GetInstanceListLEv @ 93 NONAME
-	_ZN16CalenPreviewPane16staticMetaObjectE @ 94 NONAME DATA 16
-	_ZN16CalenPreviewPane17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 95 NONAME
-	_ZN16CalenPreviewPane17scrollingFinishedEv @ 96 NONAME
-	_ZN16CalenPreviewPane17setNoEntriesLabelEP7HbLabel @ 97 NONAME
-	_ZN16CalenPreviewPane19getStaticMetaObjectEv @ 98 NONAME
-	_ZN16CalenPreviewPane19onTwoSecondsTimeoutEv @ 99 NONAME
-	_ZN16CalenPreviewPane4DateEv @ 100 NONAME
-	_ZN16CalenPreviewPane7setViewEP14CalenMonthView @ 101 NONAME
-	_ZN16CalenPreviewPaneC1ER14MCalenServicesP13QGraphicsItem @ 102 NONAME
-	_ZN16CalenPreviewPaneC2ER14MCalenServicesP13QGraphicsItem @ 103 NONAME
-	_ZN16CalenPreviewPaneD0Ev @ 104 NONAME
-	_ZN16CalenPreviewPaneD1Ev @ 105 NONAME
-	_ZN16CalenPreviewPaneD2Ev @ 106 NONAME
-	_ZN17CalenSettingsView11qt_metacallEN11QMetaObject4CallEiPPv @ 107 NONAME
-	_ZN17CalenSettingsView11qt_metacastEPKc @ 108 NONAME
-	_ZN17CalenSettingsView14initializeFormEv @ 109 NONAME
-	_ZN17CalenSettingsView16staticMetaObjectE @ 110 NONAME DATA 16
-	_ZN17CalenSettingsView18launchPreviousViewEv @ 111 NONAME
-	_ZN17CalenSettingsView19getStaticMetaObjectEv @ 112 NONAME
-	_ZN17CalenSettingsViewC1ER14MCalenServicesP13QGraphicsItem @ 113 NONAME
-	_ZN17CalenSettingsViewC2ER14MCalenServicesP13QGraphicsItem @ 114 NONAME
-	_ZN17CalenSettingsViewD0Ev @ 115 NONAME
-	_ZN17CalenSettingsViewD1Ev @ 116 NONAME
-	_ZN17CalenSettingsViewD2Ev @ 117 NONAME
-	_ZN18CalenDayViewWidgetC1ER14MCalenServicesP14CalenDocLoader @ 118 NONAME
-	_ZN18CalenDayViewWidgetC2ER14MCalenServicesP14CalenDocLoader @ 119 NONAME
-	_ZN18CalenDayViewWidgetD0Ev @ 120 NONAME
-	_ZN18CalenDayViewWidgetD1Ev @ 121 NONAME
-	_ZN18CalenDayViewWidgetD2Ev @ 122 NONAME
-	_ZN21CalenThickLinesDrawer11qt_metacallEN11QMetaObject4CallEiPPv @ 123 NONAME
-	_ZN21CalenThickLinesDrawer11qt_metacastEPKc @ 124 NONAME
-	_ZN21CalenThickLinesDrawer16staticMetaObjectE @ 125 NONAME DATA 16
-	_ZN21CalenThickLinesDrawer19getStaticMetaObjectEv @ 126 NONAME
-	_ZN21CalenThickLinesDrawer5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 127 NONAME
-	_ZN21CalenThickLinesDrawerC1EN17CalendarNamespace10WidgetTypeEP13QGraphicsItem @ 128 NONAME
-	_ZN21CalenThickLinesDrawerC2EN17CalendarNamespace10WidgetTypeEP13QGraphicsItem @ 129 NONAME
-	_ZN21CalenThickLinesDrawerD0Ev @ 130 NONAME
-	_ZN21CalenThickLinesDrawerD1Ev @ 131 NONAME
-	_ZN21CalenThickLinesDrawerD2Ev @ 132 NONAME
-	_ZNK14CalenMonthGrid10metaObjectEv @ 133 NONAME
-	_ZNK14CalenMonthView10metaObjectEv @ 134 NONAME
-	_ZNK16CalenPreviewPane10metaObjectEv @ 135 NONAME
-	_ZNK17CalenSettingsView10metaObjectEv @ 136 NONAME
-	_ZNK21CalenThickLinesDrawer10metaObjectEv @ 137 NONAME
-	_ZTI14CalenMonthGrid @ 138 NONAME
-	_ZTI14CalenMonthView @ 139 NONAME
-	_ZTI16CalenPreviewPane @ 140 NONAME
-	_ZTI17CalenSettingsView @ 141 NONAME
-	_ZTI21CalenThickLinesDrawer @ 142 NONAME
-	_ZTV14CalenMonthGrid @ 143 NONAME
-	_ZTV14CalenMonthView @ 144 NONAME
-	_ZTV16CalenPreviewPane @ 145 NONAME
-	_ZTV17CalenSettingsView @ 146 NONAME
-	_ZTV21CalenThickLinesDrawer @ 147 NONAME
-	_ZThn16_N12CalenDayViewD0Ev @ 148 NONAME
-	_ZThn16_N12CalenDayViewD1Ev @ 149 NONAME
-	_ZThn16_N14CalenMonthGridD0Ev @ 150 NONAME
-	_ZThn16_N14CalenMonthGridD1Ev @ 151 NONAME
-	_ZThn16_N14CalenMonthViewD0Ev @ 152 NONAME
-	_ZThn16_N14CalenMonthViewD1Ev @ 153 NONAME
-	_ZThn16_N16CalenPreviewPaneD0Ev @ 154 NONAME
-	_ZThn16_N16CalenPreviewPaneD1Ev @ 155 NONAME
-	_ZThn16_N17CalenSettingsViewD0Ev @ 156 NONAME
-	_ZThn16_N17CalenSettingsViewD1Ev @ 157 NONAME
-	_ZThn16_N18CalenDayViewWidgetD0Ev @ 158 NONAME
-	_ZThn16_N18CalenDayViewWidgetD1Ev @ 159 NONAME
-	_ZThn16_N21CalenThickLinesDrawerD0Ev @ 160 NONAME
-	_ZThn16_N21CalenThickLinesDrawerD1Ev @ 161 NONAME
-	_ZThn28_N12CalenDayView18HandleNotificationE18TCalenNotification @ 162 NONAME
-	_ZThn8_N12CalenDayViewD0Ev @ 163 NONAME
-	_ZThn8_N12CalenDayViewD1Ev @ 164 NONAME
-	_ZThn8_N14CalenMonthGrid15mousePressEventEP24QGraphicsSceneMouseEvent @ 165 NONAME
-	_ZThn8_N14CalenMonthGrid17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 166 NONAME
-	_ZThn8_N14CalenMonthGridD0Ev @ 167 NONAME
-	_ZThn8_N14CalenMonthGridD1Ev @ 168 NONAME
-	_ZThn8_N14CalenMonthViewD0Ev @ 169 NONAME
-	_ZThn8_N14CalenMonthViewD1Ev @ 170 NONAME
-	_ZThn8_N16CalenPreviewPane15mousePressEventEP24QGraphicsSceneMouseEvent @ 171 NONAME
-	_ZThn8_N16CalenPreviewPane17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 172 NONAME
-	_ZThn8_N16CalenPreviewPaneD0Ev @ 173 NONAME
-	_ZThn8_N16CalenPreviewPaneD1Ev @ 174 NONAME
-	_ZThn8_N17CalenSettingsViewD0Ev @ 175 NONAME
-	_ZThn8_N17CalenSettingsViewD1Ev @ 176 NONAME
-	_ZThn8_N18CalenDayViewWidgetD0Ev @ 177 NONAME
-	_ZThn8_N18CalenDayViewWidgetD1Ev @ 178 NONAME
-	_ZThn8_N21CalenThickLinesDrawer5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 179 NONAME
-	_ZThn8_N21CalenThickLinesDrawerD0Ev @ 180 NONAME
-	_ZThn8_N21CalenThickLinesDrawerD1Ev @ 181 NONAME
-	_ZN14CalenMonthGrid5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 182 NONAME
-	_ZN14CalenMonthView27showHideRegionalInformationEv @ 183 NONAME
-	_ZThn8_N14CalenMonthGrid5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 184 NONAME
-	_ZN16CalenPreviewPane14mouseMoveEventEP24QGraphicsSceneMouseEvent @ 185 NONAME
-	_ZThn8_N16CalenPreviewPane14mouseMoveEventEP24QGraphicsSceneMouseEvent @ 186 NONAME
-	_ZN14CalenMonthView22addRemoveActionsInMenuEv @ 187 NONAME
+	_ZN14CalenMonthGrid19handleAppendingRowsER5QListI14CalenMonthDataE @ 27 NONAME
+	_ZN14CalenMonthGrid19setFocusToProperDayEv @ 28 NONAME
+	_ZN14CalenMonthGrid20handlePrependingRowsER5QListI14CalenMonthDataE @ 29 NONAME
+	_ZN14CalenMonthGrid20updateMonthGridModelER5QListI14CalenMonthDataEib @ 30 NONAME
+	_ZN14CalenMonthGrid24handlePanGestureFinishedEv @ 31 NONAME
+	_ZN14CalenMonthGrid33updateMonthGridWithInActiveMonthsER5QListI14CalenMonthDataE @ 32 NONAME
+	_ZN14CalenMonthGrid34updateMonthGridWithEventIndicatorsER5QListI14CalenMonthDataE @ 33 NONAME
+	_ZN14CalenMonthGrid5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 34 NONAME
+	_ZN14CalenMonthGrid7setViewEP14CalenMonthView @ 35 NONAME
+	_ZN14CalenMonthGrid9upGestureEi @ 36 NONAME
+	_ZN14CalenMonthGridC1EP13QGraphicsItem @ 37 NONAME
+	_ZN14CalenMonthGridC2EP13QGraphicsItem @ 38 NONAME
+	_ZN14CalenMonthGridD0Ev @ 39 NONAME
+	_ZN14CalenMonthGridD1Ev @ 40 NONAME
+	_ZN14CalenMonthGridD2Ev @ 41 NONAME
+	_ZN14CalenMonthView10createGridEv @ 42 NONAME
+	_ZN14CalenMonthView11qt_metacallEN11QMetaObject4CallEiPPv @ 43 NONAME
+	_ZN14CalenMonthView11qt_metacastEPKc @ 44 NONAME
+	_ZN14CalenMonthView12createEditorEv @ 45 NONAME
+	_ZN14CalenMonthView12doPopulationEv @ 46 NONAME
+	_ZN14CalenMonthView12getActiveDayEv @ 47 NONAME
+	_ZN14CalenMonthView12setActiveDayE9QDateTime @ 48 NONAME
+	_ZN14CalenMonthView13doLazyLoadingEv @ 49 NONAME
+	_ZN14CalenMonthView13getCurrentDayEv @ 50 NONAME
+	_ZN14CalenMonthView13launchDayViewEv @ 51 NONAME
+	_ZN14CalenMonthView13monthDataListEv @ 52 NONAME
+	_ZN14CalenMonthView14addWeekNumbersEv @ 53 NONAME
+	_ZN14CalenMonthView14firstDayOfGridEv @ 54 NONAME
+	_ZN14CalenMonthView14rowsInFutMonthEv @ 55 NONAME
+	_ZN14CalenMonthView14setDateToLabelEv @ 56 NONAME
+	_ZN14CalenMonthView15dateFromContextERK13MCalenContext @ 57 NONAME
+	_ZN14CalenMonthView15getInstanceListER5QListI5QDateE9QDateTimeS4_ @ 58 NONAME
+	_ZN14CalenMonthView15onLocaleChangedEi @ 59 NONAME
+	_ZN14CalenMonthView15rowsInPrevMonthEv @ 60 NONAME
+	_ZN14CalenMonthView16getCurrGridIndexEv @ 61 NONAME
+	_ZN14CalenMonthView16onContextChangedEv @ 62 NONAME
+	_ZN14CalenMonthView16setCurrGridIndexEi @ 63 NONAME
+	_ZN14CalenMonthView16staticMetaObjectE @ 64 NONAME DATA 16
+	_ZN14CalenMonthView17changeOrientationEN2Qt11OrientationE @ 65 NONAME
+	_ZN14CalenMonthView17populateNextMonthEv @ 66 NONAME
+	_ZN14CalenMonthView17populatePrevMonthEv @ 67 NONAME
+	_ZN14CalenMonthView17removeWeekNumbersEv @ 68 NONAME
+	_ZN14CalenMonthView18addBackgroundFrameEv @ 69 NONAME
+	_ZN14CalenMonthView18completePopulationEv @ 70 NONAME
+	_ZN14CalenMonthView19getStaticMetaObjectEv @ 71 NONAME
+	_ZN14CalenMonthView19populatePreviewPaneER9QDateTime @ 72 NONAME
+	_ZN14CalenMonthView20prepareForPopulationEv @ 73 NONAME
+	_ZN14CalenMonthView21refreshViewOnGoToDateEv @ 74 NONAME
+	_ZN14CalenMonthView22addRemoveActionsInMenuEv @ 75 NONAME
+	_ZN14CalenMonthView22setContextForActiveDayEi @ 76 NONAME
+	_ZN14CalenMonthView22updateWeekNumGridModelEv @ 77 NONAME
+	_ZN14CalenMonthView23handleChangeOrientationEv @ 78 NONAME
+	_ZN14CalenMonthView23handleGridItemActivatedEv @ 79 NONAME
+	_ZN14CalenMonthView24handlePreviewPaneGestureEb @ 80 NONAME
+	_ZN14CalenMonthView24populateWithInstanceViewEv @ 81 NONAME
+	_ZN14CalenMonthView24updateModelWithPrevMonthEv @ 82 NONAME
+	_ZN14CalenMonthView25handleLeftEffectCompletedERKN8HbEffect12EffectStatusE @ 83 NONAME
+	_ZN14CalenMonthView26fetchEntriesAndUpdateModelEv @ 84 NONAME
+	_ZN14CalenMonthView26handleRightEffectCompletedERKN8HbEffect12EffectStatusE @ 85 NONAME
+	_ZN14CalenMonthView26updateModelWithFutureMonthEv @ 86 NONAME
+	_ZN14CalenMonthView27showHideRegionalInformationEv @ 87 NONAME
+	_ZN14CalenMonthView35updateMonthDataArrayWithActiveDatesEv @ 88 NONAME
+	_ZN14CalenMonthView7setDateEv @ 89 NONAME
+	_ZN14CalenMonthView9goToTodayEv @ 90 NONAME
+	_ZN14CalenMonthView9setupViewEP14CalenDocLoader @ 91 NONAME
+	_ZN14CalenMonthViewC1ER14MCalenServices @ 92 NONAME
+	_ZN14CalenMonthViewC2ER14MCalenServices @ 93 NONAME
+	_ZN14CalenMonthViewD0Ev @ 94 NONAME
+	_ZN14CalenMonthViewD1Ev @ 95 NONAME
+	_ZN14CalenMonthViewD2Ev @ 96 NONAME
+	_ZN16CalenPreviewPane11qt_metacallEN11QMetaObject4CallEiPPv @ 97 NONAME
+	_ZN16CalenPreviewPane11qt_metacastEPKc @ 98 NONAME
+	_ZN16CalenPreviewPane13populateLabelE9QDateTime @ 99 NONAME
+	_ZN16CalenPreviewPane13stopScrollingEv @ 100 NONAME
+	_ZN16CalenPreviewPane14mouseMoveEventEP24QGraphicsSceneMouseEvent @ 101 NONAME
+	_ZN16CalenPreviewPane15mousePressEventEP24QGraphicsSceneMouseEvent @ 102 NONAME
+	_ZN16CalenPreviewPane15startAutoScrollEv @ 103 NONAME
+	_ZN16CalenPreviewPane16GetInstanceListLEv @ 104 NONAME
+	_ZN16CalenPreviewPane16staticMetaObjectE @ 105 NONAME DATA 16
+	_ZN16CalenPreviewPane17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 106 NONAME
+	_ZN16CalenPreviewPane17scrollingFinishedEv @ 107 NONAME
+	_ZN16CalenPreviewPane17setNoEntriesLabelEP7HbLabel @ 108 NONAME
+	_ZN16CalenPreviewPane19getStaticMetaObjectEv @ 109 NONAME
+	_ZN16CalenPreviewPane19onTwoSecondsTimeoutEv @ 110 NONAME
+	_ZN16CalenPreviewPane4DateEv @ 111 NONAME
+	_ZN16CalenPreviewPane7setViewEP14CalenMonthView @ 112 NONAME
+	_ZN16CalenPreviewPaneC1ER14MCalenServicesP13QGraphicsItem @ 113 NONAME
+	_ZN16CalenPreviewPaneC2ER14MCalenServicesP13QGraphicsItem @ 114 NONAME
+	_ZN16CalenPreviewPaneD0Ev @ 115 NONAME
+	_ZN16CalenPreviewPaneD1Ev @ 116 NONAME
+	_ZN16CalenPreviewPaneD2Ev @ 117 NONAME
+	_ZN17CalenSettingsView11qt_metacallEN11QMetaObject4CallEiPPv @ 118 NONAME
+	_ZN17CalenSettingsView11qt_metacastEPKc @ 119 NONAME
+	_ZN17CalenSettingsView14initializeFormEv @ 120 NONAME
+	_ZN17CalenSettingsView16staticMetaObjectE @ 121 NONAME DATA 16
+	_ZN17CalenSettingsView18launchPreviousViewEv @ 122 NONAME
+	_ZN17CalenSettingsView19getStaticMetaObjectEv @ 123 NONAME
+	_ZN17CalenSettingsViewC1ER14MCalenServicesP13QGraphicsItem @ 124 NONAME
+	_ZN17CalenSettingsViewC2ER14MCalenServicesP13QGraphicsItem @ 125 NONAME
+	_ZN17CalenSettingsViewD0Ev @ 126 NONAME
+	_ZN17CalenSettingsViewD1Ev @ 127 NONAME
+	_ZN17CalenSettingsViewD2Ev @ 128 NONAME
+	_ZN18CalenDayViewWidgetC1ER14MCalenServicesP14CalenDocLoader @ 129 NONAME
+	_ZN18CalenDayViewWidgetC2ER14MCalenServicesP14CalenDocLoader @ 130 NONAME
+	_ZN18CalenDayViewWidgetD0Ev @ 131 NONAME
+	_ZN18CalenDayViewWidgetD1Ev @ 132 NONAME
+	_ZN18CalenDayViewWidgetD2Ev @ 133 NONAME
+	_ZN21CalenThickLinesDrawer11qt_metacallEN11QMetaObject4CallEiPPv @ 134 NONAME
+	_ZN21CalenThickLinesDrawer11qt_metacastEPKc @ 135 NONAME
+	_ZN21CalenThickLinesDrawer16staticMetaObjectE @ 136 NONAME DATA 16
+	_ZN21CalenThickLinesDrawer19getStaticMetaObjectEv @ 137 NONAME
+	_ZN21CalenThickLinesDrawer5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 138 NONAME
+	_ZN21CalenThickLinesDrawerC1EN17CalendarNamespace10WidgetTypeEP13QGraphicsItem @ 139 NONAME
+	_ZN21CalenThickLinesDrawerC2EN17CalendarNamespace10WidgetTypeEP13QGraphicsItem @ 140 NONAME
+	_ZN21CalenThickLinesDrawerD0Ev @ 141 NONAME
+	_ZN21CalenThickLinesDrawerD1Ev @ 142 NONAME
+	_ZN21CalenThickLinesDrawerD2Ev @ 143 NONAME
+	_ZNK14CalenMonthGrid10metaObjectEv @ 144 NONAME
+	_ZNK14CalenMonthView10metaObjectEv @ 145 NONAME
+	_ZNK16CalenPreviewPane10metaObjectEv @ 146 NONAME
+	_ZNK17CalenSettingsView10metaObjectEv @ 147 NONAME
+	_ZNK21CalenThickLinesDrawer10metaObjectEv @ 148 NONAME
+	_ZTI14CalenMonthGrid @ 149 NONAME
+	_ZTI14CalenMonthView @ 150 NONAME
+	_ZTI16CalenPreviewPane @ 151 NONAME
+	_ZTI17CalenSettingsView @ 152 NONAME
+	_ZTI21CalenThickLinesDrawer @ 153 NONAME
+	_ZTV14CalenMonthGrid @ 154 NONAME
+	_ZTV14CalenMonthView @ 155 NONAME
+	_ZTV16CalenPreviewPane @ 156 NONAME
+	_ZTV17CalenSettingsView @ 157 NONAME
+	_ZTV21CalenThickLinesDrawer @ 158 NONAME
+	_ZThn16_N12CalenDayViewD0Ev @ 159 NONAME
+	_ZThn16_N12CalenDayViewD1Ev @ 160 NONAME
+	_ZThn16_N14CalenMonthGridD0Ev @ 161 NONAME
+	_ZThn16_N14CalenMonthGridD1Ev @ 162 NONAME
+	_ZThn16_N14CalenMonthViewD0Ev @ 163 NONAME
+	_ZThn16_N14CalenMonthViewD1Ev @ 164 NONAME
+	_ZThn16_N16CalenPreviewPaneD0Ev @ 165 NONAME
+	_ZThn16_N16CalenPreviewPaneD1Ev @ 166 NONAME
+	_ZThn16_N17CalenSettingsViewD0Ev @ 167 NONAME
+	_ZThn16_N17CalenSettingsViewD1Ev @ 168 NONAME
+	_ZThn16_N18CalenDayViewWidgetD0Ev @ 169 NONAME
+	_ZThn16_N18CalenDayViewWidgetD1Ev @ 170 NONAME
+	_ZThn16_N21CalenThickLinesDrawerD0Ev @ 171 NONAME
+	_ZThn16_N21CalenThickLinesDrawerD1Ev @ 172 NONAME
+	_ZThn28_N12CalenDayView18HandleNotificationE18TCalenNotification @ 173 NONAME
+	_ZThn8_N12CalenDayViewD0Ev @ 174 NONAME
+	_ZThn8_N12CalenDayViewD1Ev @ 175 NONAME
+	_ZThn8_N14CalenMonthGrid15mousePressEventEP24QGraphicsSceneMouseEvent @ 176 NONAME
+	_ZThn8_N14CalenMonthGrid17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 177 NONAME
+	_ZThn8_N14CalenMonthGrid5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 178 NONAME
+	_ZThn8_N14CalenMonthGridD0Ev @ 179 NONAME
+	_ZThn8_N14CalenMonthGridD1Ev @ 180 NONAME
+	_ZThn8_N14CalenMonthViewD0Ev @ 181 NONAME
+	_ZThn8_N14CalenMonthViewD1Ev @ 182 NONAME
+	_ZThn8_N16CalenPreviewPane14mouseMoveEventEP24QGraphicsSceneMouseEvent @ 183 NONAME
+	_ZThn8_N16CalenPreviewPane15mousePressEventEP24QGraphicsSceneMouseEvent @ 184 NONAME
+	_ZThn8_N16CalenPreviewPane17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 185 NONAME
+	_ZThn8_N16CalenPreviewPaneD0Ev @ 186 NONAME
+	_ZThn8_N16CalenPreviewPaneD1Ev @ 187 NONAME
+	_ZThn8_N17CalenSettingsViewD0Ev @ 188 NONAME
+	_ZThn8_N17CalenSettingsViewD1Ev @ 189 NONAME
+	_ZThn8_N18CalenDayViewWidgetD0Ev @ 190 NONAME
+	_ZThn8_N18CalenDayViewWidgetD1Ev @ 191 NONAME
+	_ZThn8_N21CalenThickLinesDrawer5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 192 NONAME
+	_ZThn8_N21CalenThickLinesDrawerD0Ev @ 193 NONAME
+	_ZThn8_N21CalenThickLinesDrawerD1Ev @ 194 NONAME
 
--- a/calendarui/regionalplugins/lunarchinese/src/CalenLunarChinesePlugin.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/regionalplugins/lunarchinese/src/CalenLunarChinesePlugin.cpp	Tue May 18 13:16:49 2010 +0100
@@ -375,21 +375,27 @@
 	TRACE_ENTRY_POINT;	
 	QString text = QString::fromUtf16(aMsgText.Ptr(),aMsgText.Length());
 	
-    // Instantiate a popup
-	HbMessageBox popup;
-	popup.setDismissPolicy(HbDialog::NoDismiss);
-	popup.setTimeout(HbDialog::NoTimeout);
-	popup.setIconVisible(false);
+	// Instantiate a popup
+	HbMessageBox *popup = new HbMessageBox();
+	popup->setDismissPolicy(HbDialog::NoDismiss);
+	popup->setTimeout(HbDialog::NoTimeout);
+	popup->setIconVisible(false);
+	popup->setAttribute( Qt::WA_DeleteOnClose, true );
+	
+	popup->setHeadingWidget(new HbLabel("Lunar Calendar"));
+	popup->setText(text);
+	
+	// Remove the default actions
+	QList<QAction*> list = popup->actions();
+	for(int i=0; i < list.count(); i++)
+	{
+		popup->removeAction(list[i]);
+	}
+	// Sets the primary action
+	popup->addAction(new HbAction(hbTrId("txt_calendar_button_cancel"), popup));
 
-    popup.setHeadingWidget(new HbLabel("Lunar Calendar"));
-    popup.setText(text);
-    
-    // Sets the primary action
-    popup.setPrimaryAction(new HbAction(hbTrId("txt_calendar_button_cancel"),
-                                        &popup));
-
-    // Launch popup syncronously
-    popup.exec();
+	// Launch popup
+	popup->open();
    	TRACE_EXIT_POINT;
 	}
 
--- a/calendarui/rom/Calendar.iby	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/rom/Calendar.iby	Tue May 18 13:16:49 2010 +0100
@@ -31,7 +31,6 @@
 
 // Application registration file.
 data=DATAZ_\private\10003a3f\import\apps\CALENDAR_REG.RSC		\private\10003a3f\import\apps\CALENDAR_REG.RSC
-data=\epoc32\data\c\resource\qt\plugins\controlpanel\calensettingsplugin.qtplugin             resource\qt\plugins\controlpanel\calensettingsplugin.qtplugin
 data=\epoc32\data\z\pluginstub\calengriditemstyleplugin.qtplugin   \private\10005901\calengriditemstyleplugin.qtplugin
 data=\epoc32\data\z\resource\qt\plugins\calendar\agendaeventviewerplugin.qtplugin             resource\qt\plugins\calendar\agendaeventviewerplugin.qtplugin
 
@@ -44,7 +43,6 @@
 file=ABI_DIR\BUILD_DIR\caleneditor.dll SHARED_LIB_DIR\caleneditor.dll
 file=ABI_DIR\BUILD_DIR\calenviews.dll SHARED_LIB_DIR\calenviews.dll
 file=ABI_DIR\BUILD_DIR\calensettings.dll SHARED_LIB_DIR\calensettings.dll
-file=ABI_DIR\BUILD_DIR\calensettingsplugin.dll SHARED_LIB_DIR\calensettingsplugin.dll
 file=ABI_DIR\BUILD_DIR\calengriditemstyleplugin.dll SHARED_LIB_DIR\calengriditemstyleplugin.dll
 file=ABI_DIR\BUILD_DIR\calencontroller.dll SHARED_LIB_DIR\calencontroller.dll
 file=ABI_DIR\BUILD_DIR\agendaeventviewer.dll SHARED_LIB_DIR\agendaeventviewer.dll
--- a/calendarui/views/inc/calendayview.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/inc/calendayview.h	Tue May 18 13:16:49 2010 +0100
@@ -88,6 +88,11 @@
     CALENDAYVIEW_EXPORT CalenDocLoader* docLoader();
 
     /**
+     * @brief clears the list model from the view
+     */
+    CALENDAYVIEW_EXPORT void clearListModel();
+
+	/*
 	 * @brief Refreshes the view with the date set in the context
 	 */
     void refreshViewOnGoToDate();
--- a/calendarui/views/inc/calendayviewwidget.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/inc/calendayviewwidget.h	Tue May 18 13:16:49 2010 +0100
@@ -32,6 +32,7 @@
 class HbGroupBox;
 class HbListView;
 class HbLabel;
+class HbAction;
 class HbDateTimePicker;
 class XQSettingsManager;
 class MCalenServices;
@@ -90,6 +91,11 @@
      */
     void handleLocaleChange();
     
+    /**
+     * @brief clears the list model from the view
+     */
+    void clearListModel();
+    
 private:
     
     /**
@@ -219,6 +225,17 @@
      * events for some day other than the current day
      */
     void goToToday();
+    
+    /**
+     * @brief This slot connected to aboutToClose()signal of contextmenu
+     * To reset the flag of mLongTapEventFlag
+     */
+    void contextMenuClosed();
+    
+    /**
+     * @brief Called when contextMenu item is triggered
+     */
+    void contextManuTriggered(HbAction *action);
 
 private:
     /**
@@ -321,6 +338,13 @@
 	 */
 	
 	XQSettingsManager *mSettingsManager;
+	
+	/**
+	 * @var mLongTapeventFlag
+	 * @brief Set flag true if contextmenu is opened
+	 */
+	bool mLongTapEventFlag;
+	
 };
 
 #endif //CALENDAYVIEWWIDGET_H
--- a/calendarui/views/inc/calengriditemprototype.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/inc/calengriditemprototype.h	Tue May 18 13:16:49 2010 +0100
@@ -28,13 +28,18 @@
 class HbIconItem;
 class HbTextItem;
 class HbFrameItem;
-class CalenGridItem;
+
+// CONSTANTS
+const QString focusIconName = "qtg_fr_cal_focused_day_ind";
+const QString eventIndname = "qtg_graf_cal_event_ind";
 
 class CalenGridItemPrototype : public HbGridViewItem
 {
 	Q_OBJECT
 
 public:
+	CalenGridItemPrototype(QColor todayIndColor, QColor activeColor, QColor inActiveColor, 
+	                       QGraphicsWidget *parent = 0);
 	CalenGridItemPrototype(QGraphicsWidget *parent = 0);
 	virtual ~CalenGridItemPrototype()
 	{
@@ -46,19 +51,20 @@
 	void pressStateChanged(bool pressed,bool animate);
 	void pressStateChanged(bool  animate);
 	bool canSetModelIndex(const QModelIndex& index);
+	void createPrimitives();
 
 private:
 	void drawUnderline(bool underlineEnabled);
 private:
-	QGraphicsLinearLayout *mLayout;
-	CalenGridItem *mWidget;
+	QColor mTodayUnderLineColor;
+	QColor mActiveTextColor;
+	QColor mInActiveTextColor;
 	QColor mCurrentDateColor;
 	QColor mGridBorderColor;
 	HbIconItem *mEventIndicatorItem;
 	HbTextItem *mMonthDayInfoItem;
 	HbFrameItem *mFocusIndicatorItem;
 	HbIconItem *mTodayIndicatorItem;
-	QColor mTodayUnderLineColor;
 };
 
 #endif // CALENGRIDITEMPROTOTYPE_H
--- a/calendarui/views/inc/calenmonthgrid.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/inc/calenmonthgrid.h	Tue May 18 13:16:49 2010 +0100
@@ -56,7 +56,11 @@
 	~CalenMonthGrid();
 	void setView(CalenMonthView *view);
 	void updateMonthGridModel(QList<CalenMonthData> &monthDataArray,
-                                int indexToBeScrolled);
+                                int indexToBeScrolled, bool isFirstTime);
+	void updateMonthGridWithInActiveMonths(
+										QList<CalenMonthData> &monthDataArray);
+	void updateMonthGridWithEventIndicators(
+										QList<CalenMonthData> &monthDataArray);
 	void setCurrentIdex(int index);
 	int getCurrentIndex();
 
@@ -64,11 +68,15 @@
 	void orientationChanged(Qt::Orientation newOrientation);
 		
 private:
+	void handlePrependingRows(QList<CalenMonthData > &monthDataList);
+	void handleAppendingRows(QList<CalenMonthData > &monthDataList);
+	void handlePanGestureFinished();
 	void mousePressEvent(QGraphicsSceneMouseEvent* event);
 	void mouseReleaseEvent(QGraphicsSceneMouseEvent* event);
 	void setFocusToProperDay();
 	void setActiveDates(QDate activeDate);
-	void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget);
+	void paint(QPainter* painter, 
+	           const QStyleOptionGraphicsItem* option, QWidget* widget);
 	
 public slots:
 	void scrollingFinished();
@@ -80,7 +88,6 @@
 	void downGesture(int value);
 	void upGesture(int value);
 	void panGesture(const QPointF &delta);
-	void timerExpired();
 
 private:
 	QStandardItemModel *mModel;
@@ -97,6 +104,8 @@
 	QColor mGridLineColor;
 	QColor mGridBorderColor;
 	QGraphicsWidget* mContentWidget;
+	QList<QString> mLocalisedDates;
+	QPointF mStartPos;
 };
 
 #endif // CALENMONTHGRID_H
--- a/calendarui/views/inc/calenmonthview.h	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/inc/calenmonthview.h	Tue May 18 13:16:49 2010 +0100
@@ -66,8 +66,8 @@
 public:  // From CCalenView
 	virtual void doPopulation();
 	void setupView(CalenDocLoader *docLoader);
+	void doLazyLoading();
 	void handleGridItemActivated();
-	void handleGridItemLongPressed(int index, QPointF &coords);
 	void setContextForActiveDay(int index);
 	QDateTime getCurrentDay();
 	QDateTime getActiveDay();
@@ -84,6 +84,7 @@
 	void populatePreviewPane(QDateTime &dateTime);
 	void handlePreviewPaneGesture(bool rightGesture);
 	QDateTime firstDayOfGrid();
+	void fetchEntriesAndUpdateModel();
 	
 private:
 	void createGrid();
@@ -93,8 +94,8 @@
 	QDateTime dateFromContext( const MCalenContext &context );
 	void setActiveDay(QDateTime day);
 	void setDate();
-	void getInstanceList(QList<AgendaEntry> &list,
-						QDateTime rangeStart, QDateTime rangeEnd);
+	void getInstanceList(QList<QDate> &list,
+                         QDateTime rangeStart, QDateTime rangeEnd);
 	void handleChangeOrientation();
 	void setDateToLabel();
 	void updateWeekNumGridModel();
@@ -173,6 +174,7 @@
 	CalenPluginLabel *mCurrRegionalInfo;
 	CalenPluginLabel *mNextRegionalInfo;
 	HbMenu *mDeleteSubMenu;
+	QColor mWeekDaysColor;
 };
 
 #endif //CALENMONTHVIEW_H
--- a/calendarui/views/resources/calenresources.qrc	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/resources/calenresources.qrc	Tue May 18 13:16:49 2010 +0100
@@ -10,6 +10,8 @@
     <qresource prefix="/fxml">
     	<file alias="view_show">view_show_normal.fxml</file>
 	<file alias="view_hide">view_hide_normal.fxml</file>
+	<file alias="view_hide_back">view_hide_back.fxml</file>
+	<file alias="view_show_back">view_show_back.fxml</file>
 	<file alias="portrait_preview_pane_show_on_left_gesture">portrait_preview_pane_show_on_left_gesture_normal.fxml</file>
 	<file alias="portrait_preview_pane_hide_on_left_gesture">portrait_preview_pane_hide_on_left_gesture_normal.fxml</file>
 	<file alias="portrait_preview_pane_show_on_right_gesture">portrait_preview_pane_show_on_right_gesture_normal.fxml</file>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/calendarui/views/resources/view_hide_back.fxml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,10 @@
+<layers>
+<visual>
+    <param name="translation_x" type="anim">
+        <duration>0.35</duration>
+        <style>outquad</style>
+        <start>extrect.right</start>
+        <end ref="screen.width">1</end>
+    </param>
+</visual>
+</layers>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/calendarui/views/resources/view_show_back.fxml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,10 @@
+<layers>
+<visual>
+    <param name="translation_x" type="anim">
+        <duration>0.35</duration>
+        <style>outquad</style>
+        <start ref="screen.width">-1</start>
+        <end>extrect.left</end>
+    </param>
+</visual>
+</layers>
\ No newline at end of file
--- a/calendarui/views/src/calendayview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calendayview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -111,7 +111,7 @@
     
     // Dont override the soft key behavior if day view is the first view
     if (ECalenDayView != mServices.getFirstView()) {
-		mSoftKeyAction = new HbAction(Hb::BackAction);
+		mSoftKeyAction = new HbAction(Hb::BackNaviAction);
 		setNavigationAction(mSoftKeyAction);
 		// Connect to the signal triggered by clicking on back button.
 		connect(mSoftKeyAction, SIGNAL(triggered()), this,
@@ -308,4 +308,14 @@
     mServices.IssueCommandL(ECalenMonthView);
 }
 
+// ----------------------------------------------------------------------------
+// CCalenDayView::clearListModel
+// clears the list model 
+// ----------------------------------------------------------------------------
+// 
+void CalenDayView::clearListModel()
+    {
+    mDayViewWidget->clearListModel();
+    }
+
 // End of file	--Don't remove this.
--- a/calendarui/views/src/calendayviewwidget.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calendayviewwidget.cpp	Tue May 18 13:16:49 2010 +0100
@@ -67,7 +67,8 @@
                                        CalenDocLoader *docLoader) :
 mServices(services),
 mDocLoader(docLoader),
-mRegionalInfoGroupBox(NULL)
+mRegionalInfoGroupBox(NULL),
+mLongTapEventFlag(false)
 {
     // Construct the list view prototype
     mListViewPrototype = new CalenEventListViewItem(this);
@@ -954,6 +955,7 @@
 void CalenDayViewWidget::itemLongPressed(HbAbstractViewItem* listViewItem,
                                          const QPointF& coords)
 {
+	mLongTapEventFlag = true;
     // Update the selection index first
     mSelectedIndex = listViewItem->modelIndex().row();
     
@@ -968,29 +970,34 @@
     HbMenu *contextMenu = new HbMenu();
     
     // Add the open option
-    HbAction *openAction = contextMenu->addAction(hbTrId("txt_common_menu_open"));
-    connect(openAction, SIGNAL(triggered()), this, SLOT(viewEntry()));
+    HbAction *openAction = contextMenu->addAction(
+									hbTrId("txt_common_menu_open"));
     
     // Check the type of event
     if (AgendaEntry::TypeTodo == entry.type()) {
         // Add an option to mark the note as complete
-        HbAction *completeAction = contextMenu->addAction(hbTrId("txt_calendar_menu_mark_as_done"));
-        connect(completeAction, SIGNAL(triggered()), this, SLOT(markAsDone()));
+        HbAction *completeAction = contextMenu->addAction(
+									hbTrId("txt_calendar_menu_mark_as_done"));
     }
     
     // Add the edit option
-    HbAction *editAction = contextMenu->addAction(hbTrId("txt_common_menu_edit"));
-    connect(editAction, SIGNAL(triggered()), this, SLOT(editEntry()));
+    HbAction *editAction = contextMenu->addAction(
+									hbTrId("txt_common_menu_edit"));
     
     // Add the delete option
-    HbAction *deleteAction = contextMenu->addAction(hbTrId("txt_common_menu_delete"));
-    connect(deleteAction, SIGNAL(triggered()), this, SLOT(deleteEntry()));
+    HbAction *deleteAction = contextMenu->addAction(
+									hbTrId("txt_common_menu_delete"));
     
     contextMenu->setDismissPolicy(HbMenu::TapAnywhere);
 
     // Show context sensitive menu. 
     // Param const QPointF& coordinate - is a longpress position.
-    contextMenu->exec(coords);
+    contextMenu->setPreferredPos(coords);
+    connect(contextMenu, SIGNAL(aboutToClose()),
+								this, 
+								SLOT(contextMenuClosed()));
+    
+    contextMenu->open(this, SLOT(contextManuTriggered(HbAction *)));
 }
 
 // ----------------------------------------------------------------------------
@@ -1007,9 +1014,10 @@
     if (mSelectedIndex < 0 || mSelectedIndex > mInstanceArray.count()) {
         return;
     }
-    
+    if( !mLongTapEventFlag ) {
     // Open the event for viewing
     viewEntry();
+    }
 }
 
 // ----------------------------------------------------------------------------
@@ -1051,4 +1059,42 @@
     mView->refreshViewOnGoToDate();
 }
 
+// ----------------------------------------------------------------------------
+// CalenDayViewWidget::contextMenuClosed
+// Rest of the details are commented in the header
+// ----------------------------------------------------------------------------
+//
+void CalenDayViewWidget::contextMenuClosed()
+{
+	mLongTapEventFlag = false;
+}
+
+// ----------------------------------------------------------------------------
+// CalenDayViewWidget::contextManuTriggered
+// Rest of the details are commented in the header
+// ----------------------------------------------------------------------------
+//
+void CalenDayViewWidget::contextManuTriggered(HbAction *action)
+{
+	if (action->text() == hbTrId("txt_common_menu_open")) {
+		viewEntry();
+	} else if (action->text() == hbTrId("txt_calendar_menu_mark_as_done")) {
+		markAsDone();
+	} else if (action->text() == hbTrId("txt_common_menu_edit")) {
+		editEntry();
+	} else {
+		if (action->text() == hbTrId("txt_common_menu_delete")) {
+			deleteEntry();
+		}
+	}
+}
+// ----------------------------------------------------------------------------
+// CalenDayViewWidget::clearListModel
+// clears the list model 
+// ----------------------------------------------------------------------------
+// 
+void CalenDayViewWidget::clearListModel()
+    {
+    mListModel->clear();
+    }
 // End of file	--Don't remove this.
--- a/calendarui/views/src/calengriditemprototype.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calengriditemprototype.cpp	Tue May 18 13:16:49 2010 +0100
@@ -33,7 +33,6 @@
 #include "calengriditemprototype.h"
 #include "calencommon.h"
 
-#define GRIDLINE_WIDTH 0.075 //units
 /*!
  \class CalenGridItemPrototype
 
@@ -43,19 +42,45 @@
 /*!
  Constructor.
  */
-CalenGridItemPrototype::CalenGridItemPrototype(QGraphicsWidget *parent) :
+CalenGridItemPrototype::CalenGridItemPrototype(QColor todayIndColor, QColor activeColor, QColor inActiveColor,
+                                               QGraphicsWidget *parent) :
 	HbGridViewItem(parent),
-	mLayout(0),
+	mTodayUnderLineColor(todayIndColor),
+	mActiveTextColor(activeColor),
+	mInActiveTextColor(inActiveColor),
 	mCurrentDateColor(Qt::black),
 	mGridBorderColor(Qt::gray),
 	mEventIndicatorItem(0),
 	mMonthDayInfoItem(0),
 	mFocusIndicatorItem(0),
-	mTodayIndicatorItem(0),
-	mTodayUnderLineColor(Qt::gray)
+	mTodayIndicatorItem(0)
 	{
-	mTodayUnderLineColor = HbColorScheme::color("qtc_cal_month_current_day");
+	}
+
+/*!
+	Constructs all the primitives
+*/
+void CalenGridItemPrototype::createPrimitives()
+{
+	if (!mMonthDayInfoItem) {
+		mMonthDayInfoItem = new HbTextItem(this);
+		HbStyle::setItemName(mMonthDayInfoItem,
+				 QLatin1String("monthDayInfoTextItem"));
+		mMonthDayInfoItem->setElideMode(Qt::ElideNone);
 	}
+		
+	if (!mFocusIndicatorItem) {
+		mFocusIndicatorItem = new HbFrameItem(this);
+		mFocusIndicatorItem->frameDrawer().setFrameType(HbFrameDrawer::NinePieces);
+		mFocusIndicatorItem->setZValue(-1);
+		HbStyle::setItemName(mFocusIndicatorItem, QLatin1String("focusIconItem"));
+	}
+	
+	if (!mEventIndicatorItem) {
+		mEventIndicatorItem = new HbIconItem(this);
+		HbStyle::setItemName(mEventIndicatorItem, QLatin1String("eventIconItem"));
+	}
+}
 
 /*!
  From HbAbstractViewItem.
@@ -65,7 +90,9 @@
  */
 HbAbstractViewItem *CalenGridItemPrototype::createItem()
 {
-	return new CalenGridItemPrototype(*this);
+	CalenGridItemPrototype* item = new CalenGridItemPrototype(*this);
+	item->createPrimitives();
+	return item;
 }
 
 /*!
@@ -74,49 +101,31 @@
  \sa HbAbstractViewItem, HbGridViewItem
  */
 void CalenGridItemPrototype::updateChildItems()
-{
-	
-	// base class implementation
-	HbGridViewItem::updateChildItems();
-		
+{		
 	// Here update content of each item.
 	QVariant monthDayRole;
-	QVariant monthFocusRole;
+	bool monthFocusRole;
 	bool underlineEnabled = false;
-	QVariant monthEventRole;
-	QVariant monthTextColorRole;
+	bool monthEventRole;
+	bool monthTextColorRole;
 	QVariant itemData = modelIndex().data(Qt::UserRole + 1);
 	if (itemData.isValid()) {
 		if (itemData.canConvert<QVariantList>()) {
+		
 			// Get the item list
 			QVariantList itemList = itemData.toList();
 			// Get the day text
 			monthDayRole = itemList.at(CalendarNamespace::CalendarMonthDayRole);
 			if (monthDayRole.canConvert<QString>()) {
-				QString monthDayText = monthDayRole.toString();
-
-				if (!mMonthDayInfoItem) {
-					mMonthDayInfoItem = new HbTextItem(this);
-					HbStyle::setItemName(mMonthDayInfoItem,
-							 QLatin1String("monthDayInfoTextItem"));
-
-				}
-
-				mMonthDayInfoItem->setText(monthDayText);
-				mMonthDayInfoItem->setElideMode(Qt::ElideNone);
+				mMonthDayInfoItem->setText(monthDayRole.toString());
 			}
 			
 			// Get the focus data
-			monthFocusRole = itemList.at(CalendarNamespace::CalendarMonthFocusRole);
-			if (monthFocusRole.canConvert<QString>()) {
-				QString focusIconPath = monthFocusRole.toString();
-				if (!mFocusIndicatorItem) {
-					mFocusIndicatorItem = new HbFrameItem(this);
-					mFocusIndicatorItem->frameDrawer().setFrameType(HbFrameDrawer::NinePieces);
-					mFocusIndicatorItem->setZValue(-1);
-					HbStyle::setItemName(mFocusIndicatorItem, QLatin1String("focusIconItem"));
-				}
-				mFocusIndicatorItem->frameDrawer().setFrameGraphicsName(focusIconPath);
+			monthFocusRole = itemList.at(CalendarNamespace::CalendarMonthFocusRole).value<bool>();
+			if (monthFocusRole) {
+				mFocusIndicatorItem->frameDrawer().setFrameGraphicsName(focusIconName);
+			} else {
+				mFocusIndicatorItem->frameDrawer().setFrameGraphicsName(QString(""));
 			}
 			
 			// Get the today indicator role
@@ -124,25 +133,29 @@
 			drawUnderline(underlineEnabled);
 			
 			// Get the event indicator data
-			monthEventRole = itemList.at(CalendarNamespace::CalendarMonthEventRole);
-			if (monthEventRole.canConvert<QString>()) {
-				QString eventIconPath = monthEventRole.toString();
-				if (!mEventIndicatorItem) {
-					mEventIndicatorItem = new HbIconItem(this);
-					HbStyle::setItemName(mEventIndicatorItem, QLatin1String("eventIconItem"));
-				}
-				mEventIndicatorItem->setIconName(eventIconPath);
+			monthEventRole = itemList.at(CalendarNamespace::CalendarMonthEventRole).value<bool>();
+			if (monthEventRole) {
+				// Set the event indicator
+				//QString iconName(focusIconName);
+				mEventIndicatorItem->setIconName(eventIndname);
+			} else {
+				mEventIndicatorItem->setIconName(QString(""));
 			}
 			
 			// Get the text color
-			monthTextColorRole = itemList.at(CalendarNamespace::CalendarMonthTextColorRole);
-			if (monthTextColorRole.canConvert<QColor>()) {
-				QColor monthTextColor = monthTextColorRole.value<QColor>();
-				mMonthDayInfoItem->setTextColor(monthTextColor);
+			monthTextColorRole = itemList.at(CalendarNamespace::CalendarMonthTextColorRole).value<bool>();
+			if (monthTextColorRole) {
+				// Set the active text color
+				mMonthDayInfoItem->setTextColor(mActiveTextColor);
+			} else {
+				// Set the inactive text color
+				mMonthDayInfoItem->setTextColor(mInActiveTextColor);
 			}
 		}
 	}
 	
+	// base class implementation
+	HbGridViewItem::updateChildItems();
 }
 
 /*!
--- a/calendarui/views/src/calenmonthgrid.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calenmonthgrid.cpp	Tue May 18 13:16:49 2010 +0100
@@ -16,10 +16,6 @@
  */
 
 // System includes
-#include <qtimer.h>
-#include <hbmenu.h>
-#include <hbaction.h>
-#include <hbmainwindow.h>
 #include <hbgridview.h>
 #include <hbabstractviewitem.h>
 #include <hbstyleloader.h>
@@ -34,7 +30,7 @@
 #include "calencommon.h"
 
 // Constants
-#define SCROLL_SPEEED 1000 
+#define SCROLL_SPEEED 2000 
 #define GRIDLINE_WIDTH 0.075 //units
 
 /*!
@@ -66,27 +62,26 @@
 	setSelectionMode(HbGridView::NoSelection);
 	setUniformItemSizes(true);
 	setVerticalScrollBarPolicy(HbScrollArea::ScrollBarAlwaysOff);
-	setClampingStyle(HbScrollArea::StrictClamping );
+	setClampingStyle(HbScrollArea::StrictClamping);
+	setEnabledAnimations(HbAbstractItemView::None);
+	resetTransform();
 	
 	// Get the content widget of the scroll area to draw the grid lines
 	mContentWidget = contentWidget();
 	
-	// Get the color of the grid lines
+	// Get the all required colors 
+	// Color of the grid lines
 	mGridLineColor = HbColorScheme::color("qtc_cal_grid_line");
 	
-	// Create the prototype
-	CalenGridItemPrototype* gridItemPrototype = new CalenGridItemPrototype(this);
-	// Create the model
-	mModel = new QStandardItemModel(14*KCalenDaysInWeek, 1, this);
-	// Set the mode and the prototype
-	setModel(mModel,gridItemPrototype);
+	// Get the localised dates well before
+	// TODO: Need to update the mLocalisedDates when user changes the
+	// phone language keeping calendar application in background
+	HbExtendedLocale locale = HbExtendedLocale::system();
+	for (int i = 1; i <= 31; i++) {
+		mLocalisedDates.append(locale.toString(i));
+	}
 	
-	// Register the widgetml and css files
-	HbStyleLoader::registerFilePath(":/");
-	
-	// Set the layout name
-	setLayoutName("calendarCustomGridItem");
-	
+	// Connect to scrolling finished signal
 	connect(this, SIGNAL(scrollingEnded()), this,
 			SLOT(scrollingFinished()));
 	
@@ -100,6 +95,7 @@
  */
 CalenMonthGrid::~CalenMonthGrid()
 {
+	// Nothing Yet
 }
 
 /*!
@@ -114,55 +110,66 @@
  Updates the model with the proper dates and sets the required user roles
  */
 void CalenMonthGrid::updateMonthGridModel(QList<CalenMonthData> &monthDataArray,
-                        int indexToBeScrolled)
+                        int indexToBeScrolled, bool isFirstTime)
 {
-	// Check the counts
-	int dataCount = monthDataArray.count();
-	int rowCount = mModel->rowCount();
-	int countDiff = dataCount - rowCount;
-	if (countDiff < 0) {
-		// Delete extra rows in the model
-		mModel->removeRows(dataCount,abs(countDiff));
-	} else if (countDiff > 0) {
-		// Add the necessary number of rows
-		mModel->insertRows(rowCount,countDiff);
+	int loopStart = 0;
+	int loopEnd = monthDataArray.count();
+	if (isFirstTime) {
+		// Create the model with only 42 items as visible to the user
+		mModel = new QStandardItemModel(KCalenDaysInWeek * KNumOfVisibleRows, 
+		                                1, this);
+		loopStart = (mView->rowsInPrevMonth()) * KCalenDaysInWeek;
+		loopEnd = loopStart + (KCalenDaysInWeek * KNumOfVisibleRows);
+	} else {
+		// Block the signals generated by model, this is being done as
+		// we want to avoid the overload of view listening to signals
+		mModel->blockSignals(true);
+		
+		// Check the counts
+		int dataCount = monthDataArray.count();
+		int rowCount = mModel->rowCount();
+		int countDiff = dataCount - rowCount;
+		if (countDiff < 0) {
+			// Delete extra rows in the model
+			mModel->removeRows(dataCount,abs(countDiff));
+		} else if (countDiff > 0) {
+			// Add the necessary number of rows
+			mModel->insertRows(rowCount,countDiff);
+		}
+		loopEnd = dataCount;
 	}
+	
 	QDateTime currDate = mView->getCurrentDay();
 	QDateTime currDateTime = CalenDateUtils::beginningOfDay(currDate);
 	QDateTime activeDay = mView->getActiveDay();
 	QDateTime activeDateTime = CalenDateUtils::beginningOfDay(activeDay);
 	
 	QModelIndex currentIndex;
-	
-	// Get the default text color to be set
-	QColor textColor = HbColorScheme::color("qtc_cal_month_notactive_dates");
-	HbExtendedLocale locale = HbExtendedLocale::system();
-	for (int i = 0; i < dataCount; i++) {
+	int modelIndex = 0;
+	for (int i = loopStart; i < loopEnd; i++) {
 		QDateTime dateTime = monthDataArray[i].Day();
-		currentIndex = mModel->index(i, 0);
-		// Get the localised string for the day
-		QString date = locale.toString(dateTime.date().day());
+		currentIndex = mModel->index(modelIndex++, 0);
 		
 		// Create the variant list to contain the date to depict a grid item
 		QVariantList itemData;
 		
-		// NOTE: Add the data in the order mentioned in the 
+		// !!!NOTE!!!: Add the data in the order mentioned in the 
 		// CalendarNamespace::DataRole enum. Dont change the order.
-		itemData << date; 
+		itemData << mLocalisedDates.at(dateTime.date().day()-1); 
 		
 		// Check for active day
 		if (activeDateTime == CalenDateUtils::beginningOfDay(dateTime)) {
-			mCurrentRow = currentIndex.row();
-			// Set the focus icon
-			itemData << QString("qtg_fr_cal_focused_day_ind");
+			mCurrentRow = i;
+			// Set the focus attribute to true
+			itemData << true;
 		} else {
 			// reset the highlight
-			itemData << QString("");
+			itemData << false;
 		}
 
 		// Check for current day
 		if (currDateTime == CalenDateUtils::beginningOfDay(dateTime)) {
-			// Set the underline icon
+			// Set the underline attribute to true
 			itemData << true;
 		} else {			
 			itemData << false;
@@ -170,35 +177,118 @@
 
 		// Check for events
 		if (monthDataArray[i].HasEvents()) {
-			// Set the underline icon
-			itemData << QString("qtg_graf_cal_event_ind");
+			// Set the event indicator attribute
+			itemData << true;
 		} else {
-			itemData << QString("");
+			itemData << false;
 		}
 		
 		// Add default text color
-		itemData << textColor;
+		if (monthDataArray[i].isActive()) {
+			itemData << true;
+		} else {
+			itemData << false;
+		}
 		mModel->itemFromIndex(currentIndex)->setData(itemData);
 	}
+	
+	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);
+		
+		// Set the mode and the prototype
+		setModel(mModel,gridItemPrototype);
+		
+		// Register the widgetml and css files
+		HbStyleLoader::registerFilePath(":/");
+		
+		// Set the layout name
+		setLayoutName("calendarCustomGridItem");
+	} else {
+		// Since, we have finished setData, Now unblock the signals
+		mModel->blockSignals(false);
+		
+		// Since till now, we had blocked signals being generated frm the mode
+		// view will be unaware of the items that we added. Hence, inform the view
+		// explicitly in one shot
+		QModelIndex leftIndex = mModel->index(0, 0);
+		QModelIndex rightIndex = mModel->index(loopEnd-1, 0);
+		dataChanged(leftIndex, rightIndex);
+		
+		// NOTE: To make sure that we always display proper month,
+		// two calls have been  made to scrollTo(), one with top
+		// visible item and other with bottom visible item
+		// Calculate the first visible item in the grid
+		QModelIndex firstVisibleIndex = mModel->index(indexToBeScrolled - 
+								(KNumOfVisibleRows * KCalenDaysInWeek - 1), 0);
+		scrollTo(firstVisibleIndex);
+		
+		
+		// Calculate the last visible item in the grid
+		QModelIndex lastVisibleIndex = mModel->index(indexToBeScrolled, 0);
+		scrollTo(lastVisibleIndex);
+	}
 	mMonthDataArray = monthDataArray;
+}
+
+/*!
+	Updates the view with jprevious month dates when calendar is opened for the 
+	first time to improve the opening time
+ */
+void CalenMonthGrid::updateMonthGridWithInActiveMonths(
+										QList<CalenMonthData> &monthDataArray)
+{	
+	mMonthDataArray = monthDataArray;
+		
+	// Prepend the required rows
+	handlePrependingRows(monthDataArray);
 	
-	// Get the active month
-	QDateTime activeDate = mView->getActiveDay();
-	// Set the text color properly
-	setActiveDates(activeDate.date());
+	// Append the required rows
+	handleAppendingRows(monthDataArray);
+	
+	int rowsInPrevMonth = mView->rowsInPrevMonth();
 	
-	// NOTE: To make sure that we always display proper month,
-	// two calls have been  made to scrollTo(), one with top
-	// visible item and other with bottom visible item
-    // Calculate the first visible item in the grid
-    QModelIndex firstVisibleIndex = mModel->index(indexToBeScrolled - 
-                                        (KNumOfVisibleRows * KCalenDaysInWeek - 1), 0);
-    scrollTo(firstVisibleIndex);
-    
-    
-    // Calculate the last visible item in the grid
-    QModelIndex lastVisibleIndex = mModel->index(indexToBeScrolled, 0);
-    scrollTo(lastVisibleIndex);
+	// Calculate the proper index to be scrolled to
+	int itemToBeScrolled = rowsInPrevMonth * KCalenDaysInWeek;
+	QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
+	mIsAtomicScroll = true;
+	scrollTo(indexToBeScrolled);
+		
+	// Scroll to proper index
+	itemToBeScrolled = ((rowsInPrevMonth + KNumOfVisibleRows) * 
+								   KCalenDaysInWeek) - 1;
+	indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
+	mIsAtomicScroll = true;
+	scrollTo(indexToBeScrolled);
+}
+
+/*!
+	Updates the view with just event indicators
+ */
+void CalenMonthGrid::updateMonthGridWithEventIndicators(
+										QList<CalenMonthData> &monthDataArray)
+{
+	mMonthDataArray = monthDataArray;
+	for(int i = 0; i < monthDataArray.count(); i++) {
+		// Check if the day has events
+		if (monthDataArray[i].HasEvents()) {
+			QModelIndex itemIndex = mModel->index(i,0);
+			QVariant itemData = itemIndex.data(Qt::UserRole + 1);
+			QVariantList list = itemData.toList();
+			list.replace(CalendarNamespace::CalendarMonthEventRole, true);
+			mModel->itemFromIndex(itemIndex)->setData(list);
+		}
+	}
 }
 
 /*!
@@ -208,10 +298,11 @@
 {
 	Q_UNUSED(value)	
 	mDirection = down;
-	// Before we start scrolling, setthe active text color to previous month
-	QDateTime activeDate = mView->getActiveDay();
-	setActiveDates(activeDate.addMonths(-1).date());
-	HbScrollArea::downGesture(SCROLL_SPEEED);
+	mIsAtomicScroll = false;
+	setAttribute(Hb::InteractionDisabled);
+	
+	// pass it to parent
+	HbScrollArea::downGesture(value);
 }
 
 /*!
@@ -221,10 +312,12 @@
 {
 	Q_UNUSED(value)	
 	mDirection = up;
-	// Before we start scrolling, setthe active text color to future month
-	QDateTime activeDate = mView->getActiveDay();
-	setActiveDates(activeDate.addMonths(1).date());
-	HbScrollArea::upGesture(SCROLL_SPEEED);
+	mIsAtomicScroll = false;
+	setAttribute(Hb::InteractionDisabled);
+	
+	// pass it to parent
+	HbScrollArea::upGesture(value);
+	
 }
 
 /*!
@@ -257,25 +350,20 @@
  */
 void  CalenMonthGrid::panGesture(const QPointF &  delta)
 {
+	setAttribute(Hb::InteractionDisabled);
+	mIsAtomicScroll = false;
 	if (!mIsPanGesture) {
 		mIsPanGesture = true;
 		mIgnoreItemActivated = true;
-		
+		mStartPos = mContentWidget->pos();
 		// Get to know the direction of the gesture
 		if (delta.y() > 0) {
 			mDirection = down;
 		} else {
 			mDirection = up;
 		}
-	} else { // This case is when user changes the direction while panning
-		// without lifting the finger
-		// Check if direction has changed
-		if (((delta.y() > 0) && (mDirection == up))
-			|| ((delta.y() < 0) && (mDirection == down))) {
-			// Direction has changed, ignore this pan
-			return;
-		}
 	}
+	
 	// Call the parent class to perform the pan gesture
 	// When scrolling finished, month grid will adjust to show the proper month
 	HbScrollArea::panGesture(delta);
@@ -288,40 +376,87 @@
 {
 	
 	if (mIsPanGesture) {
-		mIsPanGesture = false;
-		if (mDirection == up) {
-			// Make a request for upgesture
-			upGesture(SCROLL_SPEEED);
-			return; // return immediately
-		} else if (mDirection == down) {
-			// Make a request for upgesture
-			downGesture(SCROLL_SPEEED);
-			return; // return immediately
+		handlePanGestureFinished();
+	} else if(!mIsAtomicScroll) {
+		QDateTime activeDate = mView->getActiveDay();
+		if(mDirection == down) { // down gesture
+			if (!mIsNonActiveDayFocused) {
+				setActiveDates(activeDate.addMonths(-1).date());
+			}
+			prependRows();
+		} else if (mDirection == up) { //up gesture
+			if (!mIsNonActiveDayFocused) {
+				setActiveDates(activeDate.addMonths(1).date());
+			}
+			appendRows();
 		}
-	} else if(!mIsAtomicScroll) {
-		// 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();
-		}
-		// To improve the performance, lets start the timer for 10 ms, 
-		// return immediately and do the other things after that
-		QTimer::singleShot(10, this, SLOT(timerExpired()));
+		mDirection = invalid;
 	} else {
         mIsAtomicScroll = false;
 	}
 	mIgnoreItemActivated = false;
+	setAttribute(Hb::InteractionDisabled, false);
 }
 
-void CalenMonthGrid::timerExpired()
+/*!
+ Function to handle completion of pan gesture
+ */
+void CalenMonthGrid::handlePanGestureFinished()
 {
-	if(mDirection == down) { // down gesture
-		prependRows();
-	} else if (mDirection == up) { //up gesture
-		appendRows();
+	mIsPanGesture = false;
+	// Get the first item that is visible
+	QList<HbAbstractViewItem *> list = visibleItems();
+	HbAbstractViewItem* item = list[0];
+	QModelIndex modelIndex = item->modelIndex();
+	
+	// Get the date which is visible at the above row
+	QDateTime date = mMonthDataArray[modelIndex.row()].Day();
+	
+	// Check if this date belong to current active month or 
+	// previous month else future month
+	QDateTime activeMonth = mView->getActiveDay();
+	QDateTime prevMonth = activeMonth.addMonths(-1);
+	QDateTime nextMonth = activeMonth.addMonths(1);
+	int month = date.date().month();
+	if (month == activeMonth.date().month()) {
+		// Then pan is completed on current month
+		// Check if the date is more than half of the current month or it is
+		// more than or equal to half of the future month
+		if (date.date().day() > (activeMonth.date().daysInMonth()) / 2 ||
+				date.addDays(KNumOfVisibleRows*KCalenDaysInWeek).date().day() >=
+				(prevMonth.date().daysInMonth()) / 2) {
+			// up gesture to bring the next month
+			upGesture(SCROLL_SPEEED);
+		} else {
+			// we should again show the current month by scrolling downwards
+			mDirection = down;
+			mIsAtomicScroll = true;
+			scrollContentsTo(-mStartPos,500);
+		}
+	} else if (month == prevMonth.date().month()) {
+		// first visible item belongs to previous month
+		// Check if the date is more than half of the previous month
+		if (date.date().day() > (prevMonth.date().daysInMonth()) / 2) {
+			// we should again show the current month by scrolling upwards
+			mDirection = up;
+			mIsAtomicScroll = true;
+			scrollContentsTo(-mStartPos,500);
+		} else {
+			// down gesture to show the previous month
+			downGesture(SCROLL_SPEEED);
+		}
+	} else if (month == nextMonth.date().month()) {
+		// first visible item belongs to next month
+		// Check if the date is more than half of the next month
+		if (date.date().day() > (nextMonth.date().daysInMonth()) / 2) {
+			// up gesture to bring the next month
+			upGesture(SCROLL_SPEEED);
+		} else {
+			// we should again show the current month by scrolling upwards
+			mDirection = invalid;
+			scrollContentsTo(-mStartPos,500);
+		}
 	}
-	mDirection = invalid;
 }
 
 /*!
@@ -330,43 +465,81 @@
  */
 void CalenMonthGrid::prependRows()
 {
+	// 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
+	mModel->blockSignals(true);
+		
 	mIsNonActiveDayFocused = false;
-	QDateTime currDate = mView->getCurrentDay();
-	QDateTime currDateTime = CalenDateUtils::beginningOfDay( currDate );
+	
 	int rowsInFutMonthEarlier = mView->rowsInFutMonth();
 	int rowsInPrevMonthEarlier = mView->rowsInPrevMonth();
 	
+	// remove the cells in the future month
+	int deleteFromIndex = (rowsInPrevMonthEarlier + KNumOfVisibleRows) * KCalenDaysInWeek;
+	int numOfIndices = rowsInFutMonthEarlier * KCalenDaysInWeek;
+	
 	// Get the updated dates from the view
 	mView->updateModelWithPrevMonth();
 	QList<CalenMonthData > monthDataList = mView->monthDataList();
 	mMonthDataArray = monthDataList;
-	int listCount = monthDataList.count();
-	// Get the updated rows to be inserted
-	int rowsInPrevMonth = mView->rowsInPrevMonth();
-	int rowsInFutMonth = mView->rowsInFutMonth();
+	
+	// Prepend the required rows
+	handlePrependingRows(monthDataList);
+		
+	// Since, we have finished setData, Now unblock the signals
+	mModel->blockSignals(false);
 	
-	// remove the cells in the future month
-	int deleteFromIndex = (rowsInPrevMonthEarlier + KNumOfVisibleRows) * KCalenDaysInWeek;
-	int numOfIndices = rowsInFutMonthEarlier * KCalenDaysInWeek;
-	int count = mModel->rowCount();
+	int rowsInPrevMonth = mView->rowsInPrevMonth();
+	int countToBeAdded = rowsInPrevMonth * KCalenDaysInWeek;
+		
+	// Since till now, we had blocked signals being generated frm the model
+	// view will be unaware of the items that we added. Hence, inform the view
+	// explicitly in one shot
+	QModelIndex leftIndex = mModel->index(0, 0);
+	QModelIndex rightIndex = mModel->index(countToBeAdded-1, 0);
+	dataChanged(leftIndex, rightIndex);
+		
+	// Now remove the necessary items frm the model
+	mModel->removeRows(deleteFromIndex+countToBeAdded, numOfIndices);
+	mIsAtomicScroll = true;
+	int itemToBeScrolled = rowsInPrevMonth * KCalenDaysInWeek;
+	QModelIndex indexToBeScrolled  = mModel->index(itemToBeScrolled, 0);
+	scrollTo(indexToBeScrolled);
 	
-	count = mModel->rowCount();
-	
+	// Scroll to proper index
+	itemToBeScrolled = ((rowsInPrevMonth + KNumOfVisibleRows) * 
+								   KCalenDaysInWeek) - 1;
+	indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
+	mIsAtomicScroll = true;
+	scrollTo(indexToBeScrolled);
+	// Update the mCurrentRow
+	mCurrentRow += countToBeAdded;
+}
+
+/*!
+	Helper function that prepends the required rows to the model
+ */
+void CalenMonthGrid::handlePrependingRows(QList<CalenMonthData > &monthDataList)
+{
+	QDateTime currDate = mView->getCurrentDay();
+	QDateTime currDateTime = CalenDateUtils::beginningOfDay( currDate );
+	int rowsInPrevMonth = mView->rowsInPrevMonth();
 	// Add the new days
 	int countToBeAdded = rowsInPrevMonth * KCalenDaysInWeek;
 	
 	mModel->insertRows(0, countToBeAdded);
-	count = mModel->rowCount();
-	
-	// Get the default text color to be set
-	QColor textColor = HbColorScheme::color("qtc_cal_month_notactive_dates");
-	HbExtendedLocale locale = HbExtendedLocale::system();
 	
 	for (int i = 0; i < countToBeAdded; i++) {
 		QDateTime dateTime = monthDataList[i].Day();
 		
 		// Get the localised string for the day
-		QString date = locale.toString(dateTime.date().day());
 		QModelIndex currentIndex = mModel->index(i, 0);
 		
 		// Create the variant list to contain the date to depict a grid item
@@ -374,14 +547,14 @@
 		
 		// NOTE: Add the data in the order mentioned in the 
 		// CalendarNamespace::DataRole enum. Dont change the order.
-		itemData << date;
+		itemData << mLocalisedDates.at(dateTime.date().day()-1);;
 				
-		// Diable the focus role
-		itemData << QString("");
+		// Disable the focus role
+		itemData << false;
 		
 		// Check for current day
 		if  (currDateTime == CalenDateUtils::beginningOfDay( dateTime )) {
-			// Set the underline icon
+			// Set the underline icon attribute
 			itemData << true;
 		} else {
 			itemData << false;
@@ -389,39 +562,18 @@
 		
 		// Update the event indicators
 		if (monthDataList[i].HasEvents()) {
-			// Set the event indicator icon
-			itemData << QString("qtg_graf_cal_event_ind");
+			// Set the event indicator attribute
+			itemData << true;
 		} else {
-			itemData << QString("");
+			itemData << false;
 		}
 		
 		// Add default text color
-		
-		itemData << textColor;
+		itemData << false;
 		
 		// Set the data to model
 		mModel->itemFromIndex(currentIndex)->setData(itemData);
 	}
-	
-	// Update the mCurrentRow
-	mCurrentRow += countToBeAdded;
-	// Scroll to proper index
-	int itemToBeScrolled = ((rowsInPrevMonth + KNumOfVisibleRows) * 
-								   KCalenDaysInWeek) - 1;
-	QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
-	QMap<int, QVariant> data;
-	data = mModel->itemData(indexToBeScrolled);
-	QVariant value = data.value(Qt::DisplayRole);
-	int date = value.toInt();
-	mIsAtomicScroll = true;
-	scrollTo(indexToBeScrolled);
-	
-	// Now remove the necessary items frm the model
-	mModel->removeRows(deleteFromIndex+countToBeAdded, numOfIndices);
-	mIsAtomicScroll = true;
-	itemToBeScrolled = rowsInPrevMonth * KCalenDaysInWeek;
-	indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
-	scrollTo(indexToBeScrolled);
 }
 
 /*!
@@ -430,9 +582,19 @@
  */
 void CalenMonthGrid::appendRows()
 {
+	// 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
+	mModel->blockSignals(true);
+	
 	mIsNonActiveDayFocused = false;
-	QDateTime currDate = mView->getCurrentDay();
-	QDateTime currDateTime = CalenDateUtils::beginningOfDay( currDate );
+	
 	int rowsInFutMonth = mView->rowsInFutMonth();
 	int rowsInPrevMonth = mView->rowsInPrevMonth();
 	// remove the cells in the previous month
@@ -442,40 +604,77 @@
 	mView->updateModelWithFutureMonth();
 	QList<CalenMonthData > monthDataList = mView->monthDataList();
 	mMonthDataArray = monthDataList;
-	// Get the updated rows to be inserted
+	
+	// Get the model count before we add any rows into the mode
+	int rowCount = mModel->rowCount();
+	// Append the required rows
+	handleAppendingRows(monthDataList);
+	
+	// Since, we have finished setData, Now unblock the signals
+	mModel->blockSignals(false);
+	
+	// Since till now, we had blocked signals being generated frm the mode
+	// view will be unaware of the items that we added. Hence, inform the view
+	// explicitly in one shot
+	QModelIndex leftIndex = mModel->index(rowCount-1, 0);
+	QModelIndex rightIndex = mModel->index(mModel->rowCount()-1, 0);
+	dataChanged(leftIndex, rightIndex);
+		
+	// Update the mCurrentRow
+	mCurrentRow -= (countToBeDeleted);
+	for (int i = 0; i < countToBeDeleted; i++) {
+		mModel->removeRow(0);
+	}
+	
+	mIsAtomicScroll = true;
+	
+	rowsInFutMonth = mView->rowsInFutMonth();
 	rowsInPrevMonth = mView->rowsInPrevMonth();
-	rowsInFutMonth = mView->rowsInFutMonth();
+	
+	// Calculate the proper index to be scrolled to
+	int itemToBeScrolled = rowsInPrevMonth * KCalenDaysInWeek;
+	QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
+	scrollTo(indexToBeScrolled);
+	
+	itemToBeScrolled = ((rowsInPrevMonth + KNumOfVisibleRows) * 
+									   KCalenDaysInWeek) - 1;
+	indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
+	mIsAtomicScroll = true;
+	scrollTo(indexToBeScrolled);
+}
+
+/*!
+	Helper function that appends the required rows to the model
+ */
+void CalenMonthGrid::handleAppendingRows(QList<CalenMonthData > &monthDataList)
+{
+	QDateTime currDate = mView->getCurrentDay();
+	QDateTime currDateTime = CalenDateUtils::beginningOfDay( currDate );
+	int rowsInFutMonth = mView->rowsInFutMonth();
 	int countToBeAdded = rowsInFutMonth * KCalenDaysInWeek;
 	int lastVisibleIndex = monthDataList.count() - countToBeAdded;
 	
 	int rowCount = mModel->rowCount();
 	mModel->insertRows(rowCount, countToBeAdded);
 	
-	// Get the default text color to be set
-	QColor textColor = HbColorScheme::color("qtc_cal_month_notactive_dates");
 	for (int i = 0; i < countToBeAdded; i++) {
-		QMap<int, QVariant> data;
 		QModelIndex currentIndex = mModel->index(rowCount + i, 0);
 				
 		QDateTime dateTime = monthDataList[lastVisibleIndex + i].Day();
-		HbExtendedLocale locale = HbExtendedLocale::system();
-		// Get the localised string for the day
-		QString date = locale.toString(dateTime.date().day());
-		data.insert(CalendarNamespace::CalendarMonthDayRole, date);
 		
 		// Create the variant list to contain the date to depict a grid item
 		QVariantList itemData;
 		
 		// NOTE: Add the data in the order mentioned in the 
 		// CalendarNamespace::DataRole enum. Dont change the order.
-		itemData << date;
+		itemData << mLocalisedDates.at(dateTime.date().day()-1);;
 		
 		// Disable the focus role
-		itemData << QString("");
+		itemData << false;
 		
 		// Check for current day
 		if (currDateTime == CalenDateUtils::beginningOfDay( dateTime )) {
-			// Set the underline icon
+			// Set the underline icon attribute
 			itemData << true;
 		} else {
 			itemData << false;
@@ -483,30 +682,18 @@
 		
 		// Update the event indicators
 		if (monthDataList[lastVisibleIndex + i].HasEvents()) {
-			// Set the underline icon
-			itemData << QString("qtg_graf_cal_event_ind");
+			// Set the event indicator attribute
+			itemData << true;
 		} else {
-			itemData << QString("");
+			itemData << false;
 		}
 		
 		// Add default text color
-		itemData << textColor;
+		itemData << false;
 				
 		// Set the data to model
 		mModel->itemFromIndex(currentIndex)->setData(itemData);
 	}
-	
-	// Update the mCurrentRow
-	mCurrentRow -= (countToBeDeleted);
-	for (int i = 0; i < countToBeDeleted; i++) {
-		mModel->removeRow(0);
-	}
-	mIsAtomicScroll = true;
-	
-	// Calculate the proper index to be scrolled to
-	int itemToBeScrolled = rowsInPrevMonth * KCalenDaysInWeek;
-	QModelIndex indexToBeScrolled = mModel->index(itemToBeScrolled, 0);
-	scrollTo(indexToBeScrolled);
 }
 
 /*!
@@ -528,7 +715,7 @@
 		QModelIndex itemIndex = mModel->index(mCurrentRow,0);
 		QVariant itemData = itemIndex.data(Qt::UserRole + 1);
 		QVariantList list = itemData.toList();
-		list.replace(CalendarNamespace::CalendarMonthFocusRole, QString(""));
+		list.replace(CalendarNamespace::CalendarMonthFocusRole, false);
 		mModel->itemFromIndex(itemIndex)->setData(list);
 		
 		// Inform view to update the context and preview panes
@@ -537,7 +724,7 @@
 		itemData = itemIndex.data(Qt::UserRole + 1);
 		list = itemData.toList();
 		list.replace(CalendarNamespace::CalendarMonthFocusRole, 
-						 QString("qtg_fr_cal_focused_day_ind"));
+								 true);
 		mModel->itemFromIndex(itemIndex)->setData(list);
 		// Check if inactive date is tapped
 		QDateTime activeMonth = mView->getActiveDay();
@@ -547,17 +734,19 @@
 			mIsNonActiveDayFocused = true;
 			mNonActiveFocusedDay = mMonthDataArray[mCurrentRow].Day();
 			
-			// Get the current active month
-			QDateTime activeMonth = mView->getActiveDay();
-			// Add one month to it
+			// Add one month to active month
 			activeMonth = activeMonth.addMonths(1);
 			if (activeMonth.date().month() == 
 				mNonActiveFocusedDay.date().month()) {
+				mDirection = up;
 				// up gesture
 				upGesture(SCROLL_SPEEED);
+				setActiveDates(activeMonth.date());
 			} else {
+				mDirection = down;
 				// down gesture
 				downGesture(SCROLL_SPEEED);
+				setActiveDates(activeMonth.addMonths(-2).date());
 			}
 		} 
 		mView->setContextForActiveDay(index.row());
@@ -588,7 +777,7 @@
 	QModelIndex index = mModel->index(mCurrentRow,0);
 	QVariant itemData = index.data(Qt::UserRole + 1);
 	QVariantList list = itemData.toList();
-	list.replace(CalendarNamespace::CalendarMonthFocusRole, QString(""));
+	list.replace(CalendarNamespace::CalendarMonthFocusRole, false);
 	mModel->itemFromIndex(index)->setData(list);
 	
 	// Search for this date in the model
@@ -598,7 +787,7 @@
 			itemData = index.data(Qt::UserRole + 1);
 			list = itemData.toList();
 			list.replace(CalendarNamespace::CalendarMonthFocusRole,
-							 QString("qtg_fr_cal_focused_day_ind"));
+										 true);
 			mModel->itemFromIndex(index)->setData(list);
 			mCurrentRow = i;
 			mView->setContextForActiveDay(i);
@@ -635,15 +824,12 @@
 	end = firstDateInGrid.daysTo(endOfActiveMonth);
 	
 	// Set the active text color
-	QColor textColor = HbColorScheme::color("qtc_cal_month_active_dates");
-	if (textColor.isValid()) {
-		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, textColor);
-			mModel->itemFromIndex(index)->setData(list);
-		}
+	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
@@ -683,15 +869,12 @@
 	}
 	
 	// Set the inactive text color
-	textColor = HbColorScheme::color("qtc_cal_month_notactive_dates");
-	if (textColor.isValid()) {
-		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, textColor);
-			mModel->itemFromIndex(index)->setData(list);
-		}
+	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);
 	}
 }
 
@@ -730,6 +913,7 @@
 {
 	Q_UNUSED(option);
 	Q_UNUSED(widget);
+	painter->setRenderHint(QPainter::NonCosmeticDefaultPen);
 	
 	// Set the required attributes to the pen
 	QPen pen;
@@ -746,13 +930,29 @@
 	// Get the sizes of content widget
 	qreal contentHeight = mContentWidget->size().height();
 	qreal contentWidth = mContentWidget->size().width();
+	qreal rowWidth = 0.0;
+	int numOfRows = 0;
+	QPointF startPoint = mContentWidget->pos();
 	
-	// Get the num of rows
-	int numOfRows = mModel->rowCount() / KCalenDaysInWeek;
-	// Draw horizontal lines
-	qreal rowWidth = contentHeight / numOfRows;
+	// NOTE!!!: There is a filcker when we blindly draw equally spaced lines
+	// on complete content widget when scrolling is finished. This happens only
+	// when content widget size is changed due to the change in total number
+	// of rows when we append or prepend rows. Hence, to avoid this, we draw
+	// lines on complete content widget only when it is scrolling.
+	// That means, as soon as scrolling is finished, we will end up drawing 
+	// only 6 lines that are visible to the user.
+	if (mDirection == invalid) {
+		// Start point is left most point on the screen
+		startPoint = QPointF(0,0);
+		rowWidth = size().height() / KNumOfVisibleRows;
+		numOfRows = KNumOfVisibleRows;
+	} else {
+		// Get the num of rows
+		numOfRows = mModel->rowCount() / KCalenDaysInWeek;
+		// Draw horizontal lines
+		rowWidth = contentHeight / numOfRows;
+	}
 	
-	QPointF startPoint = mContentWidget->pos();
 	QPointF endPoint(startPoint.x() + contentWidth, 
 	                 startPoint.y());
 	
--- a/calendarui/views/src/calenmonthview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calenmonthview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -79,6 +79,8 @@
 	mLocale = HbExtendedLocale::system();
 	mFirstWeekLabel = NULL;
 	mIsPrevPaneGesture = false;
+	// Get the week day color from the theme
+	mWeekDaysColor = HbColorScheme::color("qtc_cal_week_day");
 }
 
 /*!
@@ -209,22 +211,44 @@
 
 	mMonthGrid->setView(this);
 
+	
+	
+	mIsFirstTimeLoad = true;
+	
+}
+
+/*!
+ Constructs the remaining part of the month view that was kept as 
+ part if lazy loading
+ */
+void CalenMonthView::doLazyLoading()
+{
+	// Add background items to all the widgets
+	addBackgroundFrame();
+	
+	// Construct and add the previous month and next month items to the view
+	mMonthGrid->updateMonthGridWithInActiveMonths(mMonthDataArray);
+	
+	// Check if regional information needs to be shown
+	// and add it or remove it
+	showHideRegionalInformation();
+	
 	// Connect to the menu actions
 	HbAction
-	        *newEventAction =
-	                qobject_cast<HbAction *> (
+			*newEventAction =
+					qobject_cast<HbAction *> (
 						mDocLoader->findObject(CALEN_MONTVIEW_MENU_NEWEVENT));
 
 	connect(newEventAction, SIGNAL(triggered()), this, SLOT(createEditor()));
 
 	mGoToTodayAction =
-	                qobject_cast<HbAction *> (
+					qobject_cast<HbAction *> (
 							mDocLoader->findObject(CALEN_MONTVIEW_MENU_GOTOTODAY));
 	connect(mGoToTodayAction, SIGNAL(triggered()), this, SLOT(goToToday()));
 	
 	HbAction
-	        *goToDateAction =
-	                qobject_cast<HbAction *> (
+			*goToDateAction =
+					qobject_cast<HbAction *> (
 						mDocLoader->findObject(CALEN_MONTVIEW_MENU_GOTODATE));
 
 	connect(goToDateAction, SIGNAL(triggered()), this, SLOT(goToDate()));
@@ -269,12 +293,7 @@
 	// Connect to the signal when options menu is shown
 	// This is required to add/remove dynamically some options
 	connect(menu(), SIGNAL(aboutToShow ()), this,
-	        SLOT(addRemoveActionsInMenu()));
-	
-	mIsFirstTimeLoad = true;
-	
-	// Add background items to all the widgets
-	addBackgroundFrame();
+			SLOT(addRemoveActionsInMenu()));	
 }
 
 /*!
@@ -529,29 +548,26 @@
 		long weekNumber(day.date().weekNumber());
 		mWeekNumbers.append(weekNumber);
 	}
-	
-	// Get the week day color from the theme
-	QColor weekDayColor = HbColorScheme::color("qtc_cal_week_day");
 
 	// Update the week labels text
 	QString text = QString::number(mWeekNumbers.at(0));
 	mFirstWeekLabel->setPlainText(text);
-	mFirstWeekLabel->setTextColor(weekDayColor);
+	mFirstWeekLabel->setTextColor(mWeekDaysColor);
 	text = QString::number(mWeekNumbers.at(1));
 	mSecondWeekLabel->setPlainText(text);
-	mSecondWeekLabel->setTextColor(weekDayColor);
+	mSecondWeekLabel->setTextColor(mWeekDaysColor);
 	text = QString::number(mWeekNumbers.at(2));
 	mThirdWeekLabel->setPlainText(text);
-	mThirdWeekLabel->setTextColor(weekDayColor);
+	mThirdWeekLabel->setTextColor(mWeekDaysColor);
 	text = QString::number(mWeekNumbers.at(3));
 	mFourthWeekLabel->setPlainText(text);
-	mFourthWeekLabel->setTextColor(weekDayColor);
+	mFourthWeekLabel->setTextColor(mWeekDaysColor);
 	text = QString::number(mWeekNumbers.at(4));
 	mFifthWeekLabel->setPlainText(text);
-	mFifthWeekLabel->setTextColor(weekDayColor);
+	mFifthWeekLabel->setTextColor(mWeekDaysColor);
 	text = QString::number(mWeekNumbers.at(5));
 	mSixthWeekLabel->setPlainText(text);
-	mSixthWeekLabel->setTextColor(weekDayColor);
+	mSixthWeekLabel->setTextColor(mWeekDaysColor);
 }
 
 /*!
@@ -617,22 +633,22 @@
 			handleChangeOrientation();
 		}
 	}
-	mIsFirstTimeLoad = false;
+	
 	// prepare for the population like reading the date frm the context 
 	// calculating the start of the grid etc.,
 	prepareForPopulation();
-
-	// fetch list of required calendar instances
-	populateWithInstanceView();
-
-	populatePreviewPane(mDate);
-
+	
+	// Populate the view and preview panes only if we are not opening the calendar
+	if (!mIsFirstTimeLoad) {
+		// fetch list of required calendar instances
+		populateWithInstanceView();
+		// Populate the preview panes
+		populatePreviewPane(mDate);
+	}
+	
 	// Create the grid items with proper dates
 	createGrid();
 	
-	// Check if regional information needs to be shown
-	// and add it or remove it
-	showHideRegionalInformation();
 
 	// Complete the population
 	completePopulation();
@@ -642,6 +658,14 @@
 	
 	// Start the auto scroll on current preview pane
 	mCurrPreviewPane->startAutoScroll();
+	
+	// Handle regional data here if we are not populating the month view for
+	// the first time
+	if (!mIsFirstTimeLoad) {
+		showHideRegionalInformation();
+	}
+	// Reset the first time load flag
+	mIsFirstTimeLoad = false;
 }
 
 /*!
@@ -651,6 +675,7 @@
 {
 	setActiveDay(dateFromContext(mServices.Context()));
 	setDate();
+	updateMonthDataArrayWithActiveDates();
 }
 
 /*!
@@ -660,13 +685,15 @@
 {
 	setActiveDay(dateFromContext(mServices.Context()));
 	setDate();
+	updateMonthDataArrayWithActiveDates();
 	setDateToLabel();
 	// fetch list of required calendar instances
 	populateWithInstanceView();
 
 	populatePreviewPane(mDate);
 	
-	mMonthGrid->updateMonthGridModel(mMonthDataArray, mIndexToBeScrolled);
+	mMonthGrid->updateMonthGridModel(mMonthDataArray, mIndexToBeScrolled, 
+	                                 mIsFirstTimeLoad);
 	
 	// Start the auto scroll on current preview pane
 	mCurrPreviewPane->startAutoScroll();
@@ -804,7 +831,8 @@
 void CalenMonthView::createGrid()
 {
 	// Update the month grid
-	mMonthGrid->updateMonthGridModel(mMonthDataArray, mIndexToBeScrolled);
+	mMonthGrid->updateMonthGridModel(mMonthDataArray, mIndexToBeScrolled, 
+	                                 mIsFirstTimeLoad);
 
 	// Read the week number setting from cenrep
 	QVariant value = mSettingsManager->readItemValue(*mWeekNumberCenrepKey);
@@ -1016,7 +1044,7 @@
 /*!
  Fetches the calenda entries for a given range
  */
-void CalenMonthView::getInstanceList(QList<AgendaEntry> &list,
+void CalenMonthView::getInstanceList(QList<QDate> &list,
                                      QDateTime rangeStart, QDateTime rangeEnd)
 {
 	AgendaUtil::FilterFlags filter =
@@ -1025,7 +1053,7 @@
 	                | AgendaUtil::IncludeEvents
 	                | AgendaUtil::IncludeReminders
 	                | AgendaUtil::IncludeIncompletedTodos);
-	list = mAgendaUtil->fetchEntriesInRange(rangeStart, rangeEnd, filter);
+	mAgendaUtil->markDatesWithEvents(rangeStart, rangeEnd, filter, list);
 }
 
 /*!
@@ -1040,18 +1068,10 @@
 	const int todayIndex(gridStart.daysTo(today)); 
 
 	QDateTime gridEnd(mLastDayOfGrid.date(), QTime(23, 59, 59, 0));
-	QList<AgendaEntry> list;
-
-	AgendaUtil::FilterFlags filter =
-		        AgendaUtil::FilterFlags(AgendaUtil::IncludeAnniversaries
-		                | AgendaUtil::IncludeAppointments
-		                | AgendaUtil::IncludeEvents
-		                | AgendaUtil::IncludeReminders
-		                | AgendaUtil::IncludeIncompletedTodos);
 	
 	// Get the list of dates which have events
 	QList<QDate> datesWithEvents;
-	mAgendaUtil->markDatesWithEvents(gridStart,gridEnd,filter,datesWithEvents);
+	getInstanceList(datesWithEvents,gridStart,gridEnd);
 	
 	// Parse thru the list of dates and set the required flags
 	for(int i(0); i < datesWithEvents.count(); i++) {
@@ -1068,7 +1088,6 @@
  */
 void CalenMonthView::populatePrevMonth()
 {
-	QList<AgendaEntry> list;
 	const QDateTime gridStart(CalenDateUtils::beginningOfDay(mFirstDayOfGrid));
 	const QDateTime today(CalenDateUtils::today());
 
@@ -1077,23 +1096,15 @@
 	QDateTime gridEnd(end.date(), QTime(23, 59, 59, 0));
 
 
-	AgendaUtil::FilterFlags filter =
-		        AgendaUtil::FilterFlags(AgendaUtil::IncludeAnniversaries
-		                | AgendaUtil::IncludeAppointments
-		                | AgendaUtil::IncludeEvents
-		                | AgendaUtil::IncludeReminders
-		                | AgendaUtil::IncludeIncompletedTodos);
-						
 	// Get the list of dates which have events
 	QList<QDate> datesWithEvents;
-	mAgendaUtil->markDatesWithEvents(gridStart,gridEnd,filter,datesWithEvents);
+	getInstanceList(datesWithEvents,gridStart,gridEnd);
 	
 	// Parse thru the list of dates and set the required flags
 	for(int i(0); i < datesWithEvents.count(); i++) {
 		int offset = mFirstDayOfGrid.date().daysTo(datesWithEvents.at(i));
 		mMonthDataArray[offset].SetHasEvents(true);
 	}
-	
 	datesWithEvents.clear();
 }
 
@@ -1112,27 +1123,30 @@
 	const int todayIndex(gridStart.daysTo(today)); // grid index for "today"
 	QDateTime gridEnd(mLastDayOfGrid.date(), QTime(23, 59, 59, 0));
 
-
-	AgendaUtil::FilterFlags filter =
-		        AgendaUtil::FilterFlags(AgendaUtil::IncludeAnniversaries
-		                | AgendaUtil::IncludeAppointments
-		                | AgendaUtil::IncludeEvents
-		                | AgendaUtil::IncludeReminders
-		                | AgendaUtil::IncludeIncompletedTodos);
-						
 	// Get the list of dates which have events
 	QList<QDate> datesWithEvents;
-	mAgendaUtil->markDatesWithEvents(gridStart,gridEnd,filter,datesWithEvents);
+	getInstanceList(datesWithEvents,gridStart,gridEnd);
 	
 	// Parse thru the list of dates and set the required flags
 	for(int i(0); i < datesWithEvents.count(); i++) {
 		int offset = mFirstDayOfGrid.date().daysTo(datesWithEvents.at(i));
 		mMonthDataArray[offset].SetHasEvents(true);
 	}
-
+	datesWithEvents.clear();
+}
 
-	
-	datesWithEvents.clear();
+/*!
+	Function that gets called when instacne view is created, so that it can
+	query agenda server for any entries
+ */
+void CalenMonthView::fetchEntriesAndUpdateModel()
+{
+	// Get to know if entries are there from the agenda server
+	populateWithInstanceView();
+	// Update the month grid model
+	mMonthGrid->updateMonthGridWithEventIndicators(mMonthDataArray);
+	// Populate the preview panes
+	populatePreviewPane(mDate);
 }
 
 /*!
@@ -1163,29 +1177,6 @@
 }
 
 /*!
- Handles the long press on a grid item
- */
-void CalenMonthView::handleGridItemLongPressed(int index, QPointF &coords)
-{
-	QDateTime newActiveDay = CalenDateUtils::futureOf(mFirstDayOfGrid, index);
-
-	// set the context
-	mServices.Context().setFocusDateL(newActiveDay, KCalenMonthViewUidValue);
-
-	HbMenu *contextMenu = new HbMenu(this);
-
-	connect(contextMenu->addAction(hbTrId("txt_common_menu_open")), SIGNAL( triggered() ), this,
-	        SLOT( launchDayView()));
-	// TODO: Add the text id
-	connect(contextMenu->addAction("New Todo"), SIGNAL( triggered() ), this,
-	        SLOT( createEditor()));
-
-	// Show context sensitive menu. 
-	// Param const QPointF& coordinate - is a longpress position.
-	contextMenu->exec(coords);
-}
-
-/*!
  Sets the context w.r.t to the active day
  */
 void CalenMonthView::setContextForActiveDay(int index)
--- a/calendarui/views/src/calennativeview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calennativeview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -95,27 +95,31 @@
  */
 void CalenNativeView::goToDate()
 {
+	// Create a popup with datepicker for the user to select date.
+	HbDialog *popUp = new HbDialog();
+	popUp->setDismissPolicy(HbDialog::NoDismiss);
+	popUp->setTimeout(HbDialog::NoTimeout);
+	popUp->setAttribute( Qt::WA_DeleteOnClose, true );
+	popUp->setHeadingWidget(new HbLabel(hbTrId("txt_calendar_opt_go_to_date")));
+	
 	// Get the current date.
 	QDateTime currentDateTime = CalenDateUtils::today();
 	QDate currentDate = currentDateTime.date();
-	mDatePicker = new HbDateTimePicker(currentDate, this);
-
+	if(mDatePicker) {
+		mDatePicker = NULL;
+	}
+	mDatePicker = new HbDateTimePicker(currentDate, popUp);
 	// Set the date range.
 	mDatePicker->setMinimumDate(CalenDateUtils::minTime().date());
 	mDatePicker->setMaximumDate(CalenDateUtils::maxTime().date());
-
-	// Create a popup with datepicker for the user to select date.
-	HbDialog popUp;
-	popUp.setDismissPolicy(HbDialog::NoDismiss);
-	popUp.setTimeout(HbDialog::NoTimeout);
-	popUp.setHeadingWidget(new HbLabel(hbTrId("txt_calendar_opt_go_to_date")));
-	popUp.setContentWidget(mDatePicker);
+	mDatePicker->setDate(currentDate);
+	
+	popUp->setContentWidget(mDatePicker);
 	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
-	popUp.setPrimaryAction(okAction);
+	popUp->addAction(okAction);
 	connect(okAction, SIGNAL(triggered()), this, SLOT(goToSelectedDate()));
-	connect(okAction, SIGNAL(triggered()), &popUp, SLOT(close()));
-	popUp.setSecondaryAction(new HbAction(hbTrId("txt_common_button_cancel"), &popUp));
-	popUp.exec();
+	popUp->addAction(new HbAction(hbTrId("txt_common_button_cancel"), popUp));
+	popUp->open();
 }
 
 /*
--- a/calendarui/views/src/calensettingsview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/calendarui/views/src/calensettingsview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -81,7 +81,7 @@
     
     // Add view on main window and set back softkey
 	mServices.MainWindow().addView(this);
-	mSoftKeyAction = new HbAction(Hb::BackAction);
+	mSoftKeyAction = new HbAction(Hb::BackNaviAction);
 	setNavigationAction(mSoftKeyAction);
 	connect(mSoftKeyAction, SIGNAL(triggered()), 
 											this, SLOT(launchPreviousView()));
--- a/clock/clockmw/bwins/clockalarmclientu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/bwins/clockalarmclientu.def	Tue May 18 13:16:49 2010 +0100
@@ -24,4 +24,5 @@
 	?setAlarmRepeatType@AlarmClient@@AAEXW4TAlarmRepeatDefinition@@AAW4AlarmRepeatType@@@Z @ 23 NONAME ; void AlarmClient::setAlarmRepeatType(enum TAlarmRepeatDefinition, enum AlarmRepeatType &)
 	?qt_metacall@AlarmClient@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 24 NONAME ; int AlarmClient::qt_metacall(enum QMetaObject::Call, int, void * *)
 	?getAlarmInfo@AlarmClient@@QAEHHAAUAlarmInfo@@@Z @ 25 NONAME ; int AlarmClient::getAlarmInfo(int, struct AlarmInfo &)
+	?deleteSnoozedAlarm@AlarmClient@@QAEHH@Z @ 26 NONAME ; int AlarmClient::deleteSnoozedAlarm(int)
 
--- a/clock/clockmw/bwins/clocksettingsutilityu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/bwins/clocksettingsutilityu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,40 +1,34 @@
 EXPORTS
 	?timeFormat@SettingsUtility@@QAEHAAVQStringList@@@Z @ 1 NONAME ; int SettingsUtility::timeFormat(class QStringList &)
 	?setSnoozeTime@SettingsUtility@@QAEXH@Z @ 2 NONAME ; void SettingsUtility::setSnoozeTime(int)
-	?setDateFormat@SettingsUtility@@QAEXABVQString@@@Z @ 3 NONAME ; void SettingsUtility::setDateFormat(class QString const &)
-	?time@SettingsUtility@@QAE?AVQString@@XZ @ 4 NONAME ; class QString SettingsUtility::time(void)
-	?staticMetaObject@SettingsUtility@@2UQMetaObject@@B @ 5 NONAME ; struct QMetaObject const SettingsUtility::staticMetaObject
-	?clockType@SettingsUtility@@QAEHAAVQStringList@@@Z @ 6 NONAME ; int SettingsUtility::clockType(class QStringList &)
-	?setDateSeparator@SettingsUtility@@QAEXABVQString@@@Z @ 7 NONAME ; void SettingsUtility::setDateSeparator(class QString const &)
-	?autoUpdate@SettingsUtility@@QAEHAAVQStringList@@@Z @ 8 NONAME ; int SettingsUtility::autoUpdate(class QStringList &)
-	?dateSeparator@SettingsUtility@@QAEHAAVQStringList@@@Z @ 9 NONAME ; int SettingsUtility::dateSeparator(class QStringList &)
-	?setTimeZone@SettingsUtility@@QAEXABVQString@@@Z @ 10 NONAME ; void SettingsUtility::setTimeZone(class QString const &)
-	?setAutoUpdate@SettingsUtility@@QAEXABVQString@@@Z @ 11 NONAME ; void SettingsUtility::setAutoUpdate(class QString const &)
-	?setTime@SettingsUtility@@QAEXABVQString@@@Z @ 12 NONAME ; void SettingsUtility::setTime(class QString const &)
-	??_ESettingsUtility@@UAE@I@Z @ 13 NONAME ; SettingsUtility::~SettingsUtility(unsigned int)
-	??0SettingsUtility@@QAE@PAVQObject@@@Z @ 14 NONAME ; SettingsUtility::SettingsUtility(class QObject *)
-	?qt_metacall@SettingsUtility@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 15 NONAME ; int SettingsUtility::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?setClockType@SettingsUtility@@QAEXABVQString@@@Z @ 16 NONAME ; void SettingsUtility::setClockType(class QString const &)
-	?setTimeFormat@SettingsUtility@@QAEXABVQString@@@Z @ 17 NONAME ; void SettingsUtility::setTimeFormat(class QString const &)
-	?settingsChanged@SettingsUtility@@IAEXW4SettingsItemChanged@@VQString@@@Z @ 18 NONAME ; void SettingsUtility::settingsChanged(enum SettingsItemChanged, class QString)
-	?timeFormatString@SettingsUtility@@QAE?AVQString@@XZ @ 19 NONAME ; class QString SettingsUtility::timeFormatString(void)
-	?tr@SettingsUtility@@SA?AVQString@@PBD0H@Z @ 20 NONAME ; class QString SettingsUtility::tr(char const *, char const *, int)
-	?setStartOfWeek@SettingsUtility@@QAEXH@Z @ 21 NONAME ; void SettingsUtility::setStartOfWeek(int)
-	?getStaticMetaObject@SettingsUtility@@SAABUQMetaObject@@XZ @ 22 NONAME ; struct QMetaObject const & SettingsUtility::getStaticMetaObject(void)
-	?workdays@SettingsUtility@@QAEHAAVQStringList@@@Z @ 23 NONAME ; int SettingsUtility::workdays(class QStringList &)
-	?date@SettingsUtility@@QAE?AVQString@@XZ @ 24 NONAME ; class QString SettingsUtility::date(void)
-	?dateFormat@SettingsUtility@@QAEHAAVQStringList@@@Z @ 25 NONAME ; int SettingsUtility::dateFormat(class QStringList &)
-	?setTimeSeparator@SettingsUtility@@QAEXABVQString@@@Z @ 26 NONAME ; void SettingsUtility::setTimeSeparator(class QString const &)
-	?qt_metacast@SettingsUtility@@UAEPAXPBD@Z @ 27 NONAME ; void * SettingsUtility::qt_metacast(char const *)
-	?snoozeTime@SettingsUtility@@QAEHAAVQStringList@@@Z @ 28 NONAME ; int SettingsUtility::snoozeTime(class QStringList &)
-	?setWorkdays@SettingsUtility@@QAEXABVQString@@@Z @ 29 NONAME ; void SettingsUtility::setWorkdays(class QString const &)
-	?dateFormatString@SettingsUtility@@QAE?AVQString@@XZ @ 30 NONAME ; class QString SettingsUtility::dateFormatString(void)
-	?metaObject@SettingsUtility@@UBEPBUQMetaObject@@XZ @ 31 NONAME ; struct QMetaObject const * SettingsUtility::metaObject(void) const
-	?timeZone@SettingsUtility@@QAE?AVQString@@XZ @ 32 NONAME ; class QString SettingsUtility::timeZone(void)
-	?timeSeparator@SettingsUtility@@QAEHAAVQStringList@@@Z @ 33 NONAME ; int SettingsUtility::timeSeparator(class QStringList &)
-	??1SettingsUtility@@UAE@XZ @ 34 NONAME ; SettingsUtility::~SettingsUtility(void)
-	?trUtf8@SettingsUtility@@SA?AVQString@@PBD0@Z @ 35 NONAME ; class QString SettingsUtility::trUtf8(char const *, char const *)
-	?tr@SettingsUtility@@SA?AVQString@@PBD0@Z @ 36 NONAME ; class QString SettingsUtility::tr(char const *, char const *)
-	?trUtf8@SettingsUtility@@SA?AVQString@@PBD0H@Z @ 37 NONAME ; class QString SettingsUtility::trUtf8(char const *, char const *, int)
-	?setDate@SettingsUtility@@QAEXABVQString@@@Z @ 38 NONAME ; void SettingsUtility::setDate(class QString const &)
+	?workdays@SettingsUtility@@QAEHAAVQStringList@@@Z @ 3 NONAME ; int SettingsUtility::workdays(class QStringList &)
+	?setDateFormat@SettingsUtility@@QAEXABVQString@@@Z @ 4 NONAME ; void SettingsUtility::setDateFormat(class QString const &)
+	?time@SettingsUtility@@QAE?AVQString@@XZ @ 5 NONAME ; class QString SettingsUtility::time(void)
+	?staticMetaObject@SettingsUtility@@2UQMetaObject@@B @ 6 NONAME ; struct QMetaObject const SettingsUtility::staticMetaObject
+	?clockType@SettingsUtility@@QAEHAAVQStringList@@@Z @ 7 NONAME ; int SettingsUtility::clockType(class QStringList &)
+	?setDateSeparator@SettingsUtility@@QAEXABVQString@@@Z @ 8 NONAME ; void SettingsUtility::setDateSeparator(class QString const &)
+	?date@SettingsUtility@@QAE?AVQString@@XZ @ 9 NONAME ; class QString SettingsUtility::date(void)
+	?dateFormat@SettingsUtility@@QAEHAAVQStringList@@@Z @ 10 NONAME ; int SettingsUtility::dateFormat(class QStringList &)
+	?dateSeparator@SettingsUtility@@QAEHAAVQStringList@@@Z @ 11 NONAME ; int SettingsUtility::dateSeparator(class QStringList &)
+	?setTimeSeparator@SettingsUtility@@QAEXABVQString@@@Z @ 12 NONAME ; void SettingsUtility::setTimeSeparator(class QString const &)
+	?snoozeTime@SettingsUtility@@QAEHAAVQStringList@@@Z @ 13 NONAME ; int SettingsUtility::snoozeTime(class QStringList &)
+	?qt_metacast@SettingsUtility@@UAEPAXPBD@Z @ 14 NONAME ; void * SettingsUtility::qt_metacast(char const *)
+	?setWorkdays@SettingsUtility@@QAEXABVQString@@@Z @ 15 NONAME ; void SettingsUtility::setWorkdays(class QString const &)
+	?dateFormatString@SettingsUtility@@QAE?AVQString@@XZ @ 16 NONAME ; class QString SettingsUtility::dateFormatString(void)
+	??_ESettingsUtility@@UAE@I@Z @ 17 NONAME ; SettingsUtility::~SettingsUtility(unsigned int)
+	?metaObject@SettingsUtility@@UBEPBUQMetaObject@@XZ @ 18 NONAME ; struct QMetaObject const * SettingsUtility::metaObject(void) const
+	??0SettingsUtility@@QAE@PAVQObject@@@Z @ 19 NONAME ; SettingsUtility::SettingsUtility(class QObject *)
+	?qt_metacall@SettingsUtility@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 20 NONAME ; int SettingsUtility::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?timeSeparator@SettingsUtility@@QAEHAAVQStringList@@@Z @ 21 NONAME ; int SettingsUtility::timeSeparator(class QStringList &)
+	?setClockType@SettingsUtility@@QAEXABVQString@@@Z @ 22 NONAME ; void SettingsUtility::setClockType(class QString const &)
+	?setTimeFormat@SettingsUtility@@QAEXABVQString@@@Z @ 23 NONAME ; void SettingsUtility::setTimeFormat(class QString const &)
+	?settingsChanged@SettingsUtility@@IAEXW4SettingsItemChanged@@VQString@@@Z @ 24 NONAME ; void SettingsUtility::settingsChanged(enum SettingsItemChanged, class QString)
+	?timeFormatString@SettingsUtility@@QAE?AVQString@@XZ @ 25 NONAME ; class QString SettingsUtility::timeFormatString(void)
+	?tr@SettingsUtility@@SA?AVQString@@PBD0H@Z @ 26 NONAME ; class QString SettingsUtility::tr(char const *, char const *, int)
+	??1SettingsUtility@@UAE@XZ @ 27 NONAME ; SettingsUtility::~SettingsUtility(void)
+	?setStartOfWeek@SettingsUtility@@QAEXH@Z @ 28 NONAME ; void SettingsUtility::setStartOfWeek(int)
+	?trUtf8@SettingsUtility@@SA?AVQString@@PBD0@Z @ 29 NONAME ; class QString SettingsUtility::trUtf8(char const *, char const *)
+	?tr@SettingsUtility@@SA?AVQString@@PBD0@Z @ 30 NONAME ; class QString SettingsUtility::tr(char const *, char const *)
+	?trUtf8@SettingsUtility@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString SettingsUtility::trUtf8(char const *, char const *, int)
+	?getStaticMetaObject@SettingsUtility@@SAABUQMetaObject@@XZ @ 32 NONAME ; struct QMetaObject const & SettingsUtility::getStaticMetaObject(void)
 
--- a/clock/clockmw/bwins/timezoneclientu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/bwins/timezoneclientu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,45 +1,53 @@
 EXPORTS
-	??_ETimezoneClient@@UAE@I@Z @ 1 NONAME ; TimezoneClient::~TimezoneClient(unsigned int)
-	?locationSelectorModel@TimezoneClient@@QAEPAVQStandardItemModel@@XZ @ 2 NONAME ; class QStandardItemModel * TimezoneClient::locationSelectorModel(void)
-	?getUtcDstOffsetL@TimezoneClient@@QAE_NAAHABVCTzId@@@Z @ 3 NONAME ; bool TimezoneClient::getUtcDstOffsetL(int &, class CTzId const &)
-	?getLocations@TimezoneClient@@QAE?AV?$QList@ULocationInfo@@@@XZ @ 4 NONAME ; class QList<struct LocationInfo> TimezoneClient::getLocations(void)
-	?getCityOffsetByNameAndId@TimezoneClient@@QAEHABVQString@@H@Z @ 5 NONAME ; int TimezoneClient::getCityOffsetByNameAndId(class QString const &, int)
-	?intToMonth@TimezoneClient@@AAE?AW4TMonth@@H@Z @ 6 NONAME ; enum TMonth TimezoneClient::intToMonth(int)
-	?getDstZoneOffset@TimezoneClient@@AAEHH@Z @ 7 NONAME ; int TimezoneClient::getDstZoneOffset(int)
-	?environmentCallback@TimezoneClient@@SAHPAX@Z @ 8 NONAME ; int TimezoneClient::environmentCallback(void *)
-	?trUtf8@TimezoneClient@@SA?AVQString@@PBD0H@Z @ 9 NONAME ; class QString TimezoneClient::trUtf8(char const *, char const *, int)
-	?getStandardOffset@TimezoneClient@@QAEHH@Z @ 10 NONAME ; int TimezoneClient::getStandardOffset(int)
-	?getCurrentZoneInfoL@TimezoneClient@@QAE?AULocationInfo@@XZ @ 11 NONAME ; struct LocationInfo TimezoneClient::getCurrentZoneInfoL(void)
-	?createWorldClockModel@TimezoneClient@@QAEXXZ @ 12 NONAME ; void TimezoneClient::createWorldClockModel(void)
-	?dstOn@TimezoneClient@@QAE_NH@Z @ 13 NONAME ; bool TimezoneClient::dstOn(int)
-	?tr@TimezoneClient@@SA?AVQString@@PBD0H@Z @ 14 NONAME ; class QString TimezoneClient::tr(char const *, char const *, int)
-	?setAsCurrentLocationL@TimezoneClient@@QAEXAAULocationInfo@@@Z @ 15 NONAME ; void TimezoneClient::setAsCurrentLocationL(struct LocationInfo &)
-	?timeUpdateOn@TimezoneClient@@QAE_NXZ @ 16 NONAME ; bool TimezoneClient::timeUpdateOn(void)
-	?staticMetaObject@TimezoneClient@@2UQMetaObject@@B @ 17 NONAME ; struct QMetaObject const TimezoneClient::staticMetaObject
-	?qt_metacast@TimezoneClient@@UAEPAXPBD@Z @ 18 NONAME ; void * TimezoneClient::qt_metacast(char const *)
-	?trUtf8@TimezoneClient@@SA?AVQString@@PBD0@Z @ 19 NONAME ; class QString TimezoneClient::trUtf8(char const *, char const *)
-	?getDstRulesL@TimezoneClient@@QAEXAAVQDateTime@@0H@Z @ 20 NONAME ; void TimezoneClient::getDstRulesL(class QDateTime &, class QDateTime &, int)
-	?getSavedLocations@TimezoneClient@@QAE?AV?$QList@ULocationInfo@@@@XZ @ 21 NONAME ; class QList<struct LocationInfo> TimezoneClient::getSavedLocations(void)
-	?listUpdated@TimezoneClient@@IAEXXZ @ 22 NONAME ; void TimezoneClient::listUpdated(void)
-	?populateCities@TimezoneClient@@AAEXXZ @ 23 NONAME ; void TimezoneClient::populateCities(void)
-	?tr@TimezoneClient@@SA?AVQString@@PBD0@Z @ 24 NONAME ; class QString TimezoneClient::tr(char const *, char const *)
-	?getStaticMetaObject@TimezoneClient@@SAABUQMetaObject@@XZ @ 25 NONAME ; struct QMetaObject const & TimezoneClient::getStaticMetaObject(void)
-	?metaObject@TimezoneClient@@UBEPBUQMetaObject@@XZ @ 26 NONAME ; struct QMetaObject const * TimezoneClient::metaObject(void) const
-	?setDateTime@TimezoneClient@@QAEXVQDateTime@@@Z @ 27 NONAME ; void TimezoneClient::setDateTime(class QDateTime)
-	??0TimezoneClient@@QAE@PAVQObject@@@Z @ 28 NONAME ; TimezoneClient::TimezoneClient(class QObject *)
-	?setTimeUpdateOn@TimezoneClient@@QAEX_N@Z @ 29 NONAME ; void TimezoneClient::setTimeUpdateOn(bool)
-	?getCountries@TimezoneClient@@QAEXAAV?$QMap@VQString@@H@@@Z @ 30 NONAME ; void TimezoneClient::getCountries(class QMap<class QString, int> &)
-	?getCityGroupIdByName@TimezoneClient@@QAEHABVQString@@@Z @ 31 NONAME ; int TimezoneClient::getCityGroupIdByName(class QString const &)
-	?checkForDstChange@TimezoneClient@@QAE_NAAUAlarmInfo@@@Z @ 32 NONAME ; bool TimezoneClient::checkForDstChange(struct AlarmInfo &)
-	?getCitiesForCountry@TimezoneClient@@QAEXHAAV?$QMap@VQString@@H@@@Z @ 33 NONAME ; void TimezoneClient::getCitiesForCountry(int, class QMap<class QString, int> &)
-	?isDSTOnL@TimezoneClient@@QAE_NH@Z @ 34 NONAME ; bool TimezoneClient::isDSTOnL(int)
-	?timechanged@TimezoneClient@@IAEXXZ @ 35 NONAME ; void TimezoneClient::timechanged(void)
-	??1TimezoneClient@@UAE@XZ @ 36 NONAME ; TimezoneClient::~TimezoneClient(void)
-	?saveLocations@TimezoneClient@@QAEXABV?$QList@ULocationInfo@@@@@Z @ 37 NONAME ; void TimezoneClient::saveLocations(class QList<struct LocationInfo> const &)
-	?getLocationInfo@TimezoneClient@@QAEXHHAAULocationInfo@@@Z @ 38 NONAME ; void TimezoneClient::getLocationInfo(int, int, struct LocationInfo &)
-	?qt_metacall@TimezoneClient@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 39 NONAME ; int TimezoneClient::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?addCity@TimezoneClient@@QAE?AULocationInfo@@HAAVQString@@H@Z @ 40 NONAME ; struct LocationInfo TimezoneClient::addCity(int, class QString &, int)
-	?getAllTimeZoneOffsets@TimezoneClient@@QAE?AV?$QList@H@@XZ @ 41 NONAME ; class QList<int> TimezoneClient::getAllTimeZoneOffsets(void)
-	?getCountriesForUTCOffset@TimezoneClient@@QAE?AV?$QList@ULocationInfo@@@@H@Z @ 42 NONAME ; class QList<struct LocationInfo> TimezoneClient::getCountriesForUTCOffset(int)
-	?getAllTimeZoneIds@TimezoneClient@@QAE?AV?$QList@H@@XZ @ 43 NONAME ; class QList<int> TimezoneClient::getAllTimeZoneIds(void)
+	?deleteInstance@TimezoneClient@@QAEXXZ @ 1 NONAME ; void TimezoneClient::deleteInstance(void)
+	?addCity@TimezoneClient@@QAE?AULocationInfo@@HAAVQString@@H@Z @ 2 NONAME ; struct LocationInfo TimezoneClient::addCity(int, class QString &, int)
+	?isNull@TimezoneClient@@QAE_NXZ @ 3 NONAME ; bool TimezoneClient::isNull(void)
+	??_ETimezoneClient@@UAE@I@Z @ 4 NONAME ; TimezoneClient::~TimezoneClient(unsigned int)
+	?getLocations@TimezoneClient@@QAEAAV?$QList@ULocationInfo@@@@XZ @ 5 NONAME ; class QList<struct LocationInfo> & TimezoneClient::getLocations(void)
+	?getDstRulesL@TimezoneClient@@AAEXAAVQDateTime@@0H@Z @ 6 NONAME ; void TimezoneClient::getDstRulesL(class QDateTime &, class QDateTime &, int)
+	?locationSelectorModel@TimezoneClient@@QAEPAVQStandardItemModel@@XZ @ 7 NONAME ; class QStandardItemModel * TimezoneClient::locationSelectorModel(void)
+	?getUtcDstOffsetL@TimezoneClient@@AAE_NAAHABVCTzId@@@Z @ 8 NONAME ; bool TimezoneClient::getUtcDstOffsetL(int &, class CTzId const &)
+	?mReferenceCount@TimezoneClient@@0HA @ 9 NONAME ; int TimezoneClient::mReferenceCount
+	??0TimezoneClient@@AAE@XZ @ 10 NONAME ; TimezoneClient::TimezoneClient(void)
+	?intToMonth@TimezoneClient@@AAE?AW4TMonth@@H@Z @ 11 NONAME ; enum TMonth TimezoneClient::intToMonth(int)
+	?getDstZoneOffset@TimezoneClient@@AAEHH@Z @ 12 NONAME ; int TimezoneClient::getDstZoneOffset(int)
+	?environmentCallback@TimezoneClient@@SAHPAX@Z @ 13 NONAME ; int TimezoneClient::environmentCallback(void *)
+	?trUtf8@TimezoneClient@@SA?AVQString@@PBD0H@Z @ 14 NONAME ; class QString TimezoneClient::trUtf8(char const *, char const *, int)
+	?getStandardOffset@TimezoneClient@@QAEHH@Z @ 15 NONAME ; int TimezoneClient::getStandardOffset(int)
+	?getCurrentZoneInfoL@TimezoneClient@@QAE?AULocationInfo@@XZ @ 16 NONAME ; struct LocationInfo TimezoneClient::getCurrentZoneInfoL(void)
+	?dstOn@TimezoneClient@@QAE_NH@Z @ 17 NONAME ; bool TimezoneClient::dstOn(int)
+	?createWorldClockModel@TimezoneClient@@QAEXXZ @ 18 NONAME ; void TimezoneClient::createWorldClockModel(void)
+	?tr@TimezoneClient@@SA?AVQString@@PBD0H@Z @ 19 NONAME ; class QString TimezoneClient::tr(char const *, char const *, int)
+	?setAsCurrentLocationL@TimezoneClient@@QAEXAAULocationInfo@@@Z @ 20 NONAME ; void TimezoneClient::setAsCurrentLocationL(struct LocationInfo &)
+	?eventMonitor@TimezoneClient@@AAEXABVXQSettingsKey@@ABVQVariant@@@Z @ 21 NONAME ; void TimezoneClient::eventMonitor(class XQSettingsKey const &, class QVariant const &)
+	?getInstance@TimezoneClient@@SAPAV1@XZ @ 22 NONAME ; class TimezoneClient * TimezoneClient::getInstance(void)
+	?getCityGroupIdByName@TimezoneClient@@AAEHABVQString@@@Z @ 23 NONAME ; int TimezoneClient::getCityGroupIdByName(class QString const &)
+	?getCityOffsetByNameAndId@TimezoneClient@@AAEHABVQString@@H@Z @ 24 NONAME ; int TimezoneClient::getCityOffsetByNameAndId(class QString const &, int)
+	?getAllTimeZoneOffsets@TimezoneClient@@QAE?AV?$QList@H@@XZ @ 25 NONAME ; class QList<int> TimezoneClient::getAllTimeZoneOffsets(void)
+	?getCitiesForCountry@TimezoneClient@@AAEXHAAV?$QMap@VQString@@H@@@Z @ 26 NONAME ; void TimezoneClient::getCitiesForCountry(int, class QMap<class QString, int> &)
+	?getCountriesForUTCOffset@TimezoneClient@@QAE?AV?$QList@ULocationInfo@@@@H@Z @ 27 NONAME ; class QList<struct LocationInfo> TimezoneClient::getCountriesForUTCOffset(int)
+	??1TimezoneClient@@EAE@XZ @ 28 NONAME ; TimezoneClient::~TimezoneClient(void)
+	?timeUpdateOn@TimezoneClient@@QAE_NXZ @ 29 NONAME ; bool TimezoneClient::timeUpdateOn(void)
+	?staticMetaObject@TimezoneClient@@2UQMetaObject@@B @ 30 NONAME ; struct QMetaObject const TimezoneClient::staticMetaObject
+	?qt_metacast@TimezoneClient@@UAEPAXPBD@Z @ 31 NONAME ; void * TimezoneClient::qt_metacast(char const *)
+	?autoTimeUpdateChanged@TimezoneClient@@IAEXH@Z @ 32 NONAME ; void TimezoneClient::autoTimeUpdateChanged(int)
+	?trUtf8@TimezoneClient@@SA?AVQString@@PBD0@Z @ 33 NONAME ; class QString TimezoneClient::trUtf8(char const *, char const *)
+	?listUpdated@TimezoneClient@@IAEXXZ @ 34 NONAME ; void TimezoneClient::listUpdated(void)
+	?getSavedLocations@TimezoneClient@@QAE?AV?$QList@ULocationInfo@@@@XZ @ 35 NONAME ; class QList<struct LocationInfo> TimezoneClient::getSavedLocations(void)
+	?getLocationInfo@TimezoneClient@@AAEXHHAAULocationInfo@@@Z @ 36 NONAME ; void TimezoneClient::getLocationInfo(int, int, struct LocationInfo &)
+	?getAllTimeZoneIds@TimezoneClient@@QAE?AV?$QList@H@@XZ @ 37 NONAME ; class QList<int> TimezoneClient::getAllTimeZoneIds(void)
+	?populateCities@TimezoneClient@@AAEXXZ @ 38 NONAME ; void TimezoneClient::populateCities(void)
+	?tr@TimezoneClient@@SA?AVQString@@PBD0@Z @ 39 NONAME ; class QString TimezoneClient::tr(char const *, char const *)
+	?setDateTime@TimezoneClient@@QAEXVQDateTime@@@Z @ 40 NONAME ; void TimezoneClient::setDateTime(class QDateTime)
+	?metaObject@TimezoneClient@@UBEPBUQMetaObject@@XZ @ 41 NONAME ; struct QMetaObject const * TimezoneClient::metaObject(void) const
+	?getStaticMetaObject@TimezoneClient@@SAABUQMetaObject@@XZ @ 42 NONAME ; struct QMetaObject const & TimezoneClient::getStaticMetaObject(void)
+	?mTimezoneClient@TimezoneClient@@0PAV1@A @ 43 NONAME ; class TimezoneClient * TimezoneClient::mTimezoneClient
+	?cityUpdated@TimezoneClient@@IAEXXZ @ 44 NONAME ; void TimezoneClient::cityUpdated(void)
+	?setTimeUpdateOn@TimezoneClient@@QAEX_N@Z @ 45 NONAME ; void TimezoneClient::setTimeUpdateOn(bool)
+	?getCountries@TimezoneClient@@QAEXAAV?$QMap@VQString@@H@@@Z @ 46 NONAME ; void TimezoneClient::getCountries(class QMap<class QString, int> &)
+	?checkForDstChange@TimezoneClient@@QAE_NAAUAlarmInfo@@@Z @ 47 NONAME ; bool TimezoneClient::checkForDstChange(struct AlarmInfo &)
+	?isDSTOnL@TimezoneClient@@QAE_NH@Z @ 48 NONAME ; bool TimezoneClient::isDSTOnL(int)
+	?timechanged@TimezoneClient@@IAEXXZ @ 49 NONAME ; void TimezoneClient::timechanged(void)
+	?saveLocations@TimezoneClient@@QAEXABV?$QList@ULocationInfo@@@@@Z @ 50 NONAME ; void TimezoneClient::saveLocations(class QList<struct LocationInfo> const &)
+	?qt_metacall@TimezoneClient@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 51 NONAME ; int TimezoneClient::qt_metacall(enum QMetaObject::Call, int, void * *)
 
--- a/clock/clockmw/clockalarms/inc/alarmclient.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clockalarms/inc/alarmclient.h	Tue May 18 13:16:49 2010 +0100
@@ -56,6 +56,7 @@
 	void getAlarmList(QList<AlarmInfo>& alarmList);
 	void setAlarm(AlarmInfo& alarmInfo);
 	void deleteAlarm(int alarmId);
+	int deleteSnoozedAlarm(int alarmId);
 	int getAlarmInfo(int alarmId, AlarmInfo& alarmInfo);
 	void toggleAlarmStatus(int alarmId, int alarmStatus);
 
--- a/clock/clockmw/clockalarms/src/alarmclient.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clockalarms/src/alarmclient.cpp	Tue May 18 13:16:49 2010 +0100
@@ -18,8 +18,6 @@
 
 // System includes
 #include <e32cmn.h>
-#include <QDebug>
-
 // User includes
 #include "alarmclient.h"
 #include "alarmlistener.h"
@@ -34,18 +32,11 @@
 AlarmClient::AlarmClient(QObject* parent)
 :QObject(parent),
 mListener(0)
-{
-	qDebug("clock: AlarmClient::AlarmClient() -->");
-
+{	
 	// Connect to the alarm server.
 	User::LeaveIfError(mAlarmSrvSession.Connect());
-
-	qDebug("clock: AlarmClient::AlarmClient() - Connection done, looks ok.");
-
 	// Construct the listener, but do not start it.
 	mListener = new AlarmListener(this, mAlarmSrvSession);
-
-	qDebug("clock: AlarmClient::AlarmClient() <--");
 }
 
 /*!
@@ -53,7 +44,6 @@
  */
 AlarmClient::~AlarmClient()
 {
-	qDebug("clock: AlarmClient::~AlarmClient() -->");
 
 	if (mListener) {
 		mListener->stop();
@@ -61,8 +51,6 @@
 		mListener = 0;
 	}
 	mAlarmSrvSession.Close();
-
-	qDebug("clock: AlarmClient::~AlarmClient() <--");
 }
 
 /*!
@@ -72,8 +60,6 @@
  */
 void AlarmClient::getAlarmList(QList<AlarmInfo>& alarmList)
 {
-	qDebug() << "clock: AlarmClient::getAlarmList -->";
-
 	// This will hold the alarm ids returned from alarm server.
 	RArray<TAlarmId> alarmIdArray;
 	AlarmInfo alarmInfo;
@@ -135,8 +121,6 @@
 	}
 	// Cleanup.
 	alarmIdArray.Close();
-
-	qDebug() << "clock: AlarmClient::getAlarmList <--";
 }
 
 /*!
@@ -144,8 +128,6 @@
  */
 void AlarmClient::setAlarm(AlarmInfo& alarmInfo)
 {
-	qDebug() << "clock: AlarmClient::setAlarm -->";
-
 	// Get the current home time
 	TTime homeTime;
 	homeTime.HomeTime();
@@ -222,14 +204,10 @@
 
 		alarmInfo.alarmDateTime = alarmDate;
 	}
-
-	qDebug() << "clock: AlarmClient::setAlarm <--";
 }
 
 void AlarmClient::setAlarmState(TAlarmState state, AlarmState& alarmState)
 {
-	qDebug() << "clock: AlarmClient::setAlarmState -->";
-
 	switch (state) {
 		case EAlarmStateInPreparation:
 			alarmState = InPreparation;
@@ -253,13 +231,10 @@
 			break;
 	}
 
-	qDebug() << "clock: AlarmClient::setAlarmState <--";
 }
 
 void AlarmClient::setAlarmState(AlarmState state, TAlarmState& alarmState)
 {
-	qDebug() << "clock: AlarmClient::setAlarmState -->";
-
 	switch (state) {
 		case InPreparation:
 			alarmState = EAlarmStateInPreparation;
@@ -282,15 +257,11 @@
 		default:
 			break;
 	}
-
-	qDebug() << "clock: AlarmClient::setAlarmState <--";
 }
 
 void AlarmClient::setAlarmRepeatType(
 		TAlarmRepeatDefinition repeat, AlarmRepeatType& repeatType)
 {
-	qDebug() << "clock: AlarmClient::setAlarmRepeatType -->";
-
 	switch (repeat) {
 		case EAlarmRepeatDefintionRepeatOnce:
 			repeatType = Once;
@@ -307,15 +278,11 @@
 		default:
 			break;
 	}
-
-	qDebug() << "clock: AlarmClient::setAlarmRepeatType <--";
 }
 
 void AlarmClient::setAlarmRepeatType(
 		AlarmRepeatType repeat, TAlarmRepeatDefinition& repeatType)
 {
-	qDebug() << "clock: AlarmClient::setAlarmRepeatType -->";
-
 	switch (repeat) {
 		case Once:
 			repeatType = EAlarmRepeatDefintionRepeatOnce;
@@ -332,24 +299,41 @@
 		default:
 			break;
 	}
-
-	qDebug() << "clock: AlarmClient::setAlarmRepeatType <--";
 }
 
 void AlarmClient::deleteAlarm(int alarmId)
 {
-	qDebug() << "clock: AlarmClient::deleteAlarm -->";
-
 	// Request the alarmserver to delete the alarm.
 	mAlarmSrvSession.AlarmDelete(alarmId);
+}
 
-	qDebug() << "clock: AlarmClient::deleteAlarm <--";
+/*!
+	 Delete the snoozed alarm.
+	 
+	 \param alarmId needs to be deleted and reset again.
+	 \return int error value if any.
+ */
+int AlarmClient::deleteSnoozedAlarm(int alarmId)
+{
+	AlarmInfo alarmInfo;
+	int retVal(KErrNone);
+	int returnVal = getAlarmInfo(alarmId, alarmInfo);
+	if (KErrNone != retVal) {
+		return retVal;
+	}
+	returnVal = mAlarmSrvSession.AlarmDelete(alarmId);
+	if (KErrNone != retVal) {
+		return retVal;
+	}
+	alarmInfo.alarmState = InPreparation;
+	alarmInfo.nextDueTime = alarmInfo.origAlarmTime;
+	setAlarm(alarmInfo);
+	
+	return retVal;
 }
 
 int AlarmClient::getAlarmInfo(int alarmId, AlarmInfo& alarmInfo)
 {
-	qDebug() << "clock: AlarmClient::getAlarmInfo -->";
-
 	TASShdAlarm tempSharedAlarm;
 
 	// Get the requested alarm info from the alarm server.
@@ -373,11 +357,15 @@
 				tempSharedAlarm.NextDueTime().DateTime().Minute(),
 				tempSharedAlarm.NextDueTime().DateTime().Second());
 
-		// Alarm day
+		// Alarm date
 		alarmInfo.alarmDateTime.setYMD(
 				tempSharedAlarm.OriginalExpiryTime().DateTime().Year(),
 				tempSharedAlarm.OriginalExpiryTime().DateTime().Month()+1,
 				tempSharedAlarm.OriginalExpiryTime().DateTime().Day()+1);
+		
+		// Set alarm day.
+		alarmInfo.alarmDay =
+			tempSharedAlarm.OriginalExpiryTime().DayNoInWeek();
 
 		// The alarm status
 		if (EAlarmStatusEnabled == tempSharedAlarm.Status()) {
@@ -404,46 +392,31 @@
 			alarmInfo.volumeStatus = AlarmVolumeOff;
 		}
 	}
-
-	qDebug() << "clock: AlarmClient::getAlarmInfo <--";
-
 	return error;
 }
 
 void AlarmClient::toggleAlarmStatus(int alarmId, int alarmStatus)
 {
-	qDebug() << "clock: AlarmClient::toggleAlarmStatus -->";
 
 	mAlarmSrvSession.SetAlarmStatus(alarmId, (TAlarmStatus)alarmStatus);
 
-	qDebug() << "clock: AlarmClient::toggleAlarmStatus <--";
 }
 
 void AlarmClient::startListener()
 {
-	qDebug("clock: AlarmClient::startListener() -->");
+		mListener->start();
 
-	mListener->start();
-
-	qDebug("clock: AlarmClient::startListener() <--");
 }
 
 void AlarmClient::stopListener()
 {
-	qDebug("clock: AlarmClient::stopListener() -->");
-
 	mListener->stop();
 
-	qDebug("clock: AlarmClient::stopListener() <--");
 }
 
 void AlarmClient::notifyChange(int alarmId)
 {
-	qDebug() << "clock: AlarmClient::notifyChange -->";
-
-	emit alarmStateChanged(alarmId);
-
-	qDebug() << "clock: AlarmClient::notifyChange <--";
+		emit alarmStateChanged(alarmId);
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockmw/clockalarms/src/alarmlistener.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clockalarms/src/alarmlistener.cpp	Tue May 18 13:16:49 2010 +0100
@@ -25,57 +25,39 @@
 mClient(client),
 mSession(session)
 {
-	qDebug("clock: AlarmListener::AlarmListener -->");
-
-	// Nothing to do.
-
-	qDebug("clock: AlarmListener::AlarmListener <--");
+		// Nothing to do.
 }
 
 AlarmListener::~AlarmListener()
 {
-	qDebug("clock: AlarmListener::~AlarmListener -->");
-
 	if (IsActive()) {
 		Cancel();
 	}
 
-	qDebug("clock: AlarmListener::~AlarmListener <--");
 }
 
 void AlarmListener::start()
 {
-	qDebug("clock: AlarmListener::start -->");
-
 	// Add the AO to the scheduler.
 	CActiveScheduler::Add(this);
 
 	// Subscrive for async notification from alarm server.
 	mSession.NotifyChange(iStatus, mAlarmId);
 
-	qDebug("clock: AlarmListener::start - Successfully subscribed for change notifiation.");
-
 	// Set the AO active.
 	SetActive();
 
-	qDebug("clock: AlarmListener::start <--");
 }
 
 void AlarmListener::stop()
 {
-	qDebug("clock: AlarmListener::stop -->");
-
 	if (IsActive()) {
 		Cancel();
 	}
-
-	qDebug("clock: AlarmListener::stop <--");
 }
 
 void AlarmListener::RunL()
 {
-	qDebug("clock: AlarmListener::RunL --");
-
 	if (iStatus != KRequestPending) {
 		// We get notification for various changes with the alarm server.
 		// Only the required Events are used to emit a signal.
@@ -95,18 +77,13 @@
 
 		SetActive();
 	}
-
-	qDebug("clock: AlarmListener::RunL <--");
 }
 
 void AlarmListener::DoCancel()
 {
-	qDebug("clock: AlarmListener::DoCancel -->");
-
 	// Cancel async request.
 	mSession.NotifyChangeCancel();
 
-	qDebug("clock: AlarmListener::DoCancel <--");
 }
 
 // End of file
--- a/clock/clockmw/clocksettingsutility/inc/settingsutility.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clocksettingsutility/inc/settingsutility.h	Tue May 18 13:16:49 2010 +0100
@@ -42,11 +42,11 @@
 	~SettingsUtility();
 
 public:
-	void setTime(const QString &time);
+//	void setTime(const QString &time);
 	QString time();
 
-	void setTimeZone(const QString &timezone);
-	QString timeZone();
+/*	void setTimeZone(const QString &timezone);
+	QString timeZone();*/
 
 	void setTimeFormat(const QString &format);
 	int timeFormat(QStringList &format);
@@ -57,10 +57,10 @@
 	void setTimeSeparator(const QString &separator);
 	int timeSeparator(QStringList &list);
 
-	void setAutoUpdate(const QString &value);
-	int autoUpdate(QStringList &list);
+/*	void setAutoUpdate(const QString &value);
+	int autoUpdate(QStringList &list);*/
 
-	void setDate(const QString &date);
+//	void setDate(const QString &date);
 	QString date();
 
 	void setDateFormat(const QString &format);
@@ -91,8 +91,6 @@
 	QStringList mDateSeparatorList;
 	QStringList mAutoUpdateValueList;
 	QStringList mSnoozeValueList;
-
-	TimezoneClient *mTimeZoneClient;
 };
 
 #endif // SETTINGSUTILITY_H
--- a/clock/clockmw/clocksettingsutility/src/settingsutility.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clocksettingsutility/src/settingsutility.cpp	Tue May 18 13:16:49 2010 +0100
@@ -37,8 +37,6 @@
 SettingsUtility::SettingsUtility(QObject *parent)
 :QObject(parent)
 {
-	qDebug("clock: SettingsUtility::SettingsUtility -->");
-
 	mTimeSeparatorList << tr(".") << tr(":");
 	mClockTypeList << tr("Analog") << tr("Digital");
 	mTimeFormatList << hbTrId("txt_clk_setlabel_val_24_hour") << hbTrId("txt_clk_setlabel_val_12_hour");
@@ -46,12 +44,6 @@
 	mDateSeparatorList << tr(".") << tr(":") << tr("/") << tr("-");
 	mAutoUpdateValueList << tr("ON") << tr("OFF");
 	mSnoozeValueList << tr("5 minutes") << tr("15 minutes") << tr(" 30 minutes") << tr("1 hour");
-
-	mTimeZoneClient = new TimezoneClient(this);
-
-	qDebug("clock: SettingsUtility::SettingsUtility <--");
-
-//	mSettingsMamager = new XQSettingsManager(this);
 }
 
 /*!
@@ -59,23 +51,11 @@
  */
 SettingsUtility::~SettingsUtility()
 {
-	// Nothing yet.
+	// Nothing.
 }
 
 /*!
-
- */
-void SettingsUtility::setTime(const QString &time)
-{
-	QTime newTime = QTime::fromString(time, timeFormatString());
-
-	if (newTime.isValid()) {
-		mTimeZoneClient->setDateTime(QDateTime(QDate::currentDate(), newTime));
-	}
-}
-
-/*!
-
+	Returns the current time in the device.
  */
 QString SettingsUtility::time()
 {
@@ -85,64 +65,6 @@
 /*!
 
  */
-void SettingsUtility::setTimeZone(const QString &timezone)
-{
-	Q_UNUSED(timezone)
-}
-
-/*!
-
- */
-QString SettingsUtility::timeZone()
-{
-	QStringList dummyList;
-
-	// Get the current zone info.
-	LocationInfo currentZoneInfo = mTimeZoneClient->getCurrentZoneInfoL();
-
-	// Construct the GMT +/- X string.
-	QString gmtOffset(hbTrId("txt_common_common_gmt"));
-
-	int utcOffset = currentZoneInfo.zoneOffset;
-	int offsetInHours (utcOffset/60);
-	int offsetInMinutes (utcOffset%60);
-
-	// Check wether the offset is +ve or -ve.
-	if (0 < utcOffset) {
-		// We have a positive offset. Append the '+' character.
-		gmtOffset += tr("+ ");
-	} else if (0 > utcOffset) {
-		// We have a negative offset. Append the '-' character.
-		gmtOffset += tr("- ");
-		offsetInHours = -offsetInHours;
-	} else {
-		// We dont have an offset. We are at GMT zone.
-	}
-
-	// Append the hour component.
-	gmtOffset += QString::number(offsetInHours);
-
-	// Append the time separator.
-	gmtOffset += mTimeSeparatorList.at(timeSeparator(dummyList));
-
-	// Append the minute component.
-	// If minute component is less less than 10, append a '00'
-	if (0 <= offsetInMinutes && offsetInMinutes < 10) {
-		gmtOffset += tr("00");
-	} else {
-		gmtOffset += QString::number(offsetInMinutes);
-	}
-
-	gmtOffset += tr(" ");
-	// TODO: append city name when more than one cities else country name.
-	gmtOffset += currentZoneInfo.cityName;
-
-	return gmtOffset;
-}
-
-/*!
-
- */
 void SettingsUtility::setTimeFormat(const QString& format)
 {
 	TLocale locale;
@@ -234,8 +156,6 @@
  */
 int SettingsUtility::timeSeparator(QStringList &list)
 {
-	qDebug() << "clock: SettingsUtility::timeSeparator -->";
-
 	TLocale locale;
 	TChar separatorChar = locale.TimeSeparator(1);
 	int value = -1;
@@ -249,70 +169,14 @@
 	}
 
 	list = mTimeSeparatorList;
-
-	qDebug() << "clock: SettingsUtility::timeSeparator <--";
-
 	return value;
 }
 
 /*!
 
  */
-void SettingsUtility::setAutoUpdate(const QString &value)
-{
-	// TODO: implement the changes after server is in place.
-	// 1. Inform the server about the setting.
-	// 2. Get the status of the change from server
-	// 3. Emit the signal to inform the clients of the change in the settings item,
-	// pass the enum of settings item changed and the updated value.
-
-	if (0 == value.compare(tr("ON"), Qt::CaseInsensitive)) {
-		mTimeZoneClient->setTimeUpdateOn(true);
-    } else {
-    	mTimeZoneClient->setTimeUpdateOn(false);
-    }
-
-	emit settingsChanged(AutoTimeUpdate, value);
-}
-
-/*!
-
- */
-int SettingsUtility::autoUpdate(QStringList &list)
-{
-	// TODO: implement properly. this is jst a dummy implementation.
-	int value = 1;
-
-	bool autoUpdate = mTimeZoneClient->timeUpdateOn();
-
-	if (autoUpdate) {
-	    value = 0;
-    }
-	list = mAutoUpdateValueList;
-	return value;
-}
-
-/*!
-
- */
-void SettingsUtility::setDate(const QString &date)
-{
-	QDate newDate = QDate::fromString(date, dateFormatString());
-
-	if (newDate.isValid()) {
-		mTimeZoneClient->setDateTime(QDateTime(newDate, QTime::currentTime()));
-    }
-}
-
-/*!
-
- */
 QString SettingsUtility::date()
 {
-	qDebug() << "clock: SettingsUtility::date -->";
-
-	qDebug() << "clock: SettingsUtility::date <--";
-
 	return QDate::currentDate().toString(dateFormatString());
 }
 
--- a/clock/clockmw/clocktimezone/clocktimezone.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clocktimezone/clocktimezone.pro	Tue May 18 13:16:49 2010 +0100
@@ -41,7 +41,8 @@
 			-lbafl \
 			-ltimezonelocalization \
 			-ltzclient \
-			-lclockserverclient
+			-lclockserverclient \
+			-lxqsettingsmanager
 
 	BLD_INF_RULES.prj_exports += \
 		"../../data/timezonedata/timezonelocalization.loc	APP_LAYER_LOC_EXPORT_PATH(timezonelocalization.loc)" \
--- a/clock/clockmw/clocktimezone/inc/timezoneclient.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clocktimezone/inc/timezoneclient.h	Tue May 18 13:16:49 2010 +0100
@@ -41,6 +41,8 @@
 class CEnvironmentChangeNotifier;
 class QStandardItemModel;
 class CTzLocalizer;
+class XQSettingsManager;
+class XQSettingsKey;
 
 const int KInitialEvent = (
 		EChangesLocale |
@@ -56,29 +58,31 @@
 	Q_OBJECT
 
 public:
-	TimezoneClient(QObject* parent = 0);
+	/*TIMEZONECLIENT_EXPORT*/ static TimezoneClient* getInstance();
+	/*TIMEZONECLIENT_EXPORT*/ void deleteInstance();
+	/*TIMEZONECLIENT_EXPORT*/ bool isNull();
+
+private:
+	TimezoneClient();
 	~TimezoneClient();
 
+private:
+
+private:
+	static TimezoneClient *mTimezoneClient;
+	static int mReferenceCount;
+
+// TODO: still refatoring
 public:
-	QList<LocationInfo> getLocations();
-	bool getUtcDstOffsetL(int &dstOffset,
-						  const CTzId &tzId);
-	LocationInfo getCurrentZoneInfoL();
-	void setAsCurrentLocationL(LocationInfo &location);
-	bool isDSTOnL(int timezoneId);
-	int getStandardOffset(int timezoneId);
-	void getDstRulesL(
-			QDateTime &startTime, QDateTime &endTime,int timezoneId);
+	/*TIMEZONECLIENT_EXPORT*/ 	QList<LocationInfo> &getLocations();
+	/*TIMEZONECLIENT_EXPORT*/ LocationInfo getCurrentZoneInfoL();
+	/*TIMEZONECLIENT_EXPORT*/ void setAsCurrentLocationL(LocationInfo &location);
+	/*TIMEZONECLIENT_EXPORT*/ bool isDSTOnL(int timezoneId);
+	/*TIMEZONECLIENT_EXPORT*/ int getStandardOffset(int timezoneId);
 	QList<LocationInfo> getSavedLocations();
 	void saveLocations(const QList<LocationInfo> &locationList);
 	void getCountries(QMap<QString, int>& countries);
-	void getCitiesForCountry(
-			int id, QMap<QString, int>& cities);
-	void getLocationInfo(
-			int groupId, int cityIndex, LocationInfo& cityInfo);
 	bool dstOn(int tzId);
-	int getCityGroupIdByName(const QString& name);
-	int getCityOffsetByNameAndId(const QString& name, int tzId);
 	void setDateTime(QDateTime dateTime);
 	void setTimeUpdateOn(bool timeUpdate = true);
 	bool timeUpdateOn();
@@ -96,13 +100,25 @@
 signals:
 	void timechanged();
 	void listUpdated();
-
+	void autoTimeUpdateChanged(int value);
+	void cityUpdated();
+	
 private:
 	int getDstZoneOffset(int tzId);
 	TMonth intToMonth(int month);
+	bool getUtcDstOffsetL(int &dstOffset, const CTzId &tzId);
+	void getDstRulesL(
+			QDateTime &startTime, QDateTime &endTime,int timezoneId);
+	void getCitiesForCountry(
+			int id, QMap<QString, int>& cities);
+	void getLocationInfo(
+			int groupId, int cityIndex, LocationInfo& cityInfo);
+	int getCityGroupIdByName(const QString& name);
+	int getCityOffsetByNameAndId(const QString& name, int tzId);
 
 private slots:
-    void populateCities();
+	void populateCities();
+	void eventMonitor(const XQSettingsKey& key, const QVariant& value);
 
 public:
 	CEnvironmentChangeNotifier *mNotifier;
@@ -112,14 +128,16 @@
 	QMap<QString, int> mAllCountries;
 	QList<LocationInfo> mAllLocations;
 	QStandardItemModel *mWorldClockModel;
+	XQSettingsManager *mSettingsManager;
+	XQSettingsKey *mAutoTimeUpdateKey;
 
 	QList<int> mTimeZoneIds;
 
-	bool mTimeUpdateOn;
-	int mFetchCount;
+//	bool mTimeUpdateOn;
 	int mCountryCount;
+	int mAutoTimeUpdateValue;
 };
 
-#endif      // __TIMEZONECLIENT_H__
+#endif		// __TIMEZONECLIENT_H__
 
 // End of file
--- a/clock/clockmw/clocktimezone/src/timezoneclient.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/clocktimezone/src/timezoneclient.cpp	Tue May 18 13:16:49 2010 +0100
@@ -19,17 +19,17 @@
 // System includes
 #include <QList>
 #include <QStandardItemModel>
-#include <QDebug>
 #include <QtAlgorithms>
 #include <tzlocalizationdatatypes.h>
 #include <tzlocalizer.h>
 #include <tz.h>
 #include <vtzrules.h>
+#include <xqsettingsmanager.h>
+#include <xqsettingskey.h>
 
 // User includes
 #include "timezoneclient.h"
 #include "clockcommon.h"
-#include "debug.h"
 #include "clockserverclt.h"
 
 const int KDaysInWeek(7);
@@ -44,39 +44,78 @@
 	tzserver and timezonelocalization.
  */
 
+TimezoneClient* TimezoneClient::mTimezoneClient = 0;
+int TimezoneClient::mReferenceCount = 0;
 /*!
-	Default constructor.
+	Call this funtion to instantiate the TimezoneClient class.
+ */
+TimezoneClient* TimezoneClient::getInstance()
+{
+	if (!mTimezoneClient) {
+		mTimezoneClient = new TimezoneClient();
+	}
 
-	\param parent The parent.
+	mReferenceCount++;
+	return mTimezoneClient;
+}
+
+/*!
+	Call this function to clean up the instance of TimezoneClient class.
  */
-TimezoneClient::TimezoneClient(QObject* parent)
-:QObject(parent),
- mTimeUpdateOn(false),
- mFetchCount(0)
+void TimezoneClient::deleteInstance()
 {
-	qDebug("clock: TimezoneClient::TimezoneClient() -->");
+	mReferenceCount--;
+
+	if (0 == mReferenceCount) {
+		delete mTimezoneClient;
+		mTimezoneClient = 0;
+	}
+}
 
+/*!
+	Call this function to check if the object is NULL.
+ */
+bool TimezoneClient::isNull()
+{
+	bool deleted = false;
+	if (0 == mReferenceCount) {
+		deleted = true;
+	}
+	return deleted;
+}
+
+/*!
+	The constructor.
+ */
+TimezoneClient::TimezoneClient()
+{
 	TCallBack callback(environmentCallback, this);
 
 	mNotifier = CEnvironmentChangeNotifier::NewL(
 			CActive::EPriorityStandard, callback);
 	mNotifier->Start();
 
-	RClkSrvInterface clkSrvInterface1;
-	User::LeaveIfError(clkSrvInterface1.Connect());
-	TBool aUpdate;
-	clkSrvInterface1.IsAutoTimeUpdateOn(aUpdate);
-	if(aUpdate){
-	mTimeUpdateOn = true;
-	}
-	else {
-	mTimeUpdateOn = false;
-	}
-	clkSrvInterface1.Close();
-
 	mTzLocalizer = CTzLocalizer::NewL();
 
-	qDebug("clock: TimezoneClient::TimezoneClient() <--");
+	// Create the settings manager.
+	mSettingsManager = new XQSettingsManager(this);
+
+	// Create the key for auto time update.
+	mAutoTimeUpdateKey = new XQSettingsKey(
+			XQSettingsKey::TargetCentralRepository,
+			KCRUidNitz,
+			KActiveProtocol);
+
+	// Start the monitoring for the auto time update key.
+	mSettingsManager->startMonitoring(*mAutoTimeUpdateKey);
+
+	// Get the value of auto time update from cenrep.
+	mAutoTimeUpdateValue = timeUpdateOn();
+
+	// Listen to the key value changes.
+	connect(
+			mSettingsManager, SIGNAL(valueChanged(XQSettingsKey, QVariant)),
+			this, SLOT(eventMonitor(XQSettingsKey, QVariant)));
 }
 
 /*!
@@ -99,6 +138,11 @@
 	if (mTimeZoneIds.count()) {
 		mTimeZoneIds.clear();
 	}
+	// Clear the locations if exist.
+	if (mAllLocations.count()) {
+		mAllLocations.clear();
+	}
+
 }
 
 /*!
@@ -109,20 +153,15 @@
 			valid cityName, countryName, tz id and city group id. None of the other
 			data is filled.
  */
-QList<LocationInfo> TimezoneClient::getLocations()
+QList<LocationInfo>& TimezoneClient::getLocations()
 {
-	qDebug("clock: TimezoneClient::getLocations() -->");
-
-	// This list will contain the info of the cities fetched from tz server.
-	QList<LocationInfo> infoList;
-
-	// Construct the timezone localizer.
-	CTzLocalizer* localizer = CTzLocalizer::NewL();
-	CleanupStack::PushL(localizer);
+	if (mAllLocations.count()) {
+		mAllLocations.clear();
+	}
 
 	// Get the cities, in alphabetical-ascending sorted order.
 	CTzLocalizedCityArray* cityArray =
-			localizer->GetCitiesL(CTzLocalizer::ETzAlphaNameAscending);
+			mTzLocalizer->GetCitiesL(CTzLocalizer::ETzAlphaNameAscending);
 	ASSERT(cityArray);
 	CleanupStack::PushL(cityArray);
 	int cityCount = cityArray->Count();
@@ -150,7 +189,7 @@
 			if (country) {
 				delete country;
 			}
-			country = localizer->GetCityGroupL(cityGroupId);
+			country = mTzLocalizer->GetCityGroupL(cityGroupId);
 			countryName.Set(country->Name());
 		}
 
@@ -162,16 +201,12 @@
 				cityName.Ptr(), cityName.Length());
 		cityInfo.countryName = QString::fromUtf16(
 				countryName.Ptr(), countryName.Length());
-		infoList.append(cityInfo);
+		mAllLocations.append(cityInfo);
 	}
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy(cityArray);
-	CleanupStack::PopAndDestroy(localizer);
-
-	qDebug("clock: TimezoneClient::getLocations() <--");
-
-	return infoList;
+	return mAllLocations;
 }
 
 bool TimezoneClient::getUtcDstOffsetL(int& dstOffset, const CTzId& timezoneId)
@@ -246,8 +281,6 @@
 
 LocationInfo TimezoneClient::getCurrentZoneInfoL()
 {
-	qDebug() << "clock: TimezoneClient::getCurrentZoneInfoL -->";
-
 	// Current zone info.
 	LocationInfo currentLocation;
 	int timezoneId(0);
@@ -281,140 +314,130 @@
 	timeZones.Close();
 	zoneOffsets.Close();
 
-	// Construct CTzLocalizer object to get the timezone from the ID.
-	CTzLocalizer* tzLocalizer = CTzLocalizer::NewL();
-
 	// Get all the localized timezones for the current timezone ID.
 	CTzLocalizedTimeZone* localizedTimeZone(NULL);
 
-	if (tzLocalizer) {
-		// Get the currently set localized timezone.
-		CleanupStack::PushL(tzLocalizer);
-		localizedTimeZone =
-			tzLocalizer->GetLocalizedTimeZoneL(tzId->TimeZoneNumericID());
+	localizedTimeZone =
+			mTzLocalizer->GetLocalizedTimeZoneL(tzId->TimeZoneNumericID());
+
+	if (localizedTimeZone) {
+		CleanupStack::PushL(localizedTimeZone);
 
-		if (localizedTimeZone) {
-			CleanupStack::PushL(localizedTimeZone);
+		// Get the frequently used localized city.
+		CTzLocalizedCity* localizedCity(0);
+		localizedCity = mTzLocalizer->GetFrequentlyUsedZoneCityL(
+				CTzLocalizedTimeZone::ECurrentZone);
+		CleanupStack::PushL(localizedCity);
 
-			// Get the frequently used localized city.
-			CTzLocalizedCity* localizedCity(0);
-			localizedCity = tzLocalizer->GetFrequentlyUsedZoneCityL(
-					CTzLocalizedTimeZone::ECurrentZone);
-			CleanupStack::PushL(localizedCity);
+		// Get all the city groups.
+		CTzLocalizedCityGroupArray* cityGroupArray =
+				mTzLocalizer->GetAllCityGroupsL(
+						CTzLocalizer::ETzAlphaNameAscending);
+		CleanupStack::PushL(cityGroupArray);
 
-			// Get all the city groups.
-			CTzLocalizedCityGroupArray* cityGroupArray =
-					tzLocalizer->GetAllCityGroupsL(
-							CTzLocalizer::ETzAlphaNameAscending);
-			CleanupStack::PushL(cityGroupArray);
-
-			// Get the index of the country corresponding to the city group ID.
-			int countryIndex(1);
+		// Get the index of the country corresponding to the city group ID.
+		int countryIndex(1);
 
-			for (int index = 0; index < cityGroupArray->Count(); index++) {
-				if (localizedCity->GroupId() ==
-						cityGroupArray->At(index).Id()) {
-					countryIndex = index;
-				}
+		for (int index = 0; index < cityGroupArray->Count(); index++) {
+			if (localizedCity->GroupId() ==
+					cityGroupArray->At(index).Id()) {
+				countryIndex = index;
 			}
+		}
 
-			// Get all the cities within the currently set country.
-			CTzLocalizedCityArray* cityList = tzLocalizer->GetCitiesInGroupL(
-					(cityGroupArray->At(countryIndex )).Id(),
-					CTzLocalizer::ETzAlphaNameAscending);
-			CleanupStack::PushL(cityList);
+		// Get all the cities within the currently set country.
+		CTzLocalizedCityArray* cityList = mTzLocalizer->GetCitiesInGroupL(
+				(cityGroupArray->At(countryIndex )).Id(),
+				CTzLocalizer::ETzAlphaNameAscending);
+		CleanupStack::PushL(cityList);
 
-			// Check if automatic time update is enabled.
-			bool timeUpdateOn( false );
+		// Check if automatic time update is enabled.
+		bool timeUpdateOn( false );
 
-			// Connect to the clock server.
-			// TODO: connect to the clock server and get auto update status in
-			// var:  timeUpdateOn
-			// Check if the country contains only one city or if automatic
-			// time update is on.
-			if (1 == cityList->Count() || timeUpdateOn) {
-				// If yes, then display only the country name.
-				// TODO
-			} else {
-				// Display city name.
-				// TODO:
-			}
+		// Connect to the clock server.
+		// TODO: connect to the clock server and get auto update status in
+		// var:  timeUpdateOn
+		// Check if the country contains only one city or if automatic
+		// time update is on.
+		if (1 == cityList->Count() || timeUpdateOn) {
+			// If yes, then display only the country name.
+			// TODO
+		} else {
+			// Display city name.
+			// TODO:
+		}
 
-			// Get the country name.
-			TPtrC countryName(cityGroupArray->At(countryIndex).Name());
-			currentLocation.countryName = QString::fromUtf16(
-					countryName.Ptr(), countryName.Length());
-
-			// Get the city name.
-			TPtrC cityName(localizedCity->Name());
-			currentLocation.cityName = QString::fromUtf16(
-					cityName.Ptr(), cityName.Length());
+		// Get the country name.
+		TPtrC countryName(cityGroupArray->At(countryIndex).Name());
+		currentLocation.countryName = QString::fromUtf16(
+				countryName.Ptr(), countryName.Length());
 
-			// Get the UTC offset.
-			timezoneId = localizedCity->TimeZoneId();
+		// Get the city name.
+		TPtrC cityName(localizedCity->Name());
+		currentLocation.cityName = QString::fromUtf16(
+				cityName.Ptr(), cityName.Length());
 
-			if (timezoneId) {
-				// Check if the DST is on for the current timezone.
-				if (isDSTOnL(timezoneId)) {
-					// Get the offset with DST enabled.
-					getUtcDstOffsetL(utcOffset, *tzId);
+		// Get the UTC offset.
+		timezoneId = localizedCity->TimeZoneId();
 
-					currentLocation.dstOn = true;
-					currentLocation.timezoneId = timezoneId;
-					currentLocation.zoneOffset = utcOffset;
-				} else {
-					// Use the standard offset.
-					currentLocation.dstOn = false;
-					currentLocation.timezoneId = timezoneId;
-					currentLocation.zoneOffset = initialTimeZoneOffset;
-				}
+		if (timezoneId) {
+			// Check if the DST is on for the current timezone.
+			if (isDSTOnL(timezoneId)) {
+				// Get the offset with DST enabled.
+				getUtcDstOffsetL(utcOffset, *tzId);
+
+				currentLocation.dstOn = true;
+				currentLocation.timezoneId = timezoneId;
+				currentLocation.zoneOffset = utcOffset;
+			} else {
+				// Use the standard offset.
+				currentLocation.dstOn = false;
+				currentLocation.timezoneId = timezoneId;
+				currentLocation.zoneOffset = initialTimeZoneOffset;
 			}
-
-			// Cleanup.
-			CleanupStack::PopAndDestroy( cityList );
-			CleanupStack::PopAndDestroy( cityGroupArray );
-			CleanupStack::PopAndDestroy( localizedCity );
-			CleanupStack::PopAndDestroy( localizedTimeZone );
 		}
 
 		// Cleanup.
-		CleanupStack::PopAndDestroy( tzLocalizer );
+		CleanupStack::PopAndDestroy( cityList );
+		CleanupStack::PopAndDestroy( cityGroupArray );
+		CleanupStack::PopAndDestroy( localizedCity );
+		CleanupStack::PopAndDestroy( localizedTimeZone );
 	}
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy( tzId );
 	CleanupStack::PopAndDestroy( &tzHandle );
-
-	qDebug() << "clock: TimezoneClient::getCurrentZoneInfoL <--";
-
 	return currentLocation;
 }
 
 void TimezoneClient::setAsCurrentLocationL(LocationInfo &location)
 {
-	Debug::writeDebugMsg(
+/*	Debug::writeDebugMsg(
 			"In time zone client setAsCurrentLocationL " + location.cityName +
 			" " +
 			location.countryName +
 			" " +
-			QString::number(location.zoneOffset));
+			QString::number(location.zoneOffset));*/
 
-	// Construct CTzLocalizer object.
-	CTzLocalizer* tzLocalizer = CTzLocalizer::NewL();
-	CleanupStack::PushL( tzLocalizer );
-	tzLocalizer->SetTimeZoneL( location.timezoneId );
+	LocationInfo prevLocationInfo ;
+	prevLocationInfo = getCurrentZoneInfoL();
+
+	mTzLocalizer->SetTimeZoneL( location.timezoneId );
 
 	TPtrC ptrCityName(
 			reinterpret_cast<const TText*>(location.cityName.constData()));
 	CTzLocalizedCity* localizedCity =
-			tzLocalizer->FindCityByNameL(ptrCityName, location.timezoneId);
+			mTzLocalizer->FindCityByNameL(ptrCityName, location.timezoneId);
 	CleanupStack::PushL( localizedCity );
-	tzLocalizer->SetFrequentlyUsedZoneL(
+	mTzLocalizer->SetFrequentlyUsedZoneL(
 			*localizedCity, CTzLocalizedTimeZone::ECurrentZone);
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy( localizedCity );
-	CleanupStack::PopAndDestroy( tzLocalizer );
+
+	if(prevLocationInfo.timezoneId == location.timezoneId) {
+		emit cityUpdated();	
+	}
 }
 
 bool TimezoneClient::isDSTOnL(int timezoneId)
@@ -588,16 +611,11 @@
 
 void TimezoneClient::getCountries(QMap<QString, int>& countries)
 {
-	// Construct the timezone localizer.
-	CTzLocalizer* localizer = CTzLocalizer::NewL();
-	CleanupStack::PushL(localizer);
-
 	// Get all the city groups(countries).
 	QTime t;
 	t.start();
 	CTzLocalizedCityGroupArray* cityGroupArray =
-		localizer->GetAllCityGroupsL(CTzLocalizer::ETzAlphaNameAscending);
-	qDebug() << "Fetching city groups from tzloc: " << t.elapsed();
+			mTzLocalizer->GetAllCityGroupsL(CTzLocalizer::ETzAlphaNameAscending);
 	CleanupStack::PushL(cityGroupArray);
 
 	t.restart();
@@ -611,27 +629,18 @@
 				countryName.Ptr(),countryName.Length());
 	    countries[qCountryName] = cityGroup.Id();
 	}
-	qDebug() << "Converting " <<
-			cityGroupArray->Count() <<
-			"countries to qstring: " <<
-			t.elapsed();
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy(cityGroupArray);
-	CleanupStack::PopAndDestroy(localizer);
 }
 
 void TimezoneClient::getCitiesForCountry(int id, QMap<QString, int>& cities)
 {
-	// Construct the timezone localizer.
-	CTzLocalizer* localizer = CTzLocalizer::NewL();
-	CleanupStack::PushL(localizer);
-
 	// Get the city group for the given id.
-	CTzLocalizedCityArray* cityArray = localizer->GetCitiesInGroupL(id,
+	CTzLocalizedCityArray* cityArray = mTzLocalizer->GetCitiesInGroupL(id,
 			CTzLocalizer::ETzAlphaNameAscending);
 	CleanupStack::PushL(cityArray);
-	CTzLocalizedCityArray* unsortedArray = localizer->GetCitiesInGroupL(id,
+	CTzLocalizedCityArray* unsortedArray = mTzLocalizer->GetCitiesInGroupL(id,
 			CTzLocalizer::ETzUnsorted);
 	CleanupStack::PushL(unsortedArray);
 
@@ -654,7 +663,6 @@
 	// Cleanup.
 	CleanupStack::PopAndDestroy(unsortedArray);
 	CleanupStack::PopAndDestroy(cityArray);
-	CleanupStack::PopAndDestroy(localizer);
 }
 
 void TimezoneClient::getLocationInfo(
@@ -663,15 +671,12 @@
 	TRAPD(
 			error,
 
-			// Construct the localizer.
-			CTzLocalizer* localizer = CTzLocalizer::NewLC();
-
 			// Get the localized city group.
-			CTzLocalizedCityGroup* cityGroup = localizer->GetCityGroupL(groupId);
+			CTzLocalizedCityGroup* cityGroup = mTzLocalizer->GetCityGroupL(groupId);
 			CleanupStack::PushL(cityGroup);
 
 			// Get the localized city array for the given city group.
-			CTzLocalizedCityArray* cityArray = localizer->GetCitiesInGroupL(
+			CTzLocalizedCityArray* cityArray = mTzLocalizer->GetCitiesInGroupL(
 					groupId, CTzLocalizer::ETzUnsorted);
 			CleanupStack::PushL(cityArray);
 
@@ -690,7 +695,6 @@
 			// Cleanup.
 			CleanupStack::PopAndDestroy(cityArray);
 			CleanupStack::PopAndDestroy(cityGroup);
-			CleanupStack::PopAndDestroy(localizer);
 	)
 	Q_UNUSED(error)
 }
@@ -787,11 +791,8 @@
 	TPtrC namePtr;
 	namePtr.Set(name.utf16(), name.length());
 
-	// Construct the timezone localizer.
-	CTzLocalizer *localizer = CTzLocalizer::NewLC();
-
 	// Get the citygroup matching the name.
-	CTzLocalizedCityGroup *cityGroup = localizer->FindCityGroupByNameL(namePtr);
+	CTzLocalizedCityGroup *cityGroup = mTzLocalizer->FindCityGroupByNameL(namePtr);
 	CleanupStack::PushL(cityGroup);
 
 	// Get the id.
@@ -799,7 +800,6 @@
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy(cityGroup);
-	CleanupStack::PopAndDestroy(localizer);
 
 	return id;
 }
@@ -809,11 +809,8 @@
 	TPtrC namePtr;
 	namePtr.Set(name.utf16(), name.length());
 
-	// Construct the timezone localizer.
-	CTzLocalizer *localizer = CTzLocalizer::NewLC();
-
 	// Get the citygroup matching the name.
-	CTzLocalizedCityArray *cityArray = localizer->GetCitiesL(tzId);
+	CTzLocalizedCityArray *cityArray = mTzLocalizer->GetCitiesL(tzId);
 	CleanupStack::PushL(cityArray);
 
 	int id;
@@ -828,10 +825,8 @@
 
 	// Cleanup.
 	CleanupStack::PopAndDestroy(cityArray);
-	CleanupStack::PopAndDestroy(localizer);
 
 	return id;
-
 }
 
 void TimezoneClient::setDateTime(QDateTime dateTime)
@@ -850,21 +845,25 @@
 
 void TimezoneClient::setTimeUpdateOn(bool timeUpdate)
 {
-    RClkSrvInterface clkSrvInterface;
-    User::LeaveIfError(clkSrvInterface.Connect());
-    if (timeUpdate) {
-    clkSrvInterface.ActivateAllProtocols();
-    }
-    else {
-    clkSrvInterface.DeActivateAllProtocols();
-    }
-	mTimeUpdateOn = timeUpdate;
+	RClkSrvInterface clkSrvInterface;
+	User::LeaveIfError(clkSrvInterface.Connect());
+	if (timeUpdate) {
+		clkSrvInterface.ActivateAllProtocols();
+	}
+	else {
+		clkSrvInterface.DeActivateAllProtocols();
+	}
 	clkSrvInterface.Close();
 }
 
 bool TimezoneClient::timeUpdateOn()
 {
-	return mTimeUpdateOn;
+	TBool autoTimeUpdateOn;
+	RClkSrvInterface clkSrvInterface;
+	User::LeaveIfError(clkSrvInterface.Connect());
+	clkSrvInterface.IsAutoTimeUpdateOn(autoTimeUpdateOn);
+	clkSrvInterface.Close();
+	return autoTimeUpdateOn;
 }
 
 QStandardItemModel *TimezoneClient::locationSelectorModel()
@@ -1245,4 +1244,29 @@
 
 	return info;
 }
+
+/*!
+	Slot which is called when the value changes in cevrep.
+
+	\param key The key which got changed in cenrep.
+	\param value The new value of that key.
+ */
+void TimezoneClient::eventMonitor(const XQSettingsKey& key, const QVariant& value)
+{
+	if (key.uid() == KCRUidNitz && key.key() == KActiveProtocol) {
+		if (mSettingsManager->error() == XQSettingsManager::NoError) {
+
+			// New value of auto time update.
+			int autoTimeUpdate = value.toInt();
+
+			// Check if the auto time update value has actually changed.
+			bool keyValueChanged = (autoTimeUpdate != mAutoTimeUpdateValue);
+
+			if(keyValueChanged) {
+				mAutoTimeUpdateValue = autoTimeUpdate;
+				emit autoTimeUpdateChanged(mAutoTimeUpdateValue);
+			}
+		}
+	}
+}
 // End of file	--Don't remove this.
--- a/clock/clockmw/eabi/clockalarmclientu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/eabi/clockalarmclientu.def	Tue May 18 13:16:49 2010 +0100
@@ -24,4 +24,5 @@
 	_ZNK11AlarmClient10metaObjectEv @ 23 NONAME
 	_ZTI11AlarmClient @ 24 NONAME
 	_ZTV11AlarmClient @ 25 NONAME
+	_ZN11AlarmClient18deleteSnoozedAlarmEi @ 26 NONAME
 
--- a/clock/clockmw/eabi/clocksettingsutilityu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/eabi/clocksettingsutilityu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,40 +1,34 @@
 EXPORTS
-	_ZN15SettingsUtility10autoUpdateER11QStringList @ 1 NONAME
-	_ZN15SettingsUtility10dateFormatER11QStringList @ 2 NONAME
-	_ZN15SettingsUtility10snoozeTimeER11QStringList @ 3 NONAME
-	_ZN15SettingsUtility10timeFormatER11QStringList @ 4 NONAME
-	_ZN15SettingsUtility11qt_metacallEN11QMetaObject4CallEiPPv @ 5 NONAME
-	_ZN15SettingsUtility11qt_metacastEPKc @ 6 NONAME
-	_ZN15SettingsUtility11setTimeZoneERK7QString @ 7 NONAME
-	_ZN15SettingsUtility11setWorkdaysERK7QString @ 8 NONAME
-	_ZN15SettingsUtility12setClockTypeERK7QString @ 9 NONAME
-	_ZN15SettingsUtility13dateSeparatorER11QStringList @ 10 NONAME
-	_ZN15SettingsUtility13setAutoUpdateERK7QString @ 11 NONAME
-	_ZN15SettingsUtility13setDateFormatERK7QString @ 12 NONAME
-	_ZN15SettingsUtility13setSnoozeTimeEi @ 13 NONAME
-	_ZN15SettingsUtility13setTimeFormatERK7QString @ 14 NONAME
-	_ZN15SettingsUtility13timeSeparatorER11QStringList @ 15 NONAME
-	_ZN15SettingsUtility14setStartOfWeekEi @ 16 NONAME
-	_ZN15SettingsUtility15settingsChangedE19SettingsItemChanged7QString @ 17 NONAME
-	_ZN15SettingsUtility16dateFormatStringEv @ 18 NONAME
-	_ZN15SettingsUtility16setDateSeparatorERK7QString @ 19 NONAME
-	_ZN15SettingsUtility16setTimeSeparatorERK7QString @ 20 NONAME
-	_ZN15SettingsUtility16staticMetaObjectE @ 21 NONAME DATA 16
-	_ZN15SettingsUtility16timeFormatStringEv @ 22 NONAME
-	_ZN15SettingsUtility19getStaticMetaObjectEv @ 23 NONAME
-	_ZN15SettingsUtility4dateEv @ 24 NONAME
-	_ZN15SettingsUtility4timeEv @ 25 NONAME
-	_ZN15SettingsUtility7setDateERK7QString @ 26 NONAME
-	_ZN15SettingsUtility7setTimeERK7QString @ 27 NONAME
-	_ZN15SettingsUtility8timeZoneEv @ 28 NONAME
-	_ZN15SettingsUtility8workdaysER11QStringList @ 29 NONAME
-	_ZN15SettingsUtility9clockTypeER11QStringList @ 30 NONAME
-	_ZN15SettingsUtilityC1EP7QObject @ 31 NONAME
-	_ZN15SettingsUtilityC2EP7QObject @ 32 NONAME
-	_ZN15SettingsUtilityD0Ev @ 33 NONAME
-	_ZN15SettingsUtilityD1Ev @ 34 NONAME
-	_ZN15SettingsUtilityD2Ev @ 35 NONAME
-	_ZNK15SettingsUtility10metaObjectEv @ 36 NONAME
-	_ZTI15SettingsUtility @ 37 NONAME
-	_ZTV15SettingsUtility @ 38 NONAME
+	_ZN15SettingsUtility10dateFormatER11QStringList @ 1 NONAME
+	_ZN15SettingsUtility10snoozeTimeER11QStringList @ 2 NONAME
+	_ZN15SettingsUtility10timeFormatER11QStringList @ 3 NONAME
+	_ZN15SettingsUtility11qt_metacallEN11QMetaObject4CallEiPPv @ 4 NONAME
+	_ZN15SettingsUtility11qt_metacastEPKc @ 5 NONAME
+	_ZN15SettingsUtility11setWorkdaysERK7QString @ 6 NONAME
+	_ZN15SettingsUtility12setClockTypeERK7QString @ 7 NONAME
+	_ZN15SettingsUtility13dateSeparatorER11QStringList @ 8 NONAME
+	_ZN15SettingsUtility13setDateFormatERK7QString @ 9 NONAME
+	_ZN15SettingsUtility13setSnoozeTimeEi @ 10 NONAME
+	_ZN15SettingsUtility13setTimeFormatERK7QString @ 11 NONAME
+	_ZN15SettingsUtility13timeSeparatorER11QStringList @ 12 NONAME
+	_ZN15SettingsUtility14setStartOfWeekEi @ 13 NONAME
+	_ZN15SettingsUtility15settingsChangedE19SettingsItemChanged7QString @ 14 NONAME
+	_ZN15SettingsUtility16dateFormatStringEv @ 15 NONAME
+	_ZN15SettingsUtility16setDateSeparatorERK7QString @ 16 NONAME
+	_ZN15SettingsUtility16setTimeSeparatorERK7QString @ 17 NONAME
+	_ZN15SettingsUtility16staticMetaObjectE @ 18 NONAME DATA 16
+	_ZN15SettingsUtility16timeFormatStringEv @ 19 NONAME
+	_ZN15SettingsUtility19getStaticMetaObjectEv @ 20 NONAME
+	_ZN15SettingsUtility4dateEv @ 21 NONAME
+	_ZN15SettingsUtility4timeEv @ 22 NONAME
+	_ZN15SettingsUtility8workdaysER11QStringList @ 23 NONAME
+	_ZN15SettingsUtility9clockTypeER11QStringList @ 24 NONAME
+	_ZN15SettingsUtilityC1EP7QObject @ 25 NONAME
+	_ZN15SettingsUtilityC2EP7QObject @ 26 NONAME
+	_ZN15SettingsUtilityD0Ev @ 27 NONAME
+	_ZN15SettingsUtilityD1Ev @ 28 NONAME
+	_ZN15SettingsUtilityD2Ev @ 29 NONAME
+	_ZNK15SettingsUtility10metaObjectEv @ 30 NONAME
+	_ZTI15SettingsUtility @ 31 NONAME
+	_ZTV15SettingsUtility @ 32 NONAME
 
--- a/clock/clockmw/eabi/timezoneclientu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockmw/eabi/timezoneclientu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,47 +1,55 @@
 EXPORTS
 	_ZN14TimezoneClient10intToMonthEi @ 1 NONAME
-	_ZN14TimezoneClient11listUpdatedEv @ 2 NONAME
-	_ZN14TimezoneClient11qt_metacallEN11QMetaObject4CallEiPPv @ 3 NONAME
-	_ZN14TimezoneClient11qt_metacastEPKc @ 4 NONAME
-	_ZN14TimezoneClient11setDateTimeE9QDateTime @ 5 NONAME
-	_ZN14TimezoneClient11timechangedEv @ 6 NONAME
-	_ZN14TimezoneClient12getCountriesER4QMapI7QStringiE @ 7 NONAME
-	_ZN14TimezoneClient12getDstRulesLER9QDateTimeS1_i @ 8 NONAME
-	_ZN14TimezoneClient12getLocationsEv @ 9 NONAME
-	_ZN14TimezoneClient12timeUpdateOnEv @ 10 NONAME
-	_ZN14TimezoneClient13saveLocationsERK5QListI12LocationInfoE @ 11 NONAME
-	_ZN14TimezoneClient14populateCitiesEv @ 12 NONAME
-	_ZN14TimezoneClient15getLocationInfoEiiR12LocationInfo @ 13 NONAME
-	_ZN14TimezoneClient15setTimeUpdateOnEb @ 14 NONAME
-	_ZN14TimezoneClient16getDstZoneOffsetEi @ 15 NONAME
-	_ZN14TimezoneClient16getUtcDstOffsetLERiRK5CTzId @ 16 NONAME
-	_ZN14TimezoneClient16staticMetaObjectE @ 17 NONAME DATA 16
-	_ZN14TimezoneClient17checkForDstChangeER9AlarmInfo @ 18 NONAME
-	_ZN14TimezoneClient17getSavedLocationsEv @ 19 NONAME
-	_ZN14TimezoneClient17getStandardOffsetEi @ 20 NONAME
-	_ZN14TimezoneClient19environmentCallbackEPv @ 21 NONAME
-	_ZN14TimezoneClient19getCitiesForCountryEiR4QMapI7QStringiE @ 22 NONAME
-	_ZN14TimezoneClient19getCurrentZoneInfoLEv @ 23 NONAME
-	_ZN14TimezoneClient19getStaticMetaObjectEv @ 24 NONAME
-	_ZN14TimezoneClient20getCityGroupIdByNameERK7QString @ 25 NONAME
-	_ZN14TimezoneClient21createWorldClockModelEv @ 26 NONAME
-	_ZN14TimezoneClient21locationSelectorModelEv @ 27 NONAME
-	_ZN14TimezoneClient21setAsCurrentLocationLER12LocationInfo @ 28 NONAME
-	_ZN14TimezoneClient24getCityOffsetByNameAndIdERK7QStringi @ 29 NONAME
-	_ZN14TimezoneClient5dstOnEi @ 30 NONAME
-	_ZN14TimezoneClient8isDSTOnLEi @ 31 NONAME
-	_ZN14TimezoneClientC1EP7QObject @ 32 NONAME
-	_ZN14TimezoneClientC2EP7QObject @ 33 NONAME
-	_ZN14TimezoneClientD0Ev @ 34 NONAME
-	_ZN14TimezoneClientD1Ev @ 35 NONAME
-	_ZN14TimezoneClientD2Ev @ 36 NONAME
-	_ZNK14TimezoneClient10metaObjectEv @ 37 NONAME
-	_ZTI14TimezoneClient @ 38 NONAME
-	_ZTV14TimezoneClient @ 39 NONAME
-	_ZThn8_N14TimezoneClientD0Ev @ 40 NONAME
-	_ZThn8_N14TimezoneClientD1Ev @ 41 NONAME
-	_ZN14TimezoneClient17getAllTimeZoneIdsEv @ 42 NONAME
-	_ZN14TimezoneClient21getAllTimeZoneOffsetsEv @ 43 NONAME
-	_ZN14TimezoneClient24getCountriesForUTCOffsetEi @ 44 NONAME
-	_ZN14TimezoneClient7addCityEiR7QStringi @ 45 NONAME
+	_ZN14TimezoneClient11cityUpdatedEv @ 2 NONAME
+	_ZN14TimezoneClient11getInstanceEv @ 3 NONAME
+	_ZN14TimezoneClient11listUpdatedEv @ 4 NONAME
+	_ZN14TimezoneClient11qt_metacallEN11QMetaObject4CallEiPPv @ 5 NONAME
+	_ZN14TimezoneClient11qt_metacastEPKc @ 6 NONAME
+	_ZN14TimezoneClient11setDateTimeE9QDateTime @ 7 NONAME
+	_ZN14TimezoneClient11timechangedEv @ 8 NONAME
+	_ZN14TimezoneClient12eventMonitorERK13XQSettingsKeyRK8QVariant @ 9 NONAME
+	_ZN14TimezoneClient12getCountriesER4QMapI7QStringiE @ 10 NONAME
+	_ZN14TimezoneClient12getDstRulesLER9QDateTimeS1_i @ 11 NONAME
+	_ZN14TimezoneClient12getLocationsEv @ 12 NONAME
+	_ZN14TimezoneClient12timeUpdateOnEv @ 13 NONAME
+	_ZN14TimezoneClient13saveLocationsERK5QListI12LocationInfoE @ 14 NONAME
+	_ZN14TimezoneClient14deleteInstanceEv @ 15 NONAME
+	_ZN14TimezoneClient14populateCitiesEv @ 16 NONAME
+	_ZN14TimezoneClient15getLocationInfoEiiR12LocationInfo @ 17 NONAME
+	_ZN14TimezoneClient15mReferenceCountE @ 18 NONAME DATA 4
+	_ZN14TimezoneClient15mTimezoneClientE @ 19 NONAME DATA 4
+	_ZN14TimezoneClient15setTimeUpdateOnEb @ 20 NONAME
+	_ZN14TimezoneClient16getDstZoneOffsetEi @ 21 NONAME
+	_ZN14TimezoneClient16getUtcDstOffsetLERiRK5CTzId @ 22 NONAME
+	_ZN14TimezoneClient16staticMetaObjectE @ 23 NONAME DATA 16
+	_ZN14TimezoneClient17checkForDstChangeER9AlarmInfo @ 24 NONAME
+	_ZN14TimezoneClient17getAllTimeZoneIdsEv @ 25 NONAME
+	_ZN14TimezoneClient17getSavedLocationsEv @ 26 NONAME
+	_ZN14TimezoneClient17getStandardOffsetEi @ 27 NONAME
+	_ZN14TimezoneClient19environmentCallbackEPv @ 28 NONAME
+	_ZN14TimezoneClient19getCitiesForCountryEiR4QMapI7QStringiE @ 29 NONAME
+	_ZN14TimezoneClient19getCurrentZoneInfoLEv @ 30 NONAME
+	_ZN14TimezoneClient19getStaticMetaObjectEv @ 31 NONAME
+	_ZN14TimezoneClient20getCityGroupIdByNameERK7QString @ 32 NONAME
+	_ZN14TimezoneClient21autoTimeUpdateChangedEi @ 33 NONAME
+	_ZN14TimezoneClient21createWorldClockModelEv @ 34 NONAME
+	_ZN14TimezoneClient21getAllTimeZoneOffsetsEv @ 35 NONAME
+	_ZN14TimezoneClient21locationSelectorModelEv @ 36 NONAME
+	_ZN14TimezoneClient21setAsCurrentLocationLER12LocationInfo @ 37 NONAME
+	_ZN14TimezoneClient24getCityOffsetByNameAndIdERK7QStringi @ 38 NONAME
+	_ZN14TimezoneClient24getCountriesForUTCOffsetEi @ 39 NONAME
+	_ZN14TimezoneClient5dstOnEi @ 40 NONAME
+	_ZN14TimezoneClient6isNullEv @ 41 NONAME
+	_ZN14TimezoneClient7addCityEiR7QStringi @ 42 NONAME
+	_ZN14TimezoneClient8isDSTOnLEi @ 43 NONAME
+	_ZN14TimezoneClientC1Ev @ 44 NONAME
+	_ZN14TimezoneClientC2Ev @ 45 NONAME
+	_ZN14TimezoneClientD0Ev @ 46 NONAME
+	_ZN14TimezoneClientD1Ev @ 47 NONAME
+	_ZN14TimezoneClientD2Ev @ 48 NONAME
+	_ZNK14TimezoneClient10metaObjectEv @ 49 NONAME
+	_ZTI14TimezoneClient @ 50 NONAME
+	_ZTV14TimezoneClient @ 51 NONAME
+	_ZThn8_N14TimezoneClientD0Ev @ 52 NONAME
+	_ZThn8_N14TimezoneClientD1Ev @ 53 NONAME
 
--- a/clock/clockui/bwins/clockalarmeditoru.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/bwins/clockalarmeditoru.def	Tue May 18 13:16:49 2010 +0100
@@ -1,5 +1,5 @@
 EXPORTS
 	??1ClockAlarmEditor@@UAE@XZ @ 1 NONAME ; ClockAlarmEditor::~ClockAlarmEditor(void)
-	??0ClockAlarmEditor@@QAE@HPAVQGraphicsWidget@@@Z @ 2 NONAME ; ClockAlarmEditor::ClockAlarmEditor(int, class QGraphicsWidget *)
-	?showAlarmEditor@ClockAlarmEditor@@QAEXXZ @ 3 NONAME ; void ClockAlarmEditor::showAlarmEditor(void)
+	?showAlarmEditor@ClockAlarmEditor@@QAEXXZ @ 2 NONAME ; void ClockAlarmEditor::showAlarmEditor(void)
+	??0ClockAlarmEditor@@QAE@AAVAlarmClient@@HPAVQObject@@@Z @ 3 NONAME ; ClockAlarmEditor::ClockAlarmEditor(class AlarmClient &, int, class QObject *)
 
--- a/clock/clockui/bwins/clockviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/bwins/clockviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,8 +1,11 @@
 EXPORTS
-	?setupView@ClockMainView@@QAEXAAVClockAppControllerIf@@PAVClockDocLoader@@@Z @ 1 NONAME ; void ClockMainView::setupView(class ClockAppControllerIf &, class ClockDocLoader *)
-	??0ClockWorldView@@QAE@PAVQGraphicsItem@@@Z @ 2 NONAME ; ClockWorldView::ClockWorldView(class QGraphicsItem *)
-	??1ClockWorldView@@UAE@XZ @ 3 NONAME ; ClockWorldView::~ClockWorldView(void)
-	??1ClockMainView@@UAE@XZ @ 4 NONAME ; ClockMainView::~ClockMainView(void)
-	?setupView@ClockWorldView@@QAEXAAVClockAppControllerIf@@PAVClockDocLoader@@@Z @ 5 NONAME ; void ClockWorldView::setupView(class ClockAppControllerIf &, class ClockDocLoader *)
-	??0ClockMainView@@QAE@PAVQGraphicsItem@@@Z @ 6 NONAME ; ClockMainView::ClockMainView(class QGraphicsItem *)
+	??1ClockWorldView@@UAE@XZ @ 1 NONAME ; ClockWorldView::~ClockWorldView(void)
+	??1ClockMainView@@UAE@XZ @ 2 NONAME ; ClockMainView::~ClockMainView(void)
+	?setupView@ClockWorldView@@QAEXAAVClockAppControllerIf@@PAVClockDocLoader@@@Z @ 3 NONAME ; void ClockWorldView::setupView(class ClockAppControllerIf &, class ClockDocLoader *)
+	??0ClockMainView@@QAE@PAVQGraphicsItem@@@Z @ 4 NONAME ; ClockMainView::ClockMainView(class QGraphicsItem *)
+	??0ClockWorldView@@QAE@PAVQGraphicsItem@@@Z @ 5 NONAME ; ClockWorldView::ClockWorldView(class QGraphicsItem *)
+	?setupView@ClockMainView@@QAEXAAVClockAppControllerIf@@PAVClockDocLoader@@@Z @ 6 NONAME ; void ClockMainView::setupView(class ClockAppControllerIf &, class ClockDocLoader *)
+	??0ClockHomeCityItem@@QAE@PAVQGraphicsItem@@@Z @ 7 NONAME ; ClockHomeCityItem::ClockHomeCityItem(class QGraphicsItem *)
+	??1ClockHomeCityItem@@UAE@XZ @ 8 NONAME ; ClockHomeCityItem::~ClockHomeCityItem(void)
+	?setupAfterViewReady@ClockMainView@@QAEXXZ @ 9 NONAME ; void ClockMainView::setupAfterViewReady(void)
 
--- a/clock/clockui/bwins/clockwidgetprotou.def	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-EXPORTS
-	??0SkinnableClock@@QAE@PAVQGraphicsItem@@@Z @ 1 NONAME ; SkinnableClock::SkinnableClock(class QGraphicsItem *)
-	?updateDisplay@SkinnableClock@@QAEX_N@Z @ 2 NONAME ; void SkinnableClock::updateDisplay(bool)
-	?updateClockType@SkinnableClock@@QAEXXZ @ 3 NONAME ; void SkinnableClock::updateClockType(void)
-	??1SkinnableClock@@UAE@XZ @ 4 NONAME ; SkinnableClock::~SkinnableClock(void)
-	?staticMetaObject@SkinnableClock@@2UQMetaObject@@B @ 5 NONAME ; struct QMetaObject const SkinnableClock::staticMetaObject
-	??_ESkinnableClock@@UAE@I@Z @ 6 NONAME ; SkinnableClock::~SkinnableClock(unsigned int)
-	?qt_metacast@SkinnableClock@@UAEPAXPBD@Z @ 7 NONAME ; void * SkinnableClock::qt_metacast(char const *)
-	?startChangeType@SkinnableClock@@AAEXXZ @ 8 NONAME ; void SkinnableClock::startChangeType(void)
-	?trUtf8@SkinnableClock@@SA?AVQString@@PBD0@Z @ 9 NONAME ; class QString SkinnableClock::trUtf8(char const *, char const *)
-	?trUtf8@SkinnableClock@@SA?AVQString@@PBD0H@Z @ 10 NONAME ; class QString SkinnableClock::trUtf8(char const *, char const *, int)
-	?metaObject@SkinnableClock@@UBEPBUQMetaObject@@XZ @ 11 NONAME ; struct QMetaObject const * SkinnableClock::metaObject(void) const
-	?tr@SkinnableClock@@SA?AVQString@@PBD0H@Z @ 12 NONAME ; class QString SkinnableClock::tr(char const *, char const *, int)
-	?qt_metacall@SkinnableClock@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 13 NONAME ; int SkinnableClock::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?paint@SkinnableClock@@MAEXPAVQPainter@@PBVQStyleOptionGraphicsItem@@PAVQWidget@@@Z @ 14 NONAME ; void SkinnableClock::paint(class QPainter *, class QStyleOptionGraphicsItem const *, class QWidget *)
-	?tr@SkinnableClock@@SA?AVQString@@PBD0@Z @ 15 NONAME ; class QString SkinnableClock::tr(char const *, char const *)
-	?getStaticMetaObject@SkinnableClock@@SAABUQMetaObject@@XZ @ 16 NONAME ; struct QMetaObject const & SkinnableClock::getStaticMetaObject(void)
-	?clockTypeAnalog@SkinnableClock@@QAE_NXZ @ 17 NONAME ; bool SkinnableClock::clockTypeAnalog(void)
-	?setClockTypeAnalog@SkinnableClock@@AAEX_N@Z @ 18 NONAME ; void SkinnableClock::setClockTypeAnalog(bool)
-	?finishChangeType@SkinnableClock@@QAEXABUEffectStatus@HbEffect@@@Z @ 19 NONAME ; void SkinnableClock::finishChangeType(struct HbEffect::EffectStatus const &)
-	?clockFormat24@SkinnableClock@@QAE_NXZ @ 20 NONAME ; bool SkinnableClock::clockFormat24(void)
-
--- a/clock/clockui/clockalarmeditor/clockalarmeditor.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockalarmeditor/clockalarmeditor.pro	Tue May 18 13:16:49 2010 +0100
@@ -27,7 +27,8 @@
 
 DEPENDPATH += \
 		./inc \
-		./src
+		./src \
+		./data
 
 symbian: {
 	TARGET.CAPABILITY += ALL -TCB
@@ -43,13 +44,14 @@
 
 SOURCES += \
 		clockalarmeditor.cpp \
-                clockalarmcustomitem.cpp 
+        	clockalarmcustomitem.cpp 
 		   
 HEADERS += \
 		clockalarmeditor.h \
-            clockalarmcustomitem.h\ 
-	    clockalarmeditordefines.h
+        	clockalarmcustomitem.h \ 
+	    	clockalarmeditordefines.h
+		
+RESOURCES += \
+		clockalarmeditor.qrc
 
-RESOURCES += \
-		data/clockalarmeditor.qrc
 # End of file	--Don't remove this.
--- a/clock/clockui/clockalarmeditor/data/clockalarmeditor.qrc	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockalarmeditor/data/clockalarmeditor.qrc	Tue May 18 13:16:49 2010 +0100
@@ -2,5 +2,9 @@
 	<qresource prefix="/translations">
 		<file alias="clockalarmeditor" >translations/clockalarmeditor.qm</file>
 	</qresource>
+	
+	<qresource prefix="/xml">
+		<file alias="clockalarmeditor.docml">xml/clockalarmeditor.docml</file>
+	</qresource>
 
-</RCC>
+</RCC>
\ No newline at end of file
Binary file clock/clockui/clockalarmeditor/data/translations/clockalarmeditor.qm has changed
--- a/clock/clockui/clockalarmeditor/data/translations/clockalarmeditor.ts	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockalarmeditor/data/translations/clockalarmeditor.ts	Tue May 18 13:16:49 2010 +0100
@@ -2,16 +2,6 @@
 <!DOCTYPE TS>
 <TS version="3.0" language="en_GB" sourcelanguage="en_GB">
 <context>
-<message numerus="no" id="txt_clock_setlabel_time_format">
-    <comment>1st label in Regional date &amp; time settings view</comment>        
-    <source>Time format</source>
-    <translation variants="no">Time format</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_common_common_clock">
     <comment>Title for Date and time settings view</comment>        
     <source>Clock</source>
@@ -22,36 +12,6 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_cp_main_view_list_time_info_date_info">
-    <comment>The time and date information will be displayed in 2nd row</comment>        
-    <source>%1, %2</source>
-    <translation variants="no">%1, %2</translation>
-    <extra-loc-layout_id>qtl_list_sec_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_digital">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Digital</source>
-    <translation variants="no">Digital</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_cp_main_view_list_time_date">
-    <comment>This text is displayed in 1st row</comment>        
-    <source>Time &amp; date</source>
-    <translation variants="no">Time &amp; date</translation>
-    <extra-loc-layout_id>qtl_list_pri_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clock_note_alarm_occurs_every_week_on_1_at_2">
     <comment>Note displayed after alarm is set (every week)</comment>        
     <source>Alarm occurs every week on %1 at %2</source>
@@ -62,6 +22,26 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clk_formlabel_val_alarm">
+    <comment>Default value for Description label in Alarm editor view</comment>        
+    <source>Alarm</source>
+    <translation variants="no">Alarm</translation>
+    <extra-loc-layout_id>qtl_dataform_description_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>formlabel_1_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_occurence">
+    <comment>Label for Occurence in Alarm editor</comment>        
+    <source>Occurence</source>
+    <translation variants="no">Occurence</translation>
+    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_tumbler_title_alarm_time">
     <comment>Title for the time picker tumbler widget </comment>        
     <source>Alarm time</source>
@@ -72,13 +52,13 @@
     <extra-loc-feature>Tu</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_mm_dd_yyyy">
-    <comment>2nd value in combo box list for Date format label</comment>        
-    <source>mm dd yyyy</source>
-    <translation variants="no">mm dd yyyy</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
+<message numerus="no" id="txt_clock_opt_discard_changes">
+    <comment>When user edits an already existed alarm in Alarm editor form, he can &quot;Discard changes&quot; from Options menu and the prevoius values are saved.</comment>        
+    <source>Discard changes</source>
+    <translation variants="no">Discard changes</translation>
+    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>opt</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -92,26 +72,6 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_date_format">
-    <comment>3rd field in Regional date &amp; time settings view</comment>        
-    <source>Date format</source>
-    <translation variants="no">Date format</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_regional_date_time_settings">
-    <comment>Tapping on this button opens advanced date and time view</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clock_dpopinfo_alarm_will_occur_at_1_after_au">
     <comment>Popup Information which comes after setting the alarm.</comment>        
     <source>Alarm will occur at %1 after automatic daylight saving update</source>
@@ -122,6 +82,36 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clock_subhead_new_alarm">
+    <comment>When user taps on &quot;New alarm&quot; toolbar button in Clock main view, alarm editor opens with the subtitle &quot;New alarm&quot;.</comment>        
+    <source>New alarm</source>
+    <translation variants="no">New alarm</translation>
+    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>subhead</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clock_subhead_alarm">
+    <comment>When user taps on already existed alarm in the alarm list, the alarm editor opens with subtitle &quot;Alarm&quot;</comment>        
+    <source>Alarm</source>
+    <translation variants="no">Alarm</translation>
+    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>subhead</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_val_repeat_daily">
+    <comment>2nd dropdown list value for Occurence label in Alarm editor view</comment>        
+    <source>Repeat daily</source>
+    <translation variants="no">Repeat daily</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_tumbler_title_time">
     <comment></comment>        
     <source>Time</source>
@@ -132,36 +122,6 @@
     <extra-loc-feature>Tu</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_subhead_regional_date_time_settings">
-    <comment>Sub-title for Regiional date &amp; time settings</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_place">
-    <comment>5th label for Place in Clock settings view</comment>        
-    <source>Place</source>
-    <translation variants="no">Place</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_24_hour">
-    <comment>1st Value in combo box list for Time format label</comment>        
-    <source>24 hour</source>
-    <translation variants="no">24 hour</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_common_setlabel_dst">
     <comment></comment>        
     <source>DST</source>
@@ -172,6 +132,46 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clk_setlabel_time">
+    <comment>Label for Time in Alarm editor view</comment>        
+    <source>Time</source>
+    <translation variants="no">Time</translation>
+    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_val_once">
+    <comment>1st dropdown list value for Occurence label in Alarm editor view</comment>        
+    <source>Once</source>
+    <translation variants="no">Once</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_alarm_sound">
+    <comment>Label for Alarm sound in Alarm editor view</comment>        
+    <source>Alarm sound</source>
+    <translation variants="no">Alarm sound</translation>
+    <extra-loc-layout_id>qtl_checkbox_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_val_monday">
+    <comment>1st dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Monday</source>
+    <translation variants="no">Monday</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_clock_dpopinfo_alarm_occurs_every_day_at_1">
     <comment>Note displayed after alarm is set (Everyday Time)</comment>        
     <source>Alarm occurs every day at %1</source>
@@ -182,36 +182,43 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="yes" id="txt_clock_list_ln_minutes">
-    <comment>Alarm snooze time details in the list box (5mins, 10mins, 15mins, 30mins)</comment>        
-    <source>%Ln minutes</source>
-    <translation>
-        <numerusform variants="no">(s)%Ln minutes</numerusform>
-        <numerusform variants="no">(p)%Ln minutes</numerusform>
-    </translation>
-    <extra-loc-layout_id>qtl_dataform_combobox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>set</extra-loc-positionid>
+<message numerus="no" id="txt_clk_setlabel_val_thursday">
+    <comment>4th dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Thursday</source>
+    <translation variants="no">Thursday</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_4_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_button_analog">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Analog</source>
-    <translation variants="no">Analog</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
+<message numerus="no" id="txt_clk_setlabel_val_friday">
+    <comment>5th dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Friday</source>
+    <translation variants="no">Friday</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_5_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_week_starts_on">
-    <comment>6th field in Regional date &amp; time settings view</comment>        
-    <source>Week starts on</source>
-    <translation variants="no">Week starts on</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+<message numerus="no" id="txt_clk_setlabel_val_repeat_on_workdays">
+    <comment>4th dropdown list value for Occurence label in Alarm editor view</comment>        
+    <source>Repeat on workdays</source>
+    <translation variants="no">Repeat on workdays</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_4_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_setlabel_val_sunday">
+    <comment>7th dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Sunday</source>
+    <translation variants="no">Sunday</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_7_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -225,13 +232,13 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_yyyy_mm_dd">
-    <comment>3rd value in combo box list for Date format label</comment>        
-    <source>yyyy mm dd</source>
-    <translation variants="no">yyyy mm dd</translation>
+<message numerus="no" id="txt_clk_setlabel_val_tuesday">
+    <comment>2nd dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Tuesday</source>
+    <translation variants="no">Tuesday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -285,73 +292,23 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_use_network_date_time">
-    <comment>1st label in Date and time settings view</comment>        
-    <source>Use network date &amp; time</source>
-    <translation variants="no">Use network date &amp; time</translation>
-    <extra-loc-layout_id>qtl_checkbox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time_separator">
-    <comment>Subtitle for the time seperator drop down list</comment>        
-    <source>Time separator</source>
-    <translation variants="no">Time separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date_separator">
-    <comment>Subtitle for the date seperator drop down list</comment>        
-    <source>Date separator</source>
-    <translation variants="no">Date separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
+<message numerus="no" id="txt_clk_setlabel_day">
+    <comment>Label for Day in Alarm editor view</comment>        
+    <source>Day</source>
+    <translation variants="no">Day</translation>
+    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_workdays">
-    <comment>Label for Workdays in Alarm editor</comment>        
-    <source>Workdays</source>
-    <translation variants="no">Workdays</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date">
-    <comment>Label to the date field (picker) in the settings view</comment>        
-    <source>Date</source>
-    <translation variants="no">Date</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time">
-    <comment>Label to the time field (picker) in the settings view</comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_12_hour">
-    <comment>2nd value in combo box list for Time format label</comment>        
-    <source>12 hour</source>
-    <translation variants="no">12 hour</translation>
+<message numerus="no" id="txt_clk_setlabel_val_repeat_weekly">
+    <comment>3rd dropdown list value for Occurence label in Alarm editor view</comment>        
+    <source>Repeat weekly</source>
+    <translation variants="no">Repeat weekly</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -375,33 +332,43 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_clock_type">
-    <comment>Primary text label for Clock Type</comment>        
-    <source>Clock Type</source>
-    <translation variants="no">Clock Type</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_5</extra-loc-positionid>
+<message numerus="no" id="txt_clock_opt_delete">
+    <comment>When user creates a new alarm in Alarm editor form, he can &quot;Delete&quot; this alarm via Options menu.</comment>        
+    <source>Delete</source>
+    <translation variants="no">Delete</translation>
+    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>opt</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_subhead_date_time">
-    <comment>Sub-title for Date &amp; time settings view</comment>        
-    <source>Date &amp; time</source>
-    <translation variants="no">Date &amp; time</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
+<message numerus="no" id="txt_clk_setlabel_val_saturday">
+    <comment>6th dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Saturday</source>
+    <translation variants="no">Saturday</translation>
+    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_6_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_dd_mm_yyyy">
-    <comment>1st value in combo box list for Date format label</comment>        
-    <source>dd mm yyyy</source>
-    <translation variants="no">dd mm yyyy</translation>
+<message numerus="no" id="txt_clk_setlabel_val_wednesday">
+    <comment>3rd dropdown list value for Day label in Alarm editor view</comment>        
+    <source>Wednesday</source>
+    <translation variants="no">Wednesday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clk_formlabel_description">
+    <comment>Label for Description in Alarm editor view</comment>        
+    <source>Description</source>
+    <translation variants="no">Description</translation>
+    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockalarmeditor/data/xml/clockalarmeditor.docml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="0.9">
+    <object name="deleteAction" type="HbAction">
+        <string locid="txt_clock_opt_delete" name="text" value="Delete"/>
+    </object>
+    <object name="discardChanges" type="HbAction">
+        <string locid="txt_clock_opt_discard_changes" name="text" value="Discard changes"/>
+    </object>
+    <widget name="alarmEditorView" type="HbView">
+        <widget name="alarmEditorViewWidget" role="HbView:widget" type="HbWidget">
+            <widget name="subtitleGroupBox" type="HbGroupBox">
+                <bool name="collapsable" value="FALSE"/>
+                <string name="heading" value="Group Box"/>
+            </widget>
+            <widget name="alarmEditorForm" type="HbDataForm"/>
+            <real name="z" value="0"/>
+            <layout orientation="Vertical" spacing="0un" type="linear">
+                <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                <linearitem itemname="subtitleGroupBox"/>
+                <linearitem itemname="alarmEditorForm"/>
+            </layout>
+        </widget>
+        <widget name="viewMenu" role="HbView:menu" type="HbMenu">
+            <ref object="deleteAction" role="HbMenu:addAction"/>
+            <ref object="discardChanges" role="HbMenu:addAction"/>
+        </widget>
+        <string locid="txt_common_common_clock" name="title" value="Clock"/>
+    </widget>
+    <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+    </metadata>
+</hbdocument>
--- a/clock/clockui/clockalarmeditor/inc/clockalarmeditor.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockalarmeditor/inc/clockalarmeditor.h	Tue May 18 13:16:49 2010 +0100
@@ -43,13 +43,15 @@
 class ClockAlarmCustomItem;
 class QTranslator;
 
-class ClockAlarmEditor : public HbView
+class ClockAlarmEditor : public QObject
 {
 	Q_OBJECT
 
 public:
 	CLOCKALARMEDITOR_EXPORT ClockAlarmEditor(
-			int alarmId = 0, QGraphicsWidget *parent = 0);
+			AlarmClient& alarmClient,
+			int alarmId = 0,
+			QObject *parent = 0);
 	CLOCKALARMEDITOR_EXPORT virtual ~ClockAlarmEditor();
 
 public:
@@ -61,10 +63,10 @@
 	void handleDiscardAction();
 	void handleTimeChange(const QString &text);
 	void handleOccurenceChanged(int index);
-	void handleCancelAction();
 	void handleOkAction();
 	void launchTimePicker();
-	void handleAlarmSoundChanged();
+	void handleAlarmSoundChanged(int checkedState);
+	void selectedAction(HbAction *action);
 
 signals:
 	void alarmSet();
@@ -73,7 +75,6 @@
 	void initModel();
 	void populateModelItems();
 	void initAlarmInfo();
-	void createMenu();
 	void createToolbar();
 	void setAlarm(
 			QString timeInfo, QString descInfo, int repeatType,
@@ -85,9 +86,12 @@
 	void displayRemainingTimeNote(AlarmInfo& alarmInfo);
 	void getDayText(int alarmDay,QString& dayText);
 	int getRemainingSeconds(QDateTime& alarmDateTime);
+	void launchDialog(QString title, QString text = 0);
+    void sortAlarmDaysList(QStringList& alarmDays);
 
 private:
 	int mAlarmId;
+	int mStartOfWeek;
 	bool mAlarmDayItemInserted;
 	QString mTimeFormat;
 
@@ -99,7 +103,7 @@
 	HbDataFormModelItem *mAlarmSoundItem;
 	HbDataFormModelItem *mAlarmDescription;
 
-	HbView *mPreviousView;
+	HbView *mAlarmEditorView;
 	HbAction *mDiscardAction;
 	HbAction *mDeleteAction;
 	HbAction *mDoneAction;
@@ -111,7 +115,7 @@
 	XQSettingsManager *mSettingsManager;
 	XQSettingsKey *mPreviosAlarmTime;
 
-	AlarmClient *mAlarmClient;
+	AlarmClient &mAlarmClient;
 	AlarmInfo mAlarmInfo;
 	TimezoneClient *mTimezoneClient;
 	QTranslator *mTranslator;
--- a/clock/clockui/clockalarmeditor/src/clockalarmeditor.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockalarmeditor/src/clockalarmeditor.cpp	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 
 // System includes
 #include <QDateTime>
-
 #include <HbDataForm>
 #include <HbDataFormModel>
 #include <HbDataFormModelItem>
@@ -25,14 +24,14 @@
 #include <HbInstance>
 #include <HbAction>
 #include <HbMenu>
-#include <HbToolBar>
-#include <HbLineEdit>
 #include <HbLabel>
-#include <HbComboBox>
-#include <HbPushButton>
 #include <HbNotificationDialog>
 #include <HbDialog>
 #include <HbDateTimePicker>
+#include <HbCheckBox>
+#include <HbExtendedLocale>
+#include <HbGroupBox>
+#include <HbDocumentLoader>
 #include <HbApplication>
 #include <xqsettingsmanager.h>
 #include <xqsettingskey.h>
@@ -52,6 +51,7 @@
 const int KOneMinute(1);
 const int KOneHour(1);
 const int KSecondsInOneDay(24 * 60 * 60);
+const int KDaysInWeek(7);
 
 /*!
     \class ClockAlarmEditor
@@ -68,9 +68,12 @@
     edit.
     \param parent The parent object.
  */
-ClockAlarmEditor::ClockAlarmEditor(int alarmId, QGraphicsWidget *parent)
-:HbView(parent),
+ClockAlarmEditor::ClockAlarmEditor(
+		AlarmClient &alarmClient, int alarmId,
+		QObject *parent)
+:QObject(parent),
  mAlarmId(alarmId),
+ mStartOfWeek(0),
  mAlarmDayItemInserted(false),
  mAlarmEditorForm(0),
  mAlarmEditorModel(0),
@@ -79,9 +82,8 @@
  mAlarmDayItem(0),
  mAlarmSoundItem(0),
  mAlarmDescription(0),
- mAlarmClient(0)
- {
- 	
+ mAlarmClient(alarmClient)
+{
  	// Load the translation file and install the alarmeditor specific translator
 	mTranslator = new QTranslator;
 	//QString lang = QLocale::system().name();
@@ -91,27 +93,8 @@
 	//bool loaded = mTranslator->load("caleneditor_" + lang, path);
 	HbApplication::instance()->installTranslator(mTranslator);
 
-	// Create the Alarm Editor DataForm.
-	mAlarmEditorForm = new HbDataForm(this);
-
-	// Set the title text of the Clock Alarm Editor view.
-	setTitle(hbTrId("txt_common_common_clock"));
-
-	// Create the alarm client object.
-	mAlarmClient = new AlarmClient(this);
-
-	// Set the heading of the Alarm Editor DataForm.
-	if (mAlarmId && mAlarmClient) {
-		mAlarmEditorForm->setHeading(
-				hbTrId("txt_clock_subhead_alarm"));
-	}
-	else
-	{
-		mAlarmEditorForm->setHeading(hbTrId("txt_clock_subhead_new_alarm"));
-	}
-
 	// create the timezone client object
-	mTimezoneClient = new TimezoneClient(this);
+	mTimezoneClient = TimezoneClient::getInstance();
 	// Create the settings manager.
 	mSettingsManager = new XQSettingsManager(this);
 
@@ -125,30 +108,67 @@
 	SettingsUtility *settingsUtil = new SettingsUtility(this);
 	mTimeFormat = settingsUtil->timeFormatString();
 
+	// Get start of week from the locale.
+    HbExtendedLocale locale = HbExtendedLocale::system();
+    mStartOfWeek = locale.startOfWeek();
+
+	// Create the HbDocumentLoader object.
+	HbDocumentLoader *loader = new HbDocumentLoader();
+	bool success;
+	loader->load(":/xml/clockalarmeditor.docml", &success);
+
+	mAlarmEditorView = qobject_cast<HbView *>(
+			loader->findWidget("alarmEditorView"));
+
+	// Get the subtitle groupBox.
+	HbGroupBox *subtitleGroupBox = qobject_cast<HbGroupBox *>(
+			loader->findWidget("subtitleGroupBox"));
+
+	// Set the heading of the subtitle groupBox.
+	if (mAlarmId) {
+		subtitleGroupBox->setHeading(hbTrId("txt_clock_subhead_alarm"));
+	} else {
+		subtitleGroupBox->setHeading(hbTrId("txt_clock_subhead_new_alarm"));
+	}
+
+	// Get the Alarm Editor DataForm.
+	mAlarmEditorForm = qobject_cast<HbDataForm *> (
+			loader->findWidget("alarmEditorForm"));
+
+
 	// Create the alarm info structure with desired values.
 	initAlarmInfo();
 
 	// Creates & initializes the DataFormModel for the AlarmEditor DataForm.
 	initModel();
-	
+
 	QList <HbAbstractViewItem*> prototypes = mAlarmEditorForm->itemPrototypes();
 	ClockAlarmCustomItem *customItem =
 			new ClockAlarmCustomItem(mAlarmEditorForm);
 	prototypes.append(customItem);
 	mAlarmEditorForm->setItemPrototypes(prototypes);
 
-	// Create the menu.
-	createMenu();
+	// Get the menu items for the alarm editor.
+	mDeleteAction = qobject_cast<HbAction *> (
+			loader->findObject("deleteAction"));
+	mDiscardAction = qobject_cast<HbAction *>(
+			loader->findObject("discardChanges"));
+
+	// Connect the signals for the menu item.
+	connect(
+			mDeleteAction, SIGNAL(triggered()),
+			this, SLOT(handleDeleteAction()));
+	connect(
+			mDiscardAction, SIGNAL(triggered()),
+			this, SLOT(handleDiscardAction()));
 
 	// Add the done soft key action.
-	mDoneAction = new HbAction(Hb::DoneAction);
+	mDoneAction = new HbAction(Hb::DoneNaviAction);
 	connect(
 			mDoneAction, SIGNAL(triggered()),
 			this, SLOT(handleDoneAction()));
-	setNavigationAction(mDoneAction);
+	mAlarmEditorView->setNavigationAction(mDoneAction);
 
-	// Sets the AlarmEditor DataForm to the Clock AlarmEditor view.
-	setWidget(mAlarmEditorForm);
 }
 
 /*!
@@ -156,13 +176,8 @@
  */
 ClockAlarmEditor::~ClockAlarmEditor()
 {
-	if (mAlarmClient) {
-		delete mAlarmClient;
-		mAlarmClient = 0;
-	}
-	if(mTimezoneClient) {
-		delete mTimezoneClient;
-		mTimezoneClient = 0;
+	if(!mTimezoneClient->isNull()) {
+		mTimezoneClient->deleteInstance();
 	}
 	// Remove the translator
 	HbApplication::instance()->removeTranslator(mTranslator);
@@ -180,9 +195,8 @@
 {
 	// Store the current view and set alarm editor as current view.
 	HbMainWindow *window = hbInstance->allMainWindows().first();
-	mPreviousView = window->currentView();
-	window->addView(this);
-	window->setCurrentView(this);
+	window->addView(mAlarmEditorView);
+	window->setCurrentView(mAlarmEditorView);
 }
 
 /*!
@@ -193,6 +207,10 @@
 	int alarmDayIndex = -1;
 	if (mAlarmDayItemInserted) {
 		alarmDayIndex = mAlarmDayItem->contentWidgetData("currentIndex").toInt();
+		alarmDayIndex += mStartOfWeek;
+		if(alarmDayIndex >= KDaysInWeek){
+		   alarmDayIndex -= KDaysInWeek;
+		}
 	}
 
 	setAlarm(
@@ -229,24 +247,20 @@
 
 	// Reset alarm day item.
 	if (mAlarmDayItemInserted) {
+    	int currentIndex = mAlarmInfo.alarmDateTime.dayOfWeek() - 1;
+        currentIndex -= mStartOfWeek;
+        if(0 > currentIndex){
+           currentIndex += KDaysInWeek;
+        }
 		mAlarmDayItem->setContentWidgetData(
-				"currentIndex",
-				mAlarmInfo.alarmDateTime.dayOfWeek() - 1);
+				"currentIndex",currentIndex);
 	}
 
 	// Reset for alarm sound.
-	QStringList alarmSoundOptions;
-	alarmSoundOptions << tr("On")
-			<< tr("Off");
-
 	if (AlarmVolumeOn == mAlarmInfo.volumeStatus) {
-		mAlarmSoundItem->setContentWidgetData("text", alarmSoundOptions[0]);
-		mAlarmSoundItem->setContentWidgetData(
-				"additionalText", alarmSoundOptions[1]);
+		mAlarmSoundItem->setContentWidgetData("checkState", Qt::Checked);
 	} else {
-		mAlarmSoundItem->setContentWidgetData("text", alarmSoundOptions[1]);
-		mAlarmSoundItem->setContentWidgetData(
-				"additionalText", alarmSoundOptions[0]);
+		mAlarmSoundItem->setContentWidgetData("checkState", Qt::Unchecked);
 	}
 
 	mAlarmDescription->setContentWidgetData("text", mAlarmInfo.alarmDesc);
@@ -280,6 +294,11 @@
 			alarmDayIndex = 0;
 		}
 		if (mAlarmDayItemInserted) {
+  		    alarmDayIndex -= mStartOfWeek;
+
+            if(0 > alarmDayIndex){
+               alarmDayIndex += KDaysInWeek;
+            }
 			mAlarmDayItem->setContentWidgetData(
 					"currentIndex",
 					alarmDayIndex);
@@ -320,15 +339,14 @@
 					QString(hbTrId("txt_clock_formlabel_day")),
 					mAlarmEditorModel->invisibleRootItem());
 
+			// Add the alarm days beginning from the start of week.
 			QStringList alarmDays;
-			alarmDays << hbTrId("txt_clk_setlabel_val_monday")
-					<< hbTrId("txt_clk_setlabel_val_tuesday")
-					<< hbTrId("txt_clk_setlabel_val_wednesday")
-					<< hbTrId("txt_clk_setlabel_val_thursday")
-					<< hbTrId("txt_clk_setlabel_val_friday")
-					<< hbTrId("txt_clk_setlabel_val_saturday")
-					<< hbTrId("txt_clk_setlabel_val_sunday");
+			sortAlarmDaysList(alarmDays);
+			alarmDayIndex -= mStartOfWeek;
 
+			if(0 > alarmDayIndex){
+				alarmDayIndex += KDaysInWeek;
+			}
 			mAlarmDayItem->setContentWidgetData("items", alarmDays);
 			mAlarmDayItem->setContentWidgetData(
 					"currentIndex",
@@ -351,16 +369,6 @@
 }
 
 /*!
-	Called when `Cancel' is pressed on the Dialog.
- */
-void ClockAlarmEditor::handleCancelAction()
-{
-	// Close the dialog.
-	mTimePickerDialog->close();
-	mTimePickerDialog->deleteLater();
-}
-
-/*!
     Called when `OK' is pressed on the Dialog.
  */
 void ClockAlarmEditor::handleOkAction()
@@ -372,9 +380,6 @@
 	// Update the selected time value.
 	mAlarmTimeItem->setContentWidgetData("text",newAlarmTime.toString(mTimeFormat));
 
-	// Close the dialog.
-	handleCancelAction();
-
 	if (mAlarmInfo.nextDueTime != newAlarmTime ) {
 		handleTimeChange(newAlarmTime.toString(mTimeFormat));
 	}
@@ -385,65 +390,57 @@
  */
 void ClockAlarmEditor::launchTimePicker()
 {
-
+	if (mTimePickerDialog) {
+		delete mTimePickerDialog;
+	}
 
-		if (mTimePickerDialog) {
-			delete mTimePickerDialog;
-		}
-
-		// Create the dialog.
-		mTimePickerDialog = new HbDialog;
-		mTimePickerDialog->setTimeout(HbDialog::NoTimeout);
-		mTimePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
+	// Create the dialog.
+	mTimePickerDialog = new HbDialog;
+	mTimePickerDialog->setTimeout(HbDialog::NoTimeout);
+	mTimePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
 
-		// Set the heading for the dialog.
-		HbLabel * timeLabel =
-			new HbLabel(hbTrId("txt_tumbler_title_alarm_time"),
-			    mTimePickerDialog);
-		mTimePickerDialog->setHeadingWidget(timeLabel);
+	// Set the heading for the dialog.
+	HbLabel * timeLabel =
+		new HbLabel(hbTrId("txt_tumbler_title_alarm_time"),
+			mTimePickerDialog);
+	mTimePickerDialog->setHeadingWidget(timeLabel);
 
-		SettingsUtility *settingsUtil = new SettingsUtility(this);
-		QStringList timeSeparator;
-		int index = settingsUtil->timeFormat(timeSeparator);
-		QString tumblerDisplayFormat =
-				mTimeFormat.replace(timeSeparator.at(index), QString("."));
+	SettingsUtility *settingsUtil = new SettingsUtility(this);
+	QStringList timeSeparator;
+	int index = settingsUtil->timeFormat(timeSeparator);
+	QString tumblerDisplayFormat =
+			mTimeFormat.replace(timeSeparator.at(index), QString("."));
 
-		// Create the tumbler.
-		HbDateTimePicker *timePicker = new HbDateTimePicker(mTimePickerDialog);
-		timePicker->setDisplayFormat(tumblerDisplayFormat);
-		// Set the tumbler as the content widget.
-		mTimePickerDialog->setContentWidget(timePicker);
-		
-		QString timeString = mAlarmTimeItem->contentWidgetData("text").toString();
-		QTime time = QTime::fromString(timeString, mTimeFormat);
-		timePicker->setTime(time);
+	// Create the tumbler.
+	HbDateTimePicker *timePicker = new HbDateTimePicker(mTimePickerDialog);
+	timePicker->setDisplayFormat(tumblerDisplayFormat);
+
+	mTimePickerDialog->setContentWidget(timePicker);
+
+	QString timeString = mAlarmTimeItem->contentWidgetData("text").toString();
+	QTime time = QTime::fromString(timeString, mTimeFormat);
+	timePicker->setTime(time);
 
-		mOkAction =
-			new HbAction(QString(hbTrId("txt_common_button_ok")),
-			    mTimePickerDialog);
-		mTimePickerDialog->setPrimaryAction(mOkAction);
-		connect(
-				mOkAction, SIGNAL(triggered()),
-				this, SLOT(handleOkAction()));
+	mOkAction =
+		new HbAction(QString(hbTrId("txt_common_button_ok")),
+			mTimePickerDialog);
 
-		mCancelAction =
-			new HbAction(QString(hbTrId("txt_common_button_cancel")),
-			    mTimePickerDialog);
-		mTimePickerDialog->setSecondaryAction( mCancelAction );
-		connect(
-				mCancelAction, SIGNAL(triggered()),
-				this, SLOT(handleCancelAction()));
+	mCancelAction =
+		new HbAction(QString(hbTrId("txt_common_button_cancel")),
+			mTimePickerDialog);
 
-		mTimePickerDialog->exec();
+	mTimePickerDialog->addAction(mOkAction);
+	mTimePickerDialog->addAction(mCancelAction);
 
-
+	mTimePickerDialog->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
 	Handles the alarm sound change.
  */
-void ClockAlarmEditor::handleAlarmSoundChanged()
+void ClockAlarmEditor::handleAlarmSoundChanged(int checkedState)
 {
+	Q_UNUSED(checkedState)
 	if (AlarmVolumeOff == mAlarmInfo.volumeStatus) {
 		mAlarmInfo.volumeStatus = AlarmVolumeOn;
 	} else {
@@ -452,6 +449,16 @@
 }
 
 /*!
+	Slot to handle the selected action
+ */
+void ClockAlarmEditor::selectedAction(HbAction *action)
+{
+	if (action == mOkAction) {
+		handleOkAction();
+	}
+}
+
+/*!
 	Initialises the Model & sets for the AlarmEditorForm.
  */
 void ClockAlarmEditor::initModel()
@@ -517,19 +524,18 @@
 					QString(hbTrId("txt_clk_setlabel_day")),
 					mAlarmEditorModel->invisibleRootItem());
 
+			// Add the alarm days beginning from the start of week.
 			QStringList alarmDays;
-			alarmDays << hbTrId("txt_clk_setlabel_val_monday")
-					<< hbTrId("txt_clk_setlabel_val_tuesday")
-					<< hbTrId("txt_clk_setlabel_val_wednesday")
-					<< hbTrId("txt_clk_setlabel_val_thursday")
-					<< hbTrId("txt_clk_setlabel_val_friday")
-					<< hbTrId("txt_clk_setlabel_val_saturday")
-					<< hbTrId("txt_clk_setlabel_val_sunday");
+			sortAlarmDaysList(alarmDays);
 
+			int currentIndex = mAlarmInfo.alarmDateTime.dayOfWeek() - 1;
+			currentIndex -= mStartOfWeek;
+			if(0 > currentIndex){
+			   currentIndex += KDaysInWeek;
+			}
 			mAlarmDayItem->setContentWidgetData("items", alarmDays);
 			mAlarmDayItem->setContentWidgetData(
-					"currentIndex",
-					mAlarmInfo.alarmDateTime.dayOfWeek() - 1);
+					"currentIndex",currentIndex);
 
 			mAlarmDayItemInserted = true;
 		}/* else { TODO: check and remove this else block.
@@ -543,23 +549,21 @@
 
 	// Alarm sound.
 	mAlarmSoundItem = mAlarmEditorModel->appendDataFormItem(
-			HbDataFormModelItem::ToggleValueItem,
-			QString(hbTrId("txt_clk_setlabel_alarm_sound")),
+			HbDataFormModelItem::CheckBoxItem,
+			QString(hbTrId("")),
 			mAlarmEditorModel->invisibleRootItem());
-	QStringList alarmSoundOptions;
-	alarmSoundOptions << tr("On")
-			<< tr("Off");
+
+	mAlarmSoundItem->setContentWidgetData(
+			"text", QString(hbTrId("txt_clk_setlabel_alarm_sound")));
 
 	if (AlarmVolumeOn == mAlarmInfo.volumeStatus) {
-		mAlarmSoundItem->setContentWidgetData("text", alarmSoundOptions[0]);
-		mAlarmSoundItem->setContentWidgetData(
-				"additionalText", alarmSoundOptions[1]);
-	} else {
-		mAlarmSoundItem->setContentWidgetData("text", alarmSoundOptions[1]);
-		mAlarmSoundItem->setContentWidgetData(
-				"additionalText", alarmSoundOptions[0]);
+		mAlarmSoundItem->setContentWidgetData("checkState",Qt::Checked);
 	}
 
+	mAlarmEditorForm->addConnection(
+			mAlarmSoundItem, SIGNAL(stateChanged(int)),
+			this,SLOT(handleAlarmSoundChanged(int)));
+
 	// Description.
 	mAlarmDescription = mAlarmEditorModel->appendDataFormItem(
 			HbDataFormModelItem::TextItem,
@@ -592,36 +596,20 @@
 		mAlarmInfo.alarmDateTime = mAlarmInfo.alarmDateTime.addDays(1);
 	}
 
-	// Set the alarm volume on by default.
-	mAlarmInfo.volumeStatus = AlarmVolumeOn;
+	if (!mAlarmId) {
+		// Set the alarm volume On by default for new alarms..
+		mAlarmInfo.volumeStatus = AlarmVolumeOn;
+	}
 
 	// If editor state is a reset alarm, then its an already existing alarm
 	// get the alarm details and fill it in mAlarmInfo.
-	if (mAlarmId && mAlarmClient) {
-		mAlarmClient->getAlarmInfo(mAlarmId, mAlarmInfo);
-		mAlarmClient->deleteAlarm(mAlarmId);
+	if (mAlarmId) {
+		mAlarmClient.getAlarmInfo(mAlarmId, mAlarmInfo);
+		mAlarmClient.deleteAlarm(mAlarmId);
 	}
 }
 
 /*!
-    Creates menu items.
- */
-void ClockAlarmEditor::createMenu()
-{
-	// Set the menu for the alarm editor.
-	mDeleteAction = menu()->addAction(hbTrId("txt_clock_opt_delete"));
-	mDiscardAction = menu()->addAction(hbTrId("txt_clock_opt_discard_changes"));
-
-	// Connect the signals for the menu item.
-	connect(
-			mDeleteAction, SIGNAL(triggered()),
-			this, SLOT(handleDeleteAction()));
-	connect(
-			mDiscardAction, SIGNAL(triggered()),
-			this, SLOT(handleDiscardAction()));
-}
-
-/*!
 	Sets the alarm to the alarm server.
  */
 void ClockAlarmEditor::setAlarm(
@@ -653,7 +641,7 @@
 	alarmInfo.volumeStatus = mAlarmInfo.volumeStatus;
 
 	// Request the listener to set the alarm.
-	mAlarmClient->setAlarm(alarmInfo);
+	mAlarmClient.setAlarm(alarmInfo);
 
 	// Check if DST rule gets applied in 24hrs.
 	// If so we don't display the remaining time.
@@ -715,9 +703,8 @@
 {
 	// Remove the alarm editor.
 	HbMainWindow *window = hbInstance->allMainWindows().first();
-
-	window->removeView(this);
-	window->setCurrentView(mPreviousView);
+	window->removeView(mAlarmEditorView);
+	deleteLater();
 }
 
 /*!
@@ -733,7 +720,7 @@
 	hbTrId("txt_clock_dpopinfo_alarm_will_occur_at_1_after_au");
 	QString displayText = dstRollOverText.arg(alarmTime);
 	// show the note
-	HbNotificationDialog::launchDialog(displayText);
+	launchDialog(displayText);
 }
 
 /*!
@@ -797,7 +784,6 @@
 			break;
 	}
 	if (Enabled == alarmInfo.alarmStatus && !(displayText.isEmpty())) {
-		//HbNotificationDialog::launchDialog(displayText);
 		showDisplayText = true;
 	}
 
@@ -870,17 +856,16 @@
 				&& 	!(remainingTimeText.isEmpty())) {
 
 			if (!(displayText.isEmpty()) ) {
-				HbNotificationDialog::launchDialog(
-						displayText, remainingTimeText);
+				launchDialog(displayText, remainingTimeText);
 				showDisplayText = false;
 			}
 			else {
-				HbNotificationDialog::launchDialog(remainingTimeText);
+				launchDialog(remainingTimeText);
 			}
 		}
 	}
 	if (showDisplayText) {
-		HbNotificationDialog::launchDialog(displayText);
+		launchDialog(displayText);
 	}
 }
 
@@ -941,4 +926,35 @@
 	return remainingSeconds;
 }
 
+/*!
+	Launches the soft notification.
+ */
+void ClockAlarmEditor::launchDialog(QString title, QString text)
+{
+	HbNotificationDialog *notificationDialog = new HbNotificationDialog();
+	notificationDialog->setTitle(title);
+
+	if (!text.isNull()) {
+		notificationDialog->setText(text);
+	}
+
+	notificationDialog->setTimeout(HbPopup::ConfirmationNoteTimeout);
+	notificationDialog->show();
+}
+
+/*!
+    Sorts and appends alarm days on the basis of start of week.
+ */
+void ClockAlarmEditor::sortAlarmDaysList(QStringList& alarmDaysList)
+
+{
+    for(int index=(mStartOfWeek + 1),j=KDaysInWeek;j!=0 ;index++,j--){
+        if(index > KDaysInWeek){
+           index = index - KDaysInWeek;
+        }
+        QString alarmDayText;
+        getDayText(index, alarmDayText );
+        alarmDaysList.append(alarmDayText);
+    }
+}
 // End of file	--Don't remove this.
--- a/clock/clockui/clockappcontroller/src/clockappcontroller.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockappcontroller/src/clockappcontroller.cpp	Tue May 18 13:16:49 2010 +0100
@@ -15,9 +15,6 @@
 *
 */
 
-// System includes
-#include <QDebug>
-
 // User includes
 #include "clockappcontroller.h"
 #include "clockappcontrollerifimpl.h"
@@ -38,8 +35,6 @@
  mViewManager(0),
  mIfImpl(0)
 {
-	qDebug() << "clock: ClockAppController::ClockAppController -->";
-
 	// Construct the interface implementation.
 	mIfImpl = new ClockAppControllerIfImpl(this, this);
 
@@ -48,8 +43,6 @@
 	Q_ASSERT_X(
 			mViewManager, "clockappcontroller.cpp",
 			"ClockViewManager is 0");
-
-	qDebug() << "clock: ClockAppController::ClockAppController <--";
 }
 
 /*!
@@ -57,8 +50,6 @@
  */
 ClockAppController::~ClockAppController()
 {
-	qDebug() << "clock: ClockAppController::~ClockAppController -->";
-
 	if (mViewManager) {
 		delete mViewManager;
 		mViewManager = 0;
@@ -67,8 +58,6 @@
 		delete mIfImpl;
 		mIfImpl = 0;
 	}
-
-	qDebug() << "clock: ClockAppController::~ClockAppController <--";
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockui/clockappcontroller/src/clockappcontrollerifimpl.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockappcontroller/src/clockappcontrollerifimpl.cpp	Tue May 18 13:16:49 2010 +0100
@@ -16,9 +16,6 @@
 *
 */
 
-// System includes
-#include <QDebug>
-
 // User includes
 #include "clockappcontrollerifimpl.h"
 #include "clockappcontroller.h"
@@ -46,16 +43,12 @@
 :QObject(parent),
  mAppController(controller)
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::ClockAppControllerIfImpl -->";
-
 	// Construct the timezone client.
-	mTimeZoneClient = new TimezoneClient(this);
+	mTimeZoneClient = TimezoneClient::getInstance();
 	// Construct the settings utility object.
 	mSettingsUtility = new SettingsUtility(this);
 	// Construct the alarm client object.
 	mAlarmClient = new AlarmClient(this);
-
-	qDebug() << "clock: ClockAppControllerIfImpl::ClockAppControllerIfImpl <--";
 }
 
 /*!
@@ -63,11 +56,8 @@
  */
 ClockAppControllerIfImpl::~ClockAppControllerIfImpl()
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::~ClockAppControllerIfImpl -->";
-
-	if (mTimeZoneClient) {
-		delete mTimeZoneClient;
-		mTimeZoneClient = 0;
+	if (!mTimeZoneClient->isNull()) {
+		mTimeZoneClient->deleteInstance();
 	}
 	if (mSettingsUtility) {
 		delete mSettingsUtility;
@@ -77,8 +67,6 @@
 		delete mAlarmClient;
 		mAlarmClient = 0;
 	}
-
-	qDebug() << "clock: ClockAppControllerIfImpl::~ClockAppControllerIfImpl <--";
 }
 
 
@@ -91,10 +79,6 @@
  */
 TimezoneClient* ClockAppControllerIfImpl::timezoneClient()
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::timezoneClient -->";
-
-	qDebug() << "clock: ClockAppControllerIfImpl::timezoneClient <--";
-
 	return mTimeZoneClient;
 }
 
@@ -107,10 +91,6 @@
  */
 SettingsUtility* ClockAppControllerIfImpl::settingsUtility()
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::settingsUtility -->";
-
-	qDebug() << "clock: ClockAppControllerIfImpl::settingsUtility <--";
-
 	return mSettingsUtility;
 }
 
@@ -123,10 +103,6 @@
  */
 AlarmClient* ClockAppControllerIfImpl::alarmClient()
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::alarmClient -->";
-
-	qDebug() << "clock: ClockAppControllerIfImpl::alarmClient <--";
-
 	return mAlarmClient;
 }
 
@@ -139,11 +115,7 @@
  */
 void ClockAppControllerIfImpl::switchToView(ClockViews viewId)
 {
-	qDebug() << "clock: ClockAppControllerIfImpl::switchToView -->";
-
 	mAppController->mViewManager->showView(viewId);
-
-	qDebug() << "clock: ClockAppControllerIfImpl::switchToView <--";
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockui/clockapplication/src/main.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockapplication/src/main.cpp	Tue May 18 13:16:49 2010 +0100
@@ -32,8 +32,6 @@
  */
 int main(int argc, char *argv[])
 {
-	qDebug("clock: main() -->");
-
 	// Initialization
 	HbApplication app(argc, argv);
 
@@ -56,8 +54,6 @@
 	// Show widget
 	window.show();
 
-	qDebug("clock: main() <--");
-
 	// Enter event loop
 	return app.exec();
 }
Binary file clock/clockui/clockcityselectionlist/data/translations/clockcityselectionlist.qm has changed
--- a/clock/clockui/clockcityselectionlist/data/translations/clockcityselectionlist.ts	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockcityselectionlist/data/translations/clockcityselectionlist.ts	Tue May 18 13:16:49 2010 +0100
@@ -2,16 +2,6 @@
 <!DOCTYPE TS>
 <TS version="3.0" language="en_GB" sourcelanguage="en_GB">
 <context>
-<message numerus="no" id="txt_clock_setlabel_time_format">
-    <comment>1st label in Regional date &amp; time settings view</comment>        
-    <source>Time format</source>
-    <translation variants="no">Time format</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_common_common_clock">
     <comment>Title for Date and time settings view</comment>        
     <source>Clock</source>
@@ -22,143 +12,23 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_cp_main_view_list_time_info_date_info">
-    <comment>The time and date information will be displayed in 2nd row</comment>        
-    <source>%1, %2</source>
-    <translation variants="no">%1, %2</translation>
-    <extra-loc-layout_id>qtl_list_sec_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_digital">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Digital</source>
-    <translation variants="no">Digital</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_cp_main_view_list_time_date">
-    <comment>This text is displayed in 1st row</comment>        
-    <source>Time &amp; date</source>
-    <translation variants="no">Time &amp; date</translation>
-    <extra-loc-layout_id>qtl_list_pri_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_every_week_on_1_at_2">
-    <comment>Note displayed after alarm is set (every week)</comment>        
-    <source>Alarm occurs every week on %1 at %2</source>
-    <translation variants="no">Alarm occurs every week on %1 at %2</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_alarm_time">
-    <comment>Title for the time picker tumbler widget </comment>        
-    <source>Alarm time</source>
-    <translation variants="no">Alarm time</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_mm_dd_yyyy">
-    <comment>2nd value in combo box list for Date format label</comment>        
-    <source>mm dd yyyy</source>
-    <translation variants="no">mm dd yyyy</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hrs_and_2_min">
-    <comment>Note displayed after alarm is set (time remaining) (hrs, min)</comment>        
-    <source>Time to alarm %1 hours and %2 minute</source>
-    <translation variants="no">Time to alarm %1 hours and %2 minute</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date_format">
-    <comment>3rd field in Regional date &amp; time settings view</comment>        
-    <source>Date format</source>
-    <translation variants="no">Date format</translation>
+<message numerus="no" id="txt_clock_formlabel_city_name">
+    <comment>Form label for city name in add own city (popup) data entry form</comment>        
+    <source>City name</source>
+    <translation variants="no">City name</translation>
     <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_regional_date_time_settings">
-    <comment>Tapping on this button opens advanced date and time view</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_alarm_will_occur_at_1_after_au">
-    <comment>Popup Information which comes after setting the alarm.</comment>        
-    <source>Alarm will occur at %1 after automatic daylight saving update</source>
-    <translation variants="no">Alarm will occur at %1 after automatic daylight saving update</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_time">
-    <comment></comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_regional_date_time_settings">
-    <comment>Sub-title for Regiional date &amp; time settings</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_place">
-    <comment>5th label for Place in Clock settings view</comment>        
-    <source>Place</source>
-    <translation variants="no">Place</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
     <extra-loc-positionid>formlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_24_hour">
-    <comment>1st Value in combo box list for Time format label</comment>        
-    <source>24 hour</source>
-    <translation variants="no">24 hour</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
+<message numerus="no" id="txt_clock_formlabel_timezone">
+    <comment>Form label for timezone in add own city (popup) data entry form</comment>        
+    <source>Timezone</source>
+    <translation variants="no">Timezone</translation>
+    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
+    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -182,129 +52,16 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_dpopinfo_alarm_occurs_every_day_at_1">
-    <comment>Note displayed after alarm is set (Everyday Time)</comment>        
-    <source>Alarm occurs every day at %1</source>
-    <translation variants="no">Alarm occurs every day at %1</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="yes" id="txt_clock_list_ln_minutes">
-    <comment>Alarm snooze time details in the list box (5mins, 10mins, 15mins, 30mins)</comment>        
-    <source>%Ln minutes</source>
-    <translation>
-        <numerusform variants="no">(s)%Ln minutes</numerusform>
-        <numerusform variants="no">(p)%Ln minutes</numerusform>
-    </translation>
-    <extra-loc-layout_id>qtl_dataform_combobox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>set</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_analog">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Analog</source>
-    <translation variants="no">Analog</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_week_starts_on">
-    <comment>6th field in Regional date &amp; time settings view</comment>        
-    <source>Week starts on</source>
-    <translation variants="no">Week starts on</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hr_and_2_min">
-    <comment>Note displayed after alarm is set (time remaining)</comment>        
-    <source>Time to alarm %1 hour and %2 minute</source>
-    <translation variants="no">Time to alarm %1 hour and %2 minute</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_yyyy_mm_dd">
-    <comment>3rd value in combo box list for Date format label</comment>        
-    <source>yyyy mm dd</source>
-    <translation variants="no">yyyy mm dd</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
+<message numerus="no" id="txt_clock_subhead_city_list">
+    <comment>Subtitle for City list</comment>        
+    <source>City list</source>
+    <translation variants="no">City list</translation>
+    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
+    <extra-loc-positionid>subhead</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_once_only_on_next_1_a">
-    <comment>Note displayed after alarm is set (only once)</comment>        
-    <source>Alarm occurs once only on next %1 at %2</source>
-    <translation variants="no">Alarm occurs once only on next %1 at %2</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hr_and_2_mins">
-    <comment>Note displayed after alarm is set (time remaining) (hr, mins)</comment>        
-    <source>Time to alarm %1 hour and %2 minutes</source>
-    <translation variants="no">Time to alarm %1 hour and %2 minutes</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_city_name">
-    <comment>Form label for city name in add own city (popup) data entry form</comment>        
-    <source>City name</source>
-    <translation variants="no">City name</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_alarm_date">
-    <comment>Title for the date picker tumbler widget </comment>        
-    <source>Alarm date</source>
-    <translation variants="no">Alarm date</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_timezone">
-    <comment>Form label for timezone in add own city (popup) data entry form</comment>        
-    <source>Timezone</source>
-    <translation variants="no">Timezone</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_date">
-    <comment></comment>        
-    <source>Date</source>
-    <translation variants="no">Date</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_common_common_gmt">
     <comment></comment>        
     <source>GMT</source>
@@ -325,135 +82,5 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_use_network_date_time">
-    <comment>1st label in Date and time settings view</comment>        
-    <source>Use network date &amp; time</source>
-    <translation variants="no">Use network date &amp; time</translation>
-    <extra-loc-layout_id>qtl_checkbox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time_separator">
-    <comment>Subtitle for the time seperator drop down list</comment>        
-    <source>Time separator</source>
-    <translation variants="no">Time separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date_separator">
-    <comment>Subtitle for the date seperator drop down list</comment>        
-    <source>Date separator</source>
-    <translation variants="no">Date separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_workdays">
-    <comment>Label for Workdays in Alarm editor</comment>        
-    <source>Workdays</source>
-    <translation variants="no">Workdays</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date">
-    <comment>Label to the date field (picker) in the settings view</comment>        
-    <source>Date</source>
-    <translation variants="no">Date</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time">
-    <comment>Label to the time field (picker) in the settings view</comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_12_hour">
-    <comment>2nd value in combo box list for Time format label</comment>        
-    <source>12 hour</source>
-    <translation variants="no">12 hour</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hrs_and_2_mins">
-    <comment>Note displayed after alarm is set (time remaining) (hrs, mins)</comment>        
-    <source>Time to alarm %1 hours and %2 minutes</source>
-    <translation variants="no">Time to alarm %1 hours and %2 minutes</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_workdays_at_1">
-    <comment>Note displayed after alarm is set (workdays)</comment>        
-    <source>Alarm occurs workdays at %1</source>
-    <translation variants="no">Alarm occurs workdays at %1</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_clock_type">
-    <comment>Primary text label for Clock Type</comment>        
-    <source>Clock Type</source>
-    <translation variants="no">Clock Type</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_5</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_city_list">
-    <comment>Subtitle for City list</comment>        
-    <source>City list</source>
-    <translation variants="no">City list</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_date_time">
-    <comment>Sub-title for Date &amp; time settings view</comment>        
-    <source>Date &amp; time</source>
-    <translation variants="no">Date &amp; time</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_dd_mm_yyyy">
-    <comment>1st value in combo box list for Date format label</comment>        
-    <source>dd mm yyyy</source>
-    <translation variants="no">dd mm yyyy</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 </context>
 </TS>
--- a/clock/clockui/clockcityselectionlist/inc/clockcityselectionlist_p.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockcityselectionlist/inc/clockcityselectionlist_p.h	Tue May 18 13:16:49 2010 +0100
@@ -58,8 +58,8 @@
 	void updateSearchCriteria(const QString &criteria);
 	void handleAddOwnCityAction();
 	void handleOkAction();
-	void handleCancelAction();
 	void handleTimeZoneSelection(int index);
+	void selectedAction(HbAction *action);
 
 private:
 	void showCityList();
@@ -81,6 +81,9 @@
 	QPointer<HbComboBox> mTimeZoneComboBox;
 	QPointer<HbComboBox> mCountryComboBox;
 
+	HbAction *mOkAction;
+	HbAction *mCancelAction;
+
 	ClockCitySelectionList *q_ptr;
 	TimezoneClient *mClient;
 	ClockCityListProxyModel *mProxyModel;
--- a/clock/clockui/clockcityselectionlist/src/clockcityselectionlist_p.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockcityselectionlist/src/clockcityselectionlist_p.cpp	Tue May 18 13:16:49 2010 +0100
@@ -67,7 +67,7 @@
 
 	mClient = client;
 	if (!mClient) {
-		mClient = new TimezoneClient(this);
+		mClient = TimezoneClient::getInstance();
 		mOwnsClient = true;
 	}
 }
@@ -77,8 +77,8 @@
  */
 ClockCitySelectionListPrivate::~ClockCitySelectionListPrivate()
 {
-	if (mOwnsClient) {
-		delete mClient;
+	if (mOwnsClient && !mClient->isNull()) {
+		mClient->deleteInstance();
 	}
 	if (mLoader) {
 		mLoader->reset();
@@ -103,7 +103,7 @@
 void ClockCitySelectionListPrivate::populateListModel()
 {
 	// First get the data from the timezone client.
-	QList<LocationInfo> infoList = mClient->getLocations();
+	QList<LocationInfo> &infoList = mClient->getLocations();
 
 	// Sanity check.
 	if (!mListModel) {
@@ -135,6 +135,9 @@
 		mListModel->setData(
 				index, info.countryName, Qt::UserRole + 104);
 	}
+
+	// Cleanup.
+	infoList.clear();
 }
 
 /*!
@@ -273,20 +276,14 @@
 	widget->setLayout(layout);
 
 	// Add actions to the dialog
-	HbAction *okAction = new HbAction(hbTrId("txt_common_button_ok"));
-	mAddOwnCityDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleOkAction()));
+	mOkAction = new HbAction(hbTrId("txt_common_button_ok"));
+	mCancelAction = new HbAction(hbTrId("txt_common_button_cancel"));
 
-	HbAction *cancelAction = new HbAction(hbTrId("txt_common_button_cancel"));
-	mAddOwnCityDialog->setSecondaryAction(cancelAction);
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleCancelAction()));
+	mAddOwnCityDialog->addAction(mOkAction);
+	mAddOwnCityDialog->addAction(mCancelAction);
 
 	mAddOwnCityDialog->setContentWidget(widget);
-	mAddOwnCityDialog->exec();
+	mAddOwnCityDialog->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
@@ -321,21 +318,6 @@
 			populateListModel();
 		}
 	}
-
-	// Close the popup
-	handleCancelAction();
-}
-
-/*!
-	Handles Cancel action of add own city dialog
- */
-void ClockCitySelectionListPrivate::handleCancelAction()
-{
-	// Close the dialog.
-	if (mAddOwnCityDialog) {
-		mAddOwnCityDialog->close();
-		mAddOwnCityDialog->deleteLater();
-	}
 }
 
 /*!
@@ -364,6 +346,15 @@
 }
 
 /*!
+	Slot to handle the selected action
+ */
+void ClockCitySelectionListPrivate::selectedAction(HbAction *action)
+{
+	if (action==mOkAction) {
+		handleOkAction();
+	}
+}
+/*!
 	Displays the city selection list.
  */
 void ClockCitySelectionListPrivate::showCityList()
@@ -399,7 +390,7 @@
 	connect(
 			mSearchBox, SIGNAL(criteriaChanged(QString)),
 			this, SLOT(updateSearchCriteria(QString)));
-	
+
 	// Construct the source model.
 	if (!mListModel) {
 		mListModel = new QStandardItemModel(0, 1, this);
@@ -441,7 +432,7 @@
 
 	// Add the view to the main window and show it.
 	HbMainWindow *window = hbInstance->allMainWindows().at(0);
-	mBackAction = new HbAction(Hb::BackAction, this);
+	mBackAction = new HbAction(Hb::BackNaviAction, this);
 	mView->setNavigationAction(mBackAction);
 	connect(
 			mBackAction, SIGNAL(triggered()),
--- a/clock/clockui/clockplugins/datetimesettingsplugin/datetimesettingsplugin.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/datetimesettingsplugin.pro	Tue May 18 13:16:49 2010 +0100
@@ -17,31 +17,35 @@
 
 TEMPLATE = lib
 TARGET = datetimesettingsplugin
+CONFIG += hb plugin
+
 DEPENDPATH += . \
 			  ./inc \
 			  ./src
+			  
 INCLUDEPATH += . \
-               ../../clocksettingsview/inc
-
-CONFIG += hb plugin
-
-LIBS += -lcpframework
+				../../../inc \
+				../../../clockmw/clocktimezone/inc \
+				../../clocksettingsview/inc
 
-# Input
-HEADERS += datetimesettingsplugin.h \
-		   datetimesettingsview.h
+LIBS += \
+		-lcpframework \
+		-ltimezoneclient \
+		-lclocksettingsview \
+
+HEADERS += \
+			datetimesettingsplugin.h \
+			datetimesettingsview.h
 		   
-SOURCES += datetimesettingsplugin.cpp \
-		   datetimesettingsview.cpp
+SOURCES += \
+			datetimesettingsplugin.cpp \
+			datetimesettingsview.cpp
 
 symbian: {
     TARGET.EPOCALLOWDLLDATA = 1  
     TARGET.UID3 = 0x102818E9
+	TARGET.CAPABILITY = CAP_GENERAL_DLL
 	
-	LIBS += -lclocksettingsview
-}
-
-symbian {
     deploy.path = C:
     headers.sources = qmakepluginstubs/datetimesettingsplugin.qtplugin
     headers.path = /resource/qt/plugins/controlpanel
@@ -49,9 +53,9 @@
     # This is for new exporting system coming in garden
     for(header, headers.sources):BLD_INF_RULES.prj_exports += "./$$header $$deploy.path$$headers.path/$$basename(header)"
 }
-			   
-TARGET.CAPABILITY = CAP_GENERAL_DLL
 
 plugin.sources = datetimesettingsplugin.dll
 plugin.path = \resource\qt\plugins\controlpanel
-DEPLOYMENT += plugin
\ No newline at end of file
+DEPLOYMENT += plugin
+
+# End of file	--Don't remove this.
--- a/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsplugin.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsplugin.h	Tue May 18 13:16:49 2010 +0100
@@ -10,29 +10,35 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
- *
- * Description: 
- *
+*
+* Description: 
+* Header file for DateTimeSettingsPlugin class.
+*
 */
 
 
 #ifndef DATETIMESETTINGSPLUGIN_H_
 #define DATETIMESETTINGSPLUGIN_H_
 
-#include <cppluginplatinterface.h>
-#include <qobject.h>
+// System includes
+#include <QObject>
 
-class DateTimeSettingsPlugin : public QObject, public CpPluginPlatInterface
+// User includes
+#include <cpplugininterface.h>
+
+class DateTimeSettingsPlugin : public QObject, public CpPluginInterface
 {
 	Q_OBJECT
-    Q_INTERFACES(CpPluginPlatInterface)
+	Q_INTERFACES(CpPluginInterface)
 
 public:
 	DateTimeSettingsPlugin();
-    virtual ~DateTimeSettingsPlugin();
+	virtual ~DateTimeSettingsPlugin();
 
-    virtual int uid() const;
-    virtual CpSettingFormItemData *createSettingFormItemData(CpItemDataHelper &itemDataHelper) const;
+	virtual int uid() const;
+	QList<CpSettingFormItemData*> createSettingFormItemData(CpItemDataHelper &itemDataHelper) const;
 };
 
 #endif /* DATETIMESETTINGSPLUGIN_H_ */
+
+// End of file	--Don't remove this
--- a/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsview.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/inc/datetimesettingsview.h	Tue May 18 13:16:49 2010 +0100
@@ -10,22 +10,46 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
- *
- * Description:   
- *
+*
+* Description:
+* Header file for DateTimeSettingsView class.
+*
 */
 
 #ifndef	DATETIMESETTINGSVIEW_H_
 #define	DATETIMESETTINGSVIEW_H_
 
-#include <cpbasesettingview.h>
+// User includes
+#include <cpsettingformentryitemdata.h>
 
-class DateTimeSettingsView : public CpBaseSettingView
+// Forward declarations
+class QTimer;
+class TimezoneClient;
+
+class DateTimeSettingsView : public CpSettingFormEntryItemData
 {
-    Q_OBJECT
+	Q_OBJECT
 public:
-    explicit DateTimeSettingsView(QGraphicsItem *parent = 0);
-    virtual ~DateTimeSettingsView();
+	explicit DateTimeSettingsView(
+			CpItemDataHelper &itemDataHelper, const QString &text = QString(),
+			const QString &description = QString(),
+			const HbIcon &icon = HbIcon(),
+			const HbDataFormModelItem *parent = 0);
+	virtual ~DateTimeSettingsView();
+
+private slots:
+	void onLaunchView();
+	void updateDisplayTime();
+	
+private:
+	virtual CpBaseSettingView *createSettingView() const;
+
+private:
+	QTimer *mTickTimer;
+	TimezoneClient *mTimezoneClient;
 
 };
-#endif//	DATETIMESETTINGSVIEW_H_
+
+#endif // DATETIMESETTINGSVIEW_H_
+
+// End of file	--Don't remove this
--- a/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsplugin.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsplugin.cpp	Tue May 18 13:16:49 2010 +0100
@@ -10,40 +10,69 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
- *
- * Description: 
- *
+*
+* Description: 
+* Definition file for class DateTimeSettingsPlugin.
+*
 */
-
+// System includes
+#include <QDateTime>
 #include <cpsettingformentryitemdataimpl.h>
+#include <HbExtendedLocale>
 
+// User includes
 #include "datetimesettingsplugin.h"
 #include "datetimesettingsview.h"
 
+/*!
+	Constructor.
+ */
 DateTimeSettingsPlugin::DateTimeSettingsPlugin()
 {
 }
 
+/*!
+	Destructor.
+ */
 DateTimeSettingsPlugin::~DateTimeSettingsPlugin()
 {
 }
 
+/*!
+	Returns the uid of the plugin.
+ */
 int DateTimeSettingsPlugin::uid() const
 {
 	// UID of the plugin.
-    return 0x102818E9;
+	return 0x102818E9;
 }
 
-CpSettingFormItemData *DateTimeSettingsPlugin::
-						createSettingFormItemData(
-							CpItemDataHelper &itemDataHelper) const
+/*!
+	Creates the object of DateTimeSettingsView class.
+ */
+QList<CpSettingFormItemData*> DateTimeSettingsPlugin:: 
+						      createSettingFormItemData(
+							  CpItemDataHelper &itemDataHelper) const
 {
-    HbIcon* icon = new HbIcon();
-    return new CpSettingFormEntryItemDataImpl<DateTimeSettingsView>(
-								itemDataHelper,
-								QString("Clock application"),
-                                QString("Date & Time settings plugin"),
-                                *icon);
+	HbIcon* icon = new HbIcon();
+	HbExtendedLocale locale = HbExtendedLocale::system();
+	QString timeInfo = locale.format(
+			QTime::currentTime(), r_qtn_time_usual_with_zero);
+	QString dateinfo = locale.format(
+			QDate::currentDate(), r_qtn_date_usual_with_zero);
+	QString displayString;
+	displayString.append(timeInfo);
+	displayString.append(" ");
+	displayString.append(dateinfo);
+	
+	QList<CpSettingFormItemData*> entryItemList;
+	CpSettingFormItemData *entryItem = new DateTimeSettingsView(
+			itemDataHelper,hbTrId("txt_cp_main_view_list_time_date"),
+			displayString,*icon);
+	entryItemList.append(entryItem);
+	return entryItemList;
 }
 
 Q_EXPORT_PLUGIN2(DateTimeSettingsPlugin, DateTimeSettingsPlugin)
+
+// End of file	--Don't remove this
--- a/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockplugins/datetimesettingsplugin/src/datetimesettingsview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -12,28 +12,108 @@
 * Contributors:
 *
 * Description:
-* Definition file for class ClockSettingsView.
+* Definition file for class DateTimeSettingsView.
 *
 */
 
+// System includes
+#include <QTimer>
+#include <QDateTime>
+#include <HbExtendedLocale>
+#include <cpitemdatahelper.h>
 
-#include <hbdataform.h>
+// User includes
 #include "datetimesettingsview.h"
 #include "clocksettingsview.h"
+#include "timezoneclient.h"
 
-DateTimeSettingsView::DateTimeSettingsView(QGraphicsItem *parent)
-:CpBaseSettingView(0, parent)
-{
-	HbDataForm *form = settingForm();
+/*!
+	\class DateTimeSettingsView
+
+	This class launches the clock settings view from control panel.
+ */
+
+/*!
+	Constructor.
 
-	if (form) {
-		form->setHeading(tr("Date & Time Settings"));
+	\param itemDataHelper CpItemDataHelper object.
+	\param text text to be displayed in first line.
+	\param description test to be displayed in second line.
+	\param icon to be displayed.
+	\param parent Parent of type HbDataFormModelItem
+ */
+DateTimeSettingsView::DateTimeSettingsView(
+		CpItemDataHelper &itemDataHelper, const QString &text,
+		const QString &description, const HbIcon &icon,
+		const HbDataFormModelItem *parent):
+		CpSettingFormEntryItemData(
+				itemDataHelper, text, description, icon, parent)
+{
+	// Construct the timezone client.
+	mTimezoneClient = TimezoneClient::getInstance();
+	connect(
+			mTimezoneClient, SIGNAL(timechanged()),
+			this, SLOT(updateDisplayTime()));
 
-		ClockSettingsView *settingsView = new ClockSettingsView(this);
-		settingsView->loadSettingsView();
-    }
+	// Start a timer. For updating the displayed time.
+	mTickTimer = new QTimer(this);
+	// Start the Timer for 1 minute.
+	mTickTimer->start(60000 - 1000 * QTime::currentTime().second());
+	connect(
+			mTickTimer, SIGNAL(timeout()),
+			this, SLOT(updateDisplayTime()));
 }
 
+/*!
+	Destructor.
+ */
 DateTimeSettingsView::~DateTimeSettingsView()
 {
+	if (mTickTimer) {
+		mTickTimer->stop();
+		delete mTickTimer;
+		mTickTimer = 0;
+	}
+	
+	if (!mTimezoneClient->isNull()) {
+		mTimezoneClient->deleteInstance();
+	}
 }
+
+/*!
+	Launches the clock settings view.
+ */
+void DateTimeSettingsView::onLaunchView()
+{
+	ClockSettingsView *settingsView = new ClockSettingsView(this);
+	settingsView->loadSettingsView();
+}
+
+/*!
+	Updates the second line i.e date & time.
+ */
+void DateTimeSettingsView::updateDisplayTime()
+{
+	HbExtendedLocale locale = HbExtendedLocale::system();
+	QString timeInfo = locale.format(
+			QTime::currentTime(), r_qtn_time_usual_with_zero);
+	QString dateinfo = locale.format(
+			QDate::currentDate(), r_qtn_date_usual_with_zero);
+	QString displayString;
+	displayString.append(timeInfo);
+	displayString.append(" ");
+	displayString.append(dateinfo);
+	setDescription(displayString);
+	// Start the Timer for 1 minute.
+	mTickTimer->start(60000);
+}
+
+/*!
+	createSettingView()
+ */
+CpBaseSettingView *DateTimeSettingsView::createSettingView() const
+{
+	return 0;
+}
+
+// End of file	--Don't remove this
--- a/clock/clockui/clocksettingsview/clocksettingsview.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/clocksettingsview.pro	Tue May 18 13:16:49 2010 +0100
@@ -23,7 +23,6 @@
 
 INCLUDEPATH += \
 		./inc \
-		../clockwidget/inc \
 		../../clockmw/clocksettingsutility/inc \
 		../../clockmw/clocktimezone/inc \
 		../clockcityselectionlist/inc \
@@ -43,7 +42,7 @@
 		-ltimezoneclient \
 		-lclocksettingsutility \
 		-lclockcityselectionlist \
-		-lclockwidgetproto
+		-lxqsettingsmanager
 }
 
 SOURCES += \
Binary file clock/clockui/clocksettingsview/data/translations/clocksettingsview.qm has changed
--- a/clock/clockui/clocksettingsview/data/translations/clocksettingsview.ts	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/data/translations/clocksettingsview.ts	Tue May 18 13:16:49 2010 +0100
@@ -2,6 +2,16 @@
 <!DOCTYPE TS>
 <TS version="3.0" language="en_GB" sourcelanguage="en_GB">
 <context>
+<message numerus="no" id="txt_common_common_clock">
+    <comment>Title for Date and time settings view</comment>        
+    <source>Clock</source>
+    <translation variants="no">Clock</translation>
+    <extra-loc-layout_id></extra-loc-layout_id>    
+    <extra-loc-viewid>Common</extra-loc-viewid>
+    <extra-loc-positionid>Common</extra-loc-positionid>
+    <extra-loc-feature>Co</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_clock_setlabel_time_format">
     <comment>1st label in Regional date &amp; time settings view</comment>        
     <source>Time format</source>
@@ -12,16 +22,6 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_common_common_clock">
-    <comment>Title for Date and time settings view</comment>        
-    <source>Clock</source>
-    <translation variants="no">Clock</translation>
-    <extra-loc-layout_id></extra-loc-layout_id>    
-    <extra-loc-viewid>Common</extra-loc-viewid>
-    <extra-loc-positionid>Common</extra-loc-positionid>
-    <extra-loc-feature>Co</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_cp_main_view_list_time_info_date_info">
     <comment>The time and date information will be displayed in 2nd row</comment>        
     <source>%1, %2</source>
@@ -127,7 +127,7 @@
     <source>Monday</source>
     <translation variants="no">Monday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -137,30 +137,17 @@
     <source>Thursday</source>
     <translation variants="no">Thursday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_4_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="yes" id="txt_clock_list_ln_minutes">
-    <comment>Alarm snooze time details in the list box (5mins, 10mins, 15mins, 30mins)</comment>        
-    <source>%Ln minutes</source>
-    <translation>
-        <numerusform variants="no">(s)%Ln minutes</numerusform>
-        <numerusform variants="no">(p)%Ln minutes</numerusform>
-    </translation>
-    <extra-loc-layout_id>qtl_dataform_combobox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>set</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clk_setlabel_val_friday">
     <comment>5th dropdown list value for Day label in Alarm editor view</comment>        
     <source>Friday</source>
     <translation variants="no">Friday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_5_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -190,7 +177,7 @@
     <source>Sunday</source>
     <translation variants="no">Sunday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_7_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -210,7 +197,7 @@
     <source>Tuesday</source>
     <translation variants="no">Tuesday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -245,6 +232,16 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clock_subhead_settings">
+    <comment>Sub-title for Settings view</comment>        
+    <source>Settings</source>
+    <translation variants="no">Settings</translation>
+    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-positionid>subhead</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_clock_setlabel_date_separator">
     <comment>Subtitle for the date seperator drop down list</comment>        
     <source>Date separator</source>
@@ -295,6 +292,29 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clock_setlabel_alarm_snooze_time">
+    <comment>Primary text label for Clock Type</comment>        
+    <source>Alarm snooze time</source>
+    <translation variants="no">Alarm snooze time</translation>
+    <extra-loc-layout_id>qtl_dataform_pri_graphic</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="yes" id="txt_clock_set_ln_mins">
+    <comment>Alarm snooze time details in the list box (5mins, 10mins, 15mins, 30mins)</comment>        
+    <source>%Ln mins</source>
+        <translation>
+            <numerusform variants = "no">%Ln mins</numerusform>
+            <numerusform variants = "no">%Ln mins</numerusform>
+        </translation>
+    <extra-loc-layout_id>qtl_dataform_combobox_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-positionid>set</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_clock_setlabel_clock_type">
     <comment>Primary text label for Clock Type</comment>        
     <source>Clock Type</source>
@@ -320,7 +340,7 @@
     <source>Saturday</source>
     <translation variants="no">Saturday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_6_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -330,7 +350,7 @@
     <source>Wednesday</source>
     <translation variants="no">Wednesday</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
+    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
     <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
--- a/clock/clockui/clocksettingsview/data/xml/clocksettingsview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/data/xml/clocksettingsview.docml	Tue May 18 13:16:49 2010 +0100
@@ -3,26 +3,10 @@
     <widget name="clockSettingsView" type="HbView">
         <widget name="clockSettingsViewWidget" role="HbView:widget" type="HbWidget">
             <widget name="subtitleGroupBox" type="HbGroupBox">
-                <string locid="txt_clock_subhead_date_time" name="titleText" value="Date &amp; time"/>
+                <string locid="txt_clock_subhead_settings" name="titleText" value="Settings"/>
                 <real name="z" value="1"/>
                 <bool name="collapsable" value="FALSE"/>
             </widget>
-            <widget name="clockWidget" type="HbPushButton">
-                <real name="z" value="8"/>
-                <string name="text" value="Clock"/>
-            </widget>
-            <widget name="dateLabel" type="HbLabel">
-                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-                <real name="z" value="9"/>
-                <sizehint height="var(hb-param-text-height-tiny)" type="PREFERRED"/>
-                <string name="plainText" value="Mon 18.05.2009"/>
-            </widget>
-            <widget name="placeLabel" type="HbLabel">
-                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-                <real name="z" value="10"/>
-                <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED"/>
-                <string name="plainText" value="Helsinki, Finland +2 GMT"/>
-            </widget>
             <widget name="dataForm" type="HbDataForm">
                 <real name="z" value="11"/>
                 <string name="description" value=""/>
@@ -32,18 +16,10 @@
                 <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
-                <anchoritem dst="clockWidget" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
-                <anchoritem dst="dateLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dateLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
-                <anchoritem dst="placeLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="placeLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="dataForm" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="-0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="dataForm" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
-                <anchoritem dst="dataForm" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="placeLabel" srcEdge="BOTTOM"/>
-                <anchoritem dst="dateLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="subtitleGroupBox" srcEdge="BOTTOM"/>
-                <anchoritem dst="placeLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-vertical)" src="clockWidget" srcEdge="BOTTOM"/>
-                <anchoritem dst="clockWidget" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="dateLabel" srcEdge="BOTTOM"/>
-                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="-0un" src="" srcEdge="RIGHT"/>
             </layout>
         </widget>
         <widget name="viewMenu" role="HbView:menu" type="HbMenu"/>
@@ -55,18 +31,10 @@
                 <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
-                <anchoritem dst="clockWidget" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="subtitleGroupBox" srcEdge="BOTTOM"/>
-                <anchoritem dst="dateLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dateLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="clockWidget" srcEdge="BOTTOM"/>
-                <anchoritem dst="placeLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="placeLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-vertical)" src="dateLabel" srcEdge="BOTTOM"/>
-                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="dataForm" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="dataForm" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
-                <anchoritem dst="clockWidget" dstEdge="LEFT" spacing="9.5un" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="9.5un" src="clockWidget" srcEdge="RIGHT"/>
-                <anchoritem dst="dataForm" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="subtitleGroupBox" srcEdge="BOTTOM"/>
-                <anchoritem dst="dateLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="dataForm" srcEdge="LEFT"/>
-                <anchoritem dst="placeLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="dataForm" srcEdge="LEFT"/>
             </layout>
         </widget>
     </section>
@@ -76,18 +44,10 @@
                 <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
                 <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
-                <anchoritem dst="clockWidget" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
-                <anchoritem dst="dateLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dateLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
-                <anchoritem dst="placeLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
-                <anchoritem dst="placeLabel" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="dataForm" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="-0un" src="" srcEdge="RIGHT"/>
                 <anchoritem dst="dataForm" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
-                <anchoritem dst="dataForm" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="placeLabel" srcEdge="BOTTOM"/>
-                <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
-                <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="-0un" src="" srcEdge="RIGHT"/>
-                <anchoritem dst="clockWidget" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="subtitleGroupBox" srcEdge="BOTTOM"/>
-                <anchoritem dst="dateLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="clockWidget" srcEdge="BOTTOM"/>
-                <anchoritem dst="placeLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-vertical)" src="dateLabel" srcEdge="BOTTOM"/>
             </layout>
         </widget>
     </section>
--- a/clock/clockui/clocksettingsview/inc/clocksettingsview.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/inc/clocksettingsview.h	Tue May 18 13:16:49 2010 +0100
@@ -33,14 +33,13 @@
 class HbDataFormModel;
 class HbDataFormModelItem;
 class HbLabel;
-
 class TimezoneClient;
 class SettingsUtility;
-class SkinnableClock;
 class ClockSettingsDocLoader;
 class ClockSettingsView;
-class SkinnableClock;
 class QTranslator;
+class XQSettingsManager;
+class XQSettingsKey;
 
 class ClockSettingsView : public QObject
 {
@@ -55,13 +54,14 @@
 
 private slots:
 	void handleBackAction();
-	void updateDateLabel();
-	void updatePlaceInfo();
-	void updateClockWidget();
+	void updatePlaceItem();
 	void updateDateItem();
 	void updateTimeItem();
 	void handleOrientationChanged(Qt::Orientation orientation);
 	void handleNetworkTimeStateChange(int state);
+	void handleAutoTimeUpdateChange(int value);
+	void handleAlarmSnoozeTimeChanged(int index);
+	void eventMonitor(const XQSettingsKey& key, const QVariant& value);
 
 private:
 	void setupView();
@@ -78,19 +78,18 @@
 
 	QPointer<HbDataFormModel> mSettingsModel;
 
-
-	HbLabel *mDayDateLabel;
-	HbLabel *mPlaceLabel;
-
 	HbDataFormModelItem *mNetworkTimeItem;
 	HbDataFormModelItem *mTimeDataFormItem;
 	HbDataFormModelItem *mDateDataFormItem;
 	HbDataFormModelItem *mPlaceDataFormItem;
+	HbDataFormModelItem *mAlarmSnoozeItem;
 
 	ClockSettingsDocLoader *mDocLoader;
 	SettingsUtility *mSettingsUtility;
-	TimezoneClient *mTimezoneClient;
-	SkinnableClock *mClockWidget;
+	TimezoneClient *mTimezoneClient;	
+	XQSettingsManager *mSettingsManager;
+	XQSettingsKey *mAlarmSnoozeTimeKey;
+	QHash<int, int> mAlarmSnoozeTimeHash;
 	QTranslator *mTranslator;
 };
 
--- a/clock/clockui/clocksettingsview/inc/settingscustomitem.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/inc/settingscustomitem.h	Tue May 18 13:16:49 2010 +0100
@@ -53,21 +53,13 @@
 
 private slots:
 	void launchTimePicker();
-	void handleTimeOkAction();
-	void handleTimeCancelAction();
-
+	void handleOkAction();
 	void launchDatePicker();
-	void handleDateOkAction();
-	void handleDateCancelAction();
-
 	void launchCitySelectionList();
 	void updatePlaceItem(LocationInfo info);
+	void launchRegSettingsView();
+	void selectedAction(HbAction *action);
 
-	void launchRegSettingsView();
-	
-private:
-	
-	
 private:
 	QStringList mWeekdaysList;
 
@@ -77,6 +69,9 @@
 	QPointer<HbPushButton> mDateWidget;
 	QPointer<HbPushButton> mPlaceWidget;
 
+	HbAction *mOkAction;
+	HbAction *mCancelAction;
+
 	SettingsUtility *mSettingsUtility;
 	ClockCitySelectionList *mCitySelectionList;
 	TimezoneClient *mTimezoneClient;
--- a/clock/clockui/clocksettingsview/src/clockregionalsettingsview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/src/clockregionalsettingsview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -29,7 +29,7 @@
 #include <HbExtendedLocale>
 #include <HbListWidget>
 #include <HbComboBox>
-#include <HBListWidgetItem>
+#include <HbListWidgetItem>
 #include <HbApplication>
 #include <QTranslator>
 
@@ -134,7 +134,7 @@
 	window->setCurrentView(mView);
 
 	// Add the back softkey.
-	mBackAction = new HbAction(Hb::BackAction);
+	mBackAction = new HbAction(Hb::BackNaviAction);
 	mView->setNavigationAction(mBackAction);
 	connect(
 			mBackAction, SIGNAL(triggered()),
@@ -271,8 +271,6 @@
 void ClockRegionalSettingsView::handleDataChanged(
 		const QModelIndex& topLeft, const QModelIndex& bottomRight)
 {
-	qDebug("clock: ClockRegionalSettingsView::handleDataChanged() -->");
-
 	Q_UNUSED(bottomRight)
 
 
--- a/clock/clockui/clocksettingsview/src/clocksettingsdocloader.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/src/clocksettingsdocloader.cpp	Tue May 18 13:16:49 2010 +0100
@@ -16,13 +16,9 @@
 *
 */
 
-// System includes.
-#include <QDebug>
-
 // User includes
 #include "clocksettingsdocloader.h"
 #include "clocksettingsdefines.h"
-#include "skinnableclock.h"
 #include "clocksettingsview.h"
 
 /*!
@@ -39,16 +35,6 @@
  */
 QObject *ClockSettingsDocLoader::createObject(const QString &type, const QString &name)
 {
-	qDebug() << "clock: ClockSettingsDocLoader::createObject -->";
-
-	if (CLOCK_WIDGET == name) {
-		QObject *object = new SkinnableClock();
-		object->setObjectName(name);
-		return object;
-	}
-
-	qDebug() << "clock: ClockSettingsDocLoader::createObject <--";
-
 	return HbDocumentLoader::createObject(type, name);
 }
 
--- a/clock/clockui/clocksettingsview/src/clocksettingsview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/src/clocksettingsview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 */
 
 // System includes
-#include <QDebug>
 #include <HbInstance>
 #include <HbDataForm>
 #include <HbAction>
@@ -28,6 +27,8 @@
 #include <HbCheckBox>
 #include <HbApplication>
 #include <QTranslator>
+#include <xqsettingsmanager.h>
+#include <xqsettingskey.h>
 
 // User includes
 #include "clocksettingsview.h"
@@ -35,9 +36,9 @@
 #include "clocksettingsdocloader.h"
 #include "settingsutility.h"
 #include "timezoneclient.h"
-#include "skinnableclock.h"
 #include "settingsdatatypes.h"
 #include "settingscustomitem.h"
+#include "clockcommon.h"
 
 /*!
 	\class ClockSettingsView
@@ -69,22 +70,22 @@
 	mSettingsUtility = new SettingsUtility();
 
 	// Construct the timezone client.
-	mTimezoneClient = new TimezoneClient();
+	mTimezoneClient = TimezoneClient::getInstance();
 	connect(
 			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updatePlaceInfo()));
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateDateLabel()));
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateClockWidget()));
+			this, SLOT(updatePlaceItem()));
 	connect(
 			mTimezoneClient, SIGNAL(timechanged()),
 			this, SLOT(updateDateItem()));
 	connect(
 			mTimezoneClient, SIGNAL(timechanged()),
 			this, SLOT(updateTimeItem()));
+	connect(
+			mTimezoneClient, SIGNAL(autoTimeUpdateChanged(int)),
+			this, SLOT(handleAutoTimeUpdateChange(int)));
+	connect(
+			mTimezoneClient, SIGNAL(cityUpdated()),
+			this, SLOT(updatePlaceItem()));
 
 	// Start a timer. For updating the remaining alarm time.
 	mTickTimer = new QTimer(this);
@@ -92,7 +93,22 @@
 			mTickTimer, SIGNAL(timeout()),
 			this, SLOT(updateTimeItem()));
 
-	qDebug("clock: ClockSettingsView::ClockSettingsView() <--");
+	// Create the settings manager.
+	mSettingsManager = new XQSettingsManager(this);
+
+	// Create the key for alarm snooze time.
+	mAlarmSnoozeTimeKey = new XQSettingsKey(
+			XQSettingsKey::TargetCentralRepository,
+			KCRUidClockApp,
+			KClockAppSnoozeTime);
+	
+	// Start the monitoring for the alarm snooze time key.
+	mSettingsManager->startMonitoring(*mAlarmSnoozeTimeKey);
+
+	// Listen to the key value changes.
+	connect(
+			mSettingsManager, SIGNAL(valueChanged(XQSettingsKey, QVariant)),
+			this, SLOT(eventMonitor(XQSettingsKey, QVariant)));
 }
 
 /*!
@@ -100,8 +116,6 @@
  */
 ClockSettingsView::~ClockSettingsView()
 {
-	qDebug("clock: ClockSettingsView::~ClockSettingsView() -->");
-
 	if (mDocLoader) {
 		delete mDocLoader;
 	}
@@ -113,7 +127,10 @@
         mTranslator = 0;
     }
 
-	qDebug("clock: ClockSettingsView::~ClockSettingsView() <--");
+	if (!mTimezoneClient->isNull()) {
+	    mTimezoneClient->deleteInstance();
+    }
+
 }
 
 /*!
@@ -121,8 +138,6 @@
  */
 void ClockSettingsView::loadSettingsView()
 {
-	qDebug() << "clock: ClockViewManager::loadMainView -->";
-
 	bool loadSuccess;
 
 	// Construct the document loader instance
@@ -161,7 +176,6 @@
 	// Setup the view.
 	setupView();
 
-	qDebug() << "clock: ClockViewManager::loadMainView <--";
 }
 
 /*!
@@ -175,109 +189,21 @@
 }
 
 /*!
-	Updates the day and date in the day label.
+	Updates the zone info in the place item field.
  */
-void ClockSettingsView::updateDateLabel()
+void ClockSettingsView::updatePlaceItem()
 {
-	qDebug() << "clock: ClockSettingsView::updateDateLabel -->";
-
-	// Get the current datetime.
-	QDateTime dateTime = QDateTime::currentDateTime();
-	// Get the day name.
-	QString dayName = dateTime.toString("dddd");
-	// Get the date in correct format.
-	QString currentDate = mSettingsUtility->date();
-	// Construct the day + date string.
-	QString dayDateString;
-	dayDateString+= dayName;
-	dayDateString += " ";
-	dayDateString += currentDate;
-
-	mDayDateLabel->clear();
-	mDayDateLabel->setPlainText(dayDateString);
-
-	qDebug() << "clock: ClockSettingsView::updateDateLabel <--";
-}
-
-/*!
-	Updates the zone info in the place label.
- */
-void ClockSettingsView::updatePlaceInfo()
-{
-	qDebug() << "clock: ClockSettingsView::updateClockZoneInfo -->";
-
 	// Get the current zone info.
 	LocationInfo currentZoneInfo = mTimezoneClient->getCurrentZoneInfoL();
 
-	// Construct the GMT +/- X string.
-	QString gmtOffset;
-
-	int utcOffset = currentZoneInfo.zoneOffset;
-	int offsetInHours (utcOffset/60);
-	int offsetInMinutes (utcOffset%60);
-
-	// Check wether the offset is +ve or -ve.
-	if (0 < utcOffset) {
-		// We have a positive offset. Append the '+' character.
-		gmtOffset += tr(" +");
-	} else if (0 > utcOffset) {
-		// We have a negative offset. Append the '-' character.
-		gmtOffset += tr(" -");
-		offsetInHours = -offsetInHours;
-	} else {
-		// We dont have an offset. We are at GMT zone.
-	}
-
-	// Append the hour component.
-	gmtOffset += QString::number(offsetInHours);
-
-	// Get the time separator from settings and append it.
-	QStringList timeSeparatorList;
-	int index = mSettingsUtility->timeSeparator(timeSeparatorList);
-	gmtOffset += timeSeparatorList.at(index);
-
-	// Append the minute component.
-	// If minute component is less less than 10, append a '00'
-	if (0 <= offsetInMinutes && offsetInMinutes < 10) {
-		gmtOffset += tr("00");
-	} else {
-		gmtOffset += QString::number(offsetInMinutes);
-	}
-
-	gmtOffset += tr(" GMT ");
-
-	// Append DST info.
-	if (currentZoneInfo.dstOn) {
-		gmtOffset += tr(" DST");
-	}
-
-	// Update the labels with the correct info.
-	mPlaceLabel->clear();
 	if (mTimezoneClient->timeUpdateOn()) {
-		mPlaceLabel->setPlainText(
-				currentZoneInfo.countryName + tr(" ") + gmtOffset);
 		mPlaceDataFormItem->setContentWidgetData(
 				"text", currentZoneInfo.countryName);
 	} else {
 		QString placeInfo = currentZoneInfo.cityName
 				+ tr(", ") + currentZoneInfo.countryName;
-		mPlaceLabel->setPlainText(placeInfo + tr(" ") + gmtOffset);
 		mPlaceDataFormItem->setContentWidgetData("text", placeInfo);
 	}
-
-	qDebug() << "clock: ClockSettingsView::updateDayDateInfo <--";
-}
-
-/*!
-	Updates the clock widget display.
- */
-void ClockSettingsView::updateClockWidget()
-{
-	qDebug() << "clock: ClockSettingsView::updateClockWidget -->";
-
-	mClockWidget->updateDisplay(true);
-
-	qDebug() << "clock: ClockSettingsView::updateClockWidget <--";
 }
 
 /*!
@@ -307,8 +233,6 @@
  */
 void ClockSettingsView::handleOrientationChanged(Qt::Orientation orientation)
 {
-	qDebug() << "clock: ClockSettingsView::handleOrientationChanged -->"; 
-
 	bool success; 
 	// If horizontal, load the landscape section. 
 	if (Qt::Horizontal == orientation) { 
@@ -322,9 +246,6 @@
 				CLOCK_SETTINGS_VIEW_PORTRAIT_SECTION,
 				&success); 
 	} 
-
-	qDebug() << "clock: ClockSettingsView::handleOrientationChanged <--"; 
-
 }
 
 void ClockSettingsView::handleNetworkTimeStateChange(int state)
@@ -333,36 +254,13 @@
 	if ((Qt::Checked == state && !cenrepValue)
 			|| (Qt::Unchecked == state && cenrepValue)) {
 		if (Qt::Checked == state) {
-			// Disable the time, date and place item.
-			if (mTimeDataFormItem) {
-				mTimeDataFormItem->setEnabled(false);
-			}
-			if (mDateDataFormItem) {
-				mDateDataFormItem->setEnabled(false);
-			}
-			if (mPlaceDataFormItem) {
-				mPlaceDataFormItem->setEnabled(false);
-			}
 			// Update the cenrep value.
 			mTimezoneClient->setTimeUpdateOn(true);
 
 		} else if (Qt::Unchecked == state) {
-			// Enable the time, date and place item.
-			if (mTimeDataFormItem) {
-				mTimeDataFormItem->setEnabled(true);
-			}
-			if (mDateDataFormItem) {
-				mDateDataFormItem->setEnabled(true);
-			}
-			if (mPlaceDataFormItem) {
-				mPlaceDataFormItem->setEnabled(true);
-			}
-
 			// Update the cenrep value.
 			mTimezoneClient->setTimeUpdateOn(false);
 		}
-
-		updatePlaceInfo();
 	}
 }
 
@@ -374,14 +272,12 @@
  */
 void ClockSettingsView::setupView()
 {
-	qDebug("clock: ClockSettingsView::setupView() -->");
-
 	HbMainWindow *window = hbInstance->allMainWindows().first();
 	window->addView(mSettingsView);
 	window->setCurrentView(mSettingsView);
 
 	// Add the back softkey.
-	mBackAction = new HbAction(Hb::BackAction);
+	mBackAction = new HbAction(Hb::BackNaviAction);
 	mSettingsView->setNavigationAction(mBackAction);
 	connect(
 			mBackAction, SIGNAL(triggered()),
@@ -391,18 +287,6 @@
 	mSettingsForm = static_cast<HbDataForm *> (
 			mDocLoader->findWidget(CLOCK_SETTINGS_DATA_FORM));
 
-	// Get the day-date label.
-	mDayDateLabel = static_cast<HbLabel *> (
-			mDocLoader->findWidget(CLOCK_SETTINGS_DATE_LABEL));
-
-	// Get the place label.
-	mPlaceLabel = static_cast<HbLabel *> (
-			mDocLoader->findWidget(CLOCK_SETTINGS_PLACE_LABEL));
-
-	// Get the clock widget.
-	mClockWidget = static_cast<SkinnableClock *> (
-			mDocLoader->findObject(CLOCK_WIDGET));
-
 	// Create the custom prototype.
 	QList <HbAbstractViewItem*> prototypes = mSettingsForm->itemPrototypes();
 	SettingsCustomItem *customPrototype = new SettingsCustomItem();
@@ -411,14 +295,9 @@
 
 	// Create the model.
 	createModel();
-	// Update the relevant info.
-	updateDateLabel();
-	updateClockWidget();
-	updatePlaceInfo();
+	updatePlaceItem();
 
 	mTickTimer->start(60000 - 1000 * QTime::currentTime().second());
-
-	qDebug("clock: ClockSettingsView::setupView() <--");
 }
 
 /*!
@@ -514,6 +393,117 @@
 			(HbDataFormModelItem::CustomItemBase + RegionalSettingsItem);
 	mSettingsModel->appendDataFormItem(regionalSettingsItem);
 
+	// Add the alarm snooze time item.
+	mAlarmSnoozeItem = mSettingsModel->appendDataFormItem(
+			HbDataFormModelItem::ComboBoxItem,
+			hbTrId("txt_clock_setlabel_alarm_snooze_time"));
+	QStringList alramSnoozeTimes;
+	alramSnoozeTimes << hbTrId("txt_clock_set_ln_mins", 5)
+			<< hbTrId("txt_clock_set_ln_mins", 10)
+			<< hbTrId("txt_clock_set_ln_mins", 15)
+			<< hbTrId("txt_clock_set_ln_mins", 30);
+	
+	// Build the hash map for the reminder.
+	mAlarmSnoozeTimeHash[0] = 5;
+	mAlarmSnoozeTimeHash[1] = 10;
+	mAlarmSnoozeTimeHash[2] = 15;
+	mAlarmSnoozeTimeHash[3] = 30;
+	
+	mAlarmSnoozeItem->setContentWidgetData("items", alramSnoozeTimes);
+	QVariant value = mSettingsManager->readItemValue(*mAlarmSnoozeTimeKey);
+	bool success;
+	int index;
+	int alarmSnoozeTime = value.toInt(&success);
+	if (success) {
+		index = mAlarmSnoozeTimeHash.key(alarmSnoozeTime);
+	} else {
+		index = mAlarmSnoozeTimeHash.key(15);
+	}
+	mAlarmSnoozeItem->setContentWidgetData("currentIndex", index);
+	mSettingsForm->addConnection(
+			mAlarmSnoozeItem, SIGNAL(currentIndexChanged(int)),
+			this, SLOT(handleAlarmSnoozeTimeChanged(int)));
+
+}
+
+/*!
+	Slot which handles the auto time update value changes in cenrep.
+	
+	/param value New value of the auto time update.
+ */
+void ClockSettingsView::handleAutoTimeUpdateChange(int value)
+{
+	int state = (mNetworkTimeItem->contentWidgetData("checkState")).toInt();
+	
+	if (value) {
+		// Disable the time, date and place item.
+		if (mTimeDataFormItem) {
+			mTimeDataFormItem->setEnabled(false);
+		}
+		if (mDateDataFormItem) {
+			mDateDataFormItem->setEnabled(false);
+		}
+		if (mPlaceDataFormItem) {
+			mPlaceDataFormItem->setEnabled(false);
+		}
+		if (Qt::Unchecked == state) {
+			mNetworkTimeItem->setContentWidgetData(
+						"checkState", Qt::Checked);
+		}
+	} else {
+		// Enable the time, date and place item.
+		if (mTimeDataFormItem) {
+			mTimeDataFormItem->setEnabled(true);
+		}
+		if (mDateDataFormItem) {
+			mDateDataFormItem->setEnabled(true);
+		}
+		if (mPlaceDataFormItem) {
+			mPlaceDataFormItem->setEnabled(true);
+		}
+		if (Qt::Checked == state) {
+			mNetworkTimeItem->setContentWidgetData(
+						"checkState", Qt::Unchecked);
+		}
+	}
+	updatePlaceItem();
+}
+
+/*!
+	Slot which handles the alarm snooze time changes.
+	
+	/param value New index of the alarm snooze time.
+ */
+void ClockSettingsView::handleAlarmSnoozeTimeChanged(int index)
+{
+	if (mAlarmSnoozeTimeHash.value(index)) {
+		mSettingsManager->writeItemValue(
+				*mAlarmSnoozeTimeKey, mAlarmSnoozeTimeHash.value(index));
+	}
+}
+
+/*!
+	Slot which is called when the value changes in cenrep.
+
+	\param key The key which got changed in cenrep.
+	\param value The new value of that key.
+ */
+void ClockSettingsView::eventMonitor(
+		const XQSettingsKey& key, const QVariant& value)
+{
+	if (key.uid() == KCRUidClockApp && key.key() == KClockAppSnoozeTime) {
+		if (mSettingsManager->error() == XQSettingsManager::NoError) {
+
+			bool success;
+			int alarmSnoozeTime = value.toInt(&success);
+			
+			if (success) {
+				mAlarmSnoozeItem->setContentWidgetData(
+						"currentIndex", mAlarmSnoozeTimeHash.key(
+								alarmSnoozeTime));
+			}
+		}
+	}
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockui/clocksettingsview/src/settingscustomitem.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clocksettingsview/src/settingscustomitem.cpp	Tue May 18 13:16:49 2010 +0100
@@ -54,6 +54,8 @@
 {
 	// Construct the settignsutility.
 	mSettingsUtility = new SettingsUtility();
+	// Construct the timezone client.
+	mTimezoneClient = TimezoneClient::getInstance();
 }
 
 /*!
@@ -61,7 +63,9 @@
  */
 SettingsCustomItem::~SettingsCustomItem()
 {
-
+	if (!mTimezoneClient->isNull()) {
+		mTimezoneClient->deleteInstance();
+	}
 }
 
 /*!
@@ -74,16 +78,16 @@
 }
 
 /*!
-	
+
 	\sa
  */
 bool SettingsCustomItem::canSetModelIndex(const QModelIndex &index) const
 {
-	HbDataFormModelItem::DataItemType itemType = 
+	HbDataFormModelItem::DataItemType itemType =
 			static_cast<HbDataFormModelItem::DataItemType>(
 			index.data(HbDataFormModelItem::ItemTypeRole).toInt());
 
-	if(itemType >= HbDataFormModelItem::CustomItemBase && 
+	if(itemType >= HbDataFormModelItem::CustomItemBase &&
 			itemType <= (HbDataFormModelItem::CustomItemBase + 50)) {
 		return true;
 	} else {
@@ -97,21 +101,21 @@
 	HbDataFormModelItem::DataItemType itemType =
 			static_cast<HbDataFormModelItem::DataItemType>(
 			modelIndex().data(HbDataFormModelItem::ItemTypeRole).toInt());
-	
+
 	HbDataFormModel* model =
 			static_cast<HbDataFormModel*>(
 			static_cast<HbAbstractViewItem*>(this)->itemView()->model());
-	HbDataFormModelItem* modlItem = model->itemFromIndex(modelIndex()); 
-	
+	HbDataFormModelItem* modlItem = model->itemFromIndex(modelIndex());
+
 	switch (itemType) {
 		case (TimeItemOffset + HbDataFormModelItem::CustomItemBase):
 		mTimeWidget->setProperty("text", modlItem->contentWidgetData("text"));
 		break;
-		
+
 		case (DateItemOffset + HbDataFormModelItem::CustomItemBase):
 		mDateWidget->setProperty("text", modlItem->contentWidgetData("text"));
 		break;
-		
+
 		case (PlaceItemOffset + HbDataFormModelItem::CustomItemBase):
 		mPlaceWidget->setProperty("text", modlItem->contentWidgetData("text"));
 		break;
@@ -176,7 +180,7 @@
 					this, SLOT(launchRegSettingsView()));
 			return regSettingsItem;
 		}
-		
+
 		case (50 + HbDataFormModelItem::CustomItemBase):
 		{
 			HbListWidget *workdaysItem = new HbListWidget();
@@ -186,7 +190,7 @@
 			for (int index = 0; index < mWeekdaysList.count(); ++index) {
 				workdaysItem->addItem(mWeekdaysList.at(index));
 			}
-			
+
 			QString workdaysString = workdaysSetting();
 			for (int i = 0, index = workdaysString.size() - 1;
 					index >= 0; ++i, index--) {
@@ -202,7 +206,7 @@
 							QItemSelectionModel::Select);
 				}
 			}
-			
+
 			return workdaysItem;
 		}
 
@@ -242,50 +246,51 @@
 	mTimePickerDialog->setContentWidget(timePicker);
 	timePicker->setTime(QTime::currentTime());
 
-	HbAction *okAction =
-		new HbAction(QString(hbTrId("txt_common_button_ok")), mTimePickerDialog);
-	mTimePickerDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleTimeOkAction()));
+	mOkAction = new HbAction(
+			QString(hbTrId("txt_common_button_ok")), mTimePickerDialog);
+	mCancelAction = new HbAction(
+			QString(hbTrId("txt_common_button_cancel")), mTimePickerDialog);
 
-	HbAction *cancelAction =
-		new HbAction(QString(hbTrId("txt_common_button_cancel")),
-		    mTimePickerDialog);
-	mTimePickerDialog->setSecondaryAction( cancelAction );
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleTimeCancelAction()));
+	mTimePickerDialog->addAction(mOkAction);
+	mTimePickerDialog->addAction(mCancelAction);
 
-	mTimePickerDialog->exec();
+	mTimePickerDialog->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
-	Handles the ok action of time picker dialog.
+	Handles the ok action of time/date picker dialog.
  */
-void SettingsCustomItem::handleTimeOkAction()
+void SettingsCustomItem::handleOkAction()
 {
-	// Get the time from the time picker.
-	QTime newTime = static_cast<HbDateTimePicker *> (
-			mTimePickerDialog->contentWidget())->time();
+	if (mTimePickerDialog) {
+		// Get the time from the time picker.
+		QTime newTime = static_cast<HbDateTimePicker *> (
+				mTimePickerDialog->contentWidget())->time();
 
-	QString timeFormatString = mSettingsUtility->timeFormatString();
-	// Update the display text on form item.
-	mTimeWidget->setText(newTime.toString(timeFormatString));
-	mSettingsUtility->setTime(newTime.toString(timeFormatString));
+		QString timeFormatString = mSettingsUtility->timeFormatString();
 
-	// Close the dialog.
-	handleTimeCancelAction();
-}
+		// If time returned by the picker is valid, then only update.
+		if (newTime.isValid()) {
+			// Update the display text on form item.
+			mTimeWidget->setText(newTime.toString(timeFormatString));
+			// Update the system time.
+			mTimezoneClient->setDateTime(QDateTime(QDate::currentDate(), newTime));
+		}
+	} else if(mDatePickerDialog) {
+		// Get the time from the time picker.
+		QDate newDate = static_cast<HbDateTimePicker *> (
+				mDatePickerDialog->contentWidget())->date();
 
-/*!
-	Handles the cancel action of time picker dialog.
- */
-void SettingsCustomItem::handleTimeCancelAction()
-{
-	// Close the dialog.
-	mTimePickerDialog->close();
-	mTimePickerDialog->deleteLater();
+		QString dateFormatString = mSettingsUtility->dateFormatString();
+
+		// If date returned by the picker is valid, then only update.
+		if (newDate.isValid()) {
+			// Update the display text on form item.
+			mDateWidget->setText(newDate.toString(dateFormatString));
+			// Update the system date.
+			mTimezoneClient->setDateTime(QDateTime(newDate, QTime::currentTime()));
+		}
+	}
 }
 
 /*!
@@ -315,50 +320,16 @@
 	mDatePickerDialog->setContentWidget(datePicker);
 	datePicker->setDate(QDate::currentDate());
 
-	HbAction *okAction =
-		new HbAction(QString(hbTrId("txt_common_button_ok")), mDatePickerDialog);
-	mDatePickerDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleDateOkAction()));
-
-	HbAction *cancelAction =
-		new HbAction(QString(hbTrId("txt_common_button_cancel")),
-		    mDatePickerDialog);
-	mDatePickerDialog->setSecondaryAction( cancelAction );
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleDateCancelAction()));
-
-	mDatePickerDialog->exec();
-}
+	mOkAction = new HbAction(
+			QString(hbTrId("txt_common_button_ok")), mDatePickerDialog);
 
-/*!
-	Handles the ok action of date picker dialog.
- */
-void SettingsCustomItem::handleDateOkAction()
-{
-	// Get the time from the time picker.
-	QDate newDate = static_cast<HbDateTimePicker *> (
-			mDatePickerDialog->contentWidget())->date();
+	mCancelAction = new HbAction(
+			QString(hbTrId("txt_common_button_cancel")),mDatePickerDialog);
 
-	QString dateFormatString = mSettingsUtility->dateFormatString();
-	// Update the display text on form item.
-	mDateWidget->setText(newDate.toString(dateFormatString));
-	mSettingsUtility->setDate(newDate.toString(dateFormatString));
-
-	// Close the dialog.
-	handleDateCancelAction();
-}
+	mDatePickerDialog->addAction(mOkAction);
+	mDatePickerDialog->addAction(mCancelAction);
 
-/*!
-	Handles the ok action of date picker dialog.
- */
-void SettingsCustomItem::handleDateCancelAction()
-{
-	// Close the dialog.
-	mDatePickerDialog->close();
-	mDatePickerDialog->deleteLater();
+	mDatePickerDialog->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
@@ -382,8 +353,6 @@
 void SettingsCustomItem::updatePlaceItem(LocationInfo info)
 {
 	if (-1 != info.timezoneId) {
-		// Construct the timezone client.
-		mTimezoneClient = new TimezoneClient();
 		mTimezoneClient->setAsCurrentLocationL(info);
 	}
 }
@@ -399,6 +368,16 @@
 }
 
 /*!
+	Slot to handle the selected action.
+ */
+void SettingsCustomItem::selectedAction(HbAction *action)
+{
+	if (action==mOkAction) {
+		handleOkAction();
+	}
+}
+
+/*!
 	Returns the workdays setting string based on start of week setting.
  */
 QString SettingsCustomItem::workdaysSetting()
--- a/clock/clockui/clockviewmanager/clockviewmanager.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviewmanager/clockviewmanager.pro	Tue May 18 13:16:49 2010 +0100
@@ -29,7 +29,7 @@
 		./inc \
 		../clockviews/inc \
 		../clockappcontroller/inc \
-		../clockwidget/inc \
+		../clockwidget/clockwidgetimpl/inc \
 		../../inc
 
 symbian: {
@@ -39,7 +39,7 @@
 	
 	LIBS += \
 		-lclockviews \
-		-lclockwidgetproto
+		-lclockwidget
 }
 
 SOURCES += \
--- a/clock/clockui/clockviewmanager/inc/clockviewmanager.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviewmanager/inc/clockviewmanager.h	Tue May 18 13:16:49 2010 +0100
@@ -44,10 +44,12 @@
 	CLOCKVIEWMANAGER_EXPORT void showView(ClockViews view);
 
 private:
-	void loadViews();
 	void loadMainView();
 	void loadWorldClockView();
 
+private slots:
+	void loadOtherViews();
+
 private:
 	ClockAppControllerIf &mAppControllerIf;
 	ClockMainView *mMainView;
--- a/clock/clockui/clockviewmanager/src/clockdocloader.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviewmanager/src/clockdocloader.cpp	Tue May 18 13:16:49 2010 +0100
@@ -15,15 +15,13 @@
  *
 */
 
-// System includes.
-#include <QDebug>
-
 // User includes
 #include "clockdocloader.h"
 #include "clockcommon.h"
 #include "clockmainview.h"
-#include "skinnableclock.h"
+#include "clockwidget.h"
 #include "clockworldview.h"
+#include "clockhomecityitem.h"
 
 /*!
 	\class ClockDocLoader
@@ -39,23 +37,23 @@
  */
 QObject *ClockDocLoader::createObject(const QString &type, const QString &name)
 {
-	qDebug() << "clock: ClockDocLoader::createObject -->";
-
 	if (CLOCK_MAIN_VIEW == name) {
 		QObject *object = new ClockMainView();
 		object->setObjectName(name);
 		return object;
 	} else if (CLOCK_WIDGET == name) {
-		QObject *object = new SkinnableClock();
+		QObject *object = new ClockWidget();
 		object->setObjectName(name);
 		return object;
-    } else if (WORLD_CLOCK_VIEW == name) {
+	} else if (CLOCK_WORLD_VIEW == name) {
 		QObject *object = new ClockWorldView();
 		object->setObjectName(name);
 		return object;
-    }
-
-	qDebug() << "clock: ClockDocLoader::createObject <--";
+	} else if (CLOCK_WORLD_HOMECITY == name) {
+		QObject *object = new ClockHomeCityItem();
+		object->setObjectName(name);
+		return object;
+	}
 
 	return HbDocumentLoader::createObject(type, name);
 }
--- a/clock/clockui/clockviewmanager/src/clockviewmanager.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviewmanager/src/clockviewmanager.cpp	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 */
 
 // System includes
-#include <QDebug>
 #include <HbMainWindow>
 #include <HbInstance>
 
@@ -44,14 +43,17 @@
 ClockViewManager::ClockViewManager(
 		ClockAppControllerIf &controllerIf, QObject *parent)
 :QObject(parent),
- mAppControllerIf(controllerIf)
+ mAppControllerIf(controllerIf),
+ mWorldClockView(0)
 {
-	qDebug("clock: ClockViewManager::ClockViewManager() -->");
+	// Load the main view at the start up.
+	loadMainView();
 
-	// Load the document and the views.
-	loadViews();
-
-	qDebug("clock: ClockViewManager::ClockViewManager() <--");
+	// Delay loading of other views till main view is loaded.
+	HbMainWindow *window = hbInstance->allMainWindows().first();
+	connect(
+			window, SIGNAL(viewReady()),
+			this, SLOT(loadOtherViews()));
 }
 
 /*!
@@ -90,30 +92,10 @@
 }
 
 /*!
-	Loads the views from the docml file.
- */
-void ClockViewManager::loadViews()
-{
-	qDebug() << "clock: ClockViewManager::loadViews -->";
-
-	// Load the main view.
-	loadMainView();
-	// Load the world clock view.
-	loadWorldClockView();
-
-	// Set the main view to the window
-	hbInstance->allMainWindows().first()->addView(mMainView);
-
-	qDebug() << "clock: ClockViewManager::loadViews <--";
-}
-
-/*!
 	Loads the clock main view.
  */
 void ClockViewManager::loadMainView()
 {
-	qDebug() << "clock: ClockViewManager::loadMainView -->";
-
 	bool loadSuccess;
 
 	// Construct the document loader instance
@@ -121,10 +103,6 @@
 
 	// Load the application xml.
 	docLoader->load(CLOCK_MAIN_VIEW_DOCML, &loadSuccess);
-	Q_ASSERT_X(
-			loadSuccess,
-			"viewmanager.cpp",
-			"Unable to load the main view app xml");
 
 	// Find the main view.
 	mMainView = static_cast<ClockMainView *> (
@@ -133,7 +111,8 @@
 	// Setup the view.
 	mMainView->setupView(mAppControllerIf, docLoader);
 
-	qDebug() << "clock: ClockViewManager::loadMainView <--";
+	// Set the main view to the window
+	hbInstance->allMainWindows().first()->addView(mMainView);
 }
 
 /*!
@@ -147,20 +126,30 @@
 	bool loadSuccess;
 
 	// Construct the world list view from doc loader.
-	docLoader->load(":/xml/worldclockview.docml", &loadSuccess);
+	docLoader->load(CLOCK_WORLD_VIEW_DOCML, &loadSuccess);
 
 	// Get the world list view.
-	mWorldClockView =
-			static_cast<ClockWorldView *> (docLoader->findWidget("worldClockView"));
+	mWorldClockView = static_cast<ClockWorldView *> (
+			docLoader->findWidget(CLOCK_WORLD_VIEW));
 
 	mWorldClockView->setupView(mAppControllerIf, docLoader);
+}
 
-/*	// Get the world list widget.
-	WorldListWidget *listWidget =
-			qobject_cast<WorldListWidget *> (docLoader->findWidget("worldListWidget"));
-	Q_ASSERT_X(listWidget,
-	           "viewmanager.cpp", "Unable to load the world list widget");
-	listWidget->setupWidget(mWorldListView, docLoader);*/
+/*!
+	Load other views
+ */
+void ClockViewManager::loadOtherViews()
+{
+	mMainView->setupAfterViewReady();
+	
+	// Load world clock view
+	loadWorldClockView();
+
+	// Disconnect the signal viewReady as all the views are loaded.
+	HbMainWindow *window = hbInstance->allMainWindows().first();
+	disconnect(
+			window, SIGNAL(viewReady()),
+			this, SLOT(loadOtherViews()));
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockui/clockviews/clockviews.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/clockviews.pro	Tue May 18 13:16:49 2010 +0100
@@ -30,7 +30,7 @@
 		../../clockmw/clocksettingsutility/inc \
 		../clocksettingsview/inc \
 		../clockalarmeditor/inc \
-		../clockwidget/inc \
+		../clockwidget/clockwidgetimpl/inc \
 		../clockcityselectionlist/inc \
 		../inc
 
@@ -51,7 +51,8 @@
 		-lclocksettingsutility \
 		-lclocksettingsview \
 		-lclockcityselectionlist \
-		-lclockwidgetproto
+		-lclockwidget \
+                -lclockwidgetplugin
 }
 
 SOURCES += \
@@ -59,14 +60,14 @@
 		clockalarmlistmodel.cpp	\	
 		clockalarmlistitemprototype.cpp \		
 		clockworldview.cpp \
-		listitemprototype.cpp
+		clockhomecityitem.cpp
 
 HEADERS += \
 		clockmainview.h \
 		clockalarmlistmodel.h \
 		clockalarmlistitemprototype.h \	
 		clockworldview.h \
-		listitemprototype.h
+		clockhomecityitem.h
 
 RESOURCES += \
 		clockviews.qrc
--- a/clock/clockui/clockviews/data/clockviews.qrc	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/data/clockviews.qrc	Tue May 18 13:16:49 2010 +0100
@@ -2,11 +2,13 @@
 	<qresource prefix="/style">
 		<file alias="clockalarmlistitemprototype.css">style/clockalarmlistitemprototype.css</file>
 		<file alias="clockalarmlistitemprototype.widgetml">style/clockalarmlistitemprototype.widgetml</file>
-		<file alias="listitemprototype.css" >style/listitemprototype.css</file>
-		<file alias="listitemprototype.widgetml" >style/listitemprototype.widgetml</file>
+        	<file alias="clockhomecityitem.css">style/clockhomecityitem.css</file>
+        	<file alias="clockhomecityitem.widgetml">style/clockhomecityitem.widgetml</file>
+        	<file alias="hblistviewitem.css">style/hblistviewitem.css</file>
+       		<file alias="hblistviewitem.widgetml">style/hblistviewitem.widgetml</file>
 	</qresource>
 	<qresource prefix="/xml">
 		<file alias="clockmainview.docml">xml/clockmainview.docml</file>
-		<file alias="worldclockview.docml" >xml/worldclockview.docml</file>
+		<file alias="clockworldview.docml">xml/clockworldview.docml</file>
 	</qresource>
 </RCC>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/data/style/clockhomecityitem.css	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,44 @@
+ClockHomeCityItem{
+    layout: homecity-portrait;
+}
+ClockHomeCityItem:landscape{
+    layout: homecity-landscape;
+}
+ClockHomeCityItem::dayNightIcon{
+    top: -var(hb-param-margin-gene-top);
+    left: -var(hb-param-margin-gene-left);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    bottom: var(hb-param-margin-gene-bottom);
+
+    fixed-height: var(hb-param-graphic-size-primary-large);
+    fixed-width: var(hb-param-graphic-size-primary-large);
+}
+
+ClockHomeCityItem::dateText{
+    top: -var(hb-param-margin-gene-top);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    text-height: var(hb-param-text-height-tiny);
+    text-align: left;
+}
+
+ClockHomeCityItem::cityText{
+    top: -var(hb-param-margin-gene-middle-vertical);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    text-height: var(hb-param-text-height-primary);
+    text-align: left;
+}
+
+ClockHomeCityItem::dstIcon{
+    top: -var(hb-param-margin-gene-top);
+    right: var(hb-param-margin-gene-right);
+
+    fixed-height: var(hb-param-graphic-size-secondary);
+    fixed-width: var(hb-param-graphic-size-secondary);
+}
+
+ClockHomeCityItem::timeText{
+    right: var(hb-param-margin-gene-right);
+    text-height: var(hb-param-text-height-tiny);
+    text-align: right;
+    fixed-width: 16un;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/data/style/clockhomecityitem.widgetml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,41 @@
+<hbwidget version="0.1" type="ClockHomeCityItem">
+    <layout name="homecity-portrait" type="mesh">
+        <meshitem src="dayNightIcon" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="dayNightIcon" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+        <meshitem src="dayNightIcon" srcEdge="RIGHT" dst="dateText" dstEdge="LEFT" />
+
+        <meshitem src="dateText" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="dateText" srcEdge="RIGHT" dst="dstIcon" dstEdge="LEFT" />
+
+        <meshitem src="cityText" srcEdge="LEFT" dst="dateText" dstEdge="LEFT" />
+        <meshitem src="cityText" srcEdge="BOTTOM" dst="dayNightIcon" dstEdge="BOTTOM" />
+        <meshitem src="cityText" srcEdge="RIGHT" dst="timeText" dstEdge="LEFT" />
+
+        <meshitem src="dstIcon" srcEdge="CENTERV" dst="dateText" dstEdge="CENTERV" />
+        <meshitem src="dstIcon" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="timeText" srcEdge="TOP" dst="cityText" dstEdge="TOP" />
+        <meshitem src="timeText" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+    </layout>
+
+    <layout name="homecity-landscape" type="mesh">
+        <meshitem src="dayNightIcon" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="dayNightIcon" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+        <meshitem src="dayNightIcon" srcEdge="RIGHT" dst="dateText" dstEdge="LEFT" />
+
+        <meshitem src="dateText" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="dateText" srcEdge="RIGHT" dst="timeText" dstEdge="LEFT" />
+
+        <meshitem src="cityText" srcEdge="LEFT" dst="dateText" dstEdge="LEFT" />
+        <meshitem src="cityText" srcEdge="BOTTOM" dst="dayNightIcon" dstEdge="BOTTOM" />
+        <meshitem src="cityText" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="dstIcon" srcEdge="CENTERV" dst="timeText" dstEdge="CENTERV" />
+        <meshitem src="dstIcon" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="timeText" srcEdge="CENTERV" dst="dateText" dstEdge="CENTERV" />
+        <meshitem src="timeText" srcEdge="TOP" dst="dateText" dstEdge="TOP" />
+        <meshitem src="timeText" srcEdge="RIGHT" dst="dstIcon" dstEdge="LEFT" />
+    </layout>
+
+</hbwidget>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/data/style/hblistviewitem.css	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,64 @@
+
+HbListViewItem:portrait{
+    layout: citylist-portrait;
+}
+
+HbListViewItem:landscape{
+    layout: citylist-landscape;
+}
+
+HbListViewItem::icon-1{
+    top: -var(hb-param-margin-gene-top);
+    left: -var(hb-param-margin-gene-left);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    bottom: var(hb-param-margin-gene-bottom);
+
+    fixed-height: var(hb-param-graphic-size-primary-large);
+    fixed-width: var(hb-param-graphic-size-primary-large);
+}
+
+HbListViewItem::text-1{
+    top: -var(hb-param-margin-gene-top);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    text-height: var(hb-param-text-height-tiny);
+    text-align: left;
+}
+
+HbListViewItem::text-2{
+    top: -var(hb-param-margin-gene-middle-vertical);
+    right: var(hb-param-margin-gene-middle-horizontal);
+    text-height: var(hb-param-text-height-primary);
+    text-align: left;
+}
+
+HbListViewItem::text-3:portrait{
+    top: -var(hb-param-margin-gene-middle-vertical);
+    right: var(hb-param-margin-gene-right);
+    bottom: var(hb-param-margin-gene-bottom);
+
+    text-height: var(hb-param-text-height-tiny);
+    text-align: left;
+}
+
+HbListViewItem::text-3:landscape{
+    right: var(hb-param-margin-gene-right);
+
+    text-height: var(hb-param-text-height-tiny);
+    text-align: right;
+    fixed-width: 24un;
+}
+
+HbListViewItem::icon-2{
+    top: -var(hb-param-margin-gene-top);
+    right: var(hb-param-margin-gene-right);
+
+    fixed-height: var(hb-param-graphic-size-secondary);
+    fixed-width: var(hb-param-graphic-size-secondary);
+}
+
+HbListViewItem::text-4{
+    right: var(hb-param-margin-gene-right);
+    text-height: var(hb-param-text-height-tiny);
+    text-align: right;
+    fixed-width: 16un;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/data/style/hblistviewitem.widgetml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,52 @@
+<hbwidget version="0.1" type="HbListViewItem">
+
+    <layout name="citylist-portrait" type="mesh">
+
+	    <meshitem src="icon-1" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="icon-1" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+        <meshitem src="icon-1" srcEdge="RIGHT" dst="text-1" dstEdge="LEFT" />
+
+        <meshitem src="text-1" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="text-1" srcEdge="RIGHT" dst="icon-2" dstEdge="LEFT" />
+
+        <meshitem src="text-2" srcEdge="LEFT" dst="text-1" dstEdge="LEFT" />
+        <meshitem src="text-2" srcEdge="BOTTOM" dst="icon-1" dstEdge="BOTTOM" />
+        <meshitem src="text-2" srcEdge="RIGHT" dst="text-4" 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="icon-2" srcEdge="CENTERV" dst="text-1" dstEdge="CENTERV" />
+        <meshitem src="icon-2" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="text-4" srcEdge="TOP" dst="text-2" dstEdge="TOP" />
+        <meshitem src="text-4" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+       
+
+    </layout>
+
+    <layout name="citylist-landscape" type="mesh">
+
+        <meshitem src="icon-1" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="icon-1" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+        <meshitem src="icon-1" srcEdge="RIGHT" dst="text-1" dstEdge="LEFT" />
+
+        <meshitem src="text-1" srcEdge="TOP" dst="" dstEdge="TOP" />
+        <meshitem src="text-1" srcEdge="RIGHT" dst="text-4" dstEdge="LEFT" />
+
+        <meshitem src="text-2" srcEdge="LEFT" dst="text-1" dstEdge="LEFT" />
+        <meshitem src="text-2" srcEdge="BOTTOM" dst="icon-1" dstEdge="BOTTOM" />
+        <meshitem src="text-2" srcEdge="RIGHT" dst="text-3" dstEdge="LEFT" />
+
+        <meshitem src="text-3" srcEdge="BOTTOM" dst="text-2" dstEdge="BOTTOM" />
+        <meshitem src="text-3" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="icon-2" srcEdge="CENTERV" dst="text-4" dstEdge="CENTERV" />
+        <meshitem src="icon-2" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+        <meshitem src="text-4" srcEdge="CENTERV" dst="text-1" dstEdge="CENTERV" />
+        <meshitem src="text-4" srcEdge="RIGHT" dst="icon-2" dstEdge="LEFT" />
+
+    </layout>
+
+</hbwidget>
--- a/clock/clockui/clockviews/data/style/listitemprototype.css	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-ListItemPrototype[layoutName="custom"]{
-	layout: custom;
-}
-
-ListItemPrototype::dayNightIcon[layoutName="custom"]{
-	top: -var(hb-param-margin-gene-top);
-	left: -var(hb-param-margin-gene-left);
-	
-	fixed-height: var(hb-param-graphic-size-secondary);
-	fixed-width: var(hb-param-graphic-size-secondary);
-}
-
-ListItemPrototype::dateText[layoutName="custom"]{
-	left: -var(hb-param-margin-gene-left);
-	top: -var(hb-param-margin-gene-top);
-	right: var(hb-param-margin-gene-right);
-	bottom: var(hb-param-margin-gene-bottom);
-
-	text-height: var(hb-param-text-height-tiny);
-	min-width: 29.7un;
-}
-
-ListItemPrototype::cityText[layoutName="custom"]{
-	top: -var(hb-param-margin-gene-middle-vertical);
-	right: var(hb-param-margin-gene-right);
-	
-	text-height: var(hb-param-text-height-primary);
-	font-variant: primary;
-	fixed-width: 29.7un;
-}
-
-ListItemPrototype::offsetText[layoutName="custom"]{
-	top: -var(hb-param-margin-gene-middle-vertical);
-	right: 11.5un;
-	bottom: var(hb-param-margin-gene-bottom);
-	
-	text-height: var(hb-param-text-height-tiny);
-	min-width: 29.7un;
-}
-
-ListItemPrototype::dstIcon[layoutName="custom"]{
-	top: -var(hb-param-margin-gene-top);
-	right: 6.4un;
-	
-	fixed-height: var(hb-param-graphic-size-secondary);
-	fixed-width: var(hb-param-graphic-size-secondary);
-}
-
-ListItemPrototype::timText[layoutName="custom"]{
-	top: -var(hb-param-margin-gene-middle-vertical);
-	right: var(hb-param-margin-gene-right);
-	
-	text-height: var(hb-param-text-height-tiny);
-}
\ No newline at end of file
--- a/clock/clockui/clockviews/data/style/listitemprototype.widgetml	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-<hbwidget version="0.1" type="ListItemPrototype">
-	<layout name="custom" type="mesh">
-		<meshitem src="dayNightIcon" srcEdge="TOP" dst="" dstEdge="TOP" />
-		<meshitem src="dayNightIcon" srcEdge="LEFT" dst="" dstEdge="LEFT" />
-		
-		<meshitem src="dateText" srcEdge="TOP" dst="" dstEdge="TOP" />
-		<meshitem src="dateText" srcEdge="LEFT" dst="dayNightIcon" dstEdge="RIGHT" />
-		<meshitem src="dateText" srcEdge="RIGHT" dst="dstIcon" dstEdge="LEFT" />
-		
-		<meshitem src="cityText" srcEdge="LEFT" dst="dateText" dstEdge="LEFT" />
-		<meshitem src="cityText" srcEdge="TOP" dst="dateText" dstEdge="BOTTOM" />
-		<meshitem src="cityText" srcEdge="RIGHT" dst="timeText" dstEdge="LEFT" />
-		
-		<meshitem src="offsetText" srcEdge="LEFT" dst="dateText" dstEdge="LEFT" />
-		<meshitem src="offsetText" srcEdge="TOP" dst="cityText" dstEdge="BOTTOM" />
-		<meshitem src="offsetText" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
-		<meshitem src="offsetText" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
-		
-		<meshitem src="dstIcon" srcEdge="TOP" dst="" dstEdge="TOP" />
-		<meshitem src="dstIcon" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
-		
-		<meshitem src="timeText" srcEdge="TOP" dst="dstIcon" dstEdge="BOTTOM" />
-		<meshitem src="timeText" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
-	</layout>
-</hbwidget>
--- a/clock/clockui/clockviews/data/xml/clockmainview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/data/xml/clockmainview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,26 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="alarmsAction" type="HbAction">
-        <string name="text" value="Alarms"/>
-        <icon iconName="qtg_mono_alarm_active.svg" name="icon"/>
+        <icon iconName="qtg_mono_alarm" name="icon"/>
     </object>
     <object name="worldClockAction" type="HbAction">
-        <string name="text" value="World clock"/>
-        <icon iconName="qtg_mono_world_clock.svg" name="icon"/>
+        <icon iconName="qtg_mono_world_clock" name="icon"/>
     </object>
     <object name="newAlarmAction" type="HbAction">
-        <string name="text" value="New Alarm"/>
-        <icon iconName="qtg_mono_alarm_new.svg" name="icon"/>
+        <icon iconName="qtg_mono_alarm_new" name="icon"/>
     </object>
     <object name="settingsAction" type="HbAction">
         <string locid="txt_clk_main_view_opt_settings" name="text" value="Settings"/>
     </object>
     <widget name="clockMainView" type="HbView">
         <widget name="clockMainViewWidget" role="HbView:widget" type="HbWidget">
-            <widget name="clockWidget" type="HbPushButton">
+            <widget name="clockWidget" plugin="clockwidgetplugin" type="ClockWidget">
                 <real name="z" value="8"/>
-                <string name="text" value="Clock widget"/>
-                <string name="state" value="normal"/>
             </widget>
             <widget name="dateLabel" type="HbLabel">
                 <real name="z" value="9"/>
@@ -74,6 +69,13 @@
         <string locid="txt_common_common_clock" name="title" value="Clock"/>
     </widget>
     <section name="landscape">
+        <widget name="noAlarmLabel" type="HbLabel">
+            <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+            <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED" width="37.7un"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM" width="37.7un"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="MAXIMUM" width="37.7un"/>
+        </widget>
         <widget name="clockMainViewWidget" role="HbView:widget" type="HbWidget">
             <layout type="anchor">
                 <anchoritem dst="dateLabel" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="clockWidget" srcEdge="BOTTOM"/>
@@ -93,21 +95,24 @@
                 <anchoritem dst="noAlarmLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="alarmListView" srcEdge="LEFT"/>
             </layout>
         </widget>
-        <widget name="noAlarmLabel" type="HbLabel">
+        <widget name="dateLabel" type="HbLabel">
             <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-            <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED" width="37.7un"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM" width="37.7un"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="MAXIMUM" width="37.7un"/>
         </widget>
         <widget name="placeLabel" type="HbLabel">
             <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
         </widget>
-        <widget name="dateLabel" type="HbLabel">
-            <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+        <widget name="clockWidget" plugin="clockwidgetplugin" type="ClockWidget">
+            <sizehint height="22.3un" type="PREFERRED" width="22.3un"/>
         </widget>
     </section>
     <section name="portrait">
+        <widget name="noAlarmLabel" type="HbLabel">
+            <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+            <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED" width="49.7un"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM" width="37.7un"/>
+            <sizehint height="var(hb-param-text-height-primary)" type="MAXIMUM" width="49.7un"/>
+        </widget>
         <widget name="clockMainViewWidget" role="HbView:widget" type="HbWidget">
             <layout type="anchor">
                 <anchoritem dst="clockWidget" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
@@ -126,21 +131,17 @@
                 <anchoritem dst="noAlarmLabel" dstEdge="TOP" spacing="17.8un" src="placeLabel" srcEdge="BOTTOM"/>
             </layout>
         </widget>
-        <widget name="noAlarmLabel" type="HbLabel">
+        <widget name="dateLabel" type="HbLabel">
             <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
-            <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="PREFERRED" width="49.7un"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="MINIMUM" width="37.7un"/>
-            <sizehint height="var(hb-param-text-height-primary)" type="MAXIMUM" width="49.7un"/>
         </widget>
         <widget name="placeLabel" type="HbLabel">
             <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
         </widget>
-        <widget name="dateLabel" type="HbLabel">
-            <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+        <widget name="clockWidget" plugin="clockwidgetplugin" type="ClockWidget">
+            <sizehint height="31.9un" type="PREFERRED" width="31.9un"/>
         </widget>
     </section>
-    <metadata activeUIState="portrait" display="NHD portrait" unit="un">
+    <metadata activeUIState="landscape" display="NHD landscape" unit="un">
         <uistate name="Common ui state" sections="#common"/>
         <uistate name="portrait" sections="#common portrait"/>
         <uistate name="landscape" sections="#common landscape"/>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/data/xml/clockworldview.docml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="0.9">
+    <object name="alarmsAction" type="HbAction">
+        <icon iconName="qtg_mono_alarm" name="icon"/>
+    </object>
+    <object name="worldClockAction" type="HbAction">
+        <icon iconName="qtg_mono_world_clock" name="icon"/>
+    </object>
+    <object name="addCityAction" type="HbAction">
+        <icon iconName="qtg_mono_addcity" name="icon"/>
+    </object>
+    <widget name="worldClockView" type="HbView">
+        <widget name="worldClockViewWidget" role="HbView:widget" type="HbWidget">
+            <widget name="subtitleGroupBox" type="HbGroupBox">
+                <real name="z" value="1"/>
+                <bool name="collapsable" value="FALSE"/>
+                <string locid="txt_clock_subhead_world_clock" name="heading" value="World clock"/>
+            </widget>
+            <widget name="worldClockCityListView" type="HbListView">
+                <widget name="listItemPrototype" role="HbListView:prototype" type="HbListViewItem">
+                    <string name="state" value="normal"/>
+                </widget>
+                <real name="z" value="2"/>
+                <sizehint height="47.7612un" type="PREFERRED" width="35.8209un"/>
+            </widget>
+            <widget name="homeCityWidget" type="HbWidget">
+                <real name="z" value="3"/>
+                <sizehint height="47.7612un" type="PREFERRED" width="35.8209un"/>
+            </widget>
+            <layout type="anchor">
+                <anchoritem dst="worldClockCityListView" dstEdge="LEFT" spacing="4.47761un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="BOTTOM" spacing="-11.35075un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="homeCityWidget" dstEdge="RIGHT" spacing="0.74627un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="BOTTOM" spacing="-5.67911un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+            </layout>
+        </widget>
+        <widget name="viewToolbar" role="HbView:toolBar" type="HbToolBar">
+            <enums name="orientation" value="Horizontal"/>
+            <ref object="alarmsAction" role="HbToolBar:addAction"/>
+            <ref object="worldClockAction" role="HbToolBar:addAction"/>
+            <ref object="addCityAction" role="HbToolBar:addAction"/>
+        </widget>
+        <widget name="viewMenu" role="HbView:menu" type="HbMenu"/>
+        <string locid="txt_common_common_clock" name="title" value="Clock"/>
+    </widget>
+    <section name="portrait-homecity">
+        <widget name="worldClockViewWidget" role="HbView:widget" type="HbWidget">
+            <layout type="anchor">
+                <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="TOP" spacing="0un" src="homeCityWidget" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="homeCityWidget" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="homeCityWidget" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="BOTTOM" spacing="expr(var(hb-param-margin-gene-top) + var(hb-param-text-height-tiny) + var(hb-param-margin-gene-middle-vertical) +  var(hb-param-text-height-primary) + var(hb-param-margin-gene-bottom))" src="homeCityWidget" srcEdge="TOP"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="portrait-nohomecity">
+        <widget name="worldClockViewWidget" role="HbView:widget" type="HbWidget">
+            <layout type="anchor">
+                <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                <anchoritem dst="homeCityWidget" dstEdge="RIGHT" spacing="0.74627un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="BOTTOM" spacing="-5.67911un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="landscape-nohomecity">
+        <widget name="worldClockViewWidget" role="HbView:widget" type="HbWidget">
+            <layout type="anchor">
+                <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                <anchoritem dst="homeCityWidget" dstEdge="RIGHT" spacing="0.74627un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="BOTTOM" spacing="-5.67911un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="landscape-homecity">
+        <widget name="worldClockViewWidget" role="HbView:widget" type="HbWidget">
+            <layout type="anchor">
+                <anchoritem dst="subtitleGroupBox" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="subtitleGroupBox" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="TOP" spacing="0un" src="homeCityWidget" srcEdge="BOTTOM"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="worldClockCityListView" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+                <anchoritem dst="homeCityWidget" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="TOP" spacing="0un" src="subtitleGroupBox" srcEdge="BOTTOM"/>
+                <anchoritem dst="homeCityWidget" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="homeCityWidget" dstEdge="BOTTOM" spacing="12un" src="homeCityWidget" srcEdge="TOP"/>
+            </layout>
+        </widget>
+    </section>
+    <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+        <uistate name="portrait" sections="#common portrait-nohomecity"/>
+        <uistate name="landscape" sections="#common landscape-nohomecity"/>
+        <uistate name="portrait-homecity" sections="#common portrait-homecity"/>
+        <uistate name="landscape-homecity" sections="#common landscape-homecity"/>
+        <dummydata objectName="worldClockCityListView" section="#common" value="app_list_template5"/>
+    </metadata>
+</hbdocument>
--- a/clock/clockui/clockviews/inc/clockalarmlistitemprototype.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/inc/clockalarmlistitemprototype.h	Tue May 18 13:16:49 2010 +0100
@@ -21,7 +21,8 @@
 
 // System includes
 #include <QGraphicsWidget>
-#include <HbListViewItem.h>
+#include <QPointer>
+#include <hblistviewitem.h>
 
 // Forward declarations
 class QGraphicsItem;
@@ -48,7 +49,7 @@
 private:
 	QGraphicsItem *mParent;
 
-	HbPushButton *malarmIconItem;
+	QPointer<HbPushButton> malarmIconItem;
 };
 
 #endif // CLOCKALARMLISTITEMPROTOTYPE_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/inc/clockhomecityitem.h	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: Header file for ClockHomeCityItem Itemclass
+ *
+ */
+
+#ifndef CLOCKHOMECITYITEM_H
+#define CLOCKHOMECITYITEM_H
+
+// System includes
+#include <QPointer>
+#include <HbWidget>
+
+// User include.
+#include "clockviewsdefines.h"
+
+// Forward declaration
+class QGraphicsItem;
+class HbTextItem;
+class HbIconItem;
+
+class ClockHomeCityItem : public HbWidget
+{
+	Q_OBJECT
+
+public:
+	enum {
+		DayNightIndicator,
+		Date,
+		City,
+		Dst,
+		Time
+	};
+
+public:
+	CLOCKVIEWS_EXPORT ClockHomeCityItem(QGraphicsItem *parent = 0);
+	CLOCKVIEWS_EXPORT ~ClockHomeCityItem();
+
+public:
+	void setHomeCityItemData(const QVariantMap & itemData);
+
+private:
+	QPointer<HbTextItem> mDateText;
+	QPointer<HbTextItem> mCityText;
+	QPointer<HbTextItem> mTimeText;
+	QPointer<HbIconItem> mDayNightIcon;
+	QPointer<HbIconItem> mDstIcon;
+
+};
+
+#endif // CLOCKHOMECITYITEM_H
+
+// End of file	--Don't remove this.
--- a/clock/clockui/clockviews/inc/clockmainview.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/inc/clockmainview.h	Tue May 18 13:16:49 2010 +0100
@@ -38,8 +38,8 @@
 class AlarmClient;
 class TimezoneClient;
 class SettingsUtility;
-class SkinnableClock;
 class ClockAlarmListModel;
+class ClockWidget;
 
 class ClockMainView : public HbView
 {
@@ -52,11 +52,10 @@
 public:
 	CLOCKVIEWS_EXPORT void setupView(
 			ClockAppControllerIf &controllerIf, ClockDocLoader *docLoader);
-
-public slots:
-	void handleAlarmStatusChanged(int row);
+	CLOCKVIEWS_EXPORT void setupAfterViewReady();
 
 private slots:
+	void handleAlarmStatusChanged(int row);
 	void refreshMainView();
 	void displayWorldClockView();
 	void addNewAlarm();
@@ -64,15 +63,19 @@
 	void handleActivated(const QModelIndex &index);
 	void handleLongPress(HbAbstractViewItem *item, const QPointF &coords);
 	void deleteAlarm();
-	void updateDateLabel();
-	void updatePlaceLabel();
-	void updateClockWidget();
+	void updateView();
+	void updatePlaceLabel(int autoTimeUpdate = -1);
 	void handleAlarmListDisplay();
 	void checkOrientationAndLoadSection(Qt::Orientation orientation);
+	void selectedMenuAction(HbAction *action);
+	void handleMenuClosed();
 
 private:
 	void setmodel();
 	void hideAlarmList(bool show);
+	void removeSnoozedAlarm();
+	void updateDateLabel();
+	void updateClockWidget();
 
 private:
 	QTimer *mTickTimer;
@@ -81,10 +84,11 @@
 	HbAction *mDisplayWorldClockView;
 	HbAction *mAddNewAlarm;
 	HbAction *mSettingsAction;
+	HbAction *mDeleteAction;
 
 	HbLabel *mDayLabel;
 	HbLabel *mPlaceLabel;
-	SkinnableClock *mClockWidget;
+	ClockWidget *mClockWidget;
 	HbLabel *mNoAlarmLabel;
 	HbListView *mAlarmList;
 
@@ -97,6 +101,7 @@
 
 	int mSelectedItem;
 	bool mHideAlarmList;
+	bool mIsLongTop;
 };
 
 #endif // CLOCKMAINVIEW_H
--- a/clock/clockui/clockviews/inc/clockworldview.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/inc/clockworldview.h	Tue May 18 13:16:49 2010 +0100
@@ -32,8 +32,6 @@
 class QGraphicsItem;
 class QStandardItemModel;
 class QTimer;
-class HbLabel;
-class HbPushButton;
 class HbListView;
 class HbListWidgetItem;
 class HbAbstractViewItem;
@@ -42,6 +40,8 @@
 class TimezoneClient;
 class SettingsUtility;
 class ClockCitySelectionList;
+class HbGroupBox;
+class ClockHomeCityItem;
 
 class ClockWorldView : public HbView
 {
@@ -57,22 +57,24 @@
 
 private slots:
 	void refreshCityList();
-	void updateClockDisplay();
-	void updateDayDateInfo();
-	void updateCurrentLocationInfo();
+	void updateCurrentLocationInfo(int networkTime);
 	void handleItemLongPressed(HbAbstractViewItem *item, const QPointF &coord);
 	void handleAddLocation();
 	void handleDeleteAction();
 	void handleSetAsCurrentLocationAction();
 	void handleCitySelected(LocationInfo info);
 	void showAlarmsView();
-	void updateOffsetDifferences();
 	void refreshWorldView();
-	void updateToolbarTexts(Qt::Orientation currentOrientation);
+	void loadSection(Qt::Orientation orientation);
+	void updateAllLocationInfo();
+	void selectedMenuAction(HbAction *action);
 
 private:
 	QModelIndex addCityToList(const LocationInfo& locationInfo);
 	bool isDay(QDateTime dateTime);
+	QVariantList getCityListDisplayString(const LocationInfo& locationInfo);
+	QVariantList getCityListDecorationString(const LocationInfo& locationInfo);
+	void updateCityList();
 
 private:
 	QTimer *mRefreshTimer;
@@ -80,14 +82,14 @@
 	QStandardItemModel *mCityListModel;
 
 	QPointer<HbListView> mCityListView;
-	HbLabel *mDayDateLabel;
-	HbLabel *mPlaceLabel;
+	ClockHomeCityItem *mHomeCityWidget;
 	HbAction *mAddCityAction;
 	HbAction *mSetCurrentLocationAction;
 	HbAction *mRemoveCityAction;
 	HbAction *mBackAction;
 	HbAction *mShowAlarmsViewAction;
 	HbAction *mDisplayWorldClockView;
+	HbAction *mAddCityMenuAction;
 
 	ClockDocLoader *mDocLoader;
 	ClockAppControllerIf *mAppControllerIf;
--- a/clock/clockui/clockviews/inc/listitemprototype.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Header file for class ListItemPrototype.
-*
-*/
-
-#ifndef LISTITEMPROTOTYPE_H
-#define LISTITEMPROTOTYPE_H
-
-// System includes
-#include <HbListViewItem>
-
-// Forward declarations
-class QGraphicsItem;
-class HbIconItem;
-class HbAbstractViewItem;
-class HbTextItem;
-
-class ListItemPrototype : public HbListViewItem
-{
-	Q_OBJECT
-
-public:
-	explicit ListItemPrototype(QGraphicsItem *parent = 0);
-	virtual ~ListItemPrototype();
-
-public:
-	HbAbstractViewItem* createItem();
-	void updateChildItems();
-
-private:
-	HbIconItem *mDayNightIcon;
-	HbTextItem *mDateText;
-	HbTextItem *mCityText;
-	HbTextItem *mOffsetText;
-	HbIconItem *mDstIcon;
-	HbTextItem *mTimeText;
-};
-
-#endif // LISTITEMPROTOTYPE_H
-
-// End of file	--Don't remove this.
--- a/clock/clockui/clockviews/src/clockalarmlistitemprototype.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/src/clockalarmlistitemprototype.cpp	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 */
 
 // System includes
-#include <QDebug>
 #include <HbPushButton>
 
 // User includes
@@ -37,9 +36,7 @@
 	\parent of type QGraphicsItem.
  */
 ClockAlarmListItemPrototype::ClockAlarmListItemPrototype(QGraphicsItem *parent)
-:HbListViewItem(parent),
- mParent(parent),
- malarmIconItem(0)
+:HbListViewItem(parent)
 {
 	// Nothing yet.
 }
@@ -68,19 +65,11 @@
 			QString alarmIconPath = alarmIconRole.toString();
 			if (!malarmIconItem) {
 				malarmIconItem = new HbPushButton(this);
-				HbStyle::setItemName(malarmIconItem,
-				                     QLatin1String("alarmIconItem"));
+				HbStyle::setItemName(
+						malarmIconItem, QLatin1String("alarmIconItem"));
 				connect(
 						malarmIconItem, SIGNAL(clicked()),
 						this, SLOT(handleAlarmStatusChanged()));
-				if (mParent) {
-					connect(
-							this,
-							SIGNAL(alarmStatusHasChanged(int)),
-							qobject_cast<ClockMainView*>(
-									static_cast<QGraphicsWidget*>(mParent)),
-							SLOT(handleAlarmStatusChanged(int)));
-				}
 			}
 			malarmIconItem->setIcon(alarmIconPath);
 		}
@@ -94,7 +83,7 @@
  */
 ClockAlarmListItemPrototype *ClockAlarmListItemPrototype::createItem()
 {
-	return new ClockAlarmListItemPrototype(mParent);
+	return new ClockAlarmListItemPrototype(*this);
 }
 
 /*!
@@ -103,7 +92,8 @@
 void ClockAlarmListItemPrototype::handleAlarmStatusChanged()
 {
 	int row = modelIndex().row();
-	emit alarmStatusHasChanged(row);
+	emit static_cast<ClockAlarmListItemPrototype*>(
+			prototype())->alarmStatusHasChanged(row);
 }
 
 // End of file	--Don't remove this.
--- a/clock/clockui/clockviews/src/clockalarmlistmodel.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/src/clockalarmlistmodel.cpp	Tue May 18 13:16:49 2010 +0100
@@ -17,7 +17,6 @@
 */
 
 // System includes
-#include <QDebug>
 #include <QTimer>
 
 #include <QStandardItemModel>
@@ -55,8 +54,6 @@
  mSourceModel(0),
  mAppControllerIf(controllerIf)
 {
-	qDebug() << "clock: ClockAlarmListModel::ClockAlarmListModel -->";
-
 	// Construct the source model.
 	mSourceModel = new QStandardItemModel(0, 1, this);
 	
@@ -74,8 +71,6 @@
 	connect(
 			mTickTimer, SIGNAL(timeout()),
 			this, SLOT(updateRemainingTime()));
-	
-	qDebug() << "clock: ClockAlarmListModel::ClockAlarmListModel <--";
 }
 
 /*!
@@ -83,14 +78,10 @@
  */
 ClockAlarmListModel::~ClockAlarmListModel()
 {
-	qDebug() << "clock: ClockAlarmListModel::~ClockAlarmListModel -->";
-
 	if (mSourceModel) {
 		delete mSourceModel;
 		mSourceModel = 0;
 	}
-
-	qDebug() << "clock: ClockAlarmListModel::~ClockAlarmListModel <--";
 }
 
 /*!
@@ -109,10 +100,6 @@
  */
 QAbstractItemModel *ClockAlarmListModel::sourceModel()
 {
-	qDebug() << "clock: ClockAlarmListModel::sourceModel -->";
-
-	qDebug() << "clock: ClockAlarmListModel::sourceModel <--";
-
 	return mSourceModel;
 }
 
@@ -121,8 +108,6 @@
  */
 void ClockAlarmListModel::populateSourceModel()
 {
-	qDebug() << "clock: ClockAlarmListModel::populateSourceModel -->";
-
 	// Clear the model if it has any data already.
 	mSourceModel->clear();
 	mSourceModel->setColumnCount(1);
@@ -153,7 +138,6 @@
 		// Start the Timer for 1 minute.
 		mTickTimer->start(60000 - 1000 * QTime::currentTime().second());
 	}
-	qDebug() << "clock: ClockAlarmListModel::populateSourceModel <--";
 }
 
 /*!
@@ -163,8 +147,6 @@
  */
 QString ClockAlarmListModel::calculateRemainingTime(AlarmInfo alarmInfo)
 {
-	qDebug() << "clock: ClockAlarmListModel::calculateRemainingTime -->";
-
 	QDateTime currentDateTime = QDateTime::currentDateTime();
 	QDateTime alarmTime = QDateTime(
 			alarmInfo.alarmDateTime, alarmInfo.nextDueTime);
@@ -217,8 +199,6 @@
 		formatTimeNote = hbTrId("txt_clock_main_view_setlabel_in_1days");
 		timeNote = formatTimeNote.arg(QString::number(dayleft));
 	}
-	qDebug() << "clock: ClockAlarmListModel::calculateRemainingTime <--";
-
 	return timeNote;
 }
 
@@ -264,8 +244,6 @@
  */
 void ClockAlarmListModel::updateSourceModel(int alarmId)
 {
-	qDebug() << "clock: ClockAlarmListModel::updateSourceModel -->";
-	
 	Q_UNUSED(alarmId)
 	int alarmInfoCount;
 	int modelCount;
@@ -353,8 +331,6 @@
 			mTickTimer->stop();
 		}
 	}
-
-	qDebug() << "clock: ClockAlarmListModel::updateSourceModel <--";
 }
 
 /*!
@@ -401,8 +377,6 @@
 QStringList ClockAlarmListModel::getDisplayStringListforAlarmItem(
 		AlarmInfo alarmInfo)
 {
-	qDebug() << "clock: ClockAlarmListModel::getDisplayStringforAlarmItem -->";
-	
 	QStringList displayStringList;
 	QString timeString;
 	if (Snoozed == alarmInfo.alarmState) {
@@ -426,7 +400,8 @@
 		QString remainingTime = calculateRemainingTime(alarmInfo);
 		displayStringList.append(remainingTime);
 	} else {
-		displayStringList.append(QString(" "));
+		// TODO: localization
+		displayStringList.append(QString("In-active"));
 	}
 
 	QString alarmDescription = alarmInfo.alarmDesc;
@@ -453,9 +428,6 @@
 		}
 	}
 	displayStringList.append(repeatTypeString);
-	
-	qDebug() << "clock: ClockAlarmListModel::getDisplayStringforAlarmItem <--";
-	
 	return displayStringList;
 }
 
@@ -479,22 +451,21 @@
 		if (Weekly == alarmInfo.repeatType ||
 				Daily == alarmInfo.repeatType ||
 				Workday == alarmInfo.repeatType) {
-			displayiconList.append(HbIcon(":/clock/alarm_repeat"));
+			displayiconList.append(HbIcon("qtg_mono_repeat"));
 		} else {
 			displayiconList.append(QVariant());
 		}
 		item->setData(displayiconList, Qt::DecorationRole);
 		
-		// The status.
-		if (Enabled == alarmInfo.alarmStatus) {
-			item->setData(QString(":/clock/alarm_active"), AlarmIcon);
+
+		// Set the icon for active/in-active/snoozed alarm.
+		if (Disabled == alarmInfo.alarmStatus) {
+			item->setData(QString("qtg_mono_alarm_inactive"), AlarmIcon);
+		} else if (Snoozed == alarmInfo.alarmState) {
+			// Change the alarm icon also to alarm snooze icon
+			item->setData(QString("qtg_mono_alarm_snooze"), AlarmIcon);
 		} else {
-			item->setData(QString(":/clock/alarm_inactive"), AlarmIcon);
-		}
-
-		// If the alarm is snoozed.
-		if (Snoozed == alarmInfo.alarmState) {
-			// TODO : Change the alarm icon also to alarm snooze icon
+			item->setData(QString("qtg_mono_alarm"), AlarmIcon);
 		}
 
 		// The model for the list item will have:
@@ -534,24 +505,23 @@
 		if (Weekly == alarmInfo.repeatType ||
 				Daily == alarmInfo.repeatType ||
 				Workday == alarmInfo.repeatType) {
-			displayiconList.append(HbIcon(":/clock/alarm_repeat"));
+			displayiconList.append(HbIcon("qtg_mono_repeat"));
 		} else {
 			displayiconList.append(QVariant());
 		}
 		mSourceModel->setData(
 				modelIndex, displayiconList, Qt::DecorationRole);
-		// The status.
-		if (Enabled == alarmInfo.alarmStatus) {
-			mSourceModel->setData(
-					modelIndex, QString(":/clock/alarm_active"), AlarmIcon);
+		
+		// Set the icon for active/in-active/snoozed alarm.
+		if (Disabled == alarmInfo.alarmStatus) {
+			mSourceModel->setData(modelIndex, 
+			    QString("qtg_mono_alarm_inactive"), AlarmIcon);
+		} else if (Snoozed == alarmInfo.alarmState) {
+			// Change the alarm icon also to alarm snooze icon
+			mSourceModel->setData(modelIndex, 
+			    QString("qtg_mono_alarm_snooze"), AlarmIcon);
 		} else {
-			mSourceModel->setData(
-					modelIndex, QString(":/clock/alarm_inactive"), AlarmIcon);
-		}
-
-		// If the alarm is snoozed.
-		if (Snoozed == alarmInfo.alarmState) {
-			// TODO : Change the alarm icon also to alarm snooze icon
+			mSourceModel->setData(modelIndex, QString("qtg_mono_alarm"), AlarmIcon);
 		}
 
 		// The model for the list item will have:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockviews/src/clockhomecityitem.cpp	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,124 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+* Definition file for class ClockHomeCityItem.
+*
+*/
+
+// System Includes.
+#include <QVariantMap>
+#include <HbStyleLoader>
+#include <HbTextItem>
+#include <HbIconItem>
+#include <HbFrameItem>
+#include <HbFrameDrawer>
+
+// User Includes.
+#include "clockhomecityitem.h"
+
+/*!
+	\class ClockHomeCityItem
+
+	This class creates all the primitives for ClockHomeCityItem item.
+ */
+
+/*!
+	Constructor.
+
+	\param parent Pointer to QGraphicsItem.
+ */
+ClockHomeCityItem::ClockHomeCityItem(QGraphicsItem *parent) :
+HbWidget(parent)
+{
+	// Path for widgetml and css files.
+	HbStyleLoader::registerFilePath(":/style/clockhomecityitem.css");
+	HbStyleLoader::registerFilePath(":/style/clockhomecityitem.widgetml");
+	
+	// Set the frame to the homecity widget.
+	HbFrameItem *frame = new HbFrameItem();
+	frame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces);
+	frame->frameDrawer().setFrameGraphicsName("qtg_fr_groupbox");
+	setBackgroundItem(frame->graphicsItem(), -2);
+
+}
+
+/*!
+ Destructor.
+ */
+ClockHomeCityItem::~ClockHomeCityItem()
+{
+	HbStyleLoader::unregisterFilePath(":/style/clockhomecityitem.css");
+	HbStyleLoader::unregisterFilePath(":/style/clockhomecityitem.widgetml");
+}
+
+/*!
+	Sets the data for HomeCity items.
+	To set textitem data use Qt::DisplayRole
+	To set iconitem data use Qt::DecorationRole
+	\param itemData contains the data for all the primitives.
+ */
+void ClockHomeCityItem::setHomeCityItemData(const QVariantMap &itemData)
+{
+	if (!itemData.isEmpty()) {
+		QMapIterator<QString, QVariant> iter(itemData);
+		while (iter.hasNext()) {
+			iter.next();
+			int value = iter.key().toInt();
+			switch(value) {
+				case Date:
+					if (!mDateText) {
+						mDateText = new HbTextItem(this);
+						HbStyle::setItemName(mDateText, "dateText");
+					}
+					mDateText->setText(iter.value().toString());
+					break;
+				case City:
+					if (!mCityText) {
+						mCityText = new HbTextItem(this);
+						HbStyle::setItemName(mCityText, "cityText");
+						mCityText->setTextWrapping(Hb::TextNoWrap);
+					}
+					mCityText->setText(iter.value().toString());
+					break;
+				case Time:
+					if (!mTimeText) {
+						mTimeText = new HbTextItem(this);
+						HbStyle::setItemName(mTimeText, "timeText");
+						mTimeText->setTextWrapping(Hb::TextNoWrap);
+					}
+					mTimeText->setText(iter.value().toString());
+					break;
+				case DayNightIndicator:
+					if (!mDayNightIcon) {
+						mDayNightIcon = new HbIconItem(this);
+						HbStyle::setItemName(mDayNightIcon, "dayNightIcon");
+					}
+					mDayNightIcon->setIconName(iter.value().toString());
+					break;
+				case Dst:
+					if (!mDstIcon) {
+						mDstIcon = new HbIconItem(this);
+						HbStyle::setItemName(mDstIcon, "dstIcon");
+					}
+					mDstIcon->setIconName(iter.value().toString());
+					break;
+				default:
+					break;
+			}
+		}
+		repolish();
+	}
+}
+
+// End of file	--Don't remove this.
--- a/clock/clockui/clockviews/src/clockmainview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/src/clockmainview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -18,7 +18,6 @@
 
 // System includes
 #include <QGraphicsItem>
-#include <QDebug>
 #include <HbInstance>
 #include <HbLabel>
 #include <HbAbstractViewItem>
@@ -39,8 +38,8 @@
 #include "settingsutility.h"
 #include "timezoneclient.h"
 #include "clockalarmlistitemprototype.h"
-#include "skinnableclock.h"
 #include "clockalarmlistmodel.h"
+#include "clockwidget.h"
 
 /*!
 	\class ClockMainView
@@ -56,11 +55,10 @@
 ClockMainView::ClockMainView(QGraphicsItem *parent)
 :HbView(parent),
  mAlarmList(0),
- mSelectedItem(-1)
+ mSelectedItem(-1),
+ mIsLongTop(false)
 {
-	qDebug("clock: ClockMainView::ClockMainView() -->");
-
-	qDebug("clock: ClockMainView::ClockMainView() <--");
+	// Nothing yet.
 }
 
 /*!
@@ -68,8 +66,6 @@
  */
 ClockMainView::~ClockMainView()
 {
-	qDebug("clock: ClockMainView::~ClockMainView() -->");
-
 	if (mDocLoader) {
 		delete mDocLoader;
 		mDocLoader = 0;
@@ -78,8 +74,11 @@
 		delete mAlarmListModel;
 		mAlarmListModel = 0;
 	}
+	HbStyleLoader::unregisterFilePath(
+			":/style/clockalarmlistitemprototype.css");
+	HbStyleLoader::unregisterFilePath(
+			":/style/clockalarmlistitemprototype.widgetml");
 
-	qDebug("clock: ClockMainView::~ClockMainView() <--");
 }
 
 /*!
@@ -92,8 +91,6 @@
 void ClockMainView::setupView(
 		ClockAppControllerIf &controllerIf, ClockDocLoader *docLoader)
 {
-	qDebug("clock: ClockMainView::setupView() -->");
-
 	mDocLoader = docLoader;
 	mAppControllerIf = &controllerIf;
 
@@ -121,17 +118,6 @@
 	}
 	int alarmCount = displayInfoList.count();
 
-
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updatePlaceLabel()));
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateDateLabel()));
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateClockWidget()));
-
 	HbMainWindow *window = hbInstance->allMainWindows().first();
 
 	bool loadSuccess = false;
@@ -155,7 +141,9 @@
 			this,
 			SLOT(handleLongPress(HbAbstractViewItem*, const QPointF&)));
 
-	HbStyleLoader::registerFilePath(CLOCK_VIEWS_STYLE_PATH);
+	HbStyleLoader::registerFilePath(":/style/clockalarmlistitemprototype.css");
+	HbStyleLoader::registerFilePath(
+			":/style/clockalarmlistitemprototype.widgetml");
 	setmodel();
 
 	// Load the correct section based on orientation.
@@ -179,6 +167,36 @@
 		}
 	}
 
+	mDayLabel = static_cast<HbLabel *> (
+			mDocLoader->findObject("dateLabel"));
+
+	mPlaceLabel = static_cast<HbLabel *> (
+			mDocLoader->findObject("placeLabel"));
+
+	
+
+	mClockWidget = static_cast<ClockWidget*> (
+			mDocLoader->findObject(CLOCK_WIDGET));
+
+	// Update the date info.
+	updateDateLabel();
+	// Update the place info.
+	updatePlaceLabel(mTimezoneClient->timeUpdateOn());
+	// Update clock widget display.
+	updateClockWidget();
+
+	// Connect to orientation change and load appropriate section.
+	connect(
+			window, SIGNAL(orientationChanged(Qt::Orientation)),
+			this, SLOT(checkOrientationAndLoadSection(Qt::Orientation)));
+}
+
+/*!
+	To defer the connects and initialization. To be done after the view is drawn.
+	Should be called in the slot of view ready.
+ */
+void ClockMainView::setupAfterViewReady()
+{
 	// Get the toolbar/menu actions.
 	mRefreshMainView = static_cast<HbAction *> (
 			mDocLoader->findObject("alarmsAction"));
@@ -202,48 +220,23 @@
 			mAddNewAlarm, SIGNAL(triggered()),
 			this, SLOT(addNewAlarm()));
 
-	if (Qt::Vertical == currentOrienation) {
-		// Remove toolbar item's texts as only icons are shown.
-		// TODO to use text ids from ts file.
-		mRefreshMainView->setText(tr(""));
-		mDisplayWorldClockView->setText(tr(""));
-		mAddNewAlarm->setText("");
-	} else if (Qt::Horizontal == currentOrienation) {
-		// Display toolbar item's texts
-		// TODO to use text ids from ts file.
-		mRefreshMainView->setText(tr("Alarms"));
-		mDisplayWorldClockView->setText(tr("World clock"));
-		mAddNewAlarm->setText("New alarm");
-	}
-
 	mSettingsAction = static_cast<HbAction *> (
 			mDocLoader->findObject("settingsAction"));
 	connect(
 			mSettingsAction, SIGNAL(triggered()),
 			this, SLOT(openSettings()));
 
-	mDayLabel = static_cast<HbLabel *> (
-			mDocLoader->findObject("dateLabel"));
-
-	mPlaceLabel = static_cast<HbLabel *> (
-			mDocLoader->findObject("placeLabel"));
-
-	mClockWidget = static_cast<SkinnableClock *> (
-			mDocLoader->findObject("clockWidget"));
-
-	// Update the date info.
-	updateDateLabel();
-	// Update the place info.
-	updatePlaceLabel();
-	// Update clock widget display.
-	updateClockWidget();
-
-	// Connect to orientation change and load appropriate section.
+	// Connect the necessary timezone client call backs.
+	connect(
+			mTimezoneClient, SIGNAL(timechanged()),
+			this, SLOT(updateView()));
 	connect(
-			window, SIGNAL(orientationChanged(Qt::Orientation)),
-			this, SLOT(checkOrientationAndLoadSection(Qt::Orientation)));
-
-	qDebug("clock: ClockMainView::setupView() <--");
+			mTimezoneClient, SIGNAL(autoTimeUpdateChanged(int)),
+			this, SLOT(updatePlaceLabel(int)));
+	connect(
+			mTimezoneClient, SIGNAL(cityUpdated()),
+			this, SLOT(updatePlaceLabel()));
+	
 }
 
 /*!
@@ -254,13 +247,15 @@
  */
 void ClockMainView::handleAlarmStatusChanged(int row)
 {
-	qDebug() << "clock: ClockMainView::handleAlarmStatusChanged -->";
+	AlarmInfo alarmInfo;
 
 	// Get the data for the alarm.
 	QList<QVariant> alarmData =
 			mAlarmListModel->sourceModel()->index(row, 0).data(
 					AlarmDetails).toList();
-	int alarmStatus = alarmData.at(2).value<int>();
+	int alarmId = alarmData.at(0).value<int>();
+
+	mAlarmClient->getAlarmInfo(alarmId, alarmInfo);
 
 	mSelectedItem = row;
 
@@ -272,19 +267,27 @@
 		QString displayNote;
 		// Activate or deactivate the alarm depending on the alarm status.
 		// Display the NotificationDialog with appropriate message.
-		if (!alarmStatus) {
+		if (Snoozed == alarmInfo.alarmState && Enabled == alarmInfo.alarmStatus
+				&& Once != alarmInfo.repeatType) {
+			removeSnoozedAlarm();
+			displayNote.append(tr("Snoozed alarm removed"));
+		}else if (Enabled == alarmInfo.alarmStatus) {
 			mAlarmClient->toggleAlarmStatus(alarmId, Disabled);
-			displayNote.append(hbTrId("txt_clock_main_view_dpopinfo_alarm_deactivated"));
-			HbNotificationDialog::launchDialog(displayNote);
+			displayNote.append(
+			    hbTrId("txt_clock_main_view_dpopinfo_alarm_deactivated"));
 		} else {
 			mAlarmClient->toggleAlarmStatus(alarmId, Enabled);
-			displayNote.append(hbTrId("txt_clock_main_view_dpopinfo_alarm_activated"));
-			HbNotificationDialog::launchDialog(displayNote);
+			displayNote.append(
+			    hbTrId("txt_clock_main_view_dpopinfo_alarm_activated"));
 		}
+
+		HbNotificationDialog *dialog = new HbNotificationDialog();
+		dialog->setTitle(displayNote);
+		dialog->setTimeout(HbPopup::ConfirmationNoteTimeout);
+		dialog->show();
+
 		mSelectedItem = -1;
 	}
-
-	qDebug() << "clock: ClockMainView::handleAlarmStatusChanged <--";
 }
 
 /*!
@@ -293,10 +296,8 @@
  */
 void ClockMainView::refreshMainView()
 {
-	qDebug() << "clock: ClockMainView::refreshMainView -->";
 	mRefreshMainView->setChecked(true);
 
-	qDebug() << "clock: ClockMainView::refreshMainView <--";
 }
 
 /*!
@@ -305,11 +306,8 @@
  */
 void ClockMainView::displayWorldClockView()
 {
-	qDebug() << "clock: ClockMainView::displayWorldClockView -->";
-
 	mAppControllerIf->switchToView(WorldClock);
 
-	qDebug() << "clock: ClockMainView::displayWorldClockView <--";
 }
 
 /*!
@@ -318,16 +316,8 @@
  */
 void ClockMainView::addNewAlarm()
 {
-	qDebug() << "clock: ClockMainView::addNewAlarm -->";
-
-	ClockAlarmEditor *alarmEditor = new ClockAlarmEditor();
+	ClockAlarmEditor *alarmEditor = new ClockAlarmEditor(*mAlarmClient);
 	alarmEditor->showAlarmEditor();
-
-	connect(
-			alarmEditor, SIGNAL(alarmSet()),
-			this, SLOT(handleAlarmSet()));
-
-	qDebug() << "clock: ClockMainView::addNewAlarm <--";
 }
 
 /*!
@@ -336,13 +326,9 @@
  */
 void ClockMainView::openSettings()
 {
-	qDebug() << "clock: ClockMainView::openSettings -->";
-
 	// Create the settings view.
 	ClockSettingsView *settingsView = new ClockSettingsView(this);
 	settingsView->loadSettingsView();
-
-	qDebug() << "clock: ClockMainView::openSettings <--";
 }
 
 /*!
@@ -352,23 +338,18 @@
  */
 void ClockMainView::handleActivated(const QModelIndex &index)
 {
-	qDebug() << "clock: ClockMainView::handleActivated -->";
-
-	// Get the data for the alarm.
-	int row = index.row();
-	QList<QVariant> alarmData =
-			mAlarmListModel->sourceModel()->index(row, 0).data(
-					AlarmDetails).toList();
-	int alarmId = alarmData.at(0).value<int>();
+	if(!mIsLongTop) {// Get the data for the alarm.
+		int row = index.row();
+		QList<QVariant> alarmData =
+				mAlarmListModel->sourceModel()->index(row, 0).data(
+						AlarmDetails).toList();
+		int alarmId = alarmData.at(0).value<int>();
 
-	// Construct the alarm editor.
-	ClockAlarmEditor *alarmEditor = new ClockAlarmEditor(alarmId);
-	alarmEditor->showAlarmEditor();
-	connect(
-			alarmEditor, SIGNAL(alarmSet()),
-			this, SLOT(handleAlarmSet()));
-
-	qDebug() << "clock: ClockMainView::handleActivated <--";
+		// Construct the alarm editor.
+		ClockAlarmEditor *alarmEditor = new ClockAlarmEditor(
+				*mAlarmClient, alarmId);
+		alarmEditor->showAlarmEditor();
+	}
 }
 
 /*!
@@ -381,8 +362,7 @@
 void ClockMainView::handleLongPress(
 		HbAbstractViewItem *item, const QPointF &coords)
 {
-	qDebug() << "clock: ClockMainView::handleLongPress -->";
-
+	mIsLongTop = true;
 	AlarmInfo alarmInfo;
 
 	// Save the item row number where the long press was made.
@@ -398,16 +378,17 @@
 
 	// On long press we display item specific context menu.
 	HbMenu *itemContextMenu = new HbMenu();
+	connect(
+			itemContextMenu,SIGNAL(aboutToClose()),
+			this, SLOT(handleMenuClosed()));
 
 	// Add the delete action to the context menu.
-	HbAction *deleteAction = itemContextMenu->addAction(
-	    hbTrId("txt_clk_main_view_menu_delete_alarm"));
-	connect(deleteAction, SIGNAL(triggered()), this, SLOT(deleteAlarm()));
+	mDeleteAction = itemContextMenu->addAction(
+			hbTrId("txt_clk_main_view_menu_delete_alarm"));
 
 	// Show the menu.
-	itemContextMenu->exec(coords);
-
-	qDebug() << "clock: ClockMainView::handleLongPress <--";
+	itemContextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	itemContextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -416,8 +397,6 @@
  */
 void ClockMainView::deleteAlarm()
 {
-	qDebug() << "clock: ClockMainView::deleteAlarm -->";
-
 	if (-1 < mSelectedItem) {
 		// Get the data for the alarm.
 		QList<QVariant> alarmData = mAlarmListModel->sourceModel()->
@@ -426,41 +405,44 @@
 		mAlarmClient->deleteAlarm(alarmId);
 		mSelectedItem = -1;
 	}
-
-	qDebug() << "clock: ClockMainView::deleteAlarm <--";
 }
 
 /*!
-	Updates the day and date in the day label.
+	Deltes the snoozed alarm.
  */
-void ClockMainView::updateDateLabel()
+void ClockMainView::removeSnoozedAlarm()
 {
-	qDebug() << "clock: ClockMainView::updateDateLabel -->";
+	if (-1 < mSelectedItem) {
+		// Get the data for the alarm.
+		QList<QVariant> alarmData = mAlarmListModel->sourceModel()->
+		index(mSelectedItem, 0).data(AlarmDetails).toList();
+		int alarmId = alarmData.at(0).value<int>();
+		mAlarmClient->deleteSnoozedAlarm(alarmId);
+		mSelectedItem = -1;
+	}
+}
 
-	// Get the current datetime.
-	QDateTime dateTime = QDateTime::currentDateTime();
-	// Get the day name.
-	QString dayName = dateTime.toString("dddd");
-	// Get the date in correct format.
-	QString currentDate = mSettingsUtility->date();
-	// Construct the day + date string.
-	QString dayDateString;
-	dayDateString+= dayName;
-	dayDateString += " ";
-	dayDateString += currentDate;
-
-	mDayLabel->setPlainText(dayDateString);
-
-	qDebug() << "clock: ClockMainView::updateDateLabel <--";
+void ClockMainView::updateView()
+{
+	// Update the place label.
+	updatePlaceLabel(mTimezoneClient->timeUpdateOn());
+	// Update date label.
+	updateDateLabel();
+	// Update clock widget.
+	updateClockWidget();
 }
 
 /*!
-	Updates the zone info in the place label.
+	Slot which gets called for value change in auto time update in cenrep.
+
+	\param autoTimeUpdate Value of auto time update.
  */
-void ClockMainView::updatePlaceLabel()
+void ClockMainView::updatePlaceLabel(int autoTimeUpdate)
 {
-	qDebug() << "clock: MainViewWidget::updateClockZoneInfo -->";
-
+	if (-1 == autoTimeUpdate) {
+		autoTimeUpdate = mTimezoneClient->timeUpdateOn();
+	}
+	
 	// Get the current zone info.
 	LocationInfo currentZoneInfo = mTimezoneClient->getCurrentZoneInfoL();
 
@@ -498,13 +480,13 @@
 	} else {
 		gmtOffset += QString::number(offsetInMinutes);
 	}
-	
+
 	// Append space.
 	gmtOffset += tr(" ");
-	
+
 	// Append GMT sting.
 	gmtOffset += hbTrId("txt_common_common_gmt");
-	
+
 	// Append space.
 	gmtOffset += tr(" ");
 
@@ -515,7 +497,7 @@
 
 	// Update the labels with the correct info.
 	mPlaceLabel->clear();
-	if (mTimezoneClient->timeUpdateOn()) {
+	if(autoTimeUpdate) {
 		mPlaceLabel->setPlainText(
 				currentZoneInfo.countryName + tr(" ") + gmtOffset);
 	} else {
@@ -523,20 +505,6 @@
 				currentZoneInfo.cityName + tr(", ")
 				+ currentZoneInfo.countryName + tr(" ") + gmtOffset);
 	}
-
-	qDebug() << "clock: MainViewWidget::updateDayDateInfo <--";
-}
-
-/*!
-	Updates the clock widget display.
- */
-void ClockMainView::updateClockWidget()
-{
-	qDebug() << "clock: ClockMainView::updateClockWidget -->";
-
-	mClockWidget->updateDisplay(true);
-
-	qDebug() << "clock: ClockMainView::updateClockWidget <--";
 }
 
 /*!
@@ -544,8 +512,6 @@
  */
 void ClockMainView::handleAlarmListDisplay()
 {
-	qDebug() << "clock: ClockMainView::handleAlarmListDisplay -->";
-
 	// Get the list of pending clock alarms from server.
 	QList<AlarmInfo> alarmInfoList;
 	QList<AlarmInfo> displayInfoList;
@@ -567,48 +533,6 @@
 		}
 	}
 
-	qDebug() << "clock: ClockMainView::handleAlarmListDisplay <--";
-}
-
-/*!
-	Sets the model to the alarm list.
- */
-void ClockMainView::setmodel()
-{
-	qDebug() << "clock: ClockMainView::setmodel -->";
-
-	// Set the model.
-	if (mAlarmList) {
-		mAlarmList->setModel(mAlarmListModel->sourceModel());
-		ClockAlarmListItemPrototype *listItemPrototype =
-				new ClockAlarmListItemPrototype(this);
-		mAlarmList->setItemPrototype(listItemPrototype);
-		mAlarmList->setLayoutName("layout-alarmlist");
-	}
-
-	qDebug() << "clock: ClockMainView::setmodel <--";
-}
-
-/*!
-	Hides the alarmlist in the main view.
-
-	\param hide 'true' if alarm list is to be hidden.
- */
-void ClockMainView::hideAlarmList(bool hide)
-{
-	qDebug() << "clock: ClockMainView::hideAlarmList -->";
-
-	if (hide) {
-		mNoAlarmLabel->show();
-		mAlarmList->hide();
-		mHideAlarmList = true;
-	} else {
-		mAlarmList->show();
-		mNoAlarmLabel->hide();
-		mHideAlarmList = false;
-	}
-
-	qDebug() << "clock: ClockMainView::hideAlarmList <--";
 }
 
 /*!
@@ -619,31 +543,16 @@
 void ClockMainView::checkOrientationAndLoadSection(
 		Qt::Orientation orientation)
 {
-	qDebug() << "clock: ClockMainView::checkOrientationAndLoadSection -->";
-
 	bool success;
 	// If horizontal, load the landscape section.
 	if (Qt::Horizontal == orientation) {
 		mDocLoader->load(
 				CLOCK_MAIN_VIEW_DOCML, CLOCK_MAIN_VIEW_LANDSCAPE_SECTION,
 				&success);
-
-		// Display toolbar item's texts
-		// TODO have to use text ids from ts file.
-		mRefreshMainView->setText(tr("Alarms"));
-		mDisplayWorldClockView->setText(tr("World clock"));
-		mAddNewAlarm->setText("New alarm");
-
 	} else {
 		mDocLoader->load(
 				CLOCK_MAIN_VIEW_DOCML, CLOCK_MAIN_VIEW_PORTRAIT_SECTION,
 				&success);
-
-		// Remove toolbar item's texts as only icons are shown.
-		// TODO have to use text ids from ts file.
-		mRefreshMainView->setText(tr(""));
-		mDisplayWorldClockView->setText(tr(""));
-		mAddNewAlarm->setText("");
 	}
 
 	if(success) {
@@ -656,8 +565,96 @@
 			hideAlarmList(false);
 		}
 	}
+}
 
-	qDebug() << "clock: ClockMainView::checkOrientationAndLoadSection <--";
+/*!
+	Slot to handle context menu actions.
+ */
+void ClockMainView::selectedMenuAction(HbAction *action)
+{
+	if (action == mDeleteAction) {
+		deleteAlarm();
+	}
+}
+
+/*!
+	Slot to handle the context menu closed.
+ */
+void ClockMainView::handleMenuClosed()
+{
+	mIsLongTop = false;
+}
+/*!
+	Sets the model to the alarm list.
+ */
+void ClockMainView::setmodel()
+{
+	// Set the model.
+	if (mAlarmList) {
+		mAlarmList->setModel(mAlarmListModel->sourceModel());
+		ClockAlarmListItemPrototype *listItemPrototype =
+				new ClockAlarmListItemPrototype();
+		connect(
+				listItemPrototype, SIGNAL(alarmStatusHasChanged(int)),
+				this, SLOT(handleAlarmStatusChanged(int)));
+		mAlarmList->setItemPrototype(listItemPrototype);
+		mAlarmList->setLayoutName("layout-alarmlist");
+	}
+
+}
+
+/*!
+	Hides the alarmlist in the main view.
+
+	\param hide 'true' if alarm list is to be hidden.
+ */
+void ClockMainView::hideAlarmList(bool hide)
+{
+	if (hide) {
+		mNoAlarmLabel->show();
+		mAlarmList->hide();
+		mHideAlarmList = true;
+	} else {
+		mAlarmList->show();
+		mNoAlarmLabel->hide();
+		mHideAlarmList = false;
+	}
+}
+
+/*!
+	Updates the day and date in the day label.
+ */
+void ClockMainView::updateDateLabel()
+{
+	// Get the current datetime.
+	QDateTime dateTime = QDateTime::currentDateTime();
+	// Get the day name.
+	QString dayName = dateTime.toString("ddd");
+	// Get the date in correct format.
+	QString currentDate = mSettingsUtility->date();
+	// Construct the day + date string.
+	QString dayDateString;
+	dayDateString+= dayName;
+	dayDateString += " ";
+	dayDateString += currentDate;
+
+	mDayLabel->setPlainText(dayDateString);
+}
+
+/*!
+	Updates the zone info in the place label.
+ */
+/*void ClockMainView::updatePlaceLabel()
+{
+	updatePlaceLabel(mTimezoneClient->timeUpdateOn());
+}*/
+
+/*!
+	Updates the clock widget display.
+ */
+void ClockMainView::updateClockWidget()
+{
+	mClockWidget->updateTime();
 }
 
 // End of file	--Don't remove.
--- a/clock/clockui/clockviews/src/clockworldview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockviews/src/clockworldview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -20,10 +20,7 @@
 #include <QGraphicsItem>
 #include <QStandardItem>
 #include <QStandardItemModel>
-#include <QDebug>
 #include <HbInstance>
-#include <HbLabel>
-#include <HbPushButton>
 #include <HbAbstractViewItem>
 #include <HbMenu>
 #include <HbAction>
@@ -38,7 +35,7 @@
 #include "settingsutility.h"
 #include "timezoneclient.h"
 #include "clockcityselectionlist.h"
-#include "listitemprototype.h"
+#include "clockhomecityitem.h"
 
 /*!
 	\class ClockWorldView
@@ -55,8 +52,6 @@
 :HbView(parent),
  mSelectedItem(-1)
 {
-	qDebug("clock: ClockWorldView::ClockWorldView() -->");
-
 	// Timer for updating list data upon time change/update.
 	mRefreshTimer = new QTimer();
 	connect(
@@ -65,8 +60,6 @@
 
 	// Create the model.
 	mCityListModel = new QStandardItemModel();
-
-	qDebug("clock: ClockWorldView::ClockWorldView() <--");
 }
 
 /*!
@@ -74,13 +67,13 @@
  */
 ClockWorldView::~ClockWorldView()
 {
-	qDebug("clock: ClockWorldView::~ClockWorldView() -->");
-
 	if (mDocLoader) {
 		delete mDocLoader;
+		mDocLoader = 0;
 	}
-
-	qDebug("clock: ClockWorldView::~ClockWorldView() <--");
+	HbStyleLoader::unregisterFilePath(":/style/hblistviewitem.css");
+	HbStyleLoader::unregisterFilePath(
+			":/style/hblistviewitem.widgetml");
 }
 
 /*!
@@ -94,8 +87,6 @@
 		ClockAppControllerIf &controllerIf,
 		ClockDocLoader *docLoader)
 {
-	qDebug("clock: ClockWorldView::setupView() <--");
-
 	mDocLoader = docLoader;
 	mAppControllerIf = &controllerIf;
 
@@ -105,50 +96,43 @@
 	// Establish required connections.
 	connect(
 			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateClockDisplay()));
-	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateDayDateInfo()));
+			this, SLOT(updateAllLocationInfo()));
 	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateCurrentLocationInfo()));
+			mTimezoneClient, SIGNAL(autoTimeUpdateChanged(int)),
+			this, SLOT(updateCurrentLocationInfo(int)));
 	connect(
-			mTimezoneClient, SIGNAL(timechanged()),
-			this, SLOT(updateCurrentZoneInfo()));
+			mTimezoneClient, SIGNAL(cityUpdated()),
+			this, SLOT(updateAllLocationInfo()));
 
 	mDisplayWorldClockView = static_cast<HbAction *> (
-	            mDocLoader->findObject("worldClockAction"));
+			mDocLoader->findObject("worldClockAction"));
 
 	mDisplayWorldClockView->setCheckable(true);
 	mDisplayWorldClockView->setChecked(true);
 
 	connect(
-	        mDisplayWorldClockView, SIGNAL(changed()),
-            this, SLOT(refreshWorldView()));
+			mDisplayWorldClockView, SIGNAL(changed()),
+			this, SLOT(refreshWorldView()));
 
 	// Get the currently added locations to the list.
 	mCityInfoList = mTimezoneClient->getSavedLocations();
 
-	// Create the custom prototype.
-	ListItemPrototype *customPrototype = new ListItemPrototype();
+	// Get the homecity widget.
+	mHomeCityWidget = qobject_cast<ClockHomeCityItem *>(
+			mDocLoader->findWidget(CLOCK_WORLD_HOMECITY));
+	
+	// Get the city list item.
 	mCityListView = qobject_cast<HbListView *> (
-			mDocLoader->findWidget("worldClockCityListView"));
-	HbStyleLoader::registerFilePath(":/style/");
+			mDocLoader->findWidget(CLOCK_WORLD_CITYLIST));
+	HbStyleLoader::registerFilePath(":/style/hblistviewitem.css");
+	HbStyleLoader::registerFilePath(
+			":/style/hblistviewitem.widgetml");
+	mCityListView->setLayoutName("citylist-portrait");
 	mCityListView->setModel(mCityListModel);
-	mCityListView->setItemPrototype(customPrototype);
-	mCityListView->setLayoutName("custom");
-
-	mPlaceLabel =
-			qobject_cast<HbLabel *> (mDocLoader->findWidget("placeLabel"));
-//	mPlaceLabel->setTextWrapping(Hb::TextWordWrap);
-
-	mDayDateLabel =
-			qobject_cast<HbLabel *> (mDocLoader->findWidget("dateLabel"));
-
+	
 	// Get the toolbar/menu actions.
 	mAddCityAction = static_cast<HbAction *> (
 			mDocLoader->findObject("addCityAction"));
-	mAddCityAction->setIcon(HbIcon(":/clock/add_new_city.svg"));
 	connect(
 			mAddCityAction, SIGNAL(triggered()),
 			this, SLOT(handleAddLocation()));
@@ -159,13 +143,11 @@
 			mShowAlarmsViewAction, SIGNAL(triggered()),
 			this, SLOT(showAlarmsView()));
 
-	HbMainWindow *window;
-	window = hbInstance->allMainWindows().first();
-	updateToolbarTexts(window->orientation());
+	HbMainWindow *window = hbInstance->allMainWindows().first();
 
 	connect(
 			window, SIGNAL(orientationChanged(Qt::Orientation)),
-			this, SLOT(updateToolbarTexts(Qt::Orientation)));
+			this, SLOT(loadSection(Qt::Orientation)));
 
 	if (mCityInfoList.count() > 0) {
 		// There is atleast one city. Refresh needed.
@@ -175,25 +157,34 @@
 		mRefreshTimer->start(after * 1000);
 	}
 
-	// Update the date and day info.
-	updateDayDateInfo();
-
 	connect(
 			mCityListView,
 			SIGNAL(longPressed(HbAbstractViewItem *, const QPointF &)),
 			this,
 			SLOT(handleItemLongPressed(HbAbstractViewItem *, const QPointF &)));
 
+	// Update current location info.
+	updateCurrentLocationInfo(mTimezoneClient->timeUpdateOn());
+
 	// Populate the list.
-	int index = 0;
-	// Update current location info.
-	updateCurrentLocationInfo();
-
-	for (; index < mCityInfoList.count(); index++) {
+	for (int index = 0; index < mCityInfoList.count(); index++) {
 		addCityToList(mCityInfoList.at(index));
 	}
+	
+	// Adding the "Add city" in options menu.
+	mAddCityMenuAction = new HbAction(
+			QString(hbTrId("txt_clock_opt_add_city")),this);
+	menu()->addAction(mAddCityMenuAction);
+	mAddCityMenuAction->setVisible(true);
+	connect(
+			mAddCityMenuAction, SIGNAL(triggered()),
+			this, SLOT(handleAddLocation()));
 
-	qDebug("clock: ClockWorldView::setupView() <--");
+	// Check for disabling of addCityAction in view toolbar.
+	if ((KMaximumCityListCount-1) == mCityInfoList.count()) {
+		mAddCityAction->setEnabled(false);
+		mAddCityMenuAction->setVisible(false);
+	}
 }
 
 /*!
@@ -201,46 +192,19 @@
  */
 void ClockWorldView::refreshCityList()
 {
+	updateCurrentLocationInfo(mTimezoneClient->timeUpdateOn());
 	int cityInfoCount = mCityInfoList.count();
 
 	if (cityInfoCount) {
 		QStandardItem *item = 0;
 		for (int infoIndex = 0; infoIndex < cityInfoCount; infoIndex++) {
 			item = mCityListModel->item(infoIndex);
-
-			QDateTime dateTime = QDateTime::currentDateTime();
-			dateTime = dateTime.toUTC();
-			dateTime = dateTime.addSecs(
-					mCityInfoList.at(infoIndex).zoneOffset * 60);
-
-			// Display day/night indicators.
-			QString dayNightIconPath = "";
-			if (isDay(dateTime)) {
-				dayNightIconPath = ":/clock/day";
-			} else {
-				dayNightIconPath = ":/clock/night";
-			}
-			item->setData(dayNightIconPath, Qt::UserRole + 1000);
-
-			// Update the date info.
-			QString dateInfo = dateTime.toString(
-					mSettingsUtility->dateFormatString());
-			if (dateTime.date() == QDate::currentDate()) {
-				dateInfo = tr("Today");
-			}
-			item->setData(dateInfo, Qt::UserRole + 1001);
-
-			// Set the DST icon.
-			QString dstIconPath = "";
-			if (mCityInfoList.at(infoIndex).dstOn) {
-				dstIconPath = ":/clock/dst_icon";
-			}
-			item->setData(dstIconPath, Qt::UserRole + 1004);
-
-			// Update the time info.
-			QString timeInfo = dateTime.toString(
-					mSettingsUtility->timeFormatString());
-			item->setData(timeInfo, Qt::UserRole + 1005);
+			item->setData(
+					getCityListDisplayString(mCityInfoList.at(infoIndex)),
+					Qt::DisplayRole);
+			item->setData(
+					getCityListDecorationString(mCityInfoList.at(infoIndex)),
+					Qt::DecorationRole);
 		}
 
 		// Start the timer again for one minute.
@@ -249,101 +213,64 @@
 }
 
 /*!
-	Updates the clock display.
+	Updates the current location info.
  */
-void ClockWorldView::updateClockDisplay()
-{
-//	mSkinnableClock->updateDisplay(true);
-}
-
-/*!
-	Updates the day-date info.
- */
-void ClockWorldView::updateDayDateInfo()
+void ClockWorldView::updateCurrentLocationInfo(int networkTime)
 {
-	// Get the current datetime.
-	QDateTime dateTime = QDateTime::currentDateTime();
-	QString dayName = dateTime.toString("dddd");
+	HbMainWindow *window = hbInstance->allMainWindows().first();
+	Qt::Orientation currentOrienation = window->orientation();
+	loadSection(currentOrienation);
+
+	if (!networkTime) {
+		// Get the updated home city.
+		LocationInfo homeCity = mTimezoneClient->getCurrentZoneInfoL();
+
+		QMap<QString, QVariant> itemList;
+		QString value;
+		QDateTime dateTime = QDateTime::currentDateTime();
+
+		// Show the date. If date is current date then show 'today'.
+		QString dateInfo = dateTime.toString(
+				mSettingsUtility->dateFormatString());
+		itemList.insert(value.setNum(ClockHomeCityItem::Date), dateInfo);
+
+		// Show the city and country name.
+		QString placeInfo =
+				homeCity.cityName + tr(", ") + homeCity.countryName;
+		itemList.insert(value.setNum(ClockHomeCityItem::City), placeInfo);
 
-	QString currentDate = mSettingsUtility->date();
-	// Construct the day + date string.
-	QString dayDateString;
-	dayDateString+= dayName;
-	dayDateString += " ";
-	dayDateString += currentDate;
+		// Show the time at that location.
+		QString timeInfo = dateTime.toString(
+				mSettingsUtility->timeFormatString());
+		itemList.insert(value.setNum(ClockHomeCityItem::Time), timeInfo);
 
-	mDayDateLabel->clear();
-	mDayDateLabel->setPlainText(dayDateString);
+		// TODO: Use the home city specific icons.
+		// Display day/night indicators.
+		QString dayNightIconPath = "";
+		if (isDay(dateTime)) {
+			dayNightIconPath = "qtg_large_clock";
+		} else {
+			dayNightIconPath = "qtg_large_clock";
+		}
+		itemList.insert(value.setNum(
+				ClockHomeCityItem::DayNightIndicator), dayNightIconPath);
+
+		// Show dst icon when needed.
+		if (homeCity.dstOn) {
+			QString dstIconPath = "qtg_mono_day_light_saving_time";
+			itemList.insert(value.setNum(ClockHomeCityItem::Dst), dstIconPath);
+		}
+		mHomeCityWidget->setHomeCityItemData(itemList);
+	}
 }
 
 /*!
-	Updates the current location info.
- */
-void ClockWorldView::updateCurrentLocationInfo()
-{
-	// Get the updated home city.
-	LocationInfo homeCity = mTimezoneClient->getCurrentZoneInfoL();
-
-	// Construct the GMT +/- X string.
-	QString gmtOffset;
-
-	int utcOffset = homeCity.zoneOffset;
-	int offsetInHours (utcOffset/60);
-	int offsetInMinutes (utcOffset%60);
-
-	// Check wether the offset is +ve or -ve.
-	if (0 < utcOffset) {
-		// We have a positive offset. Append the '+' character.
-		gmtOffset += tr(" +");
-	} else if (0 > utcOffset) {
-		// We have a negative offset. Append the '-' character.
-		gmtOffset += tr(" -");
-		offsetInHours = -offsetInHours;
-	} else {
-		// We dont have an offset. We are at GMT zone.
-	}
-
-	// Append the hour component.
-	gmtOffset += QString::number(offsetInHours);
-
-	// Get the time separator from settings and append it.
-	QStringList timeSeparatorList;
-	int index = mSettingsUtility->timeSeparator(timeSeparatorList);
-	gmtOffset += timeSeparatorList.at(index);
+	Handles the long press on each item in the citylist.
+	Displays a list item specific context menu.
 
-	// Append the minute component.
-	// If minute component is less less than 10, append a '00'
-	if (0 <= offsetInMinutes && offsetInMinutes < 10) {
-		gmtOffset += tr("00");
-	} else {
-		gmtOffset += QString::number(offsetInMinutes);
-	}
-
-	// Append space.
-	gmtOffset += tr(" ");
-
-	// Append GMT sting.
-	gmtOffset += hbTrId("txt_common_common_gmt");
-
-	// Append space.
-	gmtOffset += tr(" ");
-
-	// Append DST info.
-	if (homeCity.dstOn) {
-		gmtOffset += hbTrId("txt_common_setlabel_dst");
-	}
-
-	// Set the city and country name .
-	mPlaceLabel->clear();
-	if (mTimezoneClient->timeUpdateOn()) {
-		mPlaceLabel->setPlainText(homeCity.countryName + tr(" ") + gmtOffset);
-	} else {
-		mPlaceLabel->setPlainText(
-				homeCity.cityName + tr(", ") + homeCity.countryName
-				+ tr(" ") + gmtOffset);
-	}
-}
-
+	\param item The HbAbstractViewItem that was long pressed.
+	\param coords The position where mouse was pressed.
+ */
 void ClockWorldView::handleItemLongPressed(
 		HbAbstractViewItem *item, const QPointF &coords)
 {
@@ -355,19 +282,13 @@
 
 	// Add the actions to the context menu.
 	mSetCurrentLocationAction = itemContextMenu->addAction(
-	    hbTrId("txt_clk_menu_set_as_current_location"));
+			hbTrId("txt_clk_menu_set_as_current_location"));
 	mRemoveCityAction = itemContextMenu->addAction(
-	    hbTrId("txt_clk_menu_delete"));
-
-	connect(
-			mSetCurrentLocationAction, SIGNAL(triggered()),
-			this, SLOT(handleSetAsCurrentLocationAction()));
-	connect(
-			mRemoveCityAction, SIGNAL(triggered()),
-			this, SLOT(handleDeleteAction()));
+			hbTrId("txt_clk_menu_delete"));
 
 	// Show the menu.
-	itemContextMenu->exec(coords);
+	itemContextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	itemContextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -393,14 +314,10 @@
 void ClockWorldView::handleDeleteAction()
 {
 	if (-1 != mSelectedItem) {
-		int temp = mCityListModel->rowCount();
-
 		QStandardItem *item = mCityListModel->takeItem(mSelectedItem);
 		mCityListModel->removeRow(mSelectedItem);
 		delete item;
 
-		temp = mCityListModel->rowCount();
-
 		mCityInfoList.removeAt(mSelectedItem);
 		mSelectedItem = -1;
 
@@ -410,6 +327,10 @@
 		if (mCityInfoList.count() <= 0) {
 			// No need to refresh the list anymore.
 			mRefreshTimer->stop();
+		} else if (mCityInfoList.count() < (KMaximumCityListCount-1) &&
+				!mAddCityAction->isEnabled()) {
+			mAddCityAction->setEnabled(true);
+			mAddCityMenuAction->setVisible(true);
 		}
 	}
 }
@@ -419,66 +340,37 @@
  */
 void ClockWorldView::handleSetAsCurrentLocationAction()
 {
+	// Get the info of the selected item.
+	LocationInfo newHomeCity = mCityInfoList[mSelectedItem];
+
 	// Check if time update is set to ON.
 	// If yes, reset it to OFF and change the home location.
 	if (mTimezoneClient->timeUpdateOn()) {
 		mTimezoneClient->setTimeUpdateOn(false);
+
+		QStandardItem *item = mCityListModel->takeItem(mSelectedItem);
+		mCityListModel->removeRow(mSelectedItem);
+		delete item;
+
+		mCityInfoList.removeAt(mSelectedItem);
 	} else {
 		// The current location and home city should be swapped.
 		// Store the info of current home city.
 		LocationInfo oldHomeCity = mTimezoneClient->getCurrentZoneInfoL();
-		// Get the info of the selected item.
-		LocationInfo newHomeCity = mCityInfoList[mSelectedItem];
-
-		QStandardItem *cityItem = mCityListModel->item(mSelectedItem);
-		QDateTime dateTime = QDateTime::currentDateTime();
-
-		// Display day/night indicators.
-		QString dayNightIconPath = "";
-		if (isDay(dateTime)) {
-			dayNightIconPath = ":/clock/day";
-		} else {
-			dayNightIconPath = ":/clock/night";
-		}
-		cityItem->setData(dayNightIconPath, Qt::UserRole + 1000);
-
-		// Date.
-		QString dateString = dateTime.toString(
-				mSettingsUtility->dateFormatString());
-		if (dateTime.date() == QDate::currentDate()) {
-			dateString = tr("Today");
-			}
-		cityItem->setData(dateString, Qt::UserRole + 1001);
-
-		// The city/country name.
-		QString placeInfo =
-				oldHomeCity.cityName + tr(", ") + oldHomeCity.countryName;
-		cityItem->setData(placeInfo, Qt::UserRole + 1002);
-
-		// Dst icon.
-		QString dstIconPath = "";
-		if (oldHomeCity.dstOn) {
-			dstIconPath = ":/clock/dst_icon";
-		}
-		cityItem->setData(dstIconPath, Qt::UserRole + 1004);
-
-		// Time.
-		QString timeString = dateTime.toString(
-				mSettingsUtility->timeFormatString());
-		cityItem->setData(timeString, Qt::UserRole + 1005);
 
 		// Update the info list.
 		mCityInfoList.removeAt(mSelectedItem);
 		mCityInfoList.insert(mSelectedItem, oldHomeCity);
-		// Update the home city with the timezone server.
-		mTimezoneClient->setAsCurrentLocationL(newHomeCity);
+
+	}
+	// Update the home city with the timezone server.
+	mTimezoneClient->setAsCurrentLocationL(newHomeCity);
 
-		// Update the current location info.
-		updateCurrentLocationInfo();
+	// Update the current location info.
+	updateCurrentLocationInfo(mTimezoneClient->timeUpdateOn());
 
-		// Update the offset difference in each list item.
-		updateOffsetDifferences();
-	}
+	// Update the offset difference in each list item.
+	refreshCityList();
 
 	// Update the data file.
 	mTimezoneClient->saveLocations(mCityInfoList);
@@ -499,15 +391,20 @@
 		// Now we check if the city is already added in the list.
 		bool proceed = true;
 		for (int i = 0; i < mCityInfoList.count(); i++) {
-			if (info.timezoneId == mCityInfoList.at(i).timezoneId) {
+			if (info.timezoneId == mCityInfoList.at(i).timezoneId
+					&& (info.cityName == mCityInfoList.at(i).cityName)
+					&& (info.countryName == mCityInfoList.at(i).countryName) ) {
 				proceed = false;
 				break;
 			}
 		}
 
+		LocationInfo currentCity = mTimezoneClient->getCurrentZoneInfoL();
 		// Check if the selected city is not the home city.
-		if (info.timezoneId
-				== mTimezoneClient->getCurrentZoneInfoL().timezoneId) {
+		if (
+				(info.timezoneId == currentCity.timezoneId)
+				&& (info.cityName == currentCity.cityName)
+				&& (info.countryName == currentCity.countryName)) {
 			proceed = false;
 		}
 
@@ -528,7 +425,11 @@
 			}
 		}
 	}
-
+	if ((KMaximumCityListCount-1) == mCityInfoList.count() &&
+			mAddCityAction->isEnabled()) {
+		mAddCityAction->setEnabled(false);
+		mAddCityMenuAction->setVisible(false);
+	}
 	// Cleanup.
 	mCitySelectionList->deleteLater();
 }
@@ -536,87 +437,82 @@
 /*!
 	Navigates to the clock alarms view.
  */
-
 void ClockWorldView::showAlarmsView()
 {
-	qDebug() << "clock: ClockWorldView::showAlarmsView -->";
+	mAppControllerIf->switchToView(MainView);
+}
 
-	mAppControllerIf->switchToView(MainView);
-
-	qDebug() << "clock: ClockWorldView::showAlarmsView <--";
+/*!
+	Slot which gets called when `World Clock' action is triggered from the view
+	toolbar. This is responsible for reloading the content of worldclock view.
+ */
+void ClockWorldView::refreshWorldView()
+{
+	mDisplayWorldClockView->setChecked(true);
 }
 
 /*!
-	Updates the offset difference shown in each item with respect to the home
-	city.
+	Loads the appropriate section based on window orientaion.
  */
-void ClockWorldView::updateOffsetDifferences()
+void ClockWorldView::loadSection(Qt::Orientation orientation)
 {
-	// Get the home city information.
-	LocationInfo homeCityInfo = mTimezoneClient->getCurrentZoneInfoL();
-
-	for (int iter = 0; iter < mCityListModel->rowCount(); iter++) {
-		QModelIndex index = mCityListModel->index(iter, 0);
-		LocationInfo cityInfo = mCityInfoList[iter];
-
-		// Find out if the city being added has an offset greater than or less
-		// than the homecity offset.
-		QString offsetDifference;
-		if (cityInfo.zoneOffset < homeCityInfo.zoneOffset) {
-			offsetDifference += "-";
-		} else if (cityInfo.zoneOffset > homeCityInfo.zoneOffset) {
-			offsetDifference += "+";
+	bool networkTime = mTimezoneClient->timeUpdateOn();
+	bool loadSuccess;
+	if (Qt::Horizontal == orientation) {
+		if (networkTime) {
+			// Do not show home city.
+			mDocLoader->load(
+					CLOCK_WORLD_VIEW_DOCML,
+					CLOCK_WORLD_VIEW_LANDSCAPE_NOHOMECITY_SECTION,
+					&loadSuccess);
+			mHomeCityWidget->hide();
+		} else {
+			mDocLoader->load(
+					CLOCK_WORLD_VIEW_DOCML,
+					CLOCK_WORLD_VIEW_LANDSCAPE_HOMECITY_SECTION,
+					&loadSuccess);
+			mHomeCityWidget->show();
 		}
-		// Now get the hours and minutes.
-		int difference =
-				qAbs(homeCityInfo.zoneOffset - cityInfo.zoneOffset);
-		int hours = difference / 60;
-		int minutes = difference % 60;
-		offsetDifference += QString::number(hours);
-		offsetDifference += "hrs";
-		if (minutes) {
-			offsetDifference += ", ";
-			offsetDifference += QString::number(minutes);
-			offsetDifference += "mins";
+	} else if (Qt::Vertical == orientation) {
+		if (networkTime) {
+			// Do not show home city.
+			mDocLoader->load(
+					CLOCK_WORLD_VIEW_DOCML,
+					CLOCK_WORLD_VIEW_PORTRAIT_NOHOMECITY_SECTION,
+					&loadSuccess);
+			mHomeCityWidget->hide();
+		} else {
+			// Show home city.
+			mDocLoader->load(
+					CLOCK_WORLD_VIEW_DOCML,
+					CLOCK_WORLD_VIEW_PORTRAIT_HOMECITY_SECTION,
+					&loadSuccess);
+			mHomeCityWidget->show();
 		}
-		// TODO : Need to enable these code once we recieve the localisation.
-		/*QString displayFormat = tr("%1hrs, %2mins");
-		QString offsetString = displayFormat.arg(hours, minutes);
-		offsetDifference += offsetString;*/
-		mCityListModel->setData(index, offsetDifference, Qt::UserRole + 1003);
 	}
+	mCityListView->update();
 }
 
 /*!
-    Slot which gets called when `World Clock' action is triggered from the view
-    toolbar. This is responsible for reloading the content of the world clock view.
+	Slot which gets called for timeChanged signal of timezone client.
+	Refreshes both homecity & city list.
  */
-void ClockWorldView::refreshWorldView()
+void ClockWorldView::updateAllLocationInfo()
 {
-    qDebug() << "clock: ClockWorldView::refreshWorldView -->";
-
-	mDisplayWorldClockView->setChecked(true);
-
-    qDebug() << "clock: ClockWorldView::refreshWorldView <--";
+	updateCurrentLocationInfo(mTimezoneClient->timeUpdateOn());
+	updateCityList();
+	refreshCityList();
 }
 
 /*!
-	Slot to handle orientation changes
+	Slot to handle the selected context menu actions
  */
-void ClockWorldView::updateToolbarTexts(Qt::Orientation currentOrientation)
+void ClockWorldView::selectedMenuAction(HbAction *action)
 {
-	if (Qt::Horizontal == currentOrientation) {
-		// Display toolbar item's texts
-		// TODO to use text ids from ts file.
-		mShowAlarmsViewAction->setText(tr("Alarms"));
-		mDisplayWorldClockView->setText(tr("World clock"));
-		mAddCityAction->setText(tr("Add city"));
-	} else if(Qt::Vertical == currentOrientation){
-		// Remove toolbar item's texts as only icons are shown.
-		// TODO to use text ids from ts file.
-		mShowAlarmsViewAction->setText(tr(""));
-		mDisplayWorldClockView->setText(tr(""));
-		mAddCityAction->setText("");
+	if (action == mSetCurrentLocationAction) {
+		handleSetAsCurrentLocationAction();
+	} else if (action == mRemoveCityAction) {
+		handleDeleteAction();
 	}
 }
 
@@ -630,95 +526,17 @@
 	// Here we construct a model item and add it to the list model.
 	QStandardItem *modelItem = new QStandardItem();
 
-	QDateTime dateTime = QDateTime::currentDateTime();
-	dateTime = dateTime.toUTC();
-	dateTime = dateTime.addSecs(locationInfo.zoneOffset * 60);
-
-	// Display day/night indicators.
-	QString dayNightIconPath = "";
-	if (isDay(dateTime)) {
-		dayNightIconPath = ":/clock/day";
-	} else {
-		dayNightIconPath = ":/clock/night";
-	}
-	modelItem->setData(dayNightIconPath, Qt::UserRole + 1000);
-
-	// Show the date. If date is current date then show 'today'.
-	QString dateInfo = dateTime.toString(mSettingsUtility->dateFormatString());
-	if (dateTime.date() == QDate::currentDate()) {
-		dateInfo = tr("Today");
-	}
-	modelItem->setData(dateInfo, Qt::UserRole + 1001);
-
-	// Show the city and country name.
-	QString placeInfo =
-			locationInfo.cityName + tr(", ") + locationInfo.countryName;
-	modelItem->setData(placeInfo, Qt::UserRole + 1002);
-
-	// Get the homecity information.
-	LocationInfo homeCityInfo = mTimezoneClient->getCurrentZoneInfoL();
-	// Find out if the city being added has an offset greater than or less than
-	// the homecity offset.
-	QString offsetDifference;
-	if (locationInfo.zoneOffset < homeCityInfo.zoneOffset) {
-		offsetDifference += "-";
-	} else if (locationInfo.zoneOffset > homeCityInfo.zoneOffset) {
-		offsetDifference += "+";
-	}
-	// Now get the hours and minutes.
-	int difference = qAbs(homeCityInfo.zoneOffset - locationInfo.zoneOffset);
-	int hours = difference / 60;
-	int minutes = difference % 60;
-
-	if ( hours && minutes ) {
-		if (hours == 1) {
-			QString displayFormat =
-					hbTrId("txt_clock_dblist_daily_val_1_hr_2_mins");
-			QString offsetString = displayFormat.arg(hours).arg(minutes);
-			offsetDifference += offsetString;
-		}
-		else {
-			QString displayFormat =
-					hbTrId("txt_clock_dblist_daily_val_1_hrs_2_mins");
-			QString offsetString = displayFormat.arg(hours).arg(minutes);
-			offsetDifference += offsetString;
-		}
-	}
-	else if ( hours ){
-		if(hours == 1 ) {
-			QString displayFormat = hbTrId("txt_clock_dblist_val_1_hr");
-			QString offsetString = displayFormat.arg(hours);
-			offsetDifference += offsetString;
-		}
-		else {
-			QString displayFormat = hbTrId("txt_clock_dblist_val_1_hrs");
-			QString offsetString = displayFormat.arg(hours);
-			offsetDifference += offsetString;
-		}
-	}
-	else if (minutes){
-		QString displayFormat = hbTrId("txt_clock_dblist_val_1_mins");
-		QString offsetString = displayFormat.arg(minutes);
-		offsetDifference += offsetString;
-	}
-
-	modelItem->setData(offsetDifference, Qt::UserRole + 1003);
-
-	// Show dst icon when needed.
-	QString dstIconPath = "";
-	if (locationInfo.dstOn) {
-		dstIconPath = ":/clock/dst_icon";
-	}
-	modelItem->setData(dstIconPath, Qt::UserRole + 1004);
-
-	// Show the time at that location.
-	QString timeInfo = dateTime.toString(mSettingsUtility->timeFormatString());
-	modelItem->setData(timeInfo, Qt::UserRole + 1005);
-
 	// Add the item to the model.
 	mCityListModel->appendRow(modelItem);
 
-	return(mCityListModel->indexFromItem(modelItem));
+	QModelIndex index = mCityListModel->indexFromItem(modelItem);
+	mCityListModel->setData(
+			index, getCityListDisplayString(locationInfo), Qt::DisplayRole);
+	mCityListModel->setData(
+			index, getCityListDecorationString(locationInfo),
+			Qt::DecorationRole);
+
+	return index;
 }
 
 /*!
@@ -737,4 +555,167 @@
 	return true;
 }
 
+/*!
+	Returns the QVariantList for citylist to be set for DisplayRole.
+	
+	/param locationInfo Details of the city to be added to the list.
+ */
+QVariantList ClockWorldView::getCityListDisplayString(
+		const LocationInfo& locationInfo)
+{
+	QVariantList displayString;
+	QDateTime dateTime = QDateTime::currentDateTime();
+	dateTime = dateTime.toUTC();
+	dateTime = dateTime.addSecs(locationInfo.zoneOffset * 60);
+
+	// Show the date. If date is current date then show 'today'.
+	QString dateInfo = dateTime.toString(mSettingsUtility->dateFormatString());
+	if (dateTime.date() == QDate::currentDate()) {
+		dateInfo = hbTrId("txt_clock_main_view_dblist_daily_val_today");
+	}
+	displayString.append(dateInfo);
+
+	// Show the city and country name.
+	QString placeInfo =
+			locationInfo.cityName + tr(", ") + locationInfo.countryName;
+	displayString.append(placeInfo);
+
+	// Get the homecity information.
+	LocationInfo homeCityInfo = mTimezoneClient->getCurrentZoneInfoL();
+	// Find out if the city being added has an offset greater than or less than
+	// the homecity offset.
+	QString offsetDifference;
+	if (locationInfo.zoneOffset < homeCityInfo.zoneOffset) {
+		offsetDifference += "-";
+	} else if (locationInfo.zoneOffset > homeCityInfo.zoneOffset) {
+		offsetDifference += "+";
+	}
+	// Now get the hours and minutes.
+	int difference = qAbs(homeCityInfo.zoneOffset - locationInfo.zoneOffset);
+	int hours = difference / 60;
+	int minutes = difference % 60;
+	QString displayFormat("");
+	QString offsetString("");
+
+	if ( hours && minutes ) {
+		if (hours == 1) {
+			displayFormat =
+					hbTrId("txt_clock_dblist_daily_val_1_hr_2_mins");
+			offsetString = displayFormat.arg(hours).arg(minutes);
+			offsetDifference += offsetString;
+		}
+		else {
+			displayFormat =
+					hbTrId("txt_clock_dblist_daily_val_1_hrs_2_mins");
+			offsetString = displayFormat.arg(hours).arg(minutes);
+			offsetDifference += offsetString;
+		}
+	}
+	else if ( hours ){
+		if(hours == 1 ) {
+			displayFormat = hbTrId("txt_clock_dblist_val_1_hr");
+			offsetString = displayFormat.arg(hours);
+			offsetDifference += offsetString;
+		}
+		else {
+			displayFormat = hbTrId("txt_clock_dblist_val_1_hrs");
+			offsetString = displayFormat.arg(hours);
+			offsetDifference += offsetString;
+		}
+	}
+	else if (minutes){
+		displayFormat = hbTrId("txt_clock_dblist_val_1_mins");
+		offsetString = displayFormat.arg(minutes);
+		offsetDifference += offsetString;
+	} else {
+		displayFormat = hbTrId("txt_clock_dblist_val_1_hrs");
+		offsetString = displayFormat.arg(0);
+		offsetDifference += offsetString;
+	}
+	displayString.append(offsetDifference);
+
+	// Show the time at that location.
+	QString timeInfo = dateTime.toString(mSettingsUtility->timeFormatString());
+	displayString.append(timeInfo);
+
+	return displayString;
+}
+
+/*!
+	Returns the QVariantList for citylist to be set for DecorationRole.
+
+	/param locationInfo Details of the city to be added to the list.
+ */
+QVariantList ClockWorldView::getCityListDecorationString(
+		const LocationInfo& locationInfo)
+{
+	QVariantList decorationString;
+	QDateTime dateTime = QDateTime::currentDateTime();
+	dateTime = dateTime.toUTC();
+	dateTime = dateTime.addSecs(locationInfo.zoneOffset * 60);
+
+	// Display day/night indicators.
+	// TODO: change the icon name for night when available.
+	QString dayNightIconPath = "";
+	if (isDay(dateTime)) {
+		dayNightIconPath = "qtg_large_clock";
+	} else {
+		dayNightIconPath = "qtg_large_clock";
+	}
+	decorationString.append(HbIcon(dayNightIconPath));
+
+	// Show dst icon when needed.
+	if (locationInfo.dstOn) {
+		QString dstIconPath = "qtg_mono_day_light_saving_time";
+		decorationString.append(HbIcon(dstIconPath));
+	}
+	return decorationString;
+	
+}
+
+/*!
+	Updates the city list according to the home city.
+ */
+void ClockWorldView::updateCityList()
+{
+	int cityInfoCount = mCityInfoList.count();
+
+	if (cityInfoCount) {
+		bool deletion = false;
+		int index;
+		LocationInfo currentCity = mTimezoneClient->getCurrentZoneInfoL();
+		for (index = 0; index < cityInfoCount; index++) {
+			if (currentCity.timezoneId == mCityInfoList.at(index).timezoneId
+					&& (currentCity.cityName ==
+							mCityInfoList.at(index).cityName)
+					&& (currentCity.countryName ==
+							mCityInfoList.at(index).countryName) ) {
+				deletion = true;
+				break;
+			}
+		}
+		if (deletion) {
+			QStandardItem *item = mCityListModel->takeItem(index);
+			mCityListModel->removeRow(index);
+			delete item;
+
+			mCityInfoList.removeAt(index);
+			index = -1;
+
+			// Update the data file.
+			mTimezoneClient->saveLocations(mCityInfoList);
+
+			if (mCityInfoList.count() <= 0) {
+				// No need to refresh the list anymore.
+				mRefreshTimer->stop();
+			} else if (mCityInfoList.count() < (KMaximumCityListCount-1) &&
+					!mAddCityAction->isEnabled()) {
+				mAddCityAction->setEnabled(true);
+				mAddCityMenuAction->setVisible(true);
+			}
+			
+		}
+	}
+}
+
 // End of file-- Don't delete.
--- a/clock/clockui/clockviews/src/listitemprototype.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,128 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Definition file for class ListItemPrototype.
-*
-*/
-
-// System includes
-#include <QDebug>
-#include <QGraphicsLinearLayout>
-#include <HbAbstractViewItem>
-#include <HbIconItem>
-#include <HbStyle>
-#include <HbTextItem>
-
-// User includes
-#include "listitemprototype.h"
-
-/*!
-	\class ListItemPrototype
-
-	Prototype class for the World clock city list.
- */
-
-/*!
-	Default constructor.
-
-	\parent of type QGraphicsItem.
- */
-ListItemPrototype::ListItemPrototype(QGraphicsItem *parent)
-:HbListViewItem(parent),
- mDayNightIcon(0),
- mDateText(0),
- mCityText(0),
- mOffsetText(0),
- mDstIcon(0),
- mTimeText(0)
-{
-	// Nothing yet.
-}
-
-/*!
-	Destructor.
- */
-ListItemPrototype::~ListItemPrototype()
-{
-	// Nothing yet.
-}
-
-/*!
-	From HbListViewItem.
-
-	\sa HbAbstractViewItem, HbListViewItem.
- */
-HbAbstractViewItem *ListItemPrototype::createItem()
-{
-	return new ListItemPrototype(*this);
-}
-
-/*!
-	Called for every view item in the list.
-
-	\sa HbAbstractViewItem, HbListViewItem.
- */
-void ListItemPrototype::updateChildItems()
-{
-	// First allow the base class to update.
-	HbListViewItem::updateChildItems();
-
-	// Create the individual items.
-	// Create day-night icon.
-	if (!mDayNightIcon) {
-		mDayNightIcon = new HbIconItem(this);
-		style()->setItemName(mDayNightIcon, "dayNightIcon");
-	}
-	mDayNightIcon->setIconName(
-			modelIndex().data(Qt::UserRole + 1000).value<QString>());
-			
-	// Create the date text item.
-	if (!mDateText) {
-		mDateText = new HbTextItem(this);
-		style()->setItemName(mDateText, "dateText");
-	}
-	mDateText->setText(modelIndex().data(Qt::UserRole + 1001).toString());
-
-	// Create the city, country name text item.
-	if (!mCityText) {
-		mCityText = new HbTextItem(this);
-		mCityText->setTextWrapping(Hb::TextNoWrap);
-		style()->setItemName(mCityText, "cityText");
-	}
-	mCityText->setText(modelIndex().data(Qt::UserRole + 1002).toString());
-
-	// Create the offset text item.
-	if (!mOffsetText) {
-		mOffsetText = new HbTextItem(this);
-		style()->setItemName(mOffsetText, "offsetText");
-	}
-	mOffsetText->setText(modelIndex().data(Qt::UserRole + 1003).toString());
-
-	// Create dst icon.
-	if (!mDstIcon) {
-		mDstIcon = new HbIconItem(this);
-		style()->setItemName(mDstIcon, "dstIcon");
-	}
-	mDstIcon->setIconName(
-			modelIndex().data(Qt::UserRole + 1004).value<QString>());
-
-	// Create the time text item.
-	if (!mTimeText) {
-		mTimeText = new HbTextItem(this);
-		style()->setItemName(mTimeText, "timeText");
-	}
-	mTimeText->setText(modelIndex().data(Qt::UserRole + 1005).toString());
-}
-
-// End of file	--Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/bwins/clockwidgetu.def	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,18 @@
+EXPORTS
+	?tr@ClockWidget@@SA?AVQString@@PBD0H@Z @ 1 NONAME ; class QString ClockWidget::tr(char const *, char const *, int)
+	?staticMetaObject@ClockWidget@@2UQMetaObject@@B @ 2 NONAME ; struct QMetaObject const ClockWidget::staticMetaObject
+	??1ClockWidget@@UAE@XZ @ 3 NONAME ; ClockWidget::~ClockWidget(void)
+	??0ClockWidget@@QAE@PAVQGraphicsItem@@V?$QFlags@W4WindowType@Qt@@@@@Z @ 4 NONAME ; ClockWidget::ClockWidget(class QGraphicsItem *, class QFlags<enum Qt::WindowType>)
+	?qt_metacast@ClockWidget@@UAEPAXPBD@Z @ 5 NONAME ; void * ClockWidget::qt_metacast(char const *)
+	?updateTime@ClockWidget@@QAEXXZ @ 6 NONAME ; void ClockWidget::updateTime(void)
+	?setClockType@ClockWidget@@QAEXABW4ClockType@1@@Z @ 7 NONAME ; void ClockWidget::setClockType(enum ClockWidget::ClockType const &)
+	?metaObject@ClockWidget@@UBEPBUQMetaObject@@XZ @ 8 NONAME ; struct QMetaObject const * ClockWidget::metaObject(void) const
+	?loadClockWidget@ClockWidget@@QAEXXZ @ 9 NONAME ; void ClockWidget::loadClockWidget(void)
+	?trUtf8@ClockWidget@@SA?AVQString@@PBD0H@Z @ 10 NONAME ; class QString ClockWidget::trUtf8(char const *, char const *, int)
+	?tr@ClockWidget@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString ClockWidget::tr(char const *, char const *)
+	??_EClockWidget@@UAE@I@Z @ 12 NONAME ; ClockWidget::~ClockWidget(unsigned int)
+	?trUtf8@ClockWidget@@SA?AVQString@@PBD0@Z @ 13 NONAME ; class QString ClockWidget::trUtf8(char const *, char const *)
+	?getStaticMetaObject@ClockWidget@@SAABUQMetaObject@@XZ @ 14 NONAME ; struct QMetaObject const & ClockWidget::getStaticMetaObject(void)
+	?qt_metacall@ClockWidget@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 15 NONAME ; int ClockWidget::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?clockType@ClockWidget@@QBE?AW4ClockType@1@XZ @ 16 NONAME ; enum ClockWidget::ClockType ClockWidget::clockType(void) const
+
--- a/clock/clockui/clockwidget/clockwidget.pro	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/clockwidget/clockwidget.pro	Tue May 18 13:16:49 2010 +0100
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 # All rights reserved.
 # This component and the accompanying materials are made available
 # under the terms of "Eclipse Public License v1.0"
@@ -11,40 +11,12 @@
 #
 # Contributors:
 #
-# Description:  Project definition file for clockui
-# 
-
-TEMPLATE = lib
-TARGET = clockwidgetproto
-DEFINES += CLOCKWIDGET_LIB
-CONFIG += hb
-
-DEPENDPATH += . \
-			  ./src \
-			  ./inc \
-			  ../../data
-INCLUDEPATH += . \
-			   ../../clockmw/clocktimezone/inc \
-			   ../../clockmw/clocksettingsutility/inc \
-			   ../../inc
+# Description:
+#
 
-symbian: {
-	TARGET.CAPABILITY = ALL -TCB
-	TARGET.EPOCALLOWDLLDATA = 1
-	TARGET.UID3 = 0x2002E6B4
-
-	LIBS += -ltimezoneclient \
-			-lclocksettingsutility
-}
-
-SOURCES += skinnableclock.cpp \
-		   analogclock.cpp \
-		   digitalclock.cpp
-
-HEADERS += skinnableclock.h \
-		   analogclock.h \
-		   digitalclock.h
-
-RESOURCES += ../../data/clockwidget.qrc
-
-# End of file	--Don't remove this.
+ 
+           
+TEMPLATE = subdirs
+SUBDIRS += clockwidgetimpl
+SUBDIRS += clockwidgetplugin
+CONFIG += ordered
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/clockwidgetimpl.pro	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,59 @@
+#
+# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+#  programs, is protected by copyright controlled by Nokia.  All
+#  rights are reserved.  Copying, including reproducing, storing,
+#  adapting or translating, any or all of this material requires the
+#  prior written consent of Nokia.  This material also contains
+#  confidential information which may not be disclosed to others
+#  without the prior written consent of Nokia.
+# ============================================================================
+#
+# Description:
+#
+
+TEMPLATE = lib
+TARGET = clockwidget
+CONFIG += hb
+DEFINES += CLOCKWIDGET_LIB
+
+win32{
+CONFIG(release, debug|release){
+  TARGET = clockwidget
+  DESTDIR = ../release # for easy plugin loading
+}else{
+  TARGET = clockwidgetd
+  DESTDIR = ../debug # for easy plugin loading
+  }
+}
+
+DEPENDPATH += ./inc \
+              ./src
+
+INCLUDEPATH += ./inc
+
+SOURCES += \
+		clockwidget.cpp \
+		analogclockwidget.cpp 
+
+HEADERS += \
+        clockwidgetdefines.h \ 
+		clockwidget.h \
+		analogclockwidget.h 
+            
+symbian {
+    TARGET.UID3 = 0x2002E715
+    TARGET.EPOCALLOWDLLDATA = 1
+    TARGET.CAPABILITY = CAP_GENERAL_DLL
+    LIBS += -lbafl
+}
+
+RESOURCES = clockwidgetimpl.qrc
+
+# End of file	--Don't remove this
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/clockwidgetimpl.qrc	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,6 @@
+<RCC>
+    <qresource prefix="/resource" >
+        <file alias="analogclockwidget.widgetml">resource/analogclockwidget.widgetml</file>
+        <file alias="analogclockwidget.css">resource/analogclockwidget.css</file>
+    </qresource>
+</RCC>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/inc/analogclockwidget.h	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,57 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Clock widget
+*
+*/
+
+#ifndef ANALOGCLOCKWIDGET_H
+#define ANALOGCLOCKWIDGET_H
+
+// User includes 
+#include <hbwidget.h>
+#include <QPointer>
+
+// Forward declarations
+class HbIconItem;
+class QTimer;
+
+class AnalogClockWidget : public HbWidget
+{
+    Q_OBJECT
+
+public:
+    AnalogClockWidget(QGraphicsItem *parent = 0);
+    virtual ~AnalogClockWidget();
+
+public slots:
+    void tick();
+
+protected:
+    void resizeEvent(QGraphicsSceneResizeEvent *event);
+    void polish(HbStyleParameters& params);
+
+private:    
+    void updatePrimitives();
+
+private:
+    QPointer<QTimer>     mTimer;
+    QPointer<HbIconItem> mClockBackground;
+    QPointer<HbIconItem> mClockHourHand;
+    QPointer<HbIconItem> mClockMinuteHand;
+    QPointer<HbIconItem> mClockSecondHand;
+};
+
+#endif
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/inc/clockwidget.h	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,61 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Clock widget
+*
+*/
+
+#ifndef CLOCKWIDGET_H
+#define CLOCKWIDGET_H
+
+// System includes
+#include <hbwidget.h>
+
+// User includes
+#include "clockwidgetdefines.h"
+
+//Forward declarations
+
+class QGraphicsLinearLayout;
+class AnalogClockWidget;
+
+class CLOCKWIDGET_EXPORT  ClockWidget : public HbWidget
+{
+    Q_OBJECT
+    Q_PROPERTY(ClockType clockType READ clockType WRITE setClockType)
+
+public:
+    enum ClockType
+    {
+        ClockTypeAnalog,
+        ClockTypeDigital
+    };
+
+    ClockWidget(QGraphicsItem *parent = 0, Qt::WindowFlags flags = 0);
+    ~ClockWidget();
+    ClockType clockType() const;
+    void setClockType(const ClockType &type);
+    void loadClockWidget();
+
+public slots:
+    void updateTime();
+    
+private:
+    ClockType mClockType;
+    AnalogClockWidget *mAnalogClock;
+    QGraphicsLinearLayout *mLayout;
+};
+
+#endif // CLOCKWIDGET_H
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/inc/clockwidgetdefines.h	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,32 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  The dll header file.
+*
+*/
+
+
+#ifndef CLOCKWIDGETDEFINES_H
+#define CLOCKWIDGETDEFINES_H
+
+#include <qglobal.h>
+
+#ifdef CLOCKWIDGET_LIB
+#   define CLOCKWIDGET_EXPORT Q_DECL_EXPORT
+#else
+#   define CLOCKWIDGET_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif // CLOCKWIDGETDEFINES_H
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/resource/analogclockwidget.css	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,23 @@
+AnalogClockWidget {
+	layout: layout_1;
+}
+
+AnalogClockWidget::clock_background { 
+  size-policy: expanding expanding;
+  zvalue: 0;
+}
+
+AnalogClockWidget::clock_minute_hand {
+  size-policy:expanding expanding;
+  zvalue: 1;
+}
+
+AnalogClockWidget::clock_hour_hand {
+  size-policy:expanding expanding;
+  zvalue: 2;
+}
+
+AnalogClockWidget::clock_second_hand {
+  size-policy:expanding expanding;
+  zvalue: 3;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/resource/analogclockwidget.widgetml	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,24 @@
+<hbwidget version="0.1">
+    <layout name="layout_1" type="mesh">
+        <meshitem src="clock_background" srcEdge="TOP" dst="" dstEdge="TOP" spacing="0.0un" />
+        <meshitem src="clock_background" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" spacing="0.0un" />
+        <meshitem src="clock_background" srcEdge="LEFT" dst="" dstEdge="LEFT" spacing="0.0un" />
+        <meshitem src="clock_background" srcEdge="RIGHT" dst="" dstEdge="RIGHT" spacing="0.0un" />
+        
+        <meshitem src="clock_hour_hand" srcEdge="TOP" dst="clock_background" dstEdge="TOP" spacing="0.0un" />
+        <meshitem src="clock_hour_hand" srcEdge="BOTTOM" dst="clock_background" dstEdge="BOTTOM" spacing="0.0un" />
+        <meshitem src="clock_hour_hand" srcEdge="LEFT" dst="clock_background" dstEdge="LEFT" spacing="0.0un" />
+        <meshitem src="clock_hour_hand" srcEdge="RIGHT" dst="clock_background" dstEdge="RIGHT" spacing="0.0un" />
+        
+        <meshitem src="clock_minute_hand" srcEdge="TOP" dst="clock_background" dstEdge="TOP" spacing="0.0un" />
+        <meshitem src="clock_minute_hand" srcEdge="BOTTOM" dst="clock_background" dstEdge="BOTTOM" spacing="0.0un" />
+        <meshitem src="clock_minute_hand" srcEdge="LEFT" dst="clock_background" dstEdge="LEFT" spacing="0.0un" />
+        <meshitem src="clock_minute_hand" srcEdge="RIGHT" dst="clock_background" dstEdge="RIGHT" spacing="0.0un" />
+        
+        <meshitem src="clock_second_hand" srcEdge="TOP" dst="clock_background" dstEdge="TOP" spacing="0.0un" />
+        <meshitem src="clock_second_hand" srcEdge="BOTTOM" dst="clock_background" dstEdge="BOTTOM" spacing="0.0un" />
+        <meshitem src="clock_second_hand" srcEdge="LEFT" dst="clock_background" dstEdge="LEFT" spacing="0.0un" />
+        <meshitem src="clock_second_hand" srcEdge="RIGHT" dst="clock_background" dstEdge="RIGHT" spacing="0.0un" />
+
+    </layout>
+</hbwidget>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/src/analogclockwidget.cpp	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,133 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  AnalogClockWidget
+*
+*/
+
+// System includes
+#include <HbIconItem>
+#include <HbStyleLoader>
+#include <QTime>
+#include <QTimer>
+
+// User includes
+#include "analogclockwidget.h"
+
+// Constants
+const int clockUpdateInterval  (1000); // msec
+
+/*!
+    \class AnalogClockWidget
+
+    This class implements the analogclock widget which gets displayed
+    in the clockmainview when the clocktype is set to analog type.
+*/
+
+/*!
+    Constructor.
+    \param parent The parent of type QGraphicsItem.
+*/
+AnalogClockWidget::AnalogClockWidget(QGraphicsItem *parent)
+    : HbWidget(parent)
+{
+    HbStyleLoader::registerFilePath(":/resource");
+    updatePrimitives();
+    mTimer = new QTimer(this);
+    connect(mTimer, SIGNAL(timeout()), SLOT(tick()));
+    mTimer->start(clockUpdateInterval);
+}
+
+/*!
+    Destructor.
+ */
+AnalogClockWidget::~AnalogClockWidget()
+{    
+    mTimer->stop(); 
+    HbStyleLoader::unregisterFilePath(":/resource");
+}
+
+/*!
+    Handles resize event from HbWidget
+ */
+void AnalogClockWidget::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+    QGraphicsWidget::resizeEvent(event);
+    updatePrimitives();   
+}
+
+/*!
+    @copydoc HbWidget::updatePrimitives()
+ */
+void AnalogClockWidget::updatePrimitives()
+{
+    if (!mClockBackground) {
+        mClockBackground = new HbIconItem(QLatin1String("qtg_graf_clock_day_bg"), this);
+        HbStyle::setItemName(mClockBackground, QLatin1String("clock_background"));
+    }
+
+    // Calculate angles for clock hands.
+    QTime time = QTime::currentTime();
+    qreal s = 6 * time.second();
+    qreal m = 6 * (time.minute() + s/360);
+    qreal h = 30 * ((time.hour() % 12) + m/360);
+
+	if (!mClockHourHand) {
+        mClockHourHand = new HbIconItem(QLatin1String("qtg_graf_clock_day_hour"), this);
+        HbStyle::setItemName(mClockHourHand, QLatin1String("clock_hour_hand"));
+    }
+
+    int x = mClockHourHand->geometry().width()/2;
+    int y = mClockHourHand->geometry().height()/2;
+    mClockHourHand->setTransform(QTransform().translate(x, y).rotate(h).translate(-x, -y));
+
+	if (!mClockMinuteHand) {
+        mClockMinuteHand = new HbIconItem(QLatin1String("qtg_graf_clock_day_min"), this);
+        HbStyle::setItemName(mClockMinuteHand, QLatin1String("clock_minute_hand"));
+    }
+
+    x = mClockMinuteHand->geometry().width()/2;
+    y = mClockMinuteHand->geometry().height()/2;
+    mClockMinuteHand->setTransform(QTransform().translate(x, y).rotate(m).translate(-x, -y));
+    
+      
+    if (!mClockSecondHand) {
+         mClockSecondHand = new HbIconItem(QLatin1String("qtg_graf_clock_day_sec"), this);
+        HbStyle::setItemName(mClockSecondHand, QLatin1String("clock_second_hand"));
+        }
+
+    x = mClockSecondHand->geometry().width()/2;
+    y = mClockSecondHand->geometry().height()/2;
+    mClockSecondHand->setTransform(QTransform().translate(x, y).rotate(s).translate(-x, -y));
+
+}
+
+/*!
+    Updates clock visualization according to current time
+ */
+void AnalogClockWidget::tick()
+{
+    updatePrimitives();
+    update();
+}
+
+/*!
+    Handles polish event
+ */
+void AnalogClockWidget::polish( HbStyleParameters& params ) 
+{  
+    HbWidget::polish(params); 
+    updatePrimitives();
+} 
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetimpl/src/clockwidget.cpp	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,93 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Clockwidget
+*
+*/
+
+// System includes
+#include <QGraphicsLinearLayout>
+
+// User includes
+#include "clockwidget.h"
+#include "analogclockwidget.h"
+
+/*!
+    \class ClockWidget
+
+    This is the generic wrapper for the clockwidget which manages analog and ditial clockwidgets.
+ */
+
+/*!
+    Constructor.
+ */
+ClockWidget::ClockWidget(QGraphicsItem *parent, Qt::WindowFlags flags)
+    : HbWidget(parent, flags),
+      mClockType(ClockTypeAnalog)
+{    
+    loadClockWidget();
+}
+
+/*!
+    Destructor.
+*/
+ClockWidget::~ClockWidget()
+{    
+    
+}
+
+/*!
+    Returns the clock type.
+*/
+ClockWidget::ClockType ClockWidget::clockType() const
+{
+    return mClockType;
+}
+  
+/*!
+    Sets the clock type;
+*/
+void ClockWidget::setClockType(const ClockType &type)
+{
+    if (type == ClockTypeDigital) {
+        mClockType = ClockTypeDigital;
+    } else {
+        mClockType = ClockTypeAnalog;
+    }
+}
+
+/*!
+    Updates the clock time with every second
+*/
+void ClockWidget::updateTime()
+{
+    if (mClockType == ClockTypeAnalog) {  
+        mAnalogClock->tick();    
+    }
+}
+
+/*!
+    Constructs the clockwidget based upon its type.
+*/
+void ClockWidget::loadClockWidget()
+{
+    if (mClockType == ClockTypeAnalog) {
+        mAnalogClock = new AnalogClockWidget(this);        
+        mLayout = new QGraphicsLinearLayout(Qt::Vertical);
+        mLayout->setContentsMargins(0,0,0,0);
+        mLayout->addItem(mAnalogClock);
+        setLayout(mLayout);
+    }
+}
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetplugin/clockwidgetplugin.h	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,38 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description: Clockwidget custom document loader plugin.
+*
+*/
+
+#ifndef CLOCKWIDGETDPLUGIN_H    
+#define CLOCKWIDGETDPLUGIN_H
+
+// System includes
+#include <hbdocumentloaderplugin.h>
+#include <qplugin.h>
+
+
+class ClockWidgetPlugin : public HbDocumentLoaderPlugin
+{
+
+private:
+    virtual QObject *createObject(const QString &type, const QString &name);
+    virtual QList<const QMetaObject *> supportedObjects();
+    
+};
+Q_EXPORT_PLUGIN(ClockWidgetPlugin) 
+
+#endif // CLOCKWIDGETDPLUGIN_H
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetplugin/clockwidgetplugin.pro	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,67 @@
+#
+# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+# 
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+# 
+# Contributors: 
+# 
+# Description: This is the project specification file for the
+# clockwidgetplugin.
+#
+
+TEMPLATE = lib
+TARGET = clockwidgetplugin
+
+win32{
+CONFIG(release, debug|release){
+	TARGET = clockwidgetplugin
+	} else {
+	TARGET = clockwidgetplugind
+	}
+}
+
+CONFIG += hb plugin
+
+win32{
+CONFIG(release, debug|release){
+		DESTDIR = ../release # for easy plugin loading
+		LIBS += -L../release -lclockwidget
+	} else {
+		DESTDIR = ../debug # for easy plugin loading
+		LIBS += -L../debug -lclockwidgetd
+	}
+}
+
+SOURCES += \
+        main.cpp
+
+INCLUDEPATH += \
+            ../clockwidgetimpl \ 
+            ../clockwidgetimpl/inc
+
+symbian: { 
+    TARGET.UID3 = 0x2002E716
+	TARGET.EPOCALLOWDLLDATA=1
+	TARGET.CAPABILITY = CAP_GENERAL_DLL
+	  
+	LIBS += \
+	    -lclockwidget.dll
+
+	pluginstub.sources = clockwidgetplugin.dll
+	pluginstub.path = /resource/plugins
+	DEPLOYMENT += pluginstub
+	DESTDIR = $$HB_PLUGINS_DIR
+}
+
+!local {
+    target.path = $$HB_PLUGINS_DIR
+    INSTALLS += target
+}
+
+# End of file	--Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/clockwidgetplugin/main.cpp	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,55 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:  Clock widget
+*
+*/
+
+// User includes
+#include "clockwidgetplugin.h"
+#include "clockwidget.h"
+
+/*!
+    \class ClockWidgetPlugin
+
+    This class is a wrapper plug-in DLL that references the custom widget DLLs that need to be part of the widget package. 
+*/
+
+
+/*!
+    Creates an instance of each of the types of custom widget supported in this plug-in. 
+    The code uses the parameter type to control which type of object must be created. 
+    It also sets the created object's name 
+*/
+QObject *ClockWidgetPlugin::createObject(const QString &type, const QString &name)
+{
+     if (type == ClockWidget::staticMetaObject.className()) {
+        QObject *object = new ClockWidget();
+        object->setObjectName(name);
+        return object;
+    }
+    return 0;
+}
+
+/*!
+    Get a QMetaObject for each custom widget and add it to the list of supported objects. 
+    A QMetaObject pointer must be added for every custom widget that is created by the plug-in.
+*/ 
+QList<const QMetaObject *> ClockWidgetPlugin::supportedObjects()
+{
+    QList<const QMetaObject *> list;
+    list.append( &ClockWidget::staticMetaObject );
+    return list;
+}
+
+// End of file  --Don't remove this.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clock/clockui/clockwidget/eabi/clockwidgetu.def	Tue May 18 13:16:49 2010 +0100
@@ -0,0 +1,22 @@
+EXPORTS
+	_ZN11ClockWidget10updateTimeEv @ 1 NONAME
+	_ZN11ClockWidget11qt_metacallEN11QMetaObject4CallEiPPv @ 2 NONAME
+	_ZN11ClockWidget11qt_metacastEPKc @ 3 NONAME
+	_ZN11ClockWidget12setClockTypeERKNS_9ClockTypeE @ 4 NONAME
+	_ZN11ClockWidget15loadClockWidgetEv @ 5 NONAME
+	_ZN11ClockWidget16staticMetaObjectE @ 6 NONAME DATA 16
+	_ZN11ClockWidget19getStaticMetaObjectEv @ 7 NONAME
+	_ZN11ClockWidgetC1EP13QGraphicsItem6QFlagsIN2Qt10WindowTypeEE @ 8 NONAME
+	_ZN11ClockWidgetC2EP13QGraphicsItem6QFlagsIN2Qt10WindowTypeEE @ 9 NONAME
+	_ZN11ClockWidgetD0Ev @ 10 NONAME
+	_ZN11ClockWidgetD1Ev @ 11 NONAME
+	_ZN11ClockWidgetD2Ev @ 12 NONAME
+	_ZNK11ClockWidget10metaObjectEv @ 13 NONAME
+	_ZNK11ClockWidget9clockTypeEv @ 14 NONAME
+	_ZTI11ClockWidget @ 15 NONAME
+	_ZTV11ClockWidget @ 16 NONAME
+	_ZThn16_N11ClockWidgetD0Ev @ 17 NONAME
+	_ZThn16_N11ClockWidgetD1Ev @ 18 NONAME
+	_ZThn8_N11ClockWidgetD0Ev @ 19 NONAME
+	_ZThn8_N11ClockWidgetD1Ev @ 20 NONAME
+
--- a/clock/clockui/clockwidget/inc/analogclock.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-// analogclock.h
-
-#ifndef ANALOGCLOCK_H
-#define ANALOGCLOCK_H
-
-#include <QObject>
-
-#include <hbwidget.h>
-#include <hbeffect.h>
-
-class QGraphicsWidget;
-class QStyleOptionGraphicsItem;
-class QPainter;
-class HbIconItem;
-class HbStackedLayout;
-
-class AnalogClock : public HbWidget
-{
-	Q_OBJECT
-
-public:
-	AnalogClock(QGraphicsWidget *parent = 0);
-	~AnalogClock();
-
-public:
-	void showNext();
-	void showPrev();
-
-public slots:
-	void updateDisplay();
-
-protected:
-	void paint(QPainter *painter,
-	           const QStyleOptionGraphicsItem *option,
-	           QWidget *widget = 0);
-
-private:
-	void constructImages();
-
-private slots:
-	void widget_hidden(const HbEffect::EffectStatus &status);
-
-private:
-	QString mFaceName;
-	QString mHourName;
-	QString mMinuteName;
-
-	HbIconItem *mClockFace;
-	HbIconItem *mHourHand;
-	HbIconItem *mMinuteHand;
-	HbStackedLayout* mParentLayout;
-
-	bool mIsDay;
-	bool mFirstDraw;
-	int mCurrentClock;
-};
-
-#endif // ANALOGCLOCK_P_H
-
-// End of file
--- a/clock/clockui/clockwidget/inc/clockwidgetdefines.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
- * All rights reserved.
- * This component and the accompanying materials are made available
- * under the terms of "Eclipse Public License v1.0"
- * which accompanies this distribution, and is available
- * at the URL "http://www.eclipse.org/legal/epl-v10.html".
- *
- * Initial Contributors:
- * Nokia Corporation - initial contribution.
- *
- * Contributors:
- *
- * Description:
- * Common definition file for clockwidget component.
- *
- */
- 
-#ifndef CLOCKWIDGETDEFINES_H
-#define CLOCKWIDGETDEFINES_H
-
-// System includes
-#include <qglobal.h>
- 
-#ifdef CLOCKWIDGET_LIB
-#   define CLOCKWIDGET_EXPORT Q_DECL_EXPORT
-#else
-#   define CLOCKWIDGET_EXPORT Q_DECL_IMPORT
-#endif
- 
-#endif // CLOCKWIDGETDEFINES_H
- 
-// End of file	--Don't remove this.
--- a/clock/clockui/clockwidget/inc/digitalclock.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-// digitalclock.h
-
-#ifndef DIGITALCLOCK_H
-#define DIGITALCLOCK_H
-
-#include <QObject>
-
-#include <hbwidget.h>
-#include <hbeffect.h>
-
-class QGraphicsLinearLayout;
-class QGraphicsWidget;
-class HbIconItem;
-class HbLabel;
-
-class DigitalClock : public HbWidget
-{
-    Q_OBJECT
-
-public:
-    DigitalClock(QGraphicsWidget *parent = 0);
-    ~DigitalClock();
-
-public:
-    void updateDisplay();
-
-public slots:
-	void fadeBackIn(const HbEffect::EffectStatus &status);
-
-private:
-    void constructImages();
-
-private:
-    QGraphicsLinearLayout *mDigitalClockLayout;
-    QGraphicsLinearLayout *mWidgetLayout;
-    QGraphicsWidget *mDummyWidget;
-
-    HbIconItem *mPositionOne;
-    HbIconItem *mPositionTwo;
-    HbIconItem *mPositionThree;
-    HbIconItem *mPositionFour;
-    HbIconItem *mSeperator;
-    HbLabel *mAmPmLabel;
-
-    bool m24HourFormat;
-};
-
-#endif // DIGITALCLOCK_H
-
-// End of file
--- a/clock/clockui/clockwidget/inc/skinnableclock.h	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
- * All rights reserved.
- * This component and the accompanying materials are made available
- * under the terms of "Eclipse Public License v1.0"
- * which accompanies this distribution, and is available
- * at the URL "http://www.eclipse.org/legal/epl-v10.html".
- *
- * Initial Contributors:
- * Nokia Corporation - initial contribution.
- *
- * Contributors:
- *
- * Description:
- *
- */
-
-#ifndef SKINNABLECLOCK_H
-#define SKINNABLECLOCK_H
-
-#include <QObject>
-#include <hbwidget.h>
-#include <hbeffect.h>
-
-#include "clockwidgetdefines.h"
-
-class QTimer;
-class QEvent;
-class QGraphicsLinearLayout;
-class AnalogClock;
-class DigitalClock;
-class TimezoneClient;
-class SettingsUtility;
-
-class CLOCKWIDGET_EXPORT SkinnableClock : public HbWidget
-{
-    Q_OBJECT
-
-public:
-    SkinnableClock(QGraphicsItem *parent = 0);
-    ~SkinnableClock();
-
-public:
-    bool clockTypeAnalog();
-    bool clockFormat24();
-
-public slots:
-    void updateDisplay(bool newTimer = true);
-    void updateClockType();
-    void finishChangeType(const HbEffect::EffectStatus &status);
-
-protected:
-//	bool sceneEvent(QEvent *event);
-	void paint(QPainter *painter,
-			   const QStyleOptionGraphicsItem *option,
-			   QWidget *widget = 0);
-
-private:
-    void setClockTypeAnalog(bool analog);
-    void startChangeType();
-
-private:
-    QTimer *mTickTimer;
-    QGraphicsLinearLayout *mLayout;
-
-    AnalogClock *mAnalogClock;
-    DigitalClock *mDigitalClock;
-    TimezoneClient *mClient;
-    SettingsUtility *mSettingsUtility;
-
-    bool mAnalog;
-    bool mClockFormat24;
-    bool mUpdateNeeded;
-};
-
-#endif // SKINNABLECLOCK_H
-
-// End of file
--- a/clock/clockui/clockwidget/src/analogclock.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,241 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-// analogclock.cpp
-
-#include <QTime>
-#include <QTimer>
-#include <QPainter>
-#include <QStyleOptionGraphicsItem>
-#include <QGraphicsWidget>
-#include <hbiconitem.h>
-#include <hbstackedlayout.h>
-
-#include "analogclock.h"
-
-const QString KPrefix(":/clock/");
-const QString KUnderScore("_");
-const QString KFaceDay(":/clock/analog_face_day");
-const QString KHourDay(":/clock/hour_hand_day");
-const QString KMinDay(":/clock/minute_hand_day");
-const QString KFaceNight("analog_face_night");
-const QString KHourNight("hour_hand_night");
-const QString KMinNight("minute_hand_night");
-
-AnalogClock::AnalogClock(QGraphicsWidget *parent)
-:HbWidget(parent),
- mIsDay(true),
- mFirstDraw(true),
- mCurrentClock(0)
-{
-	// Add the required effects.
-	HbEffect::add(this, 
-	              QString(":/clock/hide_widget.fxml"), 
-	              "hide_widget");
-	
-	// Construct the images here.
-	constructImages();
-
-	// A single shot timer after which the hands are updated to show the
-	// correct time.
-	// TODO: QTimer::singleShot(500, this, SLOT(updateDisplay()));
-}
-
-AnalogClock::~AnalogClock()
-{
-	// No implementation yet.
-}
-
-void AnalogClock::showPrev()
-{
-	mCurrentClock--;
-	if (mCurrentClock < 0) {
-		mCurrentClock = 3;
-	}
-	// Start the effect.
-	HbEffect::start(this, "hide_widget", this, "widget_hidden");
-}
-
-void AnalogClock::showNext()
-{
-	mCurrentClock++;
-	mCurrentClock = mCurrentClock % 4;
-	
-	// Start the effect.
-	HbEffect::start(this, "hide_widget", this, "widget_hidden");
-}
-
-void AnalogClock::updateDisplay()
-{
-	// Take the current time.
-	bool changeClock = false;
-	QTime timeNow = QTime::currentTime();
-	int hourNow = timeNow.hour();
-
-	if (17 < hourNow || 6 > hourNow) {
-		if (mIsDay) {
-			// It was previously day. We need to change the clock
-			changeClock = true;
-		}
-		mIsDay = false;
-	} else {
-		if (!mIsDay) {
-			// It was previously night. We need to change the clock
-			changeClock = true;
-		}
-		mIsDay = true;
-	}
-
-	if (changeClock) {
-		if (mIsDay) {
-			mClockFace->setIconName(mFaceName);
-			mHourHand->setIconName(mHourName);
-			mMinuteHand->setIconName(mMinuteName);
-		} else {
-			mClockFace->setIconName(mFaceName);
-			mHourHand->setIconName(mHourName);
-			mMinuteHand->setIconName(mMinuteName);
-		}
-	}
-
-	// Calculate the rotation angle for hour hand.
-	qreal hourAngle = 30.0*((timeNow.hour()+timeNow.minute()/60.0)); 
-	hourAngle += 270;
-
-	// Rotate the hour hand.
-	mHourHand->setTransform(
-			QTransform().translate(mHourHand->iconItemSize().width()/2, 
-					mHourHand->iconItemSize().height()/2).rotate(hourAngle)
-					.translate(-mHourHand->iconItemSize().width()/2,
-							-mHourHand->iconItemSize().height()/2));
-
-	// Rotate the minute hand.
-	mMinuteHand->setTransform(
-			QTransform().translate(mMinuteHand->iconItemSize().width()/2, 
-					mMinuteHand->iconItemSize().height()/2)
-					.rotate(6.0*(timeNow.minute()+timeNow.second()/60.0))
-					.translate(-mMinuteHand->iconItemSize().width()/2,
-							-mMinuteHand->iconItemSize().height()/2));
-}
-
-void AnalogClock::paint(QPainter *painter, 
-                        const QStyleOptionGraphicsItem *option,
-                        QWidget *widget)
-{
-	Q_UNUSED(painter)
-	Q_UNUSED(option)
-	Q_UNUSED(widget)
-	
-	if (mFirstDraw) {
-		mFirstDraw = false;
-		
-		QTime timeNow = QTime::currentTime();
-		int hourNow = timeNow.hour();
-
-		// Calculate the rotation angle for hour hand.
-		qreal hourAngle = 30.0 * ((timeNow.hour() + timeNow.minute() / 60.0)); 
-		hourAngle += 270;
-
-		// Rotate the hour hand.
-		mHourHand->setTransform(
-				QTransform().translate(mHourHand->iconItemSize().width()/2, 
-						mHourHand->iconItemSize().height()/2).rotate(hourAngle)
-						.translate(-mHourHand->iconItemSize().width()/2,
-								-mHourHand->iconItemSize().height()/2));
-
-		// Rotate the minute hand.
-		mMinuteHand->setTransform(
-				QTransform().translate(mMinuteHand->iconItemSize().width()/2, 
-						mMinuteHand->iconItemSize().height()/2)
-						.rotate(6.0*(timeNow.minute()+timeNow.second()/60.0))
-						.translate(-mMinuteHand->iconItemSize().width()/2,
-								-mMinuteHand->iconItemSize().height()/2));
-		
-	}
-}
-
-void AnalogClock::constructImages()
-{
-	mFaceName.append(KFaceDay);
-	mHourName.append(KHourDay);
-	mMinuteName.append(KMinDay);
-	
-	mParentLayout = new HbStackedLayout(this);
-
-	mClockFace = new HbIconItem(mFaceName, this);
-	mHourHand = new HbIconItem(mHourName, this);
-	mMinuteHand = new HbIconItem(mMinuteName, this);
-
-	mParentLayout->addItem(mClockFace);
-	mParentLayout->addItem(mHourHand);
-	mParentLayout->addItem(mMinuteHand);
-
-	setLayout(mParentLayout);
-}
-
-void AnalogClock::widget_hidden(const HbEffect::EffectStatus &status)
-{
-	Q_UNUSED(status)
-	
-	QString clockNum;
-	clockNum = clockNum.setNum(mCurrentClock);
-	
-	mFaceName.clear();
-	mHourName.clear();
-	mMinuteName.clear();
-	
-	if (mIsDay) {
-		mFaceName.append(KPrefix);
-		mFaceName.append(clockNum);
-		mFaceName.append(KUnderScore);
-		mFaceName.append(KFaceDay);
-
-		mHourName.append(KPrefix);
-		mHourName.append(clockNum);
-		mHourName.append(KUnderScore);
-		mHourName.append(KHourDay);
-
-		mMinuteName.append(KPrefix);
-		mMinuteName.append(clockNum);
-		mMinuteName.append(KUnderScore);
-		mMinuteName.append(KMinDay);
-	} else {
-		mFaceName.append(KPrefix);
-		mFaceName.append(clockNum);
-		mFaceName.append(KUnderScore);
-		mFaceName.append(KFaceNight);
-
-		mHourName.append(KPrefix);
-		mHourName.append(clockNum);
-		mHourName.append(KUnderScore);
-		mHourName.append(KHourNight);
-
-		mMinuteName.append(KPrefix);
-		mMinuteName.append(clockNum);
-		mMinuteName.append(KUnderScore);
-		mMinuteName.append(KMinNight);
-	}
-	
-	mClockFace->setIconName(mFaceName);
-	mHourHand->setIconName(mHourName);
-	mMinuteHand->setIconName(mMinuteName);
-	
-	HbEffect::add(this, QString(":/clock/show_widget.fxml"), "show_widget");
-	HbEffect::start(this, "show_widget");
-}
-
-// End of file
--- a/clock/clockui/clockwidget/src/digitalclock.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,273 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-// digitalclock.cpp
-
-#include <QGraphicsLinearLayout>
-#include <QGraphicsWidget>
-#include <QWidget>
-#include <QTime>
-
-#include <hbiconitem.h>
-#include <hblabel.h>
-#include <hbaction.h>
-
-#include "digitalclock.h"
-
-DigitalClock::DigitalClock(QGraphicsWidget *parent)
-:HbWidget(parent),
-m24HourFormat(false)
-{
-	constructImages();
-}
-
-DigitalClock::~DigitalClock()
-{
-	// No implementation yet.
-}
-
-void DigitalClock::updateDisplay()
-{
-	QTime currentTime = QTime::currentTime();
-	int currentHour, currentMin;
-	if (!m24HourFormat && currentTime.hour() > 12) {
-		currentHour = currentTime.hour() % 12;
-	} else {
-		currentHour = currentTime.hour();
-	}
-	currentMin = currentTime.minute();
-
-	int numAt1, numAt2, numAt3, numAt4;
-	numAt1 = currentHour / 10;
-	numAt2 = currentHour % 10;
-	numAt3 = currentMin / 10;
-	numAt4 = currentMin % 10;
-
-	// The first digit.
-	if (m24HourFormat) {
-		switch (numAt1) {
-			case 0:
-				mPositionOne->setIconName(":/clock/digit_zero");
-				break;
-			case 1:
-				mPositionOne->setIconName(":/clock/digit_one");
-				break;
-			case 2:
-				mPositionOne->setIconName(":/clock/digit_two");
-				break;
-			default:
-				break;
-		}
-	} else {
-		switch (numAt1) {
-			case 0:
-				mPositionOne->setIconName(":/clock/digit_zero");
-				break;
-			case 1:
-				mPositionOne->setIconName(":/clock/digit_one");
-				break;
-			default:
-				break;
-		}
-	}
-
-	// The second digit.
-	switch(numAt2) {
-		case 0:
-			mPositionTwo->setIconName(":/clock/digit_zero");
-			break;
-		case 1:
-			mPositionTwo->setIconName(":/clock/digit_one");
-			break;
-		case 2:
-			mPositionTwo->setIconName(":/clock/digit_two");
-			break;
-		case 3:
-			mPositionTwo->setIconName(":/clock/digit_three");
-			break;
-		case 4:
-			mPositionTwo->setIconName(":/clock/digit_four");
-			break;
-		case 5:
-			mPositionTwo->setIconName(":/clock/digit_five");
-			break;
-		case 6:
-			mPositionTwo->setIconName(":/clock/digit_six");
-			break;
-		case 7:
-			mPositionTwo->setIconName(":/clock/digit_seven");
-			break;
-		case 8:
-			mPositionTwo->setIconName(":/clock/digit_eight");
-			break;
-		case 9:
-			mPositionTwo->setIconName(":/clock/digit_nine");
-			break;
-		default:
-			break;
-	}
-
-	// The separator.
-	mSeperator->setIconName(":/clock/sep_colon");
-	// Start the blinking effect.
-	HbEffect::start(mSeperator, "fade_out", this, "fadeBackIn");
-
-	// The third digit.
-	switch (numAt3) {
-		case 0:
-			mPositionThree->setIconName(":/clock/digit_zero");
-			break;
-		case 1:
-			mPositionThree->setIconName(":/clock/digit_one");
-			break;
-		case 2:
-			mPositionThree->setIconName(":/clock/digit_two");
-			break;
-		case 3:
-			mPositionThree->setIconName(":/clock/digit_three");
-			break;
-		case 4:
-			mPositionThree->setIconName(":/clock/digit_four");
-			break;
-		case 5:
-			mPositionThree->setIconName(":/clock/digit_five");
-			break;
-		case 6:
-			mPositionThree->setIconName(":/clock/digit_six");
-			break;
-		case 7:
-			mPositionThree->setIconName(":/clock/digit_seven");
-			break;
-		case 8:
-			mPositionThree->setIconName(":/clock/digit_eight");
-			break;
-		case 9:
-			mPositionThree->setIconName(":/clock/digit_nine");
-			break;
-		default:
-			break;
-	}
-
-	// The fourth digit.
-	switch (numAt4) {
-		case 0:
-			mPositionFour->setIconName(":/clock/digit_zero");
-			break;
-		case 1:
-			mPositionFour->setIconName(":/clock/digit_one");
-			break;
-		case 2:
-			mPositionFour->setIconName(":/clock/digit_two");
-			break;
-		case 3:
-			mPositionFour->setIconName(":/clock/digit_three");
-			break;
-		case 4:
-			mPositionFour->setIconName(":/clock/digit_four");
-			break;
-		case 5:
-			mPositionFour->setIconName(":/clock/digit_five");
-			break;
-		case 6:
-			mPositionFour->setIconName(":/clock/digit_six");
-			break;
-		case 7:
-			mPositionFour->setIconName(":/clock/digit_seven");
-			break;
-		case 8:
-			mPositionFour->setIconName(":/clock/digit_eight");
-			break;
-		case 9:
-			mPositionFour->setIconName(":/clock/digit_nine");
-			break;
-		default:
-			break;
-	}
-
-	if (!m24HourFormat) {
-		mAmPmLabel->setPlainText(currentTime.toString("ap"));
-	} else {
-		mAmPmLabel->setPlainText((""));
-	}
-}
-
-void DigitalClock::fadeBackIn(const HbEffect::EffectStatus &status)
-{
-	Q_UNUSED(status)
-
-	HbEffect::start(mSeperator, "fade_in");
-}
-
-void DigitalClock::constructImages()
-{
-	mDummyWidget = new QGraphicsWidget(this);
-	mWidgetLayout = new QGraphicsLinearLayout(Qt::Vertical);
-	mDigitalClockLayout = 
-		new QGraphicsLinearLayout(Qt::Horizontal, mDummyWidget);
-
-	// The icon at the first position.
-	mPositionOne = new HbIconItem(QString(), mDummyWidget);
-	mPositionOne->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-	mDigitalClockLayout->addItem(mPositionOne);
-
-	// The icon at the second position.
-	mPositionTwo = new HbIconItem(QString(), mDummyWidget);
-	mPositionTwo->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-	mDigitalClockLayout->addItem(mPositionTwo);
-
-	// The icon for separator.
-	mSeperator = new HbIconItem(QString(), mDummyWidget);
-	mSeperator->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-	mDigitalClockLayout->addItem(mSeperator);
-
-	// The icon at the third position.
-	mPositionThree = new HbIconItem(QString(), mDummyWidget);
-	mPositionThree->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-	mDigitalClockLayout->addItem(mPositionThree);
-
-	// The icon at the fourth position.
-	mPositionFour = new HbIconItem(QString(), mDummyWidget);
-	mPositionFour->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-	mDigitalClockLayout->addItem(mPositionFour);
-
-	mDummyWidget->setLayout(mDigitalClockLayout);
-
-	mAmPmLabel = new HbLabel((""), this);
-	//mAmPmLabel->setLogicalFont(Hb::FontPrimarySmall);
-	mAmPmLabel->setAlignment(Qt::AlignRight);
-
-	mWidgetLayout->addItem(mDummyWidget);
-	mWidgetLayout->addItem(mAmPmLabel);
-	
-	QGraphicsLinearLayout *layout = 
-		new QGraphicsLinearLayout(Qt::Horizontal, this);
-	layout->addStretch(100);
-	layout->addItem(mWidgetLayout);
-	layout->addStretch(100);
-
-	setLayout(layout);
-	
-	// Add the blinking effect to the separator.
-	HbEffect::add(mSeperator, 
-	              QString(":/clock/fade_out.fxml"), 
-	              "fade_out");
-	HbEffect::add(mSeperator, 
-	              QString(":/clock/fade_in.fxml"), 
-	              "fade_in");
-}
-
-// End of file
--- a/clock/clockui/clockwidget/src/skinnableclock.cpp	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,242 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-// skinnableclock.cpp
-
-#include <QTimer>
-#include <QTime>
-#include <QGraphicsLinearLayout>
-#include <hbaction.h>
-
-#include "skinnableclock.h"
-#include "analogclock.h"
-#include "digitalclock.h"
-#include "timezoneclient.h"
-#include "settingsutility.h"
-
-SkinnableClock::SkinnableClock(QGraphicsItem *parent)
-:HbWidget(parent),
- mAnalogClock(0),
- mDigitalClock(0),
- mAnalog(true),
- mClockFormat24(true),
- mUpdateNeeded(true)
-{
-	// Enable the gestures for the widget and subscribe for "PAN" gestures.
-/*	QApplication::setAttribute(Qt::AA_EnableGestures);
-	grabGesture(Qt::PanGesture);*/
-
-	qDebug("clock: SkinnableClock::SkinnableClock() -->");
-
-	// Construct the settings utility.
-	mSettingsUtility = new SettingsUtility(this);
-
-	qDebug("clock: SkinnableClock::SkinnableClock() - constructed settingsutility.");
-
-	// Construct the layout and the widgets.
-	mLayout = new QGraphicsLinearLayout(Qt::Vertical, this);
-	mAnalogClock = new AnalogClock(this);
-	mDigitalClock = new DigitalClock(this);
-
-    // Set the clock type according to the seetings.
-	// And construct the corresponding widget.
-	QStringList clockTypeList;
-	int typeIndex = mSettingsUtility->clockType(clockTypeList);
-	if (0 == typeIndex) {
-		setClockTypeAnalog(true);
-    } else {
-    	setClockTypeAnalog(false);
-    }
-
-    setLayout(mLayout);
-
-    // Add the required effects.
-    HbEffect::add(mAnalogClock,
-                  QString(":/clock/disappear.fxml"),
-                  "disappear");
-    HbEffect::add(mDigitalClock,
-                  QString(":/clock/disappear.fxml"),
-                  "disappear");
-    HbEffect::add(mAnalogClock,
-                  QString(":/clock/appear.fxml"),
-                  "appear");
-    HbEffect::add(mDigitalClock,
-                  QString(":/clock/appear.fxml"),
-                  "appear");
-
-    mClient = new TimezoneClient(this);
-    qDebug("clock: SkinnableClock::SkinnableClock() - constructed tzclient");
-
-    connect(mClient, SIGNAL(timechanged()),
-            this, SLOT(updateDisplay()));
-    connect(mClient, SIGNAL(timechanged()),
-            this, SLOT(updateClockType()));
-
-    // Start a timer.
-    mTickTimer = new QTimer(this);
-    QObject::connect(mTickTimer, SIGNAL(timeout()),
-                     this, SLOT(updateDisplay()));
-    // TODO: mTickTimer->start(60000 - 1000 * QTime::currentTime().second());
-    mTickTimer->start(1000);
-
-    qDebug("clock: SkinnableClock::SkinnableClock() <--");
-}
-
-SkinnableClock::~SkinnableClock()
-{
-    // No implementation yet.
-}
-
-
-bool SkinnableClock::clockTypeAnalog()
-{
-    return mAnalog;
-}
-
-bool SkinnableClock::clockFormat24()
-{
-    return mClockFormat24;
-}
-
-void SkinnableClock::updateDisplay(bool newTimer)
-{
-	if (newTimer) {
-		// Start the timer again for 1 minute.
-		// TODO: mTickTimer->start(60000 - 1000 * QTime::currentTime().second());
-		mTickTimer->start(1000);
-	}
-
-	if (mAnalog) {
-		mAnalogClock->updateDisplay();
-	} else {
-		mDigitalClock->updateDisplay();
-	}
-}
-
-void SkinnableClock::updateClockType()
-{
-	// Update the clock type according to the seetings.
-	QStringList clockTypeList;
-	int typeIndex = mSettingsUtility->clockType(clockTypeList);
-
-	if ((mAnalog && 1 == typeIndex) || (!mAnalog && 0 == typeIndex)) {
-	    mUpdateNeeded = true;
-	    mAnalog = !mAnalog;
-		mDigitalClock->hide();
-		mAnalogClock->hide();
-    } else {
-    	mUpdateNeeded = false;
-    }
-}
-
-/*bool SkinnableClock::sceneEvent(QEvent *event)
-{
-	if (event->type() == QEvent::GraphicsSceneGesture) {
-		QGraphicsSceneGestureEvent *gestureEvent =
-			static_cast<QGraphicsSceneGestureEvent*>(event);
-		if (const QGesture *gesture = gestureEvent->gesture(Qt::PanGesture)) {
-			const QPanningGesture *panningGesture =
-				static_cast<const QPanningGesture*>(gesture);
-
-			if (Qt::GestureFinished == gesture->state()) {
-				if (Qt::LeftDirection == panningGesture->direction()) {
-					if (mAnalog) {
-						mAnalogClock->showPrev();
-					}
-				} else if (Qt::RightDirection == panningGesture->direction()) {
-					if (mAnalog) {
-						mAnalogClock->showNext();
-					}
-				} else if (Qt::UpDirection == panningGesture->direction() ||
-						Qt::DownDirection == panningGesture->direction()) {
-					startChangeType();
-				}
-				event->accept();
-				return true;
-			}
-			event->accept();
-			return true;
-		}
-	}
-	return HbWidget::sceneEvent(event);
-}*/
-
-void SkinnableClock::paint(QPainter *painter,
-						   const QStyleOptionGraphicsItem *option,
-						   QWidget *widget)
-{
-	Q_UNUSED(painter)
-	Q_UNUSED(option)
-	Q_UNUSED(widget)
-
-	if (mUpdateNeeded) {
-	    setClockTypeAnalog(mAnalog);
-	    mUpdateNeeded = !mUpdateNeeded;
-    }
-}
-
-void SkinnableClock::setClockTypeAnalog(bool analog)
-{
-	if (analog) {
-		mDigitalClock->hide();
-		mLayout->removeItem(mDigitalClock);
-		mAnalogClock->show();
-		mLayout->addItem(mAnalogClock);
-	} else {
-		mAnalogClock->hide();
-		mLayout->removeItem(mAnalogClock);
-		mDigitalClock->show();
-		mLayout->addItem(mDigitalClock);
-	}
-
-	mAnalog = analog;
-
-	// Update the display.
-	updateDisplay(false);
-}
-
-void SkinnableClock::startChangeType()
-{
-	if (mAnalog) {
-		HbEffect::start(mAnalogClock,
-		                "disappear",
-		                this,
-		                "finishChangeType");
-	} else {
-		HbEffect::start(mDigitalClock,
-		                "disappear",
-		                this,
-		                "finishChangeType");
-	}
-}
-
-void SkinnableClock::finishChangeType(const HbEffect::EffectStatus &status)
-{
-	Q_UNUSED(status)
-
-	setClockTypeAnalog(!mAnalog);
-
-	if (mAnalog) {
-		HbEffect::start(mAnalogClock,
-		                "appear");
-	} else {
-		HbEffect::start(mDigitalClock,
-		                "appear");
-	}
-}
-
-// End of file
--- a/clock/clockui/eabi/clockalarmeditoru.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/eabi/clockalarmeditoru.def	Tue May 18 13:16:49 2010 +0100
@@ -1,12 +1,8 @@
 EXPORTS
 	_ZN16ClockAlarmEditor15showAlarmEditorEv @ 1 NONAME
-	_ZN16ClockAlarmEditorC1EiP15QGraphicsWidget @ 2 NONAME
-	_ZN16ClockAlarmEditorC2EiP15QGraphicsWidget @ 3 NONAME
+	_ZN16ClockAlarmEditorC1ER11AlarmClientiP7QObject @ 2 NONAME
+	_ZN16ClockAlarmEditorC2ER11AlarmClientiP7QObject @ 3 NONAME
 	_ZN16ClockAlarmEditorD0Ev @ 4 NONAME
 	_ZN16ClockAlarmEditorD1Ev @ 5 NONAME
 	_ZN16ClockAlarmEditorD2Ev @ 6 NONAME
-	_ZThn16_N16ClockAlarmEditorD0Ev @ 7 NONAME
-	_ZThn16_N16ClockAlarmEditorD1Ev @ 8 NONAME
-	_ZThn8_N16ClockAlarmEditorD0Ev @ 9 NONAME
-	_ZThn8_N16ClockAlarmEditorD1Ev @ 10 NONAME
 
--- a/clock/clockui/eabi/clockviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/clock/clockui/eabi/clockviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,22 +1,32 @@
 EXPORTS
-	_ZN13ClockMainView9setupViewER20ClockAppControllerIfP14ClockDocLoader @ 1 NONAME
-	_ZN13ClockMainViewC1EP13QGraphicsItem @ 2 NONAME
-	_ZN13ClockMainViewC2EP13QGraphicsItem @ 3 NONAME
-	_ZN13ClockMainViewD0Ev @ 4 NONAME
-	_ZN13ClockMainViewD1Ev @ 5 NONAME
-	_ZN13ClockMainViewD2Ev @ 6 NONAME
-	_ZN14ClockWorldView9setupViewER20ClockAppControllerIfP14ClockDocLoader @ 7 NONAME
-	_ZN14ClockWorldViewC1EP13QGraphicsItem @ 8 NONAME
-	_ZN14ClockWorldViewC2EP13QGraphicsItem @ 9 NONAME
-	_ZN14ClockWorldViewD0Ev @ 10 NONAME
-	_ZN14ClockWorldViewD1Ev @ 11 NONAME
-	_ZN14ClockWorldViewD2Ev @ 12 NONAME
-	_ZThn16_N13ClockMainViewD0Ev @ 13 NONAME
-	_ZThn16_N13ClockMainViewD1Ev @ 14 NONAME
-	_ZThn16_N14ClockWorldViewD0Ev @ 15 NONAME
-	_ZThn16_N14ClockWorldViewD1Ev @ 16 NONAME
-	_ZThn8_N13ClockMainViewD0Ev @ 17 NONAME
-	_ZThn8_N13ClockMainViewD1Ev @ 18 NONAME
-	_ZThn8_N14ClockWorldViewD0Ev @ 19 NONAME
-	_ZThn8_N14ClockWorldViewD1Ev @ 20 NONAME
+	_ZN13ClockMainView19setupAfterViewReadyEv @ 1 NONAME
+	_ZN13ClockMainView9setupViewER20ClockAppControllerIfP14ClockDocLoader @ 2 NONAME
+	_ZN13ClockMainViewC1EP13QGraphicsItem @ 3 NONAME
+	_ZN13ClockMainViewC2EP13QGraphicsItem @ 4 NONAME
+	_ZN13ClockMainViewD0Ev @ 5 NONAME
+	_ZN13ClockMainViewD1Ev @ 6 NONAME
+	_ZN13ClockMainViewD2Ev @ 7 NONAME
+	_ZN14ClockWorldView9setupViewER20ClockAppControllerIfP14ClockDocLoader @ 8 NONAME
+	_ZN14ClockWorldViewC1EP13QGraphicsItem @ 9 NONAME
+	_ZN14ClockWorldViewC2EP13QGraphicsItem @ 10 NONAME
+	_ZN14ClockWorldViewD0Ev @ 11 NONAME
+	_ZN14ClockWorldViewD1Ev @ 12 NONAME
+	_ZN14ClockWorldViewD2Ev @ 13 NONAME
+	_ZN17ClockHomeCityItemC1EP13QGraphicsItem @ 14 NONAME
+	_ZN17ClockHomeCityItemC2EP13QGraphicsItem @ 15 NONAME
+	_ZN17ClockHomeCityItemD0Ev @ 16 NONAME
+	_ZN17ClockHomeCityItemD1Ev @ 17 NONAME
+	_ZN17ClockHomeCityItemD2Ev @ 18 NONAME
+	_ZThn16_N13ClockMainViewD0Ev @ 19 NONAME
+	_ZThn16_N13ClockMainViewD1Ev @ 20 NONAME
+	_ZThn16_N14ClockWorldViewD0Ev @ 21 NONAME
+	_ZThn16_N14ClockWorldViewD1Ev @ 22 NONAME
+	_ZThn16_N17ClockHomeCityItemD0Ev @ 23 NONAME
+	_ZThn16_N17ClockHomeCityItemD1Ev @ 24 NONAME
+	_ZThn8_N13ClockMainViewD0Ev @ 25 NONAME
+	_ZThn8_N13ClockMainViewD1Ev @ 26 NONAME
+	_ZThn8_N14ClockWorldViewD0Ev @ 27 NONAME
+	_ZThn8_N14ClockWorldViewD1Ev @ 28 NONAME
+	_ZThn8_N17ClockHomeCityItemD0Ev @ 29 NONAME
+	_ZThn8_N17ClockHomeCityItemD1Ev @ 30 NONAME
 
--- a/clock/clockui/eabi/clockwidgetprotou.def	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-EXPORTS
-	_ZN14SkinnableClock11qt_metacallEN11QMetaObject4CallEiPPv @ 1 NONAME
-	_ZN14SkinnableClock11qt_metacastEPKc @ 2 NONAME
-	_ZN14SkinnableClock13clockFormat24Ev @ 3 NONAME
-	_ZN14SkinnableClock13updateDisplayEb @ 4 NONAME
-	_ZN14SkinnableClock15clockTypeAnalogEv @ 5 NONAME
-	_ZN14SkinnableClock15startChangeTypeEv @ 6 NONAME
-	_ZN14SkinnableClock15updateClockTypeEv @ 7 NONAME
-	_ZN14SkinnableClock16finishChangeTypeERKN8HbEffect12EffectStatusE @ 8 NONAME
-	_ZN14SkinnableClock16staticMetaObjectE @ 9 NONAME DATA 16
-	_ZN14SkinnableClock18setClockTypeAnalogEb @ 10 NONAME
-	_ZN14SkinnableClock19getStaticMetaObjectEv @ 11 NONAME
-	_ZN14SkinnableClock5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 12 NONAME
-	_ZN14SkinnableClockC1EP13QGraphicsItem @ 13 NONAME
-	_ZN14SkinnableClockC2EP13QGraphicsItem @ 14 NONAME
-	_ZN14SkinnableClockD0Ev @ 15 NONAME
-	_ZN14SkinnableClockD1Ev @ 16 NONAME
-	_ZN14SkinnableClockD2Ev @ 17 NONAME
-	_ZNK14SkinnableClock10metaObjectEv @ 18 NONAME
-	_ZTI14SkinnableClock @ 19 NONAME
-	_ZTV14SkinnableClock @ 20 NONAME
-	_ZThn16_N14SkinnableClockD0Ev @ 21 NONAME
-	_ZThn16_N14SkinnableClockD1Ev @ 22 NONAME
-	_ZThn8_N14SkinnableClock5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 23 NONAME
-	_ZThn8_N14SkinnableClockD0Ev @ 24 NONAME
-	_ZThn8_N14SkinnableClockD1Ev @ 25 NONAME
-
--- a/clock/data/alarm/qtg_test_alarm.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<circle cx="30.819" cy="29.887" r="4.693"/>
-		</g>
-		<g>
-			<g>
-				<path d="M13.694,37.482c-0.165,0-0.318-0.063-0.437-0.181l0,0L8.09,32.133c-0.11-0.113-0.174-0.262-0.181-0.419l0,0
-					l-0.206-6.682c-1.64-1.418-4.903-4.7-5.305-9.255l0,0c-0.026-0.296-0.037-0.585-0.037-0.865l0,0
-					C2.359,11.884,3.728,9.006,6.322,6.42l0,0c2.55-2.561,5.41-3.906,8.438-3.904l0,0c0.279,0,0.554,0.015,0.826,0.035l0,0
-					c4.699,0.388,8.168,3.764,9.682,5.476l0,0l6.564-0.237c0.172-0.008,0.344,0.062,0.465,0.186l0,0l5.164,5.243
-					c0.238,0.241,0.234,0.631-0.004,0.869l0,0L14.13,37.304c-0.111,0.111-0.261,0.179-0.424,0.179l0,0
-					C13.702,37.482,13.698,37.482,13.694,37.482L13.694,37.482z"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/alarm/qtg_test_noalarm.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<g>
-				<path d="M13.825,37.559c-0.165,0-0.319-0.064-0.436-0.183l0,0l-5.168-5.172c-0.111-0.109-0.175-0.261-0.178-0.414l0,0
-					l-0.21-6.685c-1.64-1.419-4.899-4.705-5.3-9.254l0,0c-0.024-0.268-0.034-0.533-0.034-0.788l0,0c0-1.236,0.252-2.438,0.678-3.599
-					l0,0c0.074-0.197,0.241-0.345,0.45-0.39l0,0c0.205-0.046,0.416,0.018,0.567,0.165l0,0l17.685,17.681
-					c0.117,0.115,0.184,0.272,0.182,0.438l0,0c0,0.168-0.064,0.321-0.182,0.438l0,0l-7.616,7.582
-					c-0.115,0.111-0.265,0.18-0.425,0.18l0,0C13.833,37.559,13.828,37.559,13.825,37.559L13.825,37.559z M3.32,12.115l0.436-0.436
-					L3.32,12.115L3.32,12.115z M28.57,22.271L10.712,4.412c-0.147-0.147-0.211-0.356-0.171-0.558l0,0
-					c0.04-0.203,0.178-0.371,0.369-0.448l0,0c1.281-0.537,2.616-0.812,3.978-0.808l0,0c0.282,0,0.56,0.009,0.835,0.032l0,0
-					c4.698,0.388,8.168,3.76,9.682,5.477l0,0l6.564-0.241c0.17-0.006,0.342,0.061,0.463,0.181l0,0l5.164,5.243
-					c0.238,0.237,0.235,0.631-0.003,0.868l0,0l-8.149,8.113c-0.121,0.118-0.279,0.179-0.437,0.179l0,0
-					C28.85,22.45,28.691,22.39,28.57,22.271L28.57,22.271z"/>
-			</g>
-		</g>
-		<g>
-			<g>
-				<g>
-					<path d="M33.783,37.381L2.408,6.006C2.294,5.892,2.228,5.731,2.228,5.57l0,0c0-0.164,0.067-0.322,0.181-0.436l0,0l2.516-2.516
-						c0.242-0.241,0.631-0.241,0.872,0l0,0l31.378,31.375c0.114,0.113,0.178,0.271,0.178,0.436l0,0c0,0.163-0.063,0.318-0.178,0.437
-						l0,0l-2.515,2.515c-0.118,0.117-0.272,0.181-0.437,0.181l0,0C34.055,37.562,33.901,37.498,33.783,37.381L33.783,37.381z"/>
-				</g>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/alarm/qtg_test_repeat.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<path d="M20,37.582c-2.262,0.002-4.464-0.44-6.545-1.319l0,0c-2.005-0.848-3.807-2.064-5.348-3.603l0,0
-			c-1.538-1.541-2.749-3.338-3.604-5.345l0,0c-0.872-2.078-1.317-4.287-1.314-6.542l0,0c-0.003-2.264,0.442-4.467,1.32-6.548l0,0
-			c0.849-2,2.06-3.801,3.598-5.34l0,0c0.538-0.535,1.11-1.02,1.708-1.464l0,0l-2.634-0.47C7.03,6.925,6.896,6.843,6.809,6.717l0,0
-			c-0.086-0.126-0.121-0.281-0.092-0.43l0,0l0.606-3.396C7.377,2.577,7.677,2.368,7.99,2.427l0,0l8.119,1.445l1.702,0.304
-			c0.152,0.025,0.284,0.115,0.374,0.236l0,0c0.088,0.131,0.12,0.282,0.091,0.435l0,0l-0.31,1.695l-1.447,8.124
-			c-0.028,0.149-0.11,0.282-0.237,0.371l0,0c-0.126,0.088-0.281,0.123-0.429,0.094l0,0l-3.396-0.605
-			c-0.313-0.058-0.521-0.354-0.467-0.668l0,0l0.48-2.677c-0.391,0.296-0.761,0.613-1.105,0.96l0,0
-			c-1.125,1.117-2.003,2.425-2.619,3.876l0,0c-0.638,1.512-0.957,3.104-0.959,4.757l0,0c0.002,1.644,0.321,3.24,0.956,4.747l0,0
-			c0.62,1.46,1.498,2.765,2.623,3.886l0,0c1.117,1.122,2.423,1.999,3.882,2.62l0,0c1.513,0.637,3.105,0.955,4.754,0.958l0,0
-			c1.652-0.003,3.245-0.321,4.751-0.958l0,0c1.459-0.613,2.764-1.495,3.879-2.62l0,0c1.127-1.121,2.006-2.426,2.621-3.875l0,0
-			c0.633-1.518,0.955-3.114,0.955-4.758l0,0c0-1.653-0.322-3.245-0.951-4.752l0,0c-0.619-1.456-1.5-2.764-2.629-3.885l0,0
-			c-1.111-1.122-2.416-2.003-3.879-2.618l0,0c-0.139-0.065-0.249-0.171-0.307-0.316l0,0c-0.06-0.142-0.057-0.3,0.004-0.439l0,0
-			l1.346-3.181c0.06-0.139,0.174-0.25,0.315-0.307l0,0c0.143-0.06,0.3-0.056,0.439,0.003l0,0c2.009,0.857,3.804,2.073,5.341,3.604
-			l0,0c1.543,1.542,2.756,3.335,3.608,5.345l0,0l-0.53,0.225l0.53-0.225c0.878,2.079,1.317,4.282,1.317,6.546l0,0
-			c0,2.255-0.439,4.464-1.317,6.542l0,0c-0.853,2.007-2.065,3.804-3.608,5.345l0,0c-1.537,1.538-3.336,2.755-5.348,3.606l0,0
-			c-2.064,0.873-4.264,1.315-6.515,1.315l0,0C20.016,37.582,20.008,37.582,20,37.582L20,37.582z"/>
-	</g>
-</g>
-</svg>
--- a/clock/data/clock.qrc	Tue May 11 12:31:38 2010 +0100
+++ b/clock/data/clock.qrc	Tue May 18 13:16:49 2010 +0100
@@ -1,36 +1,7 @@
 <!DOCTYPE RCC><RCC version="1.0">
 	<qresource prefix="/clock">
-		<file alias="alarms.svg">toolbar/qtg_test_alarm.svg</file>
-		<file alias="world_clock.svg">toolbar/qtg_test_worldclock.svg</file>
-		<file alias="countdown_timer.svg">toolbar/qtg_test_timer.svg</file>
-		<file alias="stopwatch.svg">toolbar/qtg_test_stopwatch.svg</file>
-		
-		<file alias="alarm_repeat.svg">alarm/qtg_test_repeat.svg</file>
-		<file alias="alarm_active.svg">alarm/qtg_test_alarm.svg</file>
-		<file alias="alarm_inactive.svg">alarm/qtg_test_noalarm.svg</file>
-		<file alias="new_alarm.svg">toolbar/qtg_test_newalarm.svg</file>
-		
-		<file alias="add_new_city.svg">toolbar/qtg_test_addnewcity.svg</file>
 		<file alias="day.svg">worldclock/qtg_test_day.svg</file>
 		<file alias="night.svg">worldclock/qtg_test_night.svg</file>
-		<file alias="home_city.svg">worldclock/qtg_test_homecity.svg</file>
-		<file alias="city_default.svg">worldclock/qgn_test_city_default.svg</file>
-		<file alias="dst_icon.svg">worldclock/qgn_indi_dst_add.svg</file>
-		<file alias="find_icon.svg">worldclock/qgn_indi_find.svg</file>
-		
-		<file alias="start.svg">toolbar/qtg_test_start.svg</file>
-		<file alias="stop.svg">toolbar/qtg_test_stop.svg</file>
-		<file alias="reset.svg">toolbar/qtg_test_reset.svg</file>
-		<file alias="timer_background.svg">timer/qtg_graf_timer2_base.svg</file>
-		<file alias="timer_color_arc.svg">timer/knob_arc_indicator_1min.svg</file>
-		<file alias="timer_grabzone.svg">timer/qtg_graf_timer2_button.svg</file>
-		<file alias="timer_arrow.svg">timer/qtg_graf_timer2_arrow.svg</file>
-		<file alias="timer_hour_dial.svg">timer/qtg_graf_timer2_time24.svg</file>
-		<file alias="timer_min_sec_dial.svg">timer/qtg_graf_timer2_time60.svg</file>
-		
-		<file alias="lap.svg">toolbar/qtg_test_lap.svg</file>
-		<file alias="split.svg">toolbar/qtg_test_split.svg</file>
-		<file alias="analyze.svg">toolbar/qtg_test_analyze.svg</file>
 		
 		<file alias="hide_widget.fxml">effects/hide_widget.fxml</file>
 		<file alias="show_widget.fxml">effects/show_widget.fxml</file>
@@ -40,9 +11,6 @@
 		
 		<file alias="fade_out.fxml">effects/fade_out.fxml</file>
 		<file alias="fade_in.fxml">effects/fade_in.fxml</file>
-		
-		<file alias="timerknob_appear.fxml">effects/timerknob_appear.fxml</file>
-		<file alias="timerknob_disappear.fxml">effects/timerknob_disappear.fxml</file>
 	</qresource>
 	<qresource prefix="/translations">
 		<file alias="clock" >translations/clock.qm</file>
--- a/clock/data/timer/knob_arc_indicator_1min.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1016 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="250"
-   height="250"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.46"
-   version="1.0"
-   sodipodi:docname="knob_arc_indicator_1min.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   style="display:inline">
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     gridtolerance="10000"
-     guidetolerance="10"
-     objecttolerance="10"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="2.4288216"
-     inkscape:cx="114.10678"
-     inkscape:cy="117.22377"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer4"
-     showgrid="false"
-     inkscape:window-width="1400"
-     inkscape:window-height="844"
-     inkscape:window-x="0"
-     inkscape:window-y="116"
-     showguides="true"
-     inkscape:guide-bbox="true" />
-  <defs
-     id="defs4">
-    <linearGradient
-       id="linearGradient5533">
-      <stop
-         style="stop-color:#2b2824;stop-opacity:1;"
-         offset="0"
-         id="stop5535" />
-      <stop
-         style="stop-color:#a1a2a4;stop-opacity:1"
-         offset="1"
-         id="stop5537" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient5519">
-      <stop
-         style="stop-color:#909093;stop-opacity:1;"
-         offset="0"
-         id="stop5521" />
-      <stop
-         style="stop-color:#000000;stop-opacity:1"
-         offset="1"
-         id="stop5523" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient4733">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop4735" />
-      <stop
-         style="stop-color:#acaeae;stop-opacity:1;"
-         offset="1"
-         id="stop4737" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466">
-      <stop
-         style="stop-color:#ff2600;stop-opacity:1;"
-         offset="0"
-         id="stop2468" />
-      <stop
-         id="stop2474"
-         offset="1"
-         style="stop-color:#e75a00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#007c00;stop-opacity:1;"
-         offset="1"
-         id="stop2476" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop2470" />
-    </linearGradient>
-    <inkscape:perspective
-       id="perspective4899"
-       inkscape:persp3d-origin="249.8669 : 181.20786 : 1"
-       inkscape:vp_z="456.36704 : 297.32504 : 1"
-       inkscape:vp_y="3.3985116e-14 : 662.03734 : 0"
-       inkscape:vp_x="43.366765 : 297.32504 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective4883"
-       inkscape:persp3d-origin="303.43512 : 280.77487 : 1"
-       inkscape:vp_z="509.93526 : 396.89205 : 1"
-       inkscape:vp_y="3.3985116e-14 : 662.03734 : 0"
-       inkscape:vp_x="96.93499 : 396.89205 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <linearGradient
-       id="linearGradient2385">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop2387" />
-      <stop
-         id="stop2395"
-         offset="1"
-         style="stop-color:#a5a5a5;stop-opacity:1;" />
-      <stop
-         id="stop2393"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:0.49803922;" />
-    </linearGradient>
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="71.233258 : 350.13217 : 1"
-       inkscape:vp_y="3.3985116e-14 : 662.03734 : 0"
-       inkscape:vp_z="484.23353 : 350.13217 : 1"
-       inkscape:persp3d-origin="277.73339 : 234.01499 : 1"
-       id="perspective10" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2385"
-       id="radialGradient2391"
-       cx="-72.643829"
-       cy="-117.61642"
-       fx="-72.643829"
-       fy="-117.61642"
-       r="120.5285"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-0.9999999,1.0614315,-1.0614303,-1.0000013,-181.18208,-31.401928)" />
-    <clipPath
-       id="clipPath">
-      <path
-         sodipodi:type="arc"
-         style="opacity:0.85096154;fill:url(#radialGradient2391);fill-opacity:1"
-         id="path2383"
-         sodipodi:cx="16.303371"
-         sodipodi:cy="16.512436"
-         sodipodi:rx="120.5285"
-         sodipodi:ry="120.5285"
-         d="M 136.83187,16.512436 A 120.5285,120.5285 0 1 1 -104.22513,16.512436 A 120.5285,120.5285 0 1 1 136.83187,16.512436 z"
-         transform="matrix(0.8115942,0,0,0.8115942,111.76828,111.5986)" />
-    </clipPath>
-    <filter
-       id="filter"
-       height="2"
-       width="2"
-       x="-0.5"
-       y="-0.5">
-      <feGaussianBlur
-         stdDeviation="5.0"
-         id="feGaussianBlur2408" />
-    </filter>
-    <clipPath
-       id="clipPathd">
-      <path
-         sodipodi:type="arc"
-         style="opacity:0.85096154;fill:url(#radialGradient2391);fill-opacity:1"
-         id="path2413"
-         sodipodi:cx="16.303371"
-         sodipodi:cy="16.512436"
-         sodipodi:rx="120.5285"
-         sodipodi:ry="120.5285"
-         d="M 136.83187,16.512436 A 120.5285,120.5285 0 1 1 -104.22513,16.512436 A 120.5285,120.5285 0 1 1 136.83187,16.512436 z"
-         transform="matrix(0.8115942,0,0,0.8115942,111.76828,111.5986)" />
-    </clipPath>
-    <filter
-       id="filterC"
-       height="5"
-       width="5"
-       x="-0.5"
-       y="-0.5">
-      <feGaussianBlur
-         stdDeviation="2.0"
-         id="feGaussianBlur3793" />
-    </filter>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2385"
-       id="radialGradient4903"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-0.7559523,0.8114315,-1.0670036,-0.9940524,-164.10905,-48.863191)"
-       cx="-72.643829"
-       cy="-117.61642"
-       fx="-72.643829"
-       fy="-117.61642"
-       r="120.5285" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2385"
-       id="radialGradient4933"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-0.8466666,0.9088033,-1.195044,-1.1133387,-185.75851,-56.708265)"
-       cx="-72.643829"
-       cy="-117.61642"
-       fx="-72.643829"
-       fy="-117.61642"
-       r="120.5285" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2385"
-       id="radialGradient5877"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-4.5357145,4.8685897,-6.4020222,-5.9643152,-968.54486,-253.83334)"
-       cx="-72.643829"
-       cy="-117.61642"
-       fx="-72.643829"
-       fy="-117.61642"
-       r="120.5285" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2385"
-       id="radialGradient5881"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-0.8466666,0.9088033,-1.195044,-1.1133387,77.539643,-176.97925)"
-       cx="-72.643829"
-       cy="-117.61642"
-       fx="-72.643829"
-       fy="-117.61642"
-       r="120.5285" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466"
-       id="linearGradient2472"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <clipPath
-       id="clipPathc">
-      <path
-         sodipodi:type="arc"
-         style="opacity:1;fill:url(#linearGradient2472);fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
-         id="path2464"
-         sodipodi:cx="-96.655701"
-         sodipodi:cy="60.182178"
-         sodipodi:rx="55.897274"
-         sodipodi:ry="55.897274"
-         d="M -40.758534,60.291552 A 55.897274,55.897274 0 1 1 -40.758439,60.21902 L -96.655701,60.182178 z"
-         sodipodi:start="0.0019566857"
-         sodipodi:end="6.2838444"
-         transform="matrix(0.3229167,0,0,0.3229167,155.81608,105.37957)" />
-    </clipPath>
-    <filter
-       id="filter6"
-       height="3.7"
-       width="2"
-       x="-0.5"
-       y="-0.5">
-      <feGaussianBlur
-         stdDeviation="8.0"
-         id="feGaussianBlur2512" />
-    </filter>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4733"
-       id="linearGradient4739"
-       x1="165.19823"
-       y1="53.941807"
-       x2="125.1866"
-       y2="124.23114"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5519"
-       id="linearGradient5525"
-       x1="-37.738914"
-       y1="12.326055"
-       x2="-22.708267"
-       y2="25.246382"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5519"
-       id="linearGradient5529"
-       gradientUnits="userSpaceOnUse"
-       x1="-37.738914"
-       y1="12.326055"
-       x2="-22.708267"
-       y2="25.246382"
-       gradientTransform="matrix(2,0,0,2,32.019784,-17.932287)" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5533"
-       id="linearGradient5539"
-       x1="-87.339493"
-       y1="29.467791"
-       x2="-64.849571"
-       y2="47.590733"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.9208633,0,0,0.9208633,-5.9441111,2.9194824)" />
-    <linearGradient
-       id="linearGradient2466-786">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2723" />
-      <stop
-         id="stop2725"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2727" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2729" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-863">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2733" />
-      <stop
-         id="stop2735"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2737" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2739" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-958">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2743" />
-      <stop
-         id="stop2745"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2747" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2749" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-59">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2753" />
-      <stop
-         id="stop2755"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2757" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2759" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-113">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2763" />
-      <stop
-         id="stop2765"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2767" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2769" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-114">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2773" />
-      <stop
-         id="stop2775"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2777" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2779" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-516">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2783" />
-      <stop
-         id="stop2785"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2787" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2789" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-572">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2793" />
-      <stop
-         id="stop2795"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2797" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2799" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-42">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2803" />
-      <stop
-         id="stop2805"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2807" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2809" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-502">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2813" />
-      <stop
-         id="stop2815"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2817" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2819" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient2466-857">
-      <stop
-         style="stop-color:#00b000;stop-opacity:1;"
-         offset="0"
-         id="stop2823" />
-      <stop
-         id="stop2825"
-         offset="1"
-         style="stop-color:#00fb00;stop-opacity:1;" />
-      <stop
-         style="stop-color:#008a00;stop-opacity:1;"
-         offset="1"
-         id="stop2827" />
-      <stop
-         style="stop-color:#0a0a0a;stop-opacity:0;"
-         offset="1"
-         id="stop2829" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-786-750"
-       id="linearGradient2472-316-637"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-786-750">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3297" />
-      <stop
-         id="stop3299"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3301" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3303" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-863-304"
-       id="linearGradient2472-695-984"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-863-304">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3307" />
-      <stop
-         id="stop3309"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3311" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3313" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-958-548"
-       id="linearGradient2472-327-579"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-958-548">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3317" />
-      <stop
-         id="stop3319"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3321" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3323" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-59-77"
-       id="linearGradient2472-436-991"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-59-77">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3327" />
-      <stop
-         id="stop3329"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3331" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3333" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-113-656"
-       id="linearGradient2472-656-45"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-113-656">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3337" />
-      <stop
-         id="stop3339"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3341" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3343" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-114-809"
-       id="linearGradient2472-581-565"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-114-809">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3347" />
-      <stop
-         id="stop3349"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3351" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3353" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-516-233"
-       id="linearGradient2472-877-549"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-516-233">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3357" />
-      <stop
-         id="stop3359"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3361" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3363" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-572-576"
-       id="linearGradient2472-761-943"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-572-576">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3367" />
-      <stop
-         id="stop3369"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3371" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3373" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-42-738"
-       id="linearGradient2472-704-254"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-42-738">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3377" />
-      <stop
-         id="stop3379"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3381" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3383" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-502-769"
-       id="linearGradient2472-422-129"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-502-769">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3387" />
-      <stop
-         id="stop3389"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3391" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3393" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-857-138"
-       id="linearGradient2472-565-766"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)" />
-    <linearGradient
-       id="linearGradient2466-857-138">
-      <stop
-         style="stop-color:#00c900;stop-opacity:1;"
-         offset="0"
-         id="stop3397" />
-      <stop
-         id="stop3399"
-         offset="1"
-         style="stop-color:#15fe15;stop-opacity:1;" />
-      <stop
-         style="stop-color:#00a300;stop-opacity:1;"
-         offset="1"
-         id="stop3401" />
-      <stop
-         style="stop-color:#161616;stop-opacity:0;"
-         offset="1"
-         id="stop3403" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466"
-       id="linearGradient5058"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-786-750"
-       id="linearGradient5064"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-863-304"
-       id="linearGradient5066"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-958-548"
-       id="linearGradient5068"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-59-77"
-       id="linearGradient5070"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-113-656"
-       id="linearGradient5072"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-114-809"
-       id="linearGradient5074"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-516-233"
-       id="linearGradient5076"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-572-576"
-       id="linearGradient5078"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-42-738"
-       id="linearGradient5080"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-502-769"
-       id="linearGradient5082"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466-857-138"
-       id="linearGradient5084"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4733"
-       id="linearGradient5342"
-       gradientUnits="userSpaceOnUse"
-       x1="165.19823"
-       y1="53.941807"
-       x2="125.1866"
-       y2="124.23114" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5519"
-       id="linearGradient5466"
-       gradientUnits="userSpaceOnUse"
-       x1="-37.738914"
-       y1="12.326055"
-       x2="-22.708267"
-       y2="25.246382" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5533"
-       id="linearGradient5468"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.9208633,0,0,0.9208633,-5.9441111,2.9194824)"
-       x1="-87.339493"
-       y1="29.467791"
-       x2="-64.849571"
-       y2="47.590733" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient2466"
-       id="linearGradient5846"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-616.67308,-109.9914)"
-       x1="480.34833"
-       y1="134.11082"
-       x2="554.27698"
-       y2="211.64575" />
-  </defs>
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:groupmode="layer"
-     id="layer4"
-     inkscape:label="knob_arc_indicator"
-     style="display:inline">
-    <path
-       style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
-       d="M 124.89547,37.619476 C 124.89547,37.619476 125.004,29.244371 125.11381,27.211519 C 126.23525,27.042557 132.43856,27.306326 133.73859,27.539043 C 133.53245,30.121143 132.90158,38.019781 132.90158,38.019781 C 132.90158,38.019781 127.22452,37.72865 124.89547,37.619476 z"
-       id="path4938"
-       sodipodi:nodetypes="ccccc" />
-  </g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_arrow.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<rect fill="none" width="305" height="305"/>
-	<g>
-		<polygon points="144.583,81.027 152.321,62.391 160.058,81.027 		"/>
-	</g>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_base.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="145.4951" y1="-231.5366" x2="156.7914" y2="387.755">
-				<stop  offset="0" style="stop-color:#FFFFFF"/>
-				<stop  offset="1" style="stop-color:#000000"/>
-			</linearGradient>
-			<path fill="url(#SVGID_1_)" d="M304,152.5c0,83.678-67.824,151.5-151.5,151.5C68.826,304,1,236.178,1,152.5
-				C1,68.822,68.826,1,152.5,1C236.175,1,304,68.822,304,152.5z"/>
-			<radialGradient id="SVGID_2_" cx="138.186" cy="4.4321" r="299.1064" gradientUnits="userSpaceOnUse">
-				<stop  offset="0" style="stop-color:#FFFFFF"/>
-				<stop  offset="1" style="stop-color:#CCCCCC"/>
-			</radialGradient>
-			<path fill="url(#SVGID_2_)" d="M302.5,152.688c0,82.85-67.154,150-150,150c-82.844,0-150-67.15-150-150
-				c0-82.848,67.155-150,150-150C235.345,2.688,302.5,69.84,302.5,152.688z"/>
-		</g>
-		<rect fill="none" width="305" height="305"/>
-	</g>
-	<path fill="#333333" d="M98.717,150.686c0.005-30.09,24.396-54.494,54.499-54.502l0,0c30.105,0.008,54.492,24.412,54.502,54.502
-		l0,0c-0.01,30.09-24.396,54.495-54.502,54.502l0,0C123.113,205.18,98.723,180.776,98.717,150.686L98.717,150.686z M112.717,150.686
-		c0.002,11.2,4.522,21.284,11.864,28.633l0,0c7.351,7.344,17.432,11.865,28.636,11.867l0,0c11.207-0.002,21.287-4.523,28.639-11.867
-		l0,0c7.34-7.35,11.859-17.434,11.861-28.633l0,0c-0.002-11.199-4.521-21.279-11.861-28.633l0,0
-		c-7.352-7.342-17.432-11.863-28.639-11.867l0,0c-11.204,0.004-21.285,4.525-28.636,11.867l0,0
-		C117.239,129.406,112.719,139.486,112.717,150.686L112.717,150.686L112.717,150.686z"/>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_button.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<rect fill="none" width="305" height="305"/>
-	<g>
-		<g>
-			
-				<radialGradient id="SVGID_1_" cx="919.3667" cy="344.2178" r="28.1406" gradientTransform="matrix(0.9002 0 0 1.1493 -675.2947 -286.7092)" gradientUnits="userSpaceOnUse">
-				<stop  offset="0" style="stop-color:#00B9FF"/>
-				<stop  offset="0.2458" style="stop-color:#00A0EE"/>
-				<stop  offset="0.563" style="stop-color:#0087DC"/>
-				<stop  offset="0.7527" style="stop-color:#007DD5"/>
-			</radialGradient>
-			<path fill="url(#SVGID_1_)" d="M131.613,127.092c-5.421-4.252-9.273-10.607-9.293-18.191l0,0
-				c0.02-7.58,3.872-13.938,9.293-18.186l0,0c5.464-4.295,12.725-6.807,20.707-6.814l0,0c7.984,0.008,15.246,2.52,20.708,6.814l0,0
-				c5.422,4.248,9.273,10.605,9.291,18.186l0,0c-0.018,7.584-3.869,13.939-9.291,18.191l0,0c-5.463,4.293-12.725,6.805-20.708,6.809
-				l0,0C144.338,133.896,137.077,131.385,131.613,127.092L131.613,127.092z"/>
-			<g>
-				<radialGradient id="SVGID_2_" cx="152.3921" cy="108.3408" r="19.5642" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_2_)" points="141.404,120.869 141.404,94.438 142.739,94.438 142.739,120.869 141.404,120.869 				"/>
-				<radialGradient id="SVGID_3_" cx="152.3921" cy="108.3408" r="19.5643" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_3_)" points="146.528,120.869 146.528,94.438 147.862,94.438 147.862,120.869 146.528,120.869 				"/>
-				<radialGradient id="SVGID_4_" cx="152.3931" cy="108.3408" r="19.5634" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_4_)" points="156.78,120.869 156.78,94.438 158.111,94.438 158.111,120.869 156.78,120.869 				"/>
-				<radialGradient id="SVGID_5_" cx="152.3916" cy="108.3408" r="19.5642" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_5_)" points="161.902,120.869 161.902,94.438 163.238,94.438 163.238,120.869 161.902,120.869 				"/>
-				<radialGradient id="SVGID_6_" cx="152.3921" cy="108.3408" r="19.5643" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_6_)" points="151.652,120.869 151.652,94.438 152.986,94.438 152.986,120.869 151.652,120.869 				"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_colorindication.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<rect fill="none" width="305" height="305"/>
-	<g>
-		<g>
-			<path fill="#8CC63F" d="M152.5,37.5c-63.513,0-115,51.488-115,114.998c0,63.512,51.487,115.002,115,115.002
-				c63.512,0,115-51.49,115-115.002C267.5,88.988,216.011,37.5,152.5,37.5z M152.5,243.5c-50.257,0-91-40.742-91-91
-				c0-50.26,40.742-91,91-91c50.258,0,91,40.74,91,91C243.5,202.758,202.757,243.5,152.5,243.5z"/>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_pointer.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<rect fill="none" width="305" height="305"/>
-	<g>
-		<polygon points="144.583,81.027 152.321,62.391 160.058,81.027 		"/>
-		<g>
-			
-				<radialGradient id="SVGID_1_" cx="919.3667" cy="344.4248" r="28.1409" gradientTransform="matrix(0.9002 0 0 1.1493 -675.2947 -286.9478)" gradientUnits="userSpaceOnUse">
-				<stop  offset="0" style="stop-color:#00B9FF"/>
-				<stop  offset="0.2458" style="stop-color:#00A0EE"/>
-				<stop  offset="0.563" style="stop-color:#0087DC"/>
-				<stop  offset="0.7527" style="stop-color:#007DD5"/>
-			</radialGradient>
-			<path fill="url(#SVGID_1_)" d="M131.613,127.092c-5.421-4.252-9.273-10.607-9.293-18.191l0,0
-				c0.02-7.58,3.872-13.938,9.293-18.186l0,0c5.464-4.295,12.725-6.807,20.707-6.814l0,0c7.984,0.008,15.246,2.52,20.708,6.814l0,0
-				c5.422,4.248,9.273,10.605,9.291,18.186l0,0c-0.018,7.584-3.869,13.939-9.291,18.191l0,0c-5.463,4.293-12.725,6.805-20.708,6.809
-				l0,0C144.338,133.896,137.077,131.385,131.613,127.092L131.613,127.092z"/>
-			<g>
-				<radialGradient id="SVGID_2_" cx="152.3921" cy="108.3408" r="19.5642" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_2_)" points="141.404,120.869 141.404,94.438 142.739,94.438 142.739,120.869 141.404,120.869 				"/>
-				<radialGradient id="SVGID_3_" cx="152.3921" cy="108.3408" r="19.5643" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_3_)" points="146.528,120.869 146.528,94.438 147.862,94.438 147.862,120.869 146.528,120.869 				"/>
-				<radialGradient id="SVGID_4_" cx="152.3931" cy="108.3408" r="19.5634" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_4_)" points="156.78,120.869 156.78,94.438 158.111,94.438 158.111,120.869 156.78,120.869 				"/>
-				<radialGradient id="SVGID_5_" cx="152.3916" cy="108.3408" r="19.5642" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_5_)" points="161.902,120.869 161.902,94.438 163.238,94.438 163.238,120.869 161.902,120.869 				"/>
-				<radialGradient id="SVGID_6_" cx="152.3921" cy="108.3408" r="19.5643" gradientUnits="userSpaceOnUse">
-					<stop  offset="0" style="stop-color:#26A9E0"/>
-					<stop  offset="0.1881" style="stop-color:#2398D4"/>
-					<stop  offset="0.5414" style="stop-color:#1D7FC2"/>
-					<stop  offset="0.7527" style="stop-color:#1B75BB"/>
-				</radialGradient>
-				<polygon fill="url(#SVGID_6_)" points="151.652,120.869 151.652,94.438 152.986,94.438 152.986,120.869 151.652,120.869 				"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_time24.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<path d="M151.501,243.486v29.012h1.999v-29.012c-0.332,0.004-0.666,0.014-1,0.014C152.166,243.5,151.834,243.49,151.501,243.486z
-				"/>
-			<path d="M211.632,256.945l1.734-1l-14.508-25.133c-0.572,0.34-1.15,0.676-1.73,1.002L211.632,256.945z"/>
-			<path d="M255.945,213.365l1-1.73l-25.129-14.506c-0.328,0.58-0.662,1.156-1.002,1.729L255.945,213.365z"/>
-			<path d="M243.488,153.5h29.014v-2h-29.014c0.004,0.332,0.012,0.664,0.012,1C243.5,152.834,243.492,153.166,243.488,153.5z"/>
-			<path d="M256.947,93.365l-1-1.732l-25.133,14.508c0.34,0.572,0.674,1.148,1.002,1.73L256.947,93.365z"/>
-			<path d="M213.365,49.053l-1.73-1l-14.506,25.131c0.58,0.328,1.158,0.662,1.73,1.002L213.365,49.053z"/>
-			<path d="M153.5,61.512V32.5h-1.999v29.012c0.333-0.004,0.665-0.012,0.999-0.012C152.833,61.5,153.167,61.508,153.5,61.512z"/>
-			<path d="M93.366,48.053l-1.731,1l14.507,25.133c0.572-0.34,1.149-0.674,1.73-1.002L93.366,48.053z"/>
-			<path d="M49.056,91.633l-1,1.732l25.129,14.504c0.328-0.58,0.662-1.156,1.002-1.73L49.056,91.633z"/>
-			<path d="M61.513,151.5H32.499v2h29.014c-0.005-0.334-0.013-0.666-0.013-1C61.5,152.164,61.508,151.832,61.513,151.5z"/>
-			<path d="M48.056,211.635l0.999,1.73l25.132-14.508c-0.34-0.572-0.674-1.148-1.001-1.729L48.056,211.635z"/>
-			<path d="M91.634,255.945l1.731,1l14.506-25.131c-0.581-0.328-1.157-0.662-1.73-1.002L91.634,255.945z"/>
-			<path d="M123.222,41.303l-0.967,0.256l6.205,23.156c0.323-0.088,0.643-0.176,0.965-0.26L123.222,41.303z"/>
-			<path d="M88.513,87.803L71.545,70.836l-0.707,0.709l16.967,16.967C88.039,88.273,88.275,88.037,88.513,87.803z"/>
-			<path d="M41.561,122.256l-0.26,0.967l23.154,6.203c0.084-0.322,0.173-0.645,0.261-0.965L41.561,122.256z"/>
-			<path d="M41.301,181.779l0.26,0.965l23.155-6.205c-0.087-0.32-0.176-0.643-0.261-0.965L41.301,181.779z"/>
-			<path d="M87.805,216.486l-16.967,16.967l0.707,0.709l16.968-16.967C88.275,216.961,88.039,216.725,87.805,216.486z"/>
-			<path d="M122.257,263.441l0.966,0.26l6.204-23.156c-0.322-0.084-0.644-0.174-0.965-0.262L122.257,263.441z"/>
-			<path d="M181.777,263.701l0.967-0.26l-6.205-23.158c-0.322,0.088-0.643,0.178-0.967,0.262L181.777,263.701z"/>
-			<path d="M216.488,217.195l16.967,16.967l0.707-0.709l-16.967-16.965C216.958,216.725,216.724,216.961,216.488,217.195z"/>
-			<path d="M263.439,182.744l0.26-0.965l-23.154-6.205c-0.084,0.322-0.174,0.645-0.262,0.965L263.439,182.744z"/>
-			<path d="M263.699,123.223l-0.26-0.967l-23.154,6.205c0.088,0.32,0.176,0.643,0.262,0.965L263.699,123.223z"/>
-			<path d="M217.197,88.512l16.967-16.967l-0.709-0.709l-16.967,16.967C216.726,88.037,216.96,88.273,217.197,88.512z"/>
-			<path d="M182.744,41.559l-0.967-0.256l-6.203,23.152c0.324,0.084,0.645,0.172,0.967,0.26L182.744,41.559z"/>
-		</g>
-		<g>
-			<g>
-				<g>
-					<path d="M286.064,149.824c0.609-0.563,1.41-0.844,2.402-0.844c1.359,0,2.367,0.4,3.023,1.201s0.984,2.115,0.984,3.943
-						c0,2.195-0.389,3.803-1.166,4.822s-1.963,1.529-3.557,1.529c-1.578,0-2.781-0.531-3.609-1.594s-1.242-3.211-1.242-6.445
-						c0-3.359,0.533-5.811,1.6-7.354s2.67-2.314,4.811-2.314c0.711,0,1.422,0.055,2.133,0.164v1.734
-						c-0.75-0.133-1.406-0.199-1.969-0.199c-1.023,0-1.84,0.457-2.449,1.371S286.095,148.082,286.064,149.824z M287.728,158.777
-						c0.555,0,0.957-0.289,1.207-0.867s0.375-1.801,0.375-3.668c0-1.188-0.1-2.098-0.299-2.73s-0.619-0.949-1.26-0.949
-						c-0.594,0-1.023,0.25-1.289,0.75s-0.398,1.387-0.398,2.66c0,2.172,0.133,3.516,0.398,4.031S287.15,158.777,287.728,158.777z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M274.648,93.879h-1.371V97.5h-3.164v-3.621h-6.117v-1.582l7.031-12.246h2.25v12.246h1.371V93.879z M270.113,84.867
-						l-4.055,7.43h4.055V84.867z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M272.292,221.717c0.75,0.367,1.314,0.891,1.693,1.57s0.568,1.602,0.568,2.766c0,1.625-0.428,2.844-1.283,3.656
-						s-2.135,1.219-3.838,1.219c-1.695,0-2.967-0.406-3.814-1.219s-1.271-2.031-1.271-3.656c0-1.164,0.18-2.088,0.539-2.771
-						s0.926-1.213,1.699-1.588c-1.336-0.789-2.004-2.117-2.004-3.984c0-1.477,0.404-2.586,1.213-3.328s2.021-1.113,3.639-1.113
-						s2.836,0.371,3.656,1.113s1.23,1.852,1.23,3.328C274.32,219.639,273.644,220.975,272.292,221.717z M269.433,229.346
-						c0.68,0,1.174-0.227,1.482-0.68s0.463-1.41,0.463-2.871c0-1.125-0.146-1.947-0.439-2.467s-0.795-0.779-1.506-0.779
-						c-0.734,0-1.236,0.256-1.506,0.768s-0.404,1.338-0.404,2.479c0,1.281,0.148,2.193,0.445,2.736S268.753,229.346,269.433,229.346
-						z M269.433,220.967c0.617,0,1.059-0.232,1.324-0.697s0.398-1.232,0.398-2.303c0-1.266-0.135-2.102-0.404-2.508
-						s-0.725-0.609-1.365-0.609c-0.547,0-0.957,0.262-1.23,0.785s-0.41,1.309-0.41,2.355c0,1.133,0.137,1.912,0.41,2.338
-						S268.855,220.967,269.433,220.967z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M221.488,277.334h-9.492v-1.582h3.164v-13.184l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V277.334z"/>
-					<path d="M228.144,259.768c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S226.55,259.768,228.144,259.768z
-						 M228.062,275.846c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482
-						s-0.219-1.625-0.434-2.004s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684
-						c0,3.117,0.09,5.137,0.27,6.059S227.382,275.846,228.062,275.846z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M34.605,230.834h-9.492v-1.582h3.164v-13.184l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V230.834z"/>
-					<path d="M39.621,220.322c0.609-0.563,1.41-0.844,2.402-0.844c1.359,0,2.367,0.4,3.023,1.201s0.984,2.115,0.984,3.943
-						c0,2.195-0.389,3.803-1.166,4.822s-1.963,1.529-3.557,1.529c-1.578,0-2.781-0.531-3.609-1.594s-1.242-3.211-1.242-6.445
-						c0-3.359,0.533-5.811,1.6-7.354s2.67-2.314,4.811-2.314c0.711,0,1.422,0.055,2.133,0.164v1.734
-						c-0.75-0.133-1.406-0.199-1.969-0.199c-1.023,0-1.84,0.457-2.449,1.371S39.652,218.58,39.621,220.322z M41.285,229.275
-						c0.555,0,0.957-0.289,1.207-0.867s0.375-1.801,0.375-3.668c0-1.188-0.1-2.098-0.299-2.73s-0.619-0.949-1.26-0.949
-						c-0.594,0-1.023,0.25-1.289,0.75s-0.398,1.387-0.398,2.66c0,2.172,0.133,3.516,0.398,4.031S40.707,229.275,41.285,229.275z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M15.021,160.336H5.529v-1.582h3.164V145.57l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V160.336z"/>
-					<path d="M24.432,151.219c0.75,0.367,1.314,0.891,1.693,1.57s0.568,1.602,0.568,2.766c0,1.625-0.428,2.844-1.283,3.656
-						s-2.135,1.219-3.838,1.219c-1.695,0-2.967-0.406-3.814-1.219s-1.271-2.031-1.271-3.656c0-1.164,0.18-2.088,0.539-2.771
-						s0.926-1.213,1.699-1.588c-1.336-0.789-2.004-2.117-2.004-3.984c0-1.477,0.404-2.586,1.213-3.328s2.021-1.113,3.639-1.113
-						s2.836,0.371,3.656,1.113s1.23,1.852,1.23,3.328C26.459,149.141,25.783,150.477,24.432,151.219z M21.572,158.848
-						c0.679,0,1.174-0.227,1.482-0.68s0.463-1.41,0.463-2.871c0-1.125-0.146-1.947-0.439-2.467s-0.795-0.779-1.506-0.779
-						c-0.734,0-1.236,0.256-1.506,0.768s-0.404,1.338-0.404,2.479c0,1.281,0.148,2.193,0.445,2.736S20.893,158.848,21.572,158.848z
-						 M21.572,150.469c0.617,0,1.059-0.232,1.324-0.697s0.398-1.232,0.398-2.303c0-1.266-0.135-2.102-0.404-2.508
-						s-0.725-0.609-1.365-0.609c-0.547,0-0.957,0.262-1.23,0.785s-0.41,1.309-0.41,2.355c0,1.133,0.137,1.912,0.41,2.338
-						S20.994,150.469,21.572,150.469z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M34.395,97.5H24.75v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574v-1.723c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V97.5z"/>
-					<path d="M41.262,79.934c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S39.668,79.934,41.262,79.934z M41.18,96.012
-						c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482s-0.219-1.625-0.434-2.004
-						s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684c0,3.117,0.09,5.137,0.27,6.059
-						S40.5,96.012,41.18,96.012z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M85.561,45.166h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574V28.15c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V45.166z"/>
-					<path d="M97.033,45.166h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574V28.15c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V45.166z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M151.445,25.834h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574V8.818c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V25.834z"/>
-					<path d="M163.421,22.213h-1.371v3.621h-3.164v-3.621h-6.117v-1.582L159.8,8.385h2.25v12.246h1.371V22.213z M158.886,13.201
-						l-4.055,7.43h4.055V13.201z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M85.772,277.334H76.28v-1.582h3.164v-13.184l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V277.334z"/>
-					<path d="M97.538,273.713h-1.371v3.621h-3.164v-3.621h-6.117v-1.582l7.031-12.246h2.25v12.246h1.371V273.713z M93.003,264.701
-						l-4.055,7.43h4.055V264.701z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M151.656,294.832h-9.492v-1.582h3.164v-13.184l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V294.832z"/>
-					<path d="M162.917,294.832h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574v-1.723c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V294.832z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M227.013,45.166h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574V28.15c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V45.166z"/>
-				</g>
-			</g>
-		</g>
-	</g>
-	<rect fill="none" width="305" height="305"/>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer2_time60.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,225 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="305px" height="305px" viewBox="0 0 305 305" enable-background="new 0 0 305 305" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<g>
-				<g>
-					<path d="M219.092,34.891h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V34.891z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M143.613,16.939c0.609-0.563,1.41-0.844,2.402-0.844c1.359,0,2.367,0.4,3.023,1.201s0.984,2.115,0.984,3.943
-						c0,2.195-0.389,3.803-1.166,4.822s-1.963,1.529-3.557,1.529c-1.578,0-2.781-0.531-3.609-1.594s-1.242-3.211-1.242-6.445
-						c0-3.359,0.533-5.811,1.6-7.354s2.67-2.314,4.811-2.314c0.711,0,1.422,0.055,2.133,0.164v1.734
-						c-0.75-0.133-1.406-0.199-1.969-0.199c-1.023,0-1.84,0.457-2.449,1.371S143.645,15.197,143.613,16.939z M145.277,25.893
-						c0.555,0,0.957-0.289,1.207-0.867s0.375-1.801,0.375-3.668c0-1.188-0.1-2.098-0.299-2.73s-0.619-0.949-1.26-0.949
-						c-0.594,0-1.023,0.25-1.289,0.75s-0.398,1.387-0.398,2.66c0,2.172,0.133,3.516,0.398,4.031S144.699,25.893,145.277,25.893z"/>
-					<path d="M156.727,9.885c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S155.133,9.885,156.727,9.885z M156.645,25.963
-						c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482s-0.219-1.625-0.434-2.004
-						s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684c0,3.117,0.09,5.137,0.27,6.059
-						S155.965,25.963,156.645,25.963z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M80.031,34.891h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V34.891z"/>
-					<path d="M91.504,34.891h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V34.891z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M25.533,88.391h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V88.391z"/>
-					<path d="M37.967,82.051c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S36.373,82.051,37.967,82.051z M37.885,98.129
-						c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482s-0.219-1.625-0.434-2.004
-						s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684c0,3.117,0.09,5.137,0.27,6.059
-						S37.205,98.129,37.885,98.129z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M15.936,157.857h-1.371v3.621H11.4v-3.621H5.283v-1.582l7.031-12.246h2.25v12.246h1.371V157.857z M11.4,148.846
-						l-4.055,7.43H11.4V148.846z"/>
-					<path d="M21.338,150.252h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V150.252z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M82.354,270.883c0.93,0.297,1.627,0.791,2.092,1.482s0.697,1.58,0.697,2.666c0,1.773-0.447,3.08-1.342,3.92
-						s-2.287,1.26-4.178,1.26c-1.203,0-2.395-0.176-3.574-0.527v-1.746c1.273,0.383,2.336,0.574,3.188,0.574
-						c0.969,0,1.654-0.273,2.057-0.82s0.604-1.434,0.604-2.66c0-1.133-0.25-1.984-0.75-2.555s-1.25-0.855-2.25-0.855h-1.535v-1.582
-						h1.535c0.922,0,1.613-0.25,2.074-0.75s0.691-1.25,0.691-2.25c0-0.93-0.199-1.627-0.598-2.092s-0.992-0.697-1.781-0.697
-						c-0.523,0-1.465,0.176-2.824,0.527v-1.746c1.352-0.32,2.535-0.48,3.551-0.48c1.625,0,2.846,0.361,3.662,1.084
-						s1.225,1.803,1.225,3.24c0,0.969-0.213,1.787-0.639,2.455S83.197,270.516,82.354,270.883z"/>
-					<path d="M91.506,268.891h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V268.891z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M146.613,289.217c0.93,0.297,1.627,0.791,2.092,1.482s0.697,1.58,0.697,2.666c0,1.773-0.447,3.08-1.342,3.92
-						s-2.287,1.26-4.178,1.26c-1.203,0-2.395-0.176-3.574-0.527v-1.746c1.273,0.383,2.336,0.574,3.188,0.574
-						c0.969,0,1.654-0.273,2.057-0.82s0.604-1.434,0.604-2.66c0-1.133-0.25-1.984-0.75-2.555s-1.25-0.855-2.25-0.855h-1.535v-1.582
-						h1.535c0.922,0,1.613-0.25,2.074-0.75s0.691-1.25,0.691-2.25c0-0.93-0.199-1.627-0.598-2.092s-0.992-0.697-1.781-0.697
-						c-0.523,0-1.465,0.176-2.824,0.527v-1.746c1.352-0.32,2.535-0.48,3.551-0.48c1.625,0,2.846,0.361,3.662,1.084
-						s1.225,1.803,1.225,3.24c0,0.969-0.213,1.787-0.639,2.455S147.457,288.85,146.613,289.217z"/>
-					<path d="M156.727,280.885c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S155.133,280.885,156.727,280.885z
-						 M156.645,296.963c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482
-						s-0.219-1.625-0.434-2.004s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684
-						c0,3.117,0.09,5.137,0.27,6.059S155.965,296.963,156.645,296.963z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M216.205,280.117h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574v-1.723c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V280.117z"/>
-					<path d="M222.111,268.891h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V268.891z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M282.977,161.479h-9.492v-1.582h3.164v-13.184l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V161.479z"/>
-					<path d="M288.672,150.252h0.492c1.578,0,2.789,0.465,3.633,1.395s1.266,2.262,1.266,3.996c0,1.977-0.465,3.459-1.395,4.447
-						s-2.32,1.482-4.172,1.482c-1.359,0-2.566-0.168-3.621-0.504v-1.723c1.164,0.352,2.238,0.527,3.223,0.527
-						c0.906,0,1.588-0.305,2.045-0.914s0.686-1.648,0.686-3.117c0-1.227-0.268-2.146-0.803-2.76s-1.338-0.92-2.408-0.92
-						c-0.711,0-1.418,0.043-2.121,0.129v-8.262h8.191v1.582h-5.016V150.252z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M268.477,99.617h-9.492v-1.582h3.164V84.852l-3.164,0.703v-1.582l4.746-1.805h1.582v15.867h3.164V99.617z"/>
-					<path d="M275.133,82.051c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S273.539,82.051,275.133,82.051z
-						 M275.051,98.129c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482
-						s-0.219-1.625-0.434-2.004s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684
-						c0,3.117,0.09,5.137,0.27,6.059S274.371,98.129,275.051,98.129z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M268.266,223.449h-9.645v-1.371c0-1.336,0.258-2.561,0.773-3.674s1.594-2.393,3.234-3.838
-						c0.969-0.867,1.621-1.604,1.957-2.209s0.504-1.197,0.504-1.775c0-0.898-0.25-1.623-0.75-2.174s-1.176-0.826-2.027-0.826
-						c-0.68,0-1.832,0.191-3.457,0.574v-1.723c1.531-0.367,2.875-0.551,4.031-0.551c1.648,0,2.957,0.414,3.926,1.242
-						s1.453,1.988,1.453,3.48c0,0.867-0.199,1.734-0.598,2.602s-1.332,1.945-2.801,3.234c-0.758,0.656-1.352,1.215-1.781,1.676
-						s-0.791,1.002-1.084,1.623s-0.439,1.33-0.439,2.127h6.703V223.449z"/>
-					<path d="M275.133,205.883c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S273.539,205.883,275.133,205.883z
-						 M275.051,221.961c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482
-						s-0.219-1.625-0.434-2.004s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684
-						c0,3.117,0.09,5.137,0.27,6.059S274.371,221.961,275.051,221.961z"/>
-				</g>
-			</g>
-			<g>
-				<g>
-					<path d="M31.602,219.83H30.23v3.621h-3.164v-3.621h-6.117v-1.582l7.031-12.246h2.25v12.246h1.371V219.83z M27.066,210.818
-						l-4.055,7.43h4.055V210.818z"/>
-					<path d="M37.965,205.885c1.383,0,2.412,0.387,3.088,1.16s1.105,1.752,1.289,2.936s0.275,2.697,0.275,4.541
-						c0,2.547-0.172,4.412-0.516,5.596s-0.869,2.051-1.576,2.602s-1.611,0.826-2.713,0.826c-1.422,0-2.473-0.424-3.152-1.271
-						s-1.1-1.877-1.26-3.088s-0.24-2.766-0.24-4.664c0-3.242,0.402-5.492,1.207-6.75S36.371,205.885,37.965,205.885z
-						 M37.883,221.963c0.695,0,1.131-0.496,1.307-1.488s0.264-2.977,0.264-5.953c0-2.031-0.037-3.525-0.111-4.482
-						s-0.219-1.625-0.434-2.004s-0.557-0.568-1.025-0.568c-0.648,0-1.07,0.457-1.266,1.371s-0.293,2.809-0.293,5.684
-						c0,3.117,0.09,5.137,0.27,6.059S37.203,221.963,37.883,221.963z"/>
-				</g>
-			</g>
-		</g>
-		<g>
-			<path d="M140.828,38.072l-0.994,0.104l2.504,23.826c0.331-0.037,0.662-0.074,0.994-0.107L140.828,38.072z"/>
-			<path d="M128.916,39.816l-0.979,0.209l4.998,23.508c0.326-0.07,0.65-0.146,0.978-0.213L128.916,39.816z"/>
-			<path d="M117.279,42.912l-0.951,0.309l7.416,22.822c0.316-0.105,0.633-0.207,0.951-0.309L117.279,42.912z"/>
-			<path d="M106.031,47.242l-0.916,0.408l9.738,21.859c0.304-0.137,0.611-0.268,0.917-0.402L106.031,47.242z"/>
-			<path d="M85.146,59.168l-0.809,0.59l14.094,19.385c0.268-0.197,0.537-0.395,0.809-0.59L85.146,59.168z"/>
-			<path d="M75.789,66.654l-0.742,0.668L91.096,85.15c0.246-0.223,0.498-0.441,0.746-0.664L75.789,66.654z"/>
-			<path d="M67.219,75.15l-0.668,0.742l17.833,16.053c0.222-0.248,0.44-0.5,0.665-0.746L67.219,75.15z"/>
-			<path d="M59.598,84.439l-0.59,0.809l19.427,14.115c0.194-0.271,0.392-0.541,0.589-0.809L59.598,84.439z"/>
-			<path d="M47.49,105.275l-0.406,0.912l21.898,9.736c0.133-0.305,0.263-0.611,0.399-0.914L47.49,105.275z"/>
-			<path d="M43.119,116.486l-0.311,0.953l22.809,7.4c0.102-0.32,0.205-0.637,0.31-0.953L43.119,116.486z"/>
-			<path d="M39.979,128.043l-0.207,0.975l23.447,4.986c0.068-0.326,0.143-0.648,0.213-0.975L39.979,128.043z"/>
-			<path d="M38.016,139.939l-0.104,0.992l23.879,2.508c0.033-0.332,0.07-0.662,0.105-0.992L38.016,139.939z"/>
-			<path d="M37.914,163.971l0.104,0.994l23.879-2.51c-0.035-0.33-0.072-0.662-0.105-0.994L37.914,163.971z"/>
-			<path d="M39.769,175.885l0.212,0.979l23.451-4.988c-0.07-0.326-0.145-0.65-0.213-0.979L39.769,175.885z"/>
-			<path d="M42.807,187.463l0.31,0.953l22.811-7.4c-0.104-0.316-0.208-0.635-0.31-0.953L42.807,187.463z"/>
-			<path d="M47.084,198.711l0.408,0.914l21.889-9.734c-0.137-0.305-0.267-0.611-0.4-0.916L47.084,198.711z"/>
-			<path d="M59.01,219.654l0.588,0.811l19.428-14.117c-0.198-0.268-0.396-0.537-0.591-0.809L59.01,219.654z"/>
-			<path d="M66.549,229.01l0.67,0.74l17.828-16.049c-0.224-0.246-0.442-0.496-0.664-0.744L66.549,229.01z"/>
-			<path d="M75.046,237.582l0.745,0.67l16.053-17.836c-0.249-0.221-0.5-0.441-0.748-0.666L75.046,237.582z"/>
-			<path d="M84.336,245.143l0.81,0.59l14.093-19.385c-0.271-0.195-0.54-0.391-0.809-0.59L84.336,245.143z"/>
-			<path d="M105.115,257.252l0.914,0.406l9.739-21.865c-0.305-0.133-0.612-0.264-0.915-0.402L105.115,257.252z"/>
-			<path d="M116.33,261.682l0.949,0.311l7.416-22.824c-0.317-0.102-0.634-0.203-0.949-0.309L116.33,261.682z"/>
-			<path d="M127.938,264.875l0.977,0.211l4.998-23.504c-0.328-0.068-0.652-0.143-0.978-0.213L127.938,264.875z"/>
-			<path d="M139.834,266.725l0.994,0.104l2.504-23.822c-0.332-0.031-0.663-0.068-0.994-0.105L139.834,266.725z"/>
-			<path d="M163.865,266.828l0.994-0.104l-2.504-23.824c-0.33,0.037-0.66,0.074-0.994,0.105L163.865,266.828z"/>
-			<path d="M175.779,265.086l0.979-0.211l-4.996-23.508c-0.326,0.072-0.652,0.146-0.979,0.215L175.779,265.086z"/>
-			<path d="M187.418,261.992l0.949-0.311l-7.416-22.822c-0.316,0.104-0.633,0.207-0.951,0.307L187.418,261.992z"/>
-			<path d="M198.664,257.658l0.916-0.406l-9.738-21.861c-0.305,0.139-0.611,0.27-0.916,0.402L198.664,257.658z"/>
-			<path d="M219.551,245.732l0.809-0.59l-14.094-19.385c-0.268,0.197-0.537,0.395-0.809,0.59L219.551,245.732z"/>
-			<path d="M228.904,238.252l0.744-0.67l-16.051-17.832c-0.246,0.225-0.498,0.445-0.748,0.666L228.904,238.252z"/>
-			<path d="M237.477,229.75l0.67-0.74l-17.836-16.055c-0.221,0.25-0.439,0.5-0.664,0.746L237.477,229.75z"/>
-			<path d="M245.098,220.465l0.588-0.811l-19.426-14.115c-0.195,0.27-0.393,0.539-0.59,0.809L245.098,220.465z"/>
-			<path d="M257.207,199.625l0.404-0.914l-21.896-9.738c-0.135,0.307-0.264,0.613-0.402,0.916L257.207,199.625z"/>
-			<path d="M261.576,188.416l0.311-0.953l-22.811-7.4c-0.102,0.318-0.203,0.637-0.309,0.953L261.576,188.416z"/>
-			<path d="M264.717,176.863l0.207-0.979l-23.449-4.988c-0.066,0.328-0.141,0.652-0.213,0.979L264.717,176.863z"/>
-			<path d="M266.68,164.965l0.104-0.994l-23.881-2.51c-0.031,0.332-0.068,0.664-0.105,0.994L266.68,164.965z"/>
-			<path d="M266.783,140.932l-0.107-0.992l-23.879,2.508c0.037,0.33,0.074,0.66,0.105,0.992L266.783,140.932z"/>
-			<path d="M264.924,129.018l-0.207-0.975l-23.453,4.986c0.07,0.326,0.145,0.648,0.211,0.975L264.924,129.018z"/>
-			<path d="M261.887,117.439l-0.309-0.953l-22.811,7.4c0.105,0.316,0.207,0.635,0.309,0.953L261.887,117.439z"/>
-			<path d="M257.613,106.188l-0.408-0.912l-21.893,9.734c0.137,0.305,0.266,0.611,0.4,0.916L257.613,106.188z"/>
-			<path d="M245.686,85.248l-0.588-0.809L225.67,98.555c0.197,0.27,0.395,0.537,0.59,0.809L245.686,85.248z"/>
-			<path d="M238.146,75.893l-0.672-0.742l-17.828,16.049c0.225,0.246,0.443,0.498,0.666,0.746L238.146,75.893z"/>
-			<path d="M229.648,67.322l-0.742-0.668l-16.053,17.832c0.248,0.223,0.498,0.441,0.746,0.666L229.648,67.322z"/>
-			<path d="M220.361,59.758l-0.813-0.59l-14.094,19.385c0.271,0.195,0.541,0.393,0.811,0.592L220.361,59.758z"/>
-			<path d="M199.578,47.65l-0.912-0.408l-9.74,21.865c0.305,0.135,0.611,0.266,0.914,0.402L199.578,47.65z"/>
-			<path d="M188.369,43.221l-0.953-0.309L180,65.734c0.318,0.102,0.635,0.205,0.951,0.309L188.369,43.221z"/>
-			<path d="M176.76,40.025l-0.979-0.209l-4.998,23.504c0.328,0.068,0.652,0.143,0.979,0.213L176.76,40.025z"/>
-			<path d="M164.861,38.176l-0.994-0.104l-2.504,23.822c0.332,0.033,0.662,0.07,0.994,0.107L164.861,38.176z"/>
-			<path d="M153.35,61.463V32.451h-2.002v29.012c0.334-0.004,0.666-0.012,1-0.012S153.016,61.459,153.35,61.463z"/>
-			<path d="M93.215,48.006l-1.732,0.998l14.506,25.131c0.573-0.34,1.15-0.674,1.73-1L93.215,48.006z"/>
-			<path d="M48.9,91.586l-0.998,1.729l25.129,14.506c0.328-0.58,0.66-1.156,1.001-1.729L48.9,91.586z"/>
-			<path d="M61.359,151.453H32.347v1.996h29.013c-0.004-0.334-0.012-0.664-0.012-0.998S61.355,151.785,61.359,151.453z"/>
-			<path d="M47.9,211.584l1.002,1.734l25.131-14.508c-0.34-0.572-0.676-1.15-1.003-1.732L47.9,211.584z"/>
-			<path d="M91.48,255.898l1.734,0.998l14.504-25.129c-0.581-0.328-1.158-0.662-1.73-1.002L91.48,255.898z"/>
-			<path d="M151.348,243.438v29.014h2.002v-29.014c-0.334,0.004-0.668,0.014-1.002,0.014S151.682,243.441,151.348,243.438z"/>
-			<path d="M211.48,256.896l1.734-0.998l-14.508-25.133c-0.574,0.34-1.15,0.674-1.732,1.002L211.48,256.896z"/>
-			<path d="M255.793,213.318l1-1.734l-25.129-14.506c-0.328,0.582-0.662,1.158-1.002,1.732L255.793,213.318z"/>
-			<path d="M243.334,153.449h29.014v-1.996h-29.014c0.004,0.332,0.014,0.664,0.014,0.998S243.338,153.115,243.334,153.449z"/>
-			<path d="M256.791,93.314l-0.998-1.729l-25.131,14.506c0.338,0.572,0.672,1.148,1,1.729L256.791,93.314z"/>
-			<path d="M213.211,49.004l-1.729-0.998l-14.506,25.129c0.58,0.328,1.156,0.662,1.729,1.002L213.211,49.004z"/>
-		</g>
-	</g>
-	<rect fill="none" width="305" height="305"/>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer_bg.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,157 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="292px" height="292px" viewBox="0 0 292 292" enable-background="new 0 0 292 292" xml:space="preserve">
-<g>
-	<g>
-		<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="144.9668" y1="2.0586" x2="147.0384" y2="290.504">
-			<stop  offset="0" style="stop-color:#00B9FF"/>
-			<stop  offset="0.2458" style="stop-color:#00A0EE"/>
-			<stop  offset="0.563" style="stop-color:#0087DC"/>
-			<stop  offset="0.7527" style="stop-color:#007DD5"/>
-		</linearGradient>
-		<path fill="url(#SVGID_1_)" d="M291,146.002C291,226.086,226.082,291,146,291S1,226.086,1,146.002C1,65.916,65.918,1,146,1
-			S291,65.916,291,146.002z"/>
-		<g>
-			<polygon points="145.717,259.359 145.717,29.361 147.715,29.361 147.715,259.359 145.717,259.359 			"/>
-			<polygon points="157.246,249.334 135.191,39.492 136.186,39.387 158.242,249.23 157.246,249.334 			"/>
-			<polygon points="135.191,249.23 157.246,39.387 158.242,39.492 136.186,249.334 135.191,249.23 			"/>
-			<polygon points="124.293,247.451 168.162,41.063 169.141,41.271 125.271,247.658 124.293,247.451 			"/>
-			<polygon points="113.639,244.543 178.842,43.871 179.793,44.18 114.592,244.852 113.639,244.543 			"/>
-			<polygon points="103.348,240.537 189.17,47.779 190.084,48.186 104.264,240.943 103.348,240.537 			"/>
-			<polygon points="84.301,229.418 208.322,58.717 209.133,59.305 85.109,230.006 84.301,229.418 			"/>
-			<polygon points="75.752,222.428 216.938,65.625 217.682,66.295 76.496,223.098 75.752,222.428 			"/>
-			<polygon points="67.98,214.584 224.783,73.396 225.453,74.141 68.65,215.326 67.98,214.584 			"/>
-			<polygon points="61.07,205.969 231.773,81.945 232.361,82.756 61.66,206.777 61.07,205.969 			"/>
-			<polygon points="50.135,186.814 242.893,100.994 243.299,101.908 50.541,187.729 50.135,186.814 			"/>
-			<polygon points="46.227,176.486 246.898,111.285 247.207,112.236 46.535,177.439 46.227,176.486 			"/>
-			<polygon points="43.418,165.807 249.807,121.938 250.016,122.916 43.627,166.785 43.418,165.807 			"/>
-			<polygon points="41.742,154.893 251.586,132.836 251.691,133.832 41.848,155.887 41.742,154.893 			"/>
-			<polygon points="41.848,132.836 251.691,154.893 251.586,155.887 41.742,133.832 41.848,132.836 			"/>
-			<polygon points="43.627,121.938 250.016,165.807 249.807,166.785 43.418,122.916 43.627,121.938 			"/>
-			<polygon points="46.533,111.285 247.207,176.488 246.898,177.439 46.227,112.236 46.533,111.285 			"/>
-			<polygon points="50.541,100.994 243.299,186.816 242.893,187.73 50.135,101.908 50.541,100.994 			"/>
-			<polygon points="61.66,81.945 232.361,205.969 231.773,206.777 61.072,82.756 61.66,81.945 			"/>
-			<polygon points="68.65,73.396 225.453,214.584 224.783,215.326 67.979,74.141 68.65,73.396 			"/>
-			<polygon points="76.494,65.625 217.682,222.43 216.938,223.098 75.752,66.295 76.494,65.625 			"/>
-			<polygon points="85.109,58.715 209.133,229.42 208.322,230.008 84.301,59.305 85.109,58.715 			"/>
-			<polygon points="168.162,247.658 124.293,41.271 125.271,41.063 169.141,247.451 168.162,247.658 			"/>
-			<polygon points="178.842,244.852 113.639,44.18 114.59,43.871 179.793,244.543 178.842,244.852 			"/>
-			<polygon points="189.17,240.943 103.348,48.186 104.262,47.779 190.084,240.537 189.17,240.943 			"/>
-			<polygon points="88.35,243.453 203.35,44.27 205.084,45.268 90.082,244.453 88.35,243.453 			"/>
-			<polygon points="88.35,45.268 90.082,44.27 205.084,243.453 203.35,244.453 88.35,45.268 			"/>
-			<polygon points="31.717,145.361 31.717,143.361 261.719,143.361 261.719,145.361 31.717,145.361 			"/>
-			<polygon points="46.623,87.729 47.625,85.996 246.811,200.996 245.811,202.725 46.623,87.729 			"/>
-			<polygon points="46.623,200.996 245.811,85.996 246.811,87.729 47.625,202.725 46.623,200.996 			"/>
-			<g>
-				<g>
-					<path fill="#F2F2F2" d="M135.988,281.377c0.602,0.383,1.992,0.984,3.457,0.984c2.713,0,3.553-1.729,3.527-3.025
-						c-0.023-2.184-1.992-3.119-4.031-3.119h-1.176v-1.586h1.176c1.535,0,3.48-0.791,3.48-2.639c0-1.248-0.793-2.354-2.736-2.354
-						c-1.248,0-2.449,0.553-3.121,1.033l-0.551-1.537c0.814-0.6,2.4-1.199,4.08-1.199c3.072,0,4.465,1.824,4.465,3.721
-						c0,1.607-0.961,2.975-2.881,3.672v0.047c1.92,0.385,3.48,1.824,3.48,4.01c0,2.496-1.945,4.68-5.689,4.68
-						c-1.752,0-3.287-0.553-4.057-1.057L135.988,281.377z"/>
-					<path fill="#F2F2F2" d="M158.166,275.832c0,5.305-1.969,8.232-5.426,8.232c-3.047,0-5.111-2.855-5.16-8.016
-						c0-5.234,2.256-8.113,5.424-8.113C156.293,267.936,158.166,270.863,158.166,275.832z M149.693,276.072
-						c0,4.057,1.248,6.359,3.168,6.359c2.16,0,3.191-2.52,3.191-6.504c0-3.84-0.984-6.361-3.168-6.361
-						C151.037,269.566,149.693,271.824,149.693,276.072z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M268.225,137.771h-0.047l-2.713,1.465l-0.408-1.609l3.408-1.824h1.801v15.602h-2.041V137.771z"/>
-					<path fill="#F2F2F2" d="M285.266,137.58h-5.953l-0.6,4.008c0.359-0.047,0.695-0.096,1.271-0.096c1.201,0,2.4,0.264,3.361,0.84
-						c1.225,0.695,2.232,2.041,2.232,4.008c0,3.049-2.426,5.33-5.809,5.33c-1.705,0-3.145-0.48-3.889-0.961l0.527-1.607
-						c0.648,0.383,1.92,0.863,3.336,0.863c1.992,0,3.697-1.297,3.697-3.385c-0.023-2.016-1.369-3.455-4.488-3.455
-						c-0.889,0-1.584,0.096-2.16,0.168l1.008-7.49h7.465V137.58z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M13.67,151.404v-4.248H6.422v-1.393l6.959-9.961h2.281v9.697h2.184v1.656h-2.184v4.248H13.67z
-						 M13.67,145.5v-5.207c0-0.816,0.023-1.633,0.072-2.449H13.67c-0.48,0.912-0.865,1.584-1.297,2.305l-3.816,5.305v0.047H13.67z"
-						/>
-					<path fill="#F2F2F2" d="M28.766,137.58h-5.953l-0.6,4.008c0.359-0.047,0.695-0.096,1.271-0.096c1.201,0,2.4,0.264,3.361,0.84
-						c1.225,0.695,2.232,2.041,2.232,4.008c0,3.049-2.426,5.33-5.809,5.33c-1.705,0-3.145-0.48-3.889-0.961l0.527-1.607
-						c0.648,0.383,1.92,0.863,3.336,0.863c1.992,0,3.697-1.297,3.697-3.385c-0.023-2.016-1.369-3.455-4.488-3.455
-						c-0.889,0-1.584,0.096-2.16,0.168l1.008-7.49h7.465V137.58z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M152.01,15.832c0,5.305-1.969,8.232-5.424,8.232c-3.049,0-5.113-2.855-5.16-8.016
-						c0-5.234,2.256-8.113,5.424-8.113C150.139,7.936,152.01,10.863,152.01,15.832z M143.537,16.072
-						c0,4.057,1.248,6.359,3.168,6.359c2.16,0,3.193-2.52,3.193-6.504c0-3.84-0.984-6.361-3.168-6.361
-						C144.881,9.566,143.537,11.824,143.537,16.072z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M201.344,266.35v-1.297l1.656-1.607c3.984-3.793,5.783-5.809,5.809-8.16
-						c0-1.584-0.77-3.049-3.098-3.049c-1.416,0-2.592,0.721-3.313,1.32l-0.672-1.488c1.08-0.912,2.617-1.584,4.418-1.584
-						c3.359,0,4.775,2.305,4.775,4.535c0,2.881-2.088,5.209-5.377,8.377l-1.248,1.152v0.049h7.01v1.752H201.344z"/>
-					<path fill="#F2F2F2" d="M222.967,252.523h-5.951l-0.6,4.01c0.359-0.049,0.695-0.098,1.271-0.098c1.199,0,2.4,0.266,3.359,0.842
-						c1.225,0.695,2.232,2.039,2.232,4.008c0,3.049-2.424,5.328-5.809,5.328c-1.703,0-3.145-0.48-3.889-0.961l0.529-1.607
-						c0.648,0.385,1.92,0.865,3.336,0.865c1.992,0,3.695-1.297,3.695-3.385c-0.023-2.018-1.367-3.457-4.488-3.457
-						c-0.887,0-1.584,0.096-2.16,0.168l1.01-7.488h7.463V252.523z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M252.215,78.574h-0.047l-2.713,1.463l-0.408-1.607l3.408-1.824h1.801v15.602h-2.041V78.574z"/>
-					<path fill="#F2F2F2" d="M270.313,84.238c0,5.305-1.969,8.232-5.426,8.232c-3.047,0-5.111-2.855-5.16-8.016
-						c0-5.234,2.256-8.113,5.424-8.113C268.439,76.342,270.313,79.27,270.313,84.238z M261.84,84.479
-						c0,4.057,1.248,6.359,3.168,6.359c2.16,0,3.191-2.52,3.191-6.504c0-3.84-0.984-6.361-3.168-6.361
-						C263.184,77.973,261.84,80.23,261.84,84.479z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M28.525,216.248V212h-7.248v-1.393l6.959-9.961h2.281v9.697h2.184V212h-2.184v4.248H28.525z
-						 M28.525,210.344v-5.209c0-0.816,0.023-1.633,0.072-2.447h-0.072c-0.48,0.912-0.865,1.584-1.297,2.303l-3.816,5.305v0.049
-						H28.525z"/>
-					<path fill="#F2F2F2" d="M44.678,208.279c0,5.305-1.969,8.232-5.426,8.232c-3.047,0-5.111-2.855-5.16-8.016
-						c0-5.234,2.256-8.113,5.424-8.113C42.805,200.383,44.678,203.311,44.678,208.279z M36.205,208.52
-						c0,4.057,1.248,6.359,3.168,6.359c2.16,0,3.191-2.52,3.191-6.504c0-3.84-0.984-6.361-3.168-6.361
-						C37.549,202.014,36.205,204.271,36.205,208.52z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M73.986,31.451h-5.951l-0.602,4.008c0.361-0.047,0.697-0.096,1.273-0.096c1.199,0,2.4,0.264,3.359,0.84
-						c1.225,0.695,2.232,2.041,2.232,4.008c0,3.049-2.424,5.33-5.809,5.33c-1.703,0-3.145-0.48-3.889-0.961l0.529-1.607
-						c0.648,0.383,1.92,0.863,3.336,0.863c1.992,0,3.695-1.297,3.695-3.385c-0.023-2.016-1.367-3.455-4.488-3.455
-						c-0.887,0-1.584,0.096-2.16,0.168l1.01-7.49h7.463V31.451z"/>
-					<path fill="#F2F2F2" d="M86.299,31.451h-5.953l-0.6,4.008c0.359-0.047,0.695-0.096,1.271-0.096c1.201,0,2.4,0.264,3.361,0.84
-						c1.225,0.695,2.232,2.041,2.232,4.008c0,3.049-2.426,5.33-5.809,5.33c-1.705,0-3.145-0.48-3.889-0.961l0.527-1.607
-						c0.648,0.383,1.92,0.863,3.336,0.863c1.992,0,3.697-1.297,3.697-3.385c-0.023-2.016-1.369-3.455-4.488-3.455
-						c-0.889,0-1.584,0.096-2.16,0.168l1.008-7.49h7.465V31.451z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M248.828,216.248v-1.297l1.656-1.607c3.984-3.793,5.783-5.809,5.809-8.162
-						c0-1.584-0.77-3.047-3.098-3.047c-1.416,0-2.592,0.719-3.313,1.32l-0.672-1.488c1.08-0.912,2.617-1.584,4.418-1.584
-						c3.359,0,4.775,2.303,4.775,4.535c0,2.881-2.088,5.209-5.377,8.377l-1.248,1.152v0.049h7.01v1.752H248.828z"/>
-					<path fill="#F2F2F2" d="M271.508,208.279c0,5.305-1.969,8.232-5.424,8.232c-3.049,0-5.113-2.857-5.16-8.018
-						c0-5.232,2.256-8.111,5.424-8.111C269.637,200.383,271.508,203.311,271.508,208.279z M263.035,208.52
-						c0,4.055,1.248,6.359,3.168,6.359c2.16,0,3.193-2.52,3.193-6.504c0-3.84-0.984-6.361-3.168-6.361
-						C264.379,202.014,263.035,204.27,263.035,208.52z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M214.293,25.451h-5.953l-0.6,4.008c0.359-0.049,0.695-0.096,1.271-0.096c1.201,0,2.4,0.264,3.361,0.84
-						c1.225,0.695,2.232,2.039,2.232,4.008c0,3.049-2.426,5.328-5.809,5.328c-1.705,0-3.145-0.479-3.889-0.959l0.527-1.609
-						c0.648,0.385,1.92,0.865,3.336,0.865c1.992,0,3.697-1.297,3.697-3.385c-0.023-2.016-1.369-3.457-4.488-3.457
-						c-0.889,0-1.584,0.098-2.16,0.168l1.008-7.488h7.465V25.451z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M71.234,263.926c0.6,0.385,1.992,0.984,3.455,0.984c2.713,0,3.553-1.729,3.529-3.023
-						c-0.023-2.184-1.992-3.121-4.033-3.121H73.01v-1.584h1.176c1.537,0,3.48-0.791,3.48-2.641c0-1.248-0.791-2.352-2.736-2.352
-						c-1.248,0-2.447,0.553-3.119,1.033l-0.553-1.537c0.816-0.6,2.4-1.199,4.08-1.199c3.072,0,4.465,1.824,4.465,3.719
-						c0,1.609-0.961,2.977-2.881,3.674v0.047c1.92,0.385,3.48,1.824,3.48,4.008c0,2.498-1.943,4.682-5.688,4.682
-						c-1.752,0-3.289-0.553-4.057-1.057L71.234,263.926z"/>
-					<path fill="#F2F2F2" d="M92.354,252.525h-5.951l-0.6,4.008c0.359-0.047,0.695-0.096,1.271-0.096c1.199,0,2.4,0.264,3.359,0.84
-						c1.225,0.697,2.232,2.041,2.232,4.01c0,3.047-2.424,5.328-5.809,5.328c-1.703,0-3.145-0.48-3.889-0.961l0.529-1.607
-						c0.648,0.385,1.92,0.863,3.336,0.863c1.992,0,3.695-1.295,3.695-3.383c-0.023-2.018-1.367-3.457-4.488-3.457
-						c-0.887,0-1.584,0.096-2.16,0.168l1.01-7.488h7.463V252.525z"/>
-				</g>
-				<g>
-					<path fill="#F2F2F2" d="M30.283,78.383h-5.951l-0.602,4.008c0.361-0.049,0.697-0.096,1.273-0.096c1.199,0,2.4,0.264,3.359,0.84
-						c1.225,0.695,2.232,2.039,2.232,4.008c0,3.049-2.424,5.328-5.809,5.328c-1.703,0-3.145-0.479-3.889-0.959l0.529-1.609
-						c0.648,0.385,1.92,0.865,3.336,0.865c1.992,0,3.695-1.297,3.695-3.385c-0.023-2.016-1.367-3.457-4.488-3.457
-						c-0.887,0-1.584,0.098-2.16,0.168l1.01-7.488h7.463V78.383z"/>
-					<path fill="#F2F2F2" d="M43.652,84.238c0,5.305-1.969,8.232-5.426,8.232c-3.047,0-5.111-2.855-5.16-8.016
-						c0-5.232,2.256-8.113,5.424-8.113C41.779,76.342,43.652,79.27,43.652,84.238z M35.18,84.479c0,4.057,1.248,6.361,3.168,6.361
-						c2.16,0,3.191-2.521,3.191-6.506c0-3.84-0.984-6.359-3.168-6.359C36.523,77.975,35.18,80.23,35.18,84.479z"/>
-				</g>
-			</g>
-		</g>
-		<circle fill="#E6E6E6" cx="146" cy="146" r="95"/>
-	</g>
-	<rect fill="none" width="292" height="292"/>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer_overlay.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="292px" height="292px" viewBox="0 0 292 292" enable-background="new 0 0 292 292" xml:space="preserve">
-<g>
-	
-		<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="79.2285" y1="25.7695" x2="79.2285" y2="-64.2285" gradientTransform="matrix(1 0 0 -1 66.772 126.7695)">
-		<stop  offset="0" style="stop-color:#00B9FF"/>
-		<stop  offset="0.2458" style="stop-color:#00A0EE"/>
-		<stop  offset="0.563" style="stop-color:#0087DC"/>
-		<stop  offset="0.7527" style="stop-color:#007DD5"/>
-	</linearGradient>
-	<path fill="url(#SVGID_1_)" d="M146,101c24.856,0,45,20.146,45,44.998c0,24.855-20.145,45-45,45c-24.855,0-45-20.145-45-45
-		C101,121.146,121.145,101,146,101z"/>
-	<rect fill="none" width="292" height="292"/>
-</g>
-</svg>
--- a/clock/data/timer/qtg_graf_timer_pointer.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="292px" height="292px" viewBox="0 0 292 292" enable-background="new 0 0 292 292" xml:space="preserve">
-<g>
-	<rect fill="none" width="292" height="292"/>
-	<polygon points="120.687,109.787 146.667,51.787 172.647,109.787 	"/>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_addnewcity.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<g>
-				<path d="M19.846,38.309l-4.657-2.392c-0.143-0.071-0.248-0.196-0.296-0.349l0,0c-0.049-0.153-0.036-0.316,0.039-0.459l0,0
-					c0.003-0.011,0.422-0.822,4.043-7.836l0,0l-5.06-2.633l0.277-0.534l0.531,0.278l-0.531-0.278l-0.277,0.534
-					c-0.293-0.152-0.411-0.514-0.258-0.807l0,0l0.443-0.864c1.544-3.015,4.185-4.988,7.161-5.517l0,0
-					c0.402-0.781,1.234-2.395,2.95-5.722l0,0c-0.635-0.327-1.566-0.809-1.566-0.809v-0.002c-0.294-0.149-0.411-0.511-0.257-0.804
-					l0,0l2.241-4.345c0.153-0.296,0.515-0.415,0.809-0.261l0,0l13.257,6.84c0.141,0.071,0.248,0.199,0.297,0.353l0,0
-					c0.049,0.15,0.036,0.315-0.036,0.456l0,0l-2.241,4.348c-0.075,0.14-0.199,0.244-0.353,0.297l0,0
-					c-0.153,0.049-0.316,0.032-0.46-0.04l0,0c0,0-0.621-0.321-1.563-0.808l0,0c-0.52,1.004-1.413,2.736-2.95,5.717l0,0
-					c0.596,1.263,0.906,2.652,0.906,4.076l0,0c0,1.651-0.414,3.344-1.248,4.96l0,0l-0.446,0.867
-					c-0.071,0.14-0.195,0.243-0.349,0.296l0,0c-0.153,0.05-0.316,0.033-0.46-0.038l0,0l-5.094-2.623
-					c-1.017,1.97-4.041,7.831-4.044,7.84l0,0c-0.075,0.14-0.195,0.244-0.349,0.297l0,0c-0.059,0.019-0.12,0.028-0.18,0.028l0,0
-					C20.029,38.377,19.935,38.354,19.846,38.309L19.846,38.309z"/>
-			</g>
-		</g>
-		<g>
-			<g>
-				<path d="M7.52,20.1c-0.156,0-0.313-0.061-0.423-0.176l0,0c-0.11-0.109-0.175-0.266-0.175-0.423l0,0v-5.337H1.578
-					c-0.157,0-0.313-0.064-0.423-0.176l0,0c-0.11-0.113-0.176-0.267-0.176-0.426l0,0V8.16c0-0.156,0.065-0.313,0.176-0.424l0,0
-					c0.111-0.113,0.267-0.174,0.423-0.174l0,0l5.344-0.004V2.225c0-0.16,0.062-0.313,0.175-0.427l0,0
-					c0.11-0.11,0.267-0.176,0.423-0.176l0,0h5.402c0.156,0,0.313,0.065,0.423,0.176l0,0c0.111,0.114,0.176,0.267,0.176,0.427l0,0
-					v5.338h5.337V8.16V7.563c0.163,0,0.313,0.061,0.426,0.174l0,0C19.398,7.852,19.46,8,19.46,8.16l0,0v5.402
-					c0,0.159-0.062,0.313-0.176,0.426l0,0c-0.114,0.111-0.264,0.173-0.426,0.173l0,0h-5.337v5.34c0,0.157-0.065,0.313-0.176,0.423
-					l0,0c-0.113,0.115-0.267,0.176-0.423,0.176l0,0H7.52L7.52,20.1z"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_alarm.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<circle cx="30.819" cy="29.887" r="4.693"/>
-		</g>
-		<g>
-			<g>
-				<path d="M13.694,37.482c-0.165,0-0.318-0.063-0.437-0.181l0,0L8.09,32.133c-0.11-0.113-0.174-0.262-0.181-0.419l0,0
-					l-0.206-6.682c-1.64-1.418-4.903-4.7-5.305-9.255l0,0c-0.026-0.296-0.037-0.585-0.037-0.865l0,0
-					C2.359,11.884,3.728,9.006,6.322,6.42l0,0c2.55-2.561,5.41-3.906,8.438-3.904l0,0c0.279,0,0.554,0.015,0.826,0.035l0,0
-					c4.699,0.388,8.168,3.764,9.682,5.476l0,0l6.564-0.237c0.172-0.008,0.344,0.062,0.465,0.186l0,0l5.164,5.243
-					c0.238,0.241,0.234,0.631-0.004,0.869l0,0L14.13,37.304c-0.111,0.111-0.261,0.179-0.424,0.179l0,0
-					C13.702,37.482,13.698,37.482,13.694,37.482L13.694,37.482z"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_analyze.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<path d="M35.069,11.898l-8.76-8.762c-0.111-0.117-0.268-0.178-0.429-0.178H5.36c-0.158,0-0.316,0.061-0.43,0.178
-				C4.819,3.248,4.753,3.404,4.753,3.564v32.869c0,0.158,0.065,0.314,0.177,0.43c0.116,0.111,0.271,0.178,0.43,0.178h29.28
-				c0.157,0,0.316-0.066,0.429-0.178c0.112-0.115,0.178-0.271,0.178-0.43V12.328C35.247,12.168,35.181,12.01,35.069,11.898z
-				 M19.391,8.881c1.963,0,3.551,1.6,3.551,3.57c0,1.969-1.588,3.566-3.551,3.566c-1.967,0-3.548-1.598-3.551-3.566
-				C15.843,10.48,17.424,8.881,19.391,8.881z M25.164,30.09c0,0.162-0.063,0.313-0.179,0.428c-0.111,0.117-0.267,0.18-0.429,0.18
-				h-9.365c-0.164,0-0.315-0.063-0.428-0.18c-0.116-0.115-0.179-0.266-0.179-0.428v-2.838c0-0.162,0.063-0.316,0.175-0.432
-				c0.116-0.113,0.271-0.176,0.432-0.176h1.619V20.65l-1.085-0.023c-0.329-0.008-0.593-0.279-0.593-0.604V17.25
-				c0-0.162,0.063-0.313,0.178-0.43c0.115-0.115,0.268-0.178,0.428-0.178l6.652,0.018c0.336,0,0.606,0.27,0.606,0.604v9.381h1.56
-				c0.162,0,0.317,0.063,0.429,0.178c0.115,0.113,0.179,0.268,0.179,0.43V30.09z M33.559,12.729h-7.656
-				c-0.333,0-0.605-0.273-0.605-0.605V4.467c0-0.338,0.272-0.607,0.605-0.607c0.337,0,0.607,0.27,0.607,0.607v7.049h7.049
-				c0.337,0,0.607,0.27,0.607,0.607C34.167,12.455,33.896,12.729,33.559,12.729z"/>
-		</g>
-	</g>
-	<rect fill="none" width="40" height="40"/>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_lap.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<g>
-				<path d="M38.817,19.563c0.017-0.134-0.02-0.265-0.101-0.368l-2.719-3.5c-0.082-0.104-0.202-0.173-0.334-0.188
-					c-0.131-0.017-0.265,0.021-0.368,0.104l-2.323,1.81c-1.211-0.732-2.574-1.239-4.027-1.464v-1.482h1.853
-					c0.134,0,0.257-0.052,0.353-0.145c0.096-0.096,0.147-0.222,0.147-0.355v-2.35c0-0.132-0.055-0.263-0.147-0.353
-					c-0.093-0.093-0.221-0.147-0.353-0.147h-7.049c-0.134,0-0.263,0.052-0.355,0.147c-0.093,0.09-0.145,0.221-0.145,0.353v2.35
-					c0,0.273,0.219,0.494,0.494,0.497l1.85,0.02v1.466c-1.429,0.22-2.769,0.714-3.967,1.426l-2.279-1.774
-					c-0.218-0.169-0.532-0.131-0.702,0.088l-2.716,3.5c-0.169,0.218-0.131,0.529,0.088,0.702l1.744,1.358
-					c-0.987,1.657-1.562,3.591-1.562,5.658C16.199,33.03,21.161,38,27.268,38c6.109,0,11.074-4.97,11.074-11.087
-					c0-2.044-0.562-3.961-1.529-5.604l1.816-1.412C38.732,19.814,38.801,19.696,38.817,19.563z M29.09,28.268
-					c0,0.131-0.055,0.256-0.147,0.352c-0.096,0.096-0.222,0.145-0.355,0.145H26.06c-0.134,0-0.26-0.049-0.355-0.145
-					c-0.093-0.096-0.145-0.221-0.145-0.352v-7.202c0-0.131,0.052-0.259,0.145-0.354c0.096-0.093,0.224-0.145,0.355-0.145h2.527
-					c0.134,0,0.263,0.052,0.355,0.145c0.093,0.096,0.147,0.224,0.147,0.354V28.268z"/>
-			</g>
-		</g>
-		<g>
-			<g>
-				<path d="M6.984,27.315c-3.243-1.933-5.43-5.473-5.43-9.523l0,0c0-2.067,0.576-4.002,1.563-5.658l0,0l-1.745-1.36
-					c-0.219-0.172-0.257-0.482-0.088-0.701l0,0l2.719-3.499c0.17-0.219,0.483-0.257,0.702-0.088l0,0L6.983,8.26
-					c1.195-0.711,2.539-1.203,3.97-1.425l0,0V5.366L9.097,5.35C8.824,5.348,8.603,5.126,8.603,4.851l0,0V2.5
-					c0-0.131,0.055-0.259,0.147-0.352l0,0c0.093-0.093,0.222-0.147,0.353-0.147l0,0h4.725c0.134,0,0.26,0.052,0.355,0.147l0,0
-					c0.093,0.093,0.145,0.218,0.145,0.352l0,0v7.154c0,0.146-0.063,0.281-0.172,0.377l0,0c-0.109,0.096-0.257,0.137-0.401,0.117l0,0
-					c-0.377-0.057-0.751-0.093-1.128-0.093l0,0c-4.255,0.009-7.714,3.47-7.722,7.733l0,0c0,1.791,0.614,3.432,1.638,4.747l0,0
-					l0.104,0.284c0.061,1.384,0.423,2.683,1.034,3.832l0,0c0.106,0.196,0.068,0.442-0.095,0.598l0,0
-					c-0.096,0.091-0.22,0.138-0.345,0.138l0,0C7.152,27.388,7.063,27.364,6.984,27.315L6.984,27.315z"/>
-			</g>
-		</g>
-		<g>
-			<g>
-				<path d="M14.307,32.272c-3.244-1.931-5.429-5.473-5.429-9.523l0,0c-0.003-2.068,0.573-4.004,1.561-5.66l0,0l-1.744-1.36
-					c-0.218-0.17-0.259-0.483-0.087-0.699l0,0l2.717-3.498c0.17-0.222,0.483-0.257,0.702-0.088l0,0l2.279,1.774
-					c1.195-0.712,2.536-1.205,3.967-1.426l0,0v-1.468l-1.852-0.017c-0.273-0.006-0.495-0.227-0.495-0.5l0,0V7.456
-					c0-0.131,0.052-0.259,0.146-0.354l0,0c0.093-0.093,0.224-0.145,0.354-0.145l0,0h4.725c0.134,0,0.26,0.052,0.353,0.147l0,0
-					c0.096,0.093,0.147,0.218,0.147,0.352l0,0v7.155c0,0.145-0.063,0.281-0.175,0.377l0,0c-0.109,0.096-0.254,0.14-0.399,0.117l0,0
-					c-0.376-0.058-0.751-0.093-1.127-0.093l0,0c-4.258,0.008-7.715,3.471-7.724,7.734l0,0c0,1.788,0.614,3.43,1.636,4.746l0,0
-					l0.106,0.284c0.061,1.382,0.421,2.682,1.035,3.831l0,0c0.106,0.196,0.065,0.442-0.096,0.598l0,0
-					c-0.096,0.092-0.22,0.139-0.344,0.139l0,0C14.475,32.345,14.386,32.321,14.307,32.272L14.307,32.272z"/>
-			</g>
-		</g>
-	</g>
-	<rect fill="none" width="40" height="40"/>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_newalarm.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<g>
-				<circle cx="24.229" cy="32.53" r="3.754"/>
-			</g>
-			<g>
-				<g>
-					<path d="M10.093,38.548l-4.134-4.136c-0.114-0.111-0.178-0.259-0.182-0.418l0,0l-0.163-5.287
-						c-1.332-1.163-3.921-3.79-4.246-7.453l0,0c-0.023-0.242-0.03-0.475-0.03-0.703l0,0c-0.004-2.462,1.111-4.797,3.207-6.883l0,0
-						c2.052-2.062,4.375-3.158,6.835-3.156l0,0c0.226,0,0.45,0.012,0.67,0.028l0,0c3.781,0.314,6.553,2.986,7.792,4.378l0,0
-						l5.193-0.188c0.172-0.006,0.344,0.061,0.465,0.182l0,0l4.13,4.193c0.239,0.243,0.235,0.634-0.004,0.874l0,0l-18.66,18.573
-						c-0.119,0.114-0.273,0.179-0.439,0.179l0,0C10.362,38.73,10.207,38.666,10.093,38.548L10.093,38.548z M24.618,15.781
-						l0.44-0.436L24.618,15.781L24.618,15.781z"/>
-				</g>
-			</g>
-		</g>
-		<g>
-			<g>
-				<path d="M30.54,17.302c-0.155-0.057-0.276-0.175-0.343-0.325l0,0l-1.854-4.194c-0.138-0.313,0-0.679,0.313-0.817l0,0l7.28-3.218
-					c0.313-0.138,0.676,0,0.814,0.312l0,0l1.856,4.195c0.067,0.15,0.07,0.318,0.01,0.474l0,0c-0.06,0.154-0.175,0.275-0.326,0.343
-					l0,0l-7.277,3.223c-0.08,0.034-0.165,0.053-0.249,0.053l0,0C30.689,17.346,30.613,17.331,30.54,17.302L30.54,17.302z
-					 M35.622,9.561l0.564-0.249L35.622,9.561L35.622,9.561z M26.555,11.586L22.313,9.84c-0.315-0.128-0.467-0.492-0.336-0.804l0,0
-					l3.026-7.383c0.131-0.315,0.491-0.468,0.808-0.336l0,0l4.24,1.742c0.316,0.131,0.465,0.491,0.337,0.808l0,0l-3.03,7.382
-					c-0.061,0.151-0.179,0.272-0.333,0.337l0,0c-0.075,0.031-0.155,0.047-0.235,0.047l0,0C26.711,11.633,26.63,11.617,26.555,11.586
-					L26.555,11.586z M25.341,2.46l0.235-0.571L25.341,2.46L25.341,2.46z"/>
-			</g>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_reset.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<path d="M23.19,4.596c0.446-0.448,0.882-0.886,0.882-0.886c0.204-0.206,0.204-0.539-0.002-0.741l-1.943-1.943
-			c-0.207-0.207-0.538-0.207-0.742,0l-4.912,4.917c-0.204,0.207-0.204,0.535,0,0.742l5.025,5.027c0.1,0.099,0.232,0.155,0.371,0.155
-			c0.142,0,0.271-0.057,0.371-0.153l1.945-1.937c0.1-0.1,0.153-0.23,0.153-0.372c0-0.138-0.054-0.274-0.153-0.371
-			c-0.001-0.001-0.217-0.215-0.502-0.501c4.621,1.053,8.869,5.089,8.838,9.701c0,0.142,0.054,0.271,0.153,0.374
-			c0.099,0.1,0.232,0.149,0.37,0.149h2.74c0.141,0,0.271-0.05,0.371-0.149c0.099-0.103,0.155-0.232,0.155-0.374
-			C36.285,11.217,30.01,5.507,23.19,4.596z M35.785,18.234V17.71V18.234z"/>
-		<path d="M17.388,11.723c-7.556,0-13.699,6.149-13.699,13.706c0,7.554,6.143,13.702,13.699,13.702
-			c7.56,0,13.702-6.148,13.706-13.702C31.09,17.872,24.947,11.723,17.388,11.723 M19.314,26.586c0,0.14-0.054,0.272-0.153,0.372
-			c-0.099,0.1-0.229,0.153-0.372,0.153h-2.889c-0.139,0-0.27-0.054-0.369-0.153s-0.156-0.232-0.156-0.372v-9.545
-			c0-0.139,0.057-0.272,0.156-0.371c0.097-0.097,0.233-0.154,0.369-0.154h2.889c0.14,0,0.275,0.058,0.372,0.154
-			c0.1,0.099,0.153,0.232,0.153,0.371V26.586z"/>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_split.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<path d="M35.913,13.063c0.021-0.176-0.027-0.346-0.133-0.48l-3.773-4.85c-0.22-0.281-0.629-0.336-0.912-0.115l-3.251,2.531
-				c-1.692-1.025-3.6-1.732-5.635-2.041V5.971h2.616c0.171,0,0.336-0.07,0.458-0.193c0.123-0.121,0.188-0.285,0.188-0.457v-3.26
-				c0-0.174-0.066-0.338-0.188-0.461S24.996,1.41,24.824,1.41h-9.788c-0.171,0-0.339,0.07-0.461,0.189
-				c-0.119,0.123-0.189,0.291-0.189,0.461v3.256c0,0.357,0.287,0.646,0.644,0.65l2.616,0.025v2.115
-				C15.64,8.408,13.76,9.1,12.089,10.096L8.902,7.617C8.619,7.396,8.21,7.451,7.99,7.732l-3.77,4.85
-				c-0.108,0.135-0.154,0.309-0.133,0.48s0.112,0.33,0.245,0.434l2.453,1.908c-1.378,2.299-2.184,4.984-2.184,7.855
-				c0,8.453,6.872,15.324,15.324,15.328c8.452-0.004,15.328-6.875,15.328-15.328c0-2.838-0.784-5.5-2.137-7.783l2.549-1.98
-				C35.802,13.389,35.889,13.234,35.913,13.063z M20.485,35.553c-2.71,0-5.198-0.945-7.163-2.512c-0.21-0.17-0.25-0.479-0.083-0.694
-				l6.369-8.337c0.094-0.123,0.24-0.199,0.396-0.199H31.47c0.138,0,0.265,0.057,0.359,0.153c0.096,0.098,0.145,0.224,0.143,0.361
-				C31.823,30.548,26.744,35.55,20.485,35.553z"/>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_start.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<path d="M7.621,37.57c-0.205-0.111-0.339-0.326-0.339-0.559l0,0V2.99c0-0.236,0.13-0.451,0.339-0.561l0,0
-				C7.83,2.322,8.083,2.34,8.275,2.473l0,0l24.176,16.98c0.168,0.117,0.267,0.313,0.267,0.516l0,0c0,0.205-0.099,0.396-0.267,0.518
-				l0,0L8.275,37.523C8.166,37.6,8.039,37.639,7.91,37.639l0,0C7.812,37.639,7.714,37.615,7.621,37.57L7.621,37.57z"/>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_stop.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<path d="M5.612,34.963c-0.153,0-0.296-0.06-0.406-0.169l0,0c-0.11-0.109-0.169-0.255-0.169-0.408l0,0V5.611
-				c0-0.148,0.062-0.299,0.169-0.404l0,0c0.105-0.111,0.256-0.17,0.406-0.17l0,0h28.774c0.154,0,0.297,0.059,0.406,0.17l0,0
-				c0.111,0.105,0.17,0.254,0.17,0.404l0,0v28.774c0,0.153-0.059,0.299-0.17,0.408l0,0c-0.109,0.105-0.252,0.169-0.406,0.169l0,0
-				H5.612L5.612,34.963z"/>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_stopwatch.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<path d="M35.914,13.063c0.021-0.176-0.028-0.346-0.133-0.48l-0.515,0.4l0.515-0.4l-3.773-4.85
-			c-0.221-0.281-0.631-0.336-0.914-0.115l-3.25,2.531c-1.693-1.025-3.6-1.732-5.635-2.041V5.971h2.615
-			c0.172,0,0.336-0.07,0.459-0.193c0.122-0.121,0.188-0.285,0.188-0.457v-3.26c0-0.174-0.065-0.338-0.188-0.461
-			C25.16,1.477,24.996,1.41,24.824,1.41h-9.788c-0.171,0-0.339,0.07-0.461,0.189c-0.119,0.123-0.189,0.291-0.189,0.461v3.256
-			c0,0.357,0.287,0.646,0.644,0.65l2.616,0.025v2.115C15.64,8.408,13.76,9.1,12.089,10.096L8.902,7.617
-			C8.619,7.396,8.21,7.451,7.99,7.732l-3.77,4.85c-0.108,0.135-0.154,0.309-0.133,0.48s0.112,0.33,0.245,0.434l2.453,1.908
-			c-1.378,2.299-2.184,4.984-2.184,7.855c0,8.453,6.872,15.324,15.324,15.328c8.452-0.004,15.328-6.875,15.328-15.328
-			c0-2.838-0.784-5.5-2.137-7.783l2.55-1.98C35.802,13.389,35.889,13.234,35.914,13.063z M22.404,25.135
-			c0,0.172-0.066,0.336-0.189,0.459c-0.121,0.121-0.285,0.188-0.461,0.188h-3.508c-0.174,0-0.339-0.063-0.461-0.188
-			c-0.123-0.123-0.188-0.287-0.188-0.459V15.15c0-0.172,0.07-0.34,0.188-0.457c0.123-0.123,0.29-0.189,0.461-0.189h3.508
-			c0.176,0,0.34,0.066,0.461,0.189c0.123,0.121,0.189,0.285,0.189,0.457V25.135z"/>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_timer.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<g>
-			<g>
-				<path d="M20.788,5.788c-1.923,0-3.759,0.349-5.473,0.957l9.151,9.954c0,0,3.764,4.007-0.358,7.782
-					c-4.117,3.799-7.919-0.183-7.919-0.183L6.633,13.913c-1.43,2.437-2.265,5.266-2.265,8.296c0,9.069,7.351,16.421,16.419,16.421
-					c9.068,0,16.42-7.352,16.42-16.421C37.208,13.141,29.855,5.788,20.788,5.788z"/>
-			</g>
-		</g>
-		<g>
-			<path d="M3.648,6.713l14.069,15.29c0,0,2.113,2.213,4.4,0.103c2.291-2.098,0.201-4.324,0.201-4.324L8.251,2.483
-				c0,0-2.251-2.3-4.443-0.288C1.618,4.211,3.648,6.713,3.648,6.713z"/>
-		</g>
-	</g>
-</g>
-</svg>
--- a/clock/data/toolbar/qtg_test_worldclock.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<path d="M1.376,20C1.394,30.267,9.729,38.606,20,38.624C30.268,38.606,38.607,30.267,38.624,20
-			C38.607,9.732,30.268,1.393,20,1.375C9.729,1.393,1.394,9.732,1.376,20z M9.44,23.484l-0.925,1.23c0,0-0.085,2.324-0.091,2.422
-			c-0.076,0.226-0.693,0.149-0.932,0.149c-0.807,0.761,0.421,1.424,0.217,1.895c-0.198,0.457-0.454,0.971-0.774,1.431
-			c-2.255-2.882-4.663-8.227-3.11-14.513c0.196,0.094,0.443,0.331,0.75,0.755c0.337,0.468,0.314,1.104,0.631,1.394
-			c0.378,0.346,0.784,1.573,0.784,1.573l1.043,1.126l2.408,1.559V23.484z M32.341,29.007c-0.703,0.229-0.458-0.546-0.458-0.546
-			s0.629-1.39,0.643-1.501c0.033-0.263,0.863-0.524,0.863-0.524l0.553-0.878C34.762,25.392,33.805,28.527,32.341,29.007z
-			 M26.614,5.048c0.263,0.034,0.183,0.284,0.479,0.284c0.101,0,0.53-0.112,1.054-0.258c4.178,2.173,7.342,6.03,8.584,10.674
-			c-0.055-0.003-0.089-0.008-0.089-0.008s-0.099-0.065-0.245-0.16l-0.516-1.022l-0.817-0.066l-1.664-1.402
-			c0,0,0.441,1.13,1.173,1.664c0.475,0.033,0.798-0.032,0.822-0.008c0.52,1.373-0.594,3.06-1.887,3.372
-			c-0.163-0.704-0.306-0.979-0.512-1.58l-2.266-3.081L30.6,13.782l1.045,1.59c0,0,0.74,1.241,1.046,1.961
-			c0.589,0.522,0.703,0.739,0.763,1.273c0.207,0.066,0.37,0.077,1.023-0.162c0.988-0.364,0.424,1.162,0.262,1.588
-			c-0.592,1.444-0.724,1.331-1.656,2.279c-1.441,1.018-0.668,2.793-0.732,4.229c0,0-1.455,0.98-1.994,1.192
-			c-0.5,0.714-0.01,1.389-0.261,1.406c-0.766,0.251-1.925,1.437-2.124,1.601c-0.688,0.888-1.113,1.016-1.922,0.945
-			c-2.257-0.638-1.578-2.984-1.678-3.245c-0.277-0.898-1.153-1.029-0.012-2.746c0.479-0.564,0.045-1.822-0.828-3.043
-			c-0.4-0.563,0.281-1.868,0.229-1.877c-1.461-0.272-1.764-0.93-1.828-1.095c0,0-2.974,0.593-4.001,0.508
-			c-0.787-0.063-2.488-2.101-2.817-2.854c-0.327-0.755,0.619-3.3,0.654-3.496c0.033-0.198,2.244-1.732,2.244-1.732l1.505-1.465
-			l-0.901-0.444c0,0,0.186-1.837,1.014-1.372c0.087,0.049,0.554,0.145,1.082,0.099c0.559-0.351-0.612-0.813-0.485-1.288
-			c0.03-0.112,0.463-0.166,0.027-0.56c-0.696-0.631-0.195-1.089,0.239-1.198c0.48,0.176,0.785,0.608,0.785,1.198
-			c0,0.592,1.559-0.27,1.654-0.37c-0.695-0.501-1.045-1.294-0.784-1.327c0.267-0.036,1.421-0.335,1.716-0.633
-			C24.157,4.449,26.348,5.017,26.614,5.048z M17.624,4.73c0.215-0.104,0.614,0.104,0.889,0.063c0.277-0.041,0.521,0.063,0.521,0.063
-			s-0.491,0.23-0.705,0.271C18.115,5.169,17.809,4.959,17.624,4.73z M15.487,3.866c1.532-0.454,3.157-0.699,4.835-0.699
-			c1.305,0,2.576,0.148,3.796,0.426c-1.636,0.353-3.429-0.069-3.429-0.069c-0.164,0.262-0.905,0.125-1.1,0.125
-			c-0.199,0-1.213,0.838-2.168,0.757c-0.459,0.295-0.865,0.624-1.359,0.46c-0.492-0.164-1.435,0.653-1.795,0.688
-			c-0.489,0.155-0.724,0.119-0.792-0.025C14.599,4.841,15.058,4.28,15.487,3.866z M12.276,5.191l-0.951,1.12
-			c0,0-0.196,0.587-0.306,0.74c-0.108,0.152-0.653,0.742-0.653,0.742L9.909,7.597l-0.066-0.24c0,0-0.502,0.153-0.502,0.458
-			S7.403,9.388,6.819,9.851C8.281,7.936,10.142,6.342,12.276,5.191z"/>
-		<path d="M24.55,6.61c0.171,0.151,0.739,0.464,0.825-0.047c0.085-0.514-0.452-1.293-0.452-1.293s-0.54,0.131-0.403,0.48
-			C24.656,6.099,24.381,6.459,24.55,6.61z"/>
-		<path d="M24.55,6.61c0.171,0.151,0.739,0.464,0.825-0.047c0.085-0.514-0.452-1.293-0.452-1.293s-0.54,0.131-0.403,0.48
-			C24.656,6.099,24.381,6.459,24.55,6.61z"/>
-		<path d="M24.55,6.61c0.171,0.151,0.739,0.464,0.825-0.047c0.085-0.514-0.452-1.293-0.452-1.293s-0.54,0.131-0.403,0.48
-			C24.656,6.099,24.381,6.459,24.55,6.61z"/>
-		<path d="M28.767,9.863c0,0,0.515-0.094,1.015,0.1c1.418,0.286,0.977-0.235,0.304-0.6c-0.239-0.128-0.583-0.316-0.401-0.558
-			c-0.157-0.255-0.5-0.075-0.742,0.191c-0.243,0.266-0.771-0.121-0.932,0.37C27.849,9.856,28.653,10.085,28.767,9.863z"/>
-		<path d="M28.767,9.863c0,0,0.515-0.094,1.015,0.1c1.418,0.286,0.977-0.235,0.304-0.6c-0.239-0.128-0.583-0.316-0.401-0.558
-			c-0.157-0.255-0.5-0.075-0.742,0.191c-0.243,0.266-0.771-0.121-0.932,0.37C27.849,9.856,28.653,10.085,28.767,9.863z"/>
-		<path d="M28.767,9.863c0,0,0.515-0.094,1.015,0.1c1.418,0.286,0.977-0.235,0.304-0.6c-0.239-0.128-0.583-0.316-0.401-0.558
-			c-0.157-0.255-0.5-0.075-0.742,0.191c-0.243,0.266-0.771-0.121-0.932,0.37C27.849,9.856,28.653,10.085,28.767,9.863z"/>
-		<path d="M22.225,9.034c-0.348,0.296-1.314,1.204-1.314,1.204l-1.345,0.479l1.214,0.19l1.244-0.369l1.951,0.129l0.318,0.919
-			c0,0,2.137,1.058,2.342,0.844c0.316-0.326,0.486-0.795,0.962-0.469c0.478,0.328,1.253,0.329,1.812,0.329
-			c0.232,0.067,1.053,0.611,1.03-0.739c-0.362-0.304-2.352-0.177-2.915-1.48l-0.285,0.041c0,0,0.189,0.92-0.041,0.902
-			c-0.537-0.039-1.096-1.001-1.096-1.001l-0.104-0.408l-1.401-0.793c0,0-0.007,0.234,1.085,1.191c0,0-0.369,0.631-0.858,0.664
-			c0.124-0.164,0.216-0.655,0.216-0.655l-1.345-1.077C23.694,8.936,22.52,8.784,22.225,9.034z"/>
-		<path d="M22.225,9.034c-0.348,0.296-1.314,1.204-1.314,1.204l-1.345,0.479l1.214,0.19l1.244-0.369l1.951,0.129l0.318,0.919
-			c0,0,2.137,1.058,2.342,0.844c0.316-0.326,0.486-0.795,0.962-0.469c0.478,0.328,1.253,0.329,1.812,0.329
-			c0.232,0.067,1.053,0.611,1.03-0.739c-0.362-0.304-2.352-0.177-2.915-1.48l-0.285,0.041c0,0,0.189,0.92-0.041,0.902
-			c-0.537-0.039-1.096-1.001-1.096-1.001l-0.104-0.408l-1.401-0.793c0,0-0.007,0.234,1.085,1.191c0,0-0.369,0.631-0.858,0.664
-			c0.124-0.164,0.216-0.655,0.216-0.655l-1.345-1.077C23.694,8.936,22.52,8.784,22.225,9.034z"/>
-		<path d="M22.225,9.034c-0.348,0.296-1.314,1.204-1.314,1.204l-1.345,0.479l1.214,0.19l1.244-0.369l1.951,0.129l0.318,0.919
-			c0,0,2.137,1.058,2.342,0.844c0.316-0.326,0.486-0.795,0.962-0.469c0.478,0.328,1.253,0.329,1.812,0.329
-			c0.232,0.067,1.053,0.611,1.03-0.739c-0.362-0.304-2.352-0.177-2.915-1.48l-0.285,0.041c0,0,0.189,0.92-0.041,0.902
-			c-0.537-0.039-1.096-1.001-1.096-1.001l-0.104-0.408l-1.401-0.793c0,0-0.007,0.234,1.085,1.191c0,0-0.369,0.631-0.858,0.664
-			c0.124-0.164,0.216-0.655,0.216-0.655l-1.345-1.077C23.694,8.936,22.52,8.784,22.225,9.034z"/>
-		<path d="M32.08,10.315c0.381,0.356,0.218,0.622,0.471,0.847c0.252,0.224,0.842,0.25,0.463-0.261
-			c-0.459-0.617-0.939-1.096-1.045-1.248c-0.203-0.284,0.115-0.88-0.42-0.626C31.234,9.586,31.534,9.806,32.08,10.315z"/>
-		<path d="M32.08,10.315c0.381,0.356,0.218,0.622,0.471,0.847c0.252,0.224,0.842,0.25,0.463-0.261
-			c-0.459-0.617-0.939-1.096-1.045-1.248c-0.203-0.284,0.115-0.88-0.42-0.626C31.234,9.586,31.534,9.806,32.08,10.315z"/>
-		<path d="M32.08,10.315c0.381,0.356,0.218,0.622,0.471,0.847c0.252,0.224,0.842,0.25,0.463-0.261
-			c-0.459-0.617-0.939-1.096-1.045-1.248c-0.203-0.284,0.115-0.88-0.42-0.626C31.234,9.586,31.534,9.806,32.08,10.315z"/>
-	</g>
-</g>
-</svg>
Binary file clock/data/translations/clock.qm has changed
--- a/clock/data/translations/clock.ts	Tue May 11 12:31:38 2010 +0100
+++ b/clock/data/translations/clock.ts	Tue May 18 13:16:49 2010 +0100
@@ -2,14 +2,14 @@
 <!DOCTYPE TS>
 <TS version="3.0" language="en_GB" sourcelanguage="en_GB">
 <context>
-<message numerus="no" id="txt_clock_setlabel_time_format">
-    <comment>1st label in Regional date &amp; time settings view</comment>        
-    <source>Time format</source>
-    <translation variants="no">Time format</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
+<message numerus="no" id="txt_common_common_clock">
+    <comment>Title for Date and time settings view</comment>        
+    <source>Clock</source>
+    <translation variants="no">Clock</translation>
+    <extra-loc-layout_id></extra-loc-layout_id>    
+    <extra-loc-viewid>Common</extra-loc-viewid>
+    <extra-loc-positionid>Common</extra-loc-positionid>
+    <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
 <message numerus="no" id="txt_clock_dblist_val_1_hr">
@@ -22,24 +22,24 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_formlabel_val_alarm">
-    <comment>Default value for Description label in Alarm editor view</comment>        
-    <source>Alarm</source>
-    <translation variants="no">Alarm</translation>
-    <extra-loc-layout_id>qtl_dataform_description_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1_val</extra-loc-positionid>
+<message numerus="no" id="txt_clock_dblist_daily_val_1_hr_2_mins">
+    <comment>When a city is added to the World Clock list view, its relative time offset is displayed with respect to Homecity. (Hour and Mins)</comment>        
+    <source>%1 hr %2 mins</source>
+    <translation variants="no">%1 hr %2 mins</translation>
+    <extra-loc-layout_id>txt_clock_dblist_val_l1_hr</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_tumbler_title_alarm_time">
-    <comment>Title for the time picker tumbler widget </comment>        
-    <source>Alarm time</source>
-    <translation variants="no">Alarm time</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
+<message numerus="no" id="txt_clock_dblist_val_1_mins">
+    <comment>When a city is added to the World Clock list view, its relative time offset is displayed with respect to Homecity. (Mins)</comment>        
+    <source>%1 mins</source>
+    <translation variants="no">%1 mins</translation>
+    <extra-loc-layout_id>txt_clock_dblist_val_l1_hr</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
 <message numerus="no" id="txt_clk_setlabel_val_mm_dd_yyyy">
@@ -47,7 +47,7 @@
     <source>mm dd yyyy</source>
     <translation variants="no">mm dd yyyy</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
     <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
@@ -62,23 +62,23 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_opt_discard_changes">
-    <comment>When user edits an already existed alarm in Alarm editor form, he can &quot;Discard changes&quot; from Options menu and the prevoius values are saved.</comment>        
-    <source>Discard changes</source>
-    <translation variants="no">Discard changes</translation>
+<message numerus="no" id="txt_clock_opt_add_city">
+    <comment></comment>        
+    <source>Add city</source>
+    <translation variants="no">Add city</translation>
     <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
     <extra-loc-positionid>opt</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_button_regional_date_time_settings">
-    <comment>Tapping on this button opens advanced date and time view</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
+<message numerus="no" id="txt_clk_menu_show_on_homescreen">
+    <comment>Long tap menu on an added city in World clock view (both portrait and landscape)</comment>        
+    <source>Show on homescreen</source>
+    <translation variants="no">Show on homescreen</translation>
+    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>menu</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -92,26 +92,6 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_subhead_alarm">
-    <comment>When user taps on already existed alarm in the alarm list, the alarm editor opens with subtitle &quot;Alarm&quot;</comment>        
-    <source>Alarm</source>
-    <translation variants="no">Alarm</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_repeat_daily">
-    <comment>2nd dropdown list value for Occurence label in Alarm editor view</comment>        
-    <source>Repeat daily</source>
-    <translation variants="no">Repeat daily</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clock_main_view_setlabel_in_1hr_2mins">
     <comment>Secondary text displaying the time remaining for the alarm (hour, mins)</comment>        
     <source>In %1hr %2mins</source>
@@ -122,53 +102,33 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_tumbler_title_time">
+<message numerus="no" id="txt_common_setlabel_dst">
     <comment></comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
+    <source>DST</source>
+    <translation variants="no">DST</translation>
+    <extra-loc-layout_id></extra-loc-layout_id>    
+    <extra-loc-viewid>Common</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_formlabel_place">
-    <comment>5th label for Place in Clock settings view</comment>        
-    <source>Place</source>
-    <translation variants="no">Place</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_time">
-    <comment>Label for Time in Alarm editor view</comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+<message numerus="no" id="txt_clock_main_view_setlabel_in_1hrs_2mins">
+    <comment>Secondary text displaying the time remaining for the alarm (hours, mins)</comment>        
+    <source>In %1hrs %2mins</source>
+    <translation variants="no">In %1hrs %2mins</translation>
+    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1hrs_2mins</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
     <extra-loc-positionid>setlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_once">
-    <comment>1st dropdown list value for Occurence label in Alarm editor view</comment>        
-    <source>Once</source>
-    <translation variants="no">Once</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_friday">
-    <comment>5th dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Friday</source>
-    <translation variants="no">Friday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_5_val</extra-loc-positionid>
+<message numerus="no" id="txt_clock_main_view_button_alarms">
+    <comment></comment>        
+    <source>Alarms</source>
+    <translation variants="no">Alarms</translation>
+    <extra-loc-layout_id>qtl_toolbar_tiny1_3</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>button</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -182,33 +142,23 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_week_starts_on">
-    <comment>6th field in Regional date &amp; time settings view</comment>        
-    <source>Week starts on</source>
-    <translation variants="no">Week starts on</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+<message numerus="no" id="txt_clock_main_view_dblist_daily_val_workdays">
+    <comment>Layout ID Parent. Custom Layout. Text to show the alarm occurance.</comment>        
+    <source>Workdays</source>
+    <translation variants="no">Workdays</translation>
+    <extra-loc-layout_id>txt_clock_main_view_dblist_daily_val_today</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_repeat_on_workdays">
-    <comment>4th dropdown list value for Occurence label in Alarm editor view</comment>        
-    <source>Repeat on workdays</source>
-    <translation variants="no">Repeat on workdays</translation>
+<message numerus="no" id="txt_clk_setlabel_val_yyyy_mm_dd">
+    <comment>3rd value in combo box list for Date format label</comment>        
+    <source>yyyy mm dd</source>
+    <translation variants="no">yyyy mm dd</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_4_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_sunday">
-    <comment>7th dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Sunday</source>
-    <translation variants="no">Sunday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_7_val</extra-loc-positionid>
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -222,23 +172,13 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_yyyy_mm_dd">
-    <comment>3rd value in combo box list for Date format label</comment>        
-    <source>yyyy mm dd</source>
-    <translation variants="no">yyyy mm dd</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hr_and_2_mins">
-    <comment>Note displayed after alarm is set (time remaining) (hr, mins)</comment>        
-    <source>Time to alarm %1 hour and %2 minutes</source>
-    <translation variants="no">Time to alarm %1 hour and %2 minutes</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
+<message numerus="no" id="txt_clock_subhead_world_clock">
+    <comment>Subtitle for World Clock view</comment>        
+    <source>World Clock</source>
+    <translation variants="no">World Clock</translation>
+    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>subhead</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -252,23 +192,13 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_formlabel_city_name">
-    <comment>Form label for city name in add own city (popup) data entry form</comment>        
-    <source>City name</source>
-    <translation variants="no">City name</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_timezone">
-    <comment>Form label for timezone in add own city (popup) data entry form</comment>        
-    <source>Timezone</source>
-    <translation variants="no">Timezone</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
+<message numerus="no" id="txt_clock_button_add_city">
+    <comment></comment>        
+    <source>Add city</source>
+    <translation variants="no">Add city</translation>
+    <extra-loc-layout_id>qtl_toolbar_tiny1_3</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>button</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -282,6 +212,16 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_clock_main_view_setlabel_in_1hrs_2min">
+    <comment>Secondary text displaying the time remaining for the alarm (hours, min)</comment>        
+    <source>In %1hrs %2min</source>
+    <translation variants="no">In %1hrs %2min</translation>
+    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1hrs_2min</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_common_common_gmt">
     <comment></comment>        
     <source>GMT</source>
@@ -292,13 +232,23 @@
     <extra-loc-feature>Co</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_opt_add_own_city">
-    <comment>&quot;Add own city&quot; from Options menu in City list </comment>        
-    <source>Add own city</source>
-    <translation variants="no">Add own city</translation>
-    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>opt</extra-loc-positionid>
+<message numerus="no" id="txt_short_caption_clock">
+    <comment>Clock application in Application library grid</comment>        
+    <source>Clock</source>
+    <translation variants="no">Clock</translation>
+    <extra-loc-layout_id>qtl_grid_applications_sec</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock</extra-loc-viewid>
+    <extra-loc-positionid>grid</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clock_main_view_setlabel_in_1days">
+    <comment>Layout ID Parent. Custom layout. Days remaining for the alarm</comment>        
+    <source>In %1days</source>
+    <translation variants="no">In %1days</translation>
+    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1days</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -322,36 +272,6 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_date">
-    <comment>Label to the date field (picker) in the settings view</comment>        
-    <source>Date</source>
-    <translation variants="no">Date</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_workdays">
-    <comment>Label for Workdays in Alarm editor</comment>        
-    <source>Workdays</source>
-    <translation variants="no">Workdays</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_12_hour">
-    <comment>2nd value in combo box list for Time format label</comment>        
-    <source>12 hour</source>
-    <translation variants="no">12 hour</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clock_main_view_setlabel_every_1">
     <comment>Layout ID Parent. Custom. Alarm Occurance detail.</comment>        
     <source>Every %1</source>
@@ -362,499 +282,6 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hrs_and_2_mins">
-    <comment>Note displayed after alarm is set (time remaining) (hrs, mins)</comment>        
-    <source>Time to alarm %1 hours and %2 minutes</source>
-    <translation variants="no">Time to alarm %1 hours and %2 minutes</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_repeat_weekly">
-    <comment>3rd dropdown list value for Occurence label in Alarm editor view</comment>        
-    <source>Repeat weekly</source>
-    <translation variants="no">Repeat weekly</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_workdays_at_1">
-    <comment>Note displayed after alarm is set (workdays)</comment>        
-    <source>Alarm occurs workdays at %1</source>
-    <translation variants="no">Alarm occurs workdays at %1</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_long_caption_clock">
-    <comment>Clock application in Application library list</comment>        
-    <source>Clock</source>
-    <translation variants="no">Clock</translation>
-    <extra-loc-layout_id>qtl_list_pri_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_date_time">
-    <comment>Sub-title for Date &amp; time settings view</comment>        
-    <source>Date &amp; time</source>
-    <translation variants="no">Date &amp; time</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_dpopinfo_alarm_deactivated">
-    <comment>Information shown in a popup once the alarm is deactivated</comment>        
-    <source>Alarm Deactivated</source>
-    <translation variants="no">Alarm Deactivated</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_menu_set_as_current_location">
-    <comment>Long tap menu on an added city in the World clock view (both portrait and landscape)</comment>        
-    <source>Set as current location</source>
-    <translation variants="no">Set as current location</translation>
-    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
-    <extra-loc-positionid>menu</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_main_view_opt_settings">
-    <comment>Item in Options menu from Clock main vew</comment>        
-    <source>Settings</source>
-    <translation variants="no">Settings</translation>
-    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>opt</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_wednesday">
-    <comment>3rd dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Wednesday</source>
-    <translation variants="no">Wednesday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_3_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_common_common_clock">
-    <comment>Title for Date and time settings view</comment>        
-    <source>Clock</source>
-    <translation variants="no">Clock</translation>
-    <extra-loc-layout_id></extra-loc-layout_id>    
-    <extra-loc-viewid>Common</extra-loc-viewid>
-    <extra-loc-positionid>Common</extra-loc-positionid>
-    <extra-loc-feature>Co</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_cp_main_view_list_time_info_date_info">
-    <comment>The time and date information will be displayed in 2nd row</comment>        
-    <source>%1, %2</source>
-    <translation variants="no">%1, %2</translation>
-    <extra-loc-layout_id>qtl_list_sec_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_digital">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Digital</source>
-    <translation variants="no">Digital</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_cp_main_view_list_time_date">
-    <comment>This text is displayed in 1st row</comment>        
-    <source>Time &amp; date</source>
-    <translation variants="no">Time &amp; date</translation>
-    <extra-loc-layout_id>qtl_list_pri_large_graphic</extra-loc-layout_id>    
-    <extra-loc-viewid>CP main view_time &amp; date plugin_P11</extra-loc-viewid>
-    <extra-loc-positionid>list</extra-loc-positionid>
-    <extra-loc-feature>CP</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_every_week_on_1_at_2">
-    <comment>Note displayed after alarm is set (every week)</comment>        
-    <source>Alarm occurs every week on %1 at %2</source>
-    <translation variants="no">Alarm occurs every week on %1 at %2</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dblist_daily_val_1_hr_2_mins">
-    <comment>When a city is added to the World Clock list view, its relative time offset is displayed with respect to Homecity. (Hour and Mins)</comment>        
-    <source>%1 hr %2 mins</source>
-    <translation variants="no">%1 hr %2 mins</translation>
-    <extra-loc-layout_id>txt_clock_dblist_val_l1_hr</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
-    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_occurence">
-    <comment>Label for Occurence in Alarm editor</comment>        
-    <source>Occurence</source>
-    <translation variants="no">Occurence</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dblist_val_1_mins">
-    <comment>When a city is added to the World Clock list view, its relative time offset is displayed with respect to Homecity. (Mins)</comment>        
-    <source>%1 mins</source>
-    <translation variants="no">%1 mins</translation>
-    <extra-loc-layout_id>txt_clock_dblist_val_l1_hr</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
-    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date_format">
-    <comment>3rd field in Regional date &amp; time settings view</comment>        
-    <source>Date format</source>
-    <translation variants="no">Date format</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hrs_and_2_min">
-    <comment>Note displayed after alarm is set (time remaining) (hrs, min)</comment>        
-    <source>Time to alarm %1 hours and %2 minute</source>
-    <translation variants="no">Time to alarm %1 hours and %2 minute</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_menu_show_on_homescreen">
-    <comment>Long tap menu on an added city in World clock view (both portrait and landscape)</comment>        
-    <source>Show on homescreen</source>
-    <translation variants="no">Show on homescreen</translation>
-    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
-    <extra-loc-positionid>menu</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_alarm_will_occur_at_1_after_au">
-    <comment>Popup Information which comes after setting the alarm.</comment>        
-    <source>Alarm will occur at %1 after automatic daylight saving update</source>
-    <translation variants="no">Alarm will occur at %1 after automatic daylight saving update</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_new_alarm">
-    <comment>When user taps on &quot;New alarm&quot; toolbar button in Clock main view, alarm editor opens with the subtitle &quot;New alarm&quot;.</comment>        
-    <source>New alarm</source>
-    <translation variants="no">New alarm</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_regional_date_time_settings">
-    <comment>Sub-title for Regiional date &amp; time settings</comment>        
-    <source>Regional date &amp; time settings</source>
-    <translation variants="no">Regional date &amp; time settings</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_24_hour">
-    <comment>1st Value in combo box list for Time format label</comment>        
-    <source>24 hour</source>
-    <translation variants="no">24 hour</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_setlabel_in_1hrs_2mins">
-    <comment>Secondary text displaying the time remaining for the alarm (hours, mins)</comment>        
-    <source>In %1hrs %2mins</source>
-    <translation variants="no">In %1hrs %2mins</translation>
-    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1hrs_2mins</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_formlabel_country">
-    <comment>Form label for country in add own city (popup) data entry form</comment>        
-    <source>Country</source>
-    <translation variants="no">Country</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_common_setlabel_dst">
-    <comment></comment>        
-    <source>DST</source>
-    <translation variants="no">DST</translation>
-    <extra-loc-layout_id></extra-loc-layout_id>    
-    <extra-loc-viewid>Common</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Co</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_alarm_sound">
-    <comment>Label for Alarm sound in Alarm editor view</comment>        
-    <source>Alarm sound</source>
-    <translation variants="no">Alarm sound</translation>
-    <extra-loc-layout_id>qtl_checkbox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_monday">
-    <comment>1st dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Monday</source>
-    <translation variants="no">Monday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_button_alarms">
-    <comment></comment>        
-    <source>Alarms</source>
-    <translation variants="no">Alarms</translation>
-    <extra-loc-layout_id>qtl_toolbar_tiny1_3</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_alarm_occurs_every_day_at_1">
-    <comment>Note displayed after alarm is set (Everyday Time)</comment>        
-    <source>Alarm occurs every day at %1</source>
-    <translation variants="no">Alarm occurs every day at %1</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_thursday">
-    <comment>4th dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Thursday</source>
-    <translation variants="no">Thursday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_4_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="yes" id="txt_clock_list_ln_minutes">
-    <comment>Alarm snooze time details in the list box (5mins, 10mins, 15mins, 30mins)</comment>        
-    <source>%Ln minutes</source>
-    <translation>
-        <numerusform variants="no">(s)%Ln minutes</numerusform>
-        <numerusform variants="no">(p)%Ln minutes</numerusform>
-    </translation>
-    <extra-loc-layout_id>qtl_dataform_combobox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>set</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_button_analog">
-    <comment>Setting item to clock display type. Tap to toggle values.</comment>        
-    <source>Analog</source>
-    <translation variants="no">Analog</translation>
-    <extra-loc-layout_id>qtl_dataform_button_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>button</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_dpopinfo_time_to_alarm_1_hr_and_2_min">
-    <comment>Note displayed after alarm is set (time remaining)</comment>        
-    <source>Time to alarm %1 hour and %2 minute</source>
-    <translation variants="no">Time to alarm %1 hour and %2 minute</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_dblist_daily_val_workdays">
-    <comment>Layout ID Parent. Custom Layout. Text to show the alarm occurance.</comment>        
-    <source>Workdays</source>
-    <translation variants="no">Workdays</translation>
-    <extra-loc-layout_id>txt_clock_main_view_dblist_daily_val_today</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>dblist_1_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_val_tuesday">
-    <comment>2nd dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Tuesday</source>
-    <translation variants="no">Tuesday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_2_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_subhead_world_clock">
-    <comment>Subtitle for World Clock view</comment>        
-    <source>World Clock</source>
-    <translation variants="no">World Clock</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_note_alarm_occurs_once_only_on_next_1_a">
-    <comment>Note displayed after alarm is set (only once)</comment>        
-    <source>Alarm occurs once only on next %1 at %2</source>
-    <translation variants="no">Alarm occurs once only on next %1 at %2</translation>
-    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_alarm_date">
-    <comment>Title for the date picker tumbler widget </comment>        
-    <source>Alarm date</source>
-    <translation variants="no">Alarm date</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_tumbler_title_date">
-    <comment></comment>        
-    <source>Date</source>
-    <translation variants="no">Date</translation>
-    <extra-loc-layout_id>qtl_dialog_pri_heading</extra-loc-layout_id>    
-    <extra-loc-viewid>Tumbler</extra-loc-viewid>
-    <extra-loc-positionid>title</extra-loc-positionid>
-    <extra-loc-feature>Tu</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_setlabel_in_1hrs_2min">
-    <comment>Secondary text displaying the time remaining for the alarm (hours, min)</comment>        
-    <source>In %1hrs %2min</source>
-    <translation variants="no">In %1hrs %2min</translation>
-    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1hrs_2min</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_short_caption_clock">
-    <comment>Clock application in Application library grid</comment>        
-    <source>Clock</source>
-    <translation variants="no">Clock</translation>
-    <extra-loc-layout_id>qtl_grid_applications_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock</extra-loc-viewid>
-    <extra-loc-positionid>grid</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_day">
-    <comment>Label for Day in Alarm editor view</comment>        
-    <source>Day</source>
-    <translation variants="no">Day</translation>
-    <extra-loc-layout_id>qtl_dataform_heading_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_main_view_setlabel_in_1days">
-    <comment>Layout ID Parent. Custom layout. Days remaining for the alarm</comment>        
-    <source>In %1days</source>
-    <translation variants="no">In %1days</translation>
-    <extra-loc-layout_id>txt_clock_main_view_setlabel_in_1days</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_setlabel_use_network_date_time">
-    <comment>1st label in Date and time settings view</comment>        
-    <source>Use network date &amp; time</source>
-    <translation variants="no">Use network date &amp; time</translation>
-    <extra-loc-layout_id>qtl_checkbox_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time_separator">
-    <comment>Subtitle for the time seperator drop down list</comment>        
-    <source>Time separator</source>
-    <translation variants="no">Time separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_date_separator">
-    <comment>Subtitle for the date seperator drop down list</comment>        
-    <source>Date separator</source>
-    <translation variants="no">Date separator</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_setlabel_time">
-    <comment>Label to the time field (picker) in the settings view</comment>        
-    <source>Time</source>
-    <translation variants="no">Time</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_1</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
 <message numerus="no" id="txt_clock_main_view_dblist_daily_val_today">
     <comment>Layout ID Parent. Custom Layout. Text to show the alarm occurance.</comment>        
     <source>Today</source>
@@ -865,40 +292,40 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_setlabel_clock_type">
-    <comment>Primary text label for Clock Type</comment>        
-    <source>Clock Type</source>
-    <translation variants="no">Clock Type</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_1</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_5</extra-loc-positionid>
+<message numerus="no" id="txt_long_caption_clock">
+    <comment>Clock application in Application library list</comment>        
+    <source>Clock</source>
+    <translation variants="no">Clock</translation>
+    <extra-loc-layout_id>qtl_list_pri_large_graphic</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock</extra-loc-viewid>
+    <extra-loc-positionid>list</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_subhead_city_list">
-    <comment>Subtitle for City list</comment>        
-    <source>City list</source>
-    <translation variants="no">City list</translation>
-    <extra-loc-layout_id>qtl_groupbox_simple_sec</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_City list_P07</extra-loc-viewid>
-    <extra-loc-positionid>subhead</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clock_opt_delete">
-    <comment>When user creates a new alarm in Alarm editor form, he can &quot;Delete&quot; this alarm via Options menu.</comment>        
-    <source>Delete</source>
-    <translation variants="no">Delete</translation>
+<message numerus="no" id="txt_clk_main_view_opt_settings">
+    <comment>Item in Options menu from Clock main vew</comment>        
+    <source>Settings</source>
+    <translation variants="no">Settings</translation>
     <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
     <extra-loc-positionid>opt</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clock_main_view_dpopinfo_alarm_activated">
-    <comment>Information shown in a popup once the alarm is activated</comment>        
-    <source>Alarm Activated</source>
-    <translation variants="no">Alarm Activated</translation>
+<message numerus="no" id="txt_clk_menu_set_as_current_location">
+    <comment>Long tap menu on an added city in the World clock view (both portrait and landscape)</comment>        
+    <source>Set as current location</source>
+    <translation variants="no">Set as current location</translation>
+    <extra-loc-layout_id>qtl_menu_pri</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock_World clock_P05</extra-loc-viewid>
+    <extra-loc-positionid>menu</extra-loc-positionid>
+    <extra-loc-feature>Cl</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
+<message numerus="no" id="txt_clock_main_view_dpopinfo_alarm_deactivated">
+    <comment>Information shown in a popup once the alarm is deactivated</comment>        
+    <source>Alarm Deactivated</source>
+    <translation variants="no">Alarm Deactivated</translation>
     <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
     <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
     <extra-loc-positionid>dpopinfo</extra-loc-positionid>
@@ -915,23 +342,13 @@
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
-<message numerus="no" id="txt_clk_setlabel_val_saturday">
-    <comment>6th dropdown list value for Day label in Alarm editor view</comment>        
-    <source>Saturday</source>
-    <translation variants="no">Saturday</translation>
-    <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>setlabel_6_val</extra-loc-positionid>
-    <extra-loc-feature>Cl</extra-loc-feature>
-    <extra-loc-blank>False</extra-loc-blank>
-</message>
-<message numerus="no" id="txt_clk_formlabel_description">
-    <comment>Label for Description in Alarm editor view</comment>        
-    <source>Description</source>
-    <translation variants="no">Description</translation>
-    <extra-loc-layout_id>qtl_dataform_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Alarm editor_P03</extra-loc-viewid>
-    <extra-loc-positionid>formlabel_1</extra-loc-positionid>
+<message numerus="no" id="txt_clock_main_view_dpopinfo_alarm_activated">
+    <comment>Information shown in a popup once the alarm is activated</comment>        
+    <source>Alarm Activated</source>
+    <translation variants="no">Alarm Activated</translation>
+    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
+    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
@@ -940,7 +357,7 @@
     <source>dd mm yyyy</source>
     <translation variants="no">dd mm yyyy</translation>
     <extra-loc-layout_id>qtl_dataform_group_pri</extra-loc-layout_id>    
-    <extra-loc-viewid>Clock_Date &amp; time settings_P04_3</extra-loc-viewid>
+    <extra-loc-viewid>Clock main view_P01</extra-loc-viewid>
     <extra-loc-positionid>setlabel_1_val</extra-loc-positionid>
     <extra-loc-feature>Cl</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
--- a/clock/data/worldclock/qgn_clock_time_zone.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,228 +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 baseProfile="tiny" height="320px" version="1.1" viewBox="0 0 640 320" width="640px" x="0px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" y="0px">
-<defs id="symbolDefs">
-<symbol id="pin" overflow="visible">
-	<polygon points="0,0 0.947,-6.288 3.851,-11.624 0.583,-13.402 6.224,-17.481 7.354,-23.541 15.773,-18.959 11.299,-14.72 10.937,-7.769 7.669,-9.546 4.766,-4.209 "/>
-</symbol>
-</defs>
-
-<g id="worldmap">
-<rect fill="#E8F5F8" height="320" width="640"/>
-<g>
-<path d="M225.453,37.671c0.315,0,1.583-0.28,2.057-0.438c0.474-0.158,1.022-0.588,1.022-0.588   s-1.184-0.552-1.737-0.552c-0.552,0-2.368-0.868-2.605-0.475c-0.237,0.395-1.184,0.79-1.184,0.79s1.105,0.631,1.342,0.631   S225.453,37.671,225.453,37.671z" fill="#B9C5D1"/>
-<path d="M485.456,141.13C485.456,141.99,484.461,142.28,485.456,141.13" fill="#B9C5D1"/>
-<path d="M487.706,148.706c0.112-0.56,0.255-0.866-0.474-1.479C487.022,147.859,487.18,148.353,487.706,148.706" fill="#B9C5D1"/>
-<path d="M487.054,146.339c0.732-1.096-0.944-0.704-0.918-0.525C486.264,146.672,487.264,146.511,487.054,146.339" fill="#B9C5D1"/>
-<path d="M494.574,159.773c-0.021-0.042,0.021-1.404-1.125-2.07C493.473,158.692,494.125,158.889,494.574,159.773" fill="#B9C5D1"/>
-<path d="M496.586,162.082c-0.097-0.337,0.998,2.11,0.651,1.895C494.404,162.206,496.593,163.1,496.586,162.082" fill="#B9C5D1"/>
-<path d="M499.429,166.581c-0.237-0.19-1.825-2.19-1.835-2.19C498.662,164.391,498.974,165.985,499.429,166.581" fill="#B9C5D1"/>
-<path d="M513.343,153.974c-0.178,0-0.118,0.474-0.415-0.118s0.237-1.007,0.237-1.007s0.533,0.415,0.533,0.651   C513.698,153.737,513.343,153.974,513.343,153.974z" fill="#B9C5D1"/>
-<path d="M540.578,116.923c-0.02,0,1.351,0.112,1.48-0.06C541.547,117.544,541.056,117.676,540.578,116.923" fill="#B9C5D1"/>
-<path d="M543.835,116.271c-0.217-0.079-0.434-0.157-0.651-0.236c-0.079,0.099-0.158,0.197-0.237,0.296   C543.249,116.427,543.545,116.407,543.835,116.271" fill="#B9C5D1"/>
-<path d="M211.263,72.977c-0.148-0.06-1.006-0.267-1.362-0.385c-0.355-0.118-1.036-0.533-1.273-0.533   c-0.236,0-0.77-0.029-1.006-0.088c-0.237-0.06-1.273-0.207-1.273-0.207s-0.208,0.118,0.118,0.266s1.214,0.296,1.244,0.414   c0.029,0.119-0.267,0.297,0.177,0.444c0.444,0.148,0.977,0.355,1.362,0.385c0.385,0.029,0.622,0.029,1.007,0.029   c0.385,0,0.651-0.147,0.799-0.177C211.204,73.095,211.263,72.977,211.263,72.977z" fill="#B9C5D1"/>
-<path d="M178.867,61.386c0.112-0.118,0.678-0.395,1.356-0.474c0.678-0.078,1.13-0.197,0.904-0.434   c-0.226-0.237-0.904-0.553-1.243-0.395c-0.339,0.157-1.355,0.315-1.355,0.631C178.528,61.031,178.867,61.386,178.867,61.386z" fill="#B9C5D1"/>
-<path d="M161.706,23.072c-0.316,0.118-0.355,0.197-0.592,0.236c-0.237,0.04-1.421-0.158-1.421-0.039   c0,0.118-0.552,0.236-0.671,0.236c-0.118,0-0.631-0.236-0.474-0.276c0.158-0.039,0.829-0.117,0.671-0.117   c-0.158,0-0.513-0.158-0.513-0.316s0.552-0.435,0.552-0.435s1.026,0,1.263,0s0.75-0.079,0.868,0.119   C161.508,22.678,161.706,23.072,161.706,23.072z" fill="#B9C5D1"/>
-<path d="M377.016,93.277c-0.072-0.043-0.296-0.346-0.356-0.357c0.002,0-0.563,0.766-0.098,0.699   C376.821,93.582,377.07,93.61,377.016,93.277" fill="#B9C5D1"/>
-<path d="M375.625,93.011c0.274-0.09,0.169-0.474-0.034-0.521C375.208,92.399,375.181,93.037,375.625,93.011" fill="#B9C5D1"/>
-<path d="M382.078,97.154c-0.323,0.217-0.753,0.303-1.047,0.507c-0.162,0.112,0.252,0.433,0.196,0.603   c-0.08,0.242-0.648,0.153-0.843,0.435c-0.269,0.388-1.096,0.347-1.505,0.249c-0.337-0.08-0.835-0.318-0.598-0.75   c0.232-0.425,0.698-0.235,1.042-0.499c0.307-0.236,0.744-0.027,1.091-0.018C380.897,97.695,381.583,97.279,382.078,97.154" fill="#B9C5D1"/>
-<path d="M367.424,97.924c-0.381,0.381-1.738,0.393-2.26,0.508c-0.332,0.073-0.674-0.315-0.948-0.468   c-0.456-0.253-1.082,0.109-1.558-0.129c-0.352-0.176-0.329-0.417,0.089-0.474c0.717-0.098,1.144,0.044,1.833,0.106   C365.522,97.554,366.481,97.774,367.424,97.924" fill="#B9C5D1"/>
-<path d="M370.947,95.793c-0.126,0.377-0.589,0.665-0.829,0.977C369.731,96.153,370.477,95.824,370.947,95.793" fill="#B9C5D1"/>
-<path d="M365.915,89.578c-0.164,0.246-0.823,0.352-0.807-0.026C365.121,89.229,365.969,89.221,365.915,89.578" fill="#B9C5D1"/>
-<path d="M366.24,94.491c-0.061,0.018-1.095-0.089-1.007,0.089c0.085,0.171,0.493,0.04,0.642,0.228   C366.045,95.022,366.246,94.659,366.24,94.491" fill="#B9C5D1"/>
-<path d="M364.642,95.083c0.107-0.087,0.22-0.354,0.17-0.491c-0.011-0.031-0.687,0.494-0.763,0.55   C364.245,95.252,364.467,95.221,364.642,95.083" fill="#B9C5D1"/>
-<path d="M368.608,97.48c0.171-0.173,0.337-0.772,0.72-0.641c0.164,0.057-0.482,0.755-0.75,0.758   C368.588,97.559,368.599,97.52,368.608,97.48" fill="#B9C5D1"/>
-<path d="M364.76,91.502c-0.06-0.094-0.736-0.629-0.737-0.606C363.997,91.257,364.418,91.66,364.76,91.502" fill="#B9C5D1"/>
-<path d="M0,27.472c0,0,0.818,1.145,3.435,0.49s4.579-1.799,9.485-0.49c0,0,4.906,1.309,5.724-0.164   c0.818-1.472,6.869-2.78,6.706-1.799s-1.799,1.472-0.164,1.963c1.635,0.49,5.724,0,5.56,1.472   c-0.163,1.473-7.522,0.818-8.013,2.453c-0.491,1.636-7.85,1.472-9.813,0.654c-1.962-0.818-4.252,1.145-5.724,1.145   c-1.472,0-7.032-1.472-7.196-0.817V27.472z" fill="#B9C5D1"/>
-<path d="M0.823,33.425v1.21c0,0,2.813-0.425,3.696-0.262c0.883,0.164,1.047-0.163,0.916-0.49   s-1.145-0.393-1.505-0.688C3.571,32.901,1.15,33.294,0.823,33.425z" fill="#B9C5D1"/>
-<path d="M0,38.004c0,0,8.145,1.93,8.995,2.715c0.851,0.785-0.065,0.785,0,1.177   c0.065,0.394,0.981,0.197,0.981,0.394s-0.098,0.72,0.327,0.393s0.458,0.131,0.752,0c0.294-0.132-1.21-1.079-0.719-1.309   c0.49-0.229,2.322,0.196,2.813,0.327c0.491,0.131,2.617,0.621,3.467,0.687c0.851,0.065,2.453,0.262,1.962,0.491   c-0.49,0.229-2.061,1.046-3.238,0.589c0,0,0.589,0.851-0.229,0.719c-0.818-0.131-1.799-0.72-1.832-0.359   c-0.033,0.359,1.014,1.93,0.36,2.093c-0.654,0.164-2.225,0.426-2.781,0.197c-0.556-0.229-1.374-0.916-1.962-0.884   c-0.589,0.033-0.588,0.458-1.603-0.981c0,0-0.458-0.752-2.093-0.196c-1.636,0.557-2.257,0.785-2.617-0.13   c-0.36-0.916,0.065-0.785,0.392-0.949c0.327-0.163,0.393-0.654,0.066-0.523s-0.72,0.426-0.851,0.262   c-0.131-0.164-0.196-0.556-0.458-0.262s-1.178,0.065-1.178,0.49c0,0.426,0.687,0.852,0.426,1.243   C0.72,44.578,0.196,44.905,0,44.905V38.004z" fill="#B9C5D1"/>
-<path d="M15.15,48.046c0,0-0.164-1.243,1.995-0.851c0,0,1.145-0.327,1.668,0.229s1.635-0.359,2.191,0.491   s0.556,0.687,0.556,0.687s-2.028-0.098-2.42,0C19.141,48.602,16.491,47.653,15.15,48.046z" fill="#B9C5D1"/>
-<path d="M22.738,53.377c0,0,3.042-0.589,3.435-0.196S28.888,56.517,22.738,53.377z" fill="#B9C5D1"/>
-<path d="M6.221,67.833c0,0-4.351-0.393-1.374,1.047L6.221,67.833z" fill="#B9C5D1"/>
-<path d="M7.169,68.095c0,0-1.112,0.653-0.622,1.046c0.491,0.394,1.832-0.556,1.766-0.687   C8.249,68.323,8.15,67.931,7.169,68.095z" fill="#B9C5D1"/>
-<path d="M9.818,67.702c0,0,2.715,1.243,3.565,0.457c0.851-0.784,0.098-0.425,1.014-0.163   c0.916,0.262,3.009-0.981-2.943-0.785C11.454,67.211,9.394,66.492,9.818,67.702z" fill="#B9C5D1"/>
-<path d="M20.056,66.23c0,0-4.023,0.163-3.369,0.916C17.341,67.898,19.5,67.473,20.056,66.23z" fill="#B9C5D1"/>
-<path d="M20.678,66.066c0,0,1.439-1.341,1.963-1.014c0.523,0.327-1.341,1.668-1.668,1.439   C20.645,66.263,20.678,66.066,20.678,66.066z" fill="#B9C5D1"/>
-<path d="M23.622,65.674c0,0,0.556-1.439,2.028-1.569C27.122,63.973,28.004,65.543,23.622,65.674z" fill="#B9C5D1"/>
-<path d="M0,299.032c0,0,47.962,0,66.248-4.493c18.286-4.492,74.042,1.498,73.443-1.198   c-0.6-2.695,29.376-3.595,42.566-4.193c13.19-0.599,32.076-25.161,32.076-14.977s-2.398,16.475-2.098,17.973   c0.299,1.497,35.072,9.585,45.264,6.889c10.192-2.695,39.869-16.175,61.152-15.276c21.284,0.898,60.553-1.797,67.448-0.599   s20.684-8.088,33.874-5.691s24.88,7.788,31.175,6.59c6.295-1.198,12.891-2.097,14.989-4.493c2.098-2.396,31.475-1.498,44.964-1.498   s37.771-3.894,55.756-0.897c17.986,2.994,60.553,6.589,56.656,10.783c-3.896,4.193-19.785,6.589-12.59,9.585   c7.194,2.995,27.878,1.797,29.077,2.097V320H0V299.032z" fill="#B9C5D1"/>
-<path d="M146.684,28.423c0,0-2.016,0.891-2.719,0.797s-5.157,0.516-2.156,1.313c0,0,0.328,0.375-0.516,0.281   c-0.844-0.094-5.673,0.188-1.688,1.594c3.985,1.406,2.625,0.142,5.017,1.688c2.392,1.547,3.798-0.375,4.36-0.891   s0.656-3.47-0.375-4.079C147.575,28.517,146.872,28.142,146.684,28.423z" fill="#B9C5D1"/>
-<path d="M142.783,17.813c0,0,3.863-0.306,2.847,0.61C144.613,19.338,142.072,19.644,142.783,17.813z" fill="#B9C5D1"/>
-<path d="M166.266,47.191c0,0,0.915,0.102,1.118-0.915s1.728-3.05,3.354-1.932c1.626,1.119,8.843,2.237,7.217,2.745   c-1.626,0.508-5.286,1.017-8.234,1.017S165.757,48.005,166.266,47.191z" fill="#B9C5D1"/>
-<path d="M172.161,50.038c0,0-1.423-2.339,2.948-1.322C175.109,48.716,174.397,50.139,172.161,50.038z" fill="#B9C5D1"/>
-<path d="M183.648,40.991c0,0-0.204-1.729,3.151-1.525l0.204,1.22C187.003,40.686,185.173,41.295,183.648,40.991z" fill="#B9C5D1"/>
-<path d="M135.16,24.93c0,0-1.423-2.644,3.66-0.204c0,0,9.148-1.829,9.25,0.306s-7.404-0.568-6.607,1.423   C141.665,26.963,136.583,25.946,135.16,24.93z" fill="#B9C5D1"/>
-<path d="M117.574,21.677c0,0,7.116-2.644,8.539-1.22c1.423,1.423-3.146,5.168-8.892,1.313" fill="#B9C5D1"/>
-<path d="M134.245,26.657c0,0,5.489,0.306,2.745,0.61S133.737,28.792,134.245,26.657z" fill="#B9C5D1"/>
-<path d="M149.086,23.913c0,0,12.91-0.102,12.199,1.017c-0.712,1.118,8.132,1.728,10.877,1.22   c2.744-0.508,7.929-0.915,7.624,0.203c-0.305,1.118-13.825,2.033-16.976,1.729c-3.151-0.306-6.709-0.509-6.607-1.322   s-5.794-1.321-6.709-2.033C148.578,24.015,148.171,24.116,149.086,23.913z" fill="#B9C5D1"/>
-<path d="M170.484,121.421c0,0,4.432-3.952,8.827-1.33c0,0,3.103,0.037,3.546,0.924   c0.443,0.887,2.29,1.81,2.955,1.957c0.665,0.148,2.474,0.85,2.807,1.256s-0.369,0.85-1.292,0.85s-4.247,0.517-4.395,0   c-0.148-0.518,0.775-0.369,0.665-0.887c-0.11-0.517-0.332-0.887-0.997-1.107c-0.665-0.222-1.81-0.813-3.509-0.998   c-1.699-0.184-4.284,0.443-5.318,0.037s-0.739-0.887-1.256-0.775c-0.517,0.111-2.104,0.738-2.253,0.332   C170.115,121.272,170.484,121.421,170.484,121.421z" fill="#B9C5D1"/>
-<path d="M190.392,125.653c0,0,1.034-0.688,2.622-0.207c1.588,0.48,2.433-0.191,3.029,0.037s2.283,0.051,1.78,0.524   c-0.503,0.474-0.856,0.621-0.487,0.769c0.37,0.147,1.884-0.775,1.81,0.332c-0.073,1.108-0.184,1.319-0.738,0.997   s-1.446-0.541-2.034-0.233s-1.253-0.542-1.696,0.049s-1.071,2.622-1.478,0.296c0,0-5.096,0.221-4.727-0.332   c0.369-0.555,2.917-0.961,3.989-0.407C192.46,127.478,189.949,126.782,190.392,125.653z" fill="#B9C5D1"/>
-<path d="M181.786,127.552c0,0,4.765,0.259,3.73,0.775C184.482,128.845,180.42,129.14,181.786,127.552z" fill="#B9C5D1"/>
-<path d="M201.316,127.961c0,0,2.501-1.193,3.138,0.029C205.091,129.214,200.126,128.998,201.316,127.961z" fill="#B9C5D1"/>
-<path d="M180.014,111.966c0,0,5.008,0.671,3.796,1.998c0,0-0.251,0.439-0.583-0.188S179.09,112.113,180.014,111.966   z" fill="#B9C5D1"/>
-<path d="M181.797,115.641c0,0-0.769,1.89,0.257,1.637C183.079,117.025,183.174,116.286,181.797,115.641z" fill="#B9C5D1"/>
-<path d="M186.218,116.693c0,0,1.145,0.369,0.591,0.591C186.255,117.506,186.145,117.358,186.218,116.693z" fill="#B9C5D1"/>
-<path d="M184.741,120.017c0,0,2.186,0.348,1.684,1.078C185.923,121.827,184.334,120.645,184.741,120.017z" fill="#B9C5D1"/>
-<path d="M190.65,120.497c0,0,1.107-0.406,1.145,0.369C191.795,120.866,190.835,121.532,190.65,120.497z" fill="#B9C5D1"/>
-<path d="M189.8,123.078c0,0,1.146-1.103,1.257-0.66C191.167,122.861,191.387,123.664,189.8,123.078z" fill="#B9C5D1"/>
-<path d="M183.67,119.205c0,0,1.553,0.784,1.423-0.31C185.093,118.896,183.744,118.467,183.67,119.205z" fill="#B9C5D1"/>
-<path d="M188.767,119.943c0,0,0.032,0.678,0.293,0.856C189.32,120.978,190.17,119.5,188.767,119.943z" fill="#B9C5D1"/>
-<path d="M192.494,121.51c0,0,0.962,0.978,1.184,0.739C193.9,122.012,193.709,120.859,192.494,121.51z" fill="#B9C5D1"/>
-<path d="M214.815,136.514c0,0-0.602,1.307,0.47,0.789C216.356,136.785,215.084,136.869,214.815,136.514z" fill="#B9C5D1"/>
-<path d="M211.444,131.984c0,0-0.997-1.034,0.702-0.739C212.146,131.245,212.33,132.021,211.444,131.984z" fill="#B9C5D1"/>
-<path d="M211.796,133.406c0,0-0.573-0.609,0.202-0.757C211.998,132.649,212.775,133.24,211.796,133.406z" fill="#B9C5D1"/>
-<path d="M211.791,134.057c0,0,0.142,1.485,0.571,1.474S214.098,134.14,211.791,134.057z" fill="#B9C5D1"/>
-<g>
-<path d="M40.308,56.611c0,0-4.857,3.909-9.003,5.094s-6.752,4.62,1.659,1.304    c8.41-3.317,10.661-3.317,10.898-4.502s6.042-5.212,7.226-4.383s6.634-2.132,9.121-1.185c2.488,0.947,4.502,1.185,7.108,1.303    c2.606,0.119,11.846,3.554,14.333,6.278c0,0-1.185-0.474-0.119-2.369c1.066-1.895,2.725-0.592,2.132,0.119    c-0.592,0.71-2.487,1.065-1.066,1.658c1.421,0.592,5.804,2.843,6.042,4.501c0.237,1.659,4.027,4.146,4.856,4.976    s1.777,1.066,1.777,1.066s-3.554-0.119-2.843,0.592c0.71,0.711,7.463,3.08,8.884,3.08s0.474,0,0.474,0s-0.829,6.516-2.014,9.121    c-1.185,2.606,2.606,10.188,5.331,13.387c2.724,3.198,5.804,3.554,7.344,6.159c1.54,2.606,5.804,6.989,5.094,7.463    c-0.711,0.474,6.278,6.16,6.989,8.529c0.711,2.369,2.014,1.303,2.014,0.237c0-1.066-4.501-8.056-6.989-9.951    s-3.554-3.909-2.725-4.501c0.83-0.593,4.265,2.605,4.265,3.672s2.488,1.896,3.672,3.554s2.014,2.014,4.383,4.502    c2.369,2.487,4.738,4.501,4.265,6.396s1.066,2.843,2.606,4.027s2.369,1.304,3.672,2.014c0,0,9.003,5.213,11.017,3.909    c2.014-1.303,8.055,3.08,9.477,3.436c1.422,0.355,3.791,0.355,5.449,2.014s5.567,4.383,6.516,6.397    c0.947,2.014,5.804,4.146,5.923,2.724c0.118-1.421,2.132-3.908,2.843-2.369c0.711,1.54,3.672,2.488,2.843,5.805    c-0.829,3.317-1.895,7.463-2.961,7.7c-1.066,0.236-8.411,7.107,3.672,24.521c0,0,10.306,6.278,11.728,11.609    s-1.54,14.097-2.251,17.888c-0.71,3.79-4.146,13.741-3.554,17.058c0.593,3.317-1.303,6.516-1.658,7.227    c0,0,1.54-1.659,2.014-1.066c0.474,0.592-1.066,4.62-2.725,7.345c-1.658,2.724-1.54,15.044,12.794,15.518    c0,0,4.501-0.118,4.62-0.829c0,0-6.515,0.947-7.226-6.516c0,0,6.871-5.686,6.16-6.87c-0.711-1.185-3.08,0.118-3.317-1.54    s4.62-2.962,4.857-6.16c0.237-3.198-0.355-3.554-0.355-3.554s6.634,1.304,5.331-3.198c0,0,13.031,3.554,9.358-5.805    c0,0,2.606-0.829,5.212-2.961c2.606-2.133,9.714-7.463,9.24-13.149c0,0,1.185-4.265,6.752-5.449c0,0,4.264-0.592,4.62-1.303    s4.265-3.08,4.383-5.805c0.118-2.725,0.355-9.714,2.25-12.438s6.989-6.988,5.923-11.017c-1.066-4.027-2.487-2.487-3.909-3.08    c-1.421-0.592-6.87-3.435-8.647-3.554c-1.777-0.118-9.595-4.027-11.372-3.554c-1.777,0.475,1.777-5.804-4.146-5.804    c0,0-4.383-6.516-9.951-6.871c-5.567-0.355-7.818-6.16-8.292-7.581c-0.474-1.422-6.989,0.355-7.818,0.71    c-0.829,0.355-2.843,0.355-4.265-0.71c-1.421-1.066-3.316-3.198-4.027-2.606c-0.711,0.593-2.606-1.54-4.738,0.118    c-2.132,1.659-5.923,0.829-5.449,2.488c0.474,1.658-1.066,4.027-1.658,3.909c-0.593-0.119-1.896-1.896-2.843-1.896    s-6.871,1.776-7.818-0.118c-0.948-1.896-2.014-3.791-1.066-10.543c0,0-9.358,0.947-9.24-0.948    c0.118-1.896,2.843-5.449,2.724-8.766c-0.118-3.317-5.449,0.829-6.515,2.961c0,0-5.212,5.094-8.766,0.83    c-3.554-4.265-10.188-30.207,21.796-18.48c0,0,5.923,5.924,3.317,7.227c0,0-1.54,1.421,0.829,0.947c0,0,1.895,1.304,0.237-7.699    c0,0-2.369-3.317,0.711-5.213s12.438-3.909,8.411-8.884c0,0,2.014-5.805,7.818-6.634c5.805-0.829,1.896-1.304,1.54-4.265    c0,0,9.122-4.976,9.003-3.554c0,0-3.435,4.856,1.777,2.369c5.212-2.487,7.107-2.606,8.766-3.673c0,0-0.592-2.605-4.146-0.118    c0,0-23.455-8.884,7.344-9.121c0,0,9.832-0.947-5.094-9.121c0,0-6.634-6.278-6.752-8.411c0,0-6.989,8.647-8.647,3.08    s-15.518-7.937-15.874-6.041s4.383,6.989,2.725,10.068c-1.659,3.08-3.554,12.557-6.397,9.596    c-2.843-2.962-1.54-6.989-14.097-8.767c-12.557-1.776-14.097-6.159-9.24-8.884s11.553-6.588,13.29-8.077    c0,0-0.95-0.524-0.59-0.918c0.36-0.393,3.899,0.754,4.718,0.622c0.819-0.13,4.652-0.948,2.981-2.914s1.409-1.048,1.311-1.604    c-0.099-0.558-2.981-0.655-2.031-1.475s4.783,0.754,4.881-0.131s-2.719-0.394-2.064-0.819s3.21,0.426,3.473,0.196    c0.262-0.229-1.54-0.688-0.688-0.786c0.852-0.098,1.965-0.164,2.555,0.524s5.013,1.441,3.571,1.77    c-1.441,0.327-1.867,0.917-1.081,0.851c0.787-0.064,2.981-0.982,2.556-0.393s-0.328,1.311,1.278,0.786    c1.605-0.523,3.604,1.18,3.407,1.9c-0.196,0.721-3.702,2.097-3.734,2.392c-0.033,0.295,1.9,0.327,1.343,0.622    c-0.557,0.295-4.718,0.885-5.897,0.328c-1.179-0.558-2.555,1.343-1.54,1.867s8.027-0.95,10.025,1.311c0,0,1.048-0.229,1.441,0.032    c0.393,0.263-0.95,0.426-0.557,0.787c0.393,0.359,3.276,0.982,3.604,0.688c0,0,7.043,2.392,6.847,1.572    c-0.196-0.818-4.882-2.719-5.832-3.047c0,0,1.704-0.098,2.195,0.263c0.491,0.36,6.454,2.162,6.355,1.769    c-0.098-0.393-2.654-0.459-1.966-1.016s1.868-0.327,1.9-0.688s-2.654-1.081-2.228-1.311c0.426-0.229-0.229-1.213-0.59-1.016    c-0.36,0.196-4.849-2.031-3.374-2.687c1.474-0.655,3.768,0.819,4.226,0.491c0.458-0.327,2.162-1.18,1.671-0.688    c-0.492,0.491-0.099,2.687,0,2.326c0.098-0.36,2.457,1.048,1.965,0.098c-0.491-0.95,0.721-2.391,2.687-2.521    s-0.721-1.18-1.311-0.885c-0.589,0.295-0.852-0.196-0.917-0.688c-0.065-0.492-2.162-0.394-2.654-0.688    c-0.491-0.295-6.257-1.049-5.995-1.638c0.262-0.59,2.654-0.786,2.522-1.18c-0.131-0.393-3.538-0.164-2.981-0.557    c0.557-0.393,2.162,0.458,2.195-0.263s-10.124-3.439-11.696-3.112c0,0-12.351-0.556-12.351-1.277c0-0.721-0.033-1.016-1.212-1.835    c-1.18-0.819-6.618-0.753-7.044-0.458c-0.426,0.294,0.066,1.245,0.098,1.998c0.033,0.753,1.999,0.885,0.852,1.408    c-1.147,0.525-4.849-0.621-3.244-2.194c1.605-1.573,2.359-1.441,1.704-1.835c-0.655-0.394-9.239-0.786-7.831,4.488    c0,0,3.866-0.196,3.669,0.36c-0.196,0.558-2.883-0.36-2.817,0.263c0.065,0.622,11.925,1.311,11.663,1.9    c-0.262,0.589-4.521-0.099-4.783,0.327s-1.605,6.323-4.75,2.72c-3.145-3.604-8.125-6.127-9.992-6.487c0,0,8.583-3.112,6.749-3.604    c-1.834-0.491-9.435-1.016-9.599-0.557c-0.164,0.458,0.753,3.078,0.229,3.865c-0.524,0.787-3.735,2.293-1.082,3.964    c0,0-5.929,0.557-6.323,1.016c-0.393,0.459,1.769,0.557,1.212,1.475c-0.557,0.917-10.418-0.263-8.125-0.557    c2.293-0.295,5.962-2.064,4.586-2.688c-1.361-0.615-10.293-7.102-13.464-4.634c-0.034,0.025-0.066,0.053-0.099,0.081    c0,0-26.799-4.063-28.699-3.112c-1.9,0.949,0.229,1.441,0.459,1.475c0,0-4.292,5.798,5.11,4.389c0,0,3.997-2.588,4.652-2.489    c0,0,0.229,4.161,2.162,4.128c0,0-0.229,2.129,6.847,2.293c0,0,0.852,1.803,4.652,1.245c0,0,6.684,1.213-5.438,0.983    c0,0-14.579-4.292-15.988-3.539c-1.409,0.754-2.228,1.18-2.031,0.328c0.196-0.852-1.212,0.491-2.687,0.065    c-1.475-0.426-14.48-1.999-20.017,0.95c0,0-14.939-1.409-16.02-1.835c-1.082-0.426-8.715-0.36-12.023-1.966    c-3.309-1.604-5.537-0.688-6.225-0.557c-0.688,0.131-4.456,0.688-5.701,0.95c-1.245,0.262-4.259,0.295-5.373,1.016    c-1.114,0.721-0.59,2.162-2.522,2.261c-1.934,0.098-5.635,0.786-0.558,2.85c0,0,8.944,3.375,1.573,2.49    c0,0-8.583-0.622-8.256,0.426s2.097,0.491,2.392,1.277c0.295,0.786-3.473,1.999,9.599,0.819c0,0,1.867,0.852,0.623,1.376    c-1.245,0.524-3.702-0.328-5.832,0.229c-2.129,0.557-5.832,3.637-2.326,4.619c0,0,0.125,1.294,0.655,1.9    c0.229,0.262,2.949,1.638,3.506,1.474c0.557-0.163,2.391-0.818,2.162,0.688c-0.229,1.507,3.538,1.966,5.078,0.852    C39.494,55.59,40.368,54.489,40.308,56.611z" fill="#B9C5D1"/>
-<path d="M159.149,15.171c0,0,11.081-1.017,15.248-0.509c4.168,0.509,27.04-3.66,34.563-0.915    c0,0-4.676,1.524-10.166,2.236c-5.489,0.712-9.25,5.998-13.723,5.896c-4.473-0.102-3.151,2.949-5.693,2.949    c-2.541,0-18.5,1.117-17.078-0.61c1.423-1.729,2.948-0.407,2.948-1.017c0-0.61-3.151-1.83,3.151-0.61c0,0,1.729-1.423,0.712-1.22    s-4.676-0.61,1.017-1.22l1.016-0.508c0,0-1.423-0.712-3.558-1.119c-2.135-0.406,1.22-1.524,5.998-0.203    c0,0,10.978-1.017,11.385-1.524c0.406-0.509-8.539-0.406-16.976-0.102S157.93,16.085,159.149,15.171z" fill="#B9C5D1"/>
-<path d="M150.204,17.61c0,0,2.745-2.236,5.998-1.424c3.253,0.813,10.775,1.932,9.962,2.948    c-0.813,1.017-2.338,3.558-7.827,2.236C152.847,20.05,147.561,19.947,150.204,17.61z" fill="#B9C5D1"/>
-<path d="M133.025,19.847c0,0,9.657-0.102,10.877,0.406c1.22,0.509,2.948,2.542-2.033,2.033    C136.888,21.778,132.923,22.49,133.025,19.847z" fill="#B9C5D1"/>
-<path d="M102.021,24.93c0,0,14.028-3.66,13.926-2.644s-1.321,2.136-0.102,1.83c1.22-0.305,5.083,1.525,7.624,1.829    c2.542,0.306,1.728,0.204,1.728,0.204l-1.22-1.83c0,0,15.147,0.712,8.335,2.948C125.503,29.504,110.865,28.895,102.021,24.93z" fill="#B9C5D1"/>
-<path d="M146.443,20.66c0,0,6.099-0.407,5.692,0.508c-0.406,0.915-3.253,2.135-4.473,1.118    C146.443,21.271,146.443,20.66,146.443,20.66z" fill="#B9C5D1"/>
-<path d="M198.656,19.697c0,0-9.128,3.923,10.009,6.966c19.137,3.043,14.493,7.848,14.573,9.449    c0.08,1.601,7.687,22.019,13.933,18.176c6.246-3.844,3.924-9.368,10.57-10.489c6.646-1.121,36.913-11.771,21.779-12.892    c0,0-2.242-3.284,8.968-1.682c11.21,1.601,9.449-14.733,3.363-12.571c-6.085,2.161-7.607,1.44-9.048,1.361    c-1.441-0.081,6.406-2.322-0.08-4.164s-36.753,0.16-44.2,0.881C221.076,15.453,200.898,14.813,198.656,19.697z" fill="#B9C5D1"/>
-</g>
-<path d="M283.082,44.222c0,0-1.632-1.605-3.125-1.38c-1.492,0.225,0.777,1.083,0.92,1.41   c0.144,0.327-2.003,0.92-1.656,1.206c0.348,0.286,2.78,0.47,2.351,0.776s-1.717,0.94-1.083,1.104   c0.634,0.163,8.473-0.249,10.093-0.513c1.62-0.265,6.853-0.775,5.892-1.88c-0.96-1.104-6.807-2.125-8.524-1.88   S283.222,43.599,283.082,44.222z" fill="#B9C5D1"/>
-<path d="M562.112,186.847c-0.557-0.102,7.599,8.084,8.974,4.932c1.375-3.153,1.375-3.315,1.132-5.417   c-0.242-2.102,1.698-8.327,2.264-6.549c0.566,1.779,9.782,17.867,15.038,22.799s-0.937,31.177-12.693,26.437   s-8.57-9.943-11.965-9.459c-3.396,0.485-1.05,4.123-7.114-1.698c-6.063-5.82-26.518,8.732-31.126,4.205   c-4.608-4.527,0.565-5.256-1.94-11.076c-2.506-5.821,4.042-18.191,15.846-21.505c11.804-3.315,11.076-4.365,11.804-6.387   s2.263,0.08,2.344-1.132c0.081-1.213-4.689,0.242-3.557-1.132c1.132-1.375,9.459,0.646,11.885-0.809   C565.427,178.601,563.891,187.17,562.112,186.847z" fill="#B9C5D1"/>
-<path d="M583.698,231.635c0,0-2.991,1.375-5.417,0.647C575.856,231.554,586.447,244.732,583.698,231.635z" fill="#B9C5D1"/>
-<path d="M535.96,115.62c0,0-3.599,4.934-1.497,5.499C536.565,121.686,538.347,116.023,535.96,115.62z" fill="#B9C5D1"/>
-<path d="M534.787,127.264c0.221,1.992,0.342,3.314-1.27,4.493c-1.222,0.894,1.599,2.272,1.891,2.827   c0.734,1.396,3.084,2.912,5.07,3.038c2.175,0.138-0.885-2.224-1.333-2.537c-1.58-1.107-2.955-1.292-1.991-3.327   c0.563-1.188,1.33-2.084,0.847-3.46C537.514,126.917,535.828,125.442,534.787,127.264" fill="#B9C5D1"/>
-<path d="M528.562,147.637c0,0-0.404,3.558-3.072,4.204c-2.668,0.646-3.557,3.962-6.953,3.072   c-3.396-0.889,0.081,4.204-1.293,3.477c-1.374-0.728-2.736-2.489-3.309-1.042c-0.572,1.446,0.316,8.479,5.087,8.722   c4.771,0.243,8.247,3.315,8.408,0.971c0.162-2.345,1.391-5.994,3.202-7.444c1.811-1.449-0.049-3.308-0.21-5.814   C530.259,151.274,535.029,147.879,528.562,147.637z" fill="#B9C5D1"/>
-<path d="M552.088,162.431c0,0,6.306-3.477,8.569,3.638c0,0,0.485,0.728,1.455-0.404s-0.323-5.013,11.237,0   c11.561,5.013,6.306,4.285,7.6,4.527c1.294,0.243,2.83,0.89,2.587,1.778c-0.242,0.89-1.131-0.081-0.97,1.213   s0.154,1.227,1.451,2.473s4.866,2.005,4.618,2.96c-0.249,0.954-5.453,0.593-5.746-0.178c-0.293-0.77-0.647-1.94-2.183-2.91   c-1.536-0.97-2.344-2.021-3.719-1.051c-1.375,0.97-4.285,3.8-5.578,2.668s-2.991-2.91-3.234-2.507   c-0.242,0.404-5.255,3.801-2.102-2.829s-1.867-3.028-3.884-3.374c-2.018-0.345-3.796,0.787-5.089-0.669   c-1.294-1.455-0.162-1.455-0.324-2.587C556.615,164.047,551.118,164.29,552.088,162.431z" fill="#B9C5D1"/>
-<path d="M214.875,251.454c0,0-2.512-0.439-2.605,1.263s1.612,1.856,1.923,1.082   C214.502,253.023,216.022,251.746,214.875,251.454z" fill="#B9C5D1"/>
-<path d="M216.69,252.401c0,0-2.653,1.707-0.482,1.707s4.651-0.775,3.566-1.24S216.69,252.401,216.69,252.401z" fill="#B9C5D1"/>
-<path d="M253.833,255.952c0,0,4.605,3.951,4.5,2.604C258.228,257.21,256.881,255.16,253.833,255.952z" fill="#B9C5D1"/>
-<path d="M306.912,62.212c0,0-1.774,0.913-1.623,1.039c0.152,0.127,0.913,0.229,0.608,0.355   c-0.304,0.127-0.051,0.405-0.634,0.583s-0.608-0.381-1.395-0.278c-0.786,0.101-1.651,0.575-1.13,0.592   c0.521,0.016,1.054,0.017,0.725,0.346c-0.33,0.33-0.735,0.076-0.71,0.38c0.025,0.305,0.05,0.711,0.634,0.634   c0.583-0.075,1.414-0.561,1.404-0.255s-0.035,0.18-0.314,0.483c-0.278,0.305-0.974,1.3-1.146,1.411   c-0.172,0.11-0.78-0.498-0.882,0.034s0.558,1.42,1.318,1.395c0.76-0.025,2.966-1.166,3.879-1.142   c0.913,0.025,1.521,0.33,1.876-0.126c0.355-0.457,0.913-0.38,0.608-1.242s-0.659-1.547-0.38-1.876   c0.279-0.33,1.825-0.457,1.623-0.736c-0.203-0.278-0.836-0.837-1.293-1.318c0,0-0.203-0.025-0.761,0.152s-0.406,0.405-0.812-0.051   c-0.405-0.456-0.496-0.75-0.717-0.654C307.571,62.034,306.912,62.212,306.912,62.212z" fill="#B9C5D1"/>
-<path d="M309.844,56.414c0,0-1.056,0.753-1.715,1.184s-0.959,1.833-0.771,1.854c0.188,0.022,1.43-1.474,1.988-1.956   C309.903,57.015,310.267,55.991,309.844,56.414z" fill="#B9C5D1"/>
-<path d="M308.463,50.455c0,0,0.184-0.372-0.316-0.354c-0.5,0.019-0.753-0.413-0.323-0.489   c0.431-0.075,1.953-0.152,1.623,0c-0.33,0.152-0.418,0.621-0.59,0.806C308.687,50.601,308.746,50.666,308.463,50.455z" fill="#B9C5D1"/>
-<path d="M308.305,50.93c0,0,1.301,0.419,0.829,0.552S308.152,51.132,308.305,50.93z" fill="#B9C5D1"/>
-<path d="M309.489,59.334c0,0-1.69,0.85-1.259,0.824s0.507-0.354,1.014-0.126c0.507,0.228,2.039,0.069,1.666,0.288   c-0.373,0.218-1.26,0.776-0.652,0.903c0.608,0.126,2.028-0.102,2.307,0.354s-1.191,1.344-0.837,1.496   c0.355,0.151,2.282,0.431,2.814,0c0,0-0.158-0.073-0.041,0.521c0.117,0.594,1.229,0.094,1.066,0.749   c-0.163,0.656-0.163,1.366-0.67,1.315c-0.507-0.051-1.978-0.152-2.104,0.279c-0.126,0.431-0.938,0.836-0.532,0.861   s0.735-0.634,1.141-0.178c0.406,0.457,0.837,0.532,0.355,0.913c-0.481,0.38-2.738,0.608-2.408,0.862   c0.33,0.254,1.014-0.406,1.318-0.051c0.304,0.354,0.649,0.504,1.085,0.416c0.436-0.087,1.577,0.269,1.272,0.547   c-0.304,0.279-1.8,0.305-2.155,0.635c-0.355,0.329-2.003,1.141-2.003,1.394c0,0.254,0.482,0.634,1.8-0.203   c0,0,1.521,0.685,2.104-0.785c0,0,1.054,0.438,1.744,0.308s2.788,0.215,4.224-0.236c1.436-0.452,2.931-0.554,2.678-1.01   s-1.474,0.2-1.257-0.293s4.147-1.532,0.826-2.698c0,0-1.352,0.266-1.576,0.094c-0.224-0.17,0.69,0.162,0.474-0.473   c-0.216-0.636-2.042-2.512-3.334-2.664c0,0-0.397-1.684-0.731-1.716c-0.333-0.033-2.134-0.261-2.919-0.616   c0,0,1.044,0.022,1.144-0.331c0.099-0.354-0.18-0.683,0.2-0.76c0.38-0.075,1.737-1.824,1.3-2.002   c-0.438-0.178-3.708,0.734-3.759,0.051c-0.051-0.686,0.025-0.938,0.406-0.938s1.623-0.558,1.268-0.634s-2.814,0.456-3.169,0   c-0.355-0.457-1.09,0.229-1.065,0.558s0.507,0.735,0.203,0.735c-0.305,0-0.355-0.253-0.583-0.051   c-0.229,0.203-0.102,0.761-0.305,0.786c-0.203,0.024-1.851-0.278-1.572,0.051s1.503,0.046,1.55,0.429   c0.047,0.382-0.333,0.696-0.562,0.763C309.726,59.768,309.607,59.548,309.489,59.334z" fill="#B9C5D1"/>
-<path d="M315.528,56.098c-0.103-0.005-1.166-0.173-0.632-0.591c0.534-0.419,0.939-0.495,1.167-0.495   s0.938-0.304,0.583,0C316.292,55.316,315.905,56.12,315.528,56.098z" fill="#B9C5D1"/>
-<path d="M318.447,53.998c0,0,0.253-0.38,0-0.482c-0.253-0.102-0.634-0.38,0.229-0.785   c0.861-0.406,0.811-0.33,0.633-0.152C319.132,52.755,318.701,54.581,318.447,53.998z" fill="#B9C5D1"/>
-<path d="M344.56,18.501c0,0-5.292-0.083-4.673,0.653c0.619,0.737,2.009,0.234,1.932,1.046   c-0.077,0.811,1.468,0.733,1.931,1.004c0.464,0.271,3.083-0.082,3.705-0.408c0.621-0.325,3.468-0.287,2.933,0.177   c-0.536,0.463-4.667,0.733-4.281,1.081s4.942-0.193,4.209,0.192c-0.734,0.387-4.595-0.076-4.441,0.503   c0.154,0.578,3.321,1.969,4.093,1.776c0.772-0.193,1.39-0.734,2.201-1.43c0.811-0.694,1.236-1.66,1.429-1.429   c0.193,0.232,1.313,0.811,1.352-0.154s3.9-1.313,2.355-1.583s-2.279,0.772-2.819,0.116c-0.541-0.656,0.309-1.313-0.386-1.043   c-0.695,0.271-1.352,0.85-1.583,0.348s-0.811-0.579-1.776-0.889c-0.966-0.309-1.192,1.01-1.291,1.162   c-0.099,0.151-0.64,0.729-0.872,0.229c-0.231-0.502-1.197-1.235-1.738-1.159c-0.541,0.078-0.579,1.12-1.39,0.85   C344.638,19.273,344.792,18.732,344.56,18.501z" fill="#B9C5D1"/>
-<path d="M353.441,18.037c1.494-0.548,7.125-0.038,7.269,0.238c0.704,0.309,2.674-0.432,3.621-0.306   c1.157,0.153,3.625-0.269,4.494,0.647c-0.566-0.597-5.609,1.28-6.695,1.196c-1.497-0.113-4.083-0.776-3.496-1.004   C357.99,19.059,353.1,18.893,353.441,18.037" fill="#B9C5D1"/>
-<path d="M357.777,21.91c0,0,6.902,0.027,6.516,0.298s-1.39,0.927-2.819,0.772S356.783,22.578,357.777,21.91z" fill="#B9C5D1"/>
-<path d="M337.475,84.103c-0.037,0.054,0.058,0.652-0.333,0.652c-0.392,0-1.146,0.276-1.131,0.639   c0.015,0.363,1.016,1.842,1.248,1.436c0.232-0.405,0.435-0.957,0.362-1.392C337.547,85.002,337.678,83.813,337.475,84.103z" fill="#B9C5D1"/>
-<path d="M336.938,87.322c0,0-0.319,0.624-0.783,0.537c-0.464-0.087-0.609-0.56-0.74-0.377   c-0.131,0.183-0.363,0.362-0.029,0.725c0.334,0.362,0.435,0.465,0.363,0.885c-0.073,0.421-0.348,0.406-0.16,0.421   s0.333-0.203,0.261,0.188c-0.073,0.392-0.368,1.014-0.329,1.159c0.039,0.146,0.271,0.872,1.315,0.437c0,0-0.232-0.464,0.014-0.464   c0.247,0,0.827,0.305,0.958,0.116s0.653-1.509,0.392-1.741c-0.262-0.232-0.413-0.224-0.41-0.301   c0.003-0.076,0.496-0.047,0.424-0.352s-0.218-0.449-0.377-0.74c-0.159-0.29,0.045-0.636-0.224-0.644   C337.344,87.163,337.054,87.148,336.938,87.322z" fill="#B9C5D1"/>
-<path d="M343.625,92.806c0,0,0.203-0.435,0.565-0.319c0.363,0.116,1.712,0.682,2.466,0.291   c0.754-0.393,1.64-0.001,1.813-0.378c0,0-0.508,0.754-0.696,1.189c-0.189,0.436,0.45,1.131,0.246,1.204   c-0.203,0.072,0.058-0.072-0.29,0.203c-0.348,0.275-0.986,0.275-1.276-0.102s-1.233-0.624-1.45-0.639   c-0.218-0.014-1.625-0.087-1.929-0.58S342.566,92.53,343.625,92.806z" fill="#B9C5D1"/>
-<path d="M346.257,96.346c0,0-0.368-0.142-0.296-0.021c0.072,0.122-0.016,0.383,0.057,0.455   c0.073,0.073,0.79,0.197,0.772,0.019C346.79,96.799,346.337,96.345,346.257,96.346z" fill="#B9C5D1"/>
-<path d="M419.699,32.486c0,0,3.745,1.296,3.411,2.227c-0.334,0.93,0.376,1.955-1.438,1.088   c-1.814-0.868-3.604-0.924-4.576-0.947s-0.71-0.71-1.42-1.025c-0.71-0.315-4.576,0-3.866-0.867c0.71-0.868,2.13-0.474,2.367-1.421   c0.237-0.946,4.369-1.075,3.959-1.8c-0.409-0.724-1.302-0.592-1.302-0.592s2.387-0.578,3.967-1.42   c1.581-0.843,3.158-0.843,4.657-1.474c1.5-0.631,2.604-1.578,3.393-1.578s8.521,0.395,9.072-0.236   c0.552-0.631,5.91-0.678,5.2-0.145c-0.71,0.532-0.957,0.999-2.25,1.124c-1.293,0.125-3.345-0.033-4.528,0.125   c-1.183,0.158-7.257,0.553-7.889,1.184c-0.631,0.631-1.856,1.33-5.464,2.006c0,0,0.729,0.902,0.059,1.539   C422.381,30.909,419.62,32.25,419.699,32.486z" fill="#B9C5D1"/>
-<path d="M455.91,18.451c0,0-2.388-0.117-0.997,0.293c1.39,0.41,4.545,1.515,3.757,0.726   C457.881,18.682,455.91,18.451,455.91,18.451z" fill="#B9C5D1"/>
-<path d="M481.895,16.223c0,0-2.662-0.249-1.584,0c1.079,0.25,2.35,1.24,2.464,0.47   C482.888,15.921,481.895,16.223,481.895,16.223z" fill="#B9C5D1"/>
-<path d="M461.541,16.574c0,0-1.53,0.608-0.347,0.608s2.407,0.628,1.637-0.08   C462.062,16.394,461.541,16.574,461.541,16.574z" fill="#B9C5D1"/>
-<path d="M407.479,36.725c0,0-2.69,2.152-0.954,2.152c1.735,0,4.396-0.834,3.5-1.206   C409.127,37.299,407.479,36.725,407.479,36.725z" fill="#B9C5D1"/>
-<path d="M402.58,16.788c0,0-2.236-0.239-1.749,0.314c0.486,0.554,1.828,0.396,2.143,0.316   c0.316-0.078,1.42-0.552,1.42-0.552L402.58,16.788z" fill="#B9C5D1"/>
-<path d="M408.163,16.75c0,0-2.428,0.985-3.453,0.906c0,0,0.71,0.158,1.894,0.158c1.183,0,6.447,0.27,5.314-0.536   s-2.001-0.568-2.001-0.568L408.163,16.75z" fill="#B9C5D1"/>
-<path d="M409.63,18.334c0,0,1.768-0.549,2.053,0.176S410.29,18.38,409.63,18.334z" fill="#B9C5D1"/>
-<path d="M413.325,17.923c0,0,2.697-0.05,2.287,0.117C415.202,18.209,414.524,19.137,413.325,17.923z" fill="#B9C5D1"/>
-<path d="M417.806,16.315c0,0,8.44-0.079,7.415,0.315S419.147,18.604,417.806,16.315z" fill="#B9C5D1"/>
-<path d="M427.926,17.09c0,0-2.358,0.39-0.913,0.497c1.446,0.108,4.763,0.521,3.826-0.084   C429.901,16.899,427.926,17.09,427.926,17.09z" fill="#B9C5D1"/>
-<path d="M431.929,15.25c0,0-1.367,0.917-0.21,0.667c1.156-0.25,2.484,0.105,1.583-0.425   C432.399,14.962,431.929,15.25,431.929,15.25z" fill="#B9C5D1"/>
-<path d="M420.418,15.56c0,0-1.382,0.895-0.222,0.664c1.16-0.231,2.483,0.146,1.59-0.398   C420.894,15.28,420.418,15.56,420.418,15.56z" fill="#B9C5D1"/>
-<path d="M420.267,17.733c0,0-1.382,0.895-0.221,0.664c1.16-0.231,2.482,0.146,1.59-0.398   C420.742,17.454,420.267,17.733,420.267,17.733z" fill="#B9C5D1"/>
-<path d="M433.294,16.788c0,0-2.358,0.39-0.913,0.497s4.763,0.521,3.826-0.084S433.294,16.788,433.294,16.788z" fill="#B9C5D1"/>
-<path d="M221.743,69.603c-0.206,0.06-7.688,5.594-6.471,6.178c1.216,0.584,7.203-0.925,7.543-0.194   c0.341,0.729,3.456,3.114,4.088,1.752c0.633-1.363,1.217-2.775-1.266-3.894C223.156,72.324,223.25,69.168,221.743,69.603z" fill="#B9C5D1"/>
-<path d="M325.676,89.565c0,0-0.941,0.499-0.596,0.634s2.571,0.212,2.036-0.115   C326.581,89.756,326.271,89.258,325.676,89.565z" fill="#B9C5D1"/>
-<path d="M327.539,89.22c0,0-0.134,0.346,0.077,0.326c0.211-0.02,0.922,0.596,0.769,0.192   C328.23,89.335,328.134,88.989,327.539,89.22z" fill="#B9C5D1"/>
-<path d="M323.486,90.91c0,0-0.903,0.537-0.422,0.519c0.48-0.02,0.912-0.114,0.754-0.331   S323.486,90.91,323.486,90.91z" fill="#B9C5D1"/>
-<path d="M489.604,16.648c-0.203,0-6.757,0.541-6.217,1.825c0.54,1.283,4.865,0.743,6.014,1.148   c1.149,0.405,2.433,0.135,4.257,0.676c1.825,0.54,6.149,1.148,4.933,0.338c-1.216-0.812,1.216-0.946-0.135-1.824   c-1.352-0.879-3.243,0.067-3.919-0.271c-0.676-0.338-1.487-0.608-1.082-0.878c0.405-0.271-0.675-1.353-1.689-1.353   S489.604,16.648,489.604,16.648z" fill="#B9C5D1"/>
-<path d="M498.117,21.717c0,0,2.028-1.718,3.075-2.211c1.047-0.492,7.601,1.062,6.655,1.399   C506.901,21.244,499.671,21.784,498.117,21.717z" fill="#B9C5D1"/>
-<path d="M509.229,21.734c0,0,3.35,0.794,3.35-0.018S511.487,21.077,509.229,21.734z" fill="#B9C5D1"/>
-<path d="M408.68,181.614c-0.117,0.105-2.102,3.679-3.469,4.835c-1.366,1.157-5.781,1.104-5.834,3.102   s0.052,1.734-0.053,1.997s1.261,3.521,0.158,4.73s-1.663,8.288,0.746,8.927s4.615,0.533,4.773-0.097   c0.158-0.631,2.891-12.51,3.732-14.244C409.573,189.131,410.677,179.828,408.68,181.614z" fill="#B9C5D1"/>
-<path d="M627.16,221.591c0,0,3.086,2.333,3.131,4.94c0.045,2.608-2.435,3.271-0.417,3.967   c2.018,0.695,1.276,1.84,1.717,2.591c0.44,0.75,1.067,1.027,3.154-1.965c2.087-2.992,2.026-2.179,2.681-2.996   s-1.637-0.205-2.75-0.553c-1.113-0.348-2.048-3.78-2.157-3.549c-0.109,0.23,0.167,1.693-0.626,1.044   C631.1,224.421,627.725,219.564,627.16,221.591z" fill="#B9C5D1"/>
-<path d="M624.446,236.413c0,0-3.967,3.062-5.01,3.062c-1.044,0-2.505,0.696-2.854,1.531   c-0.348,0.835,0.835,1.044,1.392,1.601s-0.453,1.275,0.583,1.385c1.036,0.108,0.786-1.044,1.146-1.146   c0.359-0.101,2.934,1.082,3.352,0.108c0.417-0.975,1.252-0.069,1.322-1.322c0.07-1.252-0.264-2.796,1.434-2.929   s3.816-0.272,2.781-0.6s-1.21-0.944-0.381-1.526c0.829-0.581,2.341-2.167,2.072-2.453c-0.269-0.285,0.636-2.165-0.408-1.608   s-1.531,2.088-1.879,1.323c-0.348-0.767-0.093-2.152-0.603-1.459c-0.51,0.692-0.928-0.073-1.136,1.598   C626.047,235.647,624.934,233.212,624.446,236.413z" fill="#B9C5D1"/>
-<path d="M542.483,157.373c-2.118,0.075-4.623-0.033-6.634,0.704c-1.806,0.662-5.554,7.969-3.087,8.207   c0.076,0.794-0.468,1.789-0.46,2.639c0.014,1.456,1.336,1.671,1.484,0.134c0.068-0.711-0.332-3.477,0.792-3.608   c2.536-0.298,1.273,2.582,2.108,3.646c0.295,0.376,0.856-0.96,1.108-0.498c0.1,0.182,0.199,2.167,0.65,1.93   c0.811-0.426,1.685-2.938,0.384-3.293c-0.949-0.259-0.797-1.592-1.279-2.371c-0.735-1.187-1.31-1.891,0.325-2.398   c0.149-0.046,2.302-0.527,2.112-0.737c-1.546-1.709-3.855,1.603-4.7,1.285c-1.947-0.731-0.827-3.532,1.083-3.4   c2.066,0.142,4.176,0.136,6.186-0.476C544.584,158.519,544.312,156.458,542.483,157.373" fill="#B9C5D1"/>
-<path d="M499.98,164.428c1.479,0.433,4.59,5.186,6.909,6.77c2.318,1.583,1.592-3.113,2.428-4.262   c0.835-1.148-2.25-2.604-3.02-3.492s-1.421-1.599-1.421-1.599s0.29,0.203,0.375-0.137c0.085-0.34,1.275-1.36-0.138-2.585   c-1.413-1.226-5.744-3.314-6.928-4.144s-1.945-0.667-3.476-2.367c-1.53-1.701-1.379-1.539-1.615-1.189   c-0.236,0.349-3.139-1.06-3.139-1.06c-0.759,0.641-0.006,1.823,2.19,3.492c2.197,1.668,0.864,1.816,2.224,2.327   s1.275,1.445,2.691,3.946C497.061,160.129,499.609,164.319,499.98,164.428z" fill="#B9C5D1"/>
-<path d="M508.141,172.079c0,0,0.936-2.21,6.036,0.085s2.38,0.595,2.89,0.17c0.51-0.426,5.917-0.18,6.401,0.165   c0.485,0.345-3.251,0.222-2.191,1.006s2.591,1.294,3.611,1.124c1.02-0.17,2.541,0.653,1.185,1.008   c-1.355,0.353-2.244-0.654-3.967-0.533c-1.724,0.12-9.034-2.005-10.479-1.835c-1.445,0.171-3.138,1.043-2.635,0.255   C509.494,172.735,508.821,172.164,508.141,172.079z" fill="#B9C5D1"/>
-<path d="M543.759,143.347c-0.376,0.641-1.673,3.166-2.733,2.336c-1.807-1.416-2.704,2.176-3.59,1.948   c1.421,0.368,2.659-1.326,3.362,0.776c0.123,0.366,2.337,2.625,2.563,2.311c0.271-0.468,0.283-0.938,0.036-1.408   c-0.306-1.038,1.007-1.313,1.502-1.96C545.921,146.014,544.979,144.16,543.759,143.347" fill="#B9C5D1"/>
-<path d="M442.712,248.165c0,0,3.158-1.325,3.312-0.968c0.153,0.356-0.662,1.681-1.63,1.656   C443.425,248.827,442.33,249.184,442.712,248.165z" fill="#B9C5D1"/>
-<path d="M179.63,283.455c-0.841,0.92-4.947,1.626-5.647,0.925c0.225,0.225,2.55,0.652,2.51,0.825   c-0.722,3.13,3.017,0.216,3.864,2.081C180.12,286.764,179.902,282.912,179.63,283.455" fill="#B9C5D1"/>
-<path d="M163.896,281.166c0,0-4.677,1.529-4.413,0.835C159.748,281.309,163.024,280.132,163.896,281.166z" fill="#B9C5D1"/>
-<path d="M170.883,282.468c0,0-3.175,0.029-2.878,0.261c0.297,0.23,1.685,0.792,2.411,0.23   S171.581,282.604,170.883,282.468z" fill="#B9C5D1"/>
-<path d="M183.544,285.767c0,0-1.333,1.623-0.573,1.678C183.731,287.499,184.771,287.158,183.544,285.767z" fill="#B9C5D1"/>
-<path d="M44,124.439c0,0-1.168,1.859,0.197,1.813C45.563,126.208,46.853,125.448,44,124.439z" fill="#B9C5D1"/>
-<path d="M37.408,120.943c0,0-0.438,0.696,0.074,0.68C37.994,121.605,38.477,121.321,37.408,120.943z" fill="#B9C5D1"/>
-<path d="M40.019,121.635c0,0-0.809,0.146-0.451,0.513C39.925,122.513,40.461,122.678,40.019,121.635z" fill="#B9C5D1"/>
-<path d="M41.955,122.462c0,0-0.809,0.147-0.452,0.513C41.861,123.341,42.396,123.506,41.955,122.462z" fill="#B9C5D1"/>
-<path d="M43.655,123.471c0,0-0.764-0.537-0.808-0.026C42.805,123.953,43.078,124.475,43.655,123.471z" fill="#B9C5D1"/>
-<ellipse cx="638.435" cy="68.771" fill="#B9C5D1" rx="1.08" ry="0.743"/>
-<ellipse cx="627.481" cy="66.565" fill="#B9C5D1" rx="1.08" ry="0.285"/>
-<ellipse cx="615.925" cy="63.265" fill="#B9C5D1" rx="0.794" ry="1.587" transform="matrix(0.6867 -0.727 0.727 0.6867 146.9921 467.5763)"/>
-<ellipse cx="638.183" cy="34.335" fill="#B9C5D1" rx="1.107" ry="0.506"/>
-<path d="M533.261,140.148c0,0-5.089,6.24-4.85,6.32c0.239,0.079,1.51-1.152,2.544-2.027   c1.033-0.874,0.875-1.471,1.511-2.027S534.056,140.268,533.261,140.148z" fill="#B9C5D1"/>
-<path d="M534.691,136.015c-1.008,0.518-0.068,1.657,0.604,2.266C535.499,138.465,537.489,136.868,534.691,136.015" fill="#B9C5D1"/>
-<path d="M539.335,139.828c-0.471-0.134-2.081-0.21-2.338-0.435c0.663,0.58-0.132,1.441-0.013,2.074   C537.034,141.734,539.696,140.985,539.335,139.828" fill="#B9C5D1"/>
-<path d="M539.979,141.183c-0.463,0.345-2.755,3.437-0.954,3.18C540.542,144.146,540.049,142.456,539.979,141.183" fill="#B9C5D1"/>
-<path d="M548.882,157.122c0.435-0.405,0.634-0.902,0.596-1.491c-1.292-1.292-2.562,2.299-2.281,3.063   c1.3,3.531-0.355,1.231,2.102,3.959c-0.595-1.007-1.078-2.065-1.448-3.175c0.513,0.369,1.085,0.58,1.716,0.635   C548.321,159.776,548.844,157.934,548.882,157.122" fill="#B9C5D1"/>
-<path d="M547.173,166.265c0,0,5.074-2.764,6.253,1.381c0,0-1.165-0.109-1.483-0.507s-0.875-0.437-0.994-0.437   c-0.099,0-0.736,0.188-1.025,0.011c-0.062-0.038-0.107-0.094-0.127-0.17c-0.12-0.438-0.955-0.159-1.471-0.12   C547.81,166.463,547.253,166.94,547.173,166.265z" fill="#B9C5D1"/>
-<path d="M545.67,163.621c0,0-2.992-0.285-3.185-0.285c-0.192,0-1.032,0.318-0.9,0.403   c0.131,0.085,3.048-0.122,3.077,0.263c0.03,0.386,0.467,1.474,0.637,1.281C545.469,165.091,546.367,163.832,545.67,163.621z" fill="#B9C5D1"/>
-<path d="M544.419,165.956c0.753-0.488,2.258,0.287,1.613,1.175C546.032,167.131,543.666,166.444,544.419,165.956" fill="#B9C5D1"/>
-<path d="M527.981,175.112c0,0-1.419-0.259-1.437,0.849S528.12,175.875,527.981,175.112z" fill="#B9C5D1"/>
-<path d="M542.993,175.026c0,0-7.15-0.606-8.345,0.173s-1.939,0.069-1.731,0.225   C533.124,175.58,540.17,177.779,542.993,175.026z" fill="#B9C5D1"/>
-<path d="M532.656,175.303c0,0-2.735-1.039-2.666-0.45c0.069,0.589,0.658,0.831,0.381,0.849   c-0.277,0.018-1.177-0.45-1.541-0.138c-0.364,0.312,0.364,1.315,2.631,0.605C531.542,176.144,532.519,175.647,532.656,175.303z" fill="#B9C5D1"/>
-<path d="M531.912,177c0,0,2.026,0.19,2.719,0.571c0.692,0.381,0.987,0.225,0.952,0.468   c-0.035,0.242,0.052,0.813-0.416,0.779c-0.468-0.035-0.832,0.173-1.299-0.329S531.392,177.242,531.912,177z" fill="#B9C5D1"/>
-<path d="M560.59,170.072c-1.482,0.688-2.289,1.434-1.489,3.311C560.167,173.194,562.286,170.947,560.59,170.072" fill="#B9C5D1"/>
-<path d="M542.663,176.775c-0.346,0.032-4.545,1.926-3.492,2.769c0.728,0.584,6.514-4.378,7.408-4.19   C545.249,175.074,543.051,175.196,542.663,176.775" fill="#B9C5D1"/>
-<path d="M546.006,174.23c0,0-2.07-0.947-1.896,0.05C544.284,175.278,545.606,174.331,546.006,174.23z" fill="#B9C5D1"/>
-<path d="M555.36,173.134c-1.334,0.501-1.923,1.981-1.896,1.971C554.434,174.781,555.066,174.125,555.36,173.134" fill="#B9C5D1"/>
-<path d="M587.609,164.333c0,0,1.308,0.854,2.715,2.062c1.408,1.206,2.412,3.434,2.337,2.396   C592.587,167.752,589.52,164.132,587.609,164.333z" fill="#B9C5D1"/>
-<path d="M589.899,167.883c0,0,1.029,0.874,0.526,1.126c-0.503,0.251-0.302-0.252-0.905,0.453   c-0.604,0.703-2.212-0.102-2.514,0.302c-0.302,0.401,0.252,1.256-0.804,0.955c-1.056-0.302-2.132-0.422-1.77-0.034   c0.362,0.386,1.82,1.039,2.977,0.737c1.157-0.302,4.503-1.192,3.596-3.56C591.004,167.862,590.127,167.209,589.899,167.883z" fill="#B9C5D1"/>
-<path d="M595.524,169.303c1.438,0.612-0.739,3.812,2.411,3.747C598.664,173.035,596.066,169.534,595.524,169.303" fill="#B9C5D1"/>
-<path d="M598.729,173.442c0.979,0.238,0.958,3.76,2.738,2.875C601.836,176.135,599.28,173.576,598.729,173.442" fill="#B9C5D1"/>
-<path d="M601.452,174.334c-0.66,0.032-1.303-2.185-2.257-1.296C599.71,173.776,600.462,174.208,601.452,174.334" fill="#B9C5D1"/>
-<path d="M603.887,176.293c-0.66,0.033-1.304-2.185-2.257-1.295C602.145,175.736,602.897,176.167,603.887,176.293" fill="#B9C5D1"/>
-<path d="M607.598,178c-0.053-0.709-2.071-0.864-1.726-2.023C606.088,175.254,607.602,178.063,607.598,178" fill="#B9C5D1"/>
-<path d="M591.596,179.956c0,0,1.946-0.037,2.198,0.667c0.251,0.704,0.704,0.955-0.051,0.904   C592.989,181.478,591.963,181.15,591.596,179.956z" fill="#B9C5D1"/>
-<path d="M604.955,176.953c0.582,0.571,2.048,0.282,0.949,1.59C606.228,178.157,603.138,177.99,604.955,176.953" fill="#B9C5D1"/>
-<path d="M604.653,179.869c0,0,2.313,1.156,2.163,1.257C606.665,181.226,604.804,181.579,604.653,179.869z" fill="#B9C5D1"/>
-<path d="M606.739,179.456c0.876,0.363,1.68,0.275,2.435,0.996C608.438,180.526,607.096,180.233,606.739,179.456" fill="#B9C5D1"/>
-<path d="M611.341,195.104c0,0,7.85,5.715,7.592,5.682c0,0-0.704-0.252-1.659-0.252s-4.726-2.514-5.078-3.369   c-0.352-0.854-1.504-2.126-1.179-2.194C611.341,194.902,611.341,195.104,611.341,195.104z" fill="#B9C5D1"/>
-<path d="M635.539,190.929c-0.598,0.265-1.313,0.52-1.896,1.005c-0.04,0.033,2.678,0.427,3.395,0.048   C636.639,191.513,636.14,191.162,635.539,190.929" fill="#B9C5D1"/>
-<path d="M637.612,189.17c-0.319,0.149-0.977,1.395-0.807,1.457c1.216,0.451,3.805-1.523,2.118-1.282" fill="#B9C5D1"/>
-<path d="M543.139,138.115c-2.629-0.137,0.107,4.079-0.368,4.511C543.517,141.948,543.864,138.804,543.139,138.115" fill="#B9C5D1"/>
-<path d="M539.69,139.177c0.106,0.084,1.45,0.902,1.362,0.474c-0.045-0.22-1.178-1.885-1.296-1.482   C539.677,138.502,539.655,138.839,539.69,139.177" fill="#B9C5D1"/>
-<path d="M541.303,140.738c-0.433,0.689-0.736,1.672-0.502,2.485C540.73,142.979,542.9,141.402,541.303,140.738" fill="#B9C5D1"/>
-<ellipse cx="604.785" cy="28.993" fill="#B9C5D1" rx="2.378" ry="0.349"/>
-<path d="M571.591,86.934c0,0-0.791,0.445-1.632,2.721c-0.841,2.276-0.989,3.117-3.018,4.256   c-2.028,1.138-3.909,2.275-4.651,3.265s-4.206-0.247-7.026,1.583c-2.819,1.831-4.7,2.227-3.859,3.019   c0.841,0.791-0.543,1.88,1.089,2.325s2.721,0,2.77-1.781c0.05-1.781,2.522-3.417,3.018-3.391s1.683-0.814,2.277,0.273   c0.594,1.089,0.594,2.969,1.781,1.633c1.188-1.336,4.305-1.435,5.542-2.771S575.796,89.11,571.591,86.934z" fill="#B9C5D1"/>
-<path d="M551.306,110.039c-1.328,1.327-3.251,2.57-4.405,4.001C547.612,113.159,551.71,112.257,551.306,110.039" fill="#B9C5D1"/>
-<path d="M556.919,102.304c0,0-0.959-1.794,0.474-2.249s1.334-1.297,1.829-0.752   c0.495,0.544,0.792,1.286,0.248,1.435C558.925,100.886,557.393,102.54,556.919,102.304z" fill="#B9C5D1"/>
-<path d="M570.404,85.102c0,0,0.136,0.577,0.488,0.512c0.352-0.066,0.896,0.428,0.352,0.479   c-0.544,0.049-1.434,0.147-1.434,0.147s-0.446-0.643,0.197-1.483c0.644-0.842,0.049-1.484,0.544-1.386s0.94,1.484,1.286,0.445   c0.347-1.039-0.314-3.701,0.239-4.003c0.553-0.302,1.295,0.886,2.334,1.281c1.04,0.396,2.871,0.842,3.563,0.99   c0.692,0.148,0.742,0.939,1.039,1.286c0.296,0.347,1.237,0.396-0.099,0.544s-1.386-0.494-2.127,0.396   c-0.742,0.891-0.643,1.337-1.435,1.287s-1.386,0.049-2.276-0.445c-0.89-0.495-1.435-0.692-1.682-0.495   C571.146,84.854,570.404,85.102,570.404,85.102z" fill="#B9C5D1"/>
-<path d="M595.701,72.059c0,0-1.365,2.097-0.888,1.657C595.29,73.277,596.211,72.572,595.701,72.059z" fill="#B9C5D1"/>
-<path d="M593.037,74.663c0,0-2.961,2.193-2.605,2.309C590.788,77.087,593.06,75.554,593.037,74.663z" fill="#B9C5D1"/>
-<path d="M588.66,77.878c0,0-2.602,1.605-2.018,1.521S588.808,78.818,588.66,77.878z" fill="#B9C5D1"/>
-<path d="M584.999,79.857c0,0-4.444,1.257-3.212,1.494C583.02,81.589,584.999,80.698,584.999,79.857z" fill="#B9C5D1"/>
-<path d="M617.398,187.968c0.694,0.176,0.118,2.072,1.476,1.683C619.172,189.564,617.706,188.045,617.398,187.968" fill="#B9C5D1"/>
-<path d="M619.904,191.878c-0.336-0.097-0.277-1.329-0.916-1.044C619.122,191.296,619.427,191.644,619.904,191.878" fill="#B9C5D1"/>
-<path d="M620.794,193.287c-0.336-0.098-0.276-1.328-0.915-1.044C620.011,192.705,620.316,193.054,620.794,193.287" fill="#B9C5D1"/>
-<path d="M622.372,194.79c0.091-0.342-0.886-0.808-0.521-1.319C622.084,193.144,622.363,194.822,622.372,194.79" fill="#B9C5D1"/>
-<path d="M621.22,193.805c0.01,0.402,1.097,0.428,0.204,0.967C620.272,195.465,621.183,192.322,621.22,193.805" fill="#B9C5D1"/>
-<path d="M617.609,197.111c0,0,0.968,0.983,0.874,1.008S617.39,198,617.609,197.111z" fill="#B9C5D1"/>
-<path d="M621.982,194.973c0,0,0.833,0.45,0.887,0.712c0.054,0.263,0.121,0.264,0.121,0.264l-0.067-0.001   C622.923,195.947,622.011,195.55,621.982,194.973z" fill="#B9C5D1"/>
-<path d="M618.634,186.807c0.26-0.268,0.556-0.49,0.887-0.668c0.188-0.067,1.071,2.393,0.59,2.474   C619.648,188.688,619.103,187.024,618.634,186.807" fill="#B9C5D1"/>
-<g>
-<g>
-<path d="M455.928,29.903c-0.301-0.114-0.611-0.17-0.848-0.136C454.579,29.839,455.185,29.826,455.928,29.903z      M639.881,44.734v-7.261c0,0-7.258-1.119-9.57-1.211c-2.313-0.091-7.697-1.563-6.976-0.601c0.721,0.962,2.71,1.58,0.874,1.812     c-1.836,0.232-5.243-0.567-4.382-0.769c0.862-0.201,1.343-1.765,0.02-1.283c-1.323,0.48-2.165,1.322-4.931,1.082     c-2.767-0.241-17.631-2.895-20.963-2.049c-3.332,0.846-3.606-2.189-5.033-3.077c-1.426-0.888,0.739-2.692,3.505-2.692     s6.561-1.063,4.182-1.313c-2.378-0.251-14.29-0.829-17.17-1.184c-2.881-0.355-7.818-1.953-8.901-0.991     c-1.082,0.962-10.631-0.014-8.743,0.715c1.888,0.728,9.938,3.267,14.091,1.696c4.153-1.569,9.806,0.836,9.084,1.918     c-0.721,1.083-3.127,1.685-5.773,1.685s-7.149-0.662-7.86-0.308c-0.711,0.355-1.991-0.455-3.079,0.888     c-1.088,1.344-11.07-0.821-11.792,0.381c-0.721,1.203-6.667,3.428-5.378,1.474s3.935-1.354,2.492-2.556     c-1.443-1.203-8.419-3.969-10.944-2.766c-2.526,1.202-2.405,2.886-3.849,2.525c-1.443-0.361-4.068-2.169-5.653-1.684     c-1.585,0.484-19.844,0.962-18.281,0.36s9.123-1.209,8.229-3.19s-8.192-2.693-11.398-2.338c-3.206,0.356-1.643-1.688-2.604-1.688     s-7.134,1.897-9.622,2.044c0,0-14.072-0.36-14.672,0.722c-0.602,1.083-5.893,1.443-7.817,1.443c-1.925,0-6.179,0.721-5.773,1.083     c0.405,0.361,3.055,0.874,1.708,1.278c-1.347,0.405-8.563,0.646-8.563,0.646s-0.31,1.906,2.732,2.817s1.72,0.258,1.539,1.065     c-0.182,0.808,2.021,1.548,0.799,1.538c-1.222-0.009-4.709-3.016-6.152-3.016s-0.81-1.168-1.367-1.245s-0.678,0.403-1.64,0.403     s-2.11-0.372-2.919-0.848c-0.328-0.192-0.897-0.287-1.404-0.34c0.766,0.292,1.471,0.983,0.753,1.672     c-1,0.959-1.481-0.845-2.804-1.206c-1.323-0.36,0,1.563-1.203,1.804c-1.203,0.241-1.589,5.854-0.671,5.646     c0.917-0.207,5.033-0.66,4.115-0.267c-0.918,0.394-4.024,1.534-3.493,1.806c0.53,0.271,1.973,0.512,0.65,1.113     c-1.323,0.602-4.856,2.535-6.216,2.29s-1.273-0.71-1.273-0.71s4.406,0.591,4.204-4.824c-0.202-5.415,0.769-6.336-0.563-6.497     c-1.332-0.161-3.367-2.045-5.171-0.843c-1.804,1.203-4.811,2.405-4.931,3.729c-0.12,1.322,0.841,2.164,1.563,2.886     c0.722,0.722,2.559,0.695,1.938,1.79c-0.621,1.095-0.494,2.179-2.298,0.856c-1.805-1.323-9.027-2.539-10.824-2.525     c-1.798,0.012-3.97-3.368-3.97-1.564s2.764,1.725,2.468,2.582c-0.296,0.858,0.28,1.288-1.214,0.977s-7.868-1.393-10.634-0.552     c-2.766,0.842-6.896,0.924-8.98,2.206c-2.085,1.282-3.889,2.365-4.25,1.282s1.924-2.646,0.481-3.007     c-1.443-0.361-3.35-0.953-4.141,0.666c-0.79,1.619,0.653,1.739-0.67,2.341c-1.323,0.602-7.064,2.179-7.381,2.953     c-0.316,0.774,3.652,2.459-5.248-0.066c0,0,2.525,1.563,1.563,2.405c-0.962,0.842-3.582,1.42-4.437-0.433     s-3.042-3.355-3.813-4.589s15.207,2.604,14.194-1.059c0,0-8.74-3.789-16.242-4.447c-7.502-0.658-2.792-1.627-5.508-1.623     c-2.716,0.003-2.716,0.363-4.521,0.363c-1.804,0-0.685-1.234-1.906-0.857c-1.221,0.377-0.981-0.104-3.506,0.737     s-0.36,1.203-4.33,1.323c-3.969,0.12-10.704,1.684-12.027,2.165c-1.323,0.48-2.085,1.138-0.962,0.962     c1.123-0.176,4.674-0.671,4.441-0.035c0,0-0.46,0.603-2.288,1.573s-3.817,1.126-4.279,2.733     c-0.461,1.607-0.119,1.088-2.118,1.977c-1.999,0.888-6.283,2.431-7.14,2.888c-0.857,0.456-2.627,0.742-3.542,2.741     c-0.914,2,0.571,2.284,0.743,3.827c0.171,1.542,4.859,2.949,8.456-0.067c0,0,5.439,4.899,4.661,5.082     c-0.779,0.184-2.835,0.869-2.778,1.154s-1.056,0.66-0.157,0.873c0.899,0.213,1.431,0.891,0.908,0.809s-0.694,0.774,0.848-0.025     c1.542-0.8,0.85-0.646,0.79-1.277c-0.059-0.631,0.752,0.25,0.752,0.25s2.17,0.571,2.228,0.113     c0.057-0.457,1.028-0.742,2.056-0.971c1.028-0.229,1.448-4.159,2.838-4.879c1.39-0.719,3.898-0.952,3.672-1.835     s-2.054-0.997-2.682-1.111s-0.813-0.248-0.778-0.724c0.036-0.476,1.578-4.304,4.148-4.589c2.57-0.286,3.827-1.257,3.656-2.057     c-0.171-0.799,0.179-1.761,1.518-2.108c1.338-0.348,5.623,0.167,5.451,0.853c-0.172,0.685-8.625,4.854-8.168,5.198     c0.457,0.342,1.485,1.484,0.743,2.228c-0.743,0.742-0.971,1.428,1.942,1.599c2.914,0.172,10.682-0.8,11.367-0.399     c0.686,0.399,3.027,0.399,2.513,0.686c-0.514,0.285-2.399-0.286-3.77,0.8c-1.371,1.085-7.083,0.228-8.283,0.742     c-1.2,0.514-2.742,0.343-2.399,0.628c0.342,0.286-1.04,0.281-0.571,0.857c0.469,0.574,2.056-0.972,3.655,0.057     c1.6,1.028-0.057,2.57-0.971,2.399s-3.027-1.143-3.427,0.057c-0.4,1.2-1.038,2.609-2.347,3.361     c-1.309,0.752-2.052,1.037-3.137,0.009c0,0-6.219,2.021-7.286,1.77c-1.067-0.252-0.753-1.431-1.36-1.172     c-0.607,0.26-4.557,1.377-4.655,0.982s-1.189-0.737-1.492-1.237c-0.304-0.499-0.442-0.814-0.245-1.288     c0.198-0.474,1.444,1.517,1.729,0.832c0.286-0.687-0.392-0.684-0.624-0.97c-0.233-0.287-0.918-1.087-0.233-1.145     c0.686-0.058,1.574-0.087,1.102-0.414c-0.473-0.328-0.93-0.557-0.873-1.413c0.057-0.857-2.426-0.76-3.469,0.248     s-0.247,1.514-0.474,2.289s0.23-0.024,0.059,1.118c-0.172,1.143,0.895,1.866,0.533,2.019c0,0-1.447,0.323-3.161,0.666     s-2.913-0.114-3.313,0.686s-1.235,3.317-5.416,4.028c0,0,0.381,0.554-0.586,1.318c-0.967,0.766-4.28,1.622-4.623,1.508     s-0.645-1.115-0.743-0.172c-0.097,0.945,0.514,1.429-0.228,1.429c-0.743,0-0.8-0.343-3.085-0.229c0,0-4.627,0.399-1.485,1.656     s5.346,2.44,5.329,3.905c-0.017,1.464,0.514,4.705-1.636,4.342c-2.151-0.364-4.436,0.207-5.349-0.25     c-0.914-0.457-1.428-0.285-2.685-0.285c-1.256,0-2-0.344-2.627-0.058s-1.831,0.296-1.772,0.69c0.059,0.396,1.438,0.663,0.691,1.5     c-0.747,0.837,0.224,2.494-0.29,3.637c-0.514,1.142-1.078,2.869-0.539,3.091s0.939,0.907,0.653,1.764     c-0.286,0.857,0.571,0.971,2.114,0.914s1.885,0.686,2.17,0.972c0.286,0.285,1.483,0.88,2.227,0.04s2.686-0.384,3.828-0.384     s1.823-1.163,2.882-1.353c1.06-0.189,2.68-1.733,2.526-2.446c-0.153-0.713,0.46-3.826,2.246-3.97     c1.442-0.115,2.766-1.526,3.41-3.622c0.551-1.792,4.244,0.195,5.215,0.024c0.971-0.172,2.627-2.971,5.083-2.514     c2.457,0.457,2.693,2.152,2.775,2.762c0.082,0.608,3.566,2.95,4.879,2.95c1.314,0,2.681,1.328,3.054,1.863     c0.373,0.536,1.327,0.237,1.421,0.986c0.095,0.749,1.006,0.671,0.572,1.382c-0.434,0.709-0.935,1.652-0.535,1.709     c0.4,0.058,0.969-0.368,1.403-1.019c0.434-0.651,0.881-0.353,0.824-0.694c-0.057-0.344-0.914-0.686-0.856-1.314     c0.057-0.628,0.938-1.286,1.354-1.129c0.416,0.158,2.165,1.085,2.033,0.336c-0.132-0.749-1.854-1.4-2.764-1.874     c-0.91-0.475-1.708-0.26-1.48-0.967s-0.41-0.337-1.776-0.494c-1.366-0.156-2.28-1.07-2.28-1.755c0-0.686-1.657-1.372-2.627-2.685     c-0.971-1.314,0.487-0.788,0.171-0.946c-0.315-0.157,0.8-1.625,1.6-1.396c0.8,0.229,0.298,2.079,1.006,1.812     c0.708-0.269,1.065-1.599,1.046-0.908s-0.322,1.067,0.355,0.711c0,0,0.392-0.643,0.335-0.071     c-0.058,0.57,1.142,2.709,2.685,3.011c1.542,0.302,5.084,0.93,5.426,2.415c0,0,0.54,2.443,0.171,2.628     c-0.368,0.185,0.914,0.228,0.628,0.8c-0.286,0.571,1.491,1.871,1.491,1.871s-1.182,1.322,0.178,1.953     c0,0-0.069-1.083,0.502-0.912c0.571,0.172,2.399-0.113,2.628-0.056c0.229,0.056,0.856,0.285,0.856,0.285     s-3.586,0.513-3.335,0.742c0.25,0.229,0.993,0.571,0.993,1.143s-0.561,0.118,0.605,0.573s1.451,1.141,1.623,0.854     c0.171-0.285,0.492-1.445,0.332-1.979s0.183-1.219,0.925-1.048c0.743,0.172,1.287,0.844,1.443,0.279     c0.157-0.564-3.919-1.702-3.138-2.19c0.781-0.487,1.184,0.198,1.125-0.059c-0.058-0.258-2.057-2.6-1.257-2.485     c0.799,0.114,0.856,0.971,1.428,1.085s-0.342-0.285,0.628-1.085c0.971-0.8,3.028-0.686,4.056-0.343     c1.028,0.343,4.456-0.629,5.141-0.172c0.686,0.458,0.514,0.687,0.057,0.687s-4.744,0.104-5.256,0.537     c-0.513,0.434-0.227,2.204,0.058,1.861c0.286-0.343,1.085-1.428,1.371-0.914c0.286,0.515-0.311,0.486-0.127,1.243     s-0.178,0.828-0.178,0.828s-1.776,0.237-1.302,0.415c0.474,0.177,1.835,0.084,1.835,0.427s-0.77,0.579-0.77,0.579     s1.284,1.077,2.484,1.135c0,0-0.949,0.534-0.589,0.581c0.36,0.047,2.047-0.193,2.546,0.355s2.614,1.059,2.842-0.71     c0,0,2.284,0.573,2.798,1.087c0.514,0.515,2.056,0.515,2.856-0.228c0.8-0.743,1.883-0.253,2.398-0.327     c0.515-0.073,1.365-0.892,1.6-0.416s-0.193,0.253-0.571,1.371c-0.378,1.117,0.799,2.113,0.342,2.685s-2.056,5.712-3.484,5.77     c-1.428,0.057-3.458-0.588-3.985-0.294s-2.881-0.593-4.018,0.079c-1.136,0.671-6.505-1.385-7.648-0.528     c0,0-1.511-1.042-3.897-0.892c0,0-5.871-2.192-5.699-0.079c0.171,2.113,0.8,1.714,0,2.57s-2.285,0.971-3.941-0.114     c-1.657-1.085-2.342-0.571-3.199-1.314c-0.856-0.742-2.342-2.398-6.226-2.228c0,0-4.85-1.918-4.024-2.387     c0.825-0.469,3.167-4.011,1.682-4.811c-1.485-0.799-2.685-0.514-4.513-0.399c-1.828,0.114-14.912,2.482-17.194,2.97     c-2.252,0.48-5.712,1.2-6.626,0.344c-0.914-0.857-2.113-1.714-2.513-0.458c-0.4,1.257-0.803,2.481-3.628,4.012     c-2.826,1.529-2.712,2.786-2.655,3.814s0.971,1.828,0.514,2.285s-2.523,2.581-3.433,2.719c-0.897,0.135-2.752-1.873-3.181,2.829     c-0.005,0.062-0.011,0.125-0.016,0.188c0,0-3.652,1.461-3.823,3.117c-0.172,1.656-0.515,1.371-1.2,3.256     c-0.686,1.885-0.4,3.085-0.171,5.369c0.229,2.285,0.754,7.611-0.489,8.499c-1.243,0.889-0.425,6.581,3.231,9.209     c0,0,0.628-0.286,0.971,1.199s4.341,4.398,5.369,5.198c1.028,0.8,4.913,3.941,7.711,2.971c0,0,5.998,0.057,8.797,0.285     s6.854-4.341,11.367-2.513c0,0,0.914-0.344,1.599,1.77c0.686,2.114,3.951,1.705,5.003,1.768c0,0,5.279,1.945,1.28,8.63     c0,0,3.199,6.739,7.712,11.252c0,0,1.771,4.913,1.371,7.255s-1.771,2.398-2.742,3.998c-0.971,1.6-2.285,6.854-1.828,7.94     c0.457,1.085,5.483,6.797,5.369,7.882c-0.114,1.086-0.285,7.998,2.742,9.939c0,0,2.799,2.8,3.142,5.599     c0,0,0.914,0.057,0.628,1.771c-0.285,1.714-0.799,4.513,1.6,4.97c2.399,0.457,3.085-0.686,4.741-0.857     c1.657-0.171,4.742-0.171,5.427-1.085c0,0,0.628-0.457,1.828,0.114s6.169-3.998,7.483-5.255c1.313-1.257,0.914-3.143,1.771-3.37     c0.856-0.229,2.105-3.052,3.17-5.518c0.257-0.595,2.313-1.565,3.513-2.365c1.199-0.8,2.935-3.571,0.04-7.755     c0,0,3.73-4.298,6.358-5.841c2.627-1.542,2.97,0.173,3.198-2.112s1.542-5.827,0.971-6.798c-0.571-0.972-0.057-1.371-0.457-2.342     c-0.4-0.972-1.085-0.229-1.428-1.371c-0.342-1.143,0.139-3.511-0.473-4.44c-0.612-0.929-2.326-0.814-1.698-1.9     c0.629-1.085,2.457-1.542,3.085-5.313c0,0,2.399-4.227,3.542-5.197c1.143-0.972,9.368-7.141,10.567-9.254     c1.2-2.113,7.24-12.603,5.463-12.426c-1.777,0.178-8.547,4.029-12.203,2.201c-3.656-1.828-1.771-2.171-2.229-3.256     c-0.457-1.085-4.33-5.362-5.106-5.337c-0.776,0.024-1.576,0.596-1.919-2.032s-3.22-3.979-3.409-4.36     c-0.189-0.381,0.839-2.322-0.589-4.322c-1.428-1.999-2.17-0.285-2.57-3.027c-0.4-2.741-2.057-4.684-3.028-6.055     c-0.971-1.371-3.147-5.569-2.516-6.126c0.631-0.558,2.573,3.384,3.316,3.556c0,0,0.4-2.628,1.028-2.685s-0.229,1.37-0.057,2.171     c0.171,0.8,1.199,0.342,1.713,1.599s2.742,3.771,3.999,5.427s1.771,5.198,2.57,6.397c0.8,1.199,2.114,1.543,3.313,4.284     c0,0,2.571,1.542,2.514,3.313c-0.057,1.771,0.286,6.512,2.228,6.797c1.942,0.286,2.113-1.656,4.513-1.485     c2.399,0.172,4.456-1.313,7.826-2.741s3.142-3.599,4.513-3.599s2.914,1.027,3.084-0.229c0.171-1.257,1.713-0.743,2.228-1.885     c0.514-1.144,1.828-0.571,2.171-1.144c0.342-0.57,0.25-2.949,1.039-2.988c0.789-0.038,4.845-3.401-0.296-5.918     c0,0-1.828,0.682-2.342-0.689c-0.514-1.37-0.057-3.256-0.914-3.313c-0.857-0.057-2.627,3.085-4.627,3.199     s-2.228,1.656-3.313,0.457c-1.085-1.2-0.172-1.844-0.291-2.613c-0.119-0.77-1.766-0.585-2.108-1.499s-1.485-1.6-2.285-2.399     c-0.8-0.8-2.517-3.246-1.173-3.736s3.424-0.067,3.612,1.006c0.188,1.074,2.016,2.273,3.043,2.788     c1.028,0.514,4.728,3.788,6.962,1.237c0,0,1.663,0.075,2.006,1.332s5.945,1.588,6.343,1.509c0,0,1.769,1.291,2.054,0.434     c0.285-0.856,6.257-0.876,7.241-0.552c0.984,0.323,1.295,0.469,1.54,1.539c0.244,1.069-0.156,1.526,1.501,1.755     c1.656,0.229,2.799,1.656,3.77,1.656c0,0-1.371,0.171-1.428,0.571c-0.057,0.4,4.284,4.227,4.97,4.227s1.134-0.634,1.134-0.634     l-0.355,1.894c0,0,1.247,3.411,1.776,5.445c0.529,2.035,1.453,2.224,1.615,3.006c0.162,0.782,2.374,5.011,2.57,5.826     s2.285,6.397,3.713,5.027c1.428-1.371,1.498-1.505,1.634-1.667c0.137-0.161,1.895,0.474,2.013,0.829     c0.119,0.355-0.277,0.323-0.563,1.123c0,0,0.229,4.398,1.942,3.941c1.714-0.457,2.742-5.426-1.313-6.454     c0,0-1.614,0.559-1.664-0.149c-0.049-0.708,1.244,0.06,1.421-0.71c0.178-0.77-0.328-3.368,0.129-3.597     c0.457-0.229,0.172-4.284,0.628-5.598c0.457-1.314,3.839-0.442,3.861-1.992c0.023-1.55,0.308-2.007,1.964-2.692     c1.657-0.685,3.085-3.256,3.713-3.198c0.628,0.058,1.942-3.37,3.142-2.913c1.2,0.457,6.341-0.399,7.769,0.229     c1.428,0.628,1.885,2.57,3.027,2.855c1.143,0.286-0.399,1.771,0.286,2s1.999-2.399,1.656,0.343     c-0.343,2.741-1.771,3.771-0.114,3.884c1.656,0.114,4.512-0.628,5.026,0.4c0.514,1.027,1.372,4.684,1.828,6.968     c0.457,2.285,0.058,2.628-0.114,4.113c-0.171,1.485-0.515,2.685,0.057,3.37c0.571,0.686,3.599,2.171,3.542,3.142     c-0.057,0.971,0.457,3.027,0.914,4.056c0.457,1.028,5.338,5.039,5.712,4.056s-2.399-7.883-4.912-9.939     c-2.513-2.057-2.627-3.084-2.627-4.684s-0.457-6.283,1.028-6.512c1.485-0.229,7.483,3.198,7.483,5.598s0.4,2.171,0,2.971     c0,0,1.085,1.085,1.828-0.457c0.743-1.542,8.335-3.636,7.167-6.959s-7.167-8.692-7.109-10.806     c0.058-2.114,3.713-5.084,5.141-5.027c1.428,0.058,2.239-0.642,2.205,0.622s1.184,2.189,1.184,2.189s-3.96,0.788-3.217,1.759     s3.028,3.484,4.285-1.143c0,0-1.143-1.542-0.743-2.399c0.4-0.856,7.597-2.284,10.053-3.484     c2.456-1.199,11.238-10.753,10.76-12.488c0,0-3.92,1.038-2.605-0.591c1.315-1.631,0.473-4.878-1.09-7.523     c-1.563-2.646,6.013-3.849,4.57-4.812c-1.443-0.962-12.026-0.962-8.659-2.887c3.367-1.924,8.659-5.171,7.938-2.886     s-4.45,3.007-1.083,2.767c3.368-0.241,6.984-2.013,6.258-0.285s-2.141,1.921-0.652,2.486c1.49,0.564,3.198-1.185,3.02,1.184     c-0.178,2.367-1.219,2.753-1.29,3.951c-0.072,1.197,0.993,1.316,3.244,0.665c2.25-0.651,4.092-2.71,0.965-7.4     c0,0-1.804-0.601,1.083-2.767c2.887-2.164,3.009-5.763,5.354-4.926c2.344,0.838,14.974-5.238,15.394-12.784     c0,0-0.061-3.097,1.623-2.495c1.684,0.602,1.082,3.969,0.962,6.014c-0.121,2.045-0.601,4.45,0.481,3.367     c1.083-1.082,3.729,2.045,2.526-0.36s-2.646-5.292-0.962-5.292c1.684,0,3.022,2.268,2.593,1.134     c-0.429-1.134-1.284-8.559-2.901-9.056s-2.699-0.857-5.706-0.256c-3.007,0.601-9.224-0.036-7.438-1.4     c1.786-1.366,8.105-8.405,20.22-7.893s15.558,1.513,15.039,0.592c-0.52-0.92,0.432-4.229,2.783-4.439     c2.351-0.21,4.795-0.946,5.21,0.475c0.415,1.42,4.115-0.323,6.28-1.767s1.555,0.64-0.004,1.944     c-1.559,1.303-8.553,4.734-11.25,6.747s-1.657,6.865-1.362,8.878c0.295,2.012-2.149,2.701-2.043,3.57     c0.106,0.87,7.804-3.94,11.171-8.511c3.367-4.571,2.045-3.849,1.563-5.533c-0.481-1.684,1.443-3.487,2.887-3.487     c1.443,0,11.305,0,15.635-2.165c4.33-2.165,11.964-0.598,11.995-2.163s-3.216-2.527-2.976-3.61L639.881,44.734z M379.794,85.262     c-2.278,0-4.422,1.206-4.422,1.206c-11.257-1.206-1.675-8.979,2.479-9.448s1.407,2.345,2.278,3.887s3.819-1.81,3.819-1.81     c0.201-1.005-1.273-0.134-1.541-1.34s2.479-1.475,4.154-1.341s0.268,1.407-0.469,2.145s-1.139,0.268,0.536,1.541     s6.902,3.283,6.902,5.763S382.072,85.262,379.794,85.262z M414.103,87.004c-1.675,0-0.603,0.603,0.603,1.943     s1.407,1.943,1.273,4.623s-2.211,2.011-5.696,1.273s-3.686-3.283-3.083-5.695s1.005-0.737,2.01-1.407s-3.752-2.479-4.355-5.026     s-0.134-0.804-1.139-1.943s1.273,0,4.221-3.015s4.825-1.475,4.825-1.475c3.686,2.747-1.742,3.082-1.876,3.753     s-1.005-0.47-2.077,1.005s2.68,1.005,2.948,2.01s1.675,0.536,1.407,1.273s0.536,1.876,1.273,0.871s1.407,0.402,2.949,1.341     S415.778,87.004,414.103,87.004z M458.606,83.766c-0.503,1.006-1.676,0.753-3.017,0.67     C455.589,84.436,459.109,82.76,458.606,83.766z M465.563,78.066c0,0-1.005,0.335-1.173-0.503     C464.389,77.563,465.814,76.223,465.563,78.066z M514.005,63.483c-1.09,0.587-0.838,0.922-1.425,1.341s-0.419,0.167-1.844,0.922     s-1.928,2.012-3.604,2.012s-2.85,0.42-2.934,0.084c0,0,6.956-2.18,7.543-3.521s3.436-5.027,3.52-3.938     S515.095,62.896,514.005,63.483z" fill="#B9C5D1"/>
-</g>
-</g>
-<path d="M365.873,94.03c-0.359,0.168-1.146-0.172-0.847-0.595C365.282,93.074,366.198,93.659,365.873,94.03" fill="#B9C5D1"/>
-<path d="M612.933,181.818c0.582,0.571,2.048,0.282,0.949,1.59C614.206,183.022,611.115,182.855,612.933,181.818" fill="#B9C5D1"/>
-<path d="M490.528,155.252c-0.021-0.042,0.021-1.404-1.125-2.07C489.427,154.171,490.079,154.367,490.528,155.252" fill="#B9C5D1"/>
-</g>
-</g>
-<!-- Kabul, Afghanistan -->
-<circle id="1760-1-0" cx="443.0" cy="98.7" r="2" fill="red"/>
-<!-- New Delhi, India -->
-<circle id="1624-45-0" cx="458.5" cy="116.2" r="2" fill="red"/>
-<!-- Mumbai, India -->
-<circle id="1624-45-1" cx="450.0" cy="127.8" r="2" fill="red"/>
-<!-- Chennai, India -->
-<circle id="1624-45-2" cx="462.2" cy="139.2" r="2" fill="red"/>
-<!-- Kolkata, India -->
-<circle id="1624-45-3" cx="470.5" cy="121.5" r="2" fill="red"/>
-<!-- London, UK -->
-<circle id="2592-33-0" cx="364.5" cy="52.9" r="2" fill="red"/>
-<!-- Paris, France -->
-<circle id="2696-34-0" cx="324.1" cy="73.2" r="2" fill="red"/>
-<!-- Helsinki, Finland -->
-<circle id="2632-104-0" cx="319.9" cy="68.3" r="2" fill="red"/>
-<!-- Berlin, Germany -->
-<circle id="2528-36-0" cx="343.9" cy="66.7" r="2" fill="red"/>
-</svg>
--- a/clock/data/worldclock/qgn_indi_dst_add.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +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 width="13" height="13" viewBox="0 0 13 13">
-<path d="M9.127,7.21c0,1.071-0.872,1.942-1.942,1.942c-1.071,0-1.942-0.871-1.942-1.942c0-1.071,0.871-1.942,1.942-1.942 C8.255,5.268,9.127,6.139,9.127,7.21z M7.185,4.268c-1.623,0-2.942,1.32-2.942,2.942s1.32,2.942,2.942,2.942 s2.942-1.32,2.942-2.942S8.807,4.268,7.185,4.268z"/>
-<path d="M6.685,1.986V3.05c0,0-0.003,0.499,0.5,0.499s0.5-0.499,0.5-0.499V1.986c0,0-0.019-0.5-0.5-0.5 S6.685,1.986,6.685,1.986z"/>
-<path d="M6.685,11.393v1.063c0,0-0.003,0.499,0.5,0.499s0.5-0.499,0.5-0.499v-1.063c0,0-0.019-0.5-0.5-0.5 S6.685,11.393,6.685,11.393z"/>
-<path d="M12.419,6.721h-1.063c0,0-0.499-0.003-0.499,0.5s0.499,0.5,0.499,0.5h1.063c0,0,0.5-0.019,0.5-0.5 S12.419,6.721,12.419,6.721z"/>
-<path d="M3.013,6.721H1.949c0,0-0.499-0.003-0.499,0.5s0.499,0.5,0.499,0.5h1.063c0,0,0.5-0.019,0.5-0.5 S3.013,6.721,3.013,6.721z"/>
-<path d="M10.532,3.166L9.78,3.917c0,0-0.355,0.351,0,0.707c0.356,0.355,0.707,0.001,0.707,0.001l0.752-0.752 c0,0,0.34-0.367,0-0.708S10.532,3.166,10.532,3.166z"/>
-<path d="M3.881,9.817l-0.752,0.752c0,0-0.355,0.351,0.001,0.707c0.355,0.355,0.706,0,0.706,0l0.752-0.752 c0,0,0.341-0.367,0-0.707C4.248,9.477,3.881,9.817,3.881,9.817z"/>
-<path d="M11.24,10.568l-0.752-0.752c0,0-0.351-0.355-0.707,0c-0.355,0.356-0.001,0.707-0.001,0.707l0.752,0.752 c0,0,0.367,0.34,0.708,0S11.24,10.568,11.24,10.568z"/>
-<path d="M4.588,3.917L3.836,3.165c0,0-0.351-0.355-0.707,0.001c-0.355,0.355,0,0.706,0,0.706l0.752,0.752 c0,0,0.367,0.341,0.707,0C4.929,4.284,4.588,3.917,4.588,3.917z"/>
-</svg>
\ No newline at end of file
--- a/clock/data/worldclock/qgn_indi_find.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +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="26px" version="1.1" viewBox="0 0 24 26" width="24px" x="0px" y="0px">
-<path d="M16.877,3.904c-6.466-0.738-10.905,6.168-8.039,11.672l-7.117,7.115l0.319,0.644c0.778,1.565,1.923,2.136,2.345,2.345  L5.029,26l7.076-7.076c0.902,0.494,1.901,0.814,2.955,0.935C19.787,20.397,24,16.703,24,11.864C24,7.343,20.447,4.31,16.877,3.904z"/>
-<path d="M9.088,16.741c0.434,0.213,0.821,0.491,1.111,0.782c0.145,0.145,0.286,0.313,0.419,0.5l-6.436,6.369  c-0.172-0.124-0.327-0.256-0.461-0.391c-0.289-0.29-0.568-0.679-0.783-1.111L9.088,16.741z" fill="#EB8C32"/>
-<path d="M22.403,9.043c-1.208-2.742-4.095-4.503-7.229-4.146c-5.106,0.58-7.72,6.121-5.358,10.389L22.403,9.043z" fill="#E1E1E1"/>
-<path d="M22.251,8.742l-1.795,0.896c0.256,0.514,0.434,1.073,0.502,1.675c0.314,2.757-1.664,5.246-4.421,5.56  c-2.153,0.245-4.14-0.914-5.056-2.748l-1.795,0.897c1.285,2.566,4.062,4.188,7.078,3.843c3.858-0.438,6.629-3.922,6.189-7.78  C22.858,10.243,22.61,9.458,22.251,8.742" fill="#B4B4B4"/>
-<path d="M15.286,5.899c-4.132,0.471-6.717,5.06-4.588,8.905l10.776-5.368C20.494,7.219,18.094,5.579,15.286,5.899z" fill="#968C82"/>
-<path d="M12.221,16.597c1.259,1.001,2.832,1.452,4.429,1.27c1.598-0.182,3.029-0.975,4.031-2.232  c1.002-1.259,1.453-2.834,1.271-4.434c-0.081-0.711-0.289-1.385-0.6-2.007l-1.795,0.897c0.207,0.415,0.354,0.861,0.407,1.336  c0.018,0.154,0.026,0.31,0.026,0.463c0,0.906-0.304,1.779-0.876,2.499c-0.669,0.84-1.624,1.369-2.691,1.491  c-1.067,0.121-2.118-0.18-2.958-0.849c-0.467-0.37-0.825-0.835-1.084-1.353l-1.795,0.898C10.974,15.352,11.522,16.042,12.221,16.597  z" fill="#5F5A50"/>
-<path d="M10.979,18.627L4.825,24.78C4.514,24.625,4.243,24.435,4,24.235l6.433-6.434  C10.633,18.045,10.824,18.316,10.979,18.627z" fill="#B44B00"/>
-<path d="M20.619,9.983c-0.827-2.032-2.932-3.352-5.22-3.091c-2.755,0.314-4.735,2.803-4.422,5.558  c0.079,0.689,0.293,1.33,0.614,1.898L20.619,9.983z" fill="#FFFFFF"/>
-<path d="M20.456,9.639l-8.975,4.486c0.916,1.834,2.902,2.993,5.056,2.748c2.757-0.313,4.735-2.803,4.421-5.56  C20.89,10.712,20.712,10.152,20.456,9.639" fill="#EBEBEB"/>
-<rect fill="none" height="26" width="24"/>
-</svg>
--- a/clock/data/worldclock/qgn_test_city_default.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!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" width="42" height="36" viewBox="0 0 42 36">
-<rect fill="none" height="36" width="42"/>
-<linearGradient id="SVGID_1" gradientUnits="userSpaceOnUse" x1="21.12" y1="18.23" x2="28.7" y2="33.17">
-<stop stop-color="#AABBD7" offset="0"/>
-<stop stop-color="#92A5CC" offset="0.26"/>
-<stop stop-color="#6C83BB" offset="0.71"/>
-<stop stop-color="#637DB5" offset="0.76"/>
-<stop stop-color="#4C6EA4" offset="0.83"/>
-<stop stop-color="#265689" offset="0.91"/>
-<stop stop-color="#003D6D" offset="0.99"/>
-</linearGradient>
-<polygon fill="url(#SVGID_1)" points="6.983,6.5 5.511,7.279 5.511,29.5 35.709,29.5 36.489,28.028 36.489,6.5 "/>
-<linearGradient id="SVGID_2" gradientUnits="userSpaceOnUse" x1="20.2" y1="-0.08" x2="21.06" y2="32.84">
-<stop stop-color="#FFFFFF" offset="0.15"/>
-<stop stop-color="#A2C2DD" offset="1"/>
-</linearGradient>
-<rect fill="url(#SVGID_2)" height="21.66" width="29.64" x="5.86" y="7.489"/>
-<linearGradient id="SVGID_3" gradientUnits="userSpaceOnUse" x1="35.32" y1="1.53" x2="36.25" y2="32.21">
-<stop stop-color="#FFFFFF" offset="0"/>
-<stop stop-color="#496DA2" offset="0.71"/>
-<stop stop-color="#235487" offset="0.99"/>
-</linearGradient>
-<polygon fill="url(#SVGID_3)" points="36.139,6.851 36.139,27.94 35.5,29.149 35.5,7.489 "/>
-<linearGradient id="SVGID_4" gradientUnits="userSpaceOnUse" x1="20.88" y1="3.11" x2="21.56" y2="25.88">
-<stop stop-color="#FFFFFF" offset="0"/>
-<stop stop-color="#496DA2" offset="0.71"/>
-<stop stop-color="#235487" offset="0.99"/>
-</linearGradient>
-<polygon fill="url(#SVGID_4)" points="35.5,7.489 36.139,6.851 7.069,6.851 5.86,7.489 "/>
-<linearGradient id="SVGID_5" gradientUnits="userSpaceOnUse" x1="20.31" y1="4.4" x2="20.5" y2="15.99">
-<stop stop-color="#FFFFFF" offset="0"/>
-<stop stop-color="#A2C2DD" offset="0.35"/>
-<stop stop-color="#6C83BB" offset="0.7"/>
-<stop stop-color="#003D6D" offset="1"/>
-</linearGradient>
-<rect fill="url(#SVGID_5)" height="19.096" width="26.695" x="7.19" y="8.725"/>
-<linearGradient id="SVGID_6" gradientUnits="userSpaceOnUse" x1="20.3" y1="12.61" x2="20.58" y2="25.51">
-<stop stop-color="#D6E6EC" offset="0"/>
-<stop stop-color="#298595" offset="1"/>
-</linearGradient>
-<path d="M33.885,27.821V19.12l-2.148-0.299c-0.068-1.166-0.291-4.934-0.293-4.934 c-0.004-0.084-1.654-0.09-1.689-0.009l-0.258,4.632l-1.301-0.181c-0.055-1.231-0.299-6.597-0.301-6.597 c-0.002-0.084-1.654-0.09-1.689-0.009l-0.271,6.29l-4.15-2.027l-2.74,1l0.005,1.643l-1.615-0.354l-0.528,0.118l-0.167-2.383 c1.619-0.07,2.872-0.532,2.872-1.093c0-0.578-1.329-1.052-3.024-1.099l-0.212-3.023l-0.107-0.002l-0.206,3.025 c-1.705,0.043-3.052,0.518-3.052,1.099c0,0.565,1.269,1.03,2.902,1.095l-0.177,2.643l-0.507,0.111v-1.726l-3.929-0.766 l-4.111,0.847l0.005,10.699" fill="url(#SVGID_6)"/>
-</svg>
\ No newline at end of file
--- a/clock/data/worldclock/qtg_test_homecity.svg	Tue May 11 12:31:38 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="40px" height="40px" viewBox="0 0 40 40" enable-background="new 0 0 40 40" xml:space="preserve">
-<g>
-	<rect fill="none" width="40" height="40"/>
-	<g>
-		<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="22.2627" y1="1.3389" x2="19.0624" y2="39.7377">
-			<stop  offset="0" style="stop-color:#FFFFFF"/>
-			<stop  offset="1" style="stop-color:#4F4F4F"/>
-		</linearGradient>
-		<path fill="url(#SVGID_1_)" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" d="M34.326,38.682V17.68
-			L20.402,2.889L5.727,17.68v21.002H34.326z"/>
-		<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="20.916" y1="0.4121" x2="19.7791" y2="21.6352">
-			<stop  offset="0" style="stop-color:#D07100"/>
-			<stop  offset="1" style="stop-color:#A23600"/>
-		</linearGradient>
-		<polygon fill="url(#SVGID_2_)" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" points="20.256,1.318 
-			38.556,17.469 35.365,21.055 20.33,7.807 4.844,20.959 1.443,17.572 		"/>
-		<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="20.9043" y1="21.8818" x2="19.9962" y2="38.8339">
-			<stop  offset="0" style="stop-color:#17BFFF"/>
-			<stop  offset="1" style="stop-color:#05002E"/>
-		</linearGradient>
-		<rect x="15.327" y="22.881" fill="url(#SVGID_3_)" width="10.2" height="15.801"/>
-		<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="23.999" y1="30.1406" x2="23.7214" y2="33.4714">
-			<stop  offset="0" style="stop-color:#C6FF45"/>
-			<stop  offset="1" style="stop-color:#4B8B00"/>
-		</linearGradient>
-		<ellipse fill="url(#SVGID_4_)" cx="23.854" cy="31.881" rx="1.5" ry="1.602"/>
-	</g>
-</g>
-</svg>
--- a/clock/ftudatetimewizard/inc/ftudatetimeview.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/ftudatetimewizard/inc/ftudatetimeview.h	Tue May 18 13:16:49 2010 +0100
@@ -19,10 +19,11 @@
 #define FTUDATETIMEVIEW_H
 
 // System includes
-#include <hbwidget.h>
-#include <hbview.h>
-#include <hbdialog.h>
-#include <qdatetime.h>
+#include <QPointer>
+#include <QDateTime>
+#include <HbWidget>
+#include <HbView>
+#include <HbDialog>
 #include "clockcityselectionlist.h"
 
 // Forward declarations.
@@ -56,6 +57,7 @@
 	void updateDate();
 	void updateTime();
 	void HandleLocationChange(LocationInfo);
+	void selectedAction(HbAction *action);
 
 private:
 	void createMainLayout();
@@ -63,22 +65,27 @@
 	void populateDateTimeGroup();
 	void populatePlaceGroup();
 	void wizardEditedDate(const QDate &date);
-	
+
+private:
 	HbDataForm* mDateTimePlaceForm;
 	HbDataFormModel* mDateTimePlaceModel;
-	
+
 	HbDataFormModelItem *mDateItem;
 	HbDataFormModelItem *mTimeItem;
 	HbDataFormModelItem *mAutoTimeUpdateItem;
 	HbDataFormModelItem *mPlaceGroup;
 	HbDataFormModelItem *mCountryItem;
 	HbDataFormModelItem *mCityItem;
-	
+
 	HbDateTimePicker* mDatePicker;
 	HbDateTimePicker* mTimePicker;
-	HbDialog* mDatetimepopup;
+	QPointer<HbDialog> mDatePickerDialog;
+	QPointer<HbDialog> mTimePickerDialog;
+
+	HbAction *mOkAction;
+	HbAction *mCancelAction;
 	SettingsUtility *mSettingsUtility;
-	
+
 	TimezoneClient *mTimeZoneClient;
 	ClockCitySelectionList* mCitySelectionList;
 	bool mTimeAutoUpdate;
--- a/clock/ftudatetimewizard/inc/ftudatetimewizardfactory.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/ftudatetimewizard/inc/ftudatetimewizardfactory.h	Tue May 18 13:16:49 2010 +0100
@@ -19,7 +19,7 @@
 #define FTUDATETIMEWIZARDFACTORY_H
 
 // System includes
-#include <qobject>
+#include <QObject>
 
 // User includes
 #include "ftuwizardfactory.h"
--- a/clock/ftudatetimewizard/src/ftudatetimeview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/clock/ftudatetimewizard/src/ftudatetimeview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -60,8 +60,7 @@
 FtuDateTimeView::FtuDateTimeView() :
 HbView(),
 mDatePicker(NULL),
-mTimePicker(NULL),
-mDatetimepopup(NULL)
+mTimePicker(NULL)
 {
 	//TODO: Localisation has to be done
 	// set title for wizard
@@ -73,10 +72,10 @@
 			new FtuDateTimeCustomItem(mDateTimePlaceForm);
 	prototypes.append(customItem);
 	mDateTimePlaceForm->setItemPrototypes(prototypes);
-	
+
 	// Construct the settings utility.
 	mSettingsUtility = new SettingsUtility();
-	mTimeZoneClient = new TimezoneClient();
+	mTimeZoneClient = TimezoneClient::getInstance();
 	mTimeAutoUpdate = mTimeZoneClient->timeUpdateOn();
 }
 
@@ -88,6 +87,10 @@
 	delete mDateTimePlaceForm;
 	delete mDateTimePlaceModel;
 	delete mSettingsUtility;
+
+	if (!mTimeZoneClient->isNull()) {
+		mTimeZoneClient->deleteInstance();
+	}
 }
 /*!
     Creates the main view.
@@ -123,7 +126,7 @@
  */
 void FtuDateTimeView::populateDateTimeGroup()
 {
-	HbDataFormModelItem *dateTimeGroup = 
+	HbDataFormModelItem *dateTimeGroup =
 			mDateTimePlaceModel->appendDataFormGroup
 			(QString(tr("Date and Time")),
 			 mDateTimePlaceModel->invisibleRootItem());
@@ -146,7 +149,7 @@
 								SLOT(populateDatePicker()));
 	mDateTimePlaceForm->addConnection(mTimeItem, SIGNAL(clicked()), this,
 								SLOT(populateTimePicker()));
-	mDateTimePlaceForm->addConnection(mAutoTimeUpdateItem, SIGNAL(clicked()), 
+	mDateTimePlaceForm->addConnection(mAutoTimeUpdateItem, SIGNAL(clicked()),
 								this, SLOT(setAutoTimeupDate()));
 }
 
@@ -165,14 +168,14 @@
 	mCityItem = mDateTimePlaceModel->appendDataFormItem(
 									HbDataFormModelItem::CustomItemBase,
 									QString(tr("City")), mPlaceGroup);
-	
+
 	// Connect the items to the proper slots
 	mDateTimePlaceForm->addConnection(mCountryItem, SIGNAL(clicked()), this,
 									SLOT(populateCitySelectionList()));
 	mDateTimePlaceForm->addConnection(mCityItem, SIGNAL(clicked()), this,
 									SLOT(populateCitySelectionList()));
-	
-	
+
+
 }
 
 /*!
@@ -189,12 +192,12 @@
 	} else {
 		mAutoTimeUpdateItem->setContentWidgetData("text", tr("OFF"));
 	}
-	mCountryItem->setContentWidgetData("text", 
+	mCountryItem->setContentWidgetData("text",
 							mTimeZoneClient->getCurrentZoneInfoL().countryName);
-	mCityItem->setContentWidgetData("text", 
+	mCityItem->setContentWidgetData("text",
 							mTimeZoneClient->getCurrentZoneInfoL().cityName);
 
-	// Set the date,time,country and city fields disable 
+	// Set the date,time,country and city fields disable
 	// if auto time update is ON
 	if (mTimeAutoUpdate) {
 		mDateItem->setEnabled(false);
@@ -209,14 +212,13 @@
  */
 void FtuDateTimeView::populateDatePicker()
 {
-	if (mDatetimepopup) {
-		delete mDatetimepopup;
-		mDatetimepopup = NULL;
+	if (mDatePickerDialog) {
+		delete mDatePickerDialog;
 	}
-	mDatetimepopup = new HbDialog();
+	mDatePickerDialog = new HbDialog();
 
-	mDatetimepopup->setDismissPolicy(HbDialog::NoDismiss);
-	mDatetimepopup->setTimeout(HbDialog::NoDismiss);
+	mDatePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
+	mDatePickerDialog->setTimeout(HbDialog::NoDismiss);
 
 	if(mDatePicker) {
 		mDatePicker = NULL;
@@ -225,54 +227,53 @@
 	                                   this);
 	mDatePicker->setMinimumDate(QDate::fromString("01/01/1900", "dd/MM/yyyy"));
 	mDatePicker->setMaximumDate(QDate::fromString("31/12/2100", "dd/MM/yyyy"));
-	mDatePicker->setDisplayFormat(mSettingsUtility->dateFormatString());
 
-	// Sets the primary action and secondary action
-	HbAction *primaryAction = new HbAction(tr("OK"), mDatetimepopup);
-	HbAction *secondaryAction = new HbAction(tr("Cancel"), mDatetimepopup);
+	mDatePickerDialog->setContentWidget(mDatePicker);
 
-	mDatetimepopup->setPrimaryAction(primaryAction);
-	mDatetimepopup->setSecondaryAction(secondaryAction);
-	mDatetimepopup->setContentWidget(mDatePicker);
+	// Add ok and cancel actions.
+	mOkAction = new HbAction(
+			hbTrId("txt_common_button_ok"), mDatePickerDialog);
+	mCancelAction =  new HbAction(
+			hbTrId("txt_common_button_cancel"), mDatePickerDialog);
 
-	connect(primaryAction, SIGNAL(triggered()), this, SLOT(updateDate()));
-	connect(secondaryAction, SIGNAL(triggered()), mDatetimepopup, SLOT(close()));
-	mDatetimepopup->exec();
+	mDatePickerDialog->addAction(mOkAction);
+	mDatePickerDialog->addAction(mCancelAction);
+
+	mDatePickerDialog->open(this, SLOT(selectedAction(HbAction *)));
 }
 
 /*!
     Populates the Time Picker.
  */
 void FtuDateTimeView::populateTimePicker()
-{   
-	if (mDatetimepopup) {
-		delete mDatetimepopup;
-		mDatetimepopup = NULL;
+{
+	if (mTimePickerDialog) {
+		delete mTimePickerDialog;
 	}
-	mDatetimepopup = new HbDialog();
-	mDatetimepopup->setDismissPolicy(HbDialog::NoDismiss);
-	mDatetimepopup->setTimeout(HbDialog::NoDismiss);
+	mTimePickerDialog = new HbDialog();
+	mTimePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
+	mTimePickerDialog->setTimeout(HbDialog::NoDismiss);
 
 	if(mTimePicker) {
 		mTimePicker = NULL;
 	}
-	mTimePicker = new HbDateTimePicker(QTime().currentTime(),
-	                                   this);
+	mTimePicker = new HbDateTimePicker(
+			QTime().currentTime(), this);
 	mTimePicker->setDisplayFormat(mSettingsUtility->timeFormatString());
 
-	// Sets the primary action and secondary action
-	HbAction *primaryAction = new HbAction(tr("OK"), mDatetimepopup);
-	HbAction *secondaryAction = new HbAction(tr("Cancel"), mDatetimepopup);
+	mTimePickerDialog->setContentWidget(mTimePicker);
 
-	mDatetimepopup->setPrimaryAction(primaryAction);
-	mDatetimepopup->setSecondaryAction(secondaryAction);
+	// Add ok and cancel actions.
+	mOkAction = new HbAction(
+			hbTrId("txt_common_button_ok"), mTimePickerDialog);
 
-	mDatetimepopup->setContentWidget(mTimePicker);
+	mCancelAction = new HbAction(
+			hbTrId("txt_common_button_cancel"), mTimePickerDialog);
 
-	connect(primaryAction, SIGNAL(triggered()), this, SLOT(updateTime()));
-	connect(secondaryAction, SIGNAL(triggered()), mDatetimepopup, SLOT(close()));
+	mTimePickerDialog->addAction(mOkAction);
+	mTimePickerDialog->addAction(mCancelAction);
 
-	mDatetimepopup->exec();
+	mTimePickerDialog->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
@@ -334,6 +335,27 @@
 }
 
 /*!
+	Slot to handle the selected action.
+ */
+void FtuDateTimeView::selectedAction(HbAction *action)
+{
+	// Update time/date based on the picker selected.
+	if (action == mOkAction) {
+		if (mTimePickerDialog) {
+			updateTime();
+		} else if(mDatePickerDialog) {
+			updateDate();
+		}
+	}else {
+		if(mTimePickerDialog) {
+			mTimePickerDialog->deleteLater();
+		} else if(mDatePickerDialog) {
+			mDatePickerDialog->deleteLater();
+		}
+	}
+}
+
+/*!
     Sets the device date.
  */
 void FtuDateTimeView::updateDate()
@@ -341,7 +363,7 @@
 	QDate date = mDatePicker->date();
 	// Set device Date
 	if (date.isValid()) {
-		mDateItem->setContentWidgetData("text", 
+		mDateItem->setContentWidgetData("text",
 						date.toString(mSettingsUtility->dateFormatString()));
 		mTimeZoneClient->setDateTime(QDateTime(date, QTime::currentTime()));
 		wizardEditedDate(date);
@@ -356,7 +378,7 @@
 	QTime time = mTimePicker->time();
 	// Set device Time
 	if (time.isValid()) {
-		mTimeItem->setContentWidgetData("text", 
+		mTimeItem->setContentWidgetData("text",
 						time.toString(mSettingsUtility->timeFormatString()));
 		mTimeZoneClient->setDateTime(QDateTime(QDate::currentDate(), time));
 		wizardEditedDate(QDate::currentDate());
@@ -370,7 +392,7 @@
 QDate FtuDateTimeView::getWizardCompletedDate()
 {
 	XQSettingsManager *settingsManager = new XQSettingsManager();
-	XQSettingsKey *ftuPluginDateCenrepKey = 
+	XQSettingsKey *ftuPluginDateCenrepKey =
 			new XQSettingsKey(XQSettingsKey::TargetCentralRepository,
 			                  KCRUidClockApp, KFtuPluginDate);
 	// Read the initial values from the cenrep
@@ -392,10 +414,10 @@
 void FtuDateTimeView::wizardEditedDate(const QDate &date)
 {
 	XQSettingsManager *settingsManager = new XQSettingsManager();
-	XQSettingsKey *ftuPluginDateCenrepKey = 
+	XQSettingsKey *ftuPluginDateCenrepKey =
 			new XQSettingsKey(XQSettingsKey::TargetCentralRepository,
 			                  KCRUidClockApp, KFtuPluginDate);
-	QString dateString = date.toString(mSettingsUtility->dateFormatString());  
+	QString dateString = date.toString(mSettingsUtility->dateFormatString());
 	settingsManager->writeItemValue(*ftuPluginDateCenrepKey,dateString);
 
 	// Cleanup.
--- a/clock/inc/clockcommon.h	Tue May 11 12:31:38 2010 +0100
+++ b/clock/inc/clockcommon.h	Tue May 18 13:16:49 2010 +0100
@@ -25,10 +25,17 @@
 const QString CITY_INFO_DB ("cityInfo.dat");
 const QString CLOCK_DEBUG_FILE("debug.txt");
 const QString PATH_TEXT("C:/");
+const int KMaximumCityListCount(50);
 
 const long int KCRUidNitz =  { 0x101F8876 };
+/** Active Protocol key */
+const long int KActiveProtocol = 0x00000001;
+/** Previous alarm time high */
+const long int KPreviousAlarmTime = 0x00000002;
 
-const long int KPreviousAlarmTime = 0x00000002;
+const long int KCRUidClockApp =  { 0x101F874D };
+/** Alarm snooze time key */
+const long int KClockAppSnoozeTime = 0x00000002;
 
 // Common definitions for docml.
 #define CLOCK_MAIN_VIEW_DOCML						":/xml/clockmainview.docml"
@@ -38,9 +45,14 @@
 #define CLOCK_WIDGET								"clockWidget"
 #define CLOCK_ALARMLIST								"alarmListView"
 #define CLOCK_NOALARMLABEL							"noAlarmLabel"
-#define WORLD_CLOCK_VIEW_DOCML						":/xml/worldclockview.docml"
-#define WORLD_CLOCK_VIEW							"worldClockView"
-#define CLOCK_VIEWS_STYLE_PATH						":/style"
+#define CLOCK_WORLD_VIEW_DOCML						":/xml/clockworldview.docml"
+#define CLOCK_WORLD_VIEW							"worldClockView"
+#define CLOCK_WORLD_CITYLIST						"worldClockCityListView"
+#define CLOCK_WORLD_HOMECITY						"homeCityWidget"
+#define CLOCK_WORLD_VIEW_PORTRAIT_NOHOMECITY_SECTION	"portrait-nohomecity"
+#define CLOCK_WORLD_VIEW_PORTRAIT_HOMECITY_SECTION		"portrait-homecity"
+#define CLOCK_WORLD_VIEW_LANDSCAPE_NOHOMECITY_SECTION	"landscape-nohomecity"
+#define CLOCK_WORLD_VIEW_LANDSCAPE_HOMECITY_SECTION		"landscape-homecity"
 
 #endif		// CLOCKCOMMON_H
 
--- a/clock/rom/clock.iby	Tue May 11 12:31:38 2010 +0100
+++ b/clock/rom/clock.iby	Tue May 18 13:16:49 2010 +0100
@@ -44,15 +44,15 @@
 // Binaries.
 file=ABI_DIR\BUILD_DIR\clockalarmclient.dll								SHARED_LIB_DIR\clockalarmclient.dll
 file=ABI_DIR\BUILD_DIR\timezoneclient.dll								SHARED_LIB_DIR\timezoneclient.dll
-file=ABI_DIR\BUILD_DIR\clockstopwatchengine.dll							SHARED_LIB_DIR\clockstopwatchengine.dll
 file=ABI_DIR\BUILD_DIR\clocksettingsutility.dll							SHARED_LIB_DIR\clocksettingsutility.dll
 file=ABI_DIR\BUILD_DIR\clocksettingsview.dll							SHARED_LIB_DIR\clocksettingsview.dll
-file=ABI_DIR\BUILD_DIR\clockwidgetproto.dll								SHARED_LIB_DIR\clockwidgetproto.dll
 file=ABI_DIR\BUILD_DIR\clockcityselectionlist.dll						SHARED_LIB_DIR\clockcityselectionlist.dll
 file=ABI_DIR\BUILD_DIR\clockalarmeditor.dll								SHARED_LIB_DIR\clockalarmeditor.dll
 file=ABI_DIR\BUILD_DIR\clockappcontroller.dll							SHARED_LIB_DIR\clockappcontroller.dll
 file=ABI_DIR\BUILD_DIR\clockviewmanager.dll								SHARED_LIB_DIR\clockviewmanager.dll
 file=ABI_DIR\BUILD_DIR\clockviews.dll									SHARED_LIB_DIR\clockviews.dll
+file=ABI_DIR\BUILD_DIR\clockwidget.dll									SHARED_LIB_DIR\clockwidget.dll
+file=ABI_DIR\BUILD_DIR\clockwidgetplugin.dll									SHARED_LIB_DIR\clockwidgetplugin.dll
 
 file=ABI_DIR\BUILD_DIR\datetimesettingsplugin.dll				        SHARED_LIB_DIR\datetimesettingsplugin.dll
 data=\epoc32\data\c\resource\qt\plugins\controlpanel\datetimesettingsplugin.qtplugin					resource\qt\plugins\controlpanel\datetimesettingsplugin.qtplugin
Binary file notes/data/translations/notes.qm has changed
--- a/notes/data/translations/notes.ts	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/translations/notes.ts	Tue May 18 13:16:49 2010 +0100
@@ -534,7 +534,7 @@
 </message>
 <message numerus="no" id="txt_notes_button_alarm_date">
     <comment>Layout ID Parent. Date  Push Button in Dataform to set alarm date for a To-do note. This action opens the date picker component</comment>        
-    <source>%1</source>
+    <source>%2</source>
     <translation variants="no" type="unfinished"></translation>
     <extra-loc-layout_id>txt_notes_button_2</extra-loc-layout_id>    
     <extra-loc-viewid>Notes_P8</extra-loc-viewid>
@@ -602,6 +602,16 @@
     <extra-loc-feature>No</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_tsw_caption_notes">
+    <comment>Notes application name  in Task Switcher</comment>        
+    <source>Notes</source>
+    <translation variants="no" type="unfinished"></translation>
+    <extra-loc-layout_id>txt_tsw_caption_notes</extra-loc-layout_id>    
+    <extra-loc-viewid>tsw01</extra-loc-viewid>
+    <extra-loc-positionid>caption</extra-loc-positionid>
+    <extra-loc-feature>ts</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_notes_subhead_collections">
     <comment>Sub title for Collections view</comment>        
     <source>Collections</source>
@@ -812,6 +822,16 @@
     <extra-loc-feature>No</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_notes_dpopinfo_note_moved_to_todos">
+    <comment>If a plain note is marked as To-do note in the list view, the marked item disappears from the current view with a notification dialog </comment>        
+    <source>Note moved to To-do&apos;s</source>
+    <translation variants="no" type="unfinished"></translation>
+    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
+    <extra-loc-viewid>Notes</extra-loc-viewid>
+    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
+    <extra-loc-feature>No</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_notes_menu_mark_as_done">
     <comment>Item specific menu item to mark a task as completed</comment>        
     <source>Mark as done</source>
--- a/notes/data/xml/notescollectionsview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/xml/notescollectionsview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="allNotesAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_all.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_all" name="icon"/>
     </object>
     <object name="collectionsViewAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_collections.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_collections" name="icon"/>
     </object>
     <object name="newNoteAction" type="HbAction">
-        <icon iconName="qtg_mono_create_event.svg" name="icon"/>
+        <icon iconName="qtg_mono_create_event" name="icon"/>
     </object>
     <widget name="notesCollectionView" type="HbView">
         <widget name="notesCollectionWidget" role="HbView:widget" type="HbWidget">
--- a/notes/data/xml/notesfavoriteview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/xml/notesfavoriteview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="allNotesAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_all.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_all" name="icon"/>
     </object>
     <object name="displayCollectionsAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_collections.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_collections" name="icon"/>
     </object>
     <object name="newNoteAction" type="HbAction">
-        <icon iconName="qtg_mono_create_event.svg" name="icon"/>
+        <icon iconName="qtg_mono_create_event" name="icon"/>
     </object>
     <object name="deleteAction" type="HbAction">
         <string locid="txt_common_opt_delete" name="text" value="Delete"/>
--- a/notes/data/xml/notesmainview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/xml/notesmainview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="allNotesAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_all.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_all" name="icon"/>
     </object>
     <object name="collectionsViewAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_collections.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_collections" name="icon"/>
     </object>
     <object name="newNoteAction" type="HbAction">
-        <icon iconName="qtg_mono_create_event.svg" name="icon"/>
+        <icon iconName="qtg_mono_create_event" name="icon"/>
     </object>
 	    <object name="deleteAction" type="HbAction">
         <string locid="txt_common_opt_delete" name="text" value="Delete"/>
@@ -15,7 +15,7 @@
     <widget name="notesMainView" type="HbView">
         <widget name="notesMainViewWidget" role="HbView:widget" type="HbWidget">
             <widget name="viewHeading" type="HbGroupBox">
-                <string locid="txt_notes_subhead_ln_notes" name="heading" value="%Ln Notes"/>
+                <string name="heading" value=" "/>
                 <real name="z" value="1"/>
                 <bool name="collapsable" value="FALSE"/>
             </widget>
--- a/notes/data/xml/notesnoteview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/xml/notesnoteview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="allNotesAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_all.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_all" name="icon"/>
     </object>
     <object name="displayCollectionsAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_collections.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_collections" name="icon"/>
     </object>
     <object name="newNoteAction" type="HbAction">
-        <icon iconName="qtg_mono_create_event.svg" name="icon"/>
+        <icon iconName="qtg_mono_create_event" name="icon"/>
     </object>
     <object name="deleteAction" type="HbAction">
         <string locid="txt_common_opt_delete" name="text" value="Delete"/>
--- a/notes/data/xml/notestodoview.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/data/xml/notestodoview.docml	Tue May 18 13:16:49 2010 +0100
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <hbdocument version="0.9">
     <object name="allNotesAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_all.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_all" name="icon"/>
     </object>
     <object name="displayCollectionsAction" type="HbAction">
-    	<icon iconName="qtg_mono_notes_collections.svg" name="icon"/>
+    	<icon iconName="qtg_mono_notes_collections" name="icon"/>
     </object>
     <object name="newTodoAction" type="HbAction">
-        <icon iconName="qtg_mono_create_event.svg" name="icon"/>
+        <icon iconName="qtg_mono_create_event" name="icon"/>
     </object>  
     <object name="deleteAction" type="HbAction">
         <string locid="txt_common_opt_delete" name="text" value="Delete"/>
@@ -15,7 +15,7 @@
     <widget name="notesTodoView" type="HbView">
         <widget name="notesTodoViewWidget" role="HbView:widget" type="HbWidget">
             <widget name="subtitleGroupBox" type="HbGroupBox">
-                <string locid="txt_notes_subhead_todos_ln_pending" name="heading" value="To-do's (%Ln Pending )"/>
+                <string name="heading" value=" "/>
                 <real name="z" value="1"/>
                 <bool name="collapsable" value="FALSE"/>
             </widget>
--- a/notes/notesui/bwins/notesmodelu.def	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/bwins/notesmodelu.def	Tue May 18 13:16:49 2010 +0100
@@ -41,4 +41,5 @@
 	?populateSourceModel@NotesModel@@AAEXXZ @ 40 NONAME ; void NotesModel::populateSourceModel(void)
 	?dateFormatString@NotesModel@@AAE?AVQString@@XZ @ 41 NONAME ; class QString NotesModel::dateFormatString(void)
 	?timeFormatString@NotesModel@@AAE?AVQString@@XZ @ 42 NONAME ; class QString NotesModel::timeFormatString(void)
+	?handleInstanceViewCreationCompleted@NotesModel@@AAEXH@Z @ 43 NONAME ; void NotesModel::handleInstanceViewCreationCompleted(int)
 
--- a/notes/notesui/bwins/notesviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/bwins/notesviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -4,14 +4,18 @@
 	??1NotesMainView@@UAE@XZ @ 3 NONAME ; NotesMainView::~NotesMainView(void)
 	??0NotesFavoriteView@@QAE@PAVQGraphicsWidget@@@Z @ 4 NONAME ; NotesFavoriteView::NotesFavoriteView(class QGraphicsWidget *)
 	??1NotesFavoriteView@@UAE@XZ @ 5 NONAME ; NotesFavoriteView::~NotesFavoriteView(void)
-	?setupView@NotesMainView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 6 NONAME ; void NotesMainView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
-	??0NotesTodoView@@QAE@PAVQGraphicsWidget@@@Z @ 7 NONAME ; NotesTodoView::NotesTodoView(class QGraphicsWidget *)
-	??0NotesMainView@@QAE@PAVQGraphicsWidget@@@Z @ 8 NONAME ; NotesMainView::NotesMainView(class QGraphicsWidget *)
-	??1NotesTodoView@@UAE@XZ @ 9 NONAME ; NotesTodoView::~NotesTodoView(void)
-	?setupView@NotesFavoriteView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 10 NONAME ; void NotesFavoriteView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
-	?setupView@NotesTodoView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 11 NONAME ; void NotesTodoView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
-	??0NotesCollectionView@@QAE@PAVQGraphicsWidget@@@Z @ 12 NONAME ; NotesCollectionView::NotesCollectionView(class QGraphicsWidget *)
-	??0NotesNoteView@@QAE@PAVQGraphicsWidget@@@Z @ 13 NONAME ; NotesNoteView::NotesNoteView(class QGraphicsWidget *)
-	??1NotesNoteView@@UAE@XZ @ 14 NONAME ; NotesNoteView::~NotesNoteView(void)
-	?setupView@NotesNoteView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 15 NONAME ; void NotesNoteView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
+	??0NotesNoteView@@QAE@PAVQGraphicsWidget@@@Z @ 6 NONAME ; NotesNoteView::NotesNoteView(class QGraphicsWidget *)
+	?setupView@NotesMainView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 7 NONAME ; void NotesMainView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
+	??0NotesTodoView@@QAE@PAVQGraphicsWidget@@@Z @ 8 NONAME ; NotesTodoView::NotesTodoView(class QGraphicsWidget *)
+	??0NotesMainView@@QAE@PAVQGraphicsWidget@@@Z @ 9 NONAME ; NotesMainView::NotesMainView(class QGraphicsWidget *)
+	??1NotesNoteView@@UAE@XZ @ 10 NONAME ; NotesNoteView::~NotesNoteView(void)
+	?setupAfterViewReady@NotesMainView@@QAEXXZ @ 11 NONAME ; void NotesMainView::setupAfterViewReady(void)
+	?setupView@NotesNoteView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 12 NONAME ; void NotesNoteView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
+	??1NotesTodoView@@UAE@XZ @ 13 NONAME ; NotesTodoView::~NotesTodoView(void)
+	?setupView@NotesFavoriteView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 14 NONAME ; void NotesFavoriteView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
+	?setupView@NotesTodoView@@QAEXAAVNotesAppControllerIf@@PAVNotesDocLoader@@@Z @ 15 NONAME ; void NotesTodoView::setupView(class NotesAppControllerIf &, class NotesDocLoader *)
+	??0NotesCollectionView@@QAE@PAVQGraphicsWidget@@@Z @ 16 NONAME ; NotesCollectionView::NotesCollectionView(class QGraphicsWidget *)
+	?updateTitle@NotesMainView@@QAEXXZ @ 17 NONAME ; void NotesMainView::updateTitle(void)
+	?populateListView@NotesCollectionView@@QAEXXZ @ 18 NONAME ; void NotesCollectionView::populateListView(void)
+	?updateTitle@NotesTodoView@@QAEXXZ @ 19 NONAME ; void NotesTodoView::updateTitle(void)
 
--- a/notes/notesui/eabi/notesmodelu.def	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/eabi/notesmodelu.def	Tue May 18 13:16:49 2010 +0100
@@ -41,4 +41,5 @@
 	_ZTV25NotesSortFilterProxyModel @ 40 NONAME
 	_ZN10NotesModel16dateFormatStringEv @ 41 NONAME
 	_ZN10NotesModel16timeFormatStringEv @ 42 NONAME
+	_ZN10NotesModel35handleInstanceViewCreationCompletedEi @ 43 NONAME
 
--- a/notes/notesui/eabi/notesviewsu.def	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/eabi/notesviewsu.def	Tue May 18 13:16:49 2010 +0100
@@ -1,52 +1,56 @@
 EXPORTS
-	_ZN13NotesMainView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 1 NONAME
-	_ZN13NotesMainViewC1EP15QGraphicsWidget @ 2 NONAME
-	_ZN13NotesMainViewC2EP15QGraphicsWidget @ 3 NONAME
-	_ZN13NotesMainViewD0Ev @ 4 NONAME
-	_ZN13NotesMainViewD1Ev @ 5 NONAME
-	_ZN13NotesMainViewD2Ev @ 6 NONAME
-	_ZN13NotesTodoView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 7 NONAME
-	_ZN13NotesTodoViewC1EP15QGraphicsWidget @ 8 NONAME
-	_ZN13NotesTodoViewC2EP15QGraphicsWidget @ 9 NONAME
-	_ZN13NotesTodoViewD0Ev @ 10 NONAME
-	_ZN13NotesTodoViewD1Ev @ 11 NONAME
-	_ZN13NotesTodoViewD2Ev @ 12 NONAME
-	_ZN17NotesFavoriteView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 13 NONAME
-	_ZN17NotesFavoriteViewC1EP15QGraphicsWidget @ 14 NONAME
-	_ZN17NotesFavoriteViewC2EP15QGraphicsWidget @ 15 NONAME
-	_ZN17NotesFavoriteViewD0Ev @ 16 NONAME
-	_ZN17NotesFavoriteViewD1Ev @ 17 NONAME
-	_ZN17NotesFavoriteViewD2Ev @ 18 NONAME
-	_ZN19NotesCollectionView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 19 NONAME
-	_ZN19NotesCollectionViewC1EP15QGraphicsWidget @ 20 NONAME
-	_ZN19NotesCollectionViewC2EP15QGraphicsWidget @ 21 NONAME
-	_ZN19NotesCollectionViewD0Ev @ 22 NONAME
-	_ZN19NotesCollectionViewD1Ev @ 23 NONAME
-	_ZN19NotesCollectionViewD2Ev @ 24 NONAME
-	_ZThn16_N13NotesMainViewD0Ev @ 25 NONAME
-	_ZThn16_N13NotesMainViewD1Ev @ 26 NONAME
-	_ZThn16_N13NotesTodoViewD0Ev @ 27 NONAME
-	_ZThn16_N13NotesTodoViewD1Ev @ 28 NONAME
-	_ZThn16_N17NotesFavoriteViewD0Ev @ 29 NONAME
-	_ZThn16_N17NotesFavoriteViewD1Ev @ 30 NONAME
-	_ZThn16_N19NotesCollectionViewD0Ev @ 31 NONAME
-	_ZThn16_N19NotesCollectionViewD1Ev @ 32 NONAME
-	_ZThn8_N13NotesMainViewD0Ev @ 33 NONAME
-	_ZThn8_N13NotesMainViewD1Ev @ 34 NONAME
-	_ZThn8_N13NotesTodoViewD0Ev @ 35 NONAME
-	_ZThn8_N13NotesTodoViewD1Ev @ 36 NONAME
-	_ZThn8_N17NotesFavoriteViewD0Ev @ 37 NONAME
-	_ZThn8_N17NotesFavoriteViewD1Ev @ 38 NONAME
-	_ZThn8_N19NotesCollectionViewD0Ev @ 39 NONAME
-	_ZThn8_N19NotesCollectionViewD1Ev @ 40 NONAME
-	_ZN13NotesNoteView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 41 NONAME
-	_ZN13NotesNoteViewC1EP15QGraphicsWidget @ 42 NONAME
-	_ZN13NotesNoteViewC2EP15QGraphicsWidget @ 43 NONAME
-	_ZN13NotesNoteViewD0Ev @ 44 NONAME
-	_ZN13NotesNoteViewD1Ev @ 45 NONAME
-	_ZN13NotesNoteViewD2Ev @ 46 NONAME
-	_ZThn16_N13NotesNoteViewD0Ev @ 47 NONAME
-	_ZThn16_N13NotesNoteViewD1Ev @ 48 NONAME
-	_ZThn8_N13NotesNoteViewD0Ev @ 49 NONAME
-	_ZThn8_N13NotesNoteViewD1Ev @ 50 NONAME
+	_ZN13NotesMainView19setupAfterViewReadyEv @ 1 NONAME
+	_ZN13NotesMainView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 2 NONAME
+	_ZN13NotesMainViewC1EP15QGraphicsWidget @ 3 NONAME
+	_ZN13NotesMainViewC2EP15QGraphicsWidget @ 4 NONAME
+	_ZN13NotesMainViewD0Ev @ 5 NONAME
+	_ZN13NotesMainViewD1Ev @ 6 NONAME
+	_ZN13NotesMainViewD2Ev @ 7 NONAME
+	_ZN13NotesNoteView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 8 NONAME
+	_ZN13NotesNoteViewC1EP15QGraphicsWidget @ 9 NONAME
+	_ZN13NotesNoteViewC2EP15QGraphicsWidget @ 10 NONAME
+	_ZN13NotesNoteViewD0Ev @ 11 NONAME
+	_ZN13NotesNoteViewD1Ev @ 12 NONAME
+	_ZN13NotesNoteViewD2Ev @ 13 NONAME
+	_ZN13NotesTodoView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 14 NONAME
+	_ZN13NotesTodoViewC1EP15QGraphicsWidget @ 15 NONAME
+	_ZN13NotesTodoViewC2EP15QGraphicsWidget @ 16 NONAME
+	_ZN13NotesTodoViewD0Ev @ 17 NONAME
+	_ZN13NotesTodoViewD1Ev @ 18 NONAME
+	_ZN13NotesTodoViewD2Ev @ 19 NONAME
+	_ZN17NotesFavoriteView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 20 NONAME
+	_ZN17NotesFavoriteViewC1EP15QGraphicsWidget @ 21 NONAME
+	_ZN17NotesFavoriteViewC2EP15QGraphicsWidget @ 22 NONAME
+	_ZN17NotesFavoriteViewD0Ev @ 23 NONAME
+	_ZN17NotesFavoriteViewD1Ev @ 24 NONAME
+	_ZN17NotesFavoriteViewD2Ev @ 25 NONAME
+	_ZN19NotesCollectionView9setupViewER20NotesAppControllerIfP14NotesDocLoader @ 26 NONAME
+	_ZN19NotesCollectionViewC1EP15QGraphicsWidget @ 27 NONAME
+	_ZN19NotesCollectionViewC2EP15QGraphicsWidget @ 28 NONAME
+	_ZN19NotesCollectionViewD0Ev @ 29 NONAME
+	_ZN19NotesCollectionViewD1Ev @ 30 NONAME
+	_ZN19NotesCollectionViewD2Ev @ 31 NONAME
+	_ZThn16_N13NotesMainViewD0Ev @ 32 NONAME
+	_ZThn16_N13NotesMainViewD1Ev @ 33 NONAME
+	_ZThn16_N13NotesNoteViewD0Ev @ 34 NONAME
+	_ZThn16_N13NotesNoteViewD1Ev @ 35 NONAME
+	_ZThn16_N13NotesTodoViewD0Ev @ 36 NONAME
+	_ZThn16_N13NotesTodoViewD1Ev @ 37 NONAME
+	_ZThn16_N17NotesFavoriteViewD0Ev @ 38 NONAME
+	_ZThn16_N17NotesFavoriteViewD1Ev @ 39 NONAME
+	_ZThn16_N19NotesCollectionViewD0Ev @ 40 NONAME
+	_ZThn16_N19NotesCollectionViewD1Ev @ 41 NONAME
+	_ZThn8_N13NotesMainViewD0Ev @ 42 NONAME
+	_ZThn8_N13NotesMainViewD1Ev @ 43 NONAME
+	_ZThn8_N13NotesNoteViewD0Ev @ 44 NONAME
+	_ZThn8_N13NotesNoteViewD1Ev @ 45 NONAME
+	_ZThn8_N13NotesTodoViewD0Ev @ 46 NONAME
+	_ZThn8_N13NotesTodoViewD1Ev @ 47 NONAME
+	_ZThn8_N17NotesFavoriteViewD0Ev @ 48 NONAME
+	_ZThn8_N17NotesFavoriteViewD1Ev @ 49 NONAME
+	_ZThn8_N19NotesCollectionViewD0Ev @ 50 NONAME
+	_ZThn8_N19NotesCollectionViewD1Ev @ 51 NONAME
+	_ZN13NotesMainView11updateTitleEv @ 52 NONAME
+	_ZN13NotesTodoView11updateTitleEv @ 53 NONAME
+	_ZN19NotesCollectionView16populateListViewEv @ 54 NONAME
 
Binary file notes/notesui/noteseditor/data/translations/notes.qm has changed
--- a/notes/notesui/noteseditor/data/translations/notes.ts	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/data/translations/notes.ts	Tue May 18 13:16:49 2010 +0100
@@ -534,7 +534,7 @@
 </message>
 <message numerus="no" id="txt_notes_button_alarm_date">
     <comment>Layout ID Parent. Date  Push Button in Dataform to set alarm date for a To-do note. This action opens the date picker component</comment>        
-    <source>%1</source>
+    <source>%2</source>
     <translation variants="no" type="unfinished"></translation>
     <extra-loc-layout_id>txt_notes_button_2</extra-loc-layout_id>    
     <extra-loc-viewid>Notes_P8</extra-loc-viewid>
@@ -602,6 +602,16 @@
     <extra-loc-feature>No</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_tsw_caption_notes">
+    <comment>Notes application name  in Task Switcher</comment>        
+    <source>Notes</source>
+    <translation variants="no" type="unfinished"></translation>
+    <extra-loc-layout_id>txt_tsw_caption_notes</extra-loc-layout_id>    
+    <extra-loc-viewid>tsw01</extra-loc-viewid>
+    <extra-loc-positionid>caption</extra-loc-positionid>
+    <extra-loc-feature>ts</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_notes_subhead_collections">
     <comment>Sub title for Collections view</comment>        
     <source>Collections</source>
@@ -812,6 +822,16 @@
     <extra-loc-feature>No</extra-loc-feature>
     <extra-loc-blank>False</extra-loc-blank>
 </message>
+<message numerus="no" id="txt_notes_dpopinfo_note_moved_to_todos">
+    <comment>If a plain note is marked as To-do note in the list view, the marked item disappears from the current view with a notification dialog </comment>        
+    <source>Note moved to To-do&apos;s</source>
+    <translation variants="no" type="unfinished"></translation>
+    <extra-loc-layout_id>qtl_notifdialog_pri2</extra-loc-layout_id>    
+    <extra-loc-viewid>Notes</extra-loc-viewid>
+    <extra-loc-positionid>dpopinfo</extra-loc-positionid>
+    <extra-loc-feature>No</extra-loc-feature>
+    <extra-loc-blank>False</extra-loc-blank>
+</message>
 <message numerus="no" id="txt_notes_menu_mark_as_done">
     <comment>Item specific menu item to mark a task as completed</comment>        
     <source>Mark as done</source>
--- a/notes/notesui/noteseditor/data/xml/notesnoteeditor.docml	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/data/xml/notesnoteeditor.docml	Tue May 18 13:16:49 2010 +0100
@@ -13,10 +13,10 @@
 	<string locid="txt_notes_opt_new_note" name="text" value="New note"/>
     </object>	
     <object name="deleteAction" type="HbAction">
-        <icon iconName="qtg_mono_delete.svg" name="icon"/>
+        <icon iconName="qtg_mono_delete" name="icon"/>
     </object>
     <object name="addToCalendarAction" type="HbAction">
-        <icon iconName="qtg_mono_add_to_calendar.svg" name="icon"/>
+        <icon iconName="qtg_mono_add_to_calendar" name="icon"/>
     </object>
     <widget name="notesEditorView" type="HbView">
         <widget name="noteEditorWidget" role="HbView:widget" type="HbWidget">
--- a/notes/notesui/noteseditor/inc/notesnoteeditor.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/inc/notesnoteeditor.h	Tue May 18 13:16:49 2010 +0100
@@ -48,7 +48,6 @@
 private:
 	void execute(AgendaEntry entry);
 	QString getDescription();
-	bool showDeleteConfirmationQuery();
 
 private slots:
 	void markNoteAsTodo();
@@ -63,6 +62,7 @@
 	void handleEntrySaveFromCalendar();
 	void handleCalendarEditorClosed();
 	void handleNewNoteAction();
+	void selectedAction(HbAction *action);
 
 private:
 	HbView *mEditor;
@@ -77,6 +77,9 @@
 	QPointer<HbAction> mMarkFavouriteAction;
 	QPointer<HbAction> mDiscardChangesAction;
 	QPointer<HbAction> mNewNoteAction;
+	HbAction *mDeleteNoteAction;
+	HbAction *mCancelDeleteAction;
+	ulong mEntryId;
 
 	NotesEditorDocLoader *mDocLoader;
 	NotesEditorPrivate* mOwner;
--- a/notes/notesui/noteseditor/inc/notestodoeditor.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/inc/notestodoeditor.h	Tue May 18 13:16:49 2010 +0100
@@ -71,7 +71,6 @@
 	void addMenu();
 	bool validAlarmSet();
 	void addDiscardChangesAction();
-	bool showDeleteConfirmationQuery();
 
 private slots:
 	void saveTodo();
@@ -80,6 +79,7 @@
 	void handleRemoveDescriptionAction();
 	void handleDeleteAction();
 	void handleDiscardChangesAction();
+	void selectedAction(HbAction *action);
 
 private:
 	NotesEditorPrivate* mOwner;
@@ -99,7 +99,8 @@
 	HbAction *mDoneAction;
 	HbAction *mDiscardAction;
 	QPointer<HbAction> mDescriptionAction;
-
+	HbAction *mDeleteTodoAction;
+	HbAction *mCancelDeleteAction;
 	HbGroupBox *mSubHeading;
 
 	NotesEditorDocLoader *mDocLoader;
--- a/notes/notesui/noteseditor/inc/notestodoeditorcustomitem.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/inc/notestodoeditorcustomitem.h	Tue May 18 13:16:49 2010 +0100
@@ -45,9 +45,11 @@
 private slots:
 	void launchTimePicker();
 	void launchDatePicker();
+	void selectDueDate();
+	void selectedAction(HbAction *action);
+
+private:
 	void handleOkAction();
-	void handleCancelAction();
-	void selectDueDate();
 
 private:
 	QPointer<HbDialog> mTimePickerDialog;
@@ -55,6 +57,10 @@
 	QPointer<HbPushButton> mTimeWidget;
 	QPointer<HbPushButton> mDateWidget;
 	QPointer<HbPushButton> mDueDateItem;
+
+	HbAction *mOkAction;
+	HbAction *mCancelAction;
+
 	NotesEditorPrivate* mNotesTodoeditorPvt;
 	bool mDueDatePickerIsActive;
 
--- a/notes/notesui/noteseditor/src/notesnoteeditor.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/src/notesnoteeditor.cpp	Tue May 18 13:16:49 2010 +0100
@@ -230,7 +230,7 @@
 
 	// Set our view as the current view.
 	HbMainWindow *window = hbInstance->allMainWindows().first();
-	HbAction *action = new HbAction(Hb::BackAction);
+	HbAction *action = new HbAction(Hb::BackNaviAction);
 	mEditor->setNavigationAction(action);
 	connect(
 			action, SIGNAL(triggered()),
@@ -295,19 +295,33 @@
  */
 void NotesNoteEditor::deleteNote()
 {
-	if (showDeleteConfirmationQuery()) {
-		mOwner->deleteNote();
+	HbMessageBox *confirmationQuery = new HbMessageBox(
+			HbMessageBox::MessageTypeQuestion);
+	confirmationQuery->setDismissPolicy(HbDialog::NoDismiss);
+	confirmationQuery->setTimeout(HbDialog::NoTimeout);
+	confirmationQuery->setIconVisible(true);
 
-		HbMainWindow *window = hbInstance->allMainWindows().first();
-		bool status = false;
+	QString displayText;
+	displayText = displayText.append(hbTrId("txt_notes_info_delete_note"));
+
+	confirmationQuery->setText(displayText);
 
-		// Now close the editor.
-		window->removeView(mEditor);
+	// Remove the default actions.
+	QList<QAction *> defaultActions = confirmationQuery->actions();
+	for (int index=0;index<defaultActions.count();index++) {
+		confirmationQuery->removeAction(defaultActions[index]);
+	}
+	defaultActions.clear();
 
-		mOwner->editingCompleted(status);
+	// Add delete and cancel actions.
+	mDeleteNoteAction = new HbAction(
+			hbTrId("txt_notes_button_dialog_delete"));
+	mCancelDeleteAction = new HbAction(
+			hbTrId("txt_common_button_cancel"));
+	confirmationQuery->addAction(mDeleteNoteAction);
+	confirmationQuery->addAction(mCancelDeleteAction);
 
-	}
-
+	confirmationQuery->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
@@ -526,32 +540,21 @@
 }
 
 /* !
-	Show the delete confirmation query.
+	Slot to handle the selected action from delete message box.
  */
-bool NotesNoteEditor::showDeleteConfirmationQuery()
+void NotesNoteEditor::selectedAction(HbAction *action)
 {
-	bool retValue(false);
-
-	HbMessageBox confirmationQuery(HbMessageBox::MessageTypeQuestion);
-	confirmationQuery.setDismissPolicy(HbDialog::NoDismiss);
-	confirmationQuery.setTimeout(HbDialog::NoTimeout);
-	confirmationQuery.setIconVisible(true);
+	if (action == mDeleteNoteAction) {
+		mOwner->deleteNote();
 
-	QString displayText;
-	displayText = displayText.append(hbTrId("txt_notes_info_delete_note"));
-
-	confirmationQuery.setText(displayText);
+		HbMainWindow *window = hbInstance->allMainWindows().first();
+		bool status = false;
 
-	confirmationQuery.setPrimaryAction(new HbAction(
-	    hbTrId("txt_notes_button_dialog_delete"), &confirmationQuery));
-	confirmationQuery.setSecondaryAction(new HbAction(
-	    hbTrId("txt_common_button_cancel"), &confirmationQuery));
-	HbAction *selected = confirmationQuery.exec();
-	if (selected == confirmationQuery.primaryAction()) {
-		retValue = true;
+		// Now close the editor.
+		window->removeView(mEditor);
+
+		mOwner->editingCompleted(status);
 	}
-
-	return retValue;
 }
 
 // End of file	--Don't remove this.
--- a/notes/notesui/noteseditor/src/notestodoeditor.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/src/notestodoeditor.cpp	Tue May 18 13:16:49 2010 +0100
@@ -32,10 +32,9 @@
 #include <HbAction>
 #include <HbComboBox>
 #include <HbExtendedLocale>
-#include <HbDateTimePicker>
 #include <HbLabel>
 #include <HbPushButton>
-#include <HbCheckbox>
+#include <HbCheckBox>
 #include <HbDialog>
 #include <HbGroupBox>
 #include <HbMessageBox>
@@ -296,7 +295,7 @@
 
 	// Store the current view and set our view as the current view.
 	HbMainWindow *window = hbInstance->allMainWindows().first();
-	HbAction *action = new HbAction(Hb::BackAction);
+	HbAction *action = new HbAction(Hb::BackNaviAction);
 	mEditor->setNavigationAction(action);
 	connect(
 			action, SIGNAL(triggered()),
@@ -636,14 +635,33 @@
  */
 void NotesTodoEditor::handleDeleteAction()
 {
-	if (showDeleteConfirmationQuery()) {
-	// Delete the to-do entry.
-	mOwner->deleteNote();
+	HbMessageBox *confirmationQuery = new HbMessageBox(
+			HbMessageBox::MessageTypeQuestion);
+	confirmationQuery->setDismissPolicy(HbDialog::NoDismiss);
+	confirmationQuery->setTimeout(HbDialog::NoTimeout);
+	confirmationQuery->setIconVisible(true);
+
+	QString displayText;
+	displayText = displayText.append(hbTrId("txt_notes_info_delete_todo_note"));
+
+	confirmationQuery->setText(displayText);
 
-	// Close the to-do editor.
-	close();
+	// Remove the default actions.
+	QList<QAction *> defaultActions = confirmationQuery->actions();
+	for (int index=0;index<defaultActions.count();index++) {
+		confirmationQuery->removeAction(defaultActions[index]);
 	}
+	defaultActions.clear();
 
+	// Add delete and cancel actions.
+	mDeleteTodoAction = new HbAction(
+			hbTrId("txt_notes_button_dialog_delete"));
+	mCancelDeleteAction = new HbAction(
+			hbTrId("txt_common_button_cancel"));
+	confirmationQuery->addAction(mDeleteTodoAction);
+	confirmationQuery->addAction((mCancelDeleteAction));
+
+	confirmationQuery->open(this, SLOT(selectedAction(HbAction*)));
 }
 
 /*!
@@ -653,35 +671,20 @@
 {
 	// Close the to-do editor
 	close();
-
 }
 
-/* !
-	Show the delete confirmation query.
+/*!
+	Slot to handle selected action in delete confirmation note.
  */
-bool NotesTodoEditor::showDeleteConfirmationQuery()
+void NotesTodoEditor::selectedAction(HbAction *action)
 {
-	bool retValue(false);
-
-	HbMessageBox confirmationQuery(HbMessageBox::MessageTypeQuestion);
-	confirmationQuery.setDismissPolicy(HbDialog::NoDismiss);
-	confirmationQuery.setTimeout(HbDialog::NoTimeout);
-	confirmationQuery.setIconVisible(true);
-
-	QString displayText;
-	displayText = displayText.append(hbTrId("txt_notes_info_delete_todo_note"));
+	if (action==mDeleteTodoAction) {
+		// Delete the to-do entry.
+		mOwner->deleteNote();
 
-	confirmationQuery.setText(displayText);
+		// Close the to-do editor.
+		close();
+	}
+}
 
-	confirmationQuery.setPrimaryAction(new HbAction(
-	    hbTrId("txt_notes_button_dialog_delete"), &confirmationQuery));
-	confirmationQuery.setSecondaryAction(new HbAction(
-	    hbTrId("txt_common_button_cancel"), &confirmationQuery));
-	HbAction *selected = confirmationQuery.exec();
-	if (selected == confirmationQuery.primaryAction()) {
-		retValue = true;
-	}
-
-	return retValue;
-}
 // End of file	--Don't remove this.
--- a/notes/notesui/noteseditor/src/notestodoeditorcustomitem.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/noteseditor/src/notestodoeditorcustomitem.cpp	Tue May 18 13:16:49 2010 +0100
@@ -187,7 +187,7 @@
 	mTimePickerDialog->setHeadingWidget(timeLabel);
 	// Create the tumbler.
 	HbDateTimePicker *timePicker = new HbDateTimePicker(mTimePickerDialog);
-	
+
 	// Set the format for time picker.
 	timePicker->setDisplayFormat(mNotesTodoeditorPvt->timeFormatString());
 	// Set the time needs to be displayed in time picker.
@@ -197,21 +197,15 @@
 	// Set the tumbler as the content widget.
 	mTimePickerDialog->setContentWidget(timePicker);
 
-
-	HbAction *okAction = new HbAction(QString("Ok"), mTimePickerDialog);
-	mTimePickerDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleOkAction()));
+	mOkAction = new HbAction(
+			hbTrId("txt_common_button_ok"), mTimePickerDialog);
+	mTimePickerDialog->addAction(mOkAction);
 
-	HbAction *cancelAction = new HbAction(QString("Cancel"), mTimePickerDialog);
-	mTimePickerDialog->setSecondaryAction(cancelAction);
+	mCancelAction = new HbAction(
+			hbTrId("txt_common_button_cancel"), mTimePickerDialog);
+	mTimePickerDialog->addAction(mCancelAction);
 
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleCancelAction()));
-
-	mTimePickerDialog->exec();
+	mTimePickerDialog->open(this, SLOT(selectedAction(HbAction *)));
 }
 
 /*!
@@ -238,32 +232,90 @@
 	datePicker->setDateRange(QDate::fromString("01/01/1900",
 		mNotesTodoeditorPvt->dateFormatString()), QDate::fromString("31/12/2100",
 			mNotesTodoeditorPvt->dateFormatString()));
-	
+
 	// Set the date format in date picker.
 	datePicker->setDisplayFormat(mNotesTodoeditorPvt->dateFormatString());
 	// Set the date needs to be in focus in date picker.
 	datePicker->setDate(QDate::fromString(mDateWidget->text(),
 		mNotesTodoeditorPvt->dateFormatString()));
 
-	
+
 	// Set the tumbler as the content widget.
 	mDatePickerDialog->setContentWidget(datePicker);
 
+	mOkAction = new HbAction(
+			hbTrId("txt_common_button_ok"), mDatePickerDialog);
+	mDatePickerDialog->addAction(mOkAction);
 
-	HbAction *okAction = new HbAction(QString("Ok"), mDatePickerDialog);
-	mDatePickerDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleOkAction()));
+	mCancelAction = new HbAction(
+			hbTrId("txt_common_button_cancel"), mDatePickerDialog);
+	mDatePickerDialog->addAction(mCancelAction);
+
+	mDatePickerDialog->open(this, SLOT(selectedAction(HbAction *)));
+}
+
+/*
+	Launches date picker for selecting the due date
+ */
+void NotesTodoEditorCustomItem::selectDueDate()
+{
+	if( mDueDateItem->isDown()) {
+		mDueDateItem->setDown(false);
+		return;
+	}
+
+	mDueDatePickerIsActive = true;
+
+	if (mDatePickerDialog) {
+		delete mDatePickerDialog;
+	}
+
+	// Create the dialog.
+	mDatePickerDialog = new HbDialog;
+	mDatePickerDialog->setTimeout(HbDialog::NoTimeout);
+	mDatePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
 
-	HbAction *cancelAction = new HbAction(QString("Cancel"), mDatePickerDialog);
-	mDatePickerDialog->setSecondaryAction(cancelAction);
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleCancelAction()));
+	// Create date picker
+	HbDateTimePicker *datePicker = new HbDateTimePicker(mDatePickerDialog);
+	// Set the min/max date for the editor.
+	datePicker->setDateRange(QDate::fromString("01/01/1900",
+		mNotesTodoeditorPvt->dateFormatString()), QDate::fromString("31/12/2100",
+			mNotesTodoeditorPvt->dateFormatString()));
+
+	// Set the format of date picker.
+	datePicker->setDisplayFormat(mNotesTodoeditorPvt->dateFormatString());
+	// Set the date needs to be displayed in datepicker.
+	datePicker->setDate(QDate::fromString(mDueDateItem->text(),
+		mNotesTodoeditorPvt->dateFormatString()));
+
+	// Set the heading text
+	HbLabel *label = new HbLabel(hbTrId("txt_notes_formlabel_due_date"));
+	mDatePickerDialog->setHeadingWidget(label);
+
+	// Set the tumbler as the content widget.
+	mDatePickerDialog->setContentWidget(datePicker);
 
-	mDatePickerDialog->exec();
+	mOkAction = new HbAction(
+			hbTrId("txt_common_button_ok"), mDatePickerDialog);
+	mDatePickerDialog->addAction(mOkAction);
+
+	mCancelAction = new HbAction(
+			hbTrId("txt_common_button_cancel"), mDatePickerDialog);
+	mDatePickerDialog->addAction(mCancelAction);
+
+	mDatePickerDialog->open(this, SLOT(selectedAction(HbAction *)));
 }
+
+/*!
+	 Slot to handle the selected action.
+ */
+void NotesTodoEditorCustomItem::selectedAction(HbAction *action)
+{
+	if (action == mOkAction) {
+		handleOkAction();
+	}
+}
+
 /*!
 	 Handles the ok action of date/time picker dialog.
  */
@@ -339,77 +391,6 @@
 			alarmDateItem->setContentWidgetData("alarmDate",dueDateText);
 		}
 	}
-
-	handleCancelAction();
-}
-/*!
-	 Handles the ok action of date/time picker dialog.
- */
-void NotesTodoEditorCustomItem::handleCancelAction()
-{
-	// Close the dialog.
-	if (mDatePickerDialog) {
-		mDatePickerDialog->close();
-		mDatePickerDialog->deleteLater();
-	}else {
-		mTimePickerDialog->close();
-		mTimePickerDialog->deleteLater();
-	}
-}
-
-/*
-	Launches date picker for selecting the due date
- */
-void NotesTodoEditorCustomItem::selectDueDate()
-{
-	if( mDueDateItem->isDown()) {
-		mDueDateItem->setDown(false);
-		return;
-	}
-
-	mDueDatePickerIsActive = true;
-
-	if (mDatePickerDialog) {
-		delete mDatePickerDialog;
-	}
-
-	// Create the dialog.
-	mDatePickerDialog = new HbDialog;
-	mDatePickerDialog->setTimeout(HbDialog::NoTimeout);
-	mDatePickerDialog->setDismissPolicy(HbDialog::NoDismiss);
-
-	// Create date picker
-	HbDateTimePicker *datePicker = new HbDateTimePicker(mDatePickerDialog);
-	// Set the min/max date for the editor.
-	datePicker->setDateRange(QDate::fromString("01/01/1900",
-		mNotesTodoeditorPvt->dateFormatString()), QDate::fromString("31/12/2100",
-			mNotesTodoeditorPvt->dateFormatString()));
-	
-	// Set the format of date picker.
-	datePicker->setDisplayFormat(mNotesTodoeditorPvt->dateFormatString());
-	// Set the date needs to be displayed in datepicker.
-	datePicker->setDate(QDate::fromString(mDueDateItem->text(),
-		mNotesTodoeditorPvt->dateFormatString()));
-
-	// Set the heading text
-	HbLabel *label = new HbLabel(hbTrId("txt_notes_formlabel_due_date"));
-	mDatePickerDialog->setHeadingWidget(label);
-
-	// Add actions to date picker
-	HbAction *okAction = new HbAction(tr("Ok"));
-	mDatePickerDialog->setPrimaryAction(okAction);
-	connect(
-			okAction, SIGNAL(triggered()),
-			this, SLOT(handleOkAction()));
-
-	HbAction *cancelAction = new HbAction(tr("Cancel"));
-	mDatePickerDialog->setSecondaryAction(cancelAction);
-	connect(
-			cancelAction, SIGNAL(triggered()),
-			this, SLOT(handleCancelAction()));
-
-	mDatePickerDialog->setContentWidget(datePicker);
-	mDatePickerDialog->exec();
 }
 
 // End of file	--Don't delete.
--- a/notes/notesui/notesmodel/inc/notesmodel.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesmodel/inc/notesmodel.h	Tue May 18 13:16:49 2010 +0100
@@ -55,6 +55,7 @@
 	void populateSourceModel(QList<ulong> ids);
 	void addEntryToModel(ulong id);
 	void removeEntryFromModel(ulong id);
+	void handleInstanceViewCreationCompleted(int status);
 
 private:
 	void modifyEntryInModel(ulong id, int row);
--- a/notes/notesui/notesmodel/src/notesmodel.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesmodel/src/notesmodel.cpp	Tue May 18 13:16:49 2010 +0100
@@ -68,8 +68,10 @@
 			mAgendaUtil, SIGNAL(entryUpdated(ulong)),
 			this, SLOT(updateSourceModel(ulong)));
 
-	// Populate the model in a different thread.
-	QTimer::singleShot(1, this, SLOT(populateSourceModel()));
+	// Connect for instance view creation completed signal
+	connect(
+			mAgendaUtil, SIGNAL(instanceViewCreationCompleted(int)),
+			this,SLOT(handleInstanceViewCreationCompleted(int)));
 }
 
 /*!
@@ -325,6 +327,15 @@
 }
 
 /*!
+	Populate the model after instance view creation.
+ */
+void NotesModel::handleInstanceViewCreationCompleted(int status)
+{
+	Q_UNUSED(status);
+	populateSourceModel();
+}
+
+/*!
 	Modifies the content of a given `row' with the data of the entry given by
 	`id'.
 
--- a/notes/notesui/notesviewmanager/inc/notesviewmanager.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviewmanager/inc/notesviewmanager.h	Tue May 18 13:16:49 2010 +0100
@@ -27,6 +27,7 @@
 
 // Forward declarations
 class HbMainWindow;
+class HbAction;
 class NotesMainView;
 class NotesModel;
 class AgendaUtil;
@@ -54,11 +55,12 @@
 	void loadTodoView();
 	void loadFavoritesView();
 	void loadNoteView();
-	bool showDeleteConfirmationQuery(ulong entryId);
 
 private slots:
 	void loadOtherViews();
 	void deleteEntryFromView(ulong entryId);
+	void selectedAction(HbAction *action);
+	void handleInstanceViewCreationCompleted(int status);
 
 private:
 	NotesAppControllerIf &mAppControllerIf;
@@ -70,6 +72,10 @@
 	NotesFavoriteView *mFavoriteView;
 	NotesNoteView *mNoteView;
 
+	HbAction *mDeleteAction;
+	HbAction *mCancelAction;
+	ulong mEntryId;
+
 private:
 	Q_DISABLE_COPY(NotesViewManager)
 };
--- a/notes/notesui/notesviewmanager/src/notesviewmanager.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviewmanager/src/notesviewmanager.cpp	Tue May 18 13:16:49 2010 +0100
@@ -59,6 +59,10 @@
 
 	mAgendaUtil = mAppControllerIf.agendaUtil();
 
+	connect(
+			mAgendaUtil, SIGNAL(instanceViewCreationCompleted(int)),
+			this,SLOT(handleInstanceViewCreationCompleted(int)));
+
 	// Load the main view at the start up.
 	loadNotesMainView();
 
@@ -249,21 +253,12 @@
 }
 
 /*!
-	 Delete the entry.
- */
-void NotesViewManager::deleteEntryFromView(ulong entryId)
-{
-	if (showDeleteConfirmationQuery(entryId)) {
-		// Delete the given note.
-		mAgendaUtil->deleteEntry(entryId);
-	}
-}
-
-/*!
 	Loads other views from the docml file.
  */
 void NotesViewManager::loadOtherViews()
 {
+	mMainView->setupAfterViewReady();
+
 	// Load the collection view.
 	loadNotesCollectionView();
 	// Load the to-do view.
@@ -280,38 +275,71 @@
 			this, SLOT(loadOtherViews()));
 }
 
-/* !
-	Show the delete confirmation query.
+/*!
+	 Delete the entry.
  */
-bool NotesViewManager::showDeleteConfirmationQuery(ulong noteId)
+void NotesViewManager::deleteEntryFromView(ulong entryId)
 {
-	bool retValue(false);
-
-	HbMessageBox confirmationQuery(HbMessageBox::MessageTypeQuestion);
-	confirmationQuery.setDismissPolicy(HbDialog::NoDismiss);
-	confirmationQuery.setTimeout(HbDialog::NoTimeout);
-	confirmationQuery.setIconVisible(true);
+	mEntryId = entryId;
+	HbMessageBox *confirmationQuery = new HbMessageBox(
+			HbMessageBox::MessageTypeQuestion);
+	confirmationQuery->setDismissPolicy(HbDialog::NoDismiss);
+	confirmationQuery->setTimeout(HbDialog::NoTimeout);
+	confirmationQuery->setIconVisible(true);
 
 	QString displayText;
 	QString x;
-	AgendaEntry entry = mAgendaUtil->fetchById(noteId);
+	AgendaEntry entry = mAgendaUtil->fetchById(entryId);
 	if (AgendaEntry::TypeTodo == entry.type()) {
 		displayText += hbTrId("txt_notes_info_delete_todo_note");
 	} else {
 		displayText += hbTrId("txt_notes_info_delete_note");
 	}
 
-	confirmationQuery.setText(displayText);
+	confirmationQuery->setText(displayText);
+
+	// Remove the default actions.
+	QList<QAction *> defaultActions = confirmationQuery->actions();
+	for (int index=0;index<defaultActions.count();index++) {
+		confirmationQuery->removeAction(defaultActions[index]);
+	}
+	defaultActions.clear();
+
+	// Add delete and cancel actions
+	mDeleteAction = new HbAction(hbTrId("txt_notes_button_dialog_delete"));
+	mCancelAction = new HbAction(hbTrId("txt_common_button_cancel"));
+
+	confirmationQuery->addAction(mDeleteAction);
+	confirmationQuery->addAction(mCancelAction);
+
+	confirmationQuery->open(this, SLOT(selectedAction(HbAction*)));
+}
 
-	confirmationQuery.setPrimaryAction(new HbAction(
-	    hbTrId("txt_notes_button_dialog_delete"), &confirmationQuery));
-	confirmationQuery.setSecondaryAction(new HbAction(
-	    hbTrId("txt_common_button_cancel"), &confirmationQuery));
-	HbAction *selected = confirmationQuery.exec();
-	if (selected == confirmationQuery.primaryAction()) {
-		retValue = true;
+/*!
+	Slot to handle the delete action
+ */
+void NotesViewManager::selectedAction(HbAction *action)
+{
+	if (action == mDeleteAction) {
+		// Delete the given note.
+		mAgendaUtil->deleteEntry(mEntryId);
 	}
+}
 
-	return retValue;
+/*!
+	Slot to handle instance view creation complete.
+ */
+void NotesViewManager::handleInstanceViewCreationCompleted(int status)
+{
+	Q_UNUSED(status)
+
+	// Update the title for main view.
+	mMainView->updateTitle();
+
+	// Populate collections view.
+	mCollectionView->populateListView();
+
+	// Update the title for to-do view.
+	mTodoView->updateTitle();
 }
 // End of file	--Don't remove this.
--- a/notes/notesui/notesviews/inc/notescollectionview.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/inc/notescollectionview.h	Tue May 18 13:16:49 2010 +0100
@@ -47,6 +47,7 @@
 public:
 	NOTESVIEWS_EXPORT void setupView(
 			NotesAppControllerIf &controllerIf, NotesDocLoader *docLoader);
+	NOTESVIEWS_EXPORT void populateListView();
 
 private slots:
 	void displayAllNotesView();
@@ -60,7 +61,7 @@
 	void handleActionStateChanged();
 
 private:
-	void populateListView();
+
 	int todosCount();
 	int recentNotesCount();
 
--- a/notes/notesui/notesviews/inc/notesfavoriteview.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/inc/notesfavoriteview.h	Tue May 18 13:16:49 2010 +0100
@@ -67,6 +67,8 @@
 	void handleActionStateChanged();
 	void handleOrientationChanged(Qt::Orientation);
 	void openNote();
+	void selectedMenuAction(HbAction *action);
+	void handleMenuClosed();
 
 private:
 	HbListView *mListView;
@@ -87,6 +89,7 @@
 	NotesModel *mNotesModel;
 	NotesSortFilterProxyModel *mProxyModel;
 	NotesEditor *mNotesEditor;
+	bool mIsLongTop;
 };
 
 #endif // NOTESFAVORITEVIEW_H
--- a/notes/notesui/notesviews/inc/notesmainview.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/inc/notesmainview.h	Tue May 18 13:16:49 2010 +0100
@@ -53,6 +53,9 @@
 public:
 	NOTESVIEWS_EXPORT void setupView(
 			NotesAppControllerIf &controllerIf, NotesDocLoader *docLoader);
+	NOTESVIEWS_EXPORT void setupAfterViewReady();
+	NOTESVIEWS_EXPORT void updateTitle();
+
 signals:
 	void deleteEntry(ulong entryId);
 
@@ -74,6 +77,8 @@
 	void updateSubTitle(ulong id=0);
 	void markNoteAsTodo();
 	void openNote();
+	void selectedMenuAction(HbAction *action);
+	void handleMenuClosed();
 
 private:
 	HbListView *mListView;
@@ -102,6 +107,7 @@
 	NotesSortFilterProxyModel *mProxyModel;
 	NotesEditor *mNotesEditor;
 	AgendaEventViewer *mAgendaEventViewer;
+	bool mIsLongTop;
 };
 
 #endif // NOTESMAINVIEW_H
--- a/notes/notesui/notesviews/inc/notesnoteview.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/inc/notesnoteview.h	Tue May 18 13:16:49 2010 +0100
@@ -49,7 +49,7 @@
 public:
 	NOTESVIEWS_EXPORT void setupView(
 			NotesAppControllerIf &controllerIf, NotesDocLoader *docLoader);
-	
+
 signals:
 	void deleteEntry(ulong entryId);
 
@@ -67,6 +67,8 @@
 	void handleActionStateChanged();
 	void handleOrientationChanged(Qt::Orientation);
 	void openNote();
+	void selectedMenuAction(HbAction *action);
+	void handleMenuClosed();
 
 private:
 	HbListView *mListView;
@@ -88,6 +90,7 @@
 	NotesModel *mNotesModel;
 	NotesSortFilterProxyModel *mProxyModel;
 	NotesEditor *mNotesEditor;
+	bool mIsLongTop;
 };
 
 #endif // NOTESNOTEVIEW_H
--- a/notes/notesui/notesviews/inc/notestodoview.h	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/inc/notestodoview.h	Tue May 18 13:16:49 2010 +0100
@@ -50,7 +50,8 @@
 public:
 	NOTESVIEWS_EXPORT void setupView(
 			NotesAppControllerIf &controllerIf, NotesDocLoader *docLoader);
-	
+	NOTESVIEWS_EXPORT void updateTitle();
+
 signals:
 	void deleteEntry(ulong entryId);
 
@@ -71,6 +72,8 @@
 	void handleOrientationChanged(Qt::Orientation);
 	void updateSubTitle(ulong id=0);
 	void openTodo();
+	void selectedMenuAction(HbAction *action);
+	void handleMenuClosed();
 
 private:
 	HbListView *mListView;
@@ -94,6 +97,7 @@
 	NotesSortFilterProxyModel *mProxyModel;
 	NotesEditor *mNotesEditor;
 	AgendaEventViewer *mAgendaEventViewer;
+	bool mIsLongTop;
 };
 
 #endif // NOTESTODOVIEW_H
--- a/notes/notesui/notesviews/src/notescollectionview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/src/notescollectionview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -117,9 +117,6 @@
 			mListView, SIGNAL(activated(const QModelIndex &)),
 			this, SLOT(handleActivated(const QModelIndex &)));
 
-	// Populate the content of the view.
-	populateListView();
-
 	// Get the toolbar/menu actions.
 	mAllNotesAction = static_cast<HbAction *> (
 			mDocLoader->findObject("allNotesAction"));
@@ -158,6 +155,46 @@
 }
 
 /*!
+	Populate the content of the view.
+ */
+void NotesCollectionView::populateListView()
+{
+	QStandardItemModel *model = new QStandardItemModel(this);
+	model->setColumnCount(1);
+
+	QString countString(hbTrId("txt_notes_list_note_count"));
+
+	// Add To-do's item.
+	QStandardItem *item = new QStandardItem();
+	QStringList todoStringList;
+	todoStringList.append(hbTrId("txt_notes_list_todos"));
+	todoStringList.append(countString.arg(QString::number(todosCount())));
+	item->setData(todoStringList, Qt::DisplayRole);
+	model->appendRow(item);
+
+	// Add Favorites item.
+	item = new QStandardItem();
+	QStringList favStringList;
+	favStringList.append(hbTrId("txt_notes_list_favorites"));
+	favStringList.append(countString.arg(mFavouriteModel->rowCount()));
+	item->setData(favStringList, Qt::DisplayRole);
+	model->appendRow(item);
+
+	// Add Recent notes item.
+	item = new QStandardItem();
+	QStringList notesStringList;
+	notesStringList.append(hbTrId("txt_notes_list_plain_notes"));
+	notesStringList.append(
+			countString.arg(QString::number(recentNotesCount())));
+	item->setData(notesStringList, Qt::DisplayRole);
+	model->appendRow(item);
+
+	HbStyleLoader::registerFilePath(":/style");
+	mListView->setLayoutName("custom");
+	mListView->setModel(model);
+}
+
+/*!
 	Displays all notes view.
  */
 void NotesCollectionView::displayAllNotesView()
@@ -315,46 +352,6 @@
 	mViewCollectionAction->setChecked(true);
 }
 
-/*!
-	Populate the content of the view.
- */
-void NotesCollectionView::populateListView()
-{
-	QStandardItemModel *model = new QStandardItemModel(this);
-	model->setColumnCount(1);
-
-	QString countString(hbTrId("txt_notes_list_note_count"));
-
-	// Add To-do's item.
-	QStandardItem *item = new QStandardItem();
-	QStringList todoStringList;
-	todoStringList.append(hbTrId("txt_notes_list_todos"));
-	todoStringList.append(countString.arg(QString::number(todosCount())));
-	item->setData(todoStringList, Qt::DisplayRole);
-	model->appendRow(item);
-
-	// Add Favorites item.
-	item = new QStandardItem();
-	QStringList favStringList;
-	favStringList.append(hbTrId("txt_notes_list_favorites"));
-	favStringList.append(countString.arg(mFavouriteModel->rowCount()));
-	item->setData(favStringList, Qt::DisplayRole);
-	model->appendRow(item);
-
-	// Add Recent notes item.
-	item = new QStandardItem();
-	QStringList notesStringList;
-	notesStringList.append(hbTrId("txt_notes_list_plain_notes"));
-	notesStringList.append(
-			countString.arg(QString::number(recentNotesCount())));
-	item->setData(notesStringList, Qt::DisplayRole);
-	model->appendRow(item);
-
-	HbStyleLoader::registerFilePath(":/style");
-	mListView->setLayoutName("custom");
-	mListView->setModel(model);
-}
-
 
 /*!
 	Returns the todos count
--- a/notes/notesui/notesviews/src/notesfavoriteview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/src/notesfavoriteview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -30,6 +30,7 @@
 #include <HbAbstractViewItem>
 #include <HbGroupBox>
 #include <HbListViewItem>
+#include <HbNotificationDialog>
 
 // User includes
 #include "notesfavoriteview.h"
@@ -56,7 +57,8 @@
 NotesFavoriteView::NotesFavoriteView(QGraphicsWidget *parent)
 :HbView(parent),
  mSelectedItem(0),
- mDeleteAction(0)
+ mDeleteAction(0),
+ mIsLongTop(false)
 {
 	// Nothing yet.
 }
@@ -176,35 +178,37 @@
  */
 void NotesFavoriteView::handleItemReleased(const QModelIndex &index)
 {
-	// Sanity check.
-	if (!index.isValid()) {
-		return;
-	}
+	if (!mIsLongTop) {
+		// Sanity check.
+		if (!index.isValid()) {
+			return;
+		}
 
-	// First get the id of the note and get the corresponding information from
-	// agendautil.
-	ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
+		// First get the id of the note and get the corresponding information from
+		// agendautil.
+		ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
 
-	if (0 >= noteId) {
-		// Something wrong.
-		return;
-	}
+		if (0 >= noteId) {
+			// Something wrong.
+			return;
+		}
 
-	// Get the entry details.
-	AgendaEntry entry = mAgendaUtil->fetchById(noteId);
+		// Get the entry details.
+		AgendaEntry entry = mAgendaUtil->fetchById(noteId);
+
+		if (entry.isNull()) {
 
-	if (entry.isNull()) {
+			// Entry invalid.
+			return;
+		}
 
-		// Entry invalid.
-		return;
+		// Now launch the editor with the obtained info.
+		mNotesEditor = new NotesEditor(mAgendaUtil, this);
+		connect(
+				mNotesEditor, SIGNAL(editingCompleted(bool)),
+				this, SLOT(handleEditingCompleted(bool)));
+		mNotesEditor->edit(entry);
 	}
-
-	// Now launch the editor with the obtained info.
-	mNotesEditor = new NotesEditor(mAgendaUtil, this);
-	connect(
-			mNotesEditor, SIGNAL(editingCompleted(bool)),
-			this, SLOT(handleEditingCompleted(bool)));
-	mNotesEditor->edit(entry);
 }
 
 /*!
@@ -219,6 +223,7 @@
 		HbAbstractViewItem *item, const QPointF &coords)
 {
 	mSelectedItem = item;
+	mIsLongTop = true;
 
 	// Get the entry of the selected item.
 	ulong noteId = item->modelIndex().data(
@@ -227,37 +232,28 @@
 
 	// Display a context specific menu.
 	HbMenu *contextMenu = new HbMenu();
+	connect(
+			contextMenu,SIGNAL(aboutToClose()),
+			this, SLOT(handleMenuClosed()));
 
 	// Add actions to the context menu.
 	mOpenAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_open"));
-	connect(
-			mOpenAction, SIGNAL(triggered()),
-			this, SLOT(openNote()));
 
 	mDeleteAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_delete"));
-	connect(
-			mDeleteAction, SIGNAL(triggered()),
-			this, SLOT(deleteNote()));
 
 	mRemoveFavoriteAction =
 			contextMenu->addAction(
 					hbTrId("txt_notes_menu_remove_from_favorites"));
 
-	connect(
-			mRemoveFavoriteAction, SIGNAL(triggered()),
-			this, SLOT(markNoteAsNotFavourite()));
-
 	mMarkTodoAction =
 			contextMenu->addAction(
 					hbTrId("txt_notes_menu_make_it_as_todo_note"));
-	connect(
-			mMarkTodoAction, SIGNAL(triggered()),
-			this, SLOT(markNoteAsTodo()));
 
 	// Show the menu.
-	contextMenu->exec(coords);
+	contextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	contextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -352,6 +348,14 @@
 
 	// Delete the old entry.
 	mAgendaUtil->deleteEntry(entry.id());
+
+	// Show the soft notification.
+	HbNotificationDialog *notificationDialog = new HbNotificationDialog();
+	notificationDialog->setTimeout(
+			HbNotificationDialog::ConfirmationNoteTimeout);
+	notificationDialog->setTitle(
+			hbTrId("txt_notes_dpopinfo_note_moved_to_todos"));
+	notificationDialog->show();
 }
 
 /*!
@@ -430,5 +434,29 @@
 	// Launch the notes editor with the obtained info.
 	mNotesEditor->edit(entry);
 }
+
+/*
+	Slot to handle the context menu actions.
+ */
+void NotesFavoriteView::selectedMenuAction(HbAction *action)
+{
+	if(action == mOpenAction) {
+		openNote();
+	} else if (action == mDeleteAction) {
+		deleteNote();
+	} else if (action ==mRemoveFavoriteAction){
+		markNoteAsNotFavourite();
+	} else if (action == mMarkTodoAction) {
+		markNoteAsTodo();
+	}
+}
+
+/*!
+	Slot to handle the context menu closed.
+ */
+void NotesFavoriteView::handleMenuClosed()
+{
+	mIsLongTop = false;
+}
 // End of file	--Don't remove this.
 
--- a/notes/notesui/notesviews/src/notesmainview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/src/notesmainview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -57,7 +57,8 @@
 NotesMainView::NotesMainView(QGraphicsWidget *parent)
 :HbView(parent),
  mSelectedItem(0),
- mDeleteAction(0)
+ mDeleteAction(0),
+ mIsLongTop(false)
 {
 	// Nothing yet.
 }
@@ -122,9 +123,26 @@
 			this, SLOT(scrollTo(QModelIndex)));
 
 	// Get the view heading label
-	mViewHeading = static_cast<HbLabel *> (
+/*	mViewHeading = static_cast<HbLabel *> (
+			mDocLoader->findWidget("viewHeading"));*/
+
+	mSubTitle = static_cast<HbGroupBox *>(
 			mDocLoader->findWidget("viewHeading"));
 
+	// Handles the orientation change for list items
+	HbMainWindow *window = hbInstance->allMainWindows().first();
+	handleOrientationChanged(window->orientation());
+	connect(
+			window, SIGNAL(orientationChanged(Qt::Orientation)),
+			this, SLOT(handleOrientationChanged(Qt::Orientation)));
+
+	// Set the graphics size for the icons.
+	HbListViewItem *prototype = mListView->listItemPrototype();
+	prototype->setGraphicsSize(HbListViewItem::SmallIcon);
+}
+
+void NotesMainView::setupAfterViewReady()
+{
 	// Get the toolbar/menu actions.
 	mAddNoteAction = static_cast<HbAction *> (
 			mDocLoader->findObject("newNoteAction"));
@@ -159,19 +177,6 @@
 			mViewCollectionAction, SIGNAL(triggered()),
 			this, SLOT(displayCollectionView()));
 
-	mSubTitle = static_cast<HbGroupBox *>(
-			mDocLoader->findWidget("viewHeading"));
-
-	// Handles the orientation change for list items
-	HbMainWindow *window = hbInstance->allMainWindows().first();
-	handleOrientationChanged(window->orientation());
-	connect(
-			window, SIGNAL(orientationChanged(Qt::Orientation)),
-			this, SLOT(handleOrientationChanged(Qt::Orientation)));
-
-	// Update sub heading text for main view.
-	updateSubTitle();
-
 	connect(
 			mAgendaUtil, SIGNAL(entryAdded(ulong)),
 			this,SLOT(updateSubTitle(ulong)));
@@ -181,10 +186,14 @@
 	connect(
 			mAgendaUtil, SIGNAL(entryUpdated(ulong)),
 			this, SLOT(updateSubTitle(ulong)));
+}
 
-	// Set the graphics size for the icons.
-	HbListViewItem *prototype = mListView->listItemPrototype();
-	prototype->setGraphicsSize(HbListViewItem::SmallIcon);
+/*
+	Updates the title text for the first launch
+ */
+void NotesMainView::updateTitle()
+{
+	updateSubTitle();
 }
 
 /*!
@@ -212,46 +221,48 @@
  */
 void NotesMainView::handleItemReleased(const QModelIndex &index)
 {
-	// Sanity check.
-	if (!index.isValid()) {
-		return;
-	}
+	if(!mIsLongTop) {
+		// Sanity check.
+		if (!index.isValid()) {
+			return;
+		}
 
-	// First get the id of the note and get the corresponding information from
-	// agendautil.
-	ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
+		// First get the id of the note and get the corresponding information from
+		// agendautil.
+		ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
 
-	if (0 >= noteId) {
-		// Something wrong.
-		return;
-	}
+		if (0 >= noteId) {
+			// Something wrong.
+			return;
+		}
 
-	// Get the entry details.
-	AgendaEntry entry = mAgendaUtil->fetchById(noteId);
-	if (entry.isNull()) {
-		// Entry invalid.
-		return;
-	}
+		// Get the entry details.
+		AgendaEntry entry = mAgendaUtil->fetchById(noteId);
+		if (entry.isNull()) {
+			// Entry invalid.
+			return;
+		}
 
-	if(AgendaEntry::TypeTodo == entry.type()) {
-		// Construct agenda event viewer.
-		mAgendaEventViewer = new AgendaEventViewer(mAgendaUtil, this);
+		if(AgendaEntry::TypeTodo == entry.type()) {
+			// Construct agenda event viewer.
+			mAgendaEventViewer = new AgendaEventViewer(mAgendaUtil, this);
 
-		connect(
-				mAgendaEventViewer, SIGNAL(viewingCompleted(const QDate)),
-				this, SLOT(handleViewingCompleted()));
-		// Launch agenda event viewer
-		mAgendaEventViewer->view(
-				entry, AgendaEventViewer::ActionEditDelete);
-	}else if(AgendaEntry::TypeNote == entry.type()) {
-		// Construct notes editor.
-		mNotesEditor = new NotesEditor(mAgendaUtil, this);
-		connect(
-				mNotesEditor, SIGNAL(editingCompleted(bool)),
-				this, SLOT(handleEditingCompleted(bool)));
+			connect(
+					mAgendaEventViewer, SIGNAL(viewingCompleted(const QDate)),
+					this, SLOT(handleViewingCompleted()));
+			// Launch agenda event viewer
+			mAgendaEventViewer->view(
+					entry, AgendaEventViewer::ActionEditDelete);
+		}else if(AgendaEntry::TypeNote == entry.type()) {
+			// Construct notes editor.
+			mNotesEditor = new NotesEditor(mAgendaUtil, this);
+			connect(
+					mNotesEditor, SIGNAL(editingCompleted(bool)),
+					this, SLOT(handleEditingCompleted(bool)));
 
-		// Launch the notes editor with the obtained info.
-		mNotesEditor->edit(entry);
+			// Launch the notes editor with the obtained info.
+			mNotesEditor->edit(entry);
+		}
 	}
 }
 
@@ -266,6 +277,7 @@
 void NotesMainView::handleItemLongPressed(
 		HbAbstractViewItem *item, const QPointF &coords)
 {
+	mIsLongTop = true;
 	mSelectedItem = item;
 
 	ulong noteId = item->modelIndex().data(
@@ -274,74 +286,48 @@
 
 	// Display a context specific menu.
 	HbMenu *contextMenu = new HbMenu();
+	connect(
+			contextMenu,SIGNAL(aboutToClose()),
+			this, SLOT(handleMenuClosed()));
+
 	mOpenAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_open"));
-	connect(
-			mOpenAction, SIGNAL(triggered()),
-			this, SLOT(openNote()));
 
 	// Add actions to the context menu.
 	if (AgendaEntry::TypeTodo == entry.type()) {
 		mEditTodoAction =
 				contextMenu->addAction(hbTrId("txt_common_menu_edit"));
-		connect(
-				mEditTodoAction, SIGNAL(triggered()),
-				this, SLOT(editTodo()));
 	}
 
 	mDeleteAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_delete"));
-	connect(
-			mDeleteAction, SIGNAL(triggered()),
-			this, SLOT(deleteNote()));
 
 	if (AgendaEntry::TypeNote == entry.type()) {
 		if (entry.favourite()) {
 			mMakeFavouriteAction = contextMenu->addAction(
 					hbTrId("txt_notes_menu_remove_from_favorites"));
-
-			connect(
-					mMakeFavouriteAction, SIGNAL(triggered()),
-					this, SLOT(markNoteAsFavourite()));
-
 		} else {
 			mMakeFavouriteAction = contextMenu->addAction(
 					hbTrId("txt_notes_menu_mark_as_favorite"));
-
-			connect(
-					mMakeFavouriteAction, SIGNAL(triggered()),
-					this, SLOT(markNoteAsFavourite()));
 		}
 
 		mMarkTodoAction =
 				contextMenu->addAction(
 						hbTrId("txt_notes_menu_make_it_as_todo_note"));
-		connect(
-				mMarkTodoAction, SIGNAL(triggered()),
-				this, SLOT(markNoteAsTodo()));
 
 	} else if (AgendaEntry::TypeTodo == entry.type()) {
 		if (AgendaEntry::TodoNeedsAction == entry.status()) {
 			mTodoStatusAction = contextMenu->addAction(
 					hbTrId("txt_notes_menu_mark_as_done"));
-
-			connect(
-					mTodoStatusAction , SIGNAL(triggered()),
-					this, SLOT(markTodoStatus()));
-
 		} else if (AgendaEntry::TodoCompleted == entry.status()) {
 			mTodoStatusAction = contextMenu->addAction(
 					hbTrId("txt_notes_menu_mark_as_not_done"));
-
-			connect(
-					mTodoStatusAction , SIGNAL(triggered()),
-					this, SLOT(markTodoStatus()));
 		}
 	}
 
 	// Show the menu.
-	contextMenu->exec(coords);
-
+	contextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	contextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -453,10 +439,7 @@
  */
 void NotesMainView::handleViewingCompleted()
 {
-
-
 	mAgendaEventViewer->deleteLater();
-
 }
 
 /*!
@@ -473,7 +456,6 @@
 
 void NotesMainView::editTodo()
 {
-
 	// Get the selected list item index
 	QModelIndex index = mSelectedItem->modelIndex();
 	if (!index.isValid()) {
@@ -619,4 +601,33 @@
 				entry, AgendaEventViewer::ActionEditDelete);
 	}
 }
+
+/*!
+	 Slot to handle the selected context menu actions
+ */
+void NotesMainView::selectedMenuAction(HbAction *action)
+{
+	if (action == mOpenAction) {
+		openNote();
+	} else if (action == mEditTodoAction) {
+		editTodo();
+	} else if (action == mDeleteAction) {
+		deleteNote();
+	} else if (action == mMakeFavouriteAction) {
+		markNoteAsFavourite();
+	} else if (action == mMarkTodoAction) {
+		markNoteAsTodo();
+	} else if (action == mTodoStatusAction) {
+		markTodoStatus();
+	}
+}
+
+/*!
+	Slot to handle the context menu closed.
+ */
+void NotesMainView::handleMenuClosed()
+{
+	mIsLongTop = false;
+}
+
 // End of file	--Don't remove this.
--- a/notes/notesui/notesviews/src/notesnoteview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/src/notesnoteview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -26,6 +26,7 @@
 #include <HbGroupBox>
 #include <HbListViewItem>
 #include <HbInstance>
+#include <HbNotificationDialog>
 
 // User includes
 #include "notesnoteview.h"
@@ -53,7 +54,8 @@
 NotesNoteView::NotesNoteView(QGraphicsWidget *parent)
 :HbView(parent),
  mSelectedItem(0),
- mDeleteAction(0)
+ mDeleteAction(0),
+ mIsLongTop(false)
  {
 	// Nothing yet.
  }
@@ -170,34 +172,36 @@
  */
 void NotesNoteView::handleItemReleased(const QModelIndex &index)
 {
-	// Sanity check.
-	if (!index.isValid()) {
-		return;
-	}
+	if(!mIsLongTop) {
+		// Sanity check.
+		if (!index.isValid()) {
+			return;
+		}
 
-	// First get the id of the note and get the corresponding information from
-	// agendautil.
-	ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
+		// First get the id of the note and get the corresponding information from
+		// agendautil.
+		ulong noteId = index.data(NotesNamespace::IdRole).value<qulonglong>();
 
-	if (0 >= noteId) {
-		// Something wrong.
-		return;
-	}
+		if (0 >= noteId) {
+			// Something wrong.
+			return;
+		}
 
-	// Get the entry details.
-	AgendaEntry entry = mAgendaUtil->fetchById(noteId);
+		// Get the entry details.
+		AgendaEntry entry = mAgendaUtil->fetchById(noteId);
 
-	if (entry.isNull()) {
-		// Entry invalid.
-		return;
+		if (entry.isNull()) {
+			// Entry invalid.
+			return;
+		}
+
+		// Now launch the editor with the obtained info.
+		mNotesEditor = new NotesEditor(mAgendaUtil, this);
+		connect(
+				mNotesEditor, SIGNAL(editingCompleted(bool)),
+				this, SLOT(handleEditingCompleted(bool)));
+		mNotesEditor->edit(entry);
 	}
-
-	// Now launch the editor with the obtained info.
-	mNotesEditor = new NotesEditor(mAgendaUtil, this);
-	connect(
-			mNotesEditor, SIGNAL(editingCompleted(bool)),
-			this, SLOT(handleEditingCompleted(bool)));
-	mNotesEditor->edit(entry);
 }
 
 /*!
@@ -212,6 +216,7 @@
 		HbAbstractViewItem *item, const QPointF &coords)
 {
 	mSelectedItem = item;
+	mIsLongTop = true;
 
 	ulong noteId = item->modelIndex().data(
 			NotesNamespace::IdRole).value<qulonglong>();
@@ -219,48 +224,32 @@
 
 	// Display a context specific menu.
 	HbMenu *contextMenu = new HbMenu();
+	connect(
+			contextMenu,SIGNAL(aboutToClose()),
+			this, SLOT(handleMenuClosed()));
 
 	// Add actions to the context menu.
 	mOpenAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_open"));
-	connect(
-			mOpenAction, SIGNAL(triggered()),
-			this, SLOT(openNote()));
 
 	mDeleteAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_delete"));
-	connect(
-			mDeleteAction, SIGNAL(triggered()),
-			this, SLOT(deleteNote()));
 
 	if (AgendaEntry::TypeNote == entry.type()) {
 		if (entry.favourite()) {
-			mMakeFavouriteAction =
-					contextMenu->addAction(
+			mMakeFavouriteAction = contextMenu->addAction(
 							hbTrId("txt_notes_menu_remove_from_favorites"));
-
-			connect(
-					mMakeFavouriteAction, SIGNAL(triggered()),
-					this, SLOT(markNoteAsFavourite()));
-
 		} else {
-			mMakeFavouriteAction =
-					contextMenu->addAction(
+			mMakeFavouriteAction = contextMenu->addAction(
 							hbTrId("txt_notes_menu_mark_as_favorite"));
-
-			connect(
-					mMakeFavouriteAction, SIGNAL(triggered()),
-					this, SLOT(markNoteAsFavourite()));
 		}
 		mMarkTodoAction = contextMenu->addAction(
 				hbTrId("txt_notes_menu_make_it_as_todo_note"));
-		connect(
-				mMarkTodoAction, SIGNAL(triggered()),
-				this, SLOT(markNoteAsTodo()));
 	}
 
 	// Show the menu.
-	contextMenu->exec(coords);
+	contextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	contextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -357,6 +346,13 @@
 	// Delete the old entry.
 	mAgendaUtil->deleteEntry(entry.id());
 
+	// Show the soft notification.
+	HbNotificationDialog *notificationDialog = new HbNotificationDialog();
+	notificationDialog->setTimeout(
+			HbNotificationDialog::ConfirmationNoteTimeout);
+	notificationDialog->setTitle(
+			hbTrId("txt_notes_dpopinfo_note_moved_to_todos"));
+	notificationDialog->show();
 }
 
 /*!
@@ -437,5 +433,29 @@
 	// Launch the notes editor with the obtained info.
 	mNotesEditor->edit(entry);
 }
+
+/*!
+	Slot to handle context menu actions.
+ */
+void NotesNoteView::selectedMenuAction(HbAction *action)
+{
+	if (action == mOpenAction) {
+		openNote();
+	} else if (action == mDeleteAction) {
+		deleteNote();
+	} else if (action == mMakeFavouriteAction) {
+		markNoteAsFavourite();
+	} else if (action == mMarkTodoAction) {
+		markNoteAsTodo();
+	}
+}
+
+/*!
+	Slot to handle the context menu closed.
+ */
+void NotesNoteView::handleMenuClosed()
+{
+	mIsLongTop = false;
+}
 // End of file	--Don't remove this.
 
--- a/notes/notesui/notesviews/src/notestodoview.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/notes/notesui/notesviews/src/notestodoview.cpp	Tue May 18 13:16:49 2010 +0100
@@ -57,7 +57,8 @@
 NotesTodoView::NotesTodoView(QGraphicsWidget *parent)
 :HbView(parent),
  mSelectedItem(0),
- mDeleteAction(0)
+ mDeleteAction(0),
+ mIsLongTop(false)
 {
 	// Nothing yet.
 }
@@ -149,9 +150,6 @@
 	mSubTitle = static_cast<HbGroupBox *>(
 			mDocLoader->findWidget("subtitleGroupBox"));
 
-	// Update sub heading text for to-do collections view.
-	updateSubTitle();
-
 	connect(
 			mAgendaUtil, SIGNAL(entryAdded(ulong)),
 			this,SLOT(updateSubTitle(ulong)));
@@ -167,6 +165,14 @@
 	prototype->setGraphicsSize(HbListViewItem::SmallIcon);
 }
 
+/*
+	Updates the title text for the first launch
+ */
+void NotesTodoView::updateTitle()
+{
+	updateSubTitle();
+}
+
 /*!
 	Opens the to-do editor to create a new to-do.
  */
@@ -190,28 +196,30 @@
  */
 void NotesTodoView::handleItemReleased(const QModelIndex &index)
 {
-	// Sanity check.
-	if (!index.isValid()) {
-		return;
-	}
+	if(!mIsLongTop) {
+		// Sanity check.
+		if (!index.isValid()) {
+			return;
+		}
 
-	// First get the id of the to-do and get the corresponding information from
-	// agendautil.
-	ulong toDoId = index.data(NotesNamespace::IdRole).value<qulonglong>();
+		// First get the id of the to-do and get the corresponding information from
+		// agendautil.
+		ulong toDoId = index.data(NotesNamespace::IdRole).value<qulonglong>();
 
-	if (0 >= toDoId) {
-		// Something wrong.
-		return;
-	}
+		if (0 >= toDoId) {
+			// Something wrong.
+			return;
+		}
 
-	// Construct agenda event viewer.
-	mAgendaEventViewer = new AgendaEventViewer(mAgendaUtil, this);
+		// Construct agenda event viewer.
+		mAgendaEventViewer = new AgendaEventViewer(mAgendaUtil, this);
 
-	connect(
-			mAgendaEventViewer, SIGNAL(viewingCompleted(const QDate)),
-			this, SLOT(handleViewingCompleted()));
-	// Launch agenda event viewer
-	mAgendaEventViewer->view(toDoId, AgendaEventViewer::ActionEditDelete);
+		connect(
+				mAgendaEventViewer, SIGNAL(viewingCompleted(const QDate)),
+				this, SLOT(handleViewingCompleted()));
+		// Launch agenda event viewer
+		mAgendaEventViewer->view(toDoId, AgendaEventViewer::ActionEditDelete);
+	}
 }
 
 /*!
@@ -226,6 +234,7 @@
 		HbAbstractViewItem *item, const QPointF &coords)
 {
 	mSelectedItem = item;
+	mIsLongTop = true;
 
 	// Get the entry of the selected item.
 	ulong noteId = item->modelIndex().data(
@@ -234,46 +243,34 @@
 
 	// Display a context specific menu.
 	HbMenu *contextMenu = new HbMenu();
+	connect(
+			contextMenu,SIGNAL(aboutToClose()),
+			this, SLOT(handleMenuClosed()));
 
 	// Add actions to the context menu.
 	mOpenAction =
 			contextMenu->addAction(hbTrId("txt_common_menu_open"));
-	connect(
-			mOpenAction, SIGNAL(triggered()),
-			this, SLOT(openTodo()));
 
 	mEditAction = contextMenu->addAction(
 			hbTrId("txt_common_menu_edit"));
-	connect(
-			mEditAction, SIGNAL(triggered()),
-			this, SLOT(editTodo()));
 
 	mDeleteAction = contextMenu->addAction(
 			hbTrId("txt_common_menu_delete"));
-	connect(
-			mDeleteAction, SIGNAL(triggered()),
-			this, SLOT(deleteTodo()));
 
 	if (AgendaEntry::TypeTodo == entry.type()) {
 		if (AgendaEntry::TodoNeedsAction == entry.status()) {
 			mTodoStatusAction = contextMenu->addAction(
 					hbTrId("txt_notes_menu_mark_as_done"));
-			connect(
-					mTodoStatusAction , SIGNAL(triggered()),
-					this, SLOT(markTodoStatus()));
-
 		} else if (AgendaEntry::TodoCompleted == entry.status()) {
 			mTodoStatusAction =
 					contextMenu->addAction(
 							hbTrId("txt_notes_menu_mark_as_not_done"));
-			connect(
-					mTodoStatusAction , SIGNAL(triggered()),
-					this, SLOT(markTodoStatus()));
 		}
 	}
 
 	// Show the menu.
-	contextMenu->exec(coords);
+	contextMenu->open(this, SLOT(selectedMenuAction(HbAction*)));
+	contextMenu->setPreferredPos(coords);
 }
 
 /*!
@@ -465,4 +462,28 @@
 			entry, AgendaEventViewer::ActionEditDelete);
 }
 
+/*
+	Slot to handle the context menu actions.
+ */
+void NotesTodoView::selectedMenuAction(HbAction *action)
+{
+	if (action == mOpenAction) {
+		openTodo();
+	} else if (action == mEditAction) {
+		editTodo();
+	} else if (action == mDeleteAction) {
+		deleteTodo();
+	} else if (action == mTodoStatusAction) {
+		markTodoStatus();
+	}
+}
+
+
+/*!
+	Slot to handle the context menu closed.
+ */
+void NotesTodoView::handleMenuClosed()
+{
+	mIsLongTop = false;
+}
 // End of file	--Don't remove this.
--- a/organizer_plat/agenda_interface_api/inc/agendautil.h	Tue May 11 12:31:38 2010 +0100
+++ b/organizer_plat/agenda_interface_api/inc/agendautil.h	Tue May 18 13:16:49 2010 +0100
@@ -120,6 +120,8 @@
 	void entryDeleted(ulong id);
 	void entryUpdated(ulong id);
 	void entriesDeleted(int status);
+	void entryViewCreationCompleted(int status);
+	void instanceViewCreationCompleted(int status);
 
 private:
 	friend class AgendaUtilPrivate;
--- a/organizer_plat/calendar_editor_api/tsrc/unittest_caleneditor/src/unittest_caleneditor.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/organizer_plat/calendar_editor_api/tsrc/unittest_caleneditor/src/unittest_caleneditor.cpp	Tue May 18 13:16:49 2010 +0100
@@ -2,7 +2,7 @@
  * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
  * All rights reserved.
  * This component and the accompanying materials are made available
- * under the terms of the License "Eclipse Public License v1.0"
+ * under the terms of "Eclipse Public License v1.0"
  * which accompanies this distribution, and is available
  * at the URL "http://www.eclipse.org/legal/epl-v10.html".
  *
--- a/organizer_plat/calendar_editor_api/tsrc/unittest_caleneditor/unittest_caleneditor.pro	Tue May 11 12:31:38 2010 +0100
+++ b/organizer_plat/calendar_editor_api/tsrc/unittest_caleneditor/unittest_caleneditor.pro	Tue May 18 13:16:49 2010 +0100
@@ -2,7 +2,7 @@
 # Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 # All rights reserved.
 # This component and the accompanying materials are made available
-# under the terms of the License "Eclipse Public License v1.0"
+# under the terms of "Eclipse Public License v1.0"
 # which accompanies this distribution, and is available
 # at the URL "http://www.eclipse.org/legal/epl-v10.html".
 #
--- a/organizer_plat/calendar_exporter_api/inc/CalenExporter.h	Tue May 11 12:31:38 2010 +0100
+++ b/organizer_plat/calendar_exporter_api/inc/CalenExporter.h	Tue May 18 13:16:49 2010 +0100
@@ -25,7 +25,7 @@
 #include <e32base.h>
 #include <f32file.h>    // for TParse
 #include <s32mem.h>
-#include <agnexportobserver.h>
+#include <AgnExportObserver.h>
 
 
 // FORWARD DECLARATIONS
--- a/organizer_plat/calendar_importer_api/inc/CalenImporter.h	Tue May 11 12:31:38 2010 +0100
+++ b/organizer_plat/calendar_importer_api/inc/CalenImporter.h	Tue May 18 13:16:49 2010 +0100
@@ -23,7 +23,7 @@
 //  INCLUDES
 #include <e32base.h>
 #include <f32file.h>
-#include <agnimportobserver.h>
+#include <AgnImportObserver.h>
 
 
 
--- a/pimappservices/calendar/client/src/calentryimpl.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappservices/calendar/client/src/calentryimpl.cpp	Tue May 18 13:16:49 2010 +0100
@@ -1510,8 +1510,6 @@
 
 void CCalEntryImpl::SetDTStampL(const TCalTime& aDTStampTime)
 	{
-	__ASSERT_ALWAYS( EntryTypeL() != CCalEntry::ENote,
-					User::Leave(KErrNotSupported));
 	LoadFullEntryL();
 	iFullEntry->SetDTStampUtcL(aDTStampTime.TimeUtcL());
 	}
--- a/pimappservices/calendar/tsrc/tcal_dataexchange.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappservices/calendar/tsrc/tcal_dataexchange.cpp	Tue May 18 13:16:49 2010 +0100
@@ -133,7 +133,7 @@
 _LIT(KSUMMARY,          "First Entry");
 _LIT(KAttachmentFile, "tcal_datax_attachment.vcs");
 _LIT(KAttachmentCidFile, "c:\\calendar_attachments\\tcal_attach.jpg");
-_LIT(KCalendarAttachmentsDir, "c:\\private\\10003a5b\\attachments");
+
 
 _LIT8(KTzEuropeHelsinki, "Europe/Helsinki");
 _LIT8(KTzAmericaVancouver, "America/Vancouver");
--- a/pimappservices/calendar/tsrc/tcal_dataexchange.mmp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappservices/calendar/tsrc/tcal_dataexchange.mmp	Tue May 18 13:16:49 2010 +0100
@@ -22,8 +22,10 @@
 SOURCE			tcal_dataexchange.cpp
 
 USERINCLUDE		.
+APP_LAYER_SYSTEMINCLUDE
 SYSTEMINCLUDE	/epoc32/include
 
+
 LIBRARY			calinterimapi.lib
 LIBRARY			euser.lib estor.lib efsrv.lib caltestlib.lib
 LIBRARY		    pimtestclient.lib
--- a/pimappservices/calendarvcalplugin/src/agmvcalx.cpp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappservices/calendarvcalplugin/src/agmvcalx.cpp	Tue May 18 13:16:49 2010 +0100
@@ -437,9 +437,10 @@
 
 	// DTSTAMP
 	TCalTime dTStamp = aEntry->DTStampL();
-		
-   	if ( dTStamp.TimeUtcL() != Time::NullTTime() )
-      	{	
+
+	if ( dTStamp.TimeUtcL() != Time::NullTTime() &&
+		CCalEntry::ENote != aEntry->EntryTypeL() )
+		{
 		AddDateTimePropertyL(aParser, KVersitTokenXDTSTAMP, dTStamp.TimeUtcL(), TVersitDateTime::EIsUTC, iTimeFlag);
       	}
 	
--- a/pimappsupport/chinesecalendaralg/test/group/calcontable.mmp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappsupport/chinesecalendaralg/test/group/calcontable.mmp	Tue May 18 13:16:49 2010 +0100
@@ -22,6 +22,8 @@
 SOURCE calcontable.cpp
 USERINCLUDE ../../calcontablesrc
 USERINCLUDE ../../originalinc
+
+APP_LAYER_SYSTEMINCLUDE
 SYSTEMINCLUDE /epoc32/include
 LIBRARY	euser.lib efsrv.lib cconoriginal.lib charconv.lib
 
--- a/pimappsupport/vcardandvcal/Ticket/VTicket.MMP	Tue May 11 12:31:38 2010 +0100
+++ b/pimappsupport/vcardandvcal/Ticket/VTicket.MMP	Tue May 18 13:16:49 2010 +0100
@@ -22,6 +22,7 @@
 SOURCEPATH	../Ticket
 
 userinclude     ../inc
+APP_LAYER_SYSTEMINCLUDE
 systeminclude   /epoc32/include
 
 source      	VTicketMaster.CPP
--- a/pimappsupport/vcardandvcal/tsrc/TJapaneseSoundProperty.mmp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappsupport/vcardandvcal/tsrc/TJapaneseSoundProperty.mmp	Tue May 18 13:16:49 2010 +0100
@@ -21,7 +21,9 @@
 sourcepath      .
 
 userinclude     .
-userinclude ../inc 
+userinclude ../inc
+
+APP_LAYER_SYSTEMINCLUDE 
 systeminclude /epoc32/include 
 
 source	        TJapaneseSoundProperty.cpp
--- a/pimappsupport/vcardandvcal/tsrc/Test_saveloadbinoom.mmp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappsupport/vcardandvcal/tsrc/Test_saveloadbinoom.mmp	Tue May 18 13:16:49 2010 +0100
@@ -23,6 +23,7 @@
 userinclude ../tsrc
 userinclude ../inc
 
+APP_LAYER_SYSTEMINCLUDE
 systeminclude /epoc32/include 
 source Test_saveloadbinoom.cpp
 library euser.lib estor.lib efsrv.lib
--- a/pimappsupport/vcardandvcal/tsrc/UnitTest_PBAPSupport/group/TestExternalize.mmp	Tue May 11 12:31:38 2010 +0100
+++ b/pimappsupport/vcardandvcal/tsrc/UnitTest_PBAPSupport/group/TestExternalize.mmp	Tue May 18 13:16:49 2010 +0100
@@ -21,6 +21,8 @@
 SOURCEPATH		../src
 USERINCLUDE		../inc
 USERINCLUDE		../../../inc
+
+APP_LAYER_SYSTEMINCLUDE
 SYSTEMINCLUDE		/epoc32/include
 
 SOURCE			TestExternalize.cpp