--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuivoipextension/inc/cphonetransferdialercontroller.h Mon Jan 18 20:18:27 2010 +0200
@@ -0,0 +1,139 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+* Unattended transfer dialer customization
+* controller
+*
+*/
+
+
+#ifndef CPHONETRANSFERDIALERCONTROLLER_H_
+#define CPHONETRANSFERDIALERCONTROLLER_H_
+
+// INCLUDES
+#include <aknbutton.h>
+#include "mphonedialercontroller.h"
+
+// FORWARD DECLARATIONS
+class CAknToolbar;
+
+/**
+* VoIP unattended transfer dialer customization
+*/
+NONSHARABLE_CLASS( CPhoneTransferDialerController ): public CBase,
+ public MPhoneDialerController
+ {
+ public:
+
+ static CPhoneTransferDialerController* NewL();
+
+ /**
+ * Destructor.
+ */
+ virtual ~CPhoneTransferDialerController();
+
+ public: // From MDialerController
+
+
+ /**
+ * Initializes the controller.
+ * @param aToolbar CAknToolbar instance.
+ * @since S60 v5.1
+ */
+ void InitializeL( CAknToolbar& aToolbar );
+
+ /**
+ * Returns Cba resource id
+ * @return Resource Id of the softkeys
+ * @since S60 v5.1
+ */
+ TInt CbaResourceId() const;
+
+ /**
+ * Returns Menu resource id
+ * @return Id of the menu resource
+ * @since S60 v5.1
+ */
+ TInt MenuResourceId() const;
+
+ /**
+ * Returns number entry prompt text
+ * @return Reference to text to be shown on number entry
+ * @since S60 v5.1
+ */
+ const TDesC& NumberEntryPromptTextL();
+
+ /**
+ * Handles the number entry empty event
+ * @param aEmpty ETrue if numberentry is empty
+ * @since S60 v5.1
+ */
+ void HandleNumberEntryIsEmpty( TBool aEmpty );
+
+ /**
+ * Sets visibility of buttons created by the implementation
+ * @param aShow ETrue if numberentry is empty
+ * @since S60 v5.1
+ */
+ void ShowButtons( TBool aShow );
+
+ private:
+
+ /**
+ * Creates instance of CAKnButton
+ * @param aNormalIconId Button normal icon id
+ * @param aNormalMaskId Mask id
+ * @param aTooltipText Reference to tooltip text
+ * @param aSkinIconId Skin icon id
+ * @return Pointer to created button instance
+ */
+ CAknButton* CreateButtonLC( TInt aNormalIconId,
+ TInt aNormalMaskId,
+ const TDesC& aTooltipText,
+ const TAknsItemID& aSkinIconId ) const;
+
+ /**
+ * Returns tool tip for specific command
+ * @param aCommandId Command id which the tooltip text
+ * is needed
+ * @return Pointer to descriptor containing tooltip text
+ */
+ HBufC* GetTooltipTextL( TInt aCommandId ) const;
+
+ TAknsItemID SkinId( TInt aIconIndex ) const;
+
+ protected:
+
+ /**
+ * By default EPOC constructor is private.
+ */
+ CPhoneTransferDialerController();
+
+ private: // Data
+
+ // Pointer to CAknToolbar, Not own
+ CAknToolbar* iToolbar;
+
+ // ETrue if number entry input field is empty
+ TBool iNumberEntryIsEmpty;
+
+ // Number entry prompt text ("Address:")
+ HBufC* iNumberEntryPromptText;
+
+ // ETrue if initialized
+ TBool iIsInitialized;
+
+ };
+
+#endif /*CPHONETRANSFERDIALERCONTROLLER_H_*/