commonuisupport/uilaf/inc/lafmsg.h
changeset 0 2f259fa3e83a
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     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 "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.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__