#ifdef THORVG_SUPPORT
#include <thorvg.h>
#endif
-#include <dali/public-api/object/base-object.h>
#include <dali/public-api/object/weak-handle.h>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/canvas-renderer-drawable.h>
#include <dali/devel-api/adaptor-framework/canvas-renderer.h>
#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
+#include <dali/internal/canvas-renderer/common/drawable-group-impl.h>
#include <dali/internal/canvas-renderer/common/canvas-renderer-impl.h>
namespace Dali
*/
void MakeTargetBuffer(const Vector2& size);
+#ifdef THORVG_SUPPORT
+ /**
+ * @brief Push drawable object to parent.
+ * If drawable is a type that can have child drawables, it is called recursively.
+ * @param[in] drawable The drawable object.
+ * @param[in] group The scene object of tvg that can be drawable group.
+ */
+ void PushDrawableToGroup(Dali::CanvasRenderer::Drawable& drawable, tvg::Scene* group);
+#endif
+
private:
Devel::PixelBuffer mPixelBuffer;
std::unique_ptr<tvg::SwCanvas> mTvgCanvas;
tvg::Scene* mTvgRoot;
#endif
- using DrawableVector = std::vector<WeakHandle<Dali::CanvasRenderer::Drawable>>;
- using DrawableVectorIterator = DrawableVector::iterator;
- DrawableVector mDrawables;
+ DrawableGroup::DrawableVector mDrawables;
Vector2 mSize;
Vector2 mViewBox;