/// <summary> /// Generates labels with specified positions /// </summary> private void btnOk_Click(object sender, EventArgs e) { // callback and wait cursor Enabled = false; Cursor = Cursors.WaitCursor; var lb = _shapefile.Labels; var positioning = get_LabelPositioning(); lb.Style.Orientation = (LabelOrientation)cboLineOrientation.SelectedIndex; try { // generation _shapefile.GenerateEmptyLabels(positioning, !chkLabelEveryPart.Checked); _shapefile.Labels.SavingMode = PersistenceType.XmlOverwrite; // .lbl file should be updated if (_shapefile.PointOrMultiPoint) { if (optAlignBottomCenter.Checked) { _alignment = LabelAlignment.BottomCenter; } if (optAlignBottomLeft.Checked) { _alignment = LabelAlignment.BottomLeft; } if (optAlignBottomRight.Checked) { _alignment = LabelAlignment.BottomRight; } if (optAlignCenter.Checked) { _alignment = LabelAlignment.Center; } if (optAlignCenterLeft.Checked) { _alignment = LabelAlignment.CenterLeft; } if (optAlignCenterRight.Checked) { _alignment = LabelAlignment.CenterRight; } if (optAlignTopCenter.Checked) { _alignment = LabelAlignment.TopCenter; } if (optAlignTopLeft.Checked) { _alignment = LabelAlignment.TopLeft; } if (optAlignTopRight.Checked) { _alignment = LabelAlignment.TopRight; } } // updating references to categories //if (lb.NumCategories > 0) //{ // for (int i = 0; i < lb.Count; i++) // { // MapWinGIS.Label label = lb.get_Label(i, 0); // label.Category = m_shapefile.get_ShapeCategory(i); // } //} } finally { Enabled = true; Cursor = Cursors.Default; } }