1 // Copyright (c) 2019 Samsung Electronics Co., Ltd.
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 using System.ComponentModel;
20 /// Specifies the release policy types.<br />
21 /// Decides if the image should be cached in different conditions.
23 /// <since_tizen> 5 </since_tizen>
24 public enum ReleasePolicyType
27 /// Image is released when visual detached from scene.
31 /// Image is only released when visual is destroyed.
35 /// Image is not released.
41 /// Specifies the load policy types.<br />
42 /// Decides when the image texture should be loaded.
44 /// <since_tizen> 5 </since_tizen>
45 public enum LoadPolicyType
48 /// Load texture once the image source has been provided. Even if not being used yet.
52 /// Only load texture once the visual is attached, when the image needs to be shown.
58 /// Enumeration for the text horizontal aligning.
60 /// <since_tizen> 3 </since_tizen>
61 public enum HorizontalAlignment
64 /// Texts place at the begin of horizontal direction.
66 [Description("BEGIN")]
69 /// Texts place at the center of horizontal direction.
71 [Description("CENTER")]
74 /// Texts place at the end of horizontal direction.
81 /// Enumeration for the text horizontal aligning.
83 /// <since_tizen> 3 </since_tizen>
84 public enum VerticalAlignment
87 /// Texts place at the top of vertical direction.
92 /// Texts place at the center of vertical direction.
94 [Description("CENTER")]
97 /// Texts place at the bottom of vertical direction.
99 [Description("BOTTOM")]
104 /// This specifies wrap mode types.<br />
105 /// WrapModeU and WrapModeV separately decide how the texture should be sampled when the u and v coordinate exceeds the range of 0.0 to 1.0.
107 /// <since_tizen> 3 </since_tizen>
108 public enum WrapModeType
111 /// The default value.
129 /// This specifies fitting mode types. Fitting options, used when resizing images to fit desired dimensions.<br />
130 /// A fitting mode controls the region of a loaded image to be mapped to the desired image rectangle.<br />
131 /// All fitting modes preserve the aspect ratio of the image contents.<br />
133 /// <since_tizen> 3 </since_tizen>
134 public enum FittingModeType
137 /// Full-screen image display: Limit loaded image resolution to device resolution using the ShrinkToFit mode.
141 /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
145 /// Image columns: Limit loaded image resolution to column width using the FitWidth mode.
149 /// Image rows: Limit loaded image resolution to row height using the FitHeight mode.
153 /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the Center mode.
155 [EditorBrowsable(EditorBrowsableState.Never)]
158 /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
160 [EditorBrowsable(EditorBrowsableState.Never)]
165 /// This specifies sampling mode types. Filtering options are used when resizing images to sample original pixels.<br />
166 /// A SamplingMode controls how pixels in an input image are sampled and combined to generate each pixel of a destination image during scaling.<br />
167 /// NoFilter and Box modes do not guarantee that the output pixel array exactly matches the rectangle specified by the desired dimensions and the FittingMode,<br />
168 /// but all other filter modes do if the desired dimensions are not more than the raw dimensions of the input image file.<br />
170 /// <since_tizen> 3 </since_tizen>
171 public enum SamplingModeType
174 /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size. <br />
175 /// This is the default.
179 /// For each output pixel, read one input pixel.
183 /// For each output pixel, read a quad of four input pixels and write a weighted average of them.
187 /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size, <br />
188 /// then for each output pixel, read one pixel from the last level of box filtering.<br />
192 /// Iteratively box filter to almost the right size, then for each output pixel, read four pixels from the last level of box filtering and write their weighted average.
196 /// No filtering is performed. If the SCALE_TO_FILL scaling mode is enabled, the borders of the image may be trimmed to match the aspect ratio of the desired dimensions.
200 /// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image.
206 /// The type of coordinate system for certain attributes of the points in a gradient.
208 /// <since_tizen> 3 </since_tizen>
209 public enum GradientVisualUnitsType
212 /// Uses the normals for the start, end, and center points, i.e., top-left is (-0.5, -0.5) and bottom-right is (0.5, 0.5).
216 /// Uses the user coordinates for the start, end, and center points, i.e., in a 200 by 200 control, top-left is (0, 0) and bottom-right is (200, 200).
222 /// This specifies SpreadMethod types.<br />
223 /// SpreadMethod defines what happens if the gradient starts or ends inside the bounds of the target rectangle.<br />
225 /// <since_tizen> 3 </since_tizen>
226 public enum GradientVisualSpreadMethodType
229 /// Uses the terminal colors of the gradient to fill the remainder of the quad.
233 /// Reflects the gradient pattern start-to-end, end-to-start, start-to-end, etc. until the quad is filled.
237 /// Repeats the gradient pattern start-to-end, start-to-end, start-to-end, etc. until the quad is filled.
243 /// The shading mode used by the mesh visual.
245 /// <since_tizen> 3 </since_tizen>
246 public enum MeshVisualShadingModeValue
249 /// *Simplest*. One color that is lit by ambient and diffuse lighting.
251 TexturelessWithDiffuseLighting,
253 /// Uses only the visual image textures provided with specular lighting in addition to ambient and diffuse lighting.
255 TexturedWithSpecularLighting,
257 /// Uses all textures provided including gloss, normal, and texture map along with specular, ambient, and diffuse lighting.
259 TexturedWithDetailedSpecularLighting
263 /// The primitive shape to render as a primitive visual.
265 /// <since_tizen> 3 </since_tizen>
266 public enum PrimitiveVisualShapeType
269 /// A perfectly round geometrical object in the three-dimensional space.
273 /// The area bound between two circles, i.e., a cone with the tip removed.
277 /// Equivalent to a conical frustrum with the top radius of zero.
278 /// </summary>Equivalent to a conical frustrum with the top radius of zero.
281 /// Equivalent to a conical frustrum with the top radius of zero.
285 /// Equivalent to a conical frustrum with equal radii for the top and bottom circles.
289 /// Equivalent to a bevelled cube with a bevel percentage of zero.
293 /// Equivalent to a bevelled cube with a bevel percentage of one.
299 /// The values of this enum determine how the visual should fit into the view.
301 /// <since_tizen> 5 </since_tizen>
302 public enum VisualFittingModeType
305 /// The visual should be scaled to fit, preserving aspect ratio.
309 /// The visual should be stretched to fill, not preserving aspect ratio.
313 /// The visual should be scaled to fit, preserving aspect ratio. The visual will be fillled without empty area, and outside is cropped away.
315 [EditorBrowsable(EditorBrowsableState.Never)]
316 OverFitKeepAspectRatio,
318 /// The visual should keep original size of image. it is not scaled and not strecthed.
320 [EditorBrowsable(EditorBrowsableState.Never)]
323 /// The visual should be scaled to fit, preserving aspect ratio. Height is scaled proportionately to maintain aspect ratio.
325 [EditorBrowsable(EditorBrowsableState.Never)]
328 /// The visual should be scaled to fit, preserving aspect ratio. WIDTH is scaled proportionately to maintain aspect ratio.
330 [EditorBrowsable(EditorBrowsableState.Never)]
335 /// This specifies policy types that could be used by the transform for the offset or size.
337 /// <since_tizen> 3 </since_tizen>
338 public enum VisualTransformPolicyType
341 /// Relative to the control (percentage [0.0f to 1.0f] of the control).
345 /// Absolute value in world units.
351 /// This specifies all the transform property types.
353 /// <since_tizen> 3 </since_tizen>
354 public enum VisualTransformPropertyType
357 /// Offset of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
361 /// Size of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
365 /// The origin of the visual within its control area.
369 /// The anchor-point of the visual.
373 /// Whether the x or y offset values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
377 /// Whether the width or the height size values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
381 /// Extra size value that will be added to the computed visual size.
383 [EditorBrowsable(EditorBrowsableState.Never)]
388 /// This specifies visual types.
390 /// <since_tizen> 3 </since_tizen>
394 /// The index for the visual type.
396 /// <since_tizen> 3 </since_tizen>
400 /// Renders a solid color as an internal border to the control's quad.
404 /// Renders a solid color to the control's quad.
408 /// Renders a smooth transition of colors to the control's quad.
412 /// Renders an image into the control's quad.
416 /// Renders a mesh using an "obj" file, optionally with textures provided by an "mtl" file.
420 /// Renders a simple 3D shape, such as a cube or a sphere.
424 /// Renders a simple wire-frame outlining a quad.
432 /// Renders an NPatch image.
436 /// Renders an SVG image.
440 /// Renders a animated image (animated GIF).
446 [EditorBrowsable(EditorBrowsableState.Never)]
447 Arc = AnimatedImage + 3,
451 /// This specifies visual properties.
453 /// <since_tizen> 3 </since_tizen>
454 public struct Property
459 /// <since_tizen> 3 </since_tizen>
460 public static readonly int Type = NDalic.VISUAL_PROPERTY_TYPE;
464 /// <since_tizen> 3 </since_tizen>
465 public static readonly int Shader = NDalic.VISUAL_PROPERTY_SHADER;
469 /// <since_tizen> 3 </since_tizen>
470 public static readonly int Transform = NDalic.VISUAL_PROPERTY_TRANSFORM;
472 /// PremultipliedAlpha.
474 /// <since_tizen> 3 </since_tizen>
475 public static readonly int PremultipliedAlpha = NDalic.VISUAL_PROPERTY_PREMULTIPLIED_ALPHA;
479 /// <since_tizen> 3 </since_tizen>
480 public static readonly int MixColor = NDalic.VISUAL_PROPERTY_MIX_COLOR;
484 /// <since_tizen> 3 </since_tizen>
485 public static readonly int Opacity = NDalic.VISUAL_PROPERTY_MIX_COLOR + 1;
487 /// The fitting mode of the visual.
489 /// <since_tizen> 5 </since_tizen>
490 public static readonly int VisualFittingMode = NDalic.VISUAL_PROPERTY_MIX_COLOR + 2;
492 /// The corner radius of the visual.
494 [EditorBrowsable(EditorBrowsableState.Never)]
495 public static readonly int CornerRadius = NDalic.VISUAL_PROPERTY_MIX_COLOR + 3;
497 /// The corner radius policy of the visual.
498 /// Whether the corner radius value is relative (percentage [0.0f to 1.0f] of the visual size) or absolute (in world units).
500 [EditorBrowsable(EditorBrowsableState.Never)]
501 public static readonly int CornerRadiusPolicy = NDalic.VISUAL_PROPERTY_MIX_COLOR + 4;
505 /// This specifies shader properties.
507 /// <since_tizen> 3 </since_tizen>
508 public struct ShaderProperty
511 /// Vertex shader code
513 /// <since_tizen> 3 </since_tizen>
514 public static readonly int VertexShader = NDalic.VISUAL_SHADER_VERTEX;
516 /// Fragment shader code
518 /// <since_tizen> 3 </since_tizen>
519 public static readonly int FragmentShader = NDalic.VISUAL_SHADER_FRAGMENT;
521 /// How to subdivide the grid along X
523 /// <since_tizen> 3 </since_tizen>
524 public static readonly int ShaderSubdivideGridX = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_X;
526 /// How to subdivide the grid along Y
528 /// <since_tizen> 3 </since_tizen>
529 public static readonly int ShaderSubdivideGridY = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_Y;
533 /// <since_tizen> 3 </since_tizen>
534 public static readonly int ShaderHints = NDalic.VISUAL_SHADER_HINTS;
538 /// This specifies visaul align types.
540 /// <since_tizen> 3 </since_tizen>
541 public enum AlignType
546 /// <since_tizen> 3 </since_tizen>
551 /// <since_tizen> 3 </since_tizen>
556 /// <since_tizen> 3 </since_tizen>
561 /// <since_tizen> 3 </since_tizen>
566 /// <since_tizen> 3 </since_tizen>
571 /// <since_tizen> 3 </since_tizen>
576 /// <since_tizen> 3 </since_tizen>
581 /// <since_tizen> 3 </since_tizen>
586 /// <since_tizen> 3 </since_tizen>
592 /// This specifies properties of the BorderVisual.
594 /// <since_tizen> 3 </since_tizen>
595 public struct BorderVisualProperty
598 /// The color of the border.
600 /// <since_tizen> 3 </since_tizen>
601 public static readonly int Color = NDalic.BORDER_VISUAL_COLOR;
603 /// The width of the border (in pixels).
605 /// <since_tizen> 3 </since_tizen>
606 public static readonly int Size = NDalic.BORDER_VISUAL_SIZE;
608 /// Whether anti-aliasing of the border is required.
610 /// <since_tizen> 3 </since_tizen>
611 public static readonly int AntiAliasing = NDalic.BORDER_VISUAL_ANTI_ALIASING;
615 /// This specifies properties of the ColorVisual.
617 /// <since_tizen> 3 </since_tizen>
618 public struct ColorVisualProperty
621 /// The solid color required.
623 /// <since_tizen> 3 </since_tizen>
624 public static readonly int MixColor = NDalic.COLOR_VISUAL_MIX_COLOR;
626 /// Whether to render if the MixColor is transparent.
628 /// <since_tizen> 5 </since_tizen>
629 public static readonly int RenderIfTransparent = NDalic.COLOR_VISUAL_MIX_COLOR + 1;
631 /// Then radius value for the area to blur.
633 [EditorBrowsable(EditorBrowsableState.Never)]
634 public static readonly int BlurRadius = NDalic.COLOR_VISUAL_MIX_COLOR + 2;
638 /// This specifies properties of the GradientVisual.
640 /// <since_tizen> 3 </since_tizen>
641 public struct GradientVisualProperty
644 /// The start position of a linear gradient.
646 /// <since_tizen> 3 </since_tizen>
647 public static readonly int StartPosition = NDalic.GRADIENT_VISUAL_START_POSITION;
649 /// The end position of a linear gradient.
651 /// <since_tizen> 3 </since_tizen>
652 public static readonly int EndPosition = NDalic.GRADIENT_VISUAL_END_POSITION;
654 /// The center point of a radial gradient.
656 /// <since_tizen> 3 </since_tizen>
657 public static readonly int Center = NDalic.GRADIENT_VISUAL_CENTER;
659 /// The size of the radius of a radial gradient.
661 /// <since_tizen> 3 </since_tizen>
662 public static readonly int Radius = NDalic.GRADIENT_VISUAL_RADIUS;
664 /// All the stop offsets.
666 /// <since_tizen> 3 </since_tizen>
667 public static readonly int StopOffset = NDalic.GRADIENT_VISUAL_STOP_OFFSET;
669 /// The color at the stop offsets.
671 /// <since_tizen> 3 </since_tizen>
672 public static readonly int StopColor = NDalic.GRADIENT_VISUAL_STOP_COLOR;
674 /// Defines the coordinate system for certain attributes of the points in a gradient.
676 /// <since_tizen> 3 </since_tizen>
677 public static readonly int Units = NDalic.GRADIENT_VISUAL_UNITS;
679 /// Indicates what happens if the gradient starts or ends inside the bounds of the target rectangle.
681 /// <since_tizen> 3 </since_tizen>
682 public static readonly int SpreadMethod = NDalic.GRADIENT_VISUAL_SPREAD_METHOD;
686 /// This specifies properties of the ImageVisual.
688 /// <since_tizen> 3 </since_tizen>
689 public struct ImageVisualProperty
692 /// The URL of the image.
694 /// <since_tizen> 3 </since_tizen>
695 public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
698 /// Fitting options, used when resizing images to fit desired dimensions.
700 /// <since_tizen> 3 </since_tizen>
701 public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
704 /// Filtering options, used when resizing images to sample original pixels.
706 /// <since_tizen> 3 </since_tizen>
707 public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
710 /// The desired image width.
712 /// <since_tizen> 3 </since_tizen>
713 public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
716 /// The desired image height.
718 /// <since_tizen> 3 </since_tizen>
719 public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
722 /// Whether to load the image synchronously.
724 /// <since_tizen> 3 </since_tizen>
725 public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
728 /// If true, only draws the borders.
730 /// <since_tizen> 3 </since_tizen>
731 public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
734 /// The image area to be displayed.
736 /// <since_tizen> 3 </since_tizen>
737 public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
740 /// The wrap mode for u coordinate.
742 /// <since_tizen> 3 </since_tizen>
743 public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
746 /// The wrap mode for v coordinate.
748 /// <since_tizen> 3 </since_tizen>
749 public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
752 /// The border of the image.
754 /// <since_tizen> 3 </since_tizen>
755 public static readonly int Border = NDalic.IMAGE_VISUAL_BORDER;
758 /// Whether to use the texture atlas.
760 /// <since_tizen> 5 </since_tizen>
761 public static readonly int Atlasing = NDalic.IMAGE_VISUAL_BORDER + 1;
764 /// The URL of the alpha mask image.
766 /// <since_tizen> 3 </since_tizen>
767 public static readonly int AlphaMaskURL = NDalic.IMAGE_VISUAL_ALPHA_MASK_URL;
770 /// Defines the batch size for pre-loading images in the AnimatedImageVisual
772 /// <since_tizen> 4 </since_tizen>
773 public static readonly int BatchSize = NDalic.IMAGE_VISUAL_BATCH_SIZE;
776 /// Defines the cache size for loading images in the AnimatedImageVisual
778 /// <since_tizen> 4 </since_tizen>
779 public static readonly int CacheSize = NDalic.IMAGE_VISUAL_CACHE_SIZE;
782 /// The number of milliseconds between each frame in the AnimatedImageVisual
784 /// <since_tizen> 4 </since_tizen>
785 public static readonly int FrameDelay = NDalic.IMAGE_VISUAL_FRAME_DELAY;
788 /// The scale factor to apply to the content image before masking.
790 /// <since_tizen> 4 </since_tizen>
791 public static readonly int MaskContentScale = NDalic.IMAGE_VISUAL_MASK_CONTENT_SCALE;
794 /// Whether to crop image to mask or scale mask to fit image
796 /// <since_tizen> 4 </since_tizen>
797 public static readonly int CropToMask = NDalic.IMAGE_VISUAL_CROP_TO_MASK;
800 /// The policy to determine when an image should be loaded.
802 /// <since_tizen> 5 </since_tizen>
803 public static readonly int LoadPolicy = NDalic.IMAGE_VISUAL_LOAD_POLICY;
806 /// The policy to determine when an image should no longer be cached.
808 /// <since_tizen> 5 </since_tizen>
809 public static readonly int ReleasePolicy = NDalic.IMAGE_VISUAL_RELEASE_POLICY;
812 /// Determines if image orientation should be corrected so that the image displays as it was intended.
814 /// <since_tizen> 5 </since_tizen>
815 public static readonly int OrientationCorrection = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION;
818 /// Overlays the auxiliary image on top of an NPatch image.
820 /// <since_tizen> 5 </since_tizen>
821 public static readonly int AuxiliaryImageURL = NDalic.IMAGE_VISUAL_AUXILIARY_IMAGE_URL;
824 /// Alpha value for the auxiliary image, without affecting the underlying NPatch image
826 /// <since_tizen> 5 </since_tizen>
827 public static readonly int AuxiliaryImageAlpha = NDalic.IMAGE_VISUAL_AUXILIARY_IMAGE_ALPHA;
830 /// The number of times the AnimatedImageVisual will be looped.
831 /// The default is -1. If the value is less than 0, loop unlimited. Otherwise, loop loopCount times.
833 /// <since_tizen> 5 </since_tizen>
834 public static readonly int LoopCount = NDalic.IMAGE_VISUAL_LOOP_COUNT;
837 /// @brief The playing range the AnimatedVectorImageVisual will use.
838 /// Animation will play between the values specified.The array can only have two values, and more will be ignored.
839 /// Both values should be between 0 and the total frame number, otherwise they will be ignored.
840 /// If the range provided is not in proper order (minimum, maximum), it will be reordered.
841 /// @details Name "playRange", Type Property::ARRAY of Property::INTEGER
842 /// @note Default 0 and the total frame number.
845 /// Hidden API (Inhouse API)
847 [EditorBrowsable(EditorBrowsableState.Never)]
848 public static readonly int PlayRange = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 4;
851 /// @brief The playing state the AnimatedVectorImageVisual will use.
852 /// @details Name "playState", type PlayState (Property::INTEGER)
853 /// @note This property is read-only.
856 /// Hidden API (Inhouse API)
858 [EditorBrowsable(EditorBrowsableState.Never)]
859 public static readonly int PlayState = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 5;
862 /// @brief The current frame number the AnimatedVectorImageVisual will use.
863 /// @details Name "currentFrameNumber", Type Property::INTEGER, between[0, the maximum frame number] or between the play range if specified
864 /// @note This property is read-only.
869 [EditorBrowsable(EditorBrowsableState.Never)]
870 public static readonly int CurrentFrameNumber = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 6;
873 /// @brief The total frame number the AnimatedVectorImageVisual will use.
874 /// @details Name "totalFrameNumber", Type Property::INTEGER.
875 /// @note This property is read-only.
880 [EditorBrowsable(EditorBrowsableState.Never)]
881 public static readonly int TotalFrameNumber = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 7;
884 /// @brief The stop behavior the AnimatedVectorImageVisual will use.
885 /// @details Name "stopBehavior", Type StopBehavior::Type (Property::INTEGER)
886 /// @note Default value is StopBehavior::CURRENT_FRAME.
891 [EditorBrowsable(EditorBrowsableState.Never)]
892 public static readonly int StopBehavior = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 8;
895 /// @brief The looping mode the AnimatedVectorImageVisual will use.
896 /// @details Name "loopingMode", Type LoopingMode::Type (Property::INTEGER)
897 /// @note Default value is LoopingMode::RESTART.
902 [EditorBrowsable(EditorBrowsableState.Never)]
903 public static readonly int LoopingMode = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 9;
906 /// @brief The content information the AnimatedVectorImageVisual will use.
907 /// @details Name "contentInfo", Type Property::MAP.
908 /// The map contains the layer name as a key and Property::Array as a value.
909 /// And the array contains 2 integer values which are the frame numbers, the start frame number and the end frame number of the layer.
910 /// @note This property is read-only.
915 [EditorBrowsable(EditorBrowsableState.Never)]
916 public static readonly int ContentInfo = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 10;
919 /// @brief Whether to redraw the image when the visual is scaled down.
920 /// @details Name "redrawInScalingDown", type Property::BOOLEAN.
921 /// @note It is used in the AnimatedVectorImageVisual.The default is true.
926 [EditorBrowsable(EditorBrowsableState.Never)]
927 public static readonly int RedrawInScalingDown = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION + 11;
931 /// This specifies properties of the MeshVisual.
933 /// <since_tizen> 3 </since_tizen>
934 public struct MeshVisualProperty
937 /// The location of the ".obj" file.
939 /// <since_tizen> 3 </since_tizen>
940 public static readonly int ObjectURL = NDalic.MESH_VISUAL_OBJECT_URL;
942 /// The location of the ".mtl" file.
944 /// <since_tizen> 3 </since_tizen>
945 public static readonly int MaterialtURL = NDalic.MESH_VISUAL_MATERIAL_URL;
947 /// Path to the directory the textures (including gloss and normal) are stored in.
949 /// <since_tizen> 3 </since_tizen>
950 public static readonly int TexturesPath = NDalic.MESH_VISUAL_TEXTURES_PATH;
952 /// Sets the type of shading mode that the mesh will use.
954 /// <since_tizen> 3 </since_tizen>
955 public static readonly int ShadingMode = NDalic.MESH_VISUAL_SHADING_MODE;
957 /// Whether to use mipmaps for textures or not.
959 /// <since_tizen> 3 </since_tizen>
960 public static readonly int UseMipmapping = NDalic.MESH_VISUAL_USE_MIPMAPPING;
962 /// Whether to average normals at each point to smooth textures or not.
964 /// <since_tizen> 3 </since_tizen>
965 public static readonly int UseSoftNormals = NDalic.MESH_VISUAL_USE_SOFT_NORMALS;
967 /// The position, in stage space, of the point light that applies lighting to the model.
969 /// <since_tizen> 3 </since_tizen>
970 public static readonly int LightPosition = NDalic.MESH_VISUAL_LIGHT_POSITION;
974 /// This specifies properties of the PrimitiveVisual.
976 /// <since_tizen> 3 </since_tizen>
977 public struct PrimitiveVisualProperty
980 /// The specific shape to render.
982 /// <since_tizen> 3 </since_tizen>
983 public static readonly int Shape = NDalic.PRIMITIVE_VISUAL_SHAPE;
985 /// The color of the shape.
987 /// <since_tizen> 3 </since_tizen>
988 public static readonly int MixColor = NDalic.PRIMITIVE_VISUAL_MIX_COLOR;
990 /// The number of slices as you go around the shape.
992 /// <since_tizen> 3 </since_tizen>
993 public static readonly int Slices = NDalic.PRIMITIVE_VISUAL_SLICES;
995 /// The number of stacks as you go down the shape.
997 /// <since_tizen> 3 </since_tizen>
998 public static readonly int Stacks = NDalic.PRIMITIVE_VISUAL_STACKS;
1000 /// The scale of the radius of the top circle of a conical frustrum.
1002 /// <since_tizen> 3 </since_tizen>
1003 public static readonly int ScaleTopRadius = NDalic.PRIMITIVE_VISUAL_SCALE_TOP_RADIUS;
1005 /// The scale of the radius of the bottom circle of a conical frustrum.
1007 /// <since_tizen> 3 </since_tizen>
1008 public static readonly int ScaleBottomRadius = NDalic.PRIMITIVE_VISUAL_SCALE_BOTTOM_RADIUS;
1010 /// The scale of the height of a conic.
1012 /// <since_tizen> 3 </since_tizen>
1013 public static readonly int ScaleHeight = NDalic.PRIMITIVE_VISUAL_SCALE_HEIGHT;
1015 /// The scale of the radius of a cylinder.
1017 /// <since_tizen> 3 </since_tizen>
1018 public static readonly int ScaleRadius = NDalic.PRIMITIVE_VISUAL_SCALE_RADIUS;
1020 /// The dimensions of a cuboid. Scales in the same fashion as a 9-patch image.
1022 /// <since_tizen> 3 </since_tizen>
1023 public static readonly int ScaleDimensions = NDalic.PRIMITIVE_VISUAL_SCALE_DIMENSIONS;
1025 /// Determines how bevelled the cuboid should be, based off the smallest dimension.
1027 /// <since_tizen> 3 </since_tizen>
1028 public static readonly int BevelPercentage = NDalic.PRIMITIVE_VISUAL_BEVEL_PERCENTAGE;
1030 /// Defines how smooth the bevelled edges should be.
1032 /// <since_tizen> 3 </since_tizen>
1033 public static readonly int BevelSmoothness = NDalic.PRIMITIVE_VISUAL_BEVEL_SMOOTHNESS;
1035 /// The position, in stage space, of the point light that applies lighting to the model.
1037 /// <since_tizen> 3 </since_tizen>
1038 public static readonly int LightPosition = NDalic.PRIMITIVE_VISUAL_LIGHT_POSITION;
1042 /// This specifies properties of the TextVisual.
1044 /// <since_tizen> 3 </since_tizen>
1045 public struct TextVisualProperty
1048 /// The text to display in UTF-8 format.
1050 /// <since_tizen> 3 </since_tizen>
1051 public static readonly int Text = NDalic.TEXT_VISUAL_TEXT;
1053 /// The requested font family to use.
1055 /// <since_tizen> 3 </since_tizen>
1056 public static readonly int FontFamily = NDalic.TEXT_VISUAL_FONT_FAMILY;
1058 /// The requested font style to use.
1060 /// <since_tizen> 3 </since_tizen>
1061 public static readonly int FontStyle = NDalic.TEXT_VISUAL_FONT_STYLE;
1063 /// The size of font in points.
1065 /// <since_tizen> 3 </since_tizen>
1066 public static readonly int PointSize = NDalic.TEXT_VISUAL_POINT_SIZE;
1068 /// The single-line or multi-line layout option.
1070 /// <since_tizen> 3 </since_tizen>
1071 public static readonly int MultiLine = NDalic.TEXT_VISUAL_MULTI_LINE;
1073 /// The line horizontal alignment.
1075 /// <since_tizen> 3 </since_tizen>
1076 public static readonly int HorizontalAlignment = NDalic.TEXT_VISUAL_HORIZONTAL_ALIGNMENT;
1078 /// The line vertical alignment.
1080 /// <since_tizen> 3 </since_tizen>
1081 public static readonly int VerticalAlignment = NDalic.TEXT_VISUAL_VERTICAL_ALIGNMENT;
1083 /// The color of the text.
1085 /// <since_tizen> 3 </since_tizen>
1086 public static readonly int TextColor = NDalic.TEXT_VISUAL_TEXT_COLOR;
1088 /// Whether the mark-up processing is enabled.
1090 /// <since_tizen> 3 </since_tizen>
1091 public static readonly int EnableMarkup = NDalic.TEXT_VISUAL_ENABLE_MARKUP;
1093 /// The shadow parameters.
1095 /// <since_tizen> 5 </since_tizen>
1096 public static readonly int Shadow = NDalic.TEXT_VISUAL_ENABLE_MARKUP + 1;
1098 /// The default underline parameters.
1100 /// <since_tizen> 5 </since_tizen>
1101 public static readonly int Underline = NDalic.TEXT_VISUAL_ENABLE_MARKUP + 2;
1103 /// The default outline parameters.
1105 /// <since_tizen> 5 </since_tizen>
1106 public static readonly int Outline = NDalic.TEXT_VISUAL_ENABLE_MARKUP + 3;
1108 /// The default text background parameters.
1110 /// <since_tizen> 5 </since_tizen>
1111 public static readonly int Background = NDalic.TEXT_VISUAL_ENABLE_MARKUP + 4;
1115 /// This specifies properties of the NpatchImageVisual.
1117 /// <since_tizen> 3 </since_tizen>
1118 public struct NpatchImageVisualProperty
1121 /// The URL of the image.
1123 /// <since_tizen> 3 </since_tizen>
1124 public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
1126 /// Fitting options, used when resizing images to fit desired dimensions.
1128 /// <since_tizen> 3 </since_tizen>
1129 public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
1131 /// Filtering options, used when resizing images to sample original pixels.
1133 /// <since_tizen> 3 </since_tizen>
1134 public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
1136 /// The desired image width.
1138 /// <since_tizen> 3 </since_tizen>
1139 public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
1141 /// The desired image height.
1143 /// <since_tizen> 3 </since_tizen>
1144 public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
1146 /// Whether to load the image synchronously.
1148 /// <since_tizen> 3 </since_tizen>
1149 public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
1151 /// If true, only draws the borders.
1153 /// <since_tizen> 3 </since_tizen>
1154 public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
1156 /// The image area to be displayed.
1158 /// <since_tizen> 3 </since_tizen>
1159 public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
1161 /// The wrap mode for u coordinate.
1163 /// <since_tizen> 3 </since_tizen>
1164 public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
1166 /// The wrap mode for v coordinate.
1168 /// <since_tizen> 3 </since_tizen>
1169 public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
1171 /// The border of the image.
1173 /// <since_tizen> 3 </since_tizen>
1174 public static readonly int Border = NDalic.IMAGE_VISUAL_WRAP_MODE_V + 1;
1178 /// This specifies properties of the ArcVisual.
1180 internal struct ArcVisualProperty
1183 /// The thickness of the arc.
1185 /// <remarks>The value is float type.</remarks>
1186 /// <remarks>This is mandatory property.</remarks>
1187 internal static readonly int Thickness = NDalic.IMAGE_VISUAL_URL;
1190 /// The start angle where the arc begins in degrees.
1192 /// <remarks>The value is float type.</remarks>
1193 /// <remarks>The property of optional. The default value is 0.</remarks>
1194 internal static readonly int StartAngle = Thickness + 1;
1197 /// The sweep angle of the arc in degrees.
1199 /// <remarks>The value is float type.</remarks>
1200 /// <remarks>The property of optional. The default value is 360.</remarks>
1201 internal static readonly int SweepAngle = Thickness + 2;
1204 /// The cap style of the arc.
1207 /// The value is integer type.
1208 /// The value 0 means butt, the arc does not extend beyond its two endpoints.
1209 /// The value 1 means round, the arc will be extended by a half circle with the center at the end.
1211 /// <remarks>The property of optional. The default value is 0 (butt).</remarks>
1212 internal static readonly int Cap = Thickness + 3;
1216 /// Enumeration for Circular alignment.
1217 /// The @p horizontalAlignment and @p verticalAlignment can be used to align the text within the text area.
1219 [EditorBrowsable(EditorBrowsableState.Never)]
1220 public enum CircularAlignment
1223 /// Texts place at the begin of Circular direction.
1225 [Description("BEGIN")]
1228 /// Texts place at the center of Circular direction.
1230 [Description("CENTER")]
1233 /// Texts place at the end of Circular direction.
1235 [Description("END")]
1240 /// Enumeration for Text Layout.
1242 [EditorBrowsable(EditorBrowsableState.Never)]
1243 public enum TextLayout
1248 [Description("singleLine")]
1253 [Description("multiLine")]
1258 [Description("circular")]
1263 /// Defines how a color is blended.
1265 /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API.
1266 [EditorBrowsable(EditorBrowsableState.Never)]
1267 public enum ColorBlendingMode
1274 /// The color is multiplied by another one.