private void endModelCommand()
{
if (modelCmd != null)
modelCmd.Cancel = true;
mainFrm.ReportProgress("", 0, "", 0, DateTime.Now.AddMilliseconds(1));
if (!mainFrm.SmallPanel.IsDisposed && !mainFrm.SmallPanel.Disposing)
mainFrm.SmallPanel.Stop();
mainFrm.HideCommandToolbox();
Model.Model.Instance.Undo.Commit();
modelCmd = null;
if (services != null)
{
services.Dispose();
services = null;
}
TrackingController.TrackingService = null;
TrackingController.ResetStatus(Canguro.View.GraphicViewManager.Instance.ActiveView);
TrackingController.SnapController.IsActive = false;
TrackingController.SnapController.PrimaryPoint = Snap.PointMagnet.ZeroMagnet;
// Reset selection
SelectionCommand.Start(null);
viewCmd = SelectionCommand;
mainFrm.ScenePanel.Cursor = viewCmd.Cursor;
if (EndModelCommand != null)
EndModelCommand(this, EventArgs.Empty);
}