uiacceltk/hitchcock/coretoolkit/src/HuiControlGroup.cpp
changeset 13 8f67d927ea57
parent 0 15bf7259bb7c
child 14 83d2d132aa58
--- a/uiacceltk/hitchcock/coretoolkit/src/HuiControlGroup.cpp	Tue Feb 02 07:56:43 2010 +0200
+++ b/uiacceltk/hitchcock/coretoolkit/src/HuiControlGroup.cpp	Fri Mar 19 09:43:21 2010 +0200
@@ -29,7 +29,7 @@
 #include "uiacceltk/HuiEnv.h"
 
 CHuiControlGroup::CHuiControlGroup(TInt aResourceId, CHuiEnv& aEnv)
-        : iResourceId(aResourceId), iEnv(aEnv), iAcceptInput(ETrue), iOpacity( 1.f )
+        : iResourceId(aResourceId), iEnv(aEnv), iAcceptInput(ETrue), iOpacity( 1.f ),iAlfApp(EFalse)
     {
     HUI_PROBE_ASSOCIATE_WITH_CURRENT_SESSION
     HUI_PROBE_REPORT_CONSTRUCTED
@@ -48,22 +48,29 @@
 
 	
 CHuiControlGroup::~CHuiControlGroup()
-    {    
-    iUnhandledEventObservers.Close();
+    {   
+    
+       
+        iEnv.RemoveTheControlGroup(iResourceId);
     
-    // The group owns the controls, so it must destroy them.
-    // Destroy in reverse order so that references will be removed in 
-    // natural order (children of a pane will be removed before the pane).
-    for(TInt i = iControls.Count() - 1; i >= 0; --i)
-        {
-        CHuiControl* c = iControls[i];
-        iControls.Remove(i);
-        delete c;
-        }
-    iControls.Reset();
+        iUnhandledEventObservers.Close();
+            
+            // The group owns the controls, so it must destroy them.
+            // Destroy in reverse order so that references will be removed in 
+            // natural order (children of a pane will be removed before the pane).
+            for(TInt i = iControls.Count() - 1; i >= 0; --i)
+                {
+                CHuiControl* c = iControls[i];
+                iControls.Remove(i);
+                delete c;
+                }
+            iControls.Reset();
+            
+            delete iTransform;
+            iTransform = NULL;
+            HUI_PROBE_REPORT_DESTRUCTED
+      
     
-    delete iTransform;
-    HUI_PROBE_REPORT_DESTRUCTED
     }