Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
2 * Copyright (c) 1997-1999 Nokia Corporation and/or its subsidiary(-ies).
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".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
19 #if !defined(__EIKTXLBX_H__)
20 #define __EIKTXLBX_H__
22 #if !defined(__COECNTRL_H__)
26 #if !defined(__EIKLBX_H__)
30 #if !defined(__EIKLBM_H__)
34 class CTextListBoxModel;
37 * List box for displaying text.
39 * Text list boxes use the standard list box view, @c CListBoxView, and a
40 * customised item drawer and list box model.
44 class CEikTextListBox : public CEikListBox
51 IMPORT_C ~CEikTextListBox();
54 * C++ default constructor.
56 IMPORT_C CEikTextListBox();
59 * Second phase construction from a resource.
61 * This constructor initialises the list box model, flags, required
62 * dimensions etc. from a resource. The function fully constructs the
63 * associated list box model and item drawer for this list box.
65 * @param aReader A resource reader initialised to point at a list box
68 IMPORT_C virtual void ConstructFromResourceL(TResourceReader& aReader);
71 * By default Symbian 2nd phase constructor is private
73 * This initializes the C-classes of a newly-created @c CEikTextListBox
74 * from supplied arguments. This function fully constructs the associated
75 * list box model and item drawer for this list box, and then invokes
76 * @c CEikListBox::ConstructL().
78 * @param aParent Parent control for this control.
79 * @param aFlags Flags for the list box.
81 IMPORT_C void ConstructL(const CCoeControl* aParent, TInt aFlags = 0);
84 * Gets the text list box model.
86 * @return The text list box model used by this list box.
88 IMPORT_C CTextListBoxModel* Model() const;
90 public: // from CCoeControl
93 * From @c CCoeControl.
95 * Gets the list of logical colours employed in the drawing of the control,
96 * paired with an explanation of how they are used. Appends the list to
100 * @param aColorUseList List of logical colours.
102 IMPORT_C virtual void GetColorUseListL(
103 CArrayFix<TCoeColorUse>& aColorUseList) const;
104 // not available before Release 005u
107 * From @c CCoeControl.
109 * Handles a change to the control's resources. These resources are of
110 * type aType, which are shared across the environment, for example
113 * @param aType The type of resource that has changed.
115 IMPORT_C virtual void HandleResourceChange(TInt aType);
116 // not available before Release 005u
118 * From @c CCoeControl.
120 * Handles pointer events.
122 * @param aPointerEvent The pointer event.
124 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
125 protected: //from CCoeControl
128 * From @c CCoeControl
130 * Write internal state of the @c CEikTextListBox to the given stream.
131 * NOTE: Only operational in debug mode.
133 * @param aWriteStream Target stream.
135 IMPORT_C void WriteInternalStateL(RWriteStream& aWriteStream) const;
140 * Creates @c CTextListItemDrawer for @c CListBoxView for drawing
141 * individual list box items .
143 IMPORT_C virtual void CreateItemDrawerL();
149 IMPORT_C void* ExtensionInterface( TUid aInterface );
151 IMPORT_C virtual void CEikListBox_Reserved(); // listbox use only
153 TInt iRequiredCellCharWidth;
156 TInt iSpare; // Unused
160 * Horizontal snaking text list box.
162 * This snaking list box is intended for displaying text. The list box lays its
163 * items out using the @c CEikSnakingListBox algorithms, and uses a
164 * @c CTextListItemDrawer to draw its items.
168 class CEikSnakingTextListBox : public CEikSnakingListBox
175 IMPORT_C ~CEikSnakingTextListBox();
178 * C++ default constructor.
180 IMPORT_C CEikSnakingTextListBox();
183 * By default Symbian 2nd phase constructor is private.
185 * Completes the construction of a default-constructed snaking text list
186 * box, initialising its heap-stored members from the supplied arguments.
187 * This function will leave if any of the pointer members being
190 * @param aParent Parent control.
191 * @param aFlags Flags for the control.
192 * @see @c CEikListBox::TFlags
194 IMPORT_C void ConstructL(const CCoeControl* aParent, TInt aFlags = 0);
197 * Gets a pointer to the model used by this list box.
199 * @return This list box model.
201 IMPORT_C CTextListBoxModel* Model() const;
203 public: // from CCoeControl
206 * From @c CCoeControl.
208 * Not implemented or used in S60.
210 * @param aColorUseList On return, a list of logical colours.
212 IMPORT_C virtual void GetColorUseListL(
213 CArrayFix<TCoeColorUse>& aColorUseList) const;
214 // not available before Release 005u
217 * From @c CCoeControl.
219 * Handles a change in a resource.
221 * The types (@c aType) of list box resources handled are those which
222 * are shared across the environment, for example, colours or fonts.
224 * @param aType The type of resource that has changed.
226 IMPORT_C virtual void HandleResourceChange(TInt aType);
227 // not available before Release 005u
230 * From @c CCoeControl.
232 * Handles pointer events.
234 * @param aPointerEvent The pointer event.
236 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
241 IMPORT_C void* ExtensionInterface( TUid aInterface );
245 #endif // __EIKTXLBX_H__