/// <summary> /// Clear the contents /// </summary> internal override void Clear() { _elements.Clear(); var element = new FreeElement(); element.OnCSUnitsPerPixelChanged(this.CSUnitsPerPixel); _elements.Add(element); base.Clear(); }
/// <summary> /// End the measuring /// </summary> internal override void EndMeasuring() { base.EndMeasuring(); ActiveCollection.FinalizeElements(); CreateFeatureGeometry(); var element = new FreeElement(); element.OnCSUnitsPerPixelChanged(this.CSUnitsPerPixel); _elements.Add(element); }
/// <summary> /// Closes the measurer /// </summary> internal override void CloseMeasurer() { if (Coordinates.Count == 0) { // No Coordinates; so not drawing; clear everything Clear(); } else if (Coordinates.Count <= 2) { if (_elements.Count > 1) { Coordinates.Clear(); LastCoordinate = null; LastMouseCoordinate = null; _elements.RemoveAt(_elements.Count - 1); var element = new FreeElement(); element.OnCSUnitsPerPixelChanged(this.CSUnitsPerPixel); _elements.Add(element); CreateFeatureGeometry(); } else { Clear(); } } else { ActiveCollection.Close(); EndMeasuring(); Coordinates.Clear(); LastCoordinate = null; LastMouseCoordinate = null; } }