示例#1
0
        public override void Enter()
        {
            MainGame.Instance.Components.Add(this);
            var e = new EventArgs();

            DrawOrderChanged?.Invoke(this, e);
            UpdateOrderChanged?.Invoke(this, e);
        }
示例#2
0
        public override void BeforeDispose()
        {
            if (DrawOrderChanged != null)
            {
                //Remove all Events associated to this control (That haven't been unsubscribed !)
                foreach (Delegate d in DrawOrderChanged.GetInvocationList())
                {
                    DrawOrderChanged -= (EventHandler <EventArgs>)d;
                }
            }

            if (VisibleChanged != null)
            {
                //Remove all Events associated to this control (That haven't been unsubscribed !)
                foreach (Delegate d in VisibleChanged.GetInvocationList())
                {
                    VisibleChanged -= (EventHandler <EventArgs>)d;
                }
            }
        }
示例#3
0
        private void DrawOrderChanged(DrawOrderChanged msg)
        {
            var subject = Items.Single(vm => vm.NodeId == msg.NodeId);

            Items.MoveSafe(subject, msg.Index);
        }
示例#4
0
 protected virtual void OnDrawOrderChanged(object source, EventArgs e)
 {
     DrawOrderChanged?.Invoke(source, e);
 }
示例#5
0
 /// <summary>Fires the DrawOrderChanged event</summary>
 protected void OnDrawOrderChanged()
 {
     DrawOrderChanged?.Invoke(this, EventArgs.Empty);
 }
 private void OnDrawOrderChanged(DrawOrderChanged msg)
 {
     ReloadDrawOrder();
 }