Merge changes I7066e6c1,I3f0c228e into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / visuals / visual-base-data-impl.h
index fb8ae32..e631f43 100644 (file)
@@ -24,6 +24,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/internal/visuals/visual-base-impl.h>
+#include <dali-toolkit/devel-api/align-enums.h>
 
 namespace Dali
 {
@@ -60,14 +61,28 @@ struct Base::Impl
     void CreatePropertyMap( Property::Map& map ) const;
   };
 
-  Renderer mRenderer;
+  struct Transform
+  {
+    Vector2 mOffset;
+    Vector2 mSize;
+    Vector4 mOffsetSizeMode;
+    Toolkit::Align::Type mOrigin;
+    Toolkit::Align::Type mAnchorPoint;
 
-  CustomShader* mCustomShader;
+    Transform();
+    void SetPropertyMap( const Property::Map& map );
+    void GetPropertyMap( Property::Map& map ) const;
+    void RegisterUniforms( Renderer renderer, Toolkit::Direction::Type direction );
+    Vector2 GetVisualSize( const Vector2& controlSize );
+  };
 
-  Vector2   mSize;
-  Vector2   mOffset;
-  float     mDepthIndex;
-  int       mFlags;
+  Renderer      mRenderer;
+  CustomShader* mCustomShader;
+  std::string   mName;
+  Transform     mTransform;
+  Size          mControlSize;
+  float         mDepthIndex;
+  int           mFlags;
 
   Impl();
   ~Impl();