diff -r 000000000000 -r 15bf7259bb7c uiacceltk/hitchcock/Client/src/alfevent.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiacceltk/hitchcock/Client/src/alfevent.cpp Tue Feb 02 07:56:43 2010 +0200 @@ -0,0 +1,300 @@ +/* +* 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: Event class. +* +*/ + + + +#include "alf/alfevent.h" +#include "alf/alfvisual.h" +#include + +#include + +// ======== MEMBER FUNCTIONS ======== + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +TAlfEvent::TAlfEvent(CAlfDisplay& aDisplay, TType aType) + : iDisplay(&aDisplay), + iCode( EEventNull ), + iParam(KErrNotFound), + iType(aType), + iVisual( NULL ) + + { + } + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TAlfEvent(TInt aCustomParam) + : iDisplay(NULL), + iCode( EEventNull ), + iParam(aCustomParam), + iCustomEventData(0), + iType(ETypeCustom), + iVisual( NULL ) + { + } + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TAlfEvent(TInt aCustomParam, TInt aCustomEventData) + : iDisplay(NULL), + iCode( EEventNull ), + iParam(aCustomParam), + iCustomEventData(aCustomEventData), + iType(ETypeCustom), + iVisual( NULL ) + { + } + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TAlfEvent( + CAlfDisplay& aDisplay, + const TAlfScrollerEvent& aEvent ) + : iDisplay(&aDisplay), + iCode( EEventNull ), + iScrollerEvent(aEvent), + iParam(0), + iCustomEventData(0), + iType(ETypeScroller), + iVisual( NULL ) + { + } + + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TAlfEvent( + CAlfDisplay& aDisplay, const TKeyEvent& aKeyEvent, TEventCode aType) + : iDisplay(&aDisplay), + iCode(aType), + iKeyEvent(aKeyEvent), + iParam(KErrNotFound), + iType(ETypeKey), + iVisual( NULL ) + { + } + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TAlfEvent( CAlfDisplay& aDisplay, + const TPointerEvent& aPointerEvent ) + : iDisplay(&aDisplay), + iCode( EEventNull ), + /*iPointerEvent(*aPointerEvent.AdvancedPointerEvent()),*/ + iParam( KErrNotFound ), + iType(ETypePointer), + iVisual( NULL ) + { + if ( aPointerEvent.iModifiers &EModifierAdvancedPointerEvent ) + { + iPointerEvent = *aPointerEvent.AdvancedPointerEvent(); + } + else + { + iPointerEvent.iType=aPointerEvent.iType; + iPointerEvent.iPosition=aPointerEvent.iPosition; + iPointerEvent.iParentPosition=aPointerEvent.iParentPosition; + } + } + +// --------------------------------------------------------------------------- +// Is pointer event? +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::IsPointerEvent() const + { + return iType == ETypePointer; + } + +// --------------------------------------------------------------------------- +// Returns pointer event +// --------------------------------------------------------------------------- +// +EXPORT_C const TPointerEvent& TAlfEvent::PointerEvent() const + { + __ASSERT_ALWAYS( IsPointerEvent(), USER_INVARIANT() ); + return iPointerEvent; + } + +// --------------------------------------------------------------------------- +// Returns event type. +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfEvent::TType TAlfEvent::Type() const + { + return iType; + } + +// --------------------------------------------------------------------------- +// Is custom event? +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::IsCustomEvent() const + { + return iType == ETypeCustom; + } + +// --------------------------------------------------------------------------- +// Is it a scroller input event? +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::IsScrollerEvent() const + { + return iType == ETypeScroller; + } + +// --------------------------------------------------------------------------- +// Returns scroller event +// --------------------------------------------------------------------------- +// +EXPORT_C TAlfScrollerEvent TAlfEvent::ScrollerEvent() const + { + __ASSERT_ALWAYS( IsScrollerEvent(), USER_INVARIANT() ); + TAlfScrollerEvent scrollerEvent = iScrollerEvent; + return scrollerEvent; + } + +// --------------------------------------------------------------------------- +// Is key event? +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::IsKeyEvent() const + { + return iType == ETypeKey; + } + +// --------------------------------------------------------------------------- +// Return key event code. +// --------------------------------------------------------------------------- +// +EXPORT_C const TEventCode& TAlfEvent::Code() const + { + __ASSERT_ALWAYS( IsKeyEvent(), USER_INVARIANT() ); + return iCode; + } + +// --------------------------------------------------------------------------- +// Return key event. +// --------------------------------------------------------------------------- +// +EXPORT_C const TKeyEvent& TAlfEvent::KeyEvent() const + { + __ASSERT_ALWAYS( IsKeyEvent(), USER_INVARIANT() ); + return iKeyEvent; + } + +// --------------------------------------------------------------------------- +// Return custom event parameter +// --------------------------------------------------------------------------- +// +EXPORT_C TInt TAlfEvent::CustomParameter() const + { + __ASSERT_ALWAYS( IsCustomEvent(), USER_INVARIANT() ); + return iParam; + } + +// --------------------------------------------------------------------------- +// Return custom event data +// --------------------------------------------------------------------------- +// +EXPORT_C TInt TAlfEvent::CustomEventData() const + { + __ASSERT_ALWAYS( IsCustomEvent(), USER_INVARIANT() ); + return iCustomEventData; + } + +// --------------------------------------------------------------------------- +// Sets display +// --------------------------------------------------------------------------- +// +void TAlfEvent::SetDisplay( CAlfDisplay* aDisplay ) + { + iDisplay = aDisplay; + } + +// --------------------------------------------------------------------------- +// Returns display or NULL +// --------------------------------------------------------------------------- +// +EXPORT_C CAlfDisplay* TAlfEvent::Display( ) const + { + return iDisplay; + } + +// --------------------------------------------------------------------------- +// Check if the event is pointer down event. +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::PointerDown() const + { + return iType == ETypePointer && + iPointerEvent.iType == TPointerEvent::EButton1Down; + } + +// --------------------------------------------------------------------------- +// Check if the event is pointer up event. +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::PointerUp() const + { + return iType == ETypePointer && + iPointerEvent.iType == TPointerEvent::EButton1Up; + } + +// --------------------------------------------------------------------------- +// Check if the event is long pointer event. +// --------------------------------------------------------------------------- +// +EXPORT_C TBool TAlfEvent::PointerLongTap() const + { + return iType == ETypePointer && + iPointerEvent.iType == TPointerEvent::EButtonRepeat; + } + +// --------------------------------------------------------------------------- +// Sets the associated visual +// --------------------------------------------------------------------------- +// +EXPORT_C void TAlfEvent::SetVisual(CAlfVisual* aVisual) + { + iVisual = aVisual; + } + +// --------------------------------------------------------------------------- +// Returns the visual +// --------------------------------------------------------------------------- +// +EXPORT_C CAlfVisual* TAlfEvent::Visual() const + { + return iVisual; + } + +