textinput/GSLangPlugin/inc/GSLangContainer.h
changeset 0 eb1f2e154e89
child 3 f5a1e66df979
equal deleted inserted replaced
-1:000000000000 0:eb1f2e154e89
       
     1 /*
       
     2 * Copyright (c) 2005 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:  Container for GSLangPlugin.
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef GSLANGCONTAINER_H
       
    19 #define GSLANGCONTAINER_H
       
    20 
       
    21 // INCLUDES
       
    22 #include    <gsbasecontainer.h>
       
    23 #include    <gscommon.hrh>
       
    24 #include    <bldvariant.hrh>
       
    25 
       
    26 _LIT(HLP_GS_LANGUAGE_PLUGIN, "CP_HLP_LANGUAGE"); // temp fix for helps integration build break;replace KCP_HLP_LANGUAGE in cp.hlp.hrh
       
    27 
       
    28 // FORWARD DECLARATION
       
    29 class CGSRadioButtonSettingPageItemTextArray;
       
    30 class CGSListBoxItemTextArray;
       
    31 class CGSLangModel;
       
    32 
       
    33 // CLASS DECLARATION
       
    34 
       
    35 /**
       
    36 *  CGSLangContainer container class
       
    37 *  @lib GSLangPlugin.dll
       
    38 *  @since Series60 3.1
       
    39 */
       
    40 class CGSLangContainer : public CGSBaseContainer
       
    41     {
       
    42     public: // Constructors and destructor
       
    43 
       
    44         CGSLangContainer();
       
    45 
       
    46         /**
       
    47         * Symbian OS constructor.
       
    48         *
       
    49         * @param aRect Listbox's rect.
       
    50         */
       
    51         void ConstructL( const TRect& aRect );
       
    52 
       
    53         /**
       
    54         * Destructor.
       
    55         */
       
    56         ~CGSLangContainer();
       
    57 
       
    58     public: // From CCoeControl
       
    59 
       
    60         /**
       
    61         * See base class.
       
    62         */
       
    63         TInt CountComponentControls() const;
       
    64 
       
    65         /**
       
    66         * See base class.
       
    67         */
       
    68         CCoeControl* ComponentControl( TInt /*aIndex*/ ) const;
       
    69 
       
    70         //void HandleResourceChange(TInt aType);
       
    71         //void SizeChanged();
       
    72 
       
    73         /**
       
    74         * See base class.
       
    75         */
       
    76         void GetHelpContext( TCoeHelpContext& aContext ) const;
       
    77 
       
    78     public: // New
       
    79 
       
    80         /**
       
    81         * Updates listbox's item's value.
       
    82         * @param aItemId An item which is updated.
       
    83         */
       
    84         void UpdateListBoxL( TInt aItemId );
       
    85 
       
    86         /**
       
    87         * Retrieves the currently selected listbox feature id
       
    88         * @return feature id.
       
    89         */
       
    90         TInt CurrentFeatureId() const;
       
    91 
       
    92         /**
       
    93         *   Getter for CGSModel. Does not transfer ownership.
       
    94         */
       
    95         CGSLangModel* Model();
       
    96 
       
    97         /**
       
    98         * @return pointer to number mode items.
       
    99         */
       
   100         const MDesCArray* NumberModeItems(  TInt aNbrModeType  );
       
   101         void MakeListItemVisibleL( TInt aFeatureId, 
       
   102                                    TInt aCurrentlySelectedFeature ); 
       
   103         
       
   104         /*
       
   105         * Set T9 item visibility
       
   106         */
       
   107         void SetT9ItemVisibilityL( TBool aVisibility );
       
   108         void HandleResourceChange( TInt aType );
       
   109         
       
   110     protected: // From CGSBaseContainer
       
   111         /**
       
   112         * Constructs listbox and initializes its sub-folders
       
   113         * @param aResLbxId: resource ID of the listbox item array
       
   114         */
       
   115         void ConstructListBoxL( TInt aResLbxId );
       
   116 
       
   117     private: // New
       
   118 
       
   119         // Functions for making the list items:
       
   120         void CreateListBoxItemsL();
       
   121 
       
   122         void MakeDTLItemL();
       
   123         void MakeITLItemL();
       
   124         void MakeT9LItemL();
       
   125         /*
       
   126         *  @ From 4.0 Req: Autoword completion
       
   127         */
       
   128         void MakePredictiveModeItemL();
       
   129         
       
   130         // Available in Japanese variant
       
   131         void MakeEngPredTxtItemL();
       
   132         void MakeJnpPredTxtItemL();
       
   133         void MakeKeypressTimeoutItemL();
       
   134         void MakeJapQwertyItemL( TInt aFeatureId );        
       
   135         void MakeResetATOKDictionaryItemL();
       
   136         
       
   137         void MakeAHNumberModeItemL();
       
   138         void MakeHindiNumberModeItemL();
       
   139         void MakeDIMItemL();
       
   140         void MakeCangJieItemL();
       
   141 #ifdef RD_INTELLIGENT_TEXT_INPUT
       
   142         void MakePredictiveOptionsItemL();
       
   143 #endif
       
   144 
       
   145     private: // New
       
   146         // Language setting page items
       
   147         CDesCArrayFlat* iDtLanguageItems;
       
   148         // Obtained from SysLangUtil
       
   149         CArrayFixFlat<TInt>* iDtLanguagesCodes;
       
   150         // T9 language codes
       
   151         CArrayFixFlat<TInt>* iWtLanguagesCodes;
       
   152         // T9 language menu items
       
   153         CDesCArrayFlat* iWtLanguageItems;
       
   154         // T9 setting page items
       
   155         CDesCArrayFlat* iOnOffItems;
       
   156         // T9 related
       
   157         HBufC* iOnOffNotAvailable;
       
   158         // A&H Number mode items.
       
   159         CDesCArrayFlat* iAHNumberModeItems;
       
   160         // Hindi Number mode items.
       
   161         CDesCArrayFlat* iHindiNumberModeItems;
       
   162         // Default Input Method items
       
   163         CDesCArrayFlat* iInputMethodItems;
       
   164         // T9 setting page items
       
   165         CDesCArrayFlat* iJapPredTxtOnOffItems;
       
   166         //Keypress Timeout setting page items
       
   167         CDesCArrayFlat* iKeypressTimeoutItems;
       
   168         //Japanese Qwerty Comma setting page items
       
   169         CDesCArrayFlat* iJapQwertyCommaItems;
       
   170         //Japanese Qwerty Period setting page items
       
   171         CDesCArrayFlat* iJapQwertyPeriodItems;
       
   172         //Japanese Qwerty Width Of Space setting page items
       
   173         CDesCArrayFlat* iJapQwertyWidthOfSpaceItems;
       
   174         //Chinese CangJie input mode
       
   175         CDesCArrayFlat* iChiCangJieItems;
       
   176         //Predictive mode :  Autoword completion Req
       
   177         CDesCArrayFlat* iPredictiveModeItems;
       
   178         
       
   179         CGSListBoxItemTextArray* iListboxItemArray;
       
   180         TBool iUpdateITL;
       
   181         CGSLangModel* iModel;
       
   182     };
       
   183 
       
   184 #endif // GSLANGCONTAINER_H
       
   185 // End of File