public void AddNewTarget(double latitude, double longitude) { TargetdeckComponent before = (TargetdeckComponent)hComponent.Clone(); // Create new component TargetComponent newTarget = new TargetComponent(latitude, longitude); hComponent.AddTarget(newTarget); // Create new icon double x = (longitude + 180.0) * worldMap.Size.Width / 360.0; double y = (latitude + 90.0) * worldMap.Size.Height / 180.0; TargetIcon newIcon = new TargetIcon(newTarget); newIcon.Location = new Point((int)x, (int)y); newIcon.Visible = true; newIcon.Tag = newTarget; targetIcons.Add(newIcon); Controls.Add(newIcon); newIcon.BringToFront(); // Register event _mManager.RegisterEvent(before, hComponent, hComponent, "Add Target"); }
public void RefreshTargets() { // (Re)creates icons for each target in deck foreach (TargetIcon t in targetIcons) { t.Visible = false; } targetIcons.Clear(); double x, y; foreach (TargetComponent target in hComponent.Targets) { TargetIcon newIcon = new TargetIcon(target); x = ((double)target.TargetPosition.InitialConditions[0] + 180.0) * worldMap.Size.Width / 360.0; y = ((double)target.TargetPosition.InitialConditions[1] + 90.0) * worldMap.Size.Height / 180.0; newIcon.Location = new Point((int)x, (int)y); newIcon.Tag = target; newIcon.Visible = true; targetIcons.Add(newIcon); Controls.Add(newIcon); newIcon.BringToFront(); } return; }