mmuifw_plat/alf_widgetmodel_api/inc/alf/ialfwidgeteventhandler.h
changeset 17 3eca7e70b1b8
parent 3 4526337fb576
--- a/mmuifw_plat/alf_widgetmodel_api/inc/alf/ialfwidgeteventhandler.h	Tue Feb 02 00:28:09 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,220 +0,0 @@
-/*
-* Copyright (c) 2007 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:   Widget control event handler interface.
-*
-*/
-
-
-#ifndef I_ALFWIDGETEVENTHANDLER_H
-#define I_ALFWIDGETEVENTHANDLER_H
-
-#include <alf/ialfinterfacebase.h>
-#include <alf/alftypes.h>
-
-
-class TAlfEvent;
-
-namespace duiuimodel
-    {
-class DuiNode;
-    }
-using namespace duiuimodel;
-
-namespace Alf
-    {
-//FORWARD DECLARATIONS
-class CAlfWidgetControl;
-class AlfCustomInitDataBase; 
-struct AlfWidgetEventHandlerInitData; 
-
-
-namespace alfwidgeteventhandler
-    {
-static const IfId ident =
-    {
-    0, "alfwidgeteventhandler"
-    };
-    }
-    
-/**
- *  The interface for event handlers used by
- *  widget controls. The event handlers are
- *  used for handling any Alfred events, including
- *  key events, pointer events and custom events.
- *  Interfaces provided by the event handlers can
- *  be accessed using IAlfInterfaceBase::MakeInterface().
- *
- *  @lib alfwidgetmodel.lib
- *  @since S60 ?S60_version
- *  @status Draft
- */
-class IAlfWidgetEventHandler : public IAlfInterfaceBase
-    {
-public:
-    enum AlfEventHandlerType
-        {
-        /**
-         * Presentation related event handlers. These will be deleted when the 
-         * presentation is destroyed.
-         * @see: IAlfWigetControl::destroyPresentation
-         * @see: IAlfWiget::setPresentation
-         */ 
-        EPresentationEventHandler,
-        /**
-         * Logical event handlers. These event handlers are not presentation related and
-         * will not be destroyed during the destruction of the presentation.
-         */
-        ELogicalEventHandler,   
-        };
-    
-    /**
-     * Phase in which event handlers are executed.
-     */
-    enum AlfEventHandlerExecutionPhase
-        {
-        /**
-         * Tunneling event handlers are executed only in the tunnelling phase of the 
-         * event handling cycle. Tunnelling event handlers are executed before
-         * IAlfWidgetControl::HandleEvent is executed.
-         * @see IAlfWidgetControl::HandleEvent
-         */ 
-        ETunnellingPhaseEventHandler,
-    
-        /**
-         * Bubbling event handlers are executed only in the bubbling phase of the 
-         * event handling cycle. Bubbling event handlers are executed after
-         * IAlfWidgetControl::HandleEvent is executed.
-         * @see IAlfWidgetControl::HandleEvent
-         */ 
-        EBubblingPhaseEventHandler,     
-    
-        /**
-         * These event handlers are executed both in the tunneling and bubbling phase 
-         * of the event handling cycle i.e both before and after IAlfWidgetControl::HandleEvent
-         * is executed.
-         * @see IAlfWidgetControl::HandleEvent
-         */ 
-        ETunnellingAndBubblingPhaseEventHandler,        
-        };
-        
-    static inline const IfId& type()
-        {
-        return alfwidgeteventhandler::ident;
-        }
-
-    virtual inline ~IAlfWidgetEventHandler() {}
-
-    /**
-     * Used to identify event handlers that are capable of handling
-     * a specified key or custom event. Pointer event handlers cannot be
-     * identified directly, since they are dependent on the presentation.
-     * Therefore, pointer event handlers should be associated with
-     * a custom event ID that can be used to simulate the actual pointer event.
-     *
-     * @since S60 ?S60_version
-     * @param aEvent The event.
-     * @return <code>ETrue</code> if the event can be processed. Otherwise <code>EFalse</code>.
-     */
-    virtual bool accept( CAlfWidgetControl& aControl, const TAlfEvent& aEvent ) const = 0;
-
-    /**
-     * Called when an input event is being offered to this event handler.
-     * The return value is used to indicate if the event was processed.
-     * Processed events may not be offered to other event handlers.
-     *
-     * @since S60 ?S60_version
-     * @param aControl The parent control of this event handler.
-     * @param aEvent The event.
-     * @return Result of event processing. See AlfEventStatus.
-     */
-    virtual AlfEventStatus offerEvent( CAlfWidgetControl& aControl,const TAlfEvent& aEvent) = 0;
-
-    /**
-     * Defines the widget states, where the event handler is active.
-     * By default, if this method is not called, the event handler is expected
-     * to be active in all states.
-     *
-     * @param aStates A bitmask defining the widget states, where the event
-     * handler is active. The low 16 bits are reserved for the states
-     * defined by the framework in . The high 16 bits are
-     * available for states defined by the client code.
-     */
-    virtual void setActiveStates( unsigned int aStates ) = 0;
-    
-    /**
-     * Sets AlfWidgetEventHandlerInitData to event handler.
-     *
-     * @param aData A data structure which contains for example id of the event
-     * handler.
-     */
-    virtual void setEventHandlerData( const AlfWidgetEventHandlerInitData& aData ) = 0;
-    
-    /**
-     * Returns AlfWidgetEventHandlerInitData.
-     *
-     * @return  A pointer to AlfWidgetEventHandlerInitData structure which contains
-     * for example id of the event handler.
-     */
-    virtual AlfWidgetEventHandlerInitData* eventHandlerData() = 0;
-
-    /**
-     * Returns the type of EventHandler. 
-     * @see IAlfWidgetEventHandler::AlfEventHandlerType
-     *
-     * @return The type of event handler.
-     */
-    virtual AlfEventHandlerType eventHandlerType() = 0;
-
-    /**
-     * Returns information about the phase in the event handling cycle in
-     * which the event hadler will be executed.
-     * @see IAlfWidgetEventHandler::AlfEventHandlerExecutionPhase
-     *
-     * @return Event handler execution phase.
-     */
-    virtual AlfEventHandlerExecutionPhase eventExecutionPhase() = 0;
-    };
-
-/**
- * Placeholder for information required to instantiate an event handler
- * via the widget factory mechanism.
- * A pointer to this structure is casted to a void pointer and sent to the
- * factory plugin.
- * @lib alfwidgetmodel.lib
- * @since S60 ?S60_version
- */
-struct AlfWidgetEventHandlerInitData
-    {
-    /**
-     * Event handler instance ID.This uniquely identifies every event handler instance.
-     */
-    char* mWidgetEventHandlerId;
-    
-    /**
-     * Pointer to node in declaration containing information for the widget.
-     */
-    DuiNode* mNode;
-
-    /**
-     * Pointer to custom data passed via factory mechanism
-     * Not Owned.
-     */
-    AlfCustomInitDataBase* mCustomData;  
-    };
-
-    } // namespace Alf
-
-#endif // I_ALFWIDGETEVENTHANDLER_H
-
-// End of File