tstaskmonitor/server/src/tsrunningappstorage.cpp
changeset 98 d2f833ab7940
parent 96 5d243a69bdda
child 99 7aaf39b772ac
--- a/tstaskmonitor/server/src/tsrunningappstorage.cpp	Tue Jun 01 11:30:17 2010 +0300
+++ b/tstaskmonitor/server/src/tsrunningappstorage.cpp	Fri Jun 11 16:13:51 2010 +0300
@@ -15,8 +15,7 @@
 *
 */
 #include "tsrunningappstorage.h"
-#include "tsfswengine.h"
-#include "tsfswmonitor.h"
+#include "tsfswdatalist.h"
 #include "tsfswentry.h"
 #include <s32strm.h>
 #include <s32mem.h>
@@ -37,18 +36,19 @@
 {
     mData.Close();
     delete mEngine;
-    delete mMonitor;
 }
 
 // -----------------------------------------------------------------------------
 //
 // -----------------------------------------------------------------------------
 //
-CRunningAppStorage* CRunningAppStorage::NewL(MHsDataObserver& observer)
+CRunningAppStorage* CRunningAppStorage::NewL(MHsDataObserver& observer,
+                                             MTsResourceManager& resources,
+                                             MTsWindowGroupsMonitor &wsMonitor)
 {
     CRunningAppStorage * self = new (ELeave)CRunningAppStorage(observer);
     CleanupStack::PushL(self);
-    self->ConstructL();
+    self->ConstructL(resources, wsMonitor);
     CleanupStack::Pop(self);
     return self;
 }
@@ -57,10 +57,15 @@
 //
 // -----------------------------------------------------------------------------
 //
-void CRunningAppStorage::ConstructL()
+void CRunningAppStorage::ConstructL(MTsResourceManager& resources, 
+                                    MTsWindowGroupsMonitor &wsMonitor)
 {
-    mEngine = CTsFswEngine::NewL(*this) ;
-    mMonitor = CTsFswMonitor::NewL(*mEngine);
+    mEngine = CTsFswDataList::NewL(resources, wsMonitor, *this) ;
+    RArray<RWsSession::TWindowGroupChainInfo> wgList;
+    CleanupClosePushL(wgList);
+    User::LeaveIfError(resources.WsSession().WindowGroupList(&wgList));
+    mEngine->HandleWindowGroupChanged(resources, wgList.Array());
+    CleanupStack::PopAndDestroy(&wgList);
     DataChangedL();
 }