16 */ |
16 */ |
17 |
17 |
18 #ifndef HSCOLLECTIONSTATE_H |
18 #ifndef HSCOLLECTIONSTATE_H |
19 #define HSCOLLECTIONSTATE_H |
19 #define HSCOLLECTIONSTATE_H |
20 |
20 |
21 #include <qstate.h> |
21 #include <QState> |
22 #include <qabstractitemmodel.h> |
22 #include <QAbstractItemModel> |
23 #include <QPointer> |
|
24 |
23 |
25 #include "hsbaseviewstate.h" |
24 #include "hsbaseviewstate.h" |
26 |
25 |
27 HS_STATES_TEST_CLASS(MenuStatesTest) |
26 HS_STATES_TEST_CLASS(MenuStatesTest) |
28 |
27 |
29 class HbView; |
28 class HbView; |
30 class HbAction; |
29 class HbAction; |
31 class HbMenu; |
30 class HbMenu; |
32 class HbAbstractViewItem; |
31 class HbAbstractViewItem; |
33 class QModelIndex; |
|
34 class HsMenuItemModel; |
32 class HsMenuItemModel; |
35 class HsMenuModeWrapper; |
33 class HsMenuModeWrapper; |
36 class HsMenuViewBuilder; |
34 class HsMenuViewBuilder; |
37 class HsMainWindow; |
35 class HsMainWindow; |
38 |
36 |
44 HsCollectionState(HsMenuViewBuilder &menuView, |
42 HsCollectionState(HsMenuViewBuilder &menuView, |
45 HsMenuModeWrapper &menuMode, |
43 HsMenuModeWrapper &menuMode, |
46 HsMainWindow &mainWindow, |
44 HsMainWindow &mainWindow, |
47 QState *parent = 0); |
45 QState *parent = 0); |
48 ~HsCollectionState(); |
46 ~HsCollectionState(); |
49 public slots: |
|
50 void collectionsSortOrder(HsSortAttribute sortAttribute); |
|
51 protected: |
47 protected: |
52 void onEntry(QEvent *event); |
48 void onEntry(QEvent *event); |
53 signals: |
49 signals: |
54 void sortOrderChanged(HsSortAttribute sortAttribute); |
50 void sortOrderChanged(HsSortAttribute sortAttribute); |
55 private slots: |
51 private slots: |
56 bool openTaskSwitcher(); |
|
57 void listItemActivated(const QModelIndex &index); |
|
58 void listItemLongPressed(HbAbstractViewItem *item, const QPointF &coords); |
|
59 void addAppsAction(bool addApps = true); |
52 void addAppsAction(bool addApps = true); |
60 void addCollectionShortcutToHomeScreenAction(); |
53 void addCollectionShortcutToHomeScreenAction(); |
61 void renameAction(); |
54 void renameAction(); |
62 void deleteAction(); |
55 void deleteAction(); |
63 void backSteppingAction(); |
|
64 void updateLabel(); |
56 void updateLabel(); |
65 void stateEntered(); |
57 void stateEntered(); |
|
58 |
66 void stateExited(); |
59 void stateExited(); |
67 void latestOnTopMenuAction(); |
60 void latestOnTopMenuAction(); |
68 void oldestOnTopMenuAction(); |
61 void oldestOnTopMenuAction(); |
69 void contextMenuAction(HbAction *action); |
62 void contextMenuAction(HbAction *action); |
70 void handleEmptyChange(bool empty); |
63 void handleEmptyChange(bool empty); |
71 void lockSearchButton(bool lock); |
64 void lockSearchButton(bool lock); |
|
65 void createArrangeCollection(); |
72 |
66 |
73 private: |
67 private: |
74 void construct(); |
68 void construct(); |
75 void constructMenu(bool isDynamic); |
69 void constructMenu(bool isDynamic); |
76 void makeConnect(); |
70 void makeConnect(); |
77 void makeDisconnect(); |
71 void makeDisconnect(); |
78 void addElementToHomeScreen(const QModelIndex &index); |
72 void addElementToHomeScreen(const QModelIndex &index); |
|
73 void setContextMenuOptions(HbAbstractViewItem *item, EntryFlags flags); |
|
74 void setMenuOptions(); |
79 |
75 |
80 private: |
76 private: |
81 HsSortAttribute mSortAttribute; |
77 HsSortAttribute mSortAttribute; |
82 HsSortAttribute mCollectionsSortAttribute; |
|
83 int mCollectionId; |
78 int mCollectionId; |
84 QString mCollectionType; |
79 QString mCollectionType; |
85 HsMenuView mMenuView; |
|
86 HsMenuModeWrapper &mMenuMode; |
|
87 HbAction *const mSecondarySoftkeyAction; |
|
88 HsMenuItemModel *mCollectionModel; |
|
89 HbMenu *mOptions; |
|
90 QModelIndex mContextModelIndex; |
|
91 QPointer<HbMenu> mContextMenu; |
|
92 HsMainWindow &mMainWindow; |
|
93 }; |
80 }; |
94 |
81 |
95 #endif // HSCOLLECTIONSTATE_H |
82 #endif // HSCOLLECTIONSTATE_H |