epoc32/include/uiklaf/private/lafmsg.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 // Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     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
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 #ifndef __LAFMSG_H__
    17 #define __LAFMSG_H__
    18 
    19 #include <e32std.h>
    20 #include <clock.h>
    21 #include <gulalign.h>
    22 #include <coemain.h>
    23 #include <lafmain.h>
    24 
    25 
    26 class LafMsgWin
    27 /** Provides LAF settings for the system environment's message windows (CEikMsgWin).
    28 
    29 @publishedPartner
    30 @released */
    31 	{
    32 public:
    33 	class TDisplayParameters;
    34 public:
    35 	/** Sets the shadow on the blank window which the message is contained in. 
    36 	
    37 	@param aBlankWindow Message window */
    38 	IMPORT_C static void SetUpBlankWindow(RBlankWindow& aBlankWindow);
    39 	/** Completes the intitialisation of the message window.
    40 	
    41 	This function should select a font and call RMessageWindow::ConstructL() for 
    42 	aMessageWin.
    43 	
    44 	@param aMessageWin Message window
    45 	@param aEnv LAF environment functions */
    46 	IMPORT_C static void CompleteMessageWinConstructionL(RMessageWindow& aMessageWin,const MLafEnv& aEnv);
    47 	/** Handles a change to the system resources that may affect how the window is 
    48 	displayed.
    49 	
    50 	The function should update aMessageWin appropriately.
    51 	
    52 	@param aMessageWin Message window
    53 	@param aEnv LAF environment functions */
    54 	IMPORT_C static void HandleResourceChange(RMessageWindow& aMessageWin,const MLafEnv& aEnv);
    55 	/** Formats message text display.
    56 	
    57 	The function should truncate the text in aParams.iTextToDisplay to fit 
    58 	the device display, and set aParms.iMsgWinSize and aParams.iMsgWinPosition 
    59 	appropriately, depending on the corner aParams.iDisplayCorner, and the 
    60 	font for the device.
    61 	
    62 	aParams.iClientRect is provided for devices that wish to set the position 
    63 	relative to the client rect of the application rather than the screen rect.
    64 	
    65 	@param aParams Display parameters
    66 	@param aEnv LAF environment functions */
    67 	IMPORT_C static void ConfigureText(TDisplayParameters& aParams,const MLafEnv& aEnv);
    68 	};
    69 
    70 
    71 class LafMsgWin::TDisplayParameters
    72 /** Holds message window text display parameters.
    73 
    74 @publishedPartner
    75 @released */
    76 	{
    77 public:
    78 	/** Constructor. 
    79 
    80 	@param aTextToDispay Message window text. */
    81 	IMPORT_C TDisplayParameters(TDes& aTextToDispay);
    82 public:
    83 	/** Message window position. */
    84 	TPoint iMsgWinPosition;
    85 	/** Message window size. */
    86 	TSize  iMsgWinSize;
    87 	/** Message window text. */
    88 	TDes&  iTextToDisplay;
    89 	/** Message window margins. */
    90 	TMargins iMsgWinBorders;
    91 	/** Message window alignment. */
    92 	TGulAlignment iDisplayCorner;
    93 	/** Associated control environment. */
    94 	CCoeEnv* iEnv;
    95 	/** Message window client screen area. */
    96 	TRect iClientRect;
    97 	};
    98 
    99 
   100 class LafInfoMsgWin
   101 /** Provides LAF settings for the system environment's information message 
   102 window (CEikonEnv::InfoMsg() etc.).
   103 
   104 @publishedPartner
   105 @released */
   106 	{
   107 public:
   108 	/** Gets the default number of microseconds for which a message is displayed. 
   109 	
   110 	@return Default duration */
   111 	IMPORT_C static TTimeIntervalMicroSeconds32 DefaultDuration();
   112 	};
   113 
   114 
   115 class LafBusyMsgWin
   116 /** Provides LAF settings for the system environment's busy message window 
   117 (CEikonEnv::BusyMsgL()).
   118 
   119 @publishedPartner
   120 @released */
   121 	{
   122 public:
   123 	/** Gets the default number of microseconds for which a message is displayed. 
   124 	
   125 	@return Default delay */
   126 	IMPORT_C static TTimeIntervalMicroSeconds32 DefaultInitialDelay();
   127 	};
   128 
   129 #endif //__LAFMSG_H__