| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 | using UnityEngine;using FairyGUI.Utils;namespace FairyGUI{    /// <summary>    /// GImage class.    /// </summary>    public class GImage : GObject, IColorGear    {        Image _content;        public GImage()        {        }        override protected void CreateDisplayObject()        {            _content = new Image();            _content.gOwner = this;            displayObject = _content;        }        /// <summary>        /// Color of the image.         /// </summary>        public Color color        {            get { return _content.color; }            set            {                _content.color = value;                UpdateGear(4);            }        }        /// <summary>        /// Flip type.        /// </summary>        /// <seealso cref="FlipType"/>        public FlipType flip        {            get { return _content.graphics.flip; }            set { _content.graphics.flip = value; }        }        /// <summary>        /// Fill method.        /// </summary>        /// <seealso cref="FillMethod"/>        public FillMethod fillMethod        {            get { return _content.fillMethod; }            set { _content.fillMethod = value; }        }        /// <summary>        /// Fill origin.        /// </summary>        /// <seealso cref="OriginHorizontal"/>        /// <seealso cref="OriginVertical"/>        /// <seealso cref="Origin90"/>        /// <seealso cref="Origin180"/>        /// <seealso cref="Origin360"/>        public int fillOrigin        {            get { return _content.fillOrigin; }            set { _content.fillOrigin = value; }        }        /// <summary>        /// Fill clockwise if true.        /// </summary>        public bool fillClockwise        {            get { return _content.fillClockwise; }            set { _content.fillClockwise = value; }        }        /// <summary>        /// Fill amount. (0~1)        /// </summary>        public float fillAmount        {            get { return _content.fillAmount; }            set { _content.fillAmount = value; }        }        /// <summary>        /// Set texture directly. The image wont own the texture.        /// </summary>        public NTexture texture        {            get { return _content.texture; }            set            {                if (value != null)                {                    sourceWidth = value.width;                    sourceHeight = value.height;                }                else                {                    sourceWidth = 0;                    sourceHeight = 0;                }                initWidth = sourceWidth;                initHeight = sourceHeight;                _content.texture = value;            }        }        /// <summary>        /// Set material.        /// </summary>        public Material material        {            get { return _content.material; }            set { _content.material = value; }        }        /// <summary>        /// Set shader.        /// </summary>        public string shader        {            get { return _content.shader; }            set { _content.shader = value; }        }        override public void ConstructFromResource()        {            this.gameObjectName = packageItem.name;                        PackageItem contentItem = packageItem.getBranch();            sourceWidth = contentItem.width;            sourceHeight = contentItem.height;            initWidth = sourceWidth;            initHeight = sourceHeight;            contentItem = contentItem.getHighResolution();            contentItem.Load();            _content.scale9Grid = contentItem.scale9Grid;            _content.scaleByTile = contentItem.scaleByTile;            _content.tileGridIndice = contentItem.tileGridIndice;            _content.texture = contentItem.texture;            _content.textureScale = new Vector2(contentItem.width / (float)sourceWidth, contentItem.height / (float)sourceHeight);            SetSize(sourceWidth, sourceHeight);        }        override public void Setup_BeforeAdd(ByteBuffer buffer, int beginPos)        {            base.Setup_BeforeAdd(buffer, beginPos);            buffer.Seek(beginPos, 5);            if (buffer.ReadBool())                _content.color = buffer.ReadColor();            _content.graphics.flip = (FlipType)buffer.ReadByte();            _content.fillMethod = (FillMethod)buffer.ReadByte();            if (_content.fillMethod != FillMethod.None)            {                _content.fillOrigin = buffer.ReadByte();                _content.fillClockwise = buffer.ReadBool();                _content.fillAmount = buffer.ReadFloat();            }        }    }}
 |