diff -r 000000000000 -r 15bf7259bb7c uiacceltk/hitchcock/coretoolkit/inc/hwatranseffect.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiacceltk/hitchcock/coretoolkit/inc/hwatranseffect.h Tue Feb 02 07:56:43 2010 +0200 @@ -0,0 +1,90 @@ +/* +* Copyright (c) 2008 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 __HWATRANSEFFECT__ +#define __HWATRANSEFFECT__ + +#include +#include +#include + +class HwaTransEffect + { +public: + +enum EFxGuiLibrary{ + EGuiNone, // No connection to wserv + EGuiAvkon, // WServ, Cone & Avkon assumed within a thread + EGuiQt + } + +enum EApplicationFxEvent + { + EFxApplicationStarting, + EFxApplicationClosing, + EFxApplicationActivated, + EFxApplicationDeactivated, + EFxApplicationEmbeddedStarting, + EFxApplicationEmbeddedClosing + // Todo: Should we have different events for embed cases where hos loses its focus ? + } + + + // should we enforce this somehow to AppFW (e.g. ref to CAknAppUi / CCoeEnv / ..) + // or e.g. just enum + // Framework will call + IMPORT_C static TInt InitStatic(TUid aAppUid, TInt aFxGuiLibrary = EGuiAvkon ); + IMPORT_C void Close(); + + // Geter for thread singleton + IMPORT_C HwaTransEffect* Static() + + // -------------------------------------------------------------------------------------------------------------- + // Registering a component (Effect identifier & component identifier could be strings as well , should they even be??) + // -------------------------------------------------------------------------------------------------------------- + IMPORT_C TInt Register(const CCoeControl& aControl, TInt aEffectIdentifier); + IMPORT_C TInt RegisterUnique(const TDesC8& aComponentIdentifier, const CCoeControl& aControl, TInt aEffectIdentifier); + IMPORT_C TInt Register(const CAlfVisual& aVisual, TInt aEffectIdentifier); + IMPORT_C TInt RegisterUnique(const TDesC8& aComponentIdentifier, const CAlfVisual& aVisual, TInt aEffectIdentifier); + + // ToDo: Should there be possibility to unregister elements / effects as well ? + + // -------------------------------------------------------------------------------------------------------------- + // Launching an effect + // -------------------------------------------------------------------------------------------------------------- + IMPORT_C void Start(TInt aEffectIdentifier ); + IMPORT_C void End( TInt aEffectIdentifier ); + + // ToDo: Other way to launch unique effects would be using just passing cntrl / visual reference here + // On the other hand, if we assume that registering is the method that is allowed to fail, it shoul + IMPORT_C void Start(const TDesC8& aComponentIdentifier, TInt aEffectIdentifier ); + IMPORT_C void End( const TDesC8& aComponentIdentifier, TInt aEffectIdentifier ); + + IMPORT_C void StartApplicationEffect(const TUid& aAppUid, TInt aApplicationFxEvent); + IMPORT_C void StartApplicationEffect(TInt aWindowGroupId, TInt aApplicationFxEvent); + IMPORT_C void ResetApplicationEffect(TInt aApplicationFxEvent); + +private: + class HwaTransEffectData; + HwaTransEffectData* iData + }; + +#endif // #ifndef __HWATRANSEFFECT__ + + + \ No newline at end of file