private void SendGDIShapeUpdatedMessage() { try { MessageEventArgs e = new MessageEventArgs(); e.Messages[MessageID.GDIShapeUpdated] = _GDI.Clone(); if (_selectedPathIndex.HasValue) { e.Messages[MessageID.SelectedPathIndex] = _selectedPathIndex; } else if (_GDI.Paths.Count > 0) { e.Messages[MessageID.SelectedPathIndex] = 0; } SendMessage(e); } catch (Exception ex) { SendErrorMessage(ex.ToString()); throw; } }