00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef AKNSDRAWUTILS_H
00022 #define AKNSDRAWUTILS_H
00023
00024
00025 #include <AknsUtils.h>
00026
00027
00028
00034 static const TInt KAknsDrawParamDefault = 0x0;
00035
00042 static const TInt KAknsDrawParamLimitToFirstLevel = 0x1;
00043
00050 static const TInt KAknsDrawParamNoClearUnderImage = 0x2;
00051
00058 static const TInt KAknsDrawParamPrepareOnly = 0x04;
00059
00065 static const TInt KAknsDrawParamRGBOnly = 0x8;
00066
00073 static const TInt KAknsSDMAlphaOnly = 0x10;
00080 static const TInt KAknsDrawParamChained = 0x20;
00081
00088 static const TInt KAknsDrawParamBottomLevelRGBOnly = 0x40;
00089
00096 static const TInt KAknsDrawParamIgnoreLayerMask = 0x80;
00097
00103 enum TSlidingMode
00104 {
00106 ESlidingDisabled = 0,
00107
00109 ESlidingFromCBA,
00110
00112 ESlidingFromLeft,
00113
00115 ESlidingFromTopLeft,
00116
00118 ESlidingFromTop,
00119
00121 ESlidingFromTopRight,
00122
00124 ESlidingFromRight,
00125
00127 ESlidingFromBottomRight,
00128
00130 ESlidingFromBottom,
00131
00133 ESlidingFromBottomLeft,
00134
00136 ESlidingFromRandom
00137 };
00138
00139
00140
00141 class MAknsSkinInstance;
00142 class MAknsControlContext;
00143 class CWindowGc;
00144 class CFbsBitGc;
00145 class CCoeControl;
00146
00147
00148
00161 class AknsDrawUtils
00162 {
00163 public:
00164
00179 IMPORT_C static MAknsControlContext* ControlContext(
00180 const MObjectProvider* aMop );
00181
00193 IMPORT_C static MAknsControlContext* ControlContextOfParent(
00194 const CCoeControl* aControl );
00195
00221 IMPORT_C static TBool Background( MAknsSkinInstance* aInstance,
00222 MAknsControlContext* aContext, CWindowGc& aGc, const TRect& aRect );
00223
00256 IMPORT_C static TBool Background( MAknsSkinInstance* aInstance,
00257 MAknsControlContext* aContext, const CCoeControl* aControl,
00258 CWindowGc& aGc, const TRect& aRect );
00259
00296 IMPORT_C static TBool Background( MAknsSkinInstance* aInstance,
00297 MAknsControlContext* aContext, const CCoeControl* aControl,
00298 CWindowGc& aGc, const TRect& aRect, const TInt aDrawParam );
00299
00345 IMPORT_C static TBool DrawBackground( MAknsSkinInstance* aInstance,
00346 MAknsControlContext* aContext, const CCoeControl* aControl,
00347 CBitmapContext& aGc, const TPoint& aDstPos,
00348 const TRect& aControlRect, const TInt aDrawParam );
00349
00377 IMPORT_C static TBool BackgroundBetweenRects(
00378 MAknsSkinInstance* aInstance,
00379 MAknsControlContext* aContext, CWindowGc& aGc,
00380 const TRect& aOuterRect,const TRect& aInnerRect );
00381
00412 IMPORT_C static TBool BackgroundBetweenRects(
00413 MAknsSkinInstance* aInstance,
00414 MAknsControlContext* aContext, const CCoeControl* aControl,
00415 CWindowGc& aGc,
00416 const TRect& aOuterRect,const TRect& aInnerRect );
00417
00450 IMPORT_C static TBool BackgroundBetweenRects(
00451 MAknsSkinInstance* aInstance,
00452 MAknsControlContext* aContext, const CCoeControl* aControl,
00453 CWindowGc& aGc,
00454 const TRect& aOuterRect, const TRect& aInnerRect,
00455 const TInt aDrawParam );
00456
00479 IMPORT_C static TBool HasBitmapBackground(
00480 MAknsSkinInstance* aInstance,
00481 MAknsControlContext* aContext );
00482
00497 IMPORT_C static void DrawCachedImage( MAknsSkinInstance* aInstance,
00498 CWindowGc& aGc, const TRect& aRect, const TAknsItemID& aID );
00499
00516 IMPORT_C static void DrawCachedImage( MAknsSkinInstance* aInstance,
00517 CFbsBitGc& aGc, const TRect& aRect, const TAknsItemID& aID );
00518
00545 IMPORT_C static TBool DrawFrame( MAknsSkinInstance* aInstance,
00546 CWindowGc& aGc, const TRect& aOuterRect, const TRect& aInnerRect,
00547 const TAknsItemID& aFrameID, const TAknsItemID& aCenterID );
00548
00587 IMPORT_C static TBool PrepareFrame( MAknsSkinInstance* aInstance,
00588 const TRect& aOuterRect, const TRect& aInnerRect,
00589 const TAknsItemID& aFrameID, const TAknsItemID& aCenterID);
00590
00625 IMPORT_C static TBool DrawFrame( MAknsSkinInstance* aInstance,
00626 CFbsBitGc& aGc, const TRect& aOuterRect, const TRect& aInnerRect,
00627 const TAknsItemID& aFrameID, const TAknsItemID& aCenterID,
00628 const TInt aDrawParam );
00629
00660 IMPORT_C static TBool DrawFrame( MAknsSkinInstance* aInstance,
00661 CFbsBitGc& aGc, const TRect& aOuterRect, const TRect& aInnerRect,
00662 const TAknsItemID& aFrameID, const TAknsItemID& aCenterID );
00663
00692 IMPORT_C static TBool DrawFramePart( MAknsSkinInstance* aInstance,
00693 CWindowGc& aGc, const TRect& aRect, const TAknsItemID& aFrameID,
00694 const TAknsFrameElementIndex aFrameElement );
00695
00720 IMPORT_C static TBool IsListSeperatorLines(
00721 MAknsSkinInstance* aInstance );
00722
00734 IMPORT_C static TSlidingMode SlidingMode(
00735 MAknsSkinInstance* aInstance );
00736
00737 private:
00738
00739
00740 AknsDrawUtils();
00741
00742 ~AknsDrawUtils();
00743 };
00744
00745
00746 #endif
00747
00748