epoc32/include/mw/lafpublc.h
branchSymbian2
changeset 2 2fe1408b6811
parent 1 666f914201fb
child 4 837f303aceeb
--- a/epoc32/include/mw/lafpublc.h	Tue Nov 24 13:55:44 2009 +0000
+++ b/epoc32/include/mw/lafpublc.h	Tue Mar 16 16:12:26 2010 +0000
@@ -1,1 +1,349 @@
-lafpublc.h
+/*
+* Copyright (c) 2002-2007 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 __LAFPUBLC_H__
+#define __LAFPUBLC_H__
+
+#include <e32std.h>
+
+/** @deprecated */
+const TInt KLafScrollBarButtonPositionMask = 0x00C0;
+
+/** @deprecated */
+struct SLafScrollButton
+	{
+	enum TType
+		{
+		ENudgeLeft,
+		ENudgeUp,
+		ENudgeRight,
+		ENudgeDown,
+		EPageLeft,
+		EPageUp,
+		EPageRight,
+		EPageDown,
+		EHome,
+		ETop,
+		EEnd,
+		EBottom
+		};
+	};
+
+struct SLafScrollBar
+	{
+    /** 
+     * Scroll bar initialisation flags. The default is for the scroll bar
+     * to have both a shaft and a thumb. 
+     */	
+	enum TEikScrollBarFlags
+		{
+    	/** Default */	
+		EEikScrollBarDefaultBehaviour	=0x0000,
+    	/** Does not display nudge buttons.*/	
+		EEikScrollBarNoNudgeButtons		=0x0001,
+    	/** Has buttons which move it a page at a time. */	
+		EEikScrollBarHasPageButtons		=0x0002,
+    	/** Has buttons which move it its entire extent. */	
+		EEikScrollBarHasHomeEndButtons  =0x0004,
+    	/** Central area is empty. */	
+		EEikScrollBarNoShaftOrThumb 	=0x0008,
+    	/** Central area has no scroll thumb. */	
+		EEikScrollBarShaftButNoThumb 	=0x0010,
+    	/** Buttons are placed at the start of the bar. */	
+		EButtonsAtStartOfShaft  		=0x0040,
+    	/** Buttons are placed at the end of the bar. */	
+		EButtonsAtEndOfShaft 			=0x0080,
+    	/** 
+    	 * Buttons are placed at either end of the bar @c
+    	 * (EButtonsAtStartOfShaft | @c EButtonsAtEndOfShaft).
+    	 */	
+		EButtonsEitherSideOfShaft 		=EButtonsAtStartOfShaft|EButtonsAtEndOfShaft,
+    	/** 
+    	 * Buttons do not automatically dim when scroll bar is at its maximum
+    	 * extent.
+    	 */	
+		ENoAutoDimming					=0x0100
+		};
+
+    /** Scroll bar orientation enumerations. */
+	enum TOrientation
+		{
+        /** Scroll bar is oriented vertically. */
+		EVertical,
+        /** Scroll bar is oriented horizontally. */
+		EHorizontal
+		};
+
+	};
+
+/** Flags for listboxes */
+struct SLafListBox
+	{
+	/**
+    * Listbox construction flags.
+    */
+    enum TFlags
+		{
+        /**
+         * Construction flag for a list box from which the user can
+         * select multiple items.
+         */
+		EMultipleSelection			= 0x0001,
+        /**
+         * Construction flag for disabling extended selection. 
+         * If this is set the user cannot select multiple items by
+         * using @c SHIFT button.
+         */
+		ENoExtendedSelection		= 0x0002,
+        /**
+         * Construction flag that sets the list box to match user’s keystrokes 
+         * incrementally.
+         */
+		EIncrementalMatching		= 0x0004,
+        /**
+         * Construction flag for setting the list box as a pop-out list box. 
+         * Pop-out list boxes handle certain keystrokes and events differently.
+         */
+		EPopout						= 0x0008,
+        /**
+         * Construction flag that enables the indication of pointer press 
+         * inside the view of the list box.
+         */
+		ELeftDownInViewRect			= 0x0010,
+        /**
+         * Construction flag for enabling @c CEiklist box item double click 
+         * indication.
+         */
+		EItemDoubleClicked			= 0x0020,
+        /**
+         * Construction flag for removing the ownership of the supplied list box
+         * model from the @c CEikListBox so that the list box model will not be 
+         * deleted with the @c CEikListBoxes destruction.
+         */
+		EKeepModel					= 0x0040,
+        /**
+         * Construction flag for excluding the scroll bar.
+         * If the flag is set the scroll bas is drawn ouside the window that 
+         * describes the scroll bars extent.
+         */
+		EScrollBarSizeExcluded		= 0x0080,
+        /**
+         * Construction flag for enabling @c CEikListBox change indication.
+         */
+		EStateChanged				= 0x0100,
+        /**
+         * Construction flag that indicates that the list box should be created 
+         * to its own window.
+         */
+		ECreateOwnWindow			= 0x0200,
+        /**
+         * Construction flag for disabling key matching.
+         */
+        ENoFirstLetterMatching      = 0x0400,
+        /**
+         * Construction flag for enabling painting of selected items.
+         */
+		EPaintedSelection			= 0x0800,
+        /**
+         * Construction flag for enabling S60 style selection of multiple items 
+         * from the list box.
+         */
+		ES60StyleMultiselection     = 0x00010000, //32 bits
+        /**
+         * Construction flag for enabling S60 style markable items.
+         */
+		ES60StyleMarkable           = 0x00020000  //32 bits		
+		};
+    /** List item attributes */
+    enum TListItemAttribute
+        {
+		ECurrent    = 0x0001,		// may be drawn with a frame
+		/** Item is emphasized */
+		EEmphasized = 0x0002,		// special highlight (not selected)
+		/** Item is selected */
+		ESelected   = 0x0004,		// usually different than emphasized
+		// This last attribute is used to control that one can use only
+		// valid attributes above. So do not use it at all.	
+		/** Sum of all other attributes. Do not use */
+		EMask		= 0x0007
+        };
+    /** deprecated */
+	enum TListItemFlags
+		{
+        /** deprecated */
+		EItemDrawMarkSelection			= 0x0001,
+        /** deprecated */
+		EItemPaintedSelection			= 0x0002,
+        /** deprecated */
+		EItemDrawOnlyActiveSelection	= 0x0004
+		};
+	};
+
+/** Scroll bar thumb orientation enumerations */
+struct SLafScrollThumb
+	{
+	enum TOrientation
+		{
+		/** Vertical orientation */
+		EVertical,
+		/** Horizontal orientation */
+		EHorizontal
+		};
+	};
+
+struct SLafScrollBarFrame
+	{
+	/** Defines the scroll bar’s visibility.*/
+	enum TScrollBarVisibility
+		{
+		/** Scroll bar not visible. */
+		EOff,
+		/** Scroll bar visible. */
+		EOn,
+		/** Scroll bar visible if required. */
+		EAuto
+		};
+
+	/** Defines where the scroll bar is located. */
+	enum TScrollBarSide
+		{
+		/** 
+		 *  Scroll bar located at the bottom, or to the right of the scroll bar 
+		 *  frame 
+		 */
+		EBottomOrRight,
+		/** 
+		 *  Scroll bar located at the top, or to the left of the scroll bar 
+		 *  frame 
+		 */
+		ETopOrLeft
+		};
+
+	/** Determines how the scroll bar frame manages scroll bars.*/
+    enum TScrollBarManagement
+		{
+        /** 
+         *  The scroll bar frame creates, destroys and recreates, scroll bars
+         *  according to the visibility mode. The scroll bar frame also acts as
+         *  an intermediary with its owning control so that the scroll bars can
+         *  be treated as component controls.
+         */
+		EComponent,
+        /** 
+         *  The scroll bar frame creates, destroys and recreates, scroll bars 
+         *  according to the visibility mode. In this case, the scroll bars are
+         *  not treated as component controls. Instead, the scroll bars are 
+         *  geometry managed in windows floating above the control window and
+         *  their position is determined in relation to the frame’s position on
+         *  the screen.
+         */
+		EFloating,
+        /** 
+         *  The scroll bar frame uses the central application scroll bar as held
+         *  in the environment. This scroll bar is neither owned by the frame 
+         *  nor treated as a component control of the frame’s owner.
+         */
+		EApplicationScrollBar
+		};
+	};
+
+/** Control group attributes */
+struct SLafControlGroup
+	{
+	enum TStartCorner
+		{
+		EFromTopLeft=0x1,
+		EFromTopRight=0x2,
+		EFromBottomLeft=0x3,
+		EFromBottomRight=0x4
+		};
+	enum TOrientation
+		{
+		ELayHorizontally=0x10,
+		ELayVertically=0x20
+		};
+	};
+
+/**  Look of button group container */
+struct SLafButtonGroupContainer
+	{
+	/** The controls where the button group container is used. */
+	enum TUse
+		{
+		/** View */
+		EView,
+		/** Dialog */
+		EDialog,
+		/** Toolbar */
+		EToolbar,
+		/** Command button area */
+		ECba,
+		/** Dialog buttons */
+		EDialogButtons
+		};
+    /** Orientation of the button group container */
+	enum TOrientation
+		{
+		/** Vertical orientation */
+		EVertical,
+		/** Horizontal orientation */
+		EHorizontal
+		};
+	enum TLocation
+		{
+		/** Button group container used internally for example in dialog buttons */
+		EInternal,
+		/** Button group container used externally for example 
+		 *  in toolbar or CBA (Command Button Area) 
+		 */
+		EExternal
+		};
+	};
+
+struct SLafMenuBar
+	{
+	enum { ENominalTextLength = 40 };
+	};
+
+/** Menu pane highlight type enumerations */
+struct SLafMenuPane
+	{
+	enum THighlightType
+		{
+		ENoHighlight,
+		EDrawHighlight,
+		ERemoveHighlight
+		};
+	};
+
+struct SLafButtonBase
+	{
+	/** The draw state enumerations of the button. */
+	enum TDrawState
+		{
+		EDrawClear					=0x00,
+		EDrawSet					=0x01,
+		EDrawIndeterminate			=0x02,
+		EDrawClearPressed			=0x10,
+		EDrawSetPressed				=0x11,
+		EDrawIndeterminatePressed	=0x12
+		};
+	};
+
+
+#endif // __LAFPUBLC_H__