/// <summary> /// Find all of the key bindings which have been removed /// </summary> internal static List<CommandKeyBinding> FindKeyBindingsMarkedAsRemoved(this ILegacySettings settings, CommandListSnapshot commandsSnapshot) { var list = new List<CommandKeyBinding>(); if (!settings.HaveUpdatedKeyBindings) { return list; } var map = new Dictionary<string, CommandId>(); foreach (var commandKeyBinding in commandsSnapshot.CommandKeyBindings) { map[commandKeyBinding.Name] = commandKeyBinding.Id; } foreach (var commandBindingSetting in settings.RemovedBindings) { CommandId id; KeyBinding binding; if (KeyBinding.TryParse(commandBindingSetting.CommandString, out binding) && map.TryGetValue(commandBindingSetting.Name, out id)) { list.Add(new CommandKeyBinding( id, commandBindingSetting.Name, binding)); } } return list; }
public CommandKeyBindingSnapshot( CommandListSnapshot snapshot, IEnumerable<KeyInput> vimFirstKeyInputs, IEnumerable<CommandKeyBinding> removed, IEnumerable<CommandKeyBinding> conflicting) { _commandListSnapshot = snapshot; _vimFirstKeyInputs = vimFirstKeyInputs.ToReadOnlyCollection(); _removedBindings = removed.ToReadOnlyCollection(); _conflictingBindings = conflicting.ToReadOnlyCollection(); }
public CommandKeyBindingSnapshot( CommandListSnapshot snapshot, IEnumerable <KeyInput> vimFirstKeyInputs, IEnumerable <CommandKeyBinding> removed, IEnumerable <CommandKeyBinding> conflicting) { _commandListSnapshot = snapshot; _vimFirstKeyInputs = vimFirstKeyInputs.ToReadOnlyCollection(); _removedBindings = removed.ToReadOnlyCollection(); _conflictingBindings = conflicting.ToReadOnlyCollection(); }
/// <summary> /// Find all of the key bindings which have been removed /// </summary> internal static List <CommandKeyBinding> FindKeyBindingsMarkedAsRemoved(this ILegacySettings settings, CommandListSnapshot commandsSnapshot) { var list = new List <CommandKeyBinding>(); if (!settings.HaveUpdatedKeyBindings) { return(list); } var map = new Dictionary <string, CommandId>(); foreach (var commandKeyBinding in commandsSnapshot.CommandKeyBindings) { map[commandKeyBinding.Name] = commandKeyBinding.Id; } foreach (var commandBindingSetting in settings.RemovedBindings) { CommandId id; KeyBinding binding; if (KeyBinding.TryParse(commandBindingSetting.CommandString, out binding) && map.TryGetValue(commandBindingSetting.Name, out id)) { list.Add(new CommandKeyBinding( id, commandBindingSetting.Name, binding)); } } return(list); }