--- a/homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsbaseviewstate.h Tue Jul 06 14:06:53 2010 +0300
+++ b/homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsbaseviewstate.h Wed Aug 18 09:40:07 2010 +0300
@@ -18,14 +18,23 @@
#ifndef HSBASEVIEWSTATE_H
#define HSBASEVIEWSTATE_H
-#include <qstate.h>
+#include <QState>
+#include <QPointer>
+#include <QModelIndex>
#include "hsmenustates_global.h"
#include "hsmenuservice.h"
#include "hsmenuview.h"
+
+class HbMenu;
+class HbAction;
class HbMessageBox;
+class HbAbstractViewItem;
class CaNotifier;
+class HsMenuModeWrapper;
+class HsMainWindow;
+class HsAddModeProxyModel;
HS_STATES_TEST_CLASS(MenuStatesTest)
@@ -37,35 +46,56 @@
public:
- HsBaseViewState(QState *parent);
+ HsBaseViewState(HsMainWindow &mainWindow, QState *parent);
+ HsBaseViewState(HsMainWindow &mainWindow,
+ HsMenuModeWrapper& menuMode, QState *parent);
~HsBaseViewState();
-
+ void scrollToBeginning();
+
private slots:
- void applicationLaunchFailMessageFinished(HbAction*);
-
+ virtual void openAppLibrary();
+
protected slots:
- void stateExited();
+ virtual void stateEntered();
+ virtual void stateExited();
+ virtual void addModeEntered();
+ virtual void addModeExited();
+ virtual void normalModeEntered();
+ virtual void normalModeExited();
+ virtual void launchItem(const QModelIndex &index);
+ virtual void openCollection(const QModelIndex &index);
+ virtual void showContextMenu(HbAbstractViewItem *item, const QPointF &coords);
+ virtual int checkSoftwareUpdates();
+ virtual bool openTaskSwitcher();
+ virtual void closeContextMenu();
protected:
+ void initialize(HsMenuViewBuilder &menuViewBuilder, HsStateContext stateContext);
void createApplicationLaunchFailMessage(int errorCode,int itemId);
- void subscribeForMemoryCardRemove();
-
+ void defineTransitions();
+
+private:
+
+ virtual void setContextMenuOptions(HbAbstractViewItem *item, EntryFlags flags) = 0;
+ virtual void setMenuOptions() = 0;
+
private:
- void construct();
- void cleanUpApplicationLaunchFailMessage();
-
-private:
+ QPointer<HbMessageBox> mApplicationLaunchFailMessage;
+
+protected:
- CaNotifier *mNotifier;
-
- int mMessageRelatedItemId;
-
- HbMessageBox *mApplicationLaunchFailMessage;
-
+ HsMenuItemModel *mModel;
+ QPointer<HbMenu> mContextMenu;
+ QModelIndex mContextModelIndex;
+ HbAction *mBackKeyAction;
+ QScopedPointer<HsMenuView> mMenuView;
+ HsMenuModeWrapper *mMenuMode;
+ HsMainWindow &mMainWindow;
+ HbMenu *mViewOptions;
};