uifw/uiklaf/inc/LAFCMBUT.H
changeset 0 2f259fa3e83a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uifw/uiklaf/inc/LAFCMBUT.H	Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,149 @@
+/*
+* Copyright (c) 1997-1999 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 __LAFCMBUT_H__
+#define __LAFCMBUT_H__
+
+#include <gulbordr.h>
+#include <coecntrl.h>
+#include <lafmain.h>
+
+class TDrawState;
+class MLafEnv;
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafCommandButtonBase
+	{
+public:
+	IMPORT_C static void GetDefaultBorder(TGulBorder& aBorder);
+	IMPORT_C static void GetBorderColors(TGulBorder::TColors& aBorderColors,const MLafEnv& aEnv,const CCoeControl& aMatchedControl);
+	IMPORT_C static void GetBorder(TGulBorder& aBorder, TInt aDrawState, TInt aFlags,const CCoeControl& aButtonBase,TBool aIsDefaultButton);
+	IMPORT_C static TInt ComponentOffset(TInt aDrawState, TInt aFlags);
+	IMPORT_C static void PrepareContext(CWindowGc& aGc,TInt aDrawState,
+									   const MLafEnv& aLafEnv,
+									   const CCoeControl& aButtonBase);
+	IMPORT_C static void Draw(const MLafEnv& aLafEnv, const CCoeControl& aMatchedControl,
+							 CWindowGc& aGc,
+							 const TGulBorder& aBorder,
+							 TInt aDrawOffset,TInt aDrawState,
+							 TMargins8 aGutters,
+							 TBool aIsDefaultButton);
+	IMPORT_C static void GetColorUseListL(CArrayFix<TCoeColorUse>& aColorUseList);
+public:
+	inline static TInt ImageMargin();
+	inline static TInt LabelMargin();
+	inline static TInt IntraComponentMargin();
+private:
+	enum TConstantType
+		{
+		EImageMargin,
+		ELabelMargin,
+		EIntraComponentMargin
+		};
+private:
+	IMPORT_C static TInt Constant(TConstantType aConstant);
+private:
+	static void DrawSelection(const TGulBorder& aBorder,const TRect& aRect,CWindowGc& aGc);
+	};
+
+/**
+ * Returns the margin required on all sides of the command button base image
+ *
+ * @since App-Framework_6.1
+ */
+inline TInt LafCommandButtonBase::ImageMargin()
+	{//static
+	return Constant(EImageMargin);	
+	}
+
+/**
+ * Returns the margin required on all sides of the command button base label
+ *
+ * @since App-Framework_6.1
+ */
+inline TInt LafCommandButtonBase::LabelMargin()
+	{//static
+	return Constant(ELabelMargin);	
+	}
+
+/**
+ * Returns the margin required between the two components of a command button base
+ *
+ * @since App-Framework_6.1
+ */
+inline TInt LafCommandButtonBase::IntraComponentMargin()
+	{//static
+	return Constant(EIntraComponentMargin);	
+	}
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafCommandButton
+	{
+public:
+	IMPORT_C static TMargins8 Margins();
+	};
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafInverterCommandButton
+	{
+public:
+	IMPORT_C static TMargins8 Margins();
+	};
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafBitmapButton
+	{
+public:
+	IMPORT_C static TMargins8 Margins();
+	};
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafTextButton
+	{
+public:
+	IMPORT_C static TMargins8 Margins();
+	};
+
+/**
+ * @internal
+ * Do not use
+ */
+class LafTwoPictureCommandButton
+	{
+public:
+	IMPORT_C static void GetDefaultBorder(TGulBorder& aBorder);
+	IMPORT_C static TMargins8 Margins();
+	IMPORT_C static void GetBorderColors(TGulBorder::TColors& aBorderColors,const MLafEnv& aEnv,const CCoeControl& aMatchedControl);
+	};
+
+#endif