--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/taskswitcher/contextengine/hgfswserver/engine/src/hgfswidgetlist.cpp Mon Jan 18 20:10:36 2010 +0200
@@ -0,0 +1,89 @@
+/*
+ * ============================================================================
+ * Name : hgfswidgetlist.cpp
+ * Part of : Hg Teleport
+ * Description : web widget list
+ * Version : %version: sa1spcx1#5 %
+ *
+ * Copyright 2008 Nokia. All rights reserved.
+ * This material, including documentation and any related computer
+ * programs, is protected by copyright controlled by Nokia. All
+ * rights are reserved. Copying, including reproducing, storing,
+ * adapting or translating, any or all of this material requires the
+ * prior written consent of Nokia. This material also contains
+ * confidential information which may not be disclosed to others
+ * without the prior written consent of Nokia.
+ * ============================================================================
+ */
+
+#include "hgfswidgetlist.h"
+#include <widgetregistrydata.h>
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::NewL
+// --------------------------------------------------------------------------
+//
+CHgFsWidgetList* CHgFsWidgetList::NewL()
+ {
+ return new (ELeave) CHgFsWidgetList;
+ }
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::CHgFsWidgetList
+// --------------------------------------------------------------------------
+//
+CHgFsWidgetList::CHgFsWidgetList()
+ {
+ }
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::~CHgFsWidgetList
+// --------------------------------------------------------------------------
+//
+CHgFsWidgetList::~CHgFsWidgetList()
+ {
+ ResetArrayOfWidgetInfo( iRunningWidgets );
+ iRunningWidgets.Reset();
+ }
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::CleanupConnect
+// --------------------------------------------------------------------------
+//
+void CHgFsWidgetList::CleanupConnect( TAny* aThis )
+ {
+ CHgFsWidgetList* self = static_cast<CHgFsWidgetList*>( aThis );
+ self->iWidgetRegistryClientSession.Disconnect();
+ }
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::InitializeWidgetListL
+// --------------------------------------------------------------------------
+//
+void CHgFsWidgetList::InitializeWidgetListL()
+ {
+ ResetArrayOfWidgetInfo( iRunningWidgets );
+ iRunningWidgets.Reset();
+ User::LeaveIfError( iWidgetRegistryClientSession.Connect() );
+ CleanupStack::PushL( TCleanupItem( CleanupConnect, this) );
+ iWidgetRegistryClientSession.RunningWidgetsL(iRunningWidgets);
+ CleanupStack::Pop(); // clean WidgetRegistryClientSession item
+ iWidgetRegistryClientSession.Disconnect();
+ }
+
+// --------------------------------------------------------------------------
+// CHgFsWidgetList::ResetArrayOfWidgetInfo
+// --------------------------------------------------------------------------
+//
+void CHgFsWidgetList::ResetArrayOfWidgetInfo(
+ RWidgetInfoArray& aWidgetInfoArr )
+ {
+ for ( TInt i = 0; i < aWidgetInfoArr.Count(); i++ )
+ {
+ CWidgetInfo *item = aWidgetInfoArr[i];
+ delete item;
+ }
+ }
+
+
+// end of file