homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsbaseviewstate.h
changeset 63 52b0f64eeb51
parent 62 341166945d65
child 69 87476091b3f5
equal deleted inserted replaced
62:341166945d65 63:52b0f64eeb51
    16  */
    16  */
    17 
    17 
    18 #ifndef HSBASEVIEWSTATE_H
    18 #ifndef HSBASEVIEWSTATE_H
    19 #define HSBASEVIEWSTATE_H
    19 #define HSBASEVIEWSTATE_H
    20 
    20 
    21 #include <qstate.h>
    21 #include <QState>
       
    22 #include <QPointer>
       
    23 #include <QModelIndex>
    22 
    24 
    23 #include "hsmenustates_global.h"
    25 #include "hsmenustates_global.h"
    24 #include "hsmenuservice.h"
    26 #include "hsmenuservice.h"
    25 #include "hsmenuview.h"
    27 #include "hsmenuview.h"
    26 
    28 
       
    29 class HbMenu;
       
    30 class HbAction;
    27 class HbMessageBox;
    31 class HbMessageBox;
       
    32 class HbAbstractViewItem;
    28 class CaNotifier;
    33 class CaNotifier;
       
    34 class HsMenuModeWrapper;
       
    35 class HsMainWindow;
    29 
    36 
    30 HS_STATES_TEST_CLASS(MenuStatesTest)
    37 HS_STATES_TEST_CLASS(MenuStatesTest)
    31 
    38 
    32 class HsBaseViewState: public QState
    39 class HsBaseViewState: public QState
    33 {
    40 {
    35     
    42     
    36     HS_STATES_TEST_FRIEND_CLASS(MenuStatesTest)
    43     HS_STATES_TEST_FRIEND_CLASS(MenuStatesTest)
    37     
    44     
    38 public:
    45 public:
    39     
    46     
    40     HsBaseViewState(QState *parent);    
    47     HsBaseViewState(HsMainWindow &mainWindow, QState *parent);
       
    48     HsBaseViewState(HsMainWindow &mainWindow, 
       
    49         HsMenuModeWrapper& menuMode, QState *parent);
    41     ~HsBaseViewState();
    50     ~HsBaseViewState();
    42     
    51     void scrollToBeginning();
       
    52 
    43 private slots:
    53 private slots:
    44 
    54 
    45     void applicationLaunchFailMessageFinished(HbAction*);
    55     virtual void applicationLaunchFailMessageFinished(HbAction*);
    46     
    56     virtual void openAppLibrary();
       
    57 
    47 protected slots:
    58 protected slots:
    48     
    59     
    49     void stateExited();
    60     virtual void stateEntered();
    50     
    61     virtual void stateExited();
       
    62     virtual void addModeEntered();
       
    63     virtual void normalModeEntered();
       
    64     virtual void normalModeExited();
       
    65     virtual void launchItem(const QModelIndex &index);
       
    66     virtual void openCollection(const QModelIndex &index);
       
    67     virtual void showContextMenu(HbAbstractViewItem *item, const QPointF &coords);
       
    68     virtual int checkSoftwareUpdates();
       
    69     virtual bool openTaskSwitcher();
    51 protected:
    70 protected:
    52     
    71     
       
    72     void initialize(HsMenuViewBuilder &menuViewBuilder, HsViewContext viewContext);
    53     void createApplicationLaunchFailMessage(int errorCode,int itemId);
    73     void createApplicationLaunchFailMessage(int errorCode,int itemId);
    54     void subscribeForMemoryCardRemove();
    74     void subscribeForMemoryCardRemove();
    55     
    75 
       
    76     void defineTransitions();
       
    77 
    56 private:
    78 private:
    57     
    79     
    58     void construct();
       
    59     void cleanUpApplicationLaunchFailMessage();
    80     void cleanUpApplicationLaunchFailMessage();
    60     
    81 
       
    82     virtual void setContextMenuOptions(HbAbstractViewItem *item, EntryFlags flags) = 0;
       
    83     virtual void setMenuOptions() = 0;
       
    84 
       
    85 
    61 private:
    86 private:
    62     
    87     
    63     CaNotifier *mNotifier;
    88     CaNotifier *mNotifier;
    64     
       
    65     int mMessageRelatedItemId;
    89     int mMessageRelatedItemId;
    66     
       
    67     HbMessageBox *mApplicationLaunchFailMessage;
    90     HbMessageBox *mApplicationLaunchFailMessage;
    68 
    91 
       
    92 protected:
       
    93     HsMenuItemModel *mModel;
       
    94     QPointer<HbMenu> mContextMenu;
       
    95     QModelIndex mContextModelIndex;
       
    96     HbAction *mBackKeyAction;
       
    97     QScopedPointer<HsMenuView> mMenuView;
       
    98     HsMenuModeWrapper *mMenuMode;
       
    99     HsMainWindow &mMainWindow;
    69 };
   100 };
    70 
   101 
    71 
   102 
    72 #endif // HSBASEVIEWSTATE_H
   103 #endif // HSBASEVIEWSTATE_H