Beispiel #1
0
        private void HandleBreakpointEnd()
        {
            try
            {
                var bp = GetScmpBlob <Shared.Scmp.BreakpointEnd>();

                // Fire event
                UpdateEnd.Raise(this, new SledDebugServiceBreakpointEventArgs(CurrentlyHitBp));

                IsUpdateInProgress = false;

                HandleBreakpointHit(CurrentlyHitBp);

                SendScmp(bp);
            }
            finally
            {
                Thaw();
            }
        }
        //!!!!может есть опции обновления какие-то
        public void PerformUpdate(bool clear)
        {
            if (clear)
            {
                Clear();
            }

            UpdateBegin?.Invoke(this);
            AllProviders_UpdateBegin?.Invoke(this);

            OnUpdate();

            //!!!!внутри suspend update видать тут что-то

            //sort by priority
            {
                List <Tuple <Control, float> > list = new List <Tuple <Control, float> >();
                foreach (Control control in layoutPanel.Controls)
                {
                    float        priority = 0;
                    SettingsCell cell     = control as SettingsCell;
                    if (cell != null)
                    {
                        priority = cell.CellsSortingPriority;
                    }
                    list.Add(new Tuple <Control, float>(control, priority));
                }

                CollectionUtility.MergeSort(list, delegate(Tuple <Control, float> c1, Tuple <Control, float> c2)
                {
                    if (c1.Item2 < c2.Item2)
                    {
                        return(-1);
                    }
                    if (c1.Item2 > c2.Item2)
                    {
                        return(1);
                    }
                    return(0);
                });

                for (int n = 0; n < list.Count; n++)
                {
                    var t = list[n];
                    layoutPanel.Controls.SetChildIndex(t.Item1, n);
                }
            }

            ////change docking
            //if( layoutPanel.Controls.Count == 1 && layoutPanel.Controls[ 0 ] is SettingsCell_Properties )
            //{
            //	//only Properties. no another controls
            //	layoutPanel.Controls[0].Size = new System.Drawing.Size(30, 15);
            //	layoutPanel.Controls[0].Dock = DockStyle.Fill;
            //}
            //else
            //{
            //	//!!!!!temp

            //	foreach( Control c in layoutPanel.Controls )
            //	{
            //		var p = c as SettingsCell_Properties;
            //		if( p != null )
            //		{
            //			//p.Size = new System.Drawing.Size( 30, 15 );
            //			//p.Dock = DockStyle.Fill;
            //			break;
            //		}
            //	}

            //	//!!!!!
            //	//layoutPanel.AutoScroll = true;
            //	//layoutPanel.HorizontalScroll.Enabled = false;
            //}

            UpdateEnd?.Invoke(this);
            AllProviders_UpdateEnd?.Invoke(this);
        }
 public virtual void Update(float dt)
 {
     UpdateEnd?.Invoke();
 }
Beispiel #4
0
 protected void OnUpdateEnd(UpdateEndEventArgs <TGrid, TPos> updateEndEventArgs)
 {
     UpdateEnd?.Invoke(this, updateEndEventArgs);
 }
 public static void OnUpdateEnd(object sender, UpdateEventArgs ev) => UpdateEnd?.Invoke(sender, ev);
 internal void PerformUpdateEnd(Viewport viewport)
 {
     OnUpdateEnd(viewport);
     UpdateEnd?.Invoke(this, viewport);
 }