textinput/peninputfingerhwrar/inc/peninputfingerhwrarwnd.h
branchRCL_3
changeset 7 a47de9135b21
parent 3 f5a1e66df979
child 10 6defe5d1bd39
equal deleted inserted replaced
3:f5a1e66df979 7:a47de9135b21
    25 // FORWARD DECLARATIONS
    25 // FORWARD DECLARATIONS
    26 class CFepLayoutMultiLineIcf;
    26 class CFepLayoutMultiLineIcf;
    27 class CAknFepCtrlEventButton;
    27 class CAknFepCtrlEventButton;
    28 class CAknFepCtrlRepeatButton;
    28 class CAknFepCtrlRepeatButton;
    29 class CFepCtrlDropdownList;
    29 class CFepCtrlDropdownList;
    30 class CPeninputLayoutInputmodelChoice;
       
    31 class CTransparentHwrWndExt;
    30 class CTransparentHwrWndExt;
    32 class CPeninputFingerHwrArLafManager;
    31 class CPeninputFingerHwrArLafManager;
    33 class CPeninputArabicFingerHwrSymbolTable;
    32 class CPeninputArabicFingerHwrSymbolTable;
    34 class CPeninputArabicFingerHwrIndicator;
    33 class CPeninputArabicFingerHwrIndicator;
    35 
    34 
    37  *  class CPeninputFingerHwrArWnd.
    36  *  class CPeninputFingerHwrArWnd.
    38  *
    37  *
    39  *  Main window of finger hwr arabic. 
    38  *  Main window of finger hwr arabic. 
    40  *
    39  *
    41  *  @lib peninputfingerhwrar.lib
    40  *  @lib peninputfingerhwrar.lib
    42  *  @since S60 v5.0
    41  *  @since Symbian TB9.2
    43  */
    42  */
    44 class CPeninputFingerHwrArWnd : public CControlGroup
    43 class CPeninputFingerHwrArWnd : public CControlGroup
    45     {
    44     {   
    46 
       
    47 public:
    45 public:
    48 
    46 
    49     /**
    47     /**
    50      * Symbian constructor.
    48      * Symbian constructor.
    51      *
    49      *
    52      * @since S60 v5.0
    50      * @since Symbian TB9.2
    53      * 
    51      * 
    54      * @param aUiLayout The layout
    52      * @param aUiLayout The layout
    55      * @param aControlId The control id
    53      * @param aControlId The control id
    56      * @param aLandscapeStyle Current screen is landscape or not
    54      * @param aLandscapeStyle Current screen is landscape or not
    57      * @return Pointer to created CPeninputFingerHwrArWnd object
    55      * @return Pointer to created CPeninputFingerHwrArWnd object
    60             TInt aControlId, TBool aLandscapeStyle );
    58             TInt aControlId, TBool aLandscapeStyle );
    61 
    59 
    62     /**
    60     /**
    63      * Symbian constructor.
    61      * Symbian constructor.
    64      *
    62      *
    65      * @since S60 v5.0
    63      * @since Symbian TB9.2
    66      * 
    64      * 
    67      * @param aUiLayout The layout
    65      * @param aUiLayout The layout
    68      * @param aControlId The control id
    66      * @param aControlId The control id
    69      * @param aLandscapeStyle Current screen is landscape or not
    67      * @param aLandscapeStyle Current screen is landscape or not
    70      * @return Pointer to created CPeninputFingerHwrArWnd object
    68      * @return Pointer to created CPeninputFingerHwrArWnd object
    73             TInt aControlId, TBool aLandscapeStyle );
    71             TInt aControlId, TBool aLandscapeStyle );
    74 
    72 
    75     /**
    73     /**
    76      * standard c++ destructor.
    74      * standard c++ destructor.
    77      *
    75      *
    78      * @since S60 v5.0
    76      * @since Symbian TB9.2
    79      * @return None
    77      * @return None
    80      */
    78      */
    81     virtual ~CPeninputFingerHwrArWnd();
    79     virtual ~CPeninputFingerHwrArWnd();
    82 
    80 
    83     
    81     
   100     
    98     
   101 public: 
    99 public: 
   102     /**
   100     /**
   103      * Resize according to LAF.
   101      * Resize according to LAF.
   104      *
   102      *
   105      * @since S60 v5.0
   103      * @since Symbian TB9.2
   106      * @return None
   104      * @return None
   107      */
   105      */
   108     void SizeChangedL();
   106     void SizeChangedL();
   109 	
   107 	
   110 public: // target editor attributes
   108 public: // target editor attributes
   111     /**
   109     /**
   112      * accept editor's text alignment.  
   110      * accept editor's text alignment.  
   113      * 
   111      * 
   114      * @since S60 v5.0
   112      * @since Symbian TB9.2
   115      * @param aAlignment text alignment id. It can be one of the following: 
   113      * @param aAlignment text alignment id. It can be one of the following: 
   116      *     EAknEditorAlignNone
   114      *     EAknEditorAlignNone
   117      *     EAknEditorAlignCenter
   115      *     EAknEditorAlignCenter
   118      *     EAknEditorAlignLeft
   116      *     EAknEditorAlignLeft
   119      *     EAknEditorAlignRight
   117      *     EAknEditorAlignRight
   124     void SetTextAlignmentL( TInt aAlignment, TInt aLangId );
   122     void SetTextAlignmentL( TInt aAlignment, TInt aLangId );
   125     
   123     
   126     /**
   124     /**
   127      * accept editor's text.
   125      * accept editor's text.
   128      * 
   126      * 
   129      * @since S60 v5.0
   127      * @since Symbian TB9.2
   130      * @param aData editor's text.
   128      * @param aData editor's text.
   131      * @return none
   129      * @return none
   132      */
   130      */
   133     void SetEditorTextL( const TFepInputContextFieldData& aData );
   131     void SetEditorTextL( const TFepInputContextFieldData& aData );
   134     
   132     
   135     /**
   133     /**
   136      * accept editor's promopt txt
   134      * accept editor's promopt txt
   137      * 
   135      * 
   138      * @since S60 v5.0
   136      * @since Symbian TB9.2
   139      * @param aPromoptData editor's promopt text
   137      * @param aPromoptData editor's promopt text
   140      * @return none
   138      * @return none
   141      */    
   139      */    
   142     void SetPromptTextL( TUint8* aPromoptData );
   140     void SetPromptTextL( TUint8* aPromoptData );
   143     
   141     
   144     /**
   142     /**
   145      * Dim option button
   143      * Dim option button
   146      * 
   144      * 
   147      * @since S60 v5.0
   145      * @since Symbian TB9.2
   148      * @param aEnable Enable or disable option button
   146      * @param aEnable Enable or disable option button
   149      * @return none
   147      * @return none
   150      */    
   148      */    
   151     void SetEnableSettingBtn(const TBool aEnable);
   149     void SetEnableSettingBtn(const TBool aEnable);
   152     
   150     
   153     /**
   151     /**
   154      * accept editor's bubble text.
   152      * accept editor's bubble text.
   155      * 
   153      * 
   156      * @since S60 v5.0
   154      * @since Symbian TB9.2
   157      * @param aPromoptData editor's bubble text.
   155      * @param aPromoptData editor's bubble text.
   158      * @return none
   156      * @return none
   159      */       
   157      */       
   160     void SetBubbleTextL( const TDesC& aInfo );    
   158     void SetBubbleTextL( const TDesC& aInfo );    
   161 
   159 
   162     /**
       
   163      * accept editor's char ranges restriction.
       
   164      * 
       
   165      * @since S60 v5.0
       
   166      * @param aPermittedRanges permitted char range flags. It can be combination of the following: 
       
   167      *     ERangeNative
       
   168      *     ERangeEnglish
       
   169      *     ERangeNumber.
       
   170      *     See TAknFepPenInputRange.
       
   171      * @return none
       
   172      */
       
   173     void SetPermittedRanges( const TInt aPermittedRanges );
       
   174     
       
   175 public: //hwr 
   160 public: //hwr 
   176     
   161     
   177     /**
   162     /**
   178      * get strokes from hwr writing box
   163      * get strokes from hwr writing box
   179      * 
   164      * 
   180      * @since S60 v5.0
   165      * @since Symbian TB9.2
   181      * @return a TPoint array of strokes
   166      * @return a TPoint array of strokes
   182      */
   167      */
   183     const RArray<TPoint>& StrokeList();
   168     const RArray<TPoint>& StrokeList();
   184 
   169 
   185     /**
   170     /**
   186      * set end mark of hwr
   171      * set end mark of hwr
   187      * 
   172      * 
   188      * @since S60 v5.0
   173      * @since Symbian TB9.2
   189      * @param aEndMark a TPoint object as end mark
   174      * @param aEndMark a TPoint object as end mark
   190      * @return none
   175      * @return none
   191      */
   176      */
   192     void SetStrokeEndMark( const TPoint& aEndMark );
   177     void SetStrokeEndMark( const TPoint& aEndMark );
   193     
   178     
   194     /**
   179     /**
   195      * set guide line on or off. 
   180      * set guide line on or off. 
   196      * 
   181      * 
   197      * @since S60 v5.0
   182      * @since Symbian TB9.2
   198      * @return none
   183      * @return none
   199      */
   184      */
   200     void SetGuideLineOn( const TBool aGuideLineOn);
   185     void SetGuideLineOn( const TBool aGuideLineOn);
   201     
   186     
   202     /**
   187     /**
   203      * set pen color of hwr writing 
   188      * set pen color of hwr writing 
   204      * 
   189      * 
   205      * @since S60 v5.0
   190      * @since Symbian TB9.2
   206      * @return none
   191      * @return none
   207      */
   192      */
   208     void SetBoxPenColor( const TInt aPenColor );
   193     void SetBoxPenColor( const TInt aPenColor );
   209     
   194     
   210     /**
   195     /**
   211      * set pen size of hwr writing 
   196      * set pen size of hwr writing 
   212      * 
   197      * 
   213      * @since S60 v5.0
   198      * @since Symbian TB9.2
   214      * @return none
   199      * @return none
   215      */
   200      */
   216     void SetBoxPenSize( const TSize aPenSize );
   201     void SetBoxPenSize( const TSize aPenSize );
   217     
   202     
   218     /**
   203     /**
   219      * set writing speed hwr writing 
   204      * set writing speed hwr writing 
   220      * 
   205      * 
   221      * @since S60 v5.0
   206      * @since Symbian TB9.2
   222      * @return none
   207      * @return none
   223      */    
   208      */    
   224     void SetBoxWritingSpeed( const TTimeIntervalMicroSeconds32& aCharDelay );
   209     void SetBoxWritingSpeed( const TTimeIntervalMicroSeconds32& aCharDelay );
   225     
   210     
   226     /**
   211     /**
   227      * retrieve rect of hwr writingbox.
   212      * retrieve rect of hwr writingbox.
   228      * 
   213      * 
   229      * @since S60 v5.0
   214      * @since Symbian TB9.2
   230      * @return rect of hwr writingbox.
   215      * @return rect of hwr writingbox.
   231      */
   216      */
   232     TRect WritingBoxRect();
   217     TRect WritingBoxRect();
   233     
   218     
   234     /**
   219     /**
   235      * Cancel wrting
   220      * Cancel wrting
   236      *
   221      *
   237      * @since S60 v5.0
   222      * @since Symbian TB9.2
   238      * @return None
   223      * @return None
   239      */
   224      */
   240     void CancelWriting();    
   225     void CancelWriting();    
   241 
   226 
   242 public: // show symbol table page
   227 public: // show symbol table page
   243     
   228     
   244     /**
   229     /**
   245      * Change SCT page.
   230      * Change symbol table page.
   246      * 
   231      * 
   247      * @since S60 v5.0
   232      * @since Symbian TB9.2
   248      * @param aPageNo page no.
   233      * @param aPageNo page no.
   249      * @param aPos Specifies the interpretation of the aPageNo parameter:
   234      * @param aPos Specifies the interpretation of the aPageNo parameter:
   250             EPagePosPageNo - go to page aPageNo.
   235             EPagePosPageNo - go to page aPageNo.
   251             EPagePosNextPage -  go to next page.
   236             EPagePosNextPage -  go to next page.
   252             EPagePosPrevPage -  go to previous page.
   237             EPagePosPrevPage -  go to previous page.
   253             EPagePosLastPage -  go to last page.
   238             EPagePosLastPage -  go to last page.
   254             EPagePosFirstPage  - go to first page.
   239             EPagePosFirstPage  - go to first page.
   255      * @return none
   240      * @return none
   256      */
   241      */
   257     void ShowSctPage( TInt aPageNo, TInt aPos );
   242     void ShowSymbolPage( TInt aPageNo, TInt aPos );
   258     
   243     
   259 public: //child control access
   244 public: //child control access
   260     
   245     
   261     /**
   246     /**
   262      * retrieve the ICF control. 
   247      * retrieve the ICF control. 
   263      * 
   248      * 
   264      * @since S60 v5.0
   249      * @since Symbian TB9.2
   265      * @return pointer to ICF
   250      * @return pointer to ICF
   266      */
   251      */
   267     CFepLayoutMultiLineIcf* Icf();
   252     CFepLayoutMultiLineIcf* Icf();
   268 
   253 
   269     
   254     
   270     /**
   255     /**
   271      * retrieve the candicate list control. 
   256      * retrieve the candicate list control. 
   272      * 
   257      * 
   273      * @since S60 v5.0
   258      * @since Symbian TB9.2
   274      * @return pointer to candicate list 
   259      * @return pointer to candicate list 
   275      */    
   260      */    
   276     CFepCtrlDropdownList* CandidateList();
   261     CFepCtrlDropdownList* CandidateList();
   277     
   262     
   278     /**
   263     /**
   279      * retrieve the number candicate list control. 
   264      * retrieve the number candicate list control. 
   280      * 
   265      * 
   281      * @since S60 v5.0
   266      * @since Symbian TB9.2
   282      * @return pointer to candicate list 
   267      * @return pointer to candicate list 
   283      */    
   268      */    
   284     CFepCtrlDropdownList* NumCandidateList();
   269     CFepCtrlDropdownList* NumCandidateList();
   285 
   270 	
   286 public: //ui
       
   287     
       
   288     /**
       
   289      * update layout
       
   290      * safe version of UpdateLayoutL()
       
   291      * 
       
   292      * @since S60 v5.0
       
   293      * @param aIsStandby ETrue if is standby state
       
   294      * @return none
       
   295      */
       
   296     void UpdateLayout( const TBool aIsStandby, 
       
   297                        const TBool aReloadCandicate=ETrue );
       
   298     
       
   299     /**
       
   300      * update layout
       
   301      * 
       
   302      * @since S60 v5.0
       
   303      * @param aIsStandby ETrue if is standby state
       
   304      * @return none
       
   305      */    
       
   306     void UpdateLayoutL( const TBool aIsStandby, 
       
   307                         const TBool aReloadCandicate=ETrue);
       
   308 
       
   309     /**
   271     /**
   310      * dim arrow buttons
   272      * dim arrow buttons
   311      * 
   273      * 
   312      * @since S60 v5.0
   274      * @since Symbian TB9.2
   313      * @param aDimArrow ETrue to dim arrow buttons, EFalse to set arrow buttons as not dimmed. 
   275      * @param aDimArrow ETrue to dim arrow buttons, EFalse to set arrow buttons as not dimmed. 
   314      * @return none
   276      * @return none
   315      */
   277      */
   316     void DimArrowKeys( TBool aDimArrow );
   278     void DimArrowKeys( TBool aDimArrow );
   317     
   279     
   318 public: // symbol table & candidate list    
   280 public: // symbol table & candidate list    
   319     /**
   281     /**
   320      * retrieve char range of layout, including sct.
       
   321      * 
       
   322      * @since S60 v5.0
       
   323      * @return char range id.
       
   324      */
       
   325     TInt CurrentCharRange();
       
   326     
       
   327     /**
       
   328      * Show preview bubble
   282      * Show preview bubble
   329      * 
   283      * 
   330      * @since S60 v5.0
   284      * @since Symbian TB9.2
   331      * @param aShow Show/Hide flag
   285      * @param aShow Show/Hide flag
   332      * @return none
   286      * @return none
   333      */
   287      */
   334     void ShowBubble(TInt aShow);
   288     void ShowBubble(TInt aShow);
   335 	
   289 	
   336 	/**
   290 	/**
   337      * Open the symble table
   291      * Open the symble table
   338      * 
   292      * 
   339      * @since S60 v5.0
   293      * @since Symbian TB9.2
   340      * @return none
   294      * @return none
   341      */
   295      */
   342     void OpenSymbolTable();
   296     void OpenSymbolTable();
   343     
   297     
   344 	/**
   298 	/**
   345      * Close the symble table
   299      * Close the symble table
   346      * 
   300      * 
   347      * @since S60 v5.0
   301      * @since Symbian TB9.2
   348      * @return none
   302      * @return none
   349      */
   303      */
   350 	void CloseSymbolTable();
   304 	void CloseSymbolTable();
   351 	
   305 	
   352 	/**
   306 	/**
       
   307      * Open the candidate list
       
   308      * 
       
   309      * @since Symbian TB9.2
       
   310      * @return none
       
   311      */
       
   312 	void OpenCandidateList();
       
   313 	
       
   314 	/**
       
   315      * Close the candidate list
       
   316      * 
       
   317      * @since Symbian TB9.2
       
   318      * @return none
       
   319      */
       
   320 	void CloseCandidateList();
       
   321 	
       
   322 	/**
   353      * Check if the symbol table is alreay opened up
   323      * Check if the symbol table is alreay opened up
   354      * 
   324      * 
   355      * @since S60 v5.0
   325      * @since Symbian TB9.2
   356      * @return none
   326      * @return none
   357      */
   327      */
   358     TBool IsSymbolTableShowingUp();
   328     TBool IsSymbolTableShowingUp();
   359 	
   329 	
   360 	/**
   330 	/**
   361      * Check if the candidate list was opened up
   331      * Check if the candidate list was opened up
   362      * 
   332      * 
   363      * @since S60 v5.0
   333      * @since Symbian TB9.2
   364      * @return none
   334      * @return none
   365      */
   335      */
   366 	TBool IsCandidateShowup();
   336 	TBool IsCandidateShowup();
   367 
   337 
   368     /**
   338     /**
   369      * Hide the indicator of handwriting
   339      * Hide the indicator of handwriting
   370      * @since S60 v5.0
   340      * @since Symbian TB9.2
   371      * @return none	 
   341      * @return none	 
   372      */
   342      */
   373     void HideIndicator();
   343     void HideIndicator();
   374 	
   344 	
   375 	/**
   345 	/**
   376 	 * Get the char before the cursor
   346 	 * Get the char before the cursor
   377 	 *
   347 	 *
   378 	 * @param aCharPos The the char position
   348 	 * @param aCharPos The the char position
   379 	 * @param aCharBeforeCursor The char to be retrieved
   349 	 * @param aCharBeforeCursor The char to be retrieved
   380 	 * @since S60 v5.0
   350 	 * @since Symbian TB9.2
   381      * @return TBool ETrue if char have been retrieved, EFalse otherwise
   351      * @return TBool ETrue if char have been retrieved, EFalse otherwise
   382 	 */
   352 	 */
   383 	TBool GetCharBeforeCursor(TInt aCharPos, TUint16& aCharBeforeCursor); 
   353 	TBool GetCharBeforeCursor(TInt aCharPos, TUint16& aCharBeforeCursor); 
   384 	
   354 	
   385 protected:
   355 protected:
   386 
   356 
   387     /**
   357     /**
   388      * C++ constructor
   358      * C++ constructor
   389      *
   359      *
   390      * @since S60 v5.0
   360      * @since Symbian TB9.2
   391      * @param aFepUiLayout A Ui Layout environment (CFepUiLayout)
   361      * @param aFepUiLayout A Ui Layout environment (CFepUiLayout)
   392      * @param aControlId Control id
   362      * @param aControlId Control id
   393      * @return None
   363      * @return None
   394      */
   364      */
   395     CPeninputFingerHwrArWnd( CFepUiLayout* aFepUiLayout, TInt aControlId );
   365     CPeninputFingerHwrArWnd( CFepUiLayout* aFepUiLayout, TInt aControlId );
   397 private:
   367 private:
   398 
   368 
   399     /**
   369     /**
   400      * Symbian second-phase constructor
   370      * Symbian second-phase constructor
   401      *
   371      *
   402      * @since S60 v5.0
   372      * @since Symbian TB9.2
   403      * @param aLandscapeStyle Current screen is landscape or not
   373      * @param aLandscapeStyle Current screen is landscape or not
   404      * @return None
   374      * @return None
   405      */
   375      */
   406     void ConstructL( TBool aLandscapeStyle );
   376     void ConstructL( TBool aLandscapeStyle );
   407 
   377 
   408     /**
   378     /**
   409      * create icf.
   379      * create icf.
   410      * 
   380      * 
   411      * @since S60 v5.0
   381      * @since Symbian TB9.2
   412      * @return None
   382      * @return None
   413      */
   383      */
   414     void CreateContextFieldL();
   384     void CreateContextFieldL();
   415 
   385 
   416     /**
   386     /**
   417      * create candidate lists.
   387      * create candidate lists.
   418      * 
   388      * 
   419      * @since S60 v5.0
   389      * @since Symbian TB9.2
   420      * @return None
   390      * @return None
   421      */
   391      */
   422     void CreateCandidateListL();
   392     void CreateCandidateListL();
   423     /**
   393     /**
   424      * create number candidate lists.
   394      * create number candidate lists.
   425      * 
   395      * 
   426      * @since S60 v5.0
   396      * @since Symbian TB9.2
   427      * @return None
   397      * @return None
   428      */
   398      */
   429     void CreateNumCandidateListL();
   399     void CreateNumCandidateListL();
   430     
   400     
   431     /**
   401     /**
   432      * create writing box.
   402      * create writing box.
   433      * 
   403      * 
   434      * @since S60 v5.0
   404      * @since Symbian TB9.2
   435      * @return None
   405      * @return None
   436      */    
   406      */    
   437     void CreateWritingBoxL();
   407     void CreateWritingBoxL();
   438     
   408     
   439     /**
   409     /**
   440      * create all function buttons. 
   410      * create all function buttons. 
   441      * 
   411      * 
   442      * @since S60 v5.0
   412      * @since Symbian TB9.2
   443      * @return None
   413      * @return None
   444      */    
   414      */    
   445     void CreateButtonsL();
   415     void CreateButtonsL();
   446     
   416     
   447     /**
   417     /**
   448      * create virtual sct pad.
   418      * create virtual sct pad.
   449      * 
   419      * 
   450      * @since S60 v5.0
   420      * @since Symbian TB9.2
   451      * @return None
   421      * @return None
   452      */    
   422      */    
   453     void CreateSymbolTableL();
   423     void CreateSymbolTableL();
   454     
   424     
   455     /**
   425     /**
   456      * EventButton creation helper.
   426      * EventButton creation helper.
   457      * 
   427      * 
   458      * @since S60 v5.0
   428      * @since Symbian TB9.2
   459      * @param aCtrlId button control id.
   429      * @param aCtrlId button control id.
   460      * @param aResId resource id.
   430      * @param aResId resource id.
   461      * @param aEvent event id;
   431      * @param aEvent event id;
   462      * @param aUnicode a unicode value to be sent
   432      * @param aUnicode a unicode value to be sent
   463      * @return pointer to created CAknFepCtrlEventButton obj.
   433      * @return pointer to created CAknFepCtrlEventButton obj.
   466             TInt aEvent = 0xFFFF, TInt aUnicode=0 );
   436             TInt aEvent = 0xFFFF, TInt aUnicode=0 );
   467     
   437     
   468     /**
   438     /**
   469      * RepeatButton creation helper.
   439      * RepeatButton creation helper.
   470      * 
   440      * 
   471      * @since S60 v5.0
   441      * @since Symbian TB9.2
   472      * @param aCtrlId button control id.
   442      * @param aCtrlId button control id.
   473      * @param aResId resource id.
   443      * @param aResId resource id.
   474      * @param aEvent event id;
   444      * @param aEvent event id;
   475      * @param aUnicode a unicode value to be sent
   445      * @param aUnicode a unicode value to be sent
   476      * @return pointer to created CAknFepCtrlRepeatButton obj. 
   446      * @return pointer to created CAknFepCtrlRepeatButton obj. 
   477      */
   447      */
   478     CAknFepCtrlRepeatButton* CreateRepBtnL( const TInt aCtrlId, TInt32 aResId,  
   448     CAknFepCtrlRepeatButton* CreateRepBtnL( const TInt aCtrlId, TInt32 aResId,  
   479             const TInt aEvent, const TInt aUnicode );
   449             const TInt aEvent, const TInt aUnicode );
   480     
   450         
   481     /**
       
   482      * load virtual number pad images. 
       
   483      * 
       
   484      * @since S60 v5.0
       
   485      * @param aResId resource id.
       
   486      * @param aKeySize virtual key rect.
       
   487      * @return None
       
   488      */    
       
   489     void LoadVkbKeyImageL( const TInt aResId, const TSize& aKeySize );
       
   490     
       
   491     
       
   492     /**
   451     /**
   493      * load virtual sct keys.
   452      * load virtual sct keys.
   494      * 
   453      * 
   495      * @since S60 v5.0
   454      * @since Symbian TB9.2
   496      * @param aResId resource id.
   455      * @param aResId resource id.
   497      * @param aCellRects rects of virtual keys.
   456      * @param aCellRects rects of virtual keys.
   498      * @return None
   457      * @return None
   499      */      
   458      */      
   500     void LoadVirtualSctpadKeysL( const TInt aResId, const RArray<TRect>& aCellRects );
   459     void LoadSymbolVirtualKeysL( const TInt aResId, const RArray<TRect>& aCellRects );
   501 
   460 
   502     /**
   461     /**
   503      * relayout full ui, reset all controls position. 
   462      * relayout full ui, reset all controls position. 
   504      * 
   463      * 
   505      * @since S60 v5.0
   464      * @since Symbian TB9.2
   506      * @return None
   465      * @return None
   507      */    
   466      */    
   508     void ResetLayoutL();
   467     void ResetLayoutL();
   509 
   468 
   510     /**
   469     /**
   511      * layout for chinese range standby.
   470      * switch to arabic standby view
   512      * 
   471      * 
   513      * @since S60 v5.0
   472      * @since Symbian TB9.2
   514      * @return None
   473      * @return None
   515      */    
   474      */    
   516     void SwitchToStandbyView();
   475     void SwitchToStandbyView();
   517     
   476     
   518     /**
   477     /**
   519      * layout for symbol range standby.
   478      * switch to symbol table view
   520      * 
   479      * 
   521      * @since S60 v5.0
   480      * @since Symbian TB9.2
   522      * @return None
   481      * @return None
   523      */    
   482      */    
   524     void SwitchToSymbolTableView();
   483     void SwitchToSymbolTableView();
   525 
   484 
   526     /**
   485     /**
   527      * EventButton layout helper. Move button to specified rect.
   486      * EventButton layout helper. Move button to specified rect.
   528      * 
   487      * 
   529      * @since S60 v5.0
   488      * @since Symbian TB9.2
   530      * @param aButton the button to move
   489      * @param aButton the button to move
   531      * @param aRect new rect of button
   490      * @param aRect new rect of button
   532      * @param aXPadding horz padding of button icon.
   491      * @param aXPadding horz padding of button icon.
   533      * @param aYPadding vert padding of button icon.
   492      * @param aYPadding vert padding of button icon.
   534      * @param aReloadImages Specifies whether the images is to be reloaded.
   493      * @param aReloadImages Specifies whether the images is to be reloaded.
   538             TInt aXPadding=0, TInt aYPadding=0, TBool aReloadImages=ETrue );
   497             TInt aXPadding=0, TInt aYPadding=0, TBool aReloadImages=ETrue );
   539 
   498 
   540     /**
   499     /**
   541      * read control's shadow info.
   500      * read control's shadow info.
   542      * 
   501      * 
   543      * @since S60 v5.0
   502      * @since Symbian TB9.2
   544      * @param aResId resource id.
   503      * @param aResId resource id.
   545      * @return None
   504      * @return None
   546      */    
   505      */    
   547     void ReadShadowInfoL( const TInt aResId );
   506     void ReadShadowInfoL( const TInt aResId );
   548     
   507     
   549     /**
   508     /**
   550      * read control's background info.
   509      * read control's background info.
   551      *
   510      *
   552      * @since S60 v5.0
   511      * @since Symbian TB9.2
   553      * @param aResId resource id.
   512      * @param aResId resource id.
   554      * @return None
   513      * @return None
   555      */
   514      */
   556     void ReadBackgroundInfoL( const TInt aResId );
   515     void ReadBackgroundInfoL( const TInt aResId );
   557     
   516     
   558     /**
   517     /**
   559      * read icf appearance info.
   518      * read icf appearance info.
   560      * 
   519      * 
   561      * @since S60 v5.0
   520      * @since Symbian TB9.2
   562      * @param aResId resource id.
   521      * @param aResId resource id.
   563      * @return None
   522      * @return None
   564      */    
   523      */    
   565     void ReadICFInfoL( const TInt aResId );
   524     void ReadICFInfoL( const TInt aResId );
   566     
   525     
   567     /**
   526     /**
   568      * read writingbox appearance info.
   527      * read writingbox appearance info.
   569      * 
   528      * 
   570      * @since S60 v5.0
   529      * @since Symbian TB9.2
   571      * @param aResId resource id.
   530      * @param aResId resource id.
   572      * @return None
   531      * @return None
   573      */    
   532      */    
   574     void ReadWritingBoxInfoL( TInt aResId );
   533     void ReadWritingBoxInfoL( TInt aResId );
   575 
       
   576     /**
       
   577      * update feedback state of all virtual keys 
       
   578      * 
       
   579      * @since S60 v5.0
       
   580      * @param aType char range id
       
   581      * @return None
       
   582      */
       
   583     void UpdateAllVirtualKeysFeedback( TInt aType );
       
   584     
   534     
   585 	/**
   535 	/**
   586 	 * Calcaulate the postion of guideline
   536 	 * Calcaulate the postion of guideline
   587 	 * @since S60 v5.0
   537 	 * @since Symbian TB9.2
   588 	 * @return None
   538 	 * @return None
   589 	 */
   539 	 */
   590     void CalculateGuideLinePos();
   540     void CalculateGuideLinePos();
   591 	
   541 	
   592 	/**
   542 	/**
   593 	 * Draw the guideline
   543 	 * Draw the guideline
   594 	 * @since S60 v5.0
   544 	 * @since Symbian TB9.2
   595 	 * @return None
   545 	 * @return None
   596 	 */
   546 	 */
   597     void DrawGuideLine();
   547     void DrawGuideLine();
   598     
   548     
   599 private: // datas
   549 private: // datas
   679     /**
   629     /**
   680      * Symbol table control.
   630      * Symbol table control.
   681      * Not own.
   631      * Not own.
   682      */     
   632      */     
   683     CPeninputArabicFingerHwrSymbolTable* iSymbolTable;
   633     CPeninputArabicFingerHwrSymbolTable* iSymbolTable;
   684 	
       
   685     /**
       
   686      * Ime selection list control.
       
   687      * Not own.
       
   688      */     
       
   689     CPeninputLayoutInputmodelChoice* iInputModeSwitch;
       
   690     
   634     
   691     /**
   635     /**
   692      * L&F manager.
   636      * L&F manager.
   693      * Own.
   637      * Own.
   694      */
   638      */
   696 
   640 
   697     /**
   641     /**
   698      * First time construct flag
   642      * First time construct flag
   699      */
   643      */
   700     TBool iFirstTimeConstruct;
   644     TBool iFirstTimeConstruct;
   701     
   645 
   702     /**
       
   703      * Current char range id, including SCT.
       
   704      */
       
   705     TInt iCurCharRange;
       
   706     
       
   707     /**
       
   708      * Current char range id, without SCT.
       
   709      */
       
   710     TInt iCurCharRangeNoSct;
       
   711     
       
   712     /**
   646     /**
   713      * bit mask of permitted char ranges.
   647      * bit mask of permitted char ranges.
   714      */
   648      */
   715     TInt iPermittedRanges;
   649     TInt iPermittedRanges;
   716 	
   650