X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fvisual-factory-impl.cpp;h=2c8183c41cc28a4c2b399b413da75c741dc4b765;hp=4afade970e7625644d8d06acd33f676a6ab6d996;hb=31b36444ed21fdf36b641ba9de528cc154b332ee;hpb=70cda53a32b66bcc77619835cc06049635043d91 diff --git a/dali-toolkit/internal/visuals/visual-factory-impl.cpp b/dali-toolkit/internal/visuals/visual-factory-impl.cpp index 4afade9..2c8183c 100644 --- a/dali-toolkit/internal/visuals/visual-factory-impl.cpp +++ b/dali-toolkit/internal/visuals/visual-factory-impl.cpp @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -59,6 +60,10 @@ namespace Internal namespace { +#if defined(DEBUG_ENABLED) +Debug::Filter* gLogFilter = Debug::Filter::New( Debug::NoLogging, false, "LOG_CONTROL_VISUALS"); +#endif + BaseHandle Create() { BaseHandle handle = Toolkit::VisualFactory::Get(); @@ -161,6 +166,11 @@ Toolkit::Visual::Base VisualFactory::CreateVisual( const Property::Map& property visualPtr = AnimatedImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), visualUrl, propertyMap ); break; } + case VisualUrl::JSON: + { + visualPtr = AnimatedVectorImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), imageUrl, propertyMap ); + break; + } case VisualUrl::REGULAR_IMAGE: { visualPtr = ImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), visualUrl, propertyMap ); @@ -254,11 +264,32 @@ Toolkit::Visual::Base VisualFactory::CreateVisual( const Property::Map& property visualPtr = AnimatedGradientVisual::New( GetFactoryCache(), propertyMap ); break; } + + case Toolkit::DevelVisual::ANIMATED_VECTOR_IMAGE: + { + Property::Value* imageURLValue = propertyMap.Find( Toolkit::ImageVisual::Property::URL, IMAGE_URL_NAME ); + std::string imageUrl; + if( imageURLValue && imageURLValue->Get( imageUrl ) ) + { + visualPtr = AnimatedVectorImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), imageUrl, propertyMap ); + } + break; + } } + DALI_LOG_INFO( gLogFilter, Debug::Concise, "VisualFactory::CreateVisual( VisualType:%s %s%s)\n", + Scripting::GetEnumerationName( visualType, + VISUAL_TYPE_TABLE, + VISUAL_TYPE_TABLE_COUNT ), + visualType==Toolkit::DevelVisual::IMAGE?"url:":"", + visualType==Toolkit::DevelVisual::IMAGE ? + propertyMap.Find( Toolkit::ImageVisual::Property::URL, IMAGE_URL_NAME)->Get().c_str() + :"" ); + + if( !visualPtr ) { - DALI_LOG_ERROR( "Renderer type unknown\n" ); + DALI_LOG_ERROR( "VisualType unknown\n" ); } if( mDebugEnabled && visualType != Toolkit::DevelVisual::WIREFRAME ) @@ -321,6 +352,11 @@ Toolkit::Visual::Base VisualFactory::CreateVisual( const std::string& url, Image visualPtr = AnimatedImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), visualUrl ); break; } + case VisualUrl::JSON: + { + visualPtr = AnimatedVectorImageVisual::New( GetFactoryCache(), GetImageVisualShaderFactory(), visualUrl ); + break; + } case VisualUrl::REGULAR_IMAGE: { visualPtr = ImageVisual::New(GetFactoryCache(), GetImageVisualShaderFactory(), visualUrl, size );