Beispiel #1
0
        private static void ReloadKeymap()
        {
            foreach (var binding in _bindings)
            {
                ContextActionService.Unbind(binding);
            }

            LoadKeymap(_defaultShortcutsJson);
            LoadKeymap(File.ReadAllText(CustomShortcutsPath));
        }
Beispiel #2
0
        static KeyBindings()
        {
            _bindings = new List <ContextActionService.ContextBinding>();

            DataModel.GetService <ContextActionService>();
            ContextActionService.DefineState("viewportFocus");
            ContextActionService.DefineState("scriptEditorFocus");
            ContextActionService.DefineState("dragging");
            ContextActionService.DefineState("selectionEmpty");
        }
Beispiel #3
0
        public CodeEditorViewModel()
        {
            AvalonEditCommands.IndentSelection.InputGestures.Clear();
            AvalonEditCommands.DeleteLine.InputGestures.Clear();

            ContextActionService.Register("scriptEditor.indent", () =>
            {
                var test = new TextEditor();
                AvalonEditCommands.IndentSelection.Execute(null, test);
            });

            ContextActionService.Register("scriptEditor.deleteLine", () =>
            {
                var test = new TextEditor();
                AvalonEditCommands.DeleteLine.Execute(null, test);
            });
        }
Beispiel #4
0
        static ToolManager()
        {
            MoveTool   = new MoveTool();
            SelectTool = new SelectTool();
            ScaleTool  = new ScaleTool();
            RotateTool = new RotateTool();

            SelectionService.Service.SelectionChanged.Event += () =>
            {
                ContextActionService.SetState("selectionEmpty", SelectionService.SelectionCount == 0);
            };

            ContextActionService.Register("tools.selectTool", () => SelectTool.IsEquipped = true);
            ContextActionService.Register("tools.moveTool", () => MoveTool.IsEquipped     = true);
            ContextActionService.Register("tools.scaleTool", () => ScaleTool.IsEquipped   = true);
            ContextActionService.Register("tools.rotateTool", () => RotateTool.IsEquipped = true);
            ContextActionService.Register("pickerInsideModels", PickerInsideModels);
            ContextActionService.Register("groupSelection", GroupSelection);
            ContextActionService.Register("ungroupSelection", UngroupSelection);
        }
Beispiel #5
0
        private static void LoadKeymap(string keymap)
        {
            var items = JsonConvert.DeserializeObject <KeymapItem[]>(keymap);

            foreach (var item in items)
            {
                Key         key;
                Key         modifier;
                Func <bool> when;

                ParseKey(item.Key, out key, out modifier);
                ParseWhen(item.When, out when);

                try
                {
                    _bindings.Add(ContextActionService.Bind(item.Command, key, modifier, when));
                }
                catch (ExpressionsException e)
                {
                    Editor.Current.Logger.Error(e, "An exception was thrown when parsing a keybinding expression.");
                }
            }
        }
Beispiel #6
0
 internal static void RegisterAction(string name, Action action)
 {
     ContextActionService.Register(name, action);
 }
Beispiel #7
0
 protected override void OnDeactivate(bool close)
 {
     ContextActionService.SetState("scriptEditorFocus", false);
 }
Beispiel #8
0
 protected override void OnActivate()
 {
     ContextActionService.SetState("scriptEditorFocus", true);
 }