// Copyright (c) 2019 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.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
using System.ComponentModel;
namespace Tizen.NUI
{
///
/// Specifies the release policy types.
/// Decides if the image should be cached in different conditions.
///
/// 5
public enum ReleasePolicyType
{
///
/// Image is released when visual detached from scene.
///
Detached = 0,
///
/// Image is only released when visual is destroyed.
///
Destroyed,
///
/// Image is not released.
///
Never
}
///
/// Specifies the load policy types.
/// Decides when the image texture should be loaded.
///
/// 5
public enum LoadPolicyType
{
///
/// Load texture once the image source has been provided. Even if not being used yet.
///
Immediate = 0,
///
/// Only load texture once the visual is attached, when the image needs to be shown.
///
Attached
}
///
/// Enumeration for the horizontal alignment of objects such as texts and layout items.
///
/// 3
public enum HorizontalAlignment
{
///
/// Objects are placed at the beginning of the horizontal direction.
///
[Description("BEGIN")]
Begin,
///
/// Objects are placed at the center of the horizontal direction.
///
[Description("CENTER")]
Center,
///
/// Objects are placed at the end of the horizontal direction.
///
[Description("END")]
End
}
///
/// Enumeration for the vertical alignment of objects such as texts and layout items.
///
/// 3
public enum VerticalAlignment
{
///
/// Objects are placed at the top of the vertical direction.
///
[Description("TOP")]
Top,
///
/// Objects are placed at the center of the vertical direction.
///
[Description("CENTER")]
Center,
///
/// Objects are placed at the bottom of the vertical direction.
///
[Description("BOTTOM")]
Bottom
}
///
/// This specifies wrap mode types.
/// 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.
///
/// 3
public enum WrapModeType
{
///
/// The default value.
///
Default = 0,
///
/// Clamp to edge.
///
ClampToEdge,
///
/// Repeat.
///
Repeat,
///
/// Mirrored repeat.
///
MirroredRepeat
}
///
/// This specifies fitting mode types. Fitting options, used when resizing images to fit desired dimensions.
/// A fitting mode controls the region of a loaded image to be mapped to the desired image rectangle.
/// All fitting modes preserve the aspect ratio of the image contents.
///
/// 3
public enum FittingModeType
{
///
/// Full-screen image display: Limit loaded image resolution to device resolution using the ShrinkToFit mode.
///
ShrinkToFit,
///
/// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
///
ScaleToFill,
///
/// Image columns: Limit loaded image resolution to column width using the FitWidth mode.
///
FitWidth,
///
/// Image rows: Limit loaded image resolution to row height using the FitHeight mode.
///
FitHeight,
///
/// Image displayed in its original size (no scaling) using the Center mode.
///
[EditorBrowsable(EditorBrowsableState.Never)]
Center,
///
/// Image stretched to fill the desired area (aspect ratio could be changed) using the Fill mode.
///
[EditorBrowsable(EditorBrowsableState.Never)]
Fill
}
///
/// This specifies sampling mode types. Filtering options are used when resizing images to sample original pixels.
/// A SamplingMode controls how pixels in an input image are sampled and combined to generate each pixel of a destination image during scaling.
/// NoFilter and Box modes do not guarantee that the output pixel array exactly matches the rectangle specified by the desired dimensions and the FittingMode,
/// but all other filter modes do if the desired dimensions are not more than the raw dimensions of the input image file.
///
/// 3
public enum SamplingModeType
{
///
/// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size.
/// This is the default.
///
Box,
///
/// For each output pixel, read one input pixel.
///
Nearest,
///
/// For each output pixel, read a quad of four input pixels and write a weighted average of them.
///
Linear,
///
/// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size,
/// then for each output pixel, read one pixel from the last level of box filtering.
///
BoxThenNearest,
///
/// 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.
///
BoxThenLinear,
///
/// 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.
///
NoFilter,
///
/// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image.
///
DontCare
}
///
/// The type of coordinate system for certain attributes of the points in a gradient.
///
/// 3
public enum GradientVisualUnitsType
{
///
/// 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).
///
ObjectBoundingBox,
///
/// 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).
///
UserSpace
}
///
/// This specifies SpreadMethod types.
/// SpreadMethod defines what happens if the gradient starts or ends inside the bounds of the target rectangle.
///
/// 3
public enum GradientVisualSpreadMethodType
{
///
/// Uses the terminal colors of the gradient to fill the remainder of the quad.
///
Pad,
///
/// Reflects the gradient pattern start-to-end, end-to-start, start-to-end, etc. until the quad is filled.
///
Reflect,
///
/// Repeats the gradient pattern start-to-end, start-to-end, start-to-end, etc. until the quad is filled.
///
Repeat
}
///
/// The shading mode used by the mesh visual.
///
/// 3
public enum MeshVisualShadingModeValue
{
///
/// *Simplest*. One color that is lit by ambient and diffuse lighting.
///
TexturelessWithDiffuseLighting,
///
/// Uses only the visual image textures provided with specular lighting in addition to ambient and diffuse lighting.
///
TexturedWithSpecularLighting,
///
/// Uses all textures provided including gloss, normal, and texture map along with specular, ambient, and diffuse lighting.
///
TexturedWithDetailedSpecularLighting
}
///
/// The primitive shape to render as a primitive visual.
///
/// 3
public enum PrimitiveVisualShapeType
{
///
/// A perfectly round geometrical object in the three-dimensional space.
///
Sphere,
///
/// The area bound between two circles, i.e., a cone with the tip removed.
///
ConicalFrustrum,
///
/// Equivalent to a conical frustum with the top radius of zero.
/// Equivalent to a conical frustum with the top radius of zero.
Cone,
///
/// Equivalent to a conical frustum with the top radius of zero.
///
Cylinder,
///
/// Equivalent to a conical frustum with equal radii for the top and bottom circles.
///
Cube,
///
/// Equivalent to a bevelled cube with a bevel percentage of zero.
///
Octahedron,
///
/// Equivalent to a bevelled cube with a bevel percentage of one.
///
BevelledCube
}
///
/// The values of this enum determine how the visual should fit into the view.
///
/// 5
public enum VisualFittingModeType
{
///
/// The visual should be scaled to fit, preserving aspect ratio.
///
FitKeepAspectRatio,
///
/// The visual should be stretched to fill, not preserving aspect ratio.
///
Fill,
///
/// The visual should be scaled to fit, preserving aspect ratio. The visual will be filled without empty area, and outside is cropped away.
///
[EditorBrowsable(EditorBrowsableState.Never)]
OverFitKeepAspectRatio,
///
/// The visual should keep original size of image. it is not scaled and not stretched.
///
[EditorBrowsable(EditorBrowsableState.Never)]
Center,
///
/// The visual should be scaled to fit, preserving aspect ratio. Height is scaled proportionately to maintain aspect ratio.
///
[EditorBrowsable(EditorBrowsableState.Never)]
FitHeight,
///
/// The visual should be scaled to fit, preserving aspect ratio. WIDTH is scaled proportionately to maintain aspect ratio.
///
[EditorBrowsable(EditorBrowsableState.Never)]
FitWidth,
}
///
/// This specifies policy types that could be used by the transform for the offset or size.
///
/// 3
public enum VisualTransformPolicyType
{
///
/// Relative to the control (percentage [0.0f to 1.0f] of the control).
///
Relative = 0,
///
/// Absolute value in world units.
///
Absolute = 1
}
///
/// This specifies all the transform property types.
///
/// 3
public enum VisualTransformPropertyType
{
///
/// Offset of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
///
Offset,
///
/// Size of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
///
Size,
///
/// The origin of the visual within its control area.
///
Origin,
///
/// The anchor-point of the visual.
///
AnchorPoint,
///
/// Whether the x or y offset values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
///
OffsetPolicy,
///
/// Whether the width or the height size values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
///
SizePolicy,
///
/// Extra size value that will be added to the computed visual size.
///
[EditorBrowsable(EditorBrowsableState.Never)]
ExtraSize,
}
///
/// This specifies visual types.
///
/// 3
public struct Visual
{
///
/// The index for the visual type.
///
/// 3
public enum Type
{
///
/// Renders a solid color as an internal border to the control's quad.
///
Border,
///
/// Renders a solid color to the control's quad.
///
Color,
///
/// Renders a smooth transition of colors to the control's quad.
///
Gradient,
///
/// Renders an image into the control's quad.
///
Image,
///
/// Renders a mesh using an "obj" file, optionally with textures provided by an "mtl" file.
///
Mesh,
///
/// Renders a simple 3D shape, such as a cube or a sphere.
///
Primitive,
///
/// Renders a simple wire-frame outlining a quad.
///
Wireframe,
///
/// Renders text.
///
Text,
///
/// Renders an NPatch image.
///
NPatch,
///
/// Renders an SVG image.
///
SVG,
///
/// Renders a animated image (animated GIF).
///
AnimatedImage,
///
/// Renders an animated gradient.
///
[EditorBrowsable(EditorBrowsableState.Never)]
AnimatedGradient = Visual.Type.AnimatedImage + 1,
///
/// Renders an animated vector image.
///
[EditorBrowsable(EditorBrowsableState.Never)]
AnimatedVectorImage = Visual.Type.AnimatedImage + 2,
///
/// Renders an arc.
///
[EditorBrowsable(EditorBrowsableState.Never)]
Arc = AnimatedImage + 3,
///
/// Keyword for invalid visual type. (NUI only)
///
[EditorBrowsable(EditorBrowsableState.Never)]
Invalid = Border - 1,
}
///
/// This specifies visual properties.
///
/// 3
[System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1716: Identifiers should not match keywords")]
public struct Property
{
///
/// Type.
///
/// 3
public static readonly int Type = NDalic.VisualPropertyType;
///
/// Shader.
///
/// 3
public static readonly int Shader = NDalic.VisualPropertyShader;
///
/// Transform.
///
/// 3
public static readonly int Transform = NDalic.VisualPropertyTransform;
///
/// PremultipliedAlpha.
///
/// 3
public static readonly int PremultipliedAlpha = NDalic.VisualPropertyPremultipliedAlpha;
///
/// MixColor.
///
/// 3
public static readonly int MixColor = NDalic.VisualPropertyMixColor;
///
/// Opacity.
///
/// 3
public static readonly int Opacity = NDalic.VisualPropertyMixColor + 1;
///
/// The fitting mode of the visual.
///
/// 5
public static readonly int VisualFittingMode = NDalic.VisualPropertyMixColor + 2;
///
/// The corner radius of the visual.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int CornerRadius = NDalic.VisualPropertyMixColor + 3;
///
/// The corner radius policy of the visual.
/// Whether the corner radius value is relative (percentage [0.0f to 1.0f] of the visual size) or absolute (in world units).
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int CornerRadiusPolicy = NDalic.VisualPropertyMixColor + 4;
///
/// The borderline width of the visual.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int BorderlineWidth = NDalic.VisualPropertyMixColor + 5;
///
/// The borderline color of the visual.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int BorderlineColor = NDalic.VisualPropertyMixColor + 6;
///
/// The borderline offset of the visual.
/// Relative position of borderline. (percentage [-1.0f to 1.0f]).
/// If -1.0f, borderline draw inside of visual
/// If 1.0f, borderline draw outside of visual
/// If 0.0f, half draw inside and half draw outside of visual
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int BorderlineOffset = NDalic.VisualPropertyMixColor + 7;
}
///
/// This specifies shader properties.
///
/// 3
public struct ShaderProperty
{
///
/// Vertex shader code
///
/// 3
public static readonly int VertexShader = NDalic.VisualShaderVertex;
///
/// Fragment shader code
///
/// 3
public static readonly int FragmentShader = NDalic.VisualShaderFragment;
///
/// How to subdivide the grid along X
///
/// 3
public static readonly int ShaderSubdivideGridX = NDalic.VisualShaderSubdivideGridX;
///
/// How to subdivide the grid along Y
///
/// 3
public static readonly int ShaderSubdivideGridY = NDalic.VisualShaderSubdivideGridY;
///
/// Bitmask of hints
///
/// 3
public static readonly int ShaderHints = NDalic.VisualShaderHints;
}
///
/// This specifies visual align types.
///
/// 3
public enum AlignType
{
///
/// TopBegin
///
/// 3
TopBegin = 0,
///
/// TopCenter
///
/// 3
TopCenter,
///
/// TopEnd
///
/// 3
TopEnd,
///
/// CenterBegin
///
/// 3
CenterBegin,
///
/// Center
///
/// 3
Center,
///
/// CenterEnd
///
/// 3
CenterEnd,
///
/// BottomBegin
///
/// 3
BottomBegin,
///
/// BottomCenter
///
/// 3
BottomCenter,
///
/// BottomEnd
///
/// 3
BottomEnd
}
}
///
/// This specifies properties of the BorderVisual.
///
/// 3
public struct BorderVisualProperty
{
///
/// The color of the border.
///
/// 3
public static readonly int Color = NDalic.BorderVisualColor;
///
/// The width of the border (in pixels).
///
/// 3
public static readonly int Size = NDalic.BorderVisualSize;
///
/// Whether anti-aliasing of the border is required.
///
/// 3
public static readonly int AntiAliasing = NDalic.BorderVisualAntiAliasing;
}
///
/// This specifies properties of the ColorVisual.
///
/// 3
public struct ColorVisualProperty
{
///
/// The solid color required.
///
/// 3
public static readonly int MixColor = NDalic.ColorVisualMixColor;
///
/// Whether to render if the MixColor is transparent.
///
/// 5
public static readonly int RenderIfTransparent = NDalic.ColorVisualMixColor + 1;
///
/// Then radius value for the area to blur.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int BlurRadius = NDalic.ColorVisualMixColor + 2;
}
///
/// This specifies properties of the GradientVisual.
///
/// 3
public struct GradientVisualProperty
{
///
/// The start position of a linear gradient.
///
/// 3
public static readonly int StartPosition = NDalic.GradientVisualStartPosition;
///
/// The end position of a linear gradient.
///
/// 3
public static readonly int EndPosition = NDalic.GradientVisualEndPosition;
///
/// The center point of a radial gradient.
///
/// 3
public static readonly int Center = NDalic.GradientVisualCenter;
///
/// The size of the radius of a radial gradient.
///
/// 3
public static readonly int Radius = NDalic.GradientVisualRadius;
///
/// All the stop offsets.
///
/// 3
public static readonly int StopOffset = NDalic.GradientVisualStopOffset;
///
/// The color at the stop offsets.
///
/// 3
public static readonly int StopColor = NDalic.GradientVisualStopColor;
///
/// Defines the coordinate system for certain attributes of the points in a gradient.
///
/// 3
public static readonly int Units = NDalic.GradientVisualUnits;
///
/// Indicates what happens if the gradient starts or ends inside the bounds of the target rectangle.
///
/// 3
public static readonly int SpreadMethod = NDalic.GradientVisualSpreadMethod;
}
///
/// This specifies properties of the ImageVisual.
///
/// 3
public struct ImageVisualProperty
{
///
/// The URL of the image.
///
/// 3
public static readonly int URL = NDalic.ImageVisualUrl;
///
/// Fitting options, used when resizing images to fit desired dimensions.
///
/// 3
public static readonly int FittingMode = NDalic.ImageVisualFittingMode;
///
/// Filtering options, used when resizing images to sample original pixels.
///
/// 3
public static readonly int SamplingMode = NDalic.ImageVisualSamplingMode;
///
/// The desired image width.
///
/// 3
public static readonly int DesiredWidth = NDalic.ImageVisualDesiredWidth;
///
/// The desired image height.
///
/// 3
public static readonly int DesiredHeight = NDalic.ImageVisualDesiredHeight;
///
/// Whether to load the image synchronously.
///
/// 3
public static readonly int SynchronousLoading = NDalic.ImageVisualSynchronousLoading;
///
/// If true, only draws the borders.
///
/// 3
public static readonly int BorderOnly = NDalic.ImageVisualBorderOnly;
///
/// The image area to be displayed.
///
/// 3
public static readonly int PixelArea = NDalic.ImageVisualPixelArea;
///
/// The wrap mode for u coordinate.
///
/// 3
public static readonly int WrapModeU = NDalic.ImageVisualWrapModeU;
///
/// The wrap mode for v coordinate.
///
/// 3
public static readonly int WrapModeV = NDalic.ImageVisualWrapModeV;
///
/// The border of the image.
///
/// 3
public static readonly int Border = NDalic.ImageVisualBorder;
///
/// Whether to use the texture atlas.
///
/// 5
public static readonly int Atlasing = NDalic.ImageVisualBorder + 1;
///
/// The URL of the alpha mask image.
///
/// 3
public static readonly int AlphaMaskURL = NDalic.ImageVisualAlphaMaskUrl;
///
/// Defines the batch size for pre-loading images in the AnimatedImageVisual
///
/// 4
public static readonly int BatchSize = NDalic.ImageVisualBatchSize;
///
/// Defines the cache size for loading images in the AnimatedImageVisual
///
/// 4
public static readonly int CacheSize = NDalic.ImageVisualCacheSize;
///
/// The number of milliseconds between each frame in the AnimatedImageVisual
///
/// 4
public static readonly int FrameDelay = NDalic.ImageVisualFrameDelay;
///
/// The scale factor to apply to the content image before masking.
///
/// 4
public static readonly int MaskContentScale = NDalic.ImageVisualMaskContentScale;
///
/// Whether to crop image to mask or scale mask to fit image
///
/// 4
public static readonly int CropToMask = NDalic.ImageVisualCropToMask;
///
/// The policy to determine when an image should be loaded.
///
/// 5
public static readonly int LoadPolicy = NDalic.ImageVisualLoadPolicy;
///
/// The policy to determine when an image should no longer be cached.
///
/// 5
public static readonly int ReleasePolicy = NDalic.ImageVisualReleasePolicy;
///
/// Determines if image orientation should be corrected so that the image displays as it was intended.
///
/// 5
public static readonly int OrientationCorrection = NDalic.ImageVisualOrientationCorrection;
///
/// Overlays the auxiliary image on top of an NPatch image.
///
/// 5
public static readonly int AuxiliaryImageURL = NDalic.ImageVisualAuxiliaryImageUrl;
///
/// Alpha value for the auxiliary image, without affecting the underlying NPatch image
///
/// 5
public static readonly int AuxiliaryImageAlpha = NDalic.ImageVisualAuxiliaryImageAlpha;
///
/// The number of times the AnimatedImageVisual will be looped.
/// The default is -1. If the value is less than 0, loop unlimited. Otherwise, loop loopCount times.
///
/// 5
public static readonly int LoopCount = NDalic.ImageVisualLoopCount;
///
/// @brief The playing range the AnimatedVectorImageVisual will use.
/// Animation will play between the values specified.The array can only have two values, and more will be ignored.
/// Both values should be between 0 and the total frame number, otherwise they will be ignored.
/// If the range provided is not in proper order (minimum, maximum), it will be reordered.
/// @details Name "playRange", Type Property::ARRAY of Property::INTEGER
/// @note Default 0 and the total frame number.
///
///
/// Hidden API (Inhouse API)
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int PlayRange = NDalic.ImageVisualOrientationCorrection + 4;
///
/// @brief The playing state the AnimatedVectorImageVisual will use.
/// @details Name "playState", type PlayState (Property::INTEGER)
/// @note This property is read-only.
///
///
/// Hidden API (Inhouse API)
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int PlayState = NDalic.ImageVisualOrientationCorrection + 5;
///
/// @brief The current frame number the AnimatedVectorImageVisual will use.
/// @details Name "currentFrameNumber", Type Property::INTEGER, between[0, the maximum frame number] or between the play range if specified
/// @note This property is read-only.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int CurrentFrameNumber = NDalic.ImageVisualOrientationCorrection + 6;
///
/// @brief The total frame number the AnimatedVectorImageVisual will use.
/// @details Name "totalFrameNumber", Type Property::INTEGER.
/// @note This property is read-only.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int TotalFrameNumber = NDalic.ImageVisualOrientationCorrection + 7;
///
/// @brief The stop behavior the AnimatedVectorImageVisual will use.
/// @details Name "stopBehavior", Type StopBehavior::Type (Property::INTEGER)
/// @note Default value is StopBehavior::CURRENT_FRAME.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int StopBehavior = NDalic.ImageVisualOrientationCorrection + 8;
///
/// @brief The looping mode the AnimatedVectorImageVisual will use.
/// @details Name "loopingMode", Type LoopingMode::Type (Property::INTEGER)
/// @note Default value is LoopingMode::RESTART.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int LoopingMode = NDalic.ImageVisualOrientationCorrection + 9;
///
/// @brief The content information the AnimatedVectorImageVisual will use.
/// @details Name "contentInfo", Type Property::MAP.
/// The map contains the layer name as a key and Property::Array as a value.
/// And the array contains 2 integer values which are the frame numbers, the start frame number and the end frame number of the layer.
/// @note This property is read-only.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int ContentInfo = NDalic.ImageVisualOrientationCorrection + 10;
///
/// @brief Whether to redraw the image when the visual is scaled down.
/// @details Name "redrawInScalingDown", type Property::BOOLEAN.
/// @note It is used in the AnimatedVectorImageVisual.The default is true.
///
///
/// Inhouse API
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int RedrawInScalingDown = NDalic.ImageVisualOrientationCorrection + 11;
///
/// @brief Whether to apply mask on the GPU or not.
/// @details Name "MaskingMode", type MaskingModeType (Property::INTEGER).
/// @note It is used in the ImageVisual, and AnimatedImageVisual.The default is MaskingOnLoading.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int MaskingMode = NDalic.ImageVisualOrientationCorrection + 12;
///
/// @brief Whether to uploading texture before ResourceReady signal emit or after texture load completed time.
/// @details Name "fastTrackUploading", type Property::BOOLEAN.
/// @note It is used in the ImageVisual. The default is false.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int FastTrackUploading = NDalic.ImageVisualOrientationCorrection + 13;
///
/// @brief The marker information the AnimatedVectorImageVisual will use.
/// @details Type Property::MAP.
/// The map contains the marker name as a key and Property::Array as a value.
/// And the array contains 2 integer values which are the frame numbers, the start frame number and the end frame number of the marker.
/// @note This property is read-only.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int MarkerInfo = NDalic.ImageVisualOrientationCorrection + 15;
}
///
/// This specifies properties of the MeshVisual.
///
/// 3
public struct MeshVisualProperty
{
///
/// The location of the ".obj" file.
///
/// 3
public static readonly int ObjectURL = NDalic.MeshVisualObjectUrl;
///
/// The location of the ".mtl" file.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public static readonly int MaterialURL = NDalic.MeshVisualMaterialUrl;
///
/// The location of the ".mtl" file.
///
/// 3
public static readonly int MaterialtURL = NDalic.MeshVisualMaterialUrl;
///
/// Path to the directory the textures (including gloss and normal) are stored in.
///
/// 3
public static readonly int TexturesPath = NDalic.MeshVisualTexturesPath;
///
/// Sets the type of shading mode that the mesh will use.
///
/// 3
public static readonly int ShadingMode = NDalic.MeshVisualShadingMode;
///
/// Whether to use mipmaps for textures or not.
///
/// 3
public static readonly int UseMipmapping = NDalic.MeshVisualUseMipmapping;
///
/// Whether to average normals at each point to smooth textures or not.
///
/// 3
public static readonly int UseSoftNormals = NDalic.MeshVisualUseSoftNormals;
///
/// The position, in stage space, of the point light that applies lighting to the model.
///
/// 3
public static readonly int LightPosition = NDalic.MeshVisualLightPosition;
}
///
/// This specifies properties of the PrimitiveVisual.
///
/// 3
public struct PrimitiveVisualProperty
{
///
/// The specific shape to render.
///
/// 3
public static readonly int Shape = NDalic.PrimitiveVisualShape;
///
/// The color of the shape.
///
/// 3
public static readonly int MixColor = NDalic.PrimitiveVisualMixColor;
///
/// The number of slices as you go around the shape.
///
/// 3
public static readonly int Slices = NDalic.PrimitiveVisualSlices;
///
/// The number of stacks as you go down the shape.
///
/// 3
public static readonly int Stacks = NDalic.PrimitiveVisualStacks;
///
/// The scale of the radius of the top circle of a conical frustum.
///
/// 3
public static readonly int ScaleTopRadius = NDalic.PrimitiveVisualScaleTopRadius;
///
/// The scale of the radius of the bottom circle of a conical frustum.
///
/// 3
public static readonly int ScaleBottomRadius = NDalic.PrimitiveVisualScaleBottomRadius;
///
/// The scale of the height of a conic.
///
/// 3
public static readonly int ScaleHeight = NDalic.PrimitiveVisualScaleHeight;
///
/// The scale of the radius of a cylinder.
///
/// 3
public static readonly int ScaleRadius = NDalic.PrimitiveVisualScaleRadius;
///
/// The dimensions of a cuboid. Scales in the same fashion as a 9-patch image.
///
/// 3
public static readonly int ScaleDimensions = NDalic.PrimitiveVisualScaleDimensions;
///
/// Determines how bevelled the cuboid should be, based off the smallest dimension.
///
/// 3
public static readonly int BevelPercentage = NDalic.PrimitiveVisualBevelPercentage;
///
/// Defines how smooth the bevelled edges should be.
///
/// 3
public static readonly int BevelSmoothness = NDalic.PrimitiveVisualBevelSmoothness;
///
/// The position, in stage space, of the point light that applies lighting to the model.
///
/// 3
public static readonly int LightPosition = NDalic.PrimitiveVisualLightPosition;
}
///
/// This specifies properties of the TextVisual.
///
/// 3
public struct TextVisualProperty
{
///
/// The text to display in UTF-8 format.
///
/// 3
public static readonly int Text = NDalic.TextVisualText;
///
/// The requested font family to use.
///
/// 3
public static readonly int FontFamily = NDalic.TextVisualFontFamily;
///
/// The requested font style to use.
///
/// 3
public static readonly int FontStyle = NDalic.TextVisualFontStyle;
///
/// The size of font in points.
///
/// 3
public static readonly int PointSize = NDalic.TextVisualPointSize;
///
/// The single-line or multi-line layout option.
///
/// 3
public static readonly int MultiLine = NDalic.TextVisualMultiLine;
///
/// The line horizontal alignment.
///
/// 3
public static readonly int HorizontalAlignment = NDalic.TextVisualHorizontalAlignment;
///
/// The line vertical alignment.
///
/// 3
public static readonly int VerticalAlignment = NDalic.TextVisualVerticalAlignment;
///
/// The color of the text.
///
/// 3
public static readonly int TextColor = NDalic.TextVisualTextColor;
///
/// Whether the mark-up processing is enabled.
///
/// 3
public static readonly int EnableMarkup = NDalic.TextVisualEnableMarkup;
///
/// The shadow parameters.
///
/// 5
public static readonly int Shadow = NDalic.TextVisualEnableMarkup + 1;
///
/// The default underline parameters.
///
/// 5
public static readonly int Underline = NDalic.TextVisualEnableMarkup + 2;
///
/// The default outline parameters.
///
/// 5
public static readonly int Outline = NDalic.TextVisualEnableMarkup + 3;
///
/// The default text background parameters.
///
/// 5
public static readonly int Background = NDalic.TextVisualEnableMarkup + 4;
}
///
/// This specifies properties of the NpatchImageVisual.
///
/// 3
public struct NpatchImageVisualProperty
{
///
/// The URL of the image.
///
/// 3
public static readonly int URL = NDalic.ImageVisualUrl;
///
/// Fitting options, used when resizing images to fit desired dimensions.
///
/// 3
public static readonly int FittingMode = NDalic.ImageVisualFittingMode;
///
/// Filtering options, used when resizing images to sample original pixels.
///
/// 3
public static readonly int SamplingMode = NDalic.ImageVisualSamplingMode;
///
/// The desired image width.
///
/// 3
public static readonly int DesiredWidth = NDalic.ImageVisualDesiredWidth;
///
/// The desired image height.
///
/// 3
public static readonly int DesiredHeight = NDalic.ImageVisualDesiredHeight;
///
/// Whether to load the image synchronously.
///
/// 3
public static readonly int SynchronousLoading = NDalic.ImageVisualSynchronousLoading;
///
/// If true, only draws the borders.
///
/// 3
public static readonly int BorderOnly = NDalic.ImageVisualBorderOnly;
///
/// The image area to be displayed.
///
/// 3
public static readonly int PixelArea = NDalic.ImageVisualPixelArea;
///
/// The wrap mode for u coordinate.
///
/// 3
public static readonly int WrapModeU = NDalic.ImageVisualWrapModeU;
///
/// The wrap mode for v coordinate.
///
/// 3
public static readonly int WrapModeV = NDalic.ImageVisualWrapModeV;
///
/// The border of the image.
///
/// 3
public static readonly int Border = NDalic.ImageVisualWrapModeV + 1;
}
///
/// This specifies properties of the ArcVisual.
///
internal struct ArcVisualProperty
{
///
/// The thickness of the arc.
///
/// The value is float type.
/// This is mandatory property.
internal static readonly int Thickness = NDalic.ImageVisualUrl;
///
/// The start angle where the arc begins in degrees.
///
/// The value is float type.
/// The property of optional. The default value is 0.
internal static readonly int StartAngle = Thickness + 1;
///
/// The sweep angle of the arc in degrees.
///
/// The value is float type.
/// The property of optional. The default value is 360.
internal static readonly int SweepAngle = Thickness + 2;
///
/// The cap style of the arc.
///
///
/// The value is integer type.
/// The value 0 means butt, the arc does not extend beyond its two endpoints.
/// The value 1 means round, the arc will be extended by a half circle with the center at the end.
///
/// The property of optional. The default value is 0 (butt).
internal static readonly int Cap = Thickness + 3;
}
///
/// Enumeration for Circular alignment.
/// The @p horizontalAlignment and @p verticalAlignment can be used to align the text within the text area.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public enum CircularAlignment
{
///
/// Texts place at the begin of Circular direction.
///
[Description("BEGIN")]
Begin,
///
/// Texts place at the center of Circular direction.
///
[Description("CENTER")]
Center,
///
/// Texts place at the end of Circular direction.
///
[Description("END")]
End
}
///
/// Enumeration for Text Layout.
///
[EditorBrowsable(EditorBrowsableState.Never)]
public enum TextLayout
{
///
/// SingleLine.
///
[Description("singleLine")]
SingleLine,
///
/// MultiLine.
///
[Description("multiLine")]
MultiLine,
///
/// Circular.
///
[Description("circular")]
Circular
}
///
/// Defines how a color is blended.
///
/// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API.
[EditorBrowsable(EditorBrowsableState.Never)]
public enum ColorBlendingMode
{
///
/// No blend.
///
None,
///
/// The color is multiplied by another one.
///
Multiply
};
}