epoc32/include/uiklaf/private/lafenv.h
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
--- a/epoc32/include/uiklaf/private/lafenv.h	Wed Mar 31 12:27:01 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,376 +0,0 @@
-// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
-// which accompanies this distribution, and is available
-// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-#ifndef __LAFENV_H__
-#define __LAFENV_H__
-
-#include <e32std.h>
-#include <e32base.h>
-#include <gulbordr.h>
-#include <gulalign.h>
-#include <lafmain.h>
-#include <apgcli.h>
-#include <eikinfomsgwin.h>
-#include <eikbusymsgwin.h>
-#include <eikmsg.h>
-
-class MParser;
-class CCoeEnv;
-class CFont;
-class TLogicalFont;
-class CLafSystemFont;
-
-class LafEnv
-/** Application environment level LAF functions.
-
-@publishedPartner 
-@released */
-	{
-public:
-	/** Creates an EText parser.
-	
-	@param aIndex Index of parser to retrieve. A LAF can supply multiple parsers, 
-	indexed from 0.
-	@return EText parser */
-	IMPORT_C static MParser* CreateTextParserL(TInt aIndex);
-	/** Draws a logical border.
-	
-	@param aBorder Border specification to draw
-	@param aGc Graphics context to which to draw
-	@param aRect Drawing rectangle
-	@param aBorderColors Colours with which to draw */
-	IMPORT_C static void DrawLogicalBorder(const TGulBorder& aBorder,CGraphicsContext& aGc,const TRect& aRect,const TGulBorder::TColors& aBorderColors);
-	/** Gets the margins of a specified logical border.
-	
-	@param aBorder Border specification
-	@return Border's margins */
-	IMPORT_C static TMargins LogicalBorderMargins(const TGulBorder& aBorder);
-	/** Populates an array with a set of system bitmaps.
-	
-	CEikonEnv calls this to get system bitmaps, and uses the array in subsequent 
-	calls to MatchBitmap().
-	
-	@param aEnv Application's control environment
-	@param aBitmaps On return, array of system bitmaps */
-	IMPORT_C static void CreateSystemBitmapsL(CCoeEnv& aEnv, CArrayPtrFlat<CFbsBitmap>& aBitmaps);
-	/** Populates an array with a set of system fonts.
-	
-	CEikonEnv calls this to get system fonts, and uses the array in subsequent 
-	calls to MatchFont().
-	
-	A minimum of one font must be created. 
-	
-	@param aEnv Application's control environment
-	@param aFonts On return, array of system fonts */
-	IMPORT_C static void CreateSystemFontsL(CCoeEnv& aEnv,CArrayPtr<CLafSystemFont>& aFonts);
-	/** Gets the nearest match in the specified fonts for a specified logical system 
-	font.
-	
-	The return value must be non-NULL.
-	
-	@param aFonts Fonts from which to select the match
-	@param aLogicalFont The logical font to match
-	@return Font that is the best match to aLogicalFont */
-	IMPORT_C static const CFont* MatchFont(CArrayPtr<CLafSystemFont>& aFonts,const TLogicalFont& aLogicalFont);
-	/** Gets the nearest match in the specified bitmaps for a specified system bitmap 
-	type.
-	
-	The desired bitmap is specified by the identifer aBmpUid: for possible UIDs, 
-	see KLafUidEikonTexturedVal etc.
-	
-	The return value must be non-NULL.
-	
-	@param aSystemBmps Bitmaps from which to select the match
-	@param aBmpUid The bitmap type to match
-	@return Bitmap that is the best match to aBmpUid */
-	IMPORT_C static CFbsBitmap* MatchBitmap(const CArrayPtrFlat<CFbsBitmap>& aSystemBmps, TUid aBmpUid);
-	/** Gets the corner of the screen which the busy message should appear in by default 
-	on the device. 
-	
-	@return Default corner
-	@see CEikonEnv::BusyMsgL() */
-	IMPORT_C static TGulAlignment DefaultBusyMsgCorner();
-	/** Tests if the specified key corresponds to the hardware default key.
-	
-	@param aCharCode Key to test
-	@return True if the key is the default */
-	IMPORT_C static TBool IsDefaultKey(TUint aCharCode);
-	/** Gets the default line spacing used to format text paragraphs.
-	
-	@return Default line spacing in twips */
-	IMPORT_C static TInt DefaultLineSpacingInTwips();
-	/** Gets the height of single-line edit control for the system normal font.
-	
-	@param aLafEnv Environment access
-	@return Height of single-line edit control */
-	IMPORT_C static TInt EditableControlStandardHeight(const MLafEnv& aLafEnv);
-	/** Sets any device-specific font attributes to be applied to the system character 
-	formatting layer.
-	
-	Applications can access the format layer through CEikonEnv::SystemCharFormatLayerL(). 
-	This format layer is also used in Edwins.
-	
-	@param aCharFormat On return, the character formatting to apply
-	@param aCharFormatMask On return, the character formatting mask to apply */
-	IMPORT_C static void PrepareCharFormatAndMask(TCharFormat& aCharFormat,TCharFormatMask& aCharFormatMask);
-	/** Specifies (and creates if necessary) a default directory for documents.
-	
-	The function is called on application startup. The parameters provided are 
-	to allow an implementation to generate a document directory based on the application 
-	being launched.
-	
-	@param aFilePath On return, the default / generated directory path
-	@param aAppUid UID of application being launched
-	@param aLs Application's session with the Application Architecture server
-	@param aEnv Thread's control environment */
-	IMPORT_C static void GetDefaultPath(TDes& aFilePath,TUid aAppUid,RApaLsSession& aLs,CCoeEnv& aEnv);
-	/** Loads the system resource file.
-	
-	The system resource file defines resources required by the system environment, 
-	and which can also be used by applications. The function is called by CCoeEnv's 
-	construction function.
-	
-	@param aEnv Thread's control environment
-	@return System wide error code */
-	IMPORT_C static TInt LoadCoreResFileL(CCoeEnv& aEnv);
-	/** Loads the private resource file.
-	
-	The private resource file defines resources required by the system environment, 
-	but not intended for application use. The function is called by CCoeEnv's 
-	construction function.
-	
-	@param aEnv Thread's control environment
-	@return System wide error code */
-	IMPORT_C static TInt LoadPrivResFileL(CCoeEnv& aEnv);
-	/** Gets the name of the resource file that contains resources for the EIKCOCTL 
-	component.
-	
-	@return Resource file for the EIKCOCTL component */
-	IMPORT_C static const TDesC& CoctlResourceFile();
-	/** Allows the LAF to update the list of system bitmaps, in response to a colour 
-	settings change.
-	
-	@param aEnv Thread's control environment
-	@param aBitmaps On return, updated array of system bitmaps
-	@param aColorList New colour settings */
-	IMPORT_C static void UpdateSystemBitmapsL(CCoeEnv& aEnv, CArrayPtrFlat<CFbsBitmap>& aBitmaps, const CColorList& aColorList);
-	
-	/**	Performs the releasing of the fonts but doesn't delete the array itself
-	
-	@param aSystemFontArray array of fonts to release
-	*/
-	IMPORT_C static void ReleaseSystemFonts( CArrayPtr<CLafSystemFont>& aSystemFontArray);
-	
-	/** Creates busy message window.
-	
-	@param aEnv Thread's control environment
-	@return Busy message window */
-	IMPORT_C static MEikBusyMsgWin* NewBusyMsgWinL(CCoeEnv& aEnv);
-	/** Creates info message window.
-	
-	@param aEnv Thread's control environment
-	@return Info message window */
-	IMPORT_C static MEikInfoMsgWin* NewInfoMsgWinL(CCoeEnv& aEnv);
-		
-	/** Creates info message window, overridden function to allow another RWindowGroup to be
-	used rather the the the CCoeEnv's RootWin() function.
-		
-	@param aEnv Thread's control environment
-	@param aWinGroup window group for displaying the Info Msg
-	@return Info message window */
-    	IMPORT_C static MEikInfoMsgWin* NewInfoMsgWinL(CCoeEnv& aEnv, RWindowGroup& aWinGroup);
-	/** Asks if display of the task list is disabled during initialization
-
-	@return ETrue if task list is disabled, otherwise EFalse */
-	IMPORT_C static TBool IsTaskListDisabledAtInitialization();
-	/** Displays a one or two line alert as a notifier window customisable by the system GUI.
-
-	@param aMsg1 Line one of the message to be displayed.
-	@param aMsg2 Line two of the message to be displayed */
-	IMPORT_C static void DisplayAlertAsNotifier(const TDesC& aMsg1, const TDesC& aMsg2);
-	
-	/** Updates an existing color list
-	
-	@param aColorList The color list to be updated. */
-	IMPORT_C static void UpdateColorListL(CColorList* aColorList);
-	
-	/** Plays an audible alert, if supported by the system GUI. */
-	IMPORT_C static void Beep();
-	
-	/** Updates an existing array of system fonts.
-	
-	@param aEnv Thread's control environment
-	@param aSystemFontArray The array of fonts to be updated */
-	IMPORT_C static void UpdateSystemFontsL(CCoeEnv* aEnv, CArrayPtr<CLafSystemFont>& aSystemFontArray);
-
-	/** A list of events that are handled by the HandleExtensionEventL() function.*/
-	enum TLafEnvExtensionEvent 
-        {
-        /** Event sent in CEikonEnv::ConstructL right before CCoeEnv::ConstructL() */
-        ELafEnvPreCoeEnvConstructL,
-        /** Event sent in CEikonEnv::ConstructL right after CCoeEnv::ConstructL() */
-        ELafEnvPostCoeEnvConstructL
-        };
-	
-	/** Handles events listed by TLafEnvExtensionEvent
-	@param aEnv The instance of CEikonEnv from which this function has been called
-	@param aEvent The event
-	*/
-	IMPORT_C static void HandleExtensionEventL(CEikonEnv& aEnv, TLafEnvExtensionEvent aEvent);
-	
-    /** Allows debug keys to display output.
-    @param aResourceId The resource to use for the note
-    */
-    IMPORT_C static void InfoNote(TInt aResourceId,...);
-
-	/** Creates a default system colour list. 
-	@param aEnv The instance of CEikonEnv from which this function has been called
-	@return A list of colours
-	*/
-	IMPORT_C static CColorList* CreateColorListL(CEikonEnv& aEnv);
-	
-	/** Gets the name of the clock DLL
-	@return The name of the clock DLL
-	*/
-	IMPORT_C static const TDesC& ClockDllName();
-
-	/** The behaviour of CEikonEnv can be customized. This enum lists
-	the things that can be customized. */
-	enum TLafEnvPolicyItem
-        {
-        /** The action to take when there is an error during startup. */
-        ELafEnvPolicyExitIfErrorDuringStartup,
-        /** The action to take when the document is corrupt. */
-        ELafEnvPolicyDeleteCorruptDocumentAndContinue,
-        /** This affects the way the environment is deleted. */
-        ELAfEnvPolicyDeferredEnvironmentDeletion,
-        };
-
-	/** CEikonEnv will use this function to find out how it should behave.
-	The list of things that can be customized this way are listed by 
-	TLafEnvPolicyItem.
-	@param aItem The policy item.
-	@return An integer that indicates what the action should be.
-	*/
-    IMPORT_C static TInt PolicyItem(TLafEnvPolicyItem aItem);
-
-public:
-	inline static TInt ShadowHeight();
-private:
-	/** Defines types of constant setting relevant to LAFs. */
-	enum TConstantType
-		{
-		/** Window shadow height. */
-		EShadowHeight
-		};
-private:
-	/** Gets the value for a specified constant setting.
-	
-	@param aConstant Type of constant setting to get
-	@return Value for the constant setting */
-	IMPORT_C static TInt Constant(TConstantType aConstant);
-	};
-
-// identifiers for legacy system fonts
-
-/** UID for the system "normal" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidNormalFontVal		0x10005F02
-
-/** UID for the system "title" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidTitleFontVal			0x10005F03
-
-/** UID for the system "annotation" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidAnnotationFontVal	0x10005F04
-
-/** UID for the system "legend" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidLegendFontVal		0x10005F05
-
-/** UID for the system "symbol" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidSymbolFontVal		0x10005F06
-
-/** UID for the system "dense" font.
-
-@see TLogicalFont::iFontId 
-@publishedPartner 
-@released */
-#define KLafUidDenseFontVal			0x10005F07
-
-// identifiers for legacy system bitmaps
-/** UID for a textured block system bitmap.
-
-@see LafEnv::MatchBitmap() 
-@publishedPartner 
-@released */
-#define KLafUidEikonTexturedVal		0x100048F4
-
-/** UID for a gray block system bitmap.
-
-@see LafEnv::MatchBitmap() 
-@publishedPartner 
-@released */
-#define KLafUidEikonGrayVal			0x100048F5
-
-/** UID for a horizontal option button system bitmap.
-
-@see LafEnv::MatchBitmap() 
-@publishedPartner 
-@released */
-#define KLafUidEikonOptiVal			0x100048F6
-
-/** UID for a highlighted horizontal option button system bitmap.
-
-@see LafEnv::MatchBitmap() 
-@publishedPartner 
-@released */
-#define KLafUidEikonOptihVal		0x100048F7
-
-/** UID for a horizontal option button mask system bitmap.
-
-@see LafEnv::MatchBitmap() 
-@publishedPartner 
-@released */
-#define KLafUidEikonOptimVal		0x100048F8
-
-// Inlines
-
-inline TInt LafEnv::ShadowHeight()
-/** Gets the height of shadows to apply to windows. 
-
-@return Shadow height. */
-	{//static
-	return Constant(EShadowHeight);
-	}
-
-#endif