Browse Source

Implemented shortcut-forwarding in DebuggerGridControl.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0wpf@3468 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 18 years ago
parent
commit
2bc455cdea
  1. 33
      src/Main/Base/Project/Src/Services/Debugger/DebuggerGridControl.cs

33
src/Main/Base/Project/Src/Services/Debugger/DebuggerGridControl.cs

@ -78,27 +78,22 @@ namespace ICSharpCode.SharpDevelop.Debugging
return true; return true;
} else { } else {
Console.WriteLine("Handling " + keyData); Console.WriteLine("Handling " + keyData);
throw new NotImplementedException(); var window = Gui.WorkbenchSingleton.MainWindow;
//var i = FindItemByShortcut(Gui.WorkbenchSingleton.MainWin32Window.MainMenuStrip.Items, keyData); foreach (System.Windows.Input.InputBinding inputBinding in window.InputBindings) {
//if (i != null) if (inputBinding.Gesture.Matches(null, new System.Windows.Input.KeyEventArgs(
// i.PerformClick(); System.Windows.Input.Keyboard.PrimaryDevice,
return false; System.Windows.PresentationSource.FromVisual(window),
} 0,
} System.Windows.Input.KeyInterop.KeyFromVirtualKey((int)(keyData & ~Keys.Modifiers))
))) {
static ToolStripMenuItem FindItemByShortcut(ToolStripItemCollection c, Keys shortcut) if (inputBinding.Command.CanExecute(inputBinding.CommandParameter)) {
{ inputBinding.Command.Execute(inputBinding.CommandParameter);
foreach (ToolStripItem i in c) { return true;
ToolStripMenuItem mi = i as ToolStripMenuItem; }
if (mi != null) { }
if (mi.ShortcutKeys == shortcut && mi.Enabled)
return mi;
mi = FindItemByShortcut(mi.DropDownItems, shortcut);
if (mi != null)
return mi;
} }
} }
return null; return false;
} }
} }

Loading…
Cancel
Save