homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsaddappstocollectionstate.cpp
changeset 81 7dd137878ff8
parent 71 1db7cc813a4e
child 86 e4f038c420f7
--- a/homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsaddappstocollectionstate.cpp	Fri Aug 13 14:38:12 2010 +0300
+++ b/homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsaddappstocollectionstate.cpp	Wed Aug 18 10:33:57 2010 +0300
@@ -174,7 +174,7 @@
     QState(parent), mCollectionName(), mCollectionId(0), mAppList(),
     mShowConfirmation(0), mInitialState(0), mSelectCollectionState(0),
     mNewCollectionState(0), mAppsCheckListState(0), mActionType(
-        NoActionType), mApplicationsSortAttribute(NoHsSortAttribute),
+        NoActionType), mApplicationsSortAttribute(Hs::NoHsSortAttribute),
     mAppsCheckList(0), mEditorDialog(0), mListDialog(0), mModel(0)
 {
     construct();
@@ -284,6 +284,7 @@
     //Adds applications to colection.
     if ((mCollectionId > 0) && mAppList.count()) {
         HsMenuService::addApplicationsToCollection(mAppList, mCollectionId);
+        HsMenuService::touch(mAppList);
         if (mShowConfirmation) {
             showMessageAppsAdded(mCollectionId);
         }
@@ -319,25 +320,25 @@
     HsMenuEvent *menuEvent = static_cast<HsMenuEvent *>(event);
     QVariantMap data = menuEvent->data();
 
-    mApplicationsSortAttribute = static_cast<HsSortAttribute>(data.value(
-                                     appSortOrderKey()).toInt());
+    mApplicationsSortAttribute = static_cast<Hs::HsSortAttribute>(data.value(
+                                     Hs::appSortOrderKey).toInt());
 
-    const int itemId = data.value(itemIdKey()).toInt();
-    mCollectionId = data.value(collectionIdKey()).toInt();
+    const int itemId = data.value(Hs::itemIdKey).toInt();
+    mCollectionId = data.value(Hs::collectionIdKey).toInt();
 
     if (itemId) {
         //add selected app item from allAppView or collectionView
         mAppList.append(itemId);
         mInitialState->addTransition(mSelectCollectionState);
         mShowConfirmation = true;
-    } else if (mApplicationsSortAttribute != NoHsSortAttribute) {
+    } else if (mApplicationsSortAttribute != Hs::NoHsSortAttribute) {
         //add apps from allAppView options menu
         mActionType = ViaAllViewOptionMenuType;
         mInitialState->addTransition(mAppsCheckListState);
         mShowConfirmation = true;
     } else if (mCollectionId) {
         //add apps from collectionView options menu
-        mApplicationsSortAttribute = AscendingNameHsSortAttribute;
+        mApplicationsSortAttribute = Hs::AscendingNameHsSortAttribute;
         mInitialState->addTransition(mAppsCheckListState);
     }
     HSMENUTEST_FUNC_EXIT("HsAddAppsToCollectionState::onEntry");
@@ -480,12 +481,13 @@
 void HsAddAppsToCollectionState::collectionSelected(
         const QModelIndex &modelIndex)
 {
-    int selectedCollection = mModel->data(
-            modelIndex, CaItemModel::IdRole).toInt();
-    mListDialog->close();
-    
-    qDebug("emit collectionSelected(%d)", selectedCollection);
-    emit transitToSaveState(selectedCollection);
+    if (mListDialog) {
+        int selectedCollection = mModel->data(
+                modelIndex, CaItemModel::IdRole).toInt();
+        mListDialog->close();
+        qDebug("emit collectionSelected(%d)", selectedCollection);
+        emit transitToSaveState(selectedCollection);
+    }
 }
 
 /*!