/// <summary> /// Load all villages from all polygons /// </summary> private void LoadPolygonData_Click(object sender, System.EventArgs e) { List <Polygon> polygons = World.Default.Map.Manipulators.PolygonManipulator.GetAllPolygons().ToList(); if (!polygons.Any()) { World.Default.Map.Manipulators.SetManipulator(ManipulatorManagerTypes.Polygon); MessageBox.Show(ControlsRes.PolygonControl_StartHelp, ControlsRes.PolygonControl_StartHelpTitle, MessageBoxButtons.OK, MessageBoxIcon.Information); } if (ModusPolygon.Enabled) { // BBCode export: load villages GridExVillage.RemoveFilters(); World.Default.Map.EventPublisher.ActivatePolygon(this, polygons); } else { // Polygon management IEnumerable <string> groups = polygons.Select(x => x.Group).Distinct().OrderBy(x => x); var valueList = new GridEXValueListItemCollection(); foreach (string group in groups) { valueList.Add(group, group); } GridExPolygon.RootTable.Columns["GROUP"].EditValueList = valueList; GridExPolygon.DataSource = polygons; GridExPolygon.MoveFirst(); } }
private void PolygonControl_Load(object sender, System.EventArgs e) { GridExVillage.Configure(false, true); GridExPolygon.Configure(true, false); GridExPolygon.RootTable.Columns["LineColor"].ConfigureAsColor(); }
/// <summary> /// BBCodeArea polygon(s) have been ported to this control /// </summary> private void EventPublisher_PolygonActivated(object sender, PolygonEventArgs e) { Polygon[] polygons = e.Polygons.ToArray(); if (polygons.Length == 1) { // Polygon management grid: jump to the selected polygon row foreach (GridEXRow row in GridExPolygon.GetRows()) { if (row.RowType == RowType.Record) { var polygon = (Polygon)row.DataRow; if (polygon.Equals(polygons[0])) { GridExPolygon.MoveTo(row); break; } } } } GridExVillage.DataSource = PolygonDataSet.CreateDataSet(e.Polygons); GridExVillage.MoveFirst(); }