X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fdevel-api%2Fvisuals%2Fvisual-properties-devel.h;h=679a31f12ce273fd5e25f07f04dbdf99f9b00ba2;hp=e30f241c7b7987882593e5a89050b3f7c27ce02f;hb=7c744c0ecb31b40289251e91fec97f7c0f45846f;hpb=a79da7136f240f7dbaea136806571ff0e60f0cf9 diff --git a/dali-toolkit/devel-api/visuals/visual-properties-devel.h b/dali-toolkit/devel-api/visuals/visual-properties-devel.h index e30f241..679a31f 100644 --- a/dali-toolkit/devel-api/visuals/visual-properties-devel.h +++ b/dali-toolkit/devel-api/visuals/visual-properties-devel.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_DEVEL_API_VISUALS_VISUAL_PROPERTIES_DEVEL_H /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,13 +23,10 @@ namespace Dali { - namespace Toolkit { - namespace DevelVisual { - /** * @brief All the visual types. */ @@ -47,9 +44,9 @@ enum Type SVG = Dali::Toolkit::Visual::SVG, ANIMATED_IMAGE = Dali::Toolkit::Visual::ANIMATED_IMAGE, - ANIMATED_GRADIENT = ANIMATED_IMAGE + 1, ///< Renders an animated gradient. - ANIMATED_VECTOR_IMAGE = ANIMATED_IMAGE + 2, ///< Renders an animated vector image. - ARC = ANIMATED_IMAGE + 3, ///< Renders an arc. + ANIMATED_GRADIENT = ANIMATED_IMAGE + 1, ///< Renders an animated gradient. + ANIMATED_VECTOR_IMAGE = ANIMATED_IMAGE + 2, ///< Renders an animated vector image. + ARC = ANIMATED_IMAGE + 3, ///< Renders an arc. }; /** @@ -67,7 +64,7 @@ enum Type OPACITY = Dali::Toolkit::Visual::Property::OPACITY, /** - * @brief The fitting mode of the visual + * @brief The fitting mode of the visual. * @details Name "fittingMode", type FittingMode (Property::INTEGER) or Property::STRING. * @see DevelVisual::FittingMode * @note The default is defined by the type of visual (if it's suitable to be stretched or not). @@ -75,27 +72,67 @@ enum Type VISUAL_FITTING_MODE = OPACITY + 1, /** - * @brief The radius for the rounded corners of the visual - * @details Name "cornerRadius", type Property::FLOAT. - * @note Optional. + * @brief The radius for the rounded corners of the visual. + * @details Name "cornerRadius", type Property::FLOAT or Prooperty::VECTOR4, animatable + * @note By default, it is Vector::ZERO. + * @note Only Property::Vector4 can be animated. + * @note Each radius will clamp internally to the half of smaller of the visual width and visual height. + * @note Their may exist some alias when you use it as ClippingMode::CLIP_CHILDREN. + * @note Radius value are used in clockwise order from top-left-corner to bottom-left-corner. + * When radius is Vector4(x, y, z, w) + * x y + * +--+ + * | | + * +--+ + * w z */ CORNER_RADIUS = OPACITY + 2, + + /** + * @brief Whether the corner radius value is relative (percentage [0.0f to 0.5f] of the visual size) or absolute (in world units). + * @details Name "cornerRadiusPolicy", type Property::INTEGER. + * @see Policy::Type + * @note By default, it is ABSOLUTE to the visual's size. + * If it it RELATIVE, the corner radius value is relative to the smaller of the visual width and visual height. + */ + CORNER_RADIUS_POLICY = OPACITY + 3, + + /** + * @brief The width for the borderline of the visual. + * @details Name "borderlineWidth", type Property::FLOAT, animatable + * @note Optional. Default value is 0.0f. + */ + BORDERLINE_WIDTH = OPACITY + 4, + + /** + * @brief The color for the borderline of the visual. + * @details Name "borderlineColor", type Property::VECTOR4, animatable + * @note Default value is Color::BLACK. + */ + BORDERLINE_COLOR = OPACITY + 5, + + /** + * @brief The offset from the visual borderline (recommend [-1.0f to 1.0f]). + * @details Name "borderlineOffset", type Property::FLOAT, animatable + * @note Default value is 0.0f. + * @note This value will clamp internally to [-1.0f to 1.0f]. + */ + BORDERLINE_OFFSET = OPACITY + 6, }; } // namespace Property - /** * @brief The values of this enum determine how the visual should be fit to the view */ enum FittingMode { - FIT_KEEP_ASPECT_RATIO, ///< The visual should be scaled to fit, preserving aspect ratio - FILL, ///< The visual should be stretched to fill, not preserving aspect ratio - OVER_FIT_KEEP_ASPECT_RATIO,///< The visual should be scaled to fit, preserving aspect ratio. The visual will be filled without empty area, and outside is cropped away. - CENTER, ///< The visual should keep original size of image. It is not scaled and not strecthed. - FIT_HEIGHT, ///< The visual should be scaled to fit, preserving aspect ratio. Height is scaled proportionately to maintain aspect ratio. It will be deprecated. - FIT_WIDTH ///< The visual should be scaled to fit, preserving aspect ratio. Width is scaled proportionately to maintain aspect ratio. It will be deprecated. + FIT_KEEP_ASPECT_RATIO, ///< The visual should be scaled to fit, preserving aspect ratio + FILL, ///< The visual should be stretched to fill, not preserving aspect ratio + OVER_FIT_KEEP_ASPECT_RATIO, ///< The visual should be scaled to fit, preserving aspect ratio. The visual will be filled without empty area, and outside is cropped away. + CENTER, ///< The visual should keep original size of image. It is not scaled and not strecthed. + FIT_HEIGHT, ///< The visual should be scaled to fit, preserving aspect ratio. Height is scaled proportionately to maintain aspect ratio. It will be deprecated. + FIT_WIDTH ///< The visual should be scaled to fit, preserving aspect ratio. Width is scaled proportionately to maintain aspect ratio. It will be deprecated. }; /** @@ -103,13 +140,11 @@ enum FittingMode */ namespace Transform { - /** * @brief Visual Transform Property. */ namespace Property { - /** * @brief Enumeration for the type of Transform Property. */