diff -r 000000000000 -r 094583676ce7 wvuing/wvcommandutils/Src/CCACommandManager.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wvuing/wvcommandutils/Src/CCACommandManager.cpp Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,248 @@ +/* +* Copyright (c) 2006 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: Command Manager used for creating the commands +* +*/ + + + +// INCLUDE FILES + +#include "CCAAppSettCommand.h" +#include "CCACommandManager.h" +#include "CCALoginCmd.h" +#include "chatngclient.hrh" +#include "avkon.hrh" +#include "uikon.hrh" +#include "CCAContactEditCmd.h" + + + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewL +// ----------------------------------------------------------------------------- +// +CCACommandManager* CCACommandManager::NewL() + { + return new( ELeave ) CCACommandManager(); + } + +// ----------------------------------------------------------------------------- +// CCACommandManager::CCACommandManager +// Default Constructor +// ----------------------------------------------------------------------------- +// +CCACommandManager::CCACommandManager() + { + + } + + +// ----------------------------------------------------------------------------- +// CCACommandManager::CCACommandManager +// Default Constructor +// ----------------------------------------------------------------------------- +// +CCACommandManager::~CCACommandManager() + { + + } + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewCommandLC +// +// PLEASE NOTE VERY IMPT : THE CALLER OF THIS METHOD HAS TO DELETE THE COMMAND OBJECT. +// ----------------------------------------------------------------------------- +// +MCACommand* CCACommandManager::NewCommandLC( TInt aCommandId, + MCAProcessManager& aProcessManager, + MCAUiLoginCmdCB& aUiLoginCmdCB ) + { + MCACommand* command = NULL; + + switch ( aCommandId ) + { + + case EChatClientMainViewCmdLogin: + case EChatClientMainViewCmdLogout: + case EAknCmdExit: // fall-through, handled similarily + case EEikCmdExit: + case EAknSoftkeyExit: + case EChatClientCmdExit: + { + command = CCALoginCmd::NewLC( aProcessManager, + aUiLoginCmdCB, + *iSessionHandlerCmd ); + break; + } + + default: + { + break; + } + } + + return command; + } + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewCommandLC +// ----------------------------------------------------------------------------- + +MCASettingsCommand* CCACommandManager::NewCommandLC( TInt aCommandId, + MCAProcessManager& aProcessManager, + MCAUiSettingsDialogCmdCB& aUiCmdCB ) + { + MCASettingsCommand* command = NULL; + + switch ( aCommandId ) + { + + case EChatClientApplicationSettings: + { + command = CCAAppSettCommand::NewLC( aProcessManager, + aUiCmdCB ); + break; + } + + + default: + { + break; + } + } + + return command; + } + + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewCommandL +// ----------------------------------------------------------------------------- + +MCASettingsCommand* CCACommandManager::NewCommandL( TInt aCommandId, + MCAProcessManager& aProcessManager, + MCAUiSettingsDialogCmdCB& aUiCmdCB ) + { + MCASettingsCommand* command = NULL; + + switch ( aCommandId ) + { + + case EChatClientApplicationSettings: + { + command = CCAAppSettCommand::NewL( aProcessManager, + aUiCmdCB ); + break; + } + + + default: + { + break; + } + } + + return command; + } + +// ----------------------------------------------------------------------------- +// CCACommandManager::Initialize +// Initializes the session handler +// ----------------------------------------------------------------------------- +// +void CCACommandManager::Initialize( CCASessionHandlerCmd* aSessionHandlerCmd ) + { + iSessionHandlerCmd = aSessionHandlerCmd; + } + + +//added by saravana + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewCommandLC +// ----------------------------------------------------------------------------- + +MCACommand* CCACommandManager::NewCommandLC( TInt aCommandId, + MCAProcessManager& aProcessManager, + MCAUiContactEditCmdCB& aUiCmdCB ) + { + CCAContactEditCmd* command = NULL; + + switch ( aCommandId ) + { + + case EChatClientDetailsEdit: + { + command = CCAContactEditCmd::NewLC( aProcessManager, + aUiCmdCB ); + break; + } + + + default: + { + break; + } + } + + return command; + } + + + +// ----------------------------------------------------------------------------- +// CCACommandManager::NewCommandLC +// ----------------------------------------------------------------------------- + +MCACommand* CCACommandManager::NewCommandL( TInt aCommandId, + MCAProcessManager& aProcessManager, + MCAUiContactEditCmdCB& aUiCmdCB ) + { + CCAContactEditCmd* command = NULL; + + switch ( aCommandId ) + { + + case EChatClientDetailsEdit: + { + command = CCAContactEditCmd::NewL( aProcessManager, + aUiCmdCB ); + break; + } + + + default: + { + break; + } + } + + return command; + } + +// ----------------------------------------------------------------------------- +// CCACommandManager::GetSessionHandlerCmd +// ----------------------------------------------------------------------------- +// + +MCASessionHandlerCmd* CCACommandManager::GetSessionHandlerCmd() + { + return iSessionHandlerCmd; + } + + +// End of File