os/textandloc/fontservices/textshaperplugin/test/S60HindiDemo/inc/HindiDemocontainer.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 /*
     2 * Copyright (c) 2005-2009 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 "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".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description: 
    15 * Series 60 version of Hindi Demo application
    16 *
    17 */
    18 
    19 
    20 
    21 #ifndef __HINDIDEMO_CONTAINER_H__
    22 #define __HINDIDEMO_CONTAINER_H__
    23 
    24 #include "HindiDemo.hrh"
    25 
    26 #include <aknsettingitemlist.h>
    27 #include <akncontext.h>
    28 #include <aknnavi.h>
    29 #include <aknnavide.h>
    30 #include <akntitle.h>
    31 #include <avkon.rsg>
    32 #include <barsread.h>
    33 #include <eikspane.h>
    34 
    35 const TInt KLengthOfNaviTempString = 100;
    36 
    37 #if !defined(KSettingEdwinMaxValueLength)
    38 #define KSettingEdwinMaxValueLength 50
    39 #endif
    40 
    41 #if !defined(KSettingSecretMaxLabelLength)
    42 #define KSettingSecretMaxLabelLength 20
    43 #endif
    44 
    45 
    46 // -----------------------------------------------------------------------
    47 // CHindiDemoContainer
    48 // -----------------------------------------------------------------------
    49 class CHindiDemoContainer : public CAknSettingItemList {
    50 
    51 public:
    52 
    53   ~CHindiDemoContainer();
    54 
    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.
    59   //
    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);
    64 
    65   // ------------------------------------------------------------------------------------------------
    66   // This launches the setting page for the current item by calling EditItemL on it
    67   //
    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);
    72 
    73   // -----------------------------------------------------------------------
    74   // Routine that dispatches Command events to individual handlers
    75   // -----------------------------------------------------------------------
    76   bool DispatchViewCommandEvents(TInt aCommand);
    77 
    78   // -----------------------------------------------------------------------
    79   // Routine that initializes components owned by this Container
    80   // -----------------------------------------------------------------------
    81   void InitComponentsL();
    82 
    83   	void Draw(const TRect& aRect) const;
    84 
    85 private:
    86 
    87   // -----------------------------------------------------------------------
    88   // Routine that cleans up components owned by this container
    89   // -----------------------------------------------------------------------
    90   void CleanupComponents();
    91 
    92   // -----------------------------------------------------------------------
    93   // Handles keys sent to this control
    94   // -----------------------------------------------------------------------
    95   TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);
    96 
    97   // -----------------------------------------------------------------------
    98   // Responds to size changes to sets the size and position of the contents of this control
    99   // -----------------------------------------------------------------------
   100   void SizeChanged();
   101 
   102  private:
   103   // -----------------------------------------------------------------------
   104   //  CAknNavigationControlContainer* iNaviPane;
   105   //  CAknNavigationDecorator* iNaviDecorator;
   106   // -----------------------------------------------------------------------
   107 
   108 private:
   109   // -----------------------------------------------------------------------
   110   // NOTE: The following section is managed by the C++Builder IDE - DO NOT MODIFY
   111   //IDE-MANAGED-START
   112   /* 13/08/05 20:28 */
   113   CAknContextPane * iContextPane;
   114   CAknTitlePane * iTitlePane;
   115   CAknNavigationControlContainer * iNaviPane;
   116   CAknNavigationDecorator * iNaviDecorator;
   117   //IDE-MANAGED-END
   118 
   119 
   120   // -----------------------------------------------------------------------
   121 };
   122 
   123 #endif // __HINDIDEMO_CONTAINER_H__