00001 /* 00002 * ============================================================================== 00003 * Name : lafpublc.h 00004 * Part of : 00005 * Description : 00006 * Version : 00007 * 00008 * Copyright © 2002-2006 Nokia. All rights reserved. 00009 * This material, including documentation and any related 00010 * computer programs, is protected by copyright controlled by 00011 * Nokia. All rights are reserved. Copying, including 00012 * reproducing, storing, adapting or translating, any 00013 * or all of this material requires the prior written consent of 00014 * Nokia. This material also contains confidential 00015 * information which may not be disclosed to others without the 00016 * prior written consent of Nokia. 00017 * ============================================================================== 00018 */ 00019 00020 #ifndef __LAFPUBLC_H__ 00021 #define __LAFPUBLC_H__ 00022 00023 #include <e32std.h> 00024 00025 const TInt KLafScrollBarButtonPositionMask = 0x00C0; 00026 00027 struct SLafScrollButton 00028 { 00029 enum TType 00030 { 00031 ENudgeLeft, 00032 ENudgeUp, 00033 ENudgeRight, 00034 ENudgeDown, 00035 EPageLeft, 00036 EPageUp, 00037 EPageRight, 00038 EPageDown, 00039 EHome, 00040 ETop, 00041 EEnd, 00042 EBottom 00043 }; 00044 }; 00045 00046 struct SLafScrollBar 00047 { 00048 enum TEikScrollBarFlags 00049 { 00050 EEikScrollBarDefaultBehaviour =0x0000, 00051 EEikScrollBarNoNudgeButtons =0x0001, 00052 EEikScrollBarHasPageButtons =0x0002, 00053 EEikScrollBarHasHomeEndButtons =0x0004, 00054 EEikScrollBarNoShaftOrThumb =0x0008, 00055 EEikScrollBarShaftButNoThumb =0x0010, 00056 EButtonsAtStartOfShaft =0x0040, 00057 EButtonsAtEndOfShaft =0x0080, 00058 EButtonsEitherSideOfShaft =EButtonsAtStartOfShaft|EButtonsAtEndOfShaft, 00059 ENoAutoDimming =0x0100 00060 }; 00061 00062 enum TOrientation 00063 { 00064 EVertical, 00065 EHorizontal 00066 }; 00067 00068 }; 00069 00070 struct SLafListBox 00071 { 00072 enum TFlags 00073 { 00074 EMultipleSelection = 0x0001, 00075 ENoExtendedSelection = 0x0002, 00076 EIncrementalMatching = 0x0004, 00077 EPopout = 0x0008, 00078 ELeftDownInViewRect = 0x0010, 00079 EItemDoubleClicked = 0x0020, 00080 EKeepModel = 0x0040, 00081 EScrollBarSizeExcluded = 0x0080, 00082 EStateChanged = 0x0100, 00083 ECreateOwnWindow = 0x0200, 00084 ENoFirstLetterMatching = 0x0400, 00085 EPaintedSelection = 0x0800, 00086 ES60StyleMultiselection = 0x00010000, //32 bits 00087 ES60StyleMarkable = 0x00020000 //32 bits 00088 }; 00089 enum TListItemAttribute 00090 { 00091 ECurrent = 0x0001, // may be drawn with a frame 00092 EEmphasized = 0x0002, // special highlight (not selected) 00093 ESelected = 0x0004, // usually different than emphasized 00094 // This last attribute is used to control that one can use only 00095 // valid attributes above. So do not use it at all. 00096 EMask = 0x0007 // sum of all others attributes 00097 }; 00098 enum TListItemFlags 00099 { 00100 EItemDrawMarkSelection = 0x0001, 00101 EItemPaintedSelection = 0x0002, 00102 EItemDrawOnlyActiveSelection = 0x0004 00103 }; 00104 }; 00105 00106 struct SLafScrollThumb 00107 { 00108 enum TOrientation 00109 { 00110 EVertical, 00111 EHorizontal 00112 }; 00113 }; 00114 00115 struct SLafScrollBarFrame 00116 { 00117 enum TScrollBarVisibility 00118 { 00119 EOff, 00120 EOn, 00121 EAuto 00122 }; 00123 00124 enum TScrollBarSide 00125 { 00126 EBottomOrRight, 00127 ETopOrLeft 00128 }; 00129 00130 enum TScrollBarManagement 00131 { 00132 EComponent, 00133 EFloating, 00134 EApplicationScrollBar 00135 }; 00136 }; 00137 00138 struct SLafControlGroup 00139 { 00140 enum TStartCorner 00141 { 00142 EFromTopLeft=0x1, 00143 EFromTopRight=0x2, 00144 EFromBottomLeft=0x3, 00145 EFromBottomRight=0x4 00146 }; 00147 enum TOrientation 00148 { 00149 ELayHorizontally=0x10, 00150 ELayVertically=0x20 00151 }; 00152 }; 00153 00154 struct SLafButtonGroupContainer 00155 { 00156 enum TUse 00157 { 00158 EView, 00159 EDialog, 00160 EToolbar, 00161 ECba, 00162 EDialogButtons 00163 }; 00164 enum TOrientation 00165 { 00166 EVertical, 00167 EHorizontal 00168 }; 00169 enum TLocation 00170 { 00171 EInternal, // E.g. dialog buttons. 00172 EExternal // E.g. toolbar or cba. 00173 }; 00174 }; 00175 00176 struct SLafMenuBar 00177 { 00178 enum { ENominalTextLength = 40 }; 00179 }; 00180 00181 struct SLafMenuPane 00182 { 00183 enum THighlightType 00184 { 00185 ENoHighlight, 00186 EDrawHighlight, 00187 ERemoveHighlight 00188 }; 00189 }; 00190 00191 struct SLafButtonBase 00192 { 00193 enum TDrawState 00194 { 00195 EDrawClear =0x00, 00196 EDrawSet =0x01, 00197 EDrawIndeterminate =0x02, 00198 EDrawClearPressed =0x10, 00199 EDrawSetPressed =0x11, 00200 EDrawIndeterminatePressed =0x12 00201 }; 00202 }; 00203 00204 00205 // __LAFPUBLC_H__ 00206 #endif