-WireframeVisual::WireframeVisual( VisualFactoryCache& factoryCache )
-: Visual::Base( factoryCache )
+WireframeVisualPtr WireframeVisual::New(VisualFactoryCache& factoryCache, Visual::BasePtr actualVisual, const Property::Map& properties)
+{
+ WireframeVisualPtr wireframeVisual(new WireframeVisual(factoryCache, actualVisual));
+
+ // Instead of calling SetProperties, looking for the only valid property 'transform'
+ Property::Value* transformValue = properties.Find(Toolkit::Visual::Property::TRANSFORM, TRANSFORM);
+ Property::Map transformMap;
+ if(transformValue && transformValue->Get(transformMap))
+ {
+ wireframeVisual->SetTransformAndSize(transformMap, Vector2::ZERO);
+ }
+ wireframeVisual->Initialize();
+ return wireframeVisual;
+}
+
+WireframeVisual::WireframeVisual(VisualFactoryCache& factoryCache, Visual::BasePtr actualVisual)
+: Visual::Base(factoryCache, Visual::FittingMode::FILL, actualVisual ? actualVisual->GetType() : Toolkit::Visual::WIREFRAME),
+ mActualVisual(actualVisual)