X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fsuper-blur-view%2Fsuper-blur-view-impl.h;h=fa5be8e331c5d4b3667d19a473c09e3e473bdc64;hb=6f990775daf7adf6170db59f0b99e00ae25fceed;hp=db9c6132aa5c12f2799d3293fc9d53476e397f82;hpb=2ddfbb9e23a7c3fc30e604236c41e0ef6d2ed6a2;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/super-blur-view/super-blur-view-impl.h b/dali-toolkit/internal/controls/super-blur-view/super-blur-view-impl.h index db9c613..fa5be8e 100644 --- a/dali-toolkit/internal/controls/super-blur-view/super-blur-view-impl.h +++ b/dali-toolkit/internal/controls/super-blur-view/super-blur-view-impl.h @@ -20,8 +20,9 @@ // INTERNAL INCLUDES #include -#include +#include #include +#include namespace Dali { @@ -39,14 +40,6 @@ namespace Internal */ class SuperBlurView : public Control { -public: - - // Properties - enum - { - SUPER_BLUR_VIEW_PROPERTY_START_INDEX = Control::CONTROL_PROPERTY_END_INDEX + 1, - SUPER_BLUR_VIEW_PROPERTY_END_INDEX = SUPER_BLUR_VIEW_PROPERTY_START_INDEX + 1000 ///< Reserving 1000 property indices - }; public: @@ -61,6 +54,12 @@ public: void SetImage(Image inputImage); /** + * Get the image for blurring. + * @return The image for blurring. + */ + Image GetImage(); + + /** * @copydoc Dali::Toolkit::SuperBlurView::GetBlurStrengthPropertyIndex */ Property::Index GetBlurStrengthPropertyIndex() const; @@ -123,14 +122,24 @@ private: // from Control virtual void OnInitialize(); /** - * @copydoc Toolkit::Control::OnControlSizeSet + * @copydoc CustomActorImpl::OnSizeSet() + */ + virtual void OnSizeSet(const Vector3& targetSize); + + /** + * @copydoc CustomActorImpl::OnStageConnection() */ - virtual void OnControlSizeSet(const Vector3& targetSize); + virtual void OnStageConnection( int depth ); /** - * @copydoc Control::OnRelayout() + * @copydoc CustomActorImpl::OnStageDisconnection() */ - virtual void OnRelayout( const Vector2& size, ActorSizeContainer& container ); + virtual void OnStageDisconnection(); + + /** + * @copydoc CustomActorImpl::GetNaturalSize() + */ + virtual Vector3 GetNaturalSize(); private: @@ -152,19 +161,24 @@ private: */ void ClearBlurResource(); -private: - - unsigned int mBlurLevels; - - Property::Index mBlurStrengthPropertyIndex; + /** + * Sets shader effect on the control renderer + * @param[in,out] Sets custom shader effect on the given renderer + */ + void SetShaderEffect( Toolkit::ControlRenderer& renderer ); +private: std::vector mGaussianBlurView; std::vector mBlurredImage; - std::vector mImageActors; - bool mResourcesCleared; - + std::vector mRenderers; + Image mInputImage; Vector2 mTargetSize; + Toolkit::SuperBlurView::SuperBlurViewSignal mBlurFinishedSignal; ///< Signal emitted when blur has completed. + + Property::Index mBlurStrengthPropertyIndex; + unsigned int mBlurLevels; + bool mResourcesCleared; }; }