1 #ifndef DALI_TOOLKIT_DEVEL_API_VISUALS_IMAGE_VISUAL_PROPERTIES_DEVEL_H
2 #define DALI_TOOLKIT_DEVEL_API_VISUALS_IMAGE_VISUAL_PROPERTIES_DEVEL_H
5 * Copyright (c) 2019 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0
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.
22 #include <dali-toolkit/public-api/visuals/image-visual-properties.h>
30 namespace DevelImageVisual
38 URL = Dali::Toolkit::ImageVisual::Property::URL,
39 FITTING_MODE = Dali::Toolkit::ImageVisual::Property::FITTING_MODE,
40 SAMPLING_MODE = Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE,
41 DESIRED_WIDTH = Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH,
42 DESIRED_HEIGHT = Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT,
43 SYNCHRONOUS_LOADING = Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING,
44 BORDER_ONLY = Dali::Toolkit::ImageVisual::Property::BORDER_ONLY,
45 PIXEL_AREA = Dali::Toolkit::ImageVisual::Property::PIXEL_AREA,
46 WRAP_MODE_U = Dali::Toolkit::ImageVisual::Property::WRAP_MODE_U,
47 WRAP_MODE_V = Dali::Toolkit::ImageVisual::Property::WRAP_MODE_V,
48 BORDER = Dali::Toolkit::ImageVisual::Property::BORDER,
49 ATLASING = Dali::Toolkit::ImageVisual::Property::ATLASING,
50 ALPHA_MASK_URL = Dali::Toolkit::ImageVisual::Property::ALPHA_MASK_URL,
51 BATCH_SIZE = Dali::Toolkit::ImageVisual::Property::BATCH_SIZE,
52 CACHE_SIZE = Dali::Toolkit::ImageVisual::Property::CACHE_SIZE,
53 FRAME_DELAY = Dali::Toolkit::ImageVisual::Property::FRAME_DELAY,
54 MASK_CONTENT_SCALE = Dali::Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE,
55 CROP_TO_MASK = Dali::Toolkit::ImageVisual::Property::CROP_TO_MASK,
56 LOAD_POLICY = Dali::Toolkit::ImageVisual::Property::LOAD_POLICY,
57 RELEASE_POLICY = Dali::Toolkit::ImageVisual::Property::RELEASE_POLICY,
58 ORIENTATION_CORRECTION = Dali::Toolkit::ImageVisual::Property::ORIENTATION_CORRECTION,
61 * @brief Overlays the auxiliary image on top of an NPatch image.
63 * The resulting visual image will be at least as large as the
64 * smallest possible n-patch or the auxiliary image, whichever is
67 * @details Name "auxiliaryImage", Type Property::STRING, URL of the image.
70 AUXILIARY_IMAGE = ORIENTATION_CORRECTION + 1,
73 * @brief An alpha value for mixing between the masked main NPatch image and the auxiliary image
74 * @details Name "auxiliaryImageAlpha", Type Property::FLOAT, between 0 and 1
77 AUXILIARY_IMAGE_ALPHA = ORIENTATION_CORRECTION + 2,
80 * @brief The number of times the AnimatedImageVisual or AnimatedVectorImageVisual will be looped.
81 * @details Name "loopCount", type Property::INTEGER.
82 * @note For Animated images only. Default -1. if < 0, loop unlimited. else, loop loopCount times.
84 LOOP_COUNT = ORIENTATION_CORRECTION + 3,
87 * @brief The playing range the AnimatedVectorImageVisual will use.
89 * Animation will play between the values specified. The array can only have two values, and more will be ignored.
90 * Both values should be between 0 and the total frame number, otherwise they will be ignored.
91 * If the range provided is not in proper order ( minimum, maximum ), it will be reordered.
93 * @details Name "playRange", Type Property::ARRAY of Property::INTEGER
94 * @note Default 0 and the total frame number.
96 PLAY_RANGE = ORIENTATION_CORRECTION + 4,
99 * @brief The playing state the AnimatedVectorImageVisual will use.
100 * @details Name "playState", Type PlayState::Type (Property::INTEGER)
101 * @note This property is read-only.
103 PLAY_STATE = ORIENTATION_CORRECTION + 5,
106 * @brief The current frame number the AnimatedVectorImageVisual will use.
107 * @details Name "currentFrameNumber", Type Property::INTEGER, between [0, the maximum frame number] or between the play range if specified
108 * @note This property is read-only.
110 CURRENT_FRAME_NUMBER = ORIENTATION_CORRECTION + 6,
113 * @brief The total frame number the AnimatedVectorImageVisual will use.
114 * @details Name "totalFrameNumber", Type Property::INTEGER.
115 * @note This property is read-only.
117 TOTAL_FRAME_NUMBER = ORIENTATION_CORRECTION + 7,
120 * @brief The stop behavior the AnimatedVectorImageVisual will use.
121 * @details Name "stopBehavior", Type StopBehavior::Type (Property::INTEGER)
122 * @note Default value is StopBehavior::CURRENT_FRAME.
124 STOP_BEHAVIOR = ORIENTATION_CORRECTION + 8,
127 * @brief The looping mode the AnimatedVectorImageVisual will use.
128 * @details Name "loopingMode", Type LoopingMode::Type (Property::INTEGER)
129 * @note Default value is LoopingMode::RESTART.
131 LOOPING_MODE = ORIENTATION_CORRECTION + 9,
134 * @brief The content information the AnimatedVectorImageVisual will use.
135 * @details Name "contentInfo", Type Property::MAP.
136 * The map contains the layer name as a key and Property::Array as a value.
137 * And the array contains 2 integer values which are the frame numbers, the start frame number and the end frame number of the layer.
138 * @note This property is read-only.
140 CONTENT_INFO = ORIENTATION_CORRECTION + 10
143 } //namespace Property
146 * @brief Enumeration for what state the animation is in.
153 STOPPED, ///< Animation has stopped
154 PLAYING, ///< The animation is playing
155 PAUSED ///< The animation is paused
158 } // namespace PlayState
161 * @brief Enumeration for what to do when the animation is stopped.
163 namespace StopBehavior
168 CURRENT_FRAME, ///< When the animation is stopped, the current frame is shown.
169 FIRST_FRAME, ///< When the animation is stopped, the first frame is shown.
170 LAST_FRAME ///< When the animation is stopped, the last frame is shown.
173 } // namespace StopBehavoir
176 * @brief Enumeration for what looping mode is in.
178 namespace LoopingMode
183 RESTART, ///< When the animation arrives at the end in looping mode, the animation restarts from the beginning.
184 AUTO_REVERSE ///< When the animation arrives at the end in looping mode, the animation reverses direction and runs backwards again.
187 } // namespace LoopingMode
189 } // namespace DevelImageVisual
191 } // namespace Toolkit
195 #endif // DALI_TOOLKIT_DEVEL_API_VISUALS_IMAGE_VISUAL_PROPERTIES_DEVEL_H