private void SwitchSelectionTracking(VObjectCollection vObjectCollection, bool enable) { if (enable) { vObjectCollection.SelectedIndexChanged += VObjectCollection_SelectedIndexChanged; } else { vObjectCollection.SelectedIndexChanged -= VObjectCollection_SelectedIndexChanged; } }
private void SwitchCollectionTracking(VObjectCollection vObjectCollection, bool enable) { if (enable) { vObjectCollection.ItemAdded += VObjectCollection_ItemAdded; vObjectCollection.ItemMoved += VObjectCollection_ItemMoved; vObjectCollection.ItemRemoved += VObjectCollection_ItemRemoved; } else { vObjectCollection.ItemAdded -= VObjectCollection_ItemAdded; vObjectCollection.ItemMoved -= VObjectCollection_ItemMoved; vObjectCollection.ItemRemoved -= VObjectCollection_ItemRemoved; } }
private void VObjectCollection_ItemRemoved(object sender, ItemRemovedEventArgs <VObject> e) { VObjectCollection collection = (VObjectCollection)sender; var vObjectIndex = e.Index; var item = e.Item; var layerIndex = collection.Layer.Index; if (History.TrackingEnabled) { History.AddVObjectRemoved(item, vObjectIndex, layerIndex); } // not call while deserialization if (IsInitialized) { item.OnRemovedFromCanvas(this); } }