00001 /* 00002 * ============================================================================== 00003 * Name : AknsSkinInstance.h 00004 * Part of : Avkon Skins / Skin Library 00005 * Interface : ?Interface_category, ?Interface_name 00006 * Description : Defines a public interface class MAknsSkinInstance and related 00007 * enumerations. 00008 * Version : ?Version 00009 * 00010 * Copyright © 2002 Nokia Corporation. 00011 * This material, including documentation and any related 00012 * computer programs, is protected by copyright controlled by 00013 * Nokia Corporation. All rights are reserved. Copying, 00014 * including reproducing, storing, adapting or translating, any 00015 * or all of this material requires the prior written consent of 00016 * Nokia Corporation. This material also contains confidential 00017 * information which may not be disclosed to others without the 00018 * prior written consent of Nokia Corporation. 00019 * ============================================================================== 00020 */ 00021 00022 #ifndef AKNSSKININSTANCE_H 00023 #define AKNSSKININSTANCE_H 00024 00025 // INCLUDES 00026 #include <e32std.h> 00027 00028 #include <AknsDataContext.h> 00029 #include <AknsItemData.h> 00030 00031 // FORWARD DECLARATIONS 00032 class CFbsBitGc; 00033 class CAknsItemDef; 00034 00035 // DATA TYPES 00036 00042 enum TAknsClientError 00043 { 00047 EAknsClientErrorUnspecified = 0, 00048 00054 EAknsClientErrorOOM = -4 00055 }; 00056 00057 00058 // CLASS DECLARATION 00059 00073 class MAknsSkinInstance 00074 { 00075 public: // Constructors and destructor 00076 00084 inline virtual ~MAknsSkinInstance() {} 00085 00086 public: // New functions - Item data 00087 00101 virtual MAknsDataContext* RootDataContext() =0; 00102 00125 virtual CAknsItemData* GetCachedItemData( const TAknsItemID& aID, 00126 const TAknsItemType aType ) =0; 00127 00150 virtual CAknsItemData* GetCachedItemData( const TAknsItemID& aID ) =0; 00151 00172 virtual CAknsItemData* CreateUncachedItemDataL( const TAknsItemID& aID, 00173 const TAknsItemType aType ) =0; 00174 00195 virtual CAknsItemData* CreateUncachedItemDataL( const TAknsItemID& aID ) =0; 00196 00197 public: // New functions - Item definitions 00198 00218 virtual void SetLocalItemDefL( CAknsItemDef* aDef ) =0; 00219 00230 virtual void SetChangeEventsEnabled( TBool aEnabled ) =0; 00231 00232 public: // New functions - Error handling 00233 00247 virtual void NotifyClientError( const TAknsClientError aError ) =0; 00248 00249 public: // New functions - querying the skin change reason. 00250 public: 00251 }; 00252 00253 // AKNSSKININSTANCE_H 00254 #endif 00255 00256 // End of File