Refactor switch into SetDefaultBindings(EditMode)

This commit is contained in:
Andrew Schwartzmeyer
2016-07-15 13:38:55 -07:00
parent cec82d3cd6
commit ab83e00475
2 changed files with 20 additions and 12 deletions
@@ -114,6 +114,25 @@ namespace Microsoft.PowerShell
private Dictionary<ConsoleKeyInfo, KeyHandler> _dispatchTable;
private Dictionary<ConsoleKeyInfo, Dictionary<ConsoleKeyInfo, KeyHandler>> _chordDispatchTable;
/// <summary>
/// Helper to set bindings based on EditMode
/// </summary>
void SetDefaultBindings(EditMode editMode)
{
switch (editMode)
{
case EditMode.Emacs:
SetDefaultEmacsBindings();
break;
case EditMode.Vi:
SetDefaultViBindings();
break;
case EditMode.Windows:
SetDefaultWindowsBindings();
break;
}
}
void SetDefaultWindowsBindings()
{
_dispatchTable = new Dictionary<ConsoleKeyInfo, KeyHandler>(new ConsoleKeyInfoComparer())
+1 -12
View File
@@ -96,18 +96,7 @@ namespace Microsoft.PowerShell
// Switching/resetting modes - clear out chord dispatch table
_chordDispatchTable.Clear();
switch (options._editMode)
{
case EditMode.Emacs:
SetDefaultEmacsBindings();
break;
case EditMode.Vi:
SetDefaultViBindings();
break;
case EditMode.Windows:
SetDefaultWindowsBindings();
break;
}
SetDefaultBindings(Options.EditMode);
}
if (options._showToolTips.HasValue)
{