30 |
30 |
31 // Forward declarations |
31 // Forward declarations |
32 class QGraphicsItem; |
32 class QGraphicsItem; |
33 class QStandardItemModel; |
33 class QStandardItemModel; |
34 class QTimer; |
34 class QTimer; |
35 class HbLabel; |
|
36 class HbPushButton; |
|
37 class HbListView; |
35 class HbListView; |
38 class HbListWidgetItem; |
36 class HbListWidgetItem; |
39 class HbAbstractViewItem; |
37 class HbAbstractViewItem; |
40 class ClockDocLoader; |
38 class ClockDocLoader; |
41 class ClockAppControllerIf; |
39 class ClockAppControllerIf; |
42 class TimezoneClient; |
40 class TimezoneClient; |
43 class SettingsUtility; |
41 class SettingsUtility; |
44 class ClockCitySelectionList; |
42 class ClockCitySelectionList; |
|
43 class HbGroupBox; |
|
44 class ClockHomeCityItem; |
45 |
45 |
46 class ClockWorldView : public HbView |
46 class ClockWorldView : public HbView |
47 { |
47 { |
48 Q_OBJECT |
48 Q_OBJECT |
49 |
49 |
55 CLOCKVIEWS_EXPORT void setupView( |
55 CLOCKVIEWS_EXPORT void setupView( |
56 ClockAppControllerIf &controllerIf, ClockDocLoader *docLoader); |
56 ClockAppControllerIf &controllerIf, ClockDocLoader *docLoader); |
57 |
57 |
58 private slots: |
58 private slots: |
59 void refreshCityList(); |
59 void refreshCityList(); |
60 void updateClockDisplay(); |
60 void updateCurrentLocationInfo(int networkTime); |
61 void updateDayDateInfo(); |
|
62 void updateCurrentLocationInfo(); |
|
63 void handleItemLongPressed(HbAbstractViewItem *item, const QPointF &coord); |
61 void handleItemLongPressed(HbAbstractViewItem *item, const QPointF &coord); |
64 void handleAddLocation(); |
62 void handleAddLocation(); |
65 void handleDeleteAction(); |
63 void handleDeleteAction(); |
66 void handleSetAsCurrentLocationAction(); |
64 void handleSetAsCurrentLocationAction(); |
67 void handleCitySelected(LocationInfo info); |
65 void handleCitySelected(LocationInfo info); |
68 void showAlarmsView(); |
66 void showAlarmsView(); |
69 void updateOffsetDifferences(); |
|
70 void refreshWorldView(); |
67 void refreshWorldView(); |
71 void updateToolbarTexts(Qt::Orientation currentOrientation); |
68 void loadSection(Qt::Orientation orientation); |
|
69 void updateAllLocationInfo(); |
|
70 void selectedMenuAction(HbAction *action); |
72 |
71 |
73 private: |
72 private: |
74 QModelIndex addCityToList(const LocationInfo& locationInfo); |
73 QModelIndex addCityToList(const LocationInfo& locationInfo); |
75 bool isDay(QDateTime dateTime); |
74 bool isDay(QDateTime dateTime); |
|
75 QVariantList getCityListDisplayString(const LocationInfo& locationInfo); |
|
76 QVariantList getCityListDecorationString(const LocationInfo& locationInfo); |
|
77 void updateCityList(); |
76 |
78 |
77 private: |
79 private: |
78 QTimer *mRefreshTimer; |
80 QTimer *mRefreshTimer; |
79 QList<LocationInfo> mCityInfoList; |
81 QList<LocationInfo> mCityInfoList; |
80 QStandardItemModel *mCityListModel; |
82 QStandardItemModel *mCityListModel; |
81 |
83 |
82 QPointer<HbListView> mCityListView; |
84 QPointer<HbListView> mCityListView; |
83 HbLabel *mDayDateLabel; |
85 ClockHomeCityItem *mHomeCityWidget; |
84 HbLabel *mPlaceLabel; |
|
85 HbAction *mAddCityAction; |
86 HbAction *mAddCityAction; |
86 HbAction *mSetCurrentLocationAction; |
87 HbAction *mSetCurrentLocationAction; |
87 HbAction *mRemoveCityAction; |
88 HbAction *mRemoveCityAction; |
88 HbAction *mBackAction; |
89 HbAction *mBackAction; |
89 HbAction *mShowAlarmsViewAction; |
90 HbAction *mShowAlarmsViewAction; |
90 HbAction *mDisplayWorldClockView; |
91 HbAction *mDisplayWorldClockView; |
|
92 HbAction *mAddCityMenuAction; |
91 |
93 |
92 ClockDocLoader *mDocLoader; |
94 ClockDocLoader *mDocLoader; |
93 ClockAppControllerIf *mAppControllerIf; |
95 ClockAppControllerIf *mAppControllerIf; |
94 SettingsUtility *mSettingsUtility; |
96 SettingsUtility *mSettingsUtility; |
95 TimezoneClient *mTimezoneClient; |
97 TimezoneClient *mTimezoneClient; |