dcmofw/dcmoserver/src/dcmomessagebox.cpp
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 31 Aug 2010 16:04:06 +0300
branchRCL_3
changeset 25 b183ec05bd8c
permissions -rw-r--r--
Revision: 201033 Kit: 201035

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:  DCMO Message Box 
*
*/


#include "dcmomessagebox.h"
#include "dcmoserver.h"
#include "dcmodebug.h"

TBool CDCMOMessageBox::iMsgBoxClosed = EFalse;

// --------------------------------------------------------------------------
// CDCMOMessageBox* CDCMOMessageBox::NewL( )
// --------------------------------------------------------------------------
//
CDCMOMessageBox* CDCMOMessageBox::NewL( )
	{
		RDEBUG("CDCMOMessageBox::NewL begin");
		CDCMOMessageBox* self = new (ELeave) CDCMOMessageBox( );
  	RDEBUG("CDCMOMessageBox::NewL end");
		return self;		
	}

// --------------------------------------------------------------------------
// CDCMOMessageBox::CDCMOMessageBox( )
// --------------------------------------------------------------------------
//
CDCMOMessageBox::CDCMOMessageBox( ) 
	{
		iMessageBox = NULL;
		RDEBUG("CDCMOMessageBox::constructor");
	}

// --------------------------------------------------------------------------
// CDCMOMessageBox::~CDCMOMessageBox()
// --------------------------------------------------------------------------
//
CDCMOMessageBox::~CDCMOMessageBox()
	{
		RDEBUG("CDCMOMessageBox::~CDCMOMessageBox begin");   
		if( iMessageBox )
		{
			delete iMessageBox ;
    	iMessageBox = NULL; 
		}	
		RDEBUG("CDCMOMessageBox::~CDCMOMessageBox end");    
  }

// --------------------------------------------------------------------------
// TBool CDCMOMessageBox::IsMsgBoxClosed( )
// --------------------------------------------------------------------------
//
TBool CDCMOMessageBox::IsMsgBoxClosed()
	{
		return iMsgBoxClosed;
	}

// --------------------------------------------------------------------------
// void CDCMOMessageBox::SetMsgBoxStatus( TBool aStatus )
// --------------------------------------------------------------------------
//
void CDCMOMessageBox::SetMsgBoxStatus(TBool aStatus)
{
		iMsgBoxClosed = aStatus;
}
	
// --------------------------------------------------------------------------
// void CDCMOMessageBox::ShowNotifierL( TDesC& aString )
// --------------------------------------------------------------------------
//
void CDCMOMessageBox::ShowMessageL( TDesC& aString )
{
		RDEBUG("CDCMOMessageBox::ShowMessageL() : Begin");
		if( !iMessageBox )
			iMessageBox = CHbDeviceMessageBoxSymbian::NewL();			
		iMessageBox->SetTimeout(0); //HbPopup::NoTimeout); 
		iMessageBox->SetDismissPolicy(0); //HbPopup::NoDismiss
		iMessageBox->SetTextL(aString);
		iMessageBox->SetObserver(this);
		iMessageBox->ShowL();		
		RDEBUG("CDCMOMessageBox::ShowMessageL() : End");	
}

void CDCMOMessageBox::MessageBoxClosed(const CHbDeviceMessageBoxSymbian */*aMessageBox*/,
     CHbDeviceMessageBoxSymbian::TButtonId /*aButton*/)
 {
  		 delete	iMessageBox;
  		 iMessageBox = NULL;
    	 iMsgBoxClosed = ETrue;	
    	 if( CDCMOServer::iSessionCount == 0)
    		CActiveScheduler::Stop();
 }
	
//  End of File