tsdevicedialog/tsdevicedialogplugin/src/tsmodel.cpp
changeset 124 e36b2f4799c0
parent 121 0b3699f6c654
--- a/tsdevicedialog/tsdevicedialogplugin/src/tsmodel.cpp	Fri Sep 17 08:32:18 2010 +0300
+++ b/tsdevicedialog/tsdevicedialogplugin/src/tsmodel.cpp	Mon Oct 04 00:38:31 2010 +0300
@@ -23,25 +23,14 @@
 
 #include <afstorageglobals.h>
 
-#ifdef Q_OS_SYMBIAN
-#include <XQSettingsManager>
-#include <apaid.h>
-
-const int TSDeviceDialogUid = 0x2002677F;
-const int ItemsLimit = 0x00000001;
-#endif
-
 #include "tsmodelitem.h"
-#include "tsentrymodelitem.h"
-#include "tsactivitymodelitem.h"
 #include "tsdataroles.h"
 #include "tstaskchangeinfo.h"
 
-const int maxItems(10);
 /*!
     \class TsModel
     \ingroup group_tsdevicedialogplugin
-    \brief Model storing running application and activieties.
+    \brief Model storing running tasks.
 */
 
 /*!
@@ -49,33 +38,11 @@
     \param query used to create model
     \param pointer to parent object
 */
-TsModel::TsModel(TsTaskMonitor &applicationSrv,
-                 QObject &activitySrv,
-                 QObject *parent) :
+TsModel::TsModel(TsTaskMonitor &applicationSrv, QObject *parent) :
     QAbstractListModel(parent),
     mEntries(),
-    mApplicationService(applicationSrv),
-    mActivityService(activitySrv),
-    mMaxItems(maxItems)
+    mApplicationService(applicationSrv)
 {
-
-#ifdef Q_OS_SYMBIAN
-    XQSettingsManager *crManager = new XQSettingsManager;
-    XQCentralRepositorySettingsKey itemsNumberKey(TSDeviceDialogUid, ItemsLimit);
-    QVariant itemsNumberVariant =
-        crManager->readItemValue(itemsNumberKey, XQSettingsManager::TypeInt);
-    if (!itemsNumberVariant.isNull()) {
-        int number = itemsNumberVariant.toInt();
-        if (number > 0) {
-            mMaxItems = number;
-        }
-    }
-#endif
-
-    connect(&activitySrv,
-            SIGNAL(dataChanged()),
-            this,
-            SLOT(updateActivities()));
     connect(&applicationSrv,
             SIGNAL(taskListChanged()),
             this,
@@ -96,8 +63,7 @@
     Returns count of rows in model
     \retval number of rows
 */
-int TsModel::rowCount(
-    const QModelIndex &parent) const
+int TsModel::rowCount(const QModelIndex &parent) const
 {
     Q_UNUSED(parent);
     return mEntries.count();
@@ -147,23 +113,12 @@
     \param role which data role to return
     \retval models data
 */
-QVariant TsModel::data(const QModelIndex &index,
-                       int role) const
+QVariant TsModel::data(const QModelIndex &index, int role) const
 {
     return index.isValid() ? entry(index)->data(role) : QVariant();
 }
 
 /*!
-    Returns maximum anount of data allowed for model
-    \retval maximum data count
-*/
-
-int TsModel::maxRowCount()const
-{
-    return mMaxItems;
-}
-
-/*!
     Activate one of model entries
 */
 void TsModel::openApplication(const QModelIndex &index)
@@ -191,10 +146,9 @@
 */
 void TsModel::updateApplications()
 {
-    QList<TsTaskChange>  changes(mApplicationService.changeList());
+    QList<TsTaskChange> changes(mApplicationService.changeList());
 
     if (changes.count() == 0) {
-        //no applications - only activities on list
         return;
     }
     //check 1st item whether we have cancel change - if so reset model
@@ -206,59 +160,33 @@
         switch (changes[iter].first.changeType()) {
             case TsTaskChangeInfo::EChangeDelete :
                 removeRows(changes[iter].first.oldOffset(), 1);
-                //we had max rows before delete - so there is possibility to add 
-                //one activity
-                if(mEntries.count() + 1 == maxRowCount()) {
-                    beginInsertRows(QModelIndex(), mEntries.count(), mEntries.count());
-                    getActivities(false);
-                    endInsertRows();
-                }
                 break;
             case TsTaskChangeInfo::EChangeInsert :
                 insertRows(changes[iter].first.newOffset(), 1,
-                           new TsEntryModelItem(changes[iter].second));
-                //we have too many items - delete some activities if we can
-                while(mEntries.count() > maxRowCount() && mActivitiesCount > 0) {
-                    removeRows(mEntries.count()-1, 1);
-                    mActivitiesCount--;
-                }
+                           new TsModelItem(changes[iter].second));
                 break;
             case TsTaskChangeInfo::EChangeMove :
                 moveRows(changes[iter].first.oldOffset(), changes[iter].first.newOffset());
                 break;
             case TsTaskChangeInfo::EChangeUpdate :
                 updateRows(changes[iter].first.oldOffset(),
-                           new TsEntryModelItem(changes[iter].second));
+                           new TsModelItem(changes[iter].second));
                 break;
             default:
                 break;
         }
     }
-
-    //because delete entries are at end of changelist - iterate backwards
-
 }
 
 /*!
-    Updates model with fresh entries
-*/
-void TsModel::updateActivities()
-{
-    //as for now we need full update when activities change
-    fullUpdate();
-}
-
-/*!
-    reset model using full application and activities lists
+    reset model
 */
 void TsModel::fullUpdate()
 {
     beginResetModel();
     qDeleteAll(mEntries);
     mEntries.clear();
-    mActivitiesCount = 0;
     getApplications();
-    getActivities();
     endResetModel();
 
 }
@@ -269,52 +197,15 @@
 void TsModel::getApplications()
 {
     //get all running applications and append to entries list
-    TsModelItem *entry(0);
-    QList< TsTaskChange> tasks(mApplicationService.changeList(true));
+    QList<TsTaskChange> tasks(mApplicationService.changeList(true));
     foreach(TsTaskChange taskData, tasks) {
         if (!taskData.second.isNull()) {
-            entry = new TsEntryModelItem(taskData.second);
-            if (entry) {
-                mEntries.append(entry);
-            }
+            mEntries.append(new TsModelItem(taskData.second));
         }
     }
 }
 
 /*!
-    Read current activities
-*/
-void TsModel::getActivities(bool fullUpdate)
-{
-    //get activities
-    int maxActivitiesCount = maxRowCount() - mEntries.count() + mActivitiesCount;
-    if (maxActivitiesCount > 0) {
-        QList<QVariantHash> activities;
-        QMetaObject::invokeMethod(&mActivityService,
-                                  "activitiesList",
-                                  Q_RETURN_ARG(QList<QVariantHash>, activities),
-                                  Q_ARG(int, maxActivitiesCount));
-        int iterPos = fullUpdate ? 0 : mActivitiesCount;
-        for(int iter(iterPos); iter< activities.count(); iter++) {
-            mEntries.append(new TsActivityModelItem(*this, mActivityService, activities[iter]));
-            mActivitiesCount++;
-        }
-    }
-}
-
-/*!
-    Called when some item was changed
-    \param itemPtr - address of updated item
-*/
-void TsModel::entryChanged(TsModelItem *itemPtr)
-{
-    const int itemIndex = mEntries.indexOf(itemPtr);
-    if (itemIndex != -1) {
-        emit dataChanged(index(itemIndex, 0), index(itemIndex, 0));
-    }
-}
-
-/*!
     Returns an entry from model
     \param index of entry in model
     \retval pointer to an entry