Beispiel #1
0
 private void drawWindow_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode == Keys.Delete)
     {
         if (m_mouseController.Selected.Nodes.Any() || m_mouseController.Selected.Groups.Any())
         {
             //TODO: This would probably make more sense in MouseController.Delete
             CurrentFile.Remove(m_mouseController.Selected.Nodes.Select(CurrentFile.GetNode), m_mouseController.Selected.Groups, m_localization);
         }
         else
         {
             var delete = m_mouseController.Delete();
             if (delete != null)
             {
                 GenericUndoAction action = new GenericUndoAction(() => { delete.Value.Undo(); Redraw(); },
                                                                  () => { delete.Value.Redo(); Redraw(); },
                                                                  "Deleted");
                 CurrentFile.UndoableFile.Change(action);
             }
         }
     }
     else if (e.KeyCode == Keys.Tab && e.Control)
     {
         int index = m_context.CurrentProject.Value.Localizer.LocalizationSets.IndexOf(m_context.CurrentLocalization.Value);
         if (index >= 0)
         {
             m_context.CurrentLocalization.Value = m_context.CurrentProject.Value.Localizer.LocalizationSets.InfiniteRepeat().ElementAt(index + 1);
             Redraw();
         }
     }
 }