2 * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
19 #ifndef __AKNSTATICNOTEDIALOG__
20 #define __AKNSTATICNOTEDIALOG__
22 #include <aknnotedialog.h>
23 #include <AknControl.h>
26 class CAknStackIndicatorAttributes;
29 * Static note stack indicator
31 class CAknStaticNoteStackIndicator : public CAknControl
35 * 2nd stage construction.
38 void ConstructL(CCoeControl* aParentNote, TInt aStackDepth);
44 void UpdateDepth(TInt aDepth);
46 ~CAknStaticNoteStackIndicator();
49 * From @c CCoeControl.
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.
56 IMPORT_C void HandleResourceChange(TInt aType);
59 * From @c CCoeControl.
60 * Handles pointer events
62 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
65 void Draw(const TRect& aRect) const;
72 IMPORT_C void* ExtensionInterface( TUid aInterface );
75 CAknStackIndicatorAttributes* iAttributes;
76 CCoeControl* iParentNote;
83 class CAknStaticNoteDialog : public CAknNoteDialog
89 * Just call CAknNoteDialog constructor
91 IMPORT_C CAknStaticNoteDialog();
94 * Another class constructor
96 * Accept self pointer to CEikDialog* in order to NULL
97 * client pointer when a non modal note is dismissed.
99 * @param aSelfPtr Address of the dialog pointer
101 IMPORT_C CAknStaticNoteDialog(CEikDialog** aSelfPtr);
103 IMPORT_C virtual ~CAknStaticNoteDialog();
106 * Set the number of borders
108 * Update the stack indicator depth to the specified number of borders.
110 * @param aNumber The number of borders
112 IMPORT_C void SetNumberOfBorders(TInt aNumber);
115 * Handles pointer events
117 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
121 * Part of dialog framework, called after layout has been performed
123 * Call PostLayoutDynInitL as implemented in the base, CAknNoteDialog
124 * and create a stack indicator
127 IMPORT_C void PostLayoutDynInitL();
130 * Part of the dialog framework, process a key event.
132 * Call the implementation of OfferKeyEventL provided by
133 * CEikDialog, bypassing the direct base, CAknNoteDialog.
135 IMPORT_C TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
142 CAknStaticNoteStackIndicator* iStackIndicator;
145 * Indicates stack depth
157 IMPORT_C void* ExtensionInterface( TUid aInterface );
160 IMPORT_C virtual void CEikDialog_Reserved_1();
161 IMPORT_C virtual void CEikDialog_Reserved_2();
164 IMPORT_C virtual void CAknNoteDialog_Reserved();
166 private: // new virtual function.
167 IMPORT_C virtual void CAknStaticNoteDialog_Reserved();