private void mergeVertexPairsToolStripMenuItem_Click(object sender, EventArgs e) { if (Manipulated == meshController) { CurrentMesh.MergeVertexPairs(); Manipulated.UpdateSelection(); OnEachViewDo(view => view.Invalidate()); } }
void RedoDeleteSelected(List <IndexedItem> selectedItems) { Trace.WriteLine("redoDeleteSelected:"); Manipulated = itemsController; items.SetSelectionFromIndexedItems(selectedItems); Manipulated.RemoveSelected(); undo.PrepareUndo("Delete", Invocation.Create(selectedItems, UndoDeleteSelected)); itemsController.UpdateSelection(); OnEachViewDo(view => view.Invalidate()); }
void RedoCloneSelected(List <uint> selection) { Trace.WriteLine("redoCloneSelected:"); Manipulated = itemsController; items.CurrentSelection = selection; Manipulated.CloneSelected(); undo.PrepareUndo("Clone", Invocation.Create(selection, UndoCloneSelected)); itemsController.UpdateSelection(); OnEachViewDo(view => view.Invalidate()); }
private void flipToolStripMenuItem_Click(object sender, EventArgs e) { Trace.WriteLine("flipSelected:"); if (Manipulated.SelectedCount <= 0) { return; } if (Manipulated == meshController) { FullMeshAction("Flip", () => CurrentMesh.FlipSelected()); } Manipulated.UpdateSelection(); OnEachViewDo(view => view.Invalidate()); }
private void mergeToolStripMenuItem_Click(object sender, EventArgs e) { Trace.WriteLine("mergeSelected:"); if (Manipulated.SelectableCount <= 0) { return; } if (Manipulated == itemsController) { AllItemsAction("Merge", () => items.MergeSelectedItems()); } else { FullMeshAction("Merge", () => CurrentMesh.MergeSelected()); } Manipulated.UpdateSelection(); OnEachViewDo(view => view.Invalidate()); }
private void deleteToolStripMenuItem_Click(object sender, EventArgs e) { Trace.WriteLine("deleteSelected:"); if (Manipulated.SelectedCount <= 0) { return; } if (Manipulated == itemsController) { var currentItems = items.CurrentItems; undo.PrepareUndo("Delete", Invocation.Create(currentItems, UndoDeleteSelected)); Manipulated.RemoveSelected(); } else { FullMeshAction("Delete", () => Manipulated.RemoveSelected()); } OnEachViewDo(view => view.Invalidate()); }
private void cloneToolStripMenuItem_Click(object sender, EventArgs e) { Trace.WriteLine("cloneSelected:"); if (Manipulated.SelectedCount <= 0) { return; } bool startManipulation = false; if (!manipulationFinished) { startManipulation = true; ManipulationEnded(null); } if (Manipulated == itemsController) { var selection = items.CurrentSelection; undo.PrepareUndo("Clone", Invocation.Create(selection, UndoCloneSelected)); Manipulated.CloneSelected(); } else { FullMeshAction("Clone", () => Manipulated.CloneSelected()); } OnEachViewDo(view => view.Invalidate()); if (startManipulation) { ManipulationStarted(null); } }
private void invertSelectionToolStripMenuItem_Click(object sender, EventArgs e) { Manipulated.InvertSelection(); OnEachViewDo(view => view.Invalidate()); }
private void selectAllToolStripMenuItem_Click(object sender, EventArgs e) { Manipulated.ChangeSelection(1); OnEachViewDo(view => view.Invalidate()); }