diff -r 89c890c70182 -r 667edd0b8678 classicui_plat/intermediate_state_api/inc/aknintermediate.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/classicui_plat/intermediate_state_api/inc/aknintermediate.h Fri Jul 23 17:08:56 2010 +0800 @@ -0,0 +1,40 @@ +/* +* Copyright (c) 2002 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: +* +*/ + +#ifndef __AKNINTERMEDIATE__ +#define __AKNINTERMEDIATE__ + +/** Intermediate state + * + * To implement intermediate states: + * 1) add iAvkonEnv->RegisterIntermediateState(this) to dialog's ActivateL() + * 2) add iAvkonEnv->UnRegisterIntermediateState(this) to destructor + * 3) derive your control from MAknIntermediateState. + * 4) implement CloseState() method. It should call TryExitL() or something. + * (NOTE, the method is NOT L-method, so use T_RAPD(err, TryExitL(buttonid)); + * + * This will cause your intermediate states to close automatically when + * you swap to another application. + */ + +class MAknIntermediateState + { +public: + virtual void CloseState() = 0; + }; + +#endif