|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.Data;
|
|
|
|
|
using System.Drawing;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
|
|
|
|
|
namespace KGIS.Plugin.LayerProperty.View
|
|
|
|
|
{
|
|
|
|
|
public partial class FormPointPlacementAngles : Form
|
|
|
|
|
{
|
|
|
|
|
private object source;
|
|
|
|
|
private object snode;
|
|
|
|
|
private object target;
|
|
|
|
|
private Array angles;
|
|
|
|
|
public Array Angles
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this.angles;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this.angles = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
public FormPointPlacementAngles()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
public void Init(Array angles)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
for (int i = 0; i < angles.Length; i++)
|
|
|
|
|
{
|
|
|
|
|
double num = Convert.ToDouble(angles.GetValue(i));
|
|
|
|
|
this.listBoxControl1.Items.Add(num);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void btnAdd_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (this.StringCanUse())
|
|
|
|
|
{
|
|
|
|
|
this.listBoxControl1.Items.Add(double.Parse(this.txtNewAngle.Text));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private bool StringCanUse()
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
bool result;
|
|
|
|
|
if (this.txtNewAngle.Text == "")
|
|
|
|
|
{
|
|
|
|
|
result = false;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
double num = 0.0;
|
|
|
|
|
if (!double.TryParse(this.txtNewAngle.Text, out num))
|
|
|
|
|
{
|
|
|
|
|
result = false;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
if (num > 360.0 || num < 0.0)
|
|
|
|
|
{
|
|
|
|
|
result = false;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
if (this.listBoxControl1.Items.Contains(num))
|
|
|
|
|
{
|
|
|
|
|
result = false;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
result = true;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
private void btnUp_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (this.snode == null)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
this.source = this.snode;
|
|
|
|
|
int num = this.listBoxControl1.Items.IndexOf(this.source);
|
|
|
|
|
if (num == 0)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
this.target = this.listBoxControl1.Items[num - 1];
|
|
|
|
|
this.UpAndDown();
|
|
|
|
|
}
|
|
|
|
|
private void UpAndDown()
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (this.source != this.target)
|
|
|
|
|
{
|
|
|
|
|
this.listBoxControl1.Items.IndexOf(this.source);
|
|
|
|
|
int num = this.listBoxControl1.Items.IndexOf(this.target);
|
|
|
|
|
if (num != -1)
|
|
|
|
|
{
|
|
|
|
|
this.listBoxControl1.Items.Remove(this.source);
|
|
|
|
|
this.listBoxControl1.Items.Insert(num, this.source);
|
|
|
|
|
this.listBoxControl1.SelectedIndex = num;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void ControlsEnable(bool enable)
|
|
|
|
|
{
|
|
|
|
|
this.btnDown.Enabled = enable;
|
|
|
|
|
this.btnRemove.Enabled = enable;
|
|
|
|
|
this.btnUp.Enabled = enable;
|
|
|
|
|
}
|
|
|
|
|
private void listBoxControl1_SelectedIndexChanged(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (this.listBoxControl1.SelectedIndex > -1)
|
|
|
|
|
{
|
|
|
|
|
this.ControlsEnable(true);
|
|
|
|
|
}
|
|
|
|
|
if (this.listBoxControl1.SelectedIndex == 0)
|
|
|
|
|
{
|
|
|
|
|
this.ControlsEnable(true);
|
|
|
|
|
this.btnUp.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
if (this.listBoxControl1.SelectedIndex == this.listBoxControl1.ItemCount - 1)
|
|
|
|
|
{
|
|
|
|
|
this.btnDown.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
if (this.listBoxControl1.SelectedItems.Count > 1)
|
|
|
|
|
{
|
|
|
|
|
this.btnUp.Enabled = false;
|
|
|
|
|
this.btnDown.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
this.snode = this.listBoxControl1.SelectedItem;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void btnDown_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (this.snode != null)
|
|
|
|
|
{
|
|
|
|
|
this.source = this.snode;
|
|
|
|
|
int num = this.listBoxControl1.Items.IndexOf(this.source);
|
|
|
|
|
if (num != this.listBoxControl1.Items.Count - 1)
|
|
|
|
|
{
|
|
|
|
|
this.target = this.listBoxControl1.Items[num + 1];
|
|
|
|
|
this.UpAndDown();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void btnRemove_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
int index = this.listBoxControl1.Items.IndexOf(this.snode);
|
|
|
|
|
this.listBoxControl1.Items.RemoveAt(index);
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
//RdbUtil.AddException(ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void btnOK_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
this.angles = new double[this.listBoxControl1.Items.Count];
|
|
|
|
|
int num = 0;
|
|
|
|
|
foreach (object current in this.listBoxControl1.Items)
|
|
|
|
|
{
|
|
|
|
|
double num2 = Convert.ToDouble(current);
|
|
|
|
|
this.angles.SetValue(num2, num);
|
|
|
|
|
num++;
|
|
|
|
|
}
|
|
|
|
|
base.DialogResult = DialogResult.OK;
|
|
|
|
|
base.Close();
|
|
|
|
|
}
|
|
|
|
|
private void btnCancel_Click(object sender, System.EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
base.DialogResult = DialogResult.Cancel;
|
|
|
|
|
base.Close();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|