private void OnKeyDown(object e) { KeyEventArgs args = (KeyEventArgs)e; if (IsActive && args.Key == Key.Delete) { var outliner = CWorkspace.Instance.GetTool <CWorldOutlinerViewModel>(); if (outliner.SelectedEntityViewModel != null) { EditorEntityUtility.DestroyEntity(outliner.SelectedEntityViewModel.EntityId); } } }
public CWorldOutlinerViewModel() : base("World Outliner") { SetIconSourcePath("Resources/Images/Tabs/outliner.png"); Content = new WorldOutliner(); m_view = Content as IOutlinerView; CWorkspace.Instance.OnSelectedEditableObjectChanged += (oldObj, newObj) => { if (newObj != null) { switch (newObj.Type) { case CEditableObject.EObjectType.Entity: HighlightEntity(newObj.EntityId); break; case CEditableObject.EObjectType.Component: HighlightEntity(newObj.ComponentId.EntityId); break; } } else { SelectedEntityViewModel?.MarkInOutliner(false); } }; KeyDownCommand = new CRelayCommand(param => { KeyEventArgs args = (KeyEventArgs)param; if (IsActive && args.Key == Key.Delete) { if (SelectedEntityViewModel != null) { EditorEntityUtility.DestroyEntity(SelectedEntityViewModel.EntityId); } } }); }
private void OnDeleteCommand(object arg) { EditorEntityUtility.DestroyEntity(EntityId); }