epoc32/include/mw/AknIconHeader.h
branchSymbian3
changeset 4 837f303aceeb
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/mw/AknIconHeader.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -0,0 +1,88 @@
     1.4 +/*
     1.5 +* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
     1.6 +* All rights reserved.
     1.7 +* This component and the accompanying materials are made available
     1.8 +* under the terms of "Eclipse Public License v1.0"
     1.9 +* which accompanies this distribution, and is available
    1.10 +* at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.11 +*
    1.12 +* Initial Contributors:
    1.13 +* Nokia Corporation - initial contribution.
    1.14 +*
    1.15 +* Contributors:
    1.16 +*
    1.17 +* Description:  Describes functionalities for Extended Bitmap Icon Header.
    1.18 +*  Author : Shakti Prakash Chittara
    1.19 +*
    1.20 +*/
    1.21 +
    1.22 +
    1.23 +
    1.24 +#ifndef AKNICONHEADER_
    1.25 +#define AKNICONHEADER_
    1.26 +
    1.27 +// INCLUDES
    1.28 +#include <e32std.h>
    1.29 +
    1.30 +struct THeader         // be aware of padding!
    1.31 +{
    1.32 +  TUint16	sign;             
    1.33 +  TUint8	version;
    1.34 +  TUint8	headerSize;
    1.35 +  TUint32	reserved1;
    1.36 +  TUint16	reserved2;
    1.37 +  TUint8	reserved3;
    1.38 +  TUint8  reserved4:4;                /// flags 
    1.39 +  TUint8  isMarginCorrection:1;           /// flags
    1.40 +	TUint8  isMask:1;  // flags
    1.41 +  TUint8  aspectRatio:2;             /// flags
    1.42 +  TInt32	rotation;
    1.43 +  TInt32	iconColor;
    1.44 +  TInt32	bitmapid;
    1.45 +} ;
    1.46 +
    1.47 +
    1.48 +
    1.49 +// CONSTANTS
    1.50 +static const TInt KIconHeaderLength = sizeof(THeader);
    1.51 +class TAknIconHeader
    1.52 +    {
    1.53 +    
    1.54 +public:
    1.55 +    inline  TAknIconHeader(TDes8 &aData);
    1.56 +
    1.57 +    inline ~TAknIconHeader();
    1.58 +    
    1.59 +    inline void Initialize();
    1.60 +    
    1.61 +    inline void SetRotation(TInt aAngle);
    1.62 +  
    1.63 +    inline TInt GetRotation() const;
    1.64 +  
    1.65 +   inline void SetScaleMode(TInt aMode);
    1.66 +  
    1.67 +    inline TInt GetScaleMode() const;
    1.68 +  
    1.69 +     inline void SetIconColor(TUint32 aColor);
    1.70 +  
    1.71 +    inline TUint32 GetIconColor() const;
    1.72 +  
    1.73 +    inline void SetMarginCorrection(TBool isMarginFlag);
    1.74 +  
    1.75 +    inline TBool IsMarginCorrection() const;
    1.76 +  
    1.77 +     inline void SetBitmapId(TInt aBitmapId);
    1.78 +  
    1.79 +    inline TInt GetBitmapId() const;
    1.80 +
    1.81 +  inline void SetIsMask(TBool isMask);
    1.82 +  
    1.83 +  inline TBool IsMask() const;
    1.84 +  
    1.85 +private:  
    1.86 +
    1.87 +   THeader *iHeader;
    1.88 +    };
    1.89 +
    1.90 +#include "AknIconHeader.inl"
    1.91 +#endif /*AKNICONHEADER_*/