private void frmChunkFlowDiagram_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { foreach (var c in ChunkEditors.Values) { var conns = c.GetConnections(); if (conns != null) { for (var i = 0; i < conns.Count; i++) { var sp = c.GetConnectionLocation(i); var rect = new Rectangle(c.Location.X + c.Width, c.Location.Y + sp.Y - connectionPointSize / 2, connectionPointSize, connectionPointSize); if (rect.Contains(e.Location)) { connectingSource = conns[i]; connectingSourceEditor = c; connectingSourceIndex = i; isConnecting = true; return; } } } } selectionStart = e.Location; isSelecting = true; } }
private void CheckConnectTarget() { connectingTarget = null; foreach (var c in ChunkEditors.Values) { var r = new Rectangle(c.Location, c.Size); if (r.Contains(selectionEnd.X, selectionEnd.Y)) { connectingTarget = c; break; } } }
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) { EditorUnderCursor = null; foreach (var c in ChunkEditors.Values) { var r = new Rectangle(PointToScreen(c.Location), c.Size); if (r.Contains(contextMenuStrip1.Left, contextMenuStrip1.Top)) { EditorUnderCursor = c; break; } } copyToolStripMenuItem.Enabled = selectedEditors.Count > 0 || EditorUnderCursor != null; copyDisplayTextToolStripMenuItem.Enabled = selectedEditors.Count > 0 || EditorUnderCursor != null; //pasteToolStripMenuItem.Enabled = ; }