diff -r 4e8ebe173323 -r 23b5d6a29cce homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsmenuview.h --- a/homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsmenuview.h Mon May 03 12:24:59 2010 +0300 +++ b/homescreenapp/stateplugins/hsapplibrarystateplugin/inc/hsmenuview.h Fri May 14 15:43:04 2010 +0300 @@ -24,9 +24,8 @@ #include #include #include "hsmenustates_global.h" +#include "hsmenuviewbuilder.h" #include "hsapp_defs.h" -#include "hsmenuviewbuilder.h" - class QPointF; class QActionGroup; @@ -34,10 +33,12 @@ class HbMainWindow; class HbAction; class HbAbstractItemView; +class HbListView; class HbGroupBox; class HbWidget; class HsMenuItemModel; + HS_STATES_TEST_CLASS(MenuStatesTest) class HsMenuView: public QObject @@ -45,33 +46,23 @@ Q_OBJECT public: - HsMenuView(); + HsMenuView(HsMenuViewBuilder &builder, HsViewContext viewContext); ~HsMenuView(); - void setModel(HsMenuItemModel *model); - void setModelToView(QAbstractItemModel *model); - - void setLabel(const QString &label); - void scrollTo(const QModelIndex &index, - HbAbstractItemView::ScrollHint hint = - HbAbstractItemView::EnsureVisible); - - void setLabelVisible(bool visible); void setSearchPanelVisible(bool visible); HbView *view(); - QActionGroup *toolBarActionGroup(); - HbAction *allAppsAction(); - HbAction *allCollectionsAction(); - HbAction *oviStoreAction(); + + HbListView *listView(); + + void activate(); + void inactivate(); - QModelIndex firstVisibleItemIndex(); - - HsMenuMode getHsMenuMode(); + HbGroupBox *viewLabel(); - void setHsMenuMode(HsMenuMode menuMode); - void hideToolBar(); - void showToolBar(); + void setModel(HsMenuItemModel *model); + + signals: void activated(const QModelIndex &index); void longPressed(HbAbstractViewItem *item, const QPointF &coords); @@ -94,43 +85,39 @@ private: - HbAbstractItemView::ScrollHint convertScrollHint( - QAbstractItemView::ScrollHint hint); - - void connectItemViewsSignals(); - void disconnectItemViewsSignals(); - void connectSearchItemViewsSignals(); - void disconnectSearchItemViewsSignals(); + void addViewToMainWindow(HbView *view); - - void connectModelSignals(); - void disconnectModelSignals(); + QModelIndex firstVisibleItemIndex(const HbListView *view) const; void connectSearchPanelSignals(); void disconnectSearchPanelSignals(); + void connectSearchItemViewsSignals(); + void disconnectSearchItemViewsSignals(); void searchFinished(); void searchBegins(); - - void setUpToolBar(); + HbAbstractItemView::ScrollHint convertScrollHint( + QAbstractItemView::ScrollHint hint); private: - HsMenuViewBuilder mBuilder; - - HsMenuItemModel *mModel; + const HsViewContext mViewContext; + HsMenuViewBuilder &mBuilder; - QModelIndex mFirstVisibleIndex; - QModelIndex mLastVisibleIndex; - QModelIndex mSearchIndex; - - QActionGroup *mToolBarActionGroup; - - HsMenuMode mMenuMode; + QModelIndex mSearchViewInitialIndex; + QModelIndex mIndexToScrollAfterSearchDone; + QModelIndex mSearchViewLongPressedIndex; QSortFilterProxyModel *mProxyModel; // owned + HbView *mView; + HbListView *mListView; + HbGroupBox *mViewLabel; + + HbListView *mSearchListView; + HbSearchPanel *mSearchPanel; + HS_STATES_TEST_FRIEND_CLASS(MenuStatesTest) };