epoc32/include/mw/aknstaticnotedialog.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 1 666f914201fb
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 /*
     2 * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * 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
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description: 
    15 *
    16 */
    17 
    18 
    19 #ifndef __AKNSTATICNOTEDIALOG__
    20 #define __AKNSTATICNOTEDIALOG__
    21 
    22 #include <aknnotedialog.h>
    23 #include <AknControl.h>
    24 
    25 class CEikImage;
    26 class CAknStackIndicatorAttributes;
    27 
    28 /**
    29  * Static note stack indicator
    30  */
    31 class CAknStaticNoteStackIndicator : public CAknControl
    32 	{
    33 public:
    34     /**
    35      * 2nd stage construction.
    36      *
    37     */
    38 	void ConstructL(CCoeControl* aParentNote, TInt aStackDepth);
    39 	
    40 	/**
    41      * Updates stack depth
    42      *
    43     */
    44 	void UpdateDepth(TInt aDepth);
    45 	
    46 	~CAknStaticNoteStackIndicator();
    47 	
    48     /**
    49      * From @c CCoeControl.
    50      * 
    51      * Handles a change to the control's resources. The types of resources 
    52      * handled are those which are shared across the environment, e.g. 
    53      * colours or fonts.
    54      *
    55      */
    56 	IMPORT_C void HandleResourceChange(TInt aType);
    57     
    58     /**
    59      * From @c CCoeControl. 
    60      * Handles pointer events
    61     */
    62     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
    63     	
    64 private:
    65 	void Draw(const TRect& aRect) const;
    66 	void DoSetExtent();
    67 	
    68 private:
    69     /**
    70     * From CAknControl
    71     */
    72     IMPORT_C void* ExtensionInterface( TUid aInterface );
    73 
    74 private:
    75 	CAknStackIndicatorAttributes* iAttributes;
    76 	CCoeControl* iParentNote;
    77 	};
    78 
    79 
    80 /**
    81  * Static note dialog
    82  */
    83 class CAknStaticNoteDialog : public CAknNoteDialog
    84 	{
    85 	
    86 public:
    87     /**
    88      * Default constructor    
    89      * Just call CAknNoteDialog constructor
    90     */
    91 	IMPORT_C CAknStaticNoteDialog();
    92 	
    93 	/**
    94      * Another class constructor
    95      *
    96      * Accept self pointer to CEikDialog* in order to NULL 
    97      * client pointer when a non modal note is dismissed.
    98      *
    99      * @param aSelfPtr Address of the dialog pointer
   100     */
   101 	IMPORT_C CAknStaticNoteDialog(CEikDialog** aSelfPtr);
   102 	
   103 	IMPORT_C virtual ~CAknStaticNoteDialog();
   104 
   105     /**
   106      * Set the number of borders
   107      *
   108      * Update the stack indicator depth to the specified number of borders. 
   109      * 
   110      * @param aNumber    The number of borders
   111     */
   112     IMPORT_C void SetNumberOfBorders(TInt aNumber);
   113 
   114     /**
   115      * Handles pointer events
   116     */
   117     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);	
   118 
   119 protected:
   120     /**
   121      * Part of dialog framework, called after layout has been performed
   122      *
   123      * Call PostLayoutDynInitL as implemented in the base, CAknNoteDialog
   124      * and create a stack indicator
   125      * 
   126     */
   127 	IMPORT_C void PostLayoutDynInitL();
   128 	
   129 	/**
   130      * Part of the dialog framework, process a key event.
   131      *
   132      * Call the implementation of OfferKeyEventL provided by
   133      * CEikDialog, bypassing the direct base, CAknNoteDialog.
   134     */
   135 	IMPORT_C TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
   136 
   137 protected:
   138     /**
   139      * Stack indicator    
   140      * 
   141     */
   142 	CAknStaticNoteStackIndicator* iStackIndicator;
   143 	
   144 	/**
   145      * Indicates stack depth    
   146      *
   147     */
   148 	TInt iStackDepth;
   149 	
   150 private:
   151 	TInt iSpare;
   152 	
   153 private:
   154     /**
   155     * From CAknControl
   156     */
   157     IMPORT_C void* ExtensionInterface( TUid aInterface );
   158     
   159 private: 
   160 	IMPORT_C virtual void CEikDialog_Reserved_1();
   161 	IMPORT_C virtual void CEikDialog_Reserved_2();
   162 		
   163 private: 
   164 	IMPORT_C virtual void CAknNoteDialog_Reserved();
   165 	
   166 private: // new virtual function.
   167 	IMPORT_C virtual void CAknStaticNoteDialog_Reserved();
   168 	};
   169 
   170 #endif