private string GetExtraDataOptionText(TrackExtraData data) { switch (data) { case TrackExtraData.None: return(ScreenManagerLang.dlgConfigureTrajectory_ExtraData_None); case TrackExtraData.Name: return(ScreenManagerLang.dlgConfigureDrawing_Name); case TrackExtraData.Center: return(ScreenManagerLang.ExtraData_Center); case TrackExtraData.Radius: return(ScreenManagerLang.ExtraData_Radius); case TrackExtraData.Diameter: return(ScreenManagerLang.ExtraData_Diameter); case TrackExtraData.Circumference: return(ScreenManagerLang.ExtraData_Circumference); } return(""); }
private ToolStripMenuItem GetMeasurementMenu(TrackExtraData data) { ToolStripMenuItem mnu = new ToolStripMenuItem(); mnu.Text = GetExtraDataOptionText(data); mnu.Checked = trackExtraData == data; mnu.Click += (s, e) => { trackExtraData = data; InvalidateFromMenu(s); if (ShowMeasurableInfoChanged != null) { ShowMeasurableInfoChanged(this, new EventArgs <TrackExtraData>(trackExtraData)); } }; return(mnu); }
public void InitializeMeasurableData(TrackExtraData trackExtraData) { // This is called when the drawing is added and a previous drawing had its measurement option switched on. // We try to retain a similar measurement option. if (measureInitialized) { return; } measureInitialized = true; // If the option is supported, we just use it, otherwise we use the length. if (trackExtraData == TrackExtraData.None || trackExtraData == TrackExtraData.Name || trackExtraData == TrackExtraData.TotalDistance) { this.trackExtraData = trackExtraData; } else { this.trackExtraData = TrackExtraData.TotalDistance; } }
private void mnuCalibrate_Click(object sender, EventArgs e) { if (points["a"].NearlyCoincideWith(points["b"])) { return; } if (trackExtraData == TrackExtraData.None) { trackExtraData = TrackExtraData.TotalDistance; if (ShowMeasurableInfoChanged != null) { ShowMeasurableInfoChanged(this, new EventArgs <TrackExtraData>(trackExtraData)); } } FormCalibrateLine fcm = new FormCalibrateLine(CalibrationHelper, this); FormsHelper.Locate(fcm); fcm.ShowDialog(); fcm.Dispose(); InvalidateFromMenu(sender); }
public void ReadXml(XmlReader xmlReader, PointF scale, TimestampMapper timestampMapper) { if (xmlReader.MoveToAttribute("id")) { identifier = new Guid(xmlReader.ReadContentAsString()); } if (xmlReader.MoveToAttribute("name")) { name = xmlReader.ReadContentAsString(); } xmlReader.ReadStartElement(); while (xmlReader.NodeType == XmlNodeType.Element) { switch (xmlReader.Name) { case "Start": { PointF p = XmlHelper.ParsePointF(xmlReader.ReadElementContentAsString()); points["a"] = p.Scale(scale.X, scale.Y); break; } case "End": { PointF p = XmlHelper.ParsePointF(xmlReader.ReadElementContentAsString()); points["b"] = p.Scale(scale.X, scale.Y); break; } case "ExtraData": { TypeConverter enumConverter = TypeDescriptor.GetConverter(typeof(TrackExtraData)); trackExtraData = (TrackExtraData)enumConverter.ConvertFromString(xmlReader.ReadElementContentAsString()); break; } case "MeasureLabel": { miniLabel = new MiniLabel(xmlReader, scale); break; } case "DrawingStyle": style = new DrawingStyle(xmlReader); BindStyle(); break; case "InfosFading": infosFading.ReadXml(xmlReader); break; case "Measure": xmlReader.ReadOuterXml(); break; default: string unparsed = xmlReader.ReadOuterXml(); log.DebugFormat("Unparsed content in KVA XML: {0}", unparsed); break; } } xmlReader.ReadEndElement(); initializing = false; measureInitialized = true; miniLabel.SetAttach(GetMiddlePoint(), false); miniLabel.BackColor = styleHelper.Color; SignalAllTrackablePointsMoved(); }
public void InitializeMeasurableData(TrackExtraData trackExtraData) { }
private void MeasurableDrawing_ShowMeasurableInfoChanged(object sender, EventArgs <TrackExtraData> e) { trackExtraData = e.Value; }
public void ReadXml(XmlReader xmlReader, PointF scale, TimestampMapper timestampMapper) { if (xmlReader.MoveToAttribute("id")) { identifier = new Guid(xmlReader.ReadContentAsString()); } if (xmlReader.MoveToAttribute("name")) { name = xmlReader.ReadContentAsString(); } xmlReader.ReadStartElement(); while (xmlReader.NodeType == XmlNodeType.Element) { switch (xmlReader.Name) { case "Origin": center = XmlHelper.ParsePointF(xmlReader.ReadElementContentAsString()); break; case "Radius": radius = (int)(xmlReader.ReadElementContentAsInt() * scale.X); break; case "ExtraData": { TypeConverter enumConverter = TypeDescriptor.GetConverter(typeof(TrackExtraData)); trackExtraData = (TrackExtraData)enumConverter.ConvertFromString(xmlReader.ReadElementContentAsString()); break; } case "MeasureLabel": { miniLabel = new MiniLabel(xmlReader, scale); break; } case "ShowCenter": showCenter = XmlHelper.ParseBoolean(xmlReader.ReadElementContentAsString()); break; case "DrawingStyle": style = new DrawingStyle(xmlReader); BindStyle(); break; case "InfosFading": infosFading.ReadXml(xmlReader); break; default: string unparsed = xmlReader.ReadOuterXml(); log.DebugFormat("Unparsed content in KVA XML: {0}", unparsed); break; } } xmlReader.ReadEndElement(); initializing = false; measureInitialized = true; miniLabel.SetAttach(center, false); miniLabel.BackColor = styleHelper.Color; }