--- a/extras/calcsoft/src/CalcView.cpp Thu Jul 15 18:40:36 2010 +0300
+++ b/extras/calcsoft/src/CalcView.cpp Thu Aug 19 09:56:23 2010 +0300
@@ -75,7 +75,7 @@
iCalcDocument = STATIC_CAST(CCalcDocument*, AppUi()->Document());
iCalcDocument->SetCalcView( this );
- CreateContainerL();
+
iCalcDocument->LoadStateL();
/******** Initialize the ServiceHandler in the ConstructL *****/
@@ -92,12 +92,17 @@
// Destructor
CCalcView::~CCalcView()
{
- delete iContainer;
- if(iServiceHandler)
- {
- delete iServiceHandler;
- iServiceHandler = NULL;
- }
+ if ( iContainer )
+ {
+ delete iContainer;
+ iContainer = NULL;
+ }
+
+ if( iServiceHandler )
+ {
+ delete iServiceHandler;
+ iServiceHandler = NULL;
+ }
}
@@ -1039,8 +1044,13 @@
TUid /* aCustomMessageId */,
const TDesC8& /* aCustomMessage */)
{
- AppUi()->AddToStackL(*this, iContainer);
- iContainer->ActivateL();
+ if ( iContainer == NULL )
+ {
+ CreateContainerL();
+ AppUi()->AddToStackL( *this, iContainer );
+ iContainer->ActivateL();
+ }
+
}
// ----------------------------------------------------
@@ -1051,9 +1061,11 @@
//
void CCalcView::DoDeactivate()
{
- if (iContainer)
+ if ( iContainer )
{
- AppUi()->RemoveFromStack(iContainer);
+ AppUi()->RemoveFromStack( iContainer );
+ delete iContainer;
+ iContainer = NULL;
}
}