/*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright(c) 2018 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.
/// <since_tizen> 3 </since_tizen>
public class VisualMap
{
+ /// <summary>
+ /// outputVisualMap.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected PropertyMap _outputVisualMap = null;
+
+ /// <summary>
+ /// The shader of the visual.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected PropertyMap _shader = null;
+ //private PropertyMap _transform = null;
+
+ /// <summary>
+ /// The premultipliedAlpha of the visual.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected bool? _premultipliedAlpha = null;
+
+ /// <summary>
+ /// The mixColor of the Visual.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected Color _mixColor = null;
+
+ /// <summary>
+ /// The opacity of the visual.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected float? _opacity = null;
+
+ /// <summary>
+ /// The FittingMode of the visual.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ protected VisualFittingModeType? _visualFittingMode = null;
+
+ /// <summary>
+ /// The map for visual.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected PropertyMap _commonlyUsedMap = null;
+
private Vector2 _visualSize = null;
private Vector2 _visualOffset = null;
private Vector2 _visualOffsetPolicy = null;
private int? _depthIndex = null;
/// <summary>
- /// outputVisualMap.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected PropertyMap _outputVisualMap = null;
-
- internal string Name
- {
- set;
- get;
- }
-
- internal int VisualIndex
- {
- set;
- get;
- }
-
- internal VisualView Parent
- {
- set;
- get;
- }
-
- /// <summary>
/// Constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
}
}
- private void ComposingTransformMap()
- {
- _visualTransformMap = new PropertyMap();
- if (_visualSize != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Size, new PropertyValue(_visualSize)); }
- if (_visualOffset != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Offset, new PropertyValue(_visualOffset)); }
- if (_visualOffsetPolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(_visualOffsetPolicy)); }
- if (_visualSizePolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(_visualSizePolicy)); }
- if (_visualOrigin != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)_visualOrigin)); }
- if (_visualAnchorPoint != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)_visualAnchorPoint)); }
- }
-
/// <summary>
/// Gets the transform map used by the visual.
/// </summary>
}
/// <summary>
- /// Compose the out visual map.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected virtual void ComposingPropertyMap()
- {
- _outputVisualMap = new PropertyMap();
- }
-
- /// <summary>
/// Gets the property map to create the visual.
/// </summary>
/// <since_tizen> 3 </since_tizen>
}
}
- internal void UpdateVisual()
- {
- if (VisualIndex > 0)
- {
- NUILog.Debug("UpdateVisual()! VisualIndex=" + VisualIndex);
- Parent.UpdateVisual(VisualIndex, Name, this);
- }
- else
- {
- NUILog.Debug("VisualIndex was not set");
- }
- }
-
- /// <summary>
- /// The shader of the visual.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected PropertyMap _shader = null;
- //private PropertyMap _transform = null;
-
- /// <summary>
- /// The premultipliedAlpha of the visual.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected bool? _premultipliedAlpha = null;
-
- /// <summary>
- /// The mixColor of the Visual.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected Color _mixColor = null;
-
- /// <summary>
- /// The opacity of the visual.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected float? _opacity = null;
-
- /// <summary>
- /// The map for visual.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- protected PropertyMap _commonlyUsedMap = null;
/// <summary>
/// The shader to use in the visual.
}
}
+ /// <summary>
+ /// The fitting mode of the visual.
+ /// The default is defined by the type of visual (if it is suitable to be stretched or not).
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public VisualFittingModeType VisualFittingMode
+ {
+ get
+ {
+ if (_visualFittingMode == null)
+ {
+ if (this is AnimatedImageVisual ||
+ this is MeshVisual ||
+ this is PrimitiveVisual ||
+ this is TextVisual)
+ {
+ return VisualFittingModeType.FitKeepAspectRatio;
+ }
+ else
+ {
+ return VisualFittingModeType.Fill;
+ }
+ }
+ else
+ {
+ return (VisualFittingModeType)_visualFittingMode;
+ }
+ }
+ set
+ {
+ _visualFittingMode = value;
+ UpdateVisual();
+ }
+ }
+
+ internal string Name
+ {
+ set;
+ get;
+ }
+
+ internal int VisualIndex
+ {
+ set;
+ get;
+ }
+
+ internal VisualView Parent
+ {
+ set;
+ get;
+ }
+
+ internal void UpdateVisual()
+ {
+ if (VisualIndex > 0)
+ {
+ NUILog.Debug("UpdateVisual()! VisualIndex=" + VisualIndex);
+ Parent.UpdateVisual(VisualIndex, Name, this);
+ }
+ else
+ {
+ NUILog.Debug("VisualIndex was not set");
+ }
+ }
+
+ /// <summary>
+ /// Compose the out visual map.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ protected virtual void ComposingPropertyMap()
+ {
+ _outputVisualMap = new PropertyMap();
+ }
+
+ private void ComposingTransformMap()
+ {
+ _visualTransformMap = new PropertyMap();
+ if (_visualSize != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Size, new PropertyValue(_visualSize)); }
+ if (_visualOffset != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Offset, new PropertyValue(_visualOffset)); }
+ if (_visualOffsetPolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(_visualOffsetPolicy)); }
+ if (_visualSizePolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(_visualSizePolicy)); }
+ if (_visualOrigin != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)_visualOrigin)); }
+ if (_visualAnchorPoint != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)_visualAnchorPoint)); }
+ }
+
}
/// <summary>
/// <since_tizen> 3 </since_tizen>
public class ImageVisual : VisualMap
{
- /// <summary>
- /// Constructor.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- public ImageVisual() : base()
- {
- }
-
private string _url = null;
private string _alphaMaskUrl = null;
+ private string _auxiliaryImageUrl = null;
private FittingModeType? _fittingMode = null;
private SamplingModeType? _samplingMode = null;
private int? _desiredWidth = null;
private Vector4 _pixelArea = null;
private WrapModeType? _wrapModeU = null;
private WrapModeType? _wrapModeV = null;
+ private float? _auxiliaryImageAlpha = null;
private float? _maskContentScale = null;
private bool? _cropToMask = null;
private ReleasePolicyType? _releasePolicy = null;
private LoadPolicyType? _loadPolicy = null;
private bool? _orientationCorrection = true;
+ private bool? _atlasing = false;
+
+ /// <summary>
+ /// Constructor.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public ImageVisual() : base()
+ {
+ }
/// <summary>
/// Gets or sets the URL of the image.<br />
}
/// <summary>
+ /// Overlays the auxiliary image on top of an NPatch image.
+ /// The resulting visual image will be at least as large as the smallest possible n-patch or the auxiliary image, whichever is larger.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public string AuxiliaryImageURL
+ {
+ get
+ {
+ return _auxiliaryImageUrl;
+ }
+ set
+ {
+ _auxiliaryImageUrl = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
/// Gets or sets fitting options used when resizing images to fit the desired dimensions.<br />
/// If not supplied, the default is FittingModeType.ShrinkToFit.<br />
/// For normal quad images only.<br />
}
}
+ /// <summary>
+ /// An alpha value for mixing between the masked main NPatch image and the auxiliary image.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public float AuxiliaryImageAlpha
+ {
+ get
+ {
+ return _auxiliaryImageAlpha ?? 1.0f;
+ }
+ set
+ {
+ _auxiliaryImageAlpha = value;
+ UpdateVisual();
+ }
+ }
/// <summary>
- /// Get or set the Image Visual release policy<br />
- /// It decides if a texture should be released from the cache or kept to reduce loading time <br />
+ /// Gets or sets the Image Visual release policy.<br/>
+ /// It decides if a texture should be released from the cache or kept to reduce the loading time.<br/>
/// </summary>
/// <since_tizen> 5 </since_tizen>
- /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
- [EditorBrowsable(EditorBrowsableState.Never)]
public ReleasePolicyType ReleasePolicy
{
get
/// <summary>
- /// Get or set the Image Visual image loading policy<br />
- /// It decides if a texture should be loaded immediately after source set or only after visual is added to window <br />
+ /// Gets or sets the Image Visual image loading policy.<br />
+ /// It decides if a texture should be loaded immediately after source set or only after the visual is added to the window.<br />
/// </summary>
/// <since_tizen> 5 </since_tizen>
- /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
- [EditorBrowsable(EditorBrowsableState.Never)]
public LoadPolicyType LoadPolicy
{
get
}
/// <summary>
- /// Get or set whether to automatically correct the orientation based on exif data.<br />
+ /// Gets or sets whether to automatically correct the orientation based on the Exchangeable Image File (EXIF) data.<br />
/// If not specified, the default is true.<br />
/// For JPEG images only.<br />
/// Optional.
/// </summary>
/// <since_tizen> 5 </since_tizen>
- /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
- [EditorBrowsable(EditorBrowsableState.Never)]
public bool OrientationCorrection
{
get
}
}
+ /// <summary>
+ /// Whether to use the texture atlas or not.
+ /// Optional. By default atlasing is off.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public bool Atlasing
+ {
+ get
+ {
+ return _atlasing ?? (false);
+ }
+ set
+ {
+ _atlasing = value;
+ UpdateVisual();
+ }
+ }
/// <summary>
/// Compose the out visual map.
_outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Image));
_outputVisualMap.Add(ImageVisualProperty.URL, new PropertyValue(_url));
if (_alphaMaskUrl != null ) { _outputVisualMap.Add(ImageVisualProperty.AlphaMaskURL, new PropertyValue(_alphaMaskUrl)); }
+ if (_auxiliaryImageUrl != null ) { _outputVisualMap.Add(ImageVisualProperty.AuxiliaryImageURL, new PropertyValue(_auxiliaryImageUrl)); }
if (_fittingMode != null) { _outputVisualMap.Add(ImageVisualProperty.FittingMode, new PropertyValue((int)_fittingMode)); }
if (_samplingMode != null) { _outputVisualMap.Add(ImageVisualProperty.SamplingMode, new PropertyValue((int)_samplingMode)); }
if (_desiredWidth != null) { _outputVisualMap.Add(ImageVisualProperty.DesiredWidth, new PropertyValue((int)_desiredWidth)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
if (_maskContentScale != null) { _outputVisualMap.Add((int)ImageVisualProperty.MaskContentScale, new PropertyValue((float)_maskContentScale)); }
if (_cropToMask != null) { _outputVisualMap.Add((int)ImageVisualProperty.CropToMask, new PropertyValue((bool)_cropToMask)); }
+ if (_auxiliaryImageAlpha != null) { _outputVisualMap.Add((int)ImageVisualProperty.AuxiliaryImageAlpha, new PropertyValue((float)_auxiliaryImageAlpha)); }
if (_releasePolicy != null) { _outputVisualMap.Add( ImageVisualProperty.ReleasePolicy , new PropertyValue((int)_releasePolicy)); }
if (_loadPolicy != null) { _outputVisualMap.Add( ImageVisualProperty.LoadPolicy, new PropertyValue((int)_loadPolicy)); }
if (_orientationCorrection != null) { _outputVisualMap.Add( ImageVisualProperty.OrientationCorrection, new PropertyValue((bool)_orientationCorrection)); }
+ if (_atlasing != null) { _outputVisualMap.Add( ImageVisualProperty.Atlasing, new PropertyValue((bool)_atlasing)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class TextVisual : VisualMap
{
- /// <summary>
- /// Constructor.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- public TextVisual() : base()
- {
- }
-
private string _text = null;
private string _fontFamily = null;
private PropertyMap _fontStyle = null;
private string _verticalAlignment = null;
private Color _textColor = null;
private bool? _enableMarkup = null;
+ private PropertyMap _shadow = null;
+ private PropertyMap _underline = null;
+ private PropertyMap _outline = null;
+ private PropertyMap _background = null;
+
+ /// <summary>
+ /// Constructor.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public TextVisual() : base()
+ {
+ }
/// <summary>
/// Gets or sets the text to display in the UTF-8 format.<br />
}
/// <summary>
+ /// Gets or sets the shadow parameters.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public PropertyMap Shadow
+ {
+ get
+ {
+ return _shadow;
+ }
+ set
+ {
+ _shadow = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
+ /// Gets or sets the underline parameters.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public PropertyMap Underline
+ {
+ get
+ {
+ return _underline;
+ }
+ set
+ {
+ _underline = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
+ /// Gets or sets the outline parameters.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public PropertyMap Outline
+ {
+ get
+ {
+ return _outline;
+ }
+ set
+ {
+ _outline = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
+ /// Gets or sets the background parameters.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public PropertyMap Background
+ {
+ get
+ {
+ return _background;
+ }
+ set
+ {
+ _background = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
/// Compose the out visual map.
/// </summary>
/// <since_tizen> 3 </since_tizen>
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_shadow != null) { _outputVisualMap.Add(TextVisualProperty.Shadow, new PropertyValue(_shadow)); }
+ if (_underline != null) { _outputVisualMap.Add(TextVisualProperty.Underline, new PropertyValue(_underline)); }
+ if (_outline != null) { _outputVisualMap.Add(TextVisualProperty.Outline, new PropertyValue(_outline)); }
+ if (_background != null) { _outputVisualMap.Add(TextVisualProperty.Background, new PropertyValue(_background)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class BorderVisual : VisualMap
{
+ private Color _color = null;
+ private float? _size = null;
+ private bool? _antiAliasing = null;
+
/// <summary>
/// Constructor.
/// </summary>
{
}
- private Color _color = null;
- private float? _size = null;
- private bool? _antiAliasing = null;
-
/// <summary>
/// Gets or sets the color of the border.<br />
/// Mandatory.
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class ColorVisual : VisualMap
{
+ private Color _mixColorForColorVisual = null;
+ private bool? _renderIfTransparent = false;
+
/// <summary>
/// Constructor.
/// </summary>
{
}
- private Color _mixColorForColorVisual = null;
-
/// <summary>
/// Gets or sets the solid color required.<br />
/// Mandatory.
}
/// <summary>
+ /// Gets or sets whether to render if the MixColor is transparent.
+ /// By default it is false, which means that the ColorVisual will not render if the MIX_COLOR is transparent.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public bool RenderIfTransparent
+ {
+ get
+ {
+ return _renderIfTransparent ?? (false);
+ }
+ set
+ {
+ _renderIfTransparent = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
/// Compose the out visual map.
/// </summary>
/// <since_tizen> 3 </since_tizen>
if (_shader != null) { _outputVisualMap.Add((int)Visual.Property.Shader, new PropertyValue(_shader)); }
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_renderIfTransparent != null) { _outputVisualMap.Add(ColorVisualProperty.RenderIfTransparent, new PropertyValue((bool)_renderIfTransparent)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class GradientVisual : VisualMap
{
- /// <summary>
- /// Constructor.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- public GradientVisual() : base()
- {
- }
-
private Vector2 _startPosition = null;
private Vector2 _endPosition = null;
private Vector2 _center = null;
private GradientVisualSpreadMethodType? _spreadMethod = null;
/// <summary>
+ /// Constructor.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public GradientVisual() : base()
+ {
+ }
+
+ /// <summary>
/// Gets or sets the start position of a linear gradient.<br />
/// Mandatory for linear.<br />
/// </summary>
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class MeshVisual : VisualMap
{
- /// <summary>
- /// Constructor.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- public MeshVisual() : base()
- {
- }
-
private string _objectURL = null;
private string _materialtURL = null;
private string _texturesPath = null;
private Vector3 _lightPosition = null;
/// <summary>
+ /// Constructor.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public MeshVisual() : base()
+ {
+ }
+
+ /// <summary>
/// Gets or sets the location of the ".obj" file.<br />
/// Mandatory.
/// </summary>
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class PrimitiveVisual : VisualMap
{
- /// <summary>
- /// Constructor.
- /// </summary>
- /// <since_tizen> 3 </since_tizen>
- public PrimitiveVisual() : base()
- {
- }
-
private PrimitiveVisualShapeType? _shape = null;
private Color _mixColorForPrimitiveVisual = null;
private int? _slices = null;
private Vector3 _lightPosition = null;
/// <summary>
+ /// Constructor.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public PrimitiveVisual() : base()
+ {
+ }
+
+ /// <summary>
/// Gets or sets the specific shape to render.<br />
/// If not specified, the default is PrimitiveVisualShapeType.Sphere.<br />
/// Optional.
if (_shader != null) { _outputVisualMap.Add((int)Visual.Property.Shader, new PropertyValue(_shader)); }
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
/// <since_tizen> 3 </since_tizen>
public class NPatchVisual : VisualMap
{
+ private string _url = null;
+ private bool? _borderOnly = null;
+ private Rectangle _border = null;
+
/// <summary>
/// Constructor.
/// </summary>
{
}
- private string _url = null;
- private bool? _borderOnly = null;
- private Rectangle _border = null;
-
/// <summary>
/// Gets or sets the URL of the image.<br />
/// Mandatory.
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class SVGVisual : VisualMap
{
+ private string _url = null;
+
/// <summary>
/// Constructor.
/// </summary>
{
}
- private string _url = null;
-
/// <summary>
/// The url of the svg resource.
/// </summary>
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class AnimatedImageVisual : VisualMap
{
+ private List<string> _urls = null;
+ private int? _batchSize = null;
+ private int? _cacheSize = null;
+ private float? _frameDelay = null;
+ private float? _loopCount = null;
+
/// <summary>
/// Constructor.
/// </summary>
{
}
- private List<string> _urls = null;
- private int? _batchSize = null;
- private int? _cacheSize = null;
- private float? _frameDelay = null;
-
/// <summary>
/// Gets and Sets the url in the AnimatedImageVisual.
/// </summary>
}
/// <summary>
+ /// Gets and sets the number of times the AnimatedImageVisual will be looped.
+ /// The default is -1. If the number is less than 0 then it loops unlimited,otherwise loop loopCount times.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public float LoopCount
+ {
+ get
+ {
+ return _loopCount ?? -1;
+ }
+ set
+ {
+ _loopCount = value;
+ UpdateVisual();
+ }
+ }
+
+ /// <summary>
/// Compose the out visual map.
/// </summary>
/// <since_tizen> 3 </since_tizen>
if (_batchSize != null ) {_outputVisualMap.Add((int)ImageVisualProperty.BatchSize, new PropertyValue((int)_batchSize)); }
if (_cacheSize != null ) {_outputVisualMap.Add((int)ImageVisualProperty.CacheSize, new PropertyValue((int)_cacheSize)); }
if (_frameDelay != null ) {_outputVisualMap.Add((int)ImageVisualProperty.FrameDelay, new PropertyValue((float)_frameDelay)); }
+ if (_loopCount != null ) {_outputVisualMap.Add((int)ImageVisualProperty.LoopCount, new PropertyValue((int)_loopCount)); }
if (_shader != null) { _outputVisualMap.Add((int)Visual.Property.Shader, new PropertyValue(_shader)); }
if (_premultipliedAlpha != null) { _outputVisualMap.Add((int)Visual.Property.PremultipliedAlpha, new PropertyValue((bool)_premultipliedAlpha)); }
if (_mixColor != null) { _outputVisualMap.Add((int)Visual.Property.MixColor, new PropertyValue(_mixColor)); }
if (_opacity != null) { _outputVisualMap.Add((int)Visual.Property.Opacity, new PropertyValue((float)_opacity)); }
+ if (_visualFittingMode != null) { _outputVisualMap.Add((int)Visual.Property.VisualFittingMode, new PropertyValue((int)_visualFittingMode)); }
}
}
}
/// <since_tizen> 3 </since_tizen>
public class VisualAnimator : VisualMap
{
+ private string _alphaFunction = null;
+ private int _startTime = 0;
+ private int _endTime = 0;
+ private string _target = null;
+ private string _propertyIndex = null;
+ private object _destinationValue = null;
+
/// <summary>
/// Create VisualAnimator object.
/// </summary>
{
}
- private string _alphaFunction = null;
- private int _startTime = 0;
- private int _endTime = 0;
- private string _target = null;
- private string _propertyIndex = null;
- private object _destinationValue = null;
-
/// <summary>
/// Sets and Gets the AlphaFunction of this transition.
/// </summary>