using System;
using UnityEngine;
namespace XCharts.Runtime
{
    /// 
    /// 
    [Serializable]
    public class LineArrow : ChildComponent, ISerieComponent
    {
        public enum Position
        {
            /// 
            /// 末端箭头
            /// 
            End,
            /// 
            /// 头端箭头
            /// 
            Start
        }
        [SerializeField] private bool m_Show;
        [SerializeField] private Position m_Position;
        [SerializeField]
        private ArrowStyle m_Arrow = new ArrowStyle()
        {
            width = 10,
            height = 15,
            offset = 0,
            dent = 3
        };
        /// 
        /// Whether to show the arrow.
        /// ||是否显示箭头。
        /// 
        public bool show
        {
            get { return m_Show; }
            set { if (PropertyUtil.SetStruct(ref m_Show, value)) SetVerticesDirty(); }
        }
        /// 
        /// The position of arrow.
        /// ||箭头位置。
        /// 
        public Position position
        {
            get { return m_Position; }
            set { if (PropertyUtil.SetStruct(ref m_Position, value)) SetVerticesDirty(); }
        }
        /// 
        /// the arrow of line.
        /// ||箭头。
        /// 
        public ArrowStyle arrow
        {
            get { return m_Arrow; }
            set { if (PropertyUtil.SetClass(ref m_Arrow, value)) SetVerticesDirty(); }
        }
    }
}