os/textandloc/fontservices/textshaperplugin/test/S60HindiDemo/inc/HindiDemocontainer.h
Update contrib.
2 * Copyright (c) 2005-2009 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.
15 * Series 60 version of Hindi Demo application
21 #ifndef __HINDIDEMO_CONTAINER_H__
22 #define __HINDIDEMO_CONTAINER_H__
24 #include "HindiDemo.hrh"
26 #include <aknsettingitemlist.h>
27 #include <akncontext.h>
29 #include <aknnavide.h>
35 const TInt KLengthOfNaviTempString = 100;
37 #if !defined(KSettingEdwinMaxValueLength)
38 #define KSettingEdwinMaxValueLength 50
41 #if !defined(KSettingSecretMaxLabelLength)
42 #define KSettingSecretMaxLabelLength 20
46 // -----------------------------------------------------------------------
47 // CHindiDemoContainer
48 // -----------------------------------------------------------------------
49 class CHindiDemoContainer : public CAknSettingItemList {
53 ~CHindiDemoContainer();
55 // ------------------------------------------------------------------------------------------------
56 // Framework method to create a setting item based upon the user id aSettingId. The
57 // client code decides what type to construct. new (ELeave) must then be used and the resulting
58 // pointer returned. Ownership is thereafter base class's responsibility.
60 // @param aSettingId ID to use to determine the type of the setting item
61 // @return a constructed (not 2nd-stage constructed) setting item.
62 // ------------------------------------------------------------------------------------------------
63 CAknSettingItem* CreateSettingItemL(TInt aSettingId);
65 // ------------------------------------------------------------------------------------------------
66 // This launches the setting page for the current item by calling EditItemL on it
68 // @param aIndex - current item's (Visible) index in the list
69 // @param aCalledFromMenu - ignored in most classes; may alter the behaviour of the setting page
70 // ------------------------------------------------------------------------------------------------
71 void EditItemL(TInt aIndex, TBool aCalledFromMenu);
73 // -----------------------------------------------------------------------
74 // Routine that dispatches Command events to individual handlers
75 // -----------------------------------------------------------------------
76 bool DispatchViewCommandEvents(TInt aCommand);
78 // -----------------------------------------------------------------------
79 // Routine that initializes components owned by this Container
80 // -----------------------------------------------------------------------
81 void InitComponentsL();
83 void Draw(const TRect& aRect) const;
87 // -----------------------------------------------------------------------
88 // Routine that cleans up components owned by this container
89 // -----------------------------------------------------------------------
90 void CleanupComponents();
92 // -----------------------------------------------------------------------
93 // Handles keys sent to this control
94 // -----------------------------------------------------------------------
95 TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);
97 // -----------------------------------------------------------------------
98 // Responds to size changes to sets the size and position of the contents of this control
99 // -----------------------------------------------------------------------
103 // -----------------------------------------------------------------------
104 // CAknNavigationControlContainer* iNaviPane;
105 // CAknNavigationDecorator* iNaviDecorator;
106 // -----------------------------------------------------------------------
109 // -----------------------------------------------------------------------
110 // NOTE: The following section is managed by the C++Builder IDE - DO NOT MODIFY
113 CAknContextPane * iContextPane;
114 CAknTitlePane * iTitlePane;
115 CAknNavigationControlContainer * iNaviPane;
116 CAknNavigationDecorator * iNaviDecorator;
120 // -----------------------------------------------------------------------
123 #endif // __HINDIDEMO_CONTAINER_H__