14 * Description: |
14 * Description: |
15 * |
15 * |
16 */ |
16 */ |
17 #include <QObject> |
17 #include <QObject> |
18 #include <QPointF> |
18 #include <QPointF> |
|
19 |
19 class HbMenu; |
20 class HbMenu; |
|
21 class QAbstractItemModel; |
|
22 class QAction; |
|
23 class HbMainWindow; |
|
24 |
|
25 //Grid view option menu |
|
26 enum { |
|
27 GlxGridViewSend, |
|
28 GlxGridViewSlideShow, |
|
29 GlxGridViewAddToAlbum, |
|
30 GlxGridViewRemoveFromAlbum, |
|
31 GlxGridViewDelete |
|
32 }; |
|
33 |
20 class GlxMenuManager : public QObject |
34 class GlxMenuManager : public QObject |
21 { |
35 { |
22 Q_OBJECT |
36 Q_OBJECT |
23 |
37 |
24 public : |
38 public : |
25 GlxMenuManager(); |
39 GlxMenuManager(HbMainWindow* mainWindow); |
26 ~GlxMenuManager(); |
40 ~GlxMenuManager(); |
27 void CreateViewMenu(qint32 viewId,HbMenu* menu,bool empty = false , int subState = -1); |
|
28 void createMarkingModeMenu(HbMenu* menu); |
41 void createMarkingModeMenu(HbMenu* menu); |
29 void ShowItemSpecificMenu(qint32 viewId,QPointF pos); |
42 void ShowItemSpecificMenu(qint32 viewId,QPointF pos); |
|
43 void setModel(QAbstractItemModel *model) { mModel = model ; } |
|
44 void addMenu(qint32 viewId, HbMenu* menu); |
|
45 void removeMenu(qint32 viewId, HbMenu* menu); |
|
46 |
30 signals : |
47 signals : |
31 void commandTriggered(qint32 commandId); |
48 void commandTriggered(qint32 commandId); |
32 public slots: |
|
33 |
|
34 protected: |
|
35 |
|
36 private slots: |
|
37 void menuItemSelected(); |
|
38 |
49 |
39 private: |
50 private: |
40 void CreateGridMenu(HbMenu* menu); |
51 void CreateGridMenu(HbMenu* menu); |
41 void CreateListMenu(HbMenu* menu); |
52 void CreateListMenu(HbMenu* menu); |
42 void CreateFullscreenMenu(HbMenu* menu); |
53 void CreateFullscreenMenu(HbMenu* menu); |
43 void CreateImageViewerMenu(HbMenu* menu); |
54 void setAllActionVisibility( QList<QAction*> actionList, bool visible ); |
|
55 int viewSubState(); |
|
56 |
|
57 private slots: |
|
58 void menuItemSelected(); |
|
59 void updateGridMenu(); |
|
60 void updateFullscreenMenu(); |
|
61 |
44 private: |
62 private: |
45 |
63 QAbstractItemModel *mModel; //It should point to current view model |
|
64 HbMainWindow* mMainWindow; |
46 }; |
65 }; |