iptel_plat/cch_client_api/inc/cchuiobserver.h
branchRCL_3
changeset 22 d38647835c2e
parent 0 a4daefaec16c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/iptel_plat/cch_client_api/inc/cchuiobserver.h	Wed Sep 01 12:29:57 2010 +0100
@@ -0,0 +1,117 @@
+/*
+* Copyright (c) 2008-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:  Observer definition for CCH UI clients
+*
+*/
+
+
+#ifndef M_CCHUIOBSERVER_H
+#define M_CCHUIOBSERVER_H
+
+/**
+ *  CCH UI Observer declaration class.
+ *
+ *  This class defines observer implementation for the CCH UI
+ *  clients. Every client must derive this class in order to
+ *  be able to use services provided by CCH UI and to be able
+ *  to receive observer callbacks.
+ *  @code
+ *  inherit in header:
+ *  class CMyClass : public CBase, public MCchUiObserver
+ *  @endcode
+ *
+ *  @lib cch.lib
+ *  @since S60 5.0
+ */
+class MCchUiObserver
+    {
+public:
+
+    /**  Defines dialog types available through this API */
+    enum TCchUiDialogType
+    	{
+    	ECchUiDialogTypeNotSet,
+    	// For connecting note showing
+    	ECchUiDialogTypeConnecting,
+    	// For disconnecting note showing
+        ECchUiDialogTypeDisconnecting,
+        // For showing info note about invalid username/password.
+        // Will also automatically show username/password query after
+        // showing info note.
+        ECchUiDialogTypeUsernamePasswordFailed,
+        // For showing username/password query.
+    	ECchUiDialogTypeAuthenticationFailed,
+    	// For showing no connections defined query. When user inputs
+    	// username/password and accepts query, CCHUI will save them
+    	// and also will re-enable service.
+    	ECchUiDialogTypeNoConnectionDefined,    
+    	// For showing no connections available query. When user selects
+    	// new access point, CCHUI adds it to service´s SNAP and re-enables
+    	// service automatically.
+    	ECchUiDialogTypeNoConnectionAvailable,   
+    	// For showing confirmation query to change connection.
+    	// Will show automatically also change connection query if
+    	// confirmation query accepted by user.
+    	ECchUiDialogTypeConfirmChangeConnection,
+    	// For showing change connection query. When user selects
+    	// new access point, CCHUI add it to service´s SNAP and re-enables
+    	// service. CCHUI will also delete old access point from service´s
+    	// SNAP if access point is not used by other service(s).
+    	ECchUiDialogTypeChangeConnection,
+    	// For showing defective settings info note.
+    	ECchUiDialogTypeDefectiveSettings,
+    	// For showing error in connection info note.
+    	// Will show automatically also confirm change connection query
+    	// and confirmation query is accepted by user, change connection
+    	// query is showed also.
+    	ECchUiDialogTypeErrorInConnection
+    	};
+    	
+    /**  Defines operation results ie. indicates what have been done. 
+         Client can implement handling based on these on callback. */
+    enum TCchUiOperationResult
+    	{
+    	// Operation result not set
+    	ECchUiClientOperationResultNotSet,
+    	// User has cancelled query.
+    	ECchUiClientOperationResultUserCancelled,
+    	// Failure that prevents enabling service has happened.
+    	ECchUiClientOperationResultGeneralFailure,
+    	// CCHUI has added new access point to service´s SNAP.
+    	ECchUiClientOperationResultAccessPointAdded,
+    	// CCHUI has added new access point to service´s SNAP. 
+    	// CCHUI has also removed previously used access point from
+    	// service´s SNAP if it was not used by other service(s).
+    	ECchUiClientOperationResultConnectionChanged,
+    	// CCHUI has saved new username/password for service
+    	ECchUiClientOperationResultCredentialsChanged
+    	};
+        
+    /**
+     * Gets called when cchui has finished showing connectivity dialogs
+     * and possible connectivity related operations based on user
+     * actions in those dialogs. 
+     *
+     * @since S60 5.0
+     * @param aServiceId Service id.
+     * @param aServiceState Service state after cchui operations.
+     * @param aOperationResult Contains last cchui operation.
+     * @return None
+     */
+    virtual void ConnectivityDialogsCompletedL(
+        TInt aServiceId, 
+        TCchUiOperationResult aOperationResult ) = 0;
+    };
+
+#endif // M_CCHUIOBSERVER_H