phoneuis/dialer/inc/cdialer.h
branchRCL_3
changeset 6 38529f706030
parent 3 8871b09be73b
child 7 544e34b3255a
equal deleted inserted replaced
5:2a26698d78ba 6:38529f706030
    23 //  INCLUDES
    23 //  INCLUDES
    24 #include <coecntrl.h>
    24 #include <coecntrl.h>
    25 #include <coemain.h>
    25 #include <coemain.h>
    26 
    26 
    27 #include "mnumberentry.h"
    27 #include "mnumberentry.h"
       
    28 #include "mphoneqwertymodeobserver.h"
    28 
    29 
    29 // CONSTANTS
    30 // CONSTANTS
    30 
    31 
    31 // FORWARD DECLARATIONS
    32 // FORWARD DECLARATIONS
    32 class CEikButtonGroupContainer;
    33 class CEikButtonGroupContainer;
   116     iDialer->RemoveNumberEntry( );
   117     iDialer->RemoveNumberEntry( );
   117     // Delete dialer
   118     // Delete dialer
   118     delete dialer;
   119     delete dialer;
   119 *
   120 *
   120 */
   121 */
   121 NONSHARABLE_CLASS(CDialer) : public CCoeControl, public MNumberEntry, public MCoeControlObserver // easy dialing change
   122 NONSHARABLE_CLASS(CDialer) : 
       
   123 	public CCoeControl, 
       
   124 	public MNumberEntry, 
       
   125 	public MCoeControlObserver,
       
   126 	public MPhoneQwertyModeObserver
   122     {
   127     {
   123     public:  // Constructors and destructor
   128     public:  // Constructors and destructor
   124 
   129 
   125         /**
   130         /**
   126         * Two phase constructor
   131         * Two phase constructor
   175          * Toolbar of the easydialing layout is owned by the Dialer.
   180          * Toolbar of the easydialing layout is owned by the Dialer.
   176          * Calling this methods updates status of its buttons.
   181          * Calling this methods updates status of its buttons.
   177          */
   182          */
   178         IMPORT_C void UpdateToolbar();
   183         IMPORT_C void UpdateToolbar();
   179         
   184         
       
   185         /**
       
   186          * Updates number entry editor to correct state. State depends on
       
   187          * qwerty availability and easydialing and voip settings. 
       
   188          */
       
   189         void UpdateNumberEntryConfiguration();
       
   190         
       
   191 		
       
   192 		/**
       
   193 		 * Relayout and draw control. Also updates toolbar.
       
   194 		 */
       
   195 		IMPORT_C void RelayoutAndDraw();
       
   196 
   180     public: // from MNumberEntry 
   197     public: // from MNumberEntry 
   181 
   198 
   182         /**
   199         /**
   183         * Sets number entry active.
   200         * Sets number entry active.
   184         */
   201         */
   253         * Enable or disable tactile feedback. 
   270         * Enable or disable tactile feedback. 
   254         * @param aEnable.
   271         * @param aEnable.
   255         */             
   272         */             
   256         void EnableTactileFeedback( const TBool aEnable );
   273         void EnableTactileFeedback( const TBool aEnable );
   257 
   274 
       
   275         /**
       
   276         * Handle Qwerty mode change.
       
   277         * @param aMode 0 = off, 1 = on
       
   278         */
       
   279         IMPORT_C void HandleQwertyModeChange( TInt aMode );
       
   280 
       
   281         /**
       
   282         * @see MIdleQwertyModeObserver.
       
   283         */
       
   284         IMPORT_C void HandleKeyboardLayoutChange();
       
   285 
   258     private: // Functions from MCoeControlObserver
   286     private: // Functions from MCoeControlObserver
   259         
   287         
   260         void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
   288         void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
   261         
   289         
   262     private:  // Functions from CCoeControl
   290     private:  // Functions from CCoeControl
   347         
   375         
   348         /**
   376         /**
   349          * Returns edwin state
   377          * Returns edwin state
   350          * @return Pointer to CAknEdwinState
   378          * @return Pointer to CAknEdwinState
   351          */
   379          */
   352         CAknEdwinState* EdwinState();
   380         CAknEdwinState* EdwinState() const;
   353         
   381         
       
   382         /** Editor types. */
       
   383         enum TEditorType
       
   384             {
       
   385             ENumericEditor,
       
   386             EAlphanumericEditor,
       
   387             EVirtualKeyboardEditor
       
   388             };
       
   389                 
   354         /**
   390         /**
   355          * Updates editor flags for virtual
   391          * Updates editor flags for virtual
   356          * keyboard.
   392          * keyboard.
   357          */
   393          */
   358         void UpdateVkbEditorFlagsL();
   394         void UpdateEdwinState( TEditorType aType );
   359 
   395 
   360         /**
   396         /**
   361          * Loads easydialing plugin. If loading fails (for instance when
   397          * Loads easydialing plugin. If loading fails (for instance when
   362          * easydialing feature flag is not enabled in the device),
   398          * easydialing feature flag is not enabled in the device),
   363          * iEasyDialer will be NULL after this function returns.
   399          * iEasyDialer will be NULL after this function returns.
   374         /**
   410         /**
   375          * Layout number entry component. The used layout depends on
   411          * Layout number entry component. The used layout depends on
   376          * the availability and state of Easy dialing. 
   412          * the availability and state of Easy dialing. 
   377          */
   413          */
   378         void LayoutNumberEntry( const TRect& aParent, TInt aVariety );
   414         void LayoutNumberEntry( const TRect& aParent, TInt aVariety );
   379         
   415                 
   380     private:    // Data
   416     private:    // Data
   381           
   417           
   382         // Keypad container  - owned
   418         // Keypad container  - owned
   383         CDialerKeyPadContainer* iKeypadArea;
   419         CDialerKeyPadContainer* iKeypadArea;
   384              
   420              
   419         /**
   455         /**
   420          * Controller rules the mode of the Dialer (e.g. normal, DTMF, restricted...)
   456          * Controller rules the mode of the Dialer (e.g. normal, DTMF, restricted...)
   421          * Not owned.
   457          * Not owned.
   422          */
   458          */
   423         MPhoneDialerController* iController;
   459         MPhoneDialerController* iController;
       
   460         
       
   461         /*
       
   462          * Is qwerty mode on.
       
   463          */
       
   464         TBool iQwertyMode;
   424     };
   465     };
   425 
   466 
   426 #endif      // CDIALER_H
   467 #endif      // CDIALER_H
   427 
   468 
   428 // End of File
   469 // End of File