X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fimage%2Fbatch-image-visual.h;h=1f8119579d6d377ce47f449831b511bc10a23029;hb=6b6c1a325a1a66f17225e712f3b94054a771e7c8;hp=71f85f9d4786b55abdd3a8d902115804b0cdd8f2;hpb=2cf32ac170f397aacce527efd34909b3fd62efda;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/image/batch-image-visual.h b/dali-toolkit/internal/visuals/image/batch-image-visual.h index 71f85f9..1f81195 100644 --- a/dali-toolkit/internal/visuals/image/batch-image-visual.h +++ b/dali-toolkit/internal/visuals/image/batch-image-visual.h @@ -18,13 +18,13 @@ * */ +// EXTERNAL INCLUDES +#include + // INTERNAL HEADER #include #include -// EXTERNAL INCLUDES -#include - namespace Dali { namespace Toolkit @@ -32,50 +32,53 @@ namespace Toolkit namespace Internal { +class BatchImageVisual; +typedef IntrusivePtr< BatchImageVisual > BatchImageVisualPtr; + class BatchImageVisual: public Visual::Base, public ConnectionTracker { public: /** - * @brief Constructor. + * @brief Create a new batch-image visual. * - * @param[in] factoryCache The VisualFactoryCache object - */ - BatchImageVisual( VisualFactoryCache& factoryCache ); - - /** - * @brief A reference counted object may only be deleted by calling Unreference(). + * @param[in] factoryCache A pointer pointing to the VisualFactoryCache object + * @param[in] url The URL of the image to use + * @param[in] properties A Property::Map containing settings for this visual + * @return A smart-pointer to the newly allocated visual. */ - ~BatchImageVisual(); + static BatchImageVisualPtr New( VisualFactoryCache& factoryCache, const std::string& url, const Property::Map& properties = Property::Map() ); public: // from Visual /** - * @copydoc Visual::Base::SetSize + * @copydoc Visual::Base::GetNaturalSize */ - virtual void SetSize( const Vector2& size ); + virtual void GetNaturalSize( Vector2& naturalSize ); /** - * @copydoc Visual::Base::GetNaturalSize + * @copydoc Visual::Base::CreatePropertyMap */ - virtual void GetNaturalSize( Vector2& naturalSize ) const; + virtual void DoCreatePropertyMap( Property::Map& map ) const; + +protected: /** - * @copydoc Visual::Base::SetClipRect + * @brief Constructor. + * + * @param[in] factoryCache The VisualFactoryCache object */ - virtual void SetClipRect( const Rect& clipRect ); + BatchImageVisual( VisualFactoryCache& factoryCache ); /** - * @copydoc Visual::Base::CreatePropertyMap + * @brief A reference counted object may only be deleted by calling Unreference(). */ - virtual void DoCreatePropertyMap( Property::Map& map ) const; - -protected: + ~BatchImageVisual(); /** - * @copydoc Visua::Base::DoInitialize + * @copydoc Visua::Base::DoSetProperties */ - virtual void DoInitialize( Actor& actor, const Property::Map& propertyMap ); + virtual void DoSetProperties( const Property::Map& propertyMap ); /** * @copydoc Visual::Base::DoSetOnStage @@ -87,6 +90,11 @@ protected: */ virtual void DoSetOffStage( Actor& actor ); + /** + * @copydoc Visual::Base::OnSetTransform + */ + virtual void OnSetTransform(); + private: /** @@ -107,6 +115,13 @@ private: */ void CleanCache( const std::string& url ); + /** + * Helper method to set individual values by index key. + * @param[in] index The index key of the value + * @param[in] value The value + */ + void DoSetProperty( Property::Index index, const Property::Value& value ); + private: Vector4 mAtlasRect;