From 40549e424354286e8db9605b37542728d88a98e5 Mon Sep 17 00:00:00 2001 From: jmm Date: Fri, 18 Apr 2025 13:19:35 +0900 Subject: [PATCH] Add BackgroundBlurEffect's public-apis Change-Id: I3868792e4384cd9da3f22dfbf66eb7889955651c --- .../dali-toolkit/render-effects-wrap.cpp | 135 +++++++++++++++++- 1 file changed, 128 insertions(+), 7 deletions(-) diff --git a/dali-csharp-binder/dali-toolkit/render-effects-wrap.cpp b/dali-csharp-binder/dali-toolkit/render-effects-wrap.cpp index d9eb4133..28304d74 100644 --- a/dali-csharp-binder/dali-toolkit/render-effects-wrap.cpp +++ b/dali-csharp-binder/dali-toolkit/render-effects-wrap.cpp @@ -25,22 +25,143 @@ extern "C" { #endif -SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_New__SWIG_1(unsigned int blurRadius) { +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RenderEffect_Activate(void* pRenderEffect) +{ + Dali::Toolkit::RenderEffect* renderEffect = (Dali::Toolkit::RenderEffect*) pRenderEffect; + { + try + { + renderEffect->Activate(); + } + CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_RenderEffect_Deactivate(void* pRenderEffect) +{ + Dali::Toolkit::RenderEffect* renderEffect = (Dali::Toolkit::RenderEffect*) pRenderEffect; + { + try + { + renderEffect->Deactivate(); + } + CALL_CATCH_EXCEPTION(); + } + +} + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_New__SWIG_1(unsigned int blurRadius) +{ + Dali::Toolkit::BackgroundBlurEffect backgroundBlurEffect; + { + try + { + backgroundBlurEffect = Dali::Toolkit::BackgroundBlurEffect::New(blurRadius); + } + CALL_CATCH_EXCEPTION(0); + } + + return new Dali::Toolkit::BackgroundBlurEffect((const Dali::Toolkit::BackgroundBlurEffect&)backgroundBlurEffect); +} + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_SetBlurOnce(void* pBackgroundBlurEffect, bool blurOnce) +{ + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; + { + try + { + backgroundBlurEffect->SetBlurOnce(blurOnce); + } + CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_GetBlurOnce(void* pBackgroundBlurEffect) +{ + bool blurOnce = false; + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; + { + try + { + blurOnce = backgroundBlurEffect->GetBlurOnce(); + } + CALL_CATCH_EXCEPTION(0); + } + return blurOnce; +} - Dali::Toolkit::BackgroundBlurEffect blurEffect; +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_SetBlurRadius(void* pBackgroundBlurEffect, unsigned int blurRadius) +{ + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; { try { - blurEffect = Dali::Toolkit::BackgroundBlurEffect::New(blurRadius); + backgroundBlurEffect->SetBlurRadius(blurRadius); + } + CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT uint32_t SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_GetBlurRadius(void* pBackgroundBlurEffect) +{ + uint32_t blurRadius = 0.0f; + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; + { + try + { + blurRadius = (uint32_t)backgroundBlurEffect->GetBlurRadius(); } CALL_CATCH_EXCEPTION(0); } + return blurRadius; +} + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_AddBlurStrengthAnimation(void* pBackgroundBlurEffect, void* pAnimation, void* pAlphaFunction, void* pTimePeriod, float fromValue, float toValue) +{ + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; + Dali::Animation* animation = (Dali::Animation*) pAnimation; // reference + if(!animation) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Animation & type is null", 0); + return; + } + + Dali::AlphaFunction alphaFunction = pAlphaFunction? *((Dali::AlphaFunction*) pAlphaFunction) : animation->GetDefaultAlphaFunction(); + Dali::TimePeriod timePeriod = pTimePeriod? *((Dali::TimePeriod*) pTimePeriod) : Dali::TimePeriod(animation->GetDuration()); - return new Dali::Toolkit::BackgroundBlurEffect((const Dali::Toolkit::BackgroundBlurEffect&)blurEffect); + { + try + { + backgroundBlurEffect->AddBlurStrengthAnimation((Dali::Animation&)(*animation), alphaFunction, timePeriod, fromValue, toValue); + } + CALL_CATCH_EXCEPTION(); + } } -SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_MaskEffect_New__SWIG_0(Dali::BaseHandle* control) { +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_BackgroundBlurEffect_AddBlurOpacityAnimation(void* pBackgroundBlurEffect, void* pAnimation, void* pAlphaFunction, void* pTimePeriod, float fromValue, float toValue) +{ + Dali::Toolkit::BackgroundBlurEffect* backgroundBlurEffect = (Dali::Toolkit::BackgroundBlurEffect*) pBackgroundBlurEffect; + Dali::Animation* animation = (Dali::Animation*) pAnimation; // reference + if(!animation) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Animation & type is null", 0); + return; + } + + Dali::AlphaFunction alphaFunction = pAlphaFunction? *((Dali::AlphaFunction*) pAlphaFunction) : animation->GetDefaultAlphaFunction(); + Dali::TimePeriod timePeriod = pTimePeriod? *((Dali::TimePeriod*) pTimePeriod) : Dali::TimePeriod(animation->GetDuration()); + { + try + { + backgroundBlurEffect->AddBlurOpacityAnimation((Dali::Animation&)(*animation), alphaFunction, timePeriod, fromValue, toValue); + } + CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_MaskEffect_New__SWIG_0(Dali::BaseHandle* control) +{ Dali::Toolkit::MaskEffect maskEffect; { try @@ -54,8 +175,8 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_MaskEffect_New__SWIG_0(Dali::BaseHandl return new Dali::Toolkit::MaskEffect((const Dali::Toolkit::MaskEffect&)maskEffect); } -SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_MaskEffect_New__SWIG_1(Dali::BaseHandle* control, uint32_t maskMode, float positionX, float positionY, float scaleX, float scaleY) { - +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_MaskEffect_New__SWIG_1(Dali::BaseHandle* control, uint32_t maskMode, float positionX, float positionY, float scaleX, float scaleY) +{ Dali::Toolkit::MaskEffect maskEffect; { try -- 2.34.1