+ visualPtr = PrimitiveVisual::New( GetFactoryCache(), propertyMap );
+ break;
+ }
+
+ case Toolkit::Visual::WIREFRAME:
+ {
+ visualPtr = WireframeVisual::New( GetFactoryCache(), propertyMap );
+ break;
+ }
+
+ case Toolkit::Visual::TEXT:
+ {
+ visualPtr = TextVisual::New( GetFactoryCache(), propertyMap );
+ break;
+ }
+
+ case Toolkit::Visual::N_PATCH:
+ {
+ Property::Value* imageURLValue = propertyMap.Find( Toolkit::ImageVisual::Property::URL, IMAGE_URL_NAME );
+ std::string imageUrl;
+ if( imageURLValue && imageURLValue->Get( imageUrl ) )
+ {
+ visualPtr = NPatchVisual::New( GetFactoryCache(), imageUrl, propertyMap );
+ }
+ break;
+ }
+
+ case Toolkit::Visual::SVG:
+ {
+ Property::Value* imageURLValue = propertyMap.Find( Toolkit::ImageVisual::Property::URL, IMAGE_URL_NAME );
+ std::string imageUrl;
+ if( imageURLValue && imageURLValue->Get( imageUrl ) )
+ {
+ visualPtr = SvgVisual::New( GetFactoryCache(), imageUrl, propertyMap );
+ }