textinput/peninputarc/gsplugin/gspeninputplugin/inc/gspeninputimple.h
changeset 0 eb1f2e154e89
equal deleted inserted replaced
-1:000000000000 0:eb1f2e154e89
       
     1 /*
       
     2 * Copyright (c) 2002-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:  gspeninputimple header file.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef C_GSPENINPUTIMPLE_H
       
    20 #define C_GSPENINPUTIMPLE_H
       
    21 
       
    22 // INCLUDES
       
    23 #include <ConeResLoader.h>
       
    24 
       
    25 #include "peninputgsinterface.h"
       
    26 #include "gscenrepnotifyhandlercallback.h"
       
    27 
       
    28 // FORWARD DECLARATION
       
    29 class CGSPenInputModel;
       
    30 class CGSSettingDialog;
       
    31 class CAknNullService;
       
    32 
       
    33 /**
       
    34  *  gspeninputimple interface class
       
    35  *
       
    36  *  This class inherit from CGSPenInputInterface and implement all 
       
    37  *  its pure virtual function. 
       
    38  *
       
    39  *  @lib gspeninputplugin.dll
       
    40  *  @since S60 v3.2
       
    41  */
       
    42 class CGSPenInputImple : public CPenInputGSInterface, 
       
    43                          public MGsCenRepNotifyHandlerCallback 
       
    44     {
       
    45 
       
    46 public: 
       
    47 
       
    48     /**
       
    49      * Symbian constructor
       
    50      *
       
    51      * @since S60 v3.2
       
    52      * @return Pointer to created CGSPenInputImple object
       
    53      */
       
    54     static CGSPenInputImple* NewL();
       
    55 
       
    56     /**
       
    57      * Destructor
       
    58      *
       
    59      * @since S60 v3.2
       
    60      * @return None
       
    61      */
       
    62     virtual ~CGSPenInputImple();
       
    63         
       
    64     /**
       
    65      * Get model instance
       
    66      *
       
    67      * @since S60 v3.2
       
    68      * @return None
       
    69      */ 
       
    70     CGSPenInputModel* Model();
       
    71 
       
    72     /**
       
    73      * Current writing speed name 
       
    74      *
       
    75      * @since S60 v3.2
       
    76      * @param aWritingSpeed Reference to current input language name
       
    77      * @return None
       
    78      */
       
    79     void WritingSpeed(TDes& aWritingSpeed);
       
    80     
       
    81     /**
       
    82      * Current guide line name 
       
    83      *
       
    84      * @since S60 v3.2
       
    85      * @param aGuideLine Reference to current guide line name
       
    86      * @return None
       
    87      */
       
    88     void GuideLine(TDes& aGuideLine);    
       
    89     
       
    90     /**
       
    91      * Current guide line name 
       
    92      *
       
    93      * @since S60 v3.2
       
    94      * @param aGuideLine Reference to current guide line name
       
    95      * @return None
       
    96      */
       
    97     void RecognitionWithDictionary(TDes& aRecognitionWithDictionary);        
       
    98     
       
    99     /**
       
   100      * Current trail width name 
       
   101      *
       
   102      * @since S60 v3.2
       
   103      * @param aWritingSpeed Reference to current input language name
       
   104      * @return None
       
   105      */
       
   106     void TrailWidth(TDes& aTrailWidth);
       
   107 
       
   108     /**
       
   109      * Current input mode name 
       
   110      *
       
   111      * @since S60 v3.2
       
   112      * @param aInputMode Reference to current input mode name
       
   113      * @return None
       
   114      */
       
   115     void InputModeL(TDes& aInputMode);
       
   116     
       
   117     /**
       
   118      * Current input method for find name 
       
   119      *
       
   120      * @since S60 v5.0
       
   121      * @param aInputMethodForFind Reference to current input method for find name
       
   122      * @return None
       
   123      */
       
   124     void InputMethodForFind(TDes& aInputMethodForFind);
       
   125     
       
   126     /**
       
   127      * Display "Pen input language" setting page
       
   128      *
       
   129      * @since S60 v3.2
       
   130      * @return ETrue for setting change; otherwise EFalse
       
   131      */
       
   132     TBool ShowInputLanguageSettingPageL();    
       
   133     
       
   134     /**
       
   135      * Current chinese find method item text
       
   136      *     
       
   137      * @return aChineseFindMethod, chinese find method resource item text     
       
   138      */     
       
   139     void GetCurrentChineseFineMethodItem( TDes& aChineseFindMethod );
       
   140 
       
   141     /**
       
   142      * Load correct items for chinese find methods
       
   143      * by different chinese languages
       
   144      * 
       
   145      * @return None
       
   146      */     
       
   147      void LoadChineseFindMethodItemsL();
       
   148 
       
   149     /**
       
   150      * Load correct items for default on screen vbk items
       
   151      * 
       
   152      * @return None
       
   153      */     
       
   154      void LoadDefaultOnScreenVkbItemsL();
       
   155     
       
   156 // From CGSPenInputInterface
       
   157 
       
   158     /**
       
   159      * From CGSPenInputInterface
       
   160      * Dispaly input pen settings main view
       
   161      *
       
   162      * @since S60 v3.2
       
   163      * @return None.
       
   164      */
       
   165     void ShowMainViewL();
       
   166 
       
   167     /**
       
   168      * From CGSPenInputInterface
       
   169      * Display pop up list setting page
       
   170      *
       
   171      * @since S60 v3.2
       
   172      * @return ETrue for setting change; otherwise EFalse
       
   173      */
       
   174     TBool ShowInputLanguagePageL();
       
   175 
       
   176     /**
       
   177      * From CGSPenInputInterface
       
   178      * Display "Input Mode" setting page
       
   179      *
       
   180      * @since S60 v3.2
       
   181      * @return ETrue for setting change; otherwise EFalse
       
   182      */
       
   183     TBool ShowInputModePageL();
       
   184 
       
   185     /**
       
   186      * From CGSPenInputInterface
       
   187      * Display "Writing speed" setting page
       
   188      *
       
   189      * @since S60 v3.2
       
   190      * @return ETrue for setting change; otherwise EFalse
       
   191      */
       
   192     TBool ShowWritingSpeedPageL();
       
   193     
       
   194     /**
       
   195      * From CGSPenInputInterface
       
   196      * Display "Guide Line" setting page
       
   197      *
       
   198      * @since S60 v3.2
       
   199      * @return ETrue for setting change; otherwise EFalse
       
   200      */
       
   201     TBool ShowGuideLinePageL();      
       
   202     TBool ShowRecognitionWithDictionaryL();
       
   203     
       
   204 
       
   205     /**
       
   206      * From CGSPenInputInterface
       
   207      * Display "Pen trail width" setting page
       
   208      *
       
   209      * @since S60 v3.2
       
   210      * @return ETrue for setting change; otherwise EFalse
       
   211      */
       
   212     TBool ShowTrailWidthPageL();
       
   213 
       
   214     /**
       
   215      * From CGSPenInputInterface
       
   216      * Display "Pen trail colour" setting page
       
   217      *
       
   218      * @since S60 v3.2
       
   219      * @return ETrue for setting change; otherwise EFalse
       
   220      */ 
       
   221     TBool ShowTrailColourPageL();
       
   222 
       
   223     /**
       
   224      * From CGSPenInputInterface
       
   225      * Display "Input method for find" setting page
       
   226      *
       
   227      * @since S60 v5.0
       
   228      * @return ETrue for setting change; otherwise EFalse
       
   229      */
       
   230     TBool ShowInputMethodForFindPageL();  
       
   231 
       
   232     /**
       
   233      * From CGSPenInputInterface
       
   234      * Display "Chinese Find Method" setting page
       
   235      *
       
   236      * @since S60 v5.0
       
   237      * @return ETrue for setting change; otherwise EFalse
       
   238      */
       
   239     TBool ShowChineseFindMethodPageL();
       
   240         
       
   241     /**
       
   242      * From CGSPenInputInterface
       
   243      * Display "Touch screen calibration" setting page
       
   244      *
       
   245      * @since S60 v3.2
       
   246      * @return None
       
   247      */ 
       
   248     void StartTouchScreenCalibL();
       
   249 
       
   250 // From MGsCenRepNotifyHandlerCallback
       
   251     void HandleNotifyInt(TUint32 aId, TInt aNewValue );
       
   252 
       
   253     /**
       
   254      * This callback method is used to notify the client about
       
   255      * key changing
       
   256      * 
       
   257      * @param aRepositoryUid The repository uid for each key
       
   258      * @param aId Key id 
       
   259      * @param aNewValue New value
       
   260      * @return None
       
   261      */
       
   262     void HandleNotifyInt(TUid aRepositoryUid, TUint32 aId, TInt aNewValue);
       
   263     
       
   264     /**
       
   265      * Restore caller's status pane visibility.
       
   266      */
       
   267     void RestoreStatusPaneVisibility();
       
   268     
       
   269     
       
   270 protected:
       
   271 
       
   272     /**
       
   273      * C++ default constructor
       
   274      *
       
   275      * @since S60 v3.2
       
   276      * @return None
       
   277      */  
       
   278     CGSPenInputImple();
       
   279 
       
   280 private:
       
   281 
       
   282     /**
       
   283      * Symbian second-phase constructor
       
   284      *
       
   285      * @since S60 v3.2
       
   286      * @return None
       
   287      */          
       
   288      void ConstructL();
       
   289 
       
   290     /**
       
   291      * Opens the nearest localized resourcefile using aResourceLoader
       
   292      *
       
   293      * @since S60 v3.2
       
   294      * @param aResourceFileName Drive and name of resource file in format
       
   295      *                          <path>:<rsc_file_name>
       
   296      * @return None
       
   297      */
       
   298      void OpenResourceFileL(const TDesC& aResourceFileName);
       
   299    
       
   300     /**
       
   301      * Load language list popup query dialog icons from resource
       
   302      *
       
   303      * @since S60 v3.2
       
   304      * @param aIcons Pointer to display icone
       
   305      * @param aBitmapId Bitmap resource id
       
   306      * @param aMaskId Mask resource id
       
   307      * @return None
       
   308      */
       
   309      void LoadIconL(CArrayPtr<CGulIcon>* aIcons, TInt aBitmapId, TInt aMaskId);    
       
   310 
       
   311      void PrepareScreenFurnitureL( TBool& aToolbarShow );
       
   312 
       
   313      void RestoreScreenFurnitureL( TBool aShowToolbar );
       
   314    
       
   315 private:
       
   316     
       
   317      /**
       
   318      * The model (Own)
       
   319      */
       
   320     CGSPenInputModel* iModel;
       
   321     
       
   322     CGSSettingDialog* iDialog;
       
   323     
       
   324     /**
       
   325     * Resource loader
       
   326     */
       
   327     RConeResourceLoader iResourceLoader;
       
   328 
       
   329     /**
       
   330      * The string of writing speed items (Own)
       
   331      */
       
   332     CDesCArrayFlat* iWritingSpeedItems;
       
   333 
       
   334     /**
       
   335      * The string of guid line items (Own)
       
   336      */
       
   337     CDesCArrayFlat* iGuideLineItems;
       
   338     /**
       
   339      * The string of guid line items (Own)
       
   340      */
       
   341     CDesCArrayFlat* iRecognitionWithDictionary;    
       
   342 
       
   343     /**
       
   344      * The string of pen trail width items (Own)
       
   345      */
       
   346     CDesCArrayFlat* iPenTrailWidthItems;
       
   347     
       
   348     /**
       
   349      * The string array of input mode items (Own)
       
   350      */
       
   351     CDesCArrayFlat* iInputModeItems;    
       
   352     
       
   353     /**
       
   354      * The string of input method for find items (Own)
       
   355      */
       
   356     CDesCArrayFlat* iInputMethodForFindItems;
       
   357 
       
   358     /**
       
   359      * The string of input method for chinese find method items (Own)
       
   360      */
       
   361     CDesCArrayFlat* iChineseFindMethodItems;
       
   362     
       
   363     /**
       
   364      * Variable to store the orign status pane visible
       
   365      */
       
   366 	TBool isSpVisibleBak;
       
   367 
       
   368     /**
       
   369      * Variable to store the orign title pane text
       
   370      */
       
   371 	HBufC* iTitleTextBak;
       
   372 	
       
   373     /**
       
   374      * Launch application;
       
   375      */    
       
   376     CAknNullService* iNullService;
       
   377     };
       
   378 
       
   379 #endif // C_GSPENINPUTIMPLE_H
       
   380 
       
   381 // End Of File