//!!!!может есть опции обновления какие-то 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(); }
public static void OnUpdateEnd(object sender, UpdateEventArgs ev) => UpdateEnd?.Invoke(sender, ev);
protected void OnUpdateEnd(UpdateEndEventArgs <TGrid, TPos> updateEndEventArgs) { UpdateEnd?.Invoke(this, updateEndEventArgs); }
internal void PerformUpdateEnd(Viewport viewport) { OnUpdateEnd(viewport); UpdateEnd?.Invoke(this, viewport); }