--- a/usbengines/usbotgwatcher/src/cusbindicatornotifier.cpp Fri May 14 16:51:51 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,234 +0,0 @@
-/*
- * 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: Blink/show Usb indicator notifier implementation
- *
- */
-
-#include <AknSmallIndicator.h>
-#include <avkon.hrh>
-#include <usbuinotif.h>
-
-#include "cusbindicatornotifier.h"
-#include "cusbstate.h"
-#include "definitions.h"
-
-#include "debug.h"
-#include "panic.h"
-
-// ======== MEMBER FUNCTIONS ========
-
-// -----------------------------------------------------------------------------
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CUsbIndicatorNotifier* CUsbIndicatorNotifier::NewL(
- CUsbNotifManager& aNotifManager, CUsbOtgWatcher& aOtgWatcher)
- {
- LOG_FUNC
-
- CUsbIndicatorNotifier* self = new (ELeave) CUsbIndicatorNotifier(
- aNotifManager, aOtgWatcher);
- CleanupStack::PushL(self);
- self->ConstructL();
- CleanupStack::Pop(self);
- return self;
- }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CUsbIndicatorNotifier::~CUsbIndicatorNotifier()
- {
- LOG_FUNC
-
- Close();
-
- if (iOtgWatcher.VBusObserver())
- {
- TRAP_IGNORE(iOtgWatcher.VBusObserver()->UnsubscribeL(*this));
- }
-
- // Unsubscribe from otg watcher states change notifications
- TRAP_IGNORE(iOtgWatcher.UnsubscribeL(*this));
- }
-
-// ---------------------------------------------------------------------------
-// C++ constructor
-// ---------------------------------------------------------------------------
-//
-CUsbIndicatorNotifier::CUsbIndicatorNotifier(CUsbNotifManager& aNotifManager,
- CUsbOtgWatcher& aOtgWatcher) :
- CUsbNotifier(aNotifManager, KUsbUiNotifOtgIndicator, NULL), iOtgWatcher(
- aOtgWatcher)
- {
- LOG_FUNC
-
- //To be changed to EAknIndicatorStateAnimate and remove iIconBlinkingTimer
- //when AVKON implements animation form of usb indicator.
- iIndicatorState = EAknIndicatorStateOn;
- }
-
-// ---------------------------------------------------------------------------
-// Second-phase constructor
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::ConstructL()
- {
- LOG_FUNC
-
- // Subscribe for VBus change notifications
- iOtgWatcher.VBusObserver()->SubscribeL(*this);
-
- // Subscribe for otg watcher states change notifications
- iOtgWatcher.SubscribeL(*this);
-
- // check here for condition to set usb indicator
- SetIndicatorL();
- }
-
-// ---------------------------------------------------------------------------
-// Show/hide static icon of the indicator.
-// If the indicator is blinking, stop blinking it and show/hide the static
-// form of the indicator.
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::ShowStaticL(TBool aVisible)
- {
- LOG_FUNC
-
- LOG1("aVisible = %d" , aVisible);
-
- SetIndicatorStateL(aVisible
- ? EAknIndicatorStateOn
- : EAknIndicatorStateOff);
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::BlinkL()
- {
- LOG_FUNC
-
- SetIndicatorStateL( EAknIndicatorStateAnimate );
- }
-
-// ---------------------------------------------------------------------------
-// From base class CUsbNotifier
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::ShowL()
- {
- LOG_FUNC
-
- ShowStaticL(ETrue);
- }
-
-// ---------------------------------------------------------------------------
-// From CUsbNotifier
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::Close()
- {
- LOG_FUNC
-
- TRAP_IGNORE( ShowStaticL(EFalse) );
- }
-
-// ---------------------------------------------------------------------------
-// Set USB indicator On or Off
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::SetIndicatorStateL(const TInt aState)
- {
-
- LOG1( "USB indicator State = %d" , aState);
-
- CAknSmallIndicator* indicator = CAknSmallIndicator::NewLC(TUid::Uid(
- EAknIndicatorUSBConnection));
- indicator->SetIndicatorStateL(aState);
- CleanupStack::PopAndDestroy(indicator); //indicator
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::OtgWatcherStateChangedL(TUsbStateIds aState)
- {
- SetIndicatorL();
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::VBusDownL()
- {
- SetIndicatorL();
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::VBusUpL()
- {
- SetIndicatorL();
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::VBusObserverErrorL(TInt aError)
- {
- // do nothing
- }
-
-// ---------------------------------------------------------------------------
-//
-// ---------------------------------------------------------------------------
-//
-void CUsbIndicatorNotifier::SetIndicatorL()
- {
- if (!(iOtgWatcher.IsDeviceA()) || iOtgWatcher.CurrentHostState()->Id() == EUsbStateHostAPeripheral)
- {
- // if B or peripheral, than other party (usbwatcher) takes care of usb indicator
- // in combined usbwatcher (if role swap allowed) one class has to manage usb indicator
- return;
- }
-
- // if VBus Up and we are host -> show indicator
- if ((iOtgWatcher.VBusObserver()->VBus() == CUsbVBusObserver::EVBusUp)
- && (iOtgWatcher.CurrentHostState()->Id() == EUsbStateHostAHost))
- {
- ShowStaticL(ETrue);
- }
- // if VBus up and we are not host -> Blink indicator
- else if ((iOtgWatcher.VBusObserver()->VBus() == CUsbVBusObserver::EVBusUp)
- && (iOtgWatcher.CurrentHostState()->Id() != EUsbStateHostAHost))
- {
- BlinkL();
- }
- else
- // Otherwise do not show indicator
- {
- ShowStaticL(EFalse);
- }
- }
-
-// End of file