diff -r 000000000000 -r f72a12da539e idlehomescreen/nativeuicontroller/inc/ainativeuimodel.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/nativeuicontroller/inc/ainativeuimodel.h Thu Dec 17 08:40:49 2009 +0200 @@ -0,0 +1,103 @@ +/* +* Copyright (c) 2005-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: Common NativeUi definitions and utilities +* +*/ + + +#ifndef AINATIVEUIMODEL_H +#define AINATIVEUIMODEL_H + + +#include + +namespace AiNativeUiController +{ + +/** + * Common NativeUi definitions and utilities + * + * @since S60 3.2 + */ + +namespace AiNativeUiModel +{ + /// Internal identifier for navi pane + _LIT8( KNaviPaneId, "navipane" ); + + /// Constant for unassigned rendering priority value + const TInt KNoPriority = KErrNotFound; + + struct TRenderingPriorityItem; + +/** + * UI Control rendering priorities object. + */ +class TRenderingPriorities + { +public: + + /** + * Constructor for publishable items that need to be priorized. + * @param aRenderingPriorities Array of priorized items + * @aCount Number of items in the array + */ + TRenderingPriorities(const TRenderingPriorityItem* aRenderingPriorities, TInt aCount); + + /** + * Returns rendering priority for given ContentId. + */ + TInt RenderingPriority( TInt aContentId ); + + /** + * Gets next content id with priority < aNextPriority. + * + * @param[in,out] aContentId Next content id with priority < aNextPriority. + * @param[in,out] aNextPriority On entry the priority is used to search the + * item content with next lowest priority. On exit + * the parameter's value is the rendering priority + * of aContentId. + * @return true if next content item was found, false if out of + * content items with lower priority than aNextPriority. + * Out parameters are updated only if this function returns true. + */ + TBool GetNextContentId( TInt& aContentId, TInt& aNextPriority ); + +private: // Data + + /** + * An array that holds rendering priority related items. + */ + const TRenderingPriorityItem* iRenderingPriorities; + + /** + * Number of items in the array. + */ + TInt iCount; + + }; + +/** + * Returns rendering priorities for ui control. + * + * @param aUiElementId UI control identifier. + * @return UI control priorities object. + */ +TRenderingPriorities RenderingPriorities( const TDesC8& aUiElementId ); + +} // namespace AiNativeUiModel + +} // namespace AiNativeUiController + +#endif // AINATIVEUIMODEL_H