public void UpdateMapList(string blah) { /* if (this.InvokeRequired) { LogDelegate d = new LogDelegate(UpdateMapList); this.Invoke(d, new object[] { blah }); } else { LevelCollection lc = new LevelCollection(new LevelListView()); Server.levels.ForEach(delegate(Level l) { lc.Add(l); }); dgvMaps.SuspendLayout(); dgvMaps.DataSource = lc; //dgvMaps.Invalidate(); dgvMaps.ResumeLayout(); } */ if (this.InvokeRequired) { LogDelegate d = new LogDelegate(UpdateMapList); this.Invoke(d, new object[] { blah }); } else { if (dgvMaps.DataSource == null) dgvMaps.DataSource = lc; // Try to keep the same selection on update string selected = null; if (lc.Count > 0 && dgvMaps.SelectedRows.Count > 0) { selected = (from DataGridViewRow row in dgvMaps.Rows where row.Selected select lc[row.Index]).First().name; } // Update the data source and control //dgvPlayers.SuspendLayout(); lc = new LevelCollection(new LevelListView()); Server.levels.ForEach(delegate(Level l) { lc.Add(l); }); //dgvPlayers.Invalidate(); dgvMaps.DataSource = lc; // Reselect map if (selected != null) { foreach (Level l in Server.levels) foreach (DataGridViewRow row in dgvMaps.Rows) if (String.Equals(row.Cells[0].Value, selected)) row.Selected = true; } dgvMaps.Refresh(); //dgvPlayers.ResumeLayout(); } }
void Awake() { gameObject.tag = TagManager.LEVEL_UP; collection.Add(this); }
public void UpdateMapList(string unused) { /* * if (this.InvokeRequired) { * LogDelegate d = new LogDelegate(UpdateMapList); * this.Invoke(d, new object[] { blah }); * } else { * LevelCollection lc = new LevelCollection(new LevelListView()); * Server.levels.ForEach(delegate(Level l) { lc.Add(l); }); * dgvMaps.SuspendLayout(); * dgvMaps.DataSource = lc; * //dgvMaps.Invalidate(); * dgvMaps.ResumeLayout(); * } */ if (InvokeRequired) { LogDelegate d = new LogDelegate(UpdateMapList); Invoke(d, new Object[] { " " }); } else { if (dgvMaps.DataSource == null) { dgvMaps.DataSource = lc; } // Try to keep the same selection on update string selected = null; if (lc.Count > 0 && dgvMaps.SelectedRows.Count > 0) { selected = (from DataGridViewRow row in dgvMaps.Rows where row.Selected select lc[row.Index]).First().name; } // Update the data source and control //dgvPlayers.SuspendLayout(); lc.Clear(); //lc = new LevelCollection(new LevelListView()); Server.levels.ForEach(delegate(Level l) { lc.Add(l); }); //dgvPlayers.Invalidate(); dgvMaps.DataSource = null; dgvMaps.DataSource = lc; // Reselect map if (selected != null) { foreach (DataGridViewRow row in Server.levels.SelectMany(l => dgvMaps.Rows.Cast <DataGridViewRow>().Where(row => (string)row.Cells[0].Value == selected))) { row.Selected = true; } } dgvMaps.Refresh(); //dgvPlayers.ResumeLayout(); if (dgvMapsTab.DataSource == null) { dgvMapsTab.DataSource = lcTAB; } // Try to keep the same selection on update string selected2 = null; if (lcTAB.Count > 0 && dgvMapsTab.SelectedRows.Count > 0) { selected2 = (from DataGridViewRow row in dgvMapsTab.Rows where row.Selected select lcTAB[row.Index]).First().name; } // Update the data source and control //dgvPlayers.SuspendLayout(); lcTAB.Clear(); //lcTAB = new LevelCollection(new LevelListViewForTab()); Server.levels.ForEach(delegate(Level l) { lcTAB.Add(l); }); //dgvPlayers.Invalidate(); dgvMapsTab.DataSource = null; dgvMapsTab.DataSource = lcTAB; // Reselect map if (selected2 != null) { foreach (Level l in Server.levels) { foreach (DataGridViewRow row in dgvMapsTab.Rows) { if (String.Equals(row.Cells[0].Value, selected2)) { row.Selected = true; } } } } dgvMapsTab.Refresh(); } }
public void UpdateMapList() { if (InvokeRequired) Invoke(new UpdateList(UpdateMapList)); else { if (dgvMaps.DataSource == null) dgvMaps.DataSource = lc; string selected = null; if (lc.Count > 0 && dgvMaps.SelectedRows.Count > 0) { selected = (from DataGridViewRow row in dgvMaps.Rows where row.Selected select lc[row.Index]).First().name; } dgvPlayers.SuspendLayout(); lc.Clear(); lc = new LevelCollection(new LevelListView()); Server.levels.ForEach(l => lc.Add(l)); dgvPlayers.Invalidate(); dgvMaps.DataSource = null; dgvMaps.DataSource = lc; if (selected != null) { foreach (DataGridViewRow row in Server.levels.SelectMany(l => dgvMaps.Rows.Cast<DataGridViewRow>().Where(row => (string)row.Cells[0].Value == selected))) row.Selected = true; } dgvMaps.Refresh(); dgvPlayers.ResumeLayout(); if (dgvMapsTab.DataSource == null) dgvMapsTab.DataSource = lcTAB; string selected2 = null; if (lcTAB.Count > 0 && dgvMapsTab.SelectedRows.Count > 0) { selected2 = (from DataGridViewRow row in dgvMapsTab.Rows where row.Selected select lcTAB[row.Index]).First().name; } dgvPlayers.SuspendLayout(); lcTAB.Clear(); lcTAB = new LevelCollection(new LevelListViewForTab()); Server.levels.ForEach(l => lcTAB.Add(l)); dgvPlayers.Invalidate(); dgvMapsTab.DataSource = null; dgvMapsTab.DataSource = lcTAB; if (selected2 != null) { foreach (DataGridViewRow row in from l in Server.levels from DataGridViewRow row in dgvMapsTab.Rows where Equals(row.Cells[0].Value, selected2) select row) row.Selected = true; } dgvMapsTab.Refresh(); } }