diff -r 514d98f21c43 -r 4ea6f81c838a inc/alf/alfrecyclinggridelement.h --- a/inc/alf/alfrecyclinggridelement.h Mon Jun 21 16:15:51 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,249 +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: The implementation for presentation elements. -* -*/ - - -#ifndef ALF_RECYCLINGGRIDELEMENT_H -#define ALF_RECYCLINGGRIDELEMENT_H - - -//INCLUDES -#include // TPoint -#include -#include "alf/alfelement.h" -#include - -class CAlfControl; - - -namespace Alf - { -class CAlfWidgetControl; -class AlfRecyclingGridElementImpl; - -namespace alfrecyclinggridelement - { -static const IfId Ident= - { - 0,"alfrecyclinggridelement" - }; - } - -/** @class AlfRecyclingGridElement alfrecyclinggridelement.h "alf/alfrecyclinggridelement.h" - * The implementation of a generic element with a functionality - * for recyclign the created visual trees. This is commonly used - * in scrolling list-like components, where only few of the items - * are visible at the same time. Scrolling is supported in both - * dimensions (rows / columns). - * - * @interfaces IAlfElement - * @lib alfwidgetmodel.lib - * @since S60 ?S60_version - * @status Draft - */ -class AlfRecyclingGridElement : public AlfElement, public IAlfWidgetEventHandler - { -public: - static inline const IfId& type() - { - return alfrecyclinggridelement::Ident; - } - /** - * Enumerations of the Fill Style - */ - OSN_IMPORT enum FillStyle{EColumnsFirst, ERowsFirst}; - - - - /** - * Constructor. - * @exception std::bad_alloc - * @param aControl - Widget Control - * @param aName - Name of the Recycling grid element - * @param aNumColumns - Number of Columns - * @param aNumRows - Number of Rows - * @since S60 ?S60_version - * @return New object. The widgets are owned by Alfred. The objects is pushed on to the cleanup stack - */ - OSN_IMPORT AlfRecyclingGridElement(CAlfWidgetControl& aControl, const char* aName, int aNumColumns, int aNumRows); - - - /** Class Destructor estructor. - * - * @since S60 ?S60_version - */ - OSN_IMPORT virtual ~AlfRecyclingGridElement(); - - /** - * Constructor. - * @param aFillStyle - style to be used to fill the grid - * @param aFillStyleParam - - * @since S60 ?S60_version - * @return New object. The widgets are owned by Alfred. The objects is pushed on to the cleanup stack - */ - OSN_IMPORT void setFillStyle(FillStyle aFillStyle, int aFillStyleParam); - /* - * Sets the animation times for diferent visual changes - * @param aScrollingTime - animation time while scrolling - * @param aFadeInTime - amination time for fading in - * @param aFadeinDelay - a delay time after which fade in starts - * @param aFadeOutTime - animation time for fading out - * @param aFadeOutDelay - a delay time after which fade out will start - */ - - OSN_IMPORT void setAnimationTimes( int aScrollingTime, - int aFadeInTime, int aFadeInDelay, - int aFadeOutTime, int aFadeOutDelay ); - - /** - * Creates a visual tree with the data given for visuals. - * - * @exception std::bad_alloc - * @exception osncore::AlfVisualException Thrown with the error code osncore::ECanNotCreateVisual\n - * when creation of visual fails. - * @exception osncore::AlfVisualException Thrown with the error code osncore::EInvalidElement\n - * when wrond data id is supplied. - * @exception std::bad_alloc - * @since S60 ?S60_version - * @param aData Data for visual tree to be created - * @param aDataID Parent visual tree's data id - * @param aParentLayout Parent layout to which newly created visual tree will be added - * @param aLayoutIndex Position in parent layout at which new visual tree will be added - */ - - OSN_IMPORT virtual CAlfVisual* createVisualTree( - IAlfVariantType& aData, uint aDataID, - CAlfLayout* aParentLayout, int aLayoutIndex ); - - //Implementation of 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 ETrue if the event can be processed. Otherwise EFalse. - */ - OSN_IMPORT virtual bool accept( CAlfWidgetControl& aControl, const TAlfEvent& aEvent ) const; - - /** - * 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. - */ - OSN_IMPORT AlfEventStatus offerEvent( CAlfWidgetControl& aControl,const TAlfEvent& aEvent ); - - /** - * @see MAlfWidgetEventHandler - */ - OSN_IMPORT void setActiveStates( unsigned int aStates ); - - /** - * Sets AlfWidgetEventHandlerInitData to event handler. - * - * @param aData A data structure which contains for example id of the event - * handler. - */ - OSN_IMPORT void setEventHandlerData( const AlfWidgetEventHandlerInitData& aData ); - - /** - * Returns AlfWidgetEventHandlerInitData. - * - * @return A pointer to AlfWidgetEventHandlerInitData structure which contains - * for example id of the event handler. - */ - OSN_IMPORT AlfWidgetEventHandlerInitData* eventHandlerData(); - - /** - * Returns the type of EventHandler. - * @see IAlfWidgetEventHandler::AlfEventHandlerType - * - * @return The type of event handler. - */ - IAlfWidgetEventHandler::AlfEventHandlerType eventHandlerType(); - - /** - * 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. - */ - IAlfWidgetEventHandler::AlfEventHandlerExecutionPhase eventExecutionPhase(); - - /** - * From @see MAlfInterfaceBase. - * @since S60 ?S60_version - * @param aType The type of interface requested. - * @return Returns the new Interface - */ - OSN_IMPORT virtual IAlfInterfaceBase* makeInterface( const IfId& aType ); - - - /** - * Creates a visual tree with the data given for visuals. - * - * @exception std::bad_alloc - * @exception osncore::AlfVisualException Thrown with the error code osncore::ECanNotCreateVisual\n - * when creation of visual fails. - * @exception osncore::AlfVisualException Thrown with the error code osncore::EInvalidElement\n - * when wrond data id is supplied. - * @exception std::bad_alloc - * @since S60 ?S60_version - * @param aData Data for visual tree to be created - * @param aDataID Parent visual tree's data id - * @param aParentLayout Parent layout to which newly created visual tree will be added - * @param aLayoutIndex Position in parent layout at which new visual tree will be added - */ - OSN_IMPORT virtual void createChildVisualTree( IAlfElement* aElement, - IAlfVariantType& aChildData, - IAlfBranch& aData, - int aIndex, uint aDataID ); - /** - * Removes visual tree from given element. - * - * @since S60 ?S60_version - * @param aElement Element from which visual tree is to be removed - * @param aData - * @param aIndex - * @param aDataID - */ - OSN_IMPORT virtual void removeChildVisualTree( IAlfElement* aElement, IAlfBranch& aData, int aIndex, uint aDataID ); - - /** - * removes and destroys all the visuals. - * - * @param aTimeMilliseconds animation time for remove. - */ - OSN_IMPORT void removeAndDestroyVisuals( int aTimeMilliseconds ); - -private: - friend class AlfRecyclingGridElementImpl; - auto_ptr mImpl; - }; - - } // namespace - -#endif // ALF_RECYCLINGGRIDELEMENT_H