diff -r 594d59766373 -r 7d48bed6ce0c cellular/telephonysettings/xqbindings/psetwrapper/src/psetcallwaitingwrapper_p.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cellular/telephonysettings/xqbindings/psetwrapper/src/psetcallwaitingwrapper_p.cpp Tue Aug 31 15:45:17 2010 +0300 @@ -0,0 +1,177 @@ +/* + * Copyright (c) 2009 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: + * + */ + +#include +#include +#include +#include "psetcallwaitingwrapper.h" +#include "psetcallwaitingwrapper_p.h" +#include "logging.h" + +/*! + ConvertToQtType + */ +PSetCallWaitingWrapper::PsCallWaitingStatus ConvertToQtType( + const MPsetCallWaiting::TGetCallWaitingStatus& status) +{ + PSetCallWaitingWrapper::PsCallWaitingStatus convertedType = + PSetCallWaitingWrapper::StatusUnknown; + + switch (status) { + case MPsetCallWaiting::EStatusActive: + convertedType = PSetCallWaitingWrapper::StatusActive; + break; + case MPsetCallWaiting::EStatusDisabled: + convertedType = PSetCallWaitingWrapper::StatusDisabled; + break; + case MPsetCallWaiting::EStatusNotAvailable: + convertedType = PSetCallWaitingWrapper::StatusNotAvailable; + break; + case MPsetCallWaiting::EStatusNotProvisioned: + convertedType = PSetCallWaitingWrapper::StatusNotProvisioned; + break; + case MPsetCallWaiting::EStatusUnknown: + convertedType = PSetCallWaitingWrapper::StatusUnknown; + break; + default: + Q_ASSERT_X(false, "switch default", "unknown enumerator"); + break; + } + + return convertedType; +} + +/*! + ConvertToQtType + */ +PSetCallWaitingWrapper::PsCallWaitingCommand ConvertToQtType( + const MPsetCallWaiting::TSetCallWaiting& callWaitingCommand) +{ + PSetCallWaitingWrapper::PsCallWaitingCommand convertedType = + PSetCallWaitingWrapper::ActivateCallWaiting; + + switch (callWaitingCommand) { + case MPsetCallWaiting::EActivateCallWaiting: + convertedType = PSetCallWaitingWrapper::ActivateCallWaiting; + break; + case MPsetCallWaiting::EDeactivateCallWaiting: + convertedType = PSetCallWaitingWrapper::DeactivateCallWaiting; + break; + default: + Q_ASSERT_X(false, "switch default", "unknown enumerator"); + break; + } + + return convertedType; +} + +/*! + PSetCallWaitingWrapperPrivate::PSetCallWaitingWrapperPrivate + */ +PSetCallWaitingWrapperPrivate::PSetCallWaitingWrapperPrivate( + PSetCallWaitingWrapper &owner ) : m_Owner(owner) +{ + DPRINT; +} + +/*! + PSetCallWaitingWrapperPrivate::~PSetCallWaitingWrapperPrivate + */ +PSetCallWaitingWrapperPrivate::~PSetCallWaitingWrapperPrivate() +{ + DPRINT; +} + +// -------- Observer interface --------- // +/*! + PSetCallWaitingWrapperPrivate::HandleCallWaitingGetStatusL + */ +void PSetCallWaitingWrapperPrivate::HandleCallWaitingGetStatusL( + const MPsetCallWaiting::TGetCallWaitingStatus aStatus, + TUint8 aBsc[KPSetNumberOfBsc] ) +{ + DPRINT << "aStatus:" << aStatus; + + QT_TRYCATCH_LEAVING( + QList basicServiceGroupIds; + int index = 0; + unsigned char groupIdCandidate = aBsc[index]; + while (groupIdCandidate != KPSetUnusedValue) { + basicServiceGroupIds << groupIdCandidate; + groupIdCandidate = aBsc[++index]; + } + + emit m_Owner.handleCallWaitingGetStatus( + ConvertToQtType(aStatus), basicServiceGroupIds ); + ) +} + +/*! + PSetCallWaitingWrapperPrivate::HandleCallWaitingChangedL + */ +void PSetCallWaitingWrapperPrivate::HandleCallWaitingChangedL( + const MPsetCallWaiting::TSetCallWaiting aSetting, + const int aResult ) +{ + DPRINT << "aSetting: " << aSetting + << "aResult" << aResult; + + QT_TRYCATCH_LEAVING( + emit m_Owner.handleCallWaitingChanged( + ConvertToQtType(aSetting), + static_cast(aResult) ); + ) +} + +/*! + PSetCallWaitingWrapperPrivate::HandleCWRequestingL + */ +void PSetCallWaitingWrapperPrivate::HandleCWRequestingL( TBool aOngoing, + TBool aInterrupted ) +{ + DPRINT << "aOngoing: " << aOngoing + << " aInterrupted: " << aInterrupted; + + QT_TRYCATCH_LEAVING( + emit m_Owner.handleCallWaitingRequesting( + static_cast(aOngoing), + static_cast(aInterrupted) ); + ) +} + +/*! + PSetCallWaitingWrapperPrivate::HandleCWErrorL + */ +void PSetCallWaitingWrapperPrivate::HandleCWErrorL( TInt aError ) +{ + DPRINT << "aError: " << aError; + + QT_TRYCATCH_LEAVING( + emit m_Owner.handleCallWaitingError( aError ); + ) +} + +/*! + PSetCallWaitingWrapperPrivate::SetEngineContact + */ +void PSetCallWaitingWrapperPrivate::SetEngineContact( + MPsetCallWaiting& aEngineContact ) +{ + DPRINT << "aEngineContact: " << &aEngineContact; +} + +// End of File.