public void DeleteObjectRay(ObjectProto X) { List <Ray> Rayss = new List <Ray>(); List <ObjectProto> Objectss = new List <ObjectProto>(); X.BeingRemoved(); foreach (var alpha in Rays) { if (alpha != X) { Rayss.Add(alpha); } } foreach (var alpha in Objects) { if (alpha != X) { Objectss.Add(alpha); } } allow_list_access = true; one_obj = true; rays = Rayss; objects = Objectss; one_obj = false; allow_list_access = false; if (Form1.form != null && Form1.form.z != null) { Form1.form.SelectedItem = null; Form1.form.z.Instance_OnSelectedChange(this, new SelectedChangeArgs(null)); } if (OnObjectsRaysChange != null) { OnObjectsRaysChange.Invoke(this, new EventArgs()); } }
public void RaiseObjectsChange() { if (OnObjectsRaysChange != null) { OnObjectsRaysChange.Invoke(this, new EventArgs()); } if (ObjectsChanged != null) { ObjectsChanged.Invoke(this, new EventArgs()); } }
public int AddRay(string Name, SystemCoordinates Beginning, Angle angle, BrightPoint bpoint, bool GenNew) { if (WarnedRays == false && WarnedRaysFinalized == false && rays.Count >= 10) { if (MessageBox.Show(STranslation.T["WarnRay"] + '\n' + STranslation.T["WantToContinue"], STranslation.T["Warning"], MessageBoxButtons.OKCancel) == DialogResult.OK) { WarnedRays = false; } else { WarnedRays = true; } WarnedRaysFinalized = true; } if (WarnedRaysFinalized == false || WarnedRays == false) { if (GenNew && !ObjectExists(bpoint.Name)) { AddObject(bpoint); } Ray ToAdd = new Ray(Name, rayMaxID, Beginning, angle, bpoint.Name); CheckExistObj = ToAdd; ObjectProto Found = Rays.Find(CheckExistance); if (Found != null) { MessageBox.Show(STranslation.T["FoundAnotherRayWithThisName"]); return(-1); } ObjectsChanged += new EventHandler(ToAdd.ObjectsChanged); Rays.Add(ToAdd); Rays[Rays.Count - 1].ObjectsChanged(this, new EventArgs()); rayMaxID++; if (OnObjectsRaysChange != null) { OnObjectsRaysChange.Invoke(this, new EventArgs()); } return(rayMaxID - 1); } return(-1); }
public int AddObject(ObjectProto ObjectToAdd) { int count = 0; foreach (ObjectProto x in objects) { if (!(x is BrightPoint)) { count++; } } if (WarnedObjects == false && WarnedObjectsFinalized == false && count >= 10) { DialogResult dr = MessageBox.Show(STranslation.T["WarnObject"] + '\n' + STranslation.T["WantToContinue"], STranslation.T["Warning"], MessageBoxButtons.OKCancel); if (dr == DialogResult.OK) { WarnedObjects = false; } else { WarnedObjects = true; } WarnedObjectsFinalized = true; } if (WarnedObjectsFinalized == false || WarnedObjects == false) { ObjectToAdd.ID = objMaxID; CheckExistObj = ObjectToAdd; ObjectProto Found = Objects.Find(CheckExistance); if (Found != null) { MessageBox.Show(STranslation.T["FoundAnotherObjectWithThisName"]); return(-1); } Objects.Add(ObjectToAdd); objMaxID++; if (Rays.Count != 0) { ObjectsChanged.Invoke(this, new EventArgs()); } if (OnObjectsRaysChange != null) { OnObjectsRaysChange.Invoke(this, new EventArgs()); } return(objMaxID - 1); } else if (ObjectToAdd is BrightPoint) { ObjectToAdd.ID = objMaxID; CheckExistObj = ObjectToAdd; ObjectProto Found = Objects.Find(CheckExistance); if (Found != null) { MessageBox.Show(STranslation.T["FoundAnotherObjectWithThisName"]); return(-1); } Objects.Add(ObjectToAdd); objMaxID++; if (Rays.Count != 0) { ObjectsChanged.Invoke(this, new EventArgs()); } if (OnObjectsRaysChange != null) { OnObjectsRaysChange.Invoke(this, new EventArgs()); } return(objMaxID - 1); } return(-1); }