1 /* |
1 /* |
2 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2008, 2009 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
21 #ifndef CPHONETRANSFERDIALERCONTROLLER_H_ |
21 #ifndef CPHONETRANSFERDIALERCONTROLLER_H_ |
22 #define CPHONETRANSFERDIALERCONTROLLER_H_ |
22 #define CPHONETRANSFERDIALERCONTROLLER_H_ |
23 |
23 |
24 // INCLUDES |
24 // INCLUDES |
25 #include <aknbutton.h> |
25 #include <aknbutton.h> |
26 #include "mphonedialercontroller.h" |
26 #include "cphonedialercontroller.h" |
27 |
27 |
28 // FORWARD DECLARATIONS |
28 // FORWARD DECLARATIONS |
29 class CAknToolbar; |
29 class CAknToolbar; |
30 |
30 |
31 /** |
31 /** |
32 * VoIP unattended transfer dialer customization |
32 * VoIP unattended transfer dialer customization |
33 */ |
33 */ |
34 NONSHARABLE_CLASS( CPhoneTransferDialerController ): public CBase, |
34 NONSHARABLE_CLASS( CPhoneTransferDialerController ): public CPhoneDialerController |
35 public MPhoneDialerController |
|
36 { |
35 { |
37 public: |
36 public: |
38 |
37 |
39 static CPhoneTransferDialerController* NewL(); |
38 static CPhoneTransferDialerController* NewL(); |
40 |
39 |
73 * @since S60 v5.1 |
64 * @since S60 v5.1 |
74 */ |
65 */ |
75 const TDesC& NumberEntryPromptTextL(); |
66 const TDesC& NumberEntryPromptTextL(); |
76 |
67 |
77 /** |
68 /** |
78 * Handles the number entry empty event |
69 * @see MPhoneDialerController |
79 * @param aEmpty ETrue if numberentry is empty |
70 */ |
80 * @since S60 v5.1 |
71 TInt GetButtonData( TButtonIndex aIndex, RPointerArray<CButtonData>& aData ) const; |
81 */ |
|
82 void HandleNumberEntryIsEmpty( TBool aEmpty ); |
|
83 |
72 |
84 /** |
73 /** |
85 * Sets visibility of buttons created by the implementation |
74 * @see MPhoneDialerController |
86 * @param aShow ETrue if numberentry is empty |
75 */ |
87 * @since S60 v5.1 |
76 TInt ButtonState( TButtonIndex aIndex ) const; |
88 */ |
77 |
89 void ShowButtons( TBool aShow ); |
78 /** |
|
79 * @see MPhoneDialerController |
|
80 */ |
|
81 TBool ButtonDimmed( TButtonIndex aIndex ) const; |
|
82 |
|
83 /** |
|
84 * @see MPhoneDialerController |
|
85 */ |
|
86 TBool EasyDialingAllowed() const; |
90 |
87 |
91 private: |
88 private: |
92 |
89 |
93 /** |
|
94 * Creates instance of CAKnButton |
|
95 * @param aNormalIconId Button normal icon id |
|
96 * @param aNormalMaskId Mask id |
|
97 * @param aTooltipText Reference to tooltip text |
|
98 * @param aSkinIconId Skin icon id |
|
99 * @return Pointer to created button instance |
|
100 */ |
|
101 CAknButton* CreateButtonLC( TInt aNormalIconId, |
|
102 TInt aNormalMaskId, |
|
103 const TDesC& aTooltipText, |
|
104 const TAknsItemID& aSkinIconId ) const; |
|
105 |
|
106 /** |
90 /** |
107 * Returns tool tip for specific command |
91 * Returns tool tip for specific command |
108 * @param aCommandId Command id which the tooltip text |
92 * @param aCommandId Command id which the tooltip text |
109 * is needed |
93 * is needed |
110 * @return Pointer to descriptor containing tooltip text |
94 * @return Pointer to descriptor containing tooltip text |
111 */ |
95 */ |
112 HBufC* GetTooltipTextL( TInt aCommandId ) const; |
96 HBufC* GetTooltipTextL( TInt aCommandId ) const; |
113 |
97 |
114 TAknsItemID SkinId( TInt aIconIndex ) const; |
98 TAknsItemID SkinId( TInt aIconIndex ) const; |
115 |
99 |
|
100 CButtonData* CreateButtonDataL( |
|
101 TInt aCommandId, |
|
102 TInt aNormalIconId, |
|
103 TInt aNormalMaskId ) const; |
116 protected: |
104 protected: |
117 |
105 |
118 /** |
106 /** |
119 * By default EPOC constructor is private. |
107 * By default EPOC constructor is private. |
120 */ |
108 */ |
121 CPhoneTransferDialerController(); |
109 CPhoneTransferDialerController(); |
122 |
110 |
123 private: // Data |
111 private: // Data |
124 |
112 |
125 // Pointer to CAknToolbar, Not own |
|
126 CAknToolbar* iToolbar; |
|
127 |
|
128 // ETrue if number entry input field is empty |
|
129 TBool iNumberEntryIsEmpty; |
|
130 |
|
131 // Number entry prompt text ("Address:") |
113 // Number entry prompt text ("Address:") |
132 HBufC* iNumberEntryPromptText; |
114 HBufC* iNumberEntryPromptText; |
133 |
|
134 // ETrue if initialized |
|
135 TBool iIsInitialized; |
|
136 |
115 |
137 }; |
116 }; |
138 |
117 |
139 #endif /*CPHONETRANSFERDIALERCONTROLLER_H_*/ |
118 #endif /*CPHONETRANSFERDIALERCONTROLLER_H_*/ |