williamr@4: /* williamr@4: * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). williamr@4: * All rights reserved. williamr@4: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@4: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: * williamr@4: * Initial Contributors: williamr@4: * Nokia Corporation - initial contribution. williamr@4: * williamr@4: * Contributors: williamr@4: * williamr@4: * Description: Describes functionalities for Extended Bitmap Icon Header. williamr@4: * Author : Shakti Prakash Chittara williamr@4: * williamr@4: */ williamr@4: williamr@4: williamr@4: williamr@4: #ifndef AKNICONHEADER_ williamr@4: #define AKNICONHEADER_ williamr@4: williamr@4: // INCLUDES williamr@4: #include williamr@4: williamr@4: struct THeader // be aware of padding! williamr@4: { williamr@4: TUint16 sign; williamr@4: TUint8 version; williamr@4: TUint8 headerSize; williamr@4: TUint32 reserved1; williamr@4: TUint16 reserved2; williamr@4: TUint8 reserved3; williamr@4: TUint8 reserved4:4; /// flags williamr@4: TUint8 isMarginCorrection:1; /// flags williamr@4: TUint8 isMask:1; // flags williamr@4: TUint8 aspectRatio:2; /// flags williamr@4: TInt32 rotation; williamr@4: TInt32 iconColor; williamr@4: TInt32 bitmapid; williamr@4: } ; williamr@4: williamr@4: williamr@4: williamr@4: // CONSTANTS williamr@4: static const TInt KIconHeaderLength = sizeof(THeader); williamr@4: class TAknIconHeader williamr@4: { williamr@4: williamr@4: public: williamr@4: inline TAknIconHeader(TDes8 &aData); williamr@4: williamr@4: inline ~TAknIconHeader(); williamr@4: williamr@4: inline void Initialize(); williamr@4: williamr@4: inline void SetRotation(TInt aAngle); williamr@4: williamr@4: inline TInt GetRotation() const; williamr@4: williamr@4: inline void SetScaleMode(TInt aMode); williamr@4: williamr@4: inline TInt GetScaleMode() const; williamr@4: williamr@4: inline void SetIconColor(TUint32 aColor); williamr@4: williamr@4: inline TUint32 GetIconColor() const; williamr@4: williamr@4: inline void SetMarginCorrection(TBool isMarginFlag); williamr@4: williamr@4: inline TBool IsMarginCorrection() const; williamr@4: williamr@4: inline void SetBitmapId(TInt aBitmapId); williamr@4: williamr@4: inline TInt GetBitmapId() const; williamr@4: williamr@4: inline void SetIsMask(TBool isMask); williamr@4: williamr@4: inline TBool IsMask() const; williamr@4: williamr@4: private: williamr@4: williamr@4: THeader *iHeader; williamr@4: }; williamr@4: williamr@4: #include "AknIconHeader.inl" williamr@4: #endif /*AKNICONHEADER_*/