public void handleSelectClick(SelectClick click) { click.acceptPropAdd(); click?.setContainsRect(bounds); if (click?.ContainsRect ?? false) { invokeClickDelegate(click); } }
public void mouseUp(Point pos) { if (note_select) { var click = new NoteSelectClick(pos); tree.HandleMouseEvent(click); populateSelected(click); noteSelected(click); } else if (checkMouseMoved(pos)) { NodeClick click; if (checkForDragRelease(pos)) { click = new ReleaseClick(pos); selected.populateNodeClick(click); } else { click = new SelectClick(pos, new Rect(pos, down_point)); } tree.HandleMouseEvent(click); populateSelected(click); } else if (double_click && selected.selectedContainsPoint(pos)) { var click = new NodeClick(pos); selected.populateNodeClick(click); var args = new PropertyMenuEventArgs(click); PropertyMenuChanged?.Invoke(this, args); } else { var click = new StandardClick(SelectionState, pos); tree.HandleMouseEvent(click); if (!click.Handled) { populateSelected(click); } if (SelectionState == Selection.Standard) { TimeDoubleClick(); } } }