1 #ifndef __DALI_TOOLKIT_SHADER_EFFECT_SQUARE_H__
2 #define __DALI_TOOLKIT_SHADER_EFFECT_SQUARE_H__
5 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
7 // Licensed under the Flora License, Version 1.0 (the License);
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
11 // http://floralicense.org/license/
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an AS IS BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
21 #include <dali/dali.h>
23 namespace Dali DALI_IMPORT_API
30 * SquareDissolveEffect is a custom shader effect to achieve square effects in Image actors
32 class SquareDissolveEffect : public ShaderEffect
37 * Create an uninitialized SquareDissolveEffect; this can be initialized with BendyEffect::New()
38 * Calling member functions with an uninitialized Dali::Object is not allowed.
40 SquareDissolveEffect();
45 virtual ~SquareDissolveEffect();
48 * Create an initialized SquareDissolveEffect.
49 * @return A handle to a newly allocated Dali resource.
51 static SquareDissolveEffect New();
54 * Set the step of the square effect.
55 * @param [in] step the new step.
57 void SetStep(float step);
60 * Set the rows of the square dissolve effect.
61 * @param [in] rows the new rows value.
63 void SetRows(float rows);
66 * Set the columns of the square dissolve effect.
67 * @param [in] columns the new columns value.
69 void SetColumns(float columns);
72 * Set the texture size of the square dissolve.
73 * @param[in] textureSize The texture size in Vector2.
75 void SetTextureSize(const Vector2& textureSize);
78 * Get the name for the step property
79 * which can be used in Animation API's
80 * @return A std::string containing the property name
82 const std::string& GetStepPropertyName() const;
85 * Get the name for the rows property
86 * which can be used in Animation API's
87 * @return A std::string containing the property name
89 const std::string& GetRowsPropertyName() const;
92 * Get the name for the columns property
93 * which can be used in Animation API's
94 * @return A std::string containing the property name
96 const std::string& GetColumnsPropertyName() const;
99 * Get the name for the texSize property
100 * which can be used in Animation API's
101 * @return A std::string containing the property name
103 const std::string& GetTexSizePropertyName() const;
105 private: // Not intended for application developers
106 SquareDissolveEffect(ShaderEffect handle);
109 } // namespace Toolkit
113 #endif // __DALI_TOOLKIT_SHADER_EFFECT_SQUARE_H__