williamr@2
|
1 |
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
|
williamr@2
|
2 |
// All rights reserved.
|
williamr@2
|
3 |
// This component and the accompanying materials are made available
|
williamr@2
|
4 |
// 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
|
williamr@2
|
5 |
// which accompanies this distribution, and is available
|
williamr@2
|
6 |
// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
|
williamr@2
|
7 |
//
|
williamr@2
|
8 |
// Initial Contributors:
|
williamr@2
|
9 |
// Nokia Corporation - initial contribution.
|
williamr@2
|
10 |
//
|
williamr@2
|
11 |
// Contributors:
|
williamr@2
|
12 |
//
|
williamr@2
|
13 |
// Description:
|
williamr@2
|
14 |
//
|
williamr@2
|
15 |
|
williamr@2
|
16 |
#ifndef __LAFENV_H__
|
williamr@2
|
17 |
#define __LAFENV_H__
|
williamr@2
|
18 |
|
williamr@2
|
19 |
#include <e32std.h>
|
williamr@2
|
20 |
#include <e32base.h>
|
williamr@2
|
21 |
#include <gulbordr.h>
|
williamr@2
|
22 |
#include <gulalign.h>
|
williamr@2
|
23 |
#include <lafmain.h>
|
williamr@2
|
24 |
#include <apgcli.h>
|
williamr@2
|
25 |
#include <eikinfomsgwin.h>
|
williamr@2
|
26 |
#include <eikbusymsgwin.h>
|
williamr@2
|
27 |
#include <eikmsg.h>
|
williamr@2
|
28 |
|
williamr@2
|
29 |
class MParser;
|
williamr@2
|
30 |
class CCoeEnv;
|
williamr@2
|
31 |
class CFont;
|
williamr@2
|
32 |
class TLogicalFont;
|
williamr@2
|
33 |
class CLafSystemFont;
|
williamr@2
|
34 |
|
williamr@2
|
35 |
class LafEnv
|
williamr@2
|
36 |
/** Application environment level LAF functions.
|
williamr@2
|
37 |
|
williamr@2
|
38 |
@publishedPartner
|
williamr@2
|
39 |
@released */
|
williamr@2
|
40 |
{
|
williamr@2
|
41 |
public:
|
williamr@2
|
42 |
/** Creates an EText parser.
|
williamr@2
|
43 |
|
williamr@2
|
44 |
@param aIndex Index of parser to retrieve. A LAF can supply multiple parsers,
|
williamr@2
|
45 |
indexed from 0.
|
williamr@2
|
46 |
@return EText parser */
|
williamr@2
|
47 |
IMPORT_C static MParser* CreateTextParserL(TInt aIndex);
|
williamr@2
|
48 |
/** Draws a logical border.
|
williamr@2
|
49 |
|
williamr@2
|
50 |
@param aBorder Border specification to draw
|
williamr@2
|
51 |
@param aGc Graphics context to which to draw
|
williamr@2
|
52 |
@param aRect Drawing rectangle
|
williamr@2
|
53 |
@param aBorderColors Colours with which to draw */
|
williamr@2
|
54 |
IMPORT_C static void DrawLogicalBorder(const TGulBorder& aBorder,CGraphicsContext& aGc,const TRect& aRect,const TGulBorder::TColors& aBorderColors);
|
williamr@2
|
55 |
/** Gets the margins of a specified logical border.
|
williamr@2
|
56 |
|
williamr@2
|
57 |
@param aBorder Border specification
|
williamr@2
|
58 |
@return Border's margins */
|
williamr@2
|
59 |
IMPORT_C static TMargins LogicalBorderMargins(const TGulBorder& aBorder);
|
williamr@2
|
60 |
/** Populates an array with a set of system bitmaps.
|
williamr@2
|
61 |
|
williamr@2
|
62 |
CEikonEnv calls this to get system bitmaps, and uses the array in subsequent
|
williamr@2
|
63 |
calls to MatchBitmap().
|
williamr@2
|
64 |
|
williamr@2
|
65 |
@param aEnv Application's control environment
|
williamr@2
|
66 |
@param aBitmaps On return, array of system bitmaps */
|
williamr@2
|
67 |
IMPORT_C static void CreateSystemBitmapsL(CCoeEnv& aEnv, CArrayPtrFlat<CFbsBitmap>& aBitmaps);
|
williamr@2
|
68 |
/** Populates an array with a set of system fonts.
|
williamr@2
|
69 |
|
williamr@2
|
70 |
CEikonEnv calls this to get system fonts, and uses the array in subsequent
|
williamr@2
|
71 |
calls to MatchFont().
|
williamr@2
|
72 |
|
williamr@2
|
73 |
A minimum of one font must be created.
|
williamr@2
|
74 |
|
williamr@2
|
75 |
@param aEnv Application's control environment
|
williamr@2
|
76 |
@param aFonts On return, array of system fonts */
|
williamr@2
|
77 |
IMPORT_C static void CreateSystemFontsL(CCoeEnv& aEnv,CArrayPtr<CLafSystemFont>& aFonts);
|
williamr@2
|
78 |
/** Gets the nearest match in the specified fonts for a specified logical system
|
williamr@2
|
79 |
font.
|
williamr@2
|
80 |
|
williamr@2
|
81 |
The return value must be non-NULL.
|
williamr@2
|
82 |
|
williamr@2
|
83 |
@param aFonts Fonts from which to select the match
|
williamr@2
|
84 |
@param aLogicalFont The logical font to match
|
williamr@2
|
85 |
@return Font that is the best match to aLogicalFont */
|
williamr@2
|
86 |
IMPORT_C static const CFont* MatchFont(CArrayPtr<CLafSystemFont>& aFonts,const TLogicalFont& aLogicalFont);
|
williamr@2
|
87 |
/** Gets the nearest match in the specified bitmaps for a specified system bitmap
|
williamr@2
|
88 |
type.
|
williamr@2
|
89 |
|
williamr@2
|
90 |
The desired bitmap is specified by the identifer aBmpUid: for possible UIDs,
|
williamr@2
|
91 |
see KLafUidEikonTexturedVal etc.
|
williamr@2
|
92 |
|
williamr@2
|
93 |
The return value must be non-NULL.
|
williamr@2
|
94 |
|
williamr@2
|
95 |
@param aSystemBmps Bitmaps from which to select the match
|
williamr@2
|
96 |
@param aBmpUid The bitmap type to match
|
williamr@2
|
97 |
@return Bitmap that is the best match to aBmpUid */
|
williamr@2
|
98 |
IMPORT_C static CFbsBitmap* MatchBitmap(const CArrayPtrFlat<CFbsBitmap>& aSystemBmps, TUid aBmpUid);
|
williamr@2
|
99 |
/** Gets the corner of the screen which the busy message should appear in by default
|
williamr@2
|
100 |
on the device.
|
williamr@2
|
101 |
|
williamr@2
|
102 |
@return Default corner
|
williamr@2
|
103 |
@see CEikonEnv::BusyMsgL() */
|
williamr@2
|
104 |
IMPORT_C static TGulAlignment DefaultBusyMsgCorner();
|
williamr@2
|
105 |
/** Tests if the specified key corresponds to the hardware default key.
|
williamr@2
|
106 |
|
williamr@2
|
107 |
@param aCharCode Key to test
|
williamr@2
|
108 |
@return True if the key is the default */
|
williamr@2
|
109 |
IMPORT_C static TBool IsDefaultKey(TUint aCharCode);
|
williamr@2
|
110 |
/** Gets the default line spacing used to format text paragraphs.
|
williamr@2
|
111 |
|
williamr@2
|
112 |
@return Default line spacing in twips */
|
williamr@2
|
113 |
IMPORT_C static TInt DefaultLineSpacingInTwips();
|
williamr@2
|
114 |
/** Gets the height of single-line edit control for the system normal font.
|
williamr@2
|
115 |
|
williamr@2
|
116 |
@param aLafEnv Environment access
|
williamr@2
|
117 |
@return Height of single-line edit control */
|
williamr@2
|
118 |
IMPORT_C static TInt EditableControlStandardHeight(const MLafEnv& aLafEnv);
|
williamr@2
|
119 |
/** Sets any device-specific font attributes to be applied to the system character
|
williamr@2
|
120 |
formatting layer.
|
williamr@2
|
121 |
|
williamr@2
|
122 |
Applications can access the format layer through CEikonEnv::SystemCharFormatLayerL().
|
williamr@2
|
123 |
This format layer is also used in Edwins.
|
williamr@2
|
124 |
|
williamr@2
|
125 |
@param aCharFormat On return, the character formatting to apply
|
williamr@2
|
126 |
@param aCharFormatMask On return, the character formatting mask to apply */
|
williamr@2
|
127 |
IMPORT_C static void PrepareCharFormatAndMask(TCharFormat& aCharFormat,TCharFormatMask& aCharFormatMask);
|
williamr@2
|
128 |
/** Specifies (and creates if necessary) a default directory for documents.
|
williamr@2
|
129 |
|
williamr@2
|
130 |
The function is called on application startup. The parameters provided are
|
williamr@2
|
131 |
to allow an implementation to generate a document directory based on the application
|
williamr@2
|
132 |
being launched.
|
williamr@2
|
133 |
|
williamr@2
|
134 |
@param aFilePath On return, the default / generated directory path
|
williamr@2
|
135 |
@param aAppUid UID of application being launched
|
williamr@2
|
136 |
@param aLs Application's session with the Application Architecture server
|
williamr@2
|
137 |
@param aEnv Thread's control environment */
|
williamr@2
|
138 |
IMPORT_C static void GetDefaultPath(TDes& aFilePath,TUid aAppUid,RApaLsSession& aLs,CCoeEnv& aEnv);
|
williamr@2
|
139 |
/** Loads the system resource file.
|
williamr@2
|
140 |
|
williamr@2
|
141 |
The system resource file defines resources required by the system environment,
|
williamr@2
|
142 |
and which can also be used by applications. The function is called by CCoeEnv's
|
williamr@2
|
143 |
construction function.
|
williamr@2
|
144 |
|
williamr@2
|
145 |
@param aEnv Thread's control environment
|
williamr@2
|
146 |
@return System wide error code */
|
williamr@2
|
147 |
IMPORT_C static TInt LoadCoreResFileL(CCoeEnv& aEnv);
|
williamr@2
|
148 |
/** Loads the private resource file.
|
williamr@2
|
149 |
|
williamr@2
|
150 |
The private resource file defines resources required by the system environment,
|
williamr@2
|
151 |
but not intended for application use. The function is called by CCoeEnv's
|
williamr@2
|
152 |
construction function.
|
williamr@2
|
153 |
|
williamr@2
|
154 |
@param aEnv Thread's control environment
|
williamr@2
|
155 |
@return System wide error code */
|
williamr@2
|
156 |
IMPORT_C static TInt LoadPrivResFileL(CCoeEnv& aEnv);
|
williamr@2
|
157 |
/** Gets the name of the resource file that contains resources for the EIKCOCTL
|
williamr@2
|
158 |
component.
|
williamr@2
|
159 |
|
williamr@2
|
160 |
@return Resource file for the EIKCOCTL component */
|
williamr@2
|
161 |
IMPORT_C static const TDesC& CoctlResourceFile();
|
williamr@2
|
162 |
/** Allows the LAF to update the list of system bitmaps, in response to a colour
|
williamr@2
|
163 |
settings change.
|
williamr@2
|
164 |
|
williamr@2
|
165 |
@param aEnv Thread's control environment
|
williamr@2
|
166 |
@param aBitmaps On return, updated array of system bitmaps
|
williamr@2
|
167 |
@param aColorList New colour settings */
|
williamr@2
|
168 |
IMPORT_C static void UpdateSystemBitmapsL(CCoeEnv& aEnv, CArrayPtrFlat<CFbsBitmap>& aBitmaps, const CColorList& aColorList);
|
williamr@2
|
169 |
|
williamr@2
|
170 |
/** Performs the releasing of the fonts but doesn't delete the array itself
|
williamr@2
|
171 |
|
williamr@2
|
172 |
@param aSystemFontArray array of fonts to release
|
williamr@2
|
173 |
*/
|
williamr@2
|
174 |
IMPORT_C static void ReleaseSystemFonts( CArrayPtr<CLafSystemFont>& aSystemFontArray);
|
williamr@2
|
175 |
|
williamr@2
|
176 |
/** Creates busy message window.
|
williamr@2
|
177 |
|
williamr@2
|
178 |
@param aEnv Thread's control environment
|
williamr@2
|
179 |
@return Busy message window */
|
williamr@2
|
180 |
IMPORT_C static MEikBusyMsgWin* NewBusyMsgWinL(CCoeEnv& aEnv);
|
williamr@2
|
181 |
/** Creates info message window.
|
williamr@2
|
182 |
|
williamr@2
|
183 |
@param aEnv Thread's control environment
|
williamr@2
|
184 |
@return Info message window */
|
williamr@2
|
185 |
IMPORT_C static MEikInfoMsgWin* NewInfoMsgWinL(CCoeEnv& aEnv);
|
williamr@2
|
186 |
|
williamr@2
|
187 |
/** Creates info message window, overridden function to allow another RWindowGroup to be
|
williamr@2
|
188 |
used rather the the the CCoeEnv's RootWin() function.
|
williamr@2
|
189 |
|
williamr@2
|
190 |
@param aEnv Thread's control environment
|
williamr@2
|
191 |
@param aWinGroup window group for displaying the Info Msg
|
williamr@2
|
192 |
@return Info message window */
|
williamr@2
|
193 |
IMPORT_C static MEikInfoMsgWin* NewInfoMsgWinL(CCoeEnv& aEnv, RWindowGroup& aWinGroup);
|
williamr@2
|
194 |
/** Asks if display of the task list is disabled during initialization
|
williamr@2
|
195 |
|
williamr@2
|
196 |
@return ETrue if task list is disabled, otherwise EFalse */
|
williamr@2
|
197 |
IMPORT_C static TBool IsTaskListDisabledAtInitialization();
|
williamr@2
|
198 |
/** Displays a one or two line alert as a notifier window customisable by the system GUI.
|
williamr@2
|
199 |
|
williamr@2
|
200 |
@param aMsg1 Line one of the message to be displayed.
|
williamr@2
|
201 |
@param aMsg2 Line two of the message to be displayed */
|
williamr@2
|
202 |
IMPORT_C static void DisplayAlertAsNotifier(const TDesC& aMsg1, const TDesC& aMsg2);
|
williamr@2
|
203 |
|
williamr@2
|
204 |
/** Updates an existing color list
|
williamr@2
|
205 |
|
williamr@2
|
206 |
@param aColorList The color list to be updated. */
|
williamr@2
|
207 |
IMPORT_C static void UpdateColorListL(CColorList* aColorList);
|
williamr@2
|
208 |
|
williamr@2
|
209 |
/** Plays an audible alert, if supported by the system GUI. */
|
williamr@2
|
210 |
IMPORT_C static void Beep();
|
williamr@2
|
211 |
|
williamr@2
|
212 |
/** Updates an existing array of system fonts.
|
williamr@2
|
213 |
|
williamr@2
|
214 |
@param aEnv Thread's control environment
|
williamr@2
|
215 |
@param aSystemFontArray The array of fonts to be updated */
|
williamr@2
|
216 |
IMPORT_C static void UpdateSystemFontsL(CCoeEnv* aEnv, CArrayPtr<CLafSystemFont>& aSystemFontArray);
|
williamr@2
|
217 |
|
williamr@2
|
218 |
/** A list of events that are handled by the HandleExtensionEventL() function.*/
|
williamr@2
|
219 |
enum TLafEnvExtensionEvent
|
williamr@2
|
220 |
{
|
williamr@2
|
221 |
/** Event sent in CEikonEnv::ConstructL right before CCoeEnv::ConstructL() */
|
williamr@2
|
222 |
ELafEnvPreCoeEnvConstructL,
|
williamr@2
|
223 |
/** Event sent in CEikonEnv::ConstructL right after CCoeEnv::ConstructL() */
|
williamr@2
|
224 |
ELafEnvPostCoeEnvConstructL
|
williamr@2
|
225 |
};
|
williamr@2
|
226 |
|
williamr@2
|
227 |
/** Handles events listed by TLafEnvExtensionEvent
|
williamr@2
|
228 |
@param aEnv The instance of CEikonEnv from which this function has been called
|
williamr@2
|
229 |
@param aEvent The event
|
williamr@2
|
230 |
*/
|
williamr@2
|
231 |
IMPORT_C static void HandleExtensionEventL(CEikonEnv& aEnv, TLafEnvExtensionEvent aEvent);
|
williamr@2
|
232 |
|
williamr@2
|
233 |
/** Allows debug keys to display output.
|
williamr@2
|
234 |
@param aResourceId The resource to use for the note
|
williamr@2
|
235 |
*/
|
williamr@2
|
236 |
IMPORT_C static void InfoNote(TInt aResourceId,...);
|
williamr@2
|
237 |
|
williamr@2
|
238 |
/** Creates a default system colour list.
|
williamr@2
|
239 |
@param aEnv The instance of CEikonEnv from which this function has been called
|
williamr@2
|
240 |
@return A list of colours
|
williamr@2
|
241 |
*/
|
williamr@2
|
242 |
IMPORT_C static CColorList* CreateColorListL(CEikonEnv& aEnv);
|
williamr@2
|
243 |
|
williamr@2
|
244 |
/** Gets the name of the clock DLL
|
williamr@2
|
245 |
@return The name of the clock DLL
|
williamr@2
|
246 |
*/
|
williamr@2
|
247 |
IMPORT_C static const TDesC& ClockDllName();
|
williamr@2
|
248 |
|
williamr@2
|
249 |
/** The behaviour of CEikonEnv can be customized. This enum lists
|
williamr@2
|
250 |
the things that can be customized. */
|
williamr@2
|
251 |
enum TLafEnvPolicyItem
|
williamr@2
|
252 |
{
|
williamr@2
|
253 |
/** The action to take when there is an error during startup. */
|
williamr@2
|
254 |
ELafEnvPolicyExitIfErrorDuringStartup,
|
williamr@2
|
255 |
/** The action to take when the document is corrupt. */
|
williamr@2
|
256 |
ELafEnvPolicyDeleteCorruptDocumentAndContinue,
|
williamr@2
|
257 |
/** This affects the way the environment is deleted. */
|
williamr@2
|
258 |
ELAfEnvPolicyDeferredEnvironmentDeletion,
|
williamr@2
|
259 |
};
|
williamr@2
|
260 |
|
williamr@2
|
261 |
/** CEikonEnv will use this function to find out how it should behave.
|
williamr@2
|
262 |
The list of things that can be customized this way are listed by
|
williamr@2
|
263 |
TLafEnvPolicyItem.
|
williamr@2
|
264 |
@param aItem The policy item.
|
williamr@2
|
265 |
@return An integer that indicates what the action should be.
|
williamr@2
|
266 |
*/
|
williamr@2
|
267 |
IMPORT_C static TInt PolicyItem(TLafEnvPolicyItem aItem);
|
williamr@2
|
268 |
|
williamr@2
|
269 |
public:
|
williamr@2
|
270 |
inline static TInt ShadowHeight();
|
williamr@2
|
271 |
private:
|
williamr@2
|
272 |
/** Defines types of constant setting relevant to LAFs. */
|
williamr@2
|
273 |
enum TConstantType
|
williamr@2
|
274 |
{
|
williamr@2
|
275 |
/** Window shadow height. */
|
williamr@2
|
276 |
EShadowHeight
|
williamr@2
|
277 |
};
|
williamr@2
|
278 |
private:
|
williamr@2
|
279 |
/** Gets the value for a specified constant setting.
|
williamr@2
|
280 |
|
williamr@2
|
281 |
@param aConstant Type of constant setting to get
|
williamr@2
|
282 |
@return Value for the constant setting */
|
williamr@2
|
283 |
IMPORT_C static TInt Constant(TConstantType aConstant);
|
williamr@2
|
284 |
};
|
williamr@2
|
285 |
|
williamr@2
|
286 |
// identifiers for legacy system fonts
|
williamr@2
|
287 |
|
williamr@2
|
288 |
/** UID for the system "normal" font.
|
williamr@2
|
289 |
|
williamr@2
|
290 |
@see TLogicalFont::iFontId
|
williamr@2
|
291 |
@publishedPartner
|
williamr@2
|
292 |
@released */
|
williamr@2
|
293 |
#define KLafUidNormalFontVal 0x10005F02
|
williamr@2
|
294 |
|
williamr@2
|
295 |
/** UID for the system "title" font.
|
williamr@2
|
296 |
|
williamr@2
|
297 |
@see TLogicalFont::iFontId
|
williamr@2
|
298 |
@publishedPartner
|
williamr@2
|
299 |
@released */
|
williamr@2
|
300 |
#define KLafUidTitleFontVal 0x10005F03
|
williamr@2
|
301 |
|
williamr@2
|
302 |
/** UID for the system "annotation" font.
|
williamr@2
|
303 |
|
williamr@2
|
304 |
@see TLogicalFont::iFontId
|
williamr@2
|
305 |
@publishedPartner
|
williamr@2
|
306 |
@released */
|
williamr@2
|
307 |
#define KLafUidAnnotationFontVal 0x10005F04
|
williamr@2
|
308 |
|
williamr@2
|
309 |
/** UID for the system "legend" font.
|
williamr@2
|
310 |
|
williamr@2
|
311 |
@see TLogicalFont::iFontId
|
williamr@2
|
312 |
@publishedPartner
|
williamr@2
|
313 |
@released */
|
williamr@2
|
314 |
#define KLafUidLegendFontVal 0x10005F05
|
williamr@2
|
315 |
|
williamr@2
|
316 |
/** UID for the system "symbol" font.
|
williamr@2
|
317 |
|
williamr@2
|
318 |
@see TLogicalFont::iFontId
|
williamr@2
|
319 |
@publishedPartner
|
williamr@2
|
320 |
@released */
|
williamr@2
|
321 |
#define KLafUidSymbolFontVal 0x10005F06
|
williamr@2
|
322 |
|
williamr@2
|
323 |
/** UID for the system "dense" font.
|
williamr@2
|
324 |
|
williamr@2
|
325 |
@see TLogicalFont::iFontId
|
williamr@2
|
326 |
@publishedPartner
|
williamr@2
|
327 |
@released */
|
williamr@2
|
328 |
#define KLafUidDenseFontVal 0x10005F07
|
williamr@2
|
329 |
|
williamr@2
|
330 |
// identifiers for legacy system bitmaps
|
williamr@2
|
331 |
/** UID for a textured block system bitmap.
|
williamr@2
|
332 |
|
williamr@2
|
333 |
@see LafEnv::MatchBitmap()
|
williamr@2
|
334 |
@publishedPartner
|
williamr@2
|
335 |
@released */
|
williamr@2
|
336 |
#define KLafUidEikonTexturedVal 0x100048F4
|
williamr@2
|
337 |
|
williamr@2
|
338 |
/** UID for a gray block system bitmap.
|
williamr@2
|
339 |
|
williamr@2
|
340 |
@see LafEnv::MatchBitmap()
|
williamr@2
|
341 |
@publishedPartner
|
williamr@2
|
342 |
@released */
|
williamr@2
|
343 |
#define KLafUidEikonGrayVal 0x100048F5
|
williamr@2
|
344 |
|
williamr@2
|
345 |
/** UID for a horizontal option button system bitmap.
|
williamr@2
|
346 |
|
williamr@2
|
347 |
@see LafEnv::MatchBitmap()
|
williamr@2
|
348 |
@publishedPartner
|
williamr@2
|
349 |
@released */
|
williamr@2
|
350 |
#define KLafUidEikonOptiVal 0x100048F6
|
williamr@2
|
351 |
|
williamr@2
|
352 |
/** UID for a highlighted horizontal option button system bitmap.
|
williamr@2
|
353 |
|
williamr@2
|
354 |
@see LafEnv::MatchBitmap()
|
williamr@2
|
355 |
@publishedPartner
|
williamr@2
|
356 |
@released */
|
williamr@2
|
357 |
#define KLafUidEikonOptihVal 0x100048F7
|
williamr@2
|
358 |
|
williamr@2
|
359 |
/** UID for a horizontal option button mask system bitmap.
|
williamr@2
|
360 |
|
williamr@2
|
361 |
@see LafEnv::MatchBitmap()
|
williamr@2
|
362 |
@publishedPartner
|
williamr@2
|
363 |
@released */
|
williamr@2
|
364 |
#define KLafUidEikonOptimVal 0x100048F8
|
williamr@2
|
365 |
|
williamr@2
|
366 |
// Inlines
|
williamr@2
|
367 |
|
williamr@2
|
368 |
inline TInt LafEnv::ShadowHeight()
|
williamr@2
|
369 |
/** Gets the height of shadows to apply to windows.
|
williamr@2
|
370 |
|
williamr@2
|
371 |
@return Shadow height. */
|
williamr@2
|
372 |
{//static
|
williamr@2
|
373 |
return Constant(EShadowHeight);
|
williamr@2
|
374 |
}
|
williamr@2
|
375 |
|
williamr@2
|
376 |
#endif
|