private void UpdateCurrentEditor() { var codeEditing = Editor.Instance.CodeEditing; #if PLATFORM_WINDOW // Favor the newest Visual Studio for (int i = (int)CodeEditorTypes.VS2019; i >= (int)CodeEditorTypes.VS2008; i--) { var visualStudio = codeEditing.GetInBuildEditor((CodeEditorTypes)i); if (visualStudio != null) { _currentEditor = visualStudio; return; } } #elif PLATFORM_LINUX // Favor the VS Code var vsCode = codeEditing.GetInBuildEditor(CodeEditorTypes.VSCode); if (vsCode != null) { _currentEditor = vsCode; return; } #endif // Fallback default editor (always valid) _currentEditor = codeEditing.GetInBuildEditor(CodeEditorTypes.SystemDefault); }
/// <inheritdoc /> public void OnRemoved(Editor editor) { _currentEditor = null; editor.CodeEditing.EditorAdded -= OnEditorAdded; editor.CodeEditing.EditorRemoved -= OnEditorRemoved; }
private void OnEditorRemoved(ISourceCodeEditor editor) { if (editor != _currentEditor) { return; } UpdateCurrentEditor(); }
private void OnEditorAdded(ISourceCodeEditor editor) { if (editor == this) { return; } UpdateCurrentEditor(); }
private void UpdateCurrentEditor() { var codeEditing = Editor.Instance.CodeEditing; // Favor the newest Visual Studio for (int i = (int)CodeEditorTypes.VS2019; i >= (int)CodeEditorTypes.VS2008; i--) { var visualStudio = codeEditing.GetInBuildEditor((CodeEditorTypes)i); if (visualStudio != null) { _currentEditor = visualStudio; return; } } // Fallback default editor (always valid) _currentEditor = codeEditing.GetInBuildEditor(CodeEditorTypes.SystemDefault); }
private void UpdateCurrentEditor() { var codeEditing = Editor.Instance.CodeEditing; // Favor the newest Visual Studio for (int i = (int)ScriptsBuilder.InBuildEditorTypes.VS2017; i >= (int)ScriptsBuilder.InBuildEditorTypes.VS2008; i--) { var visualStudio = codeEditing.GetInBuildEditor((ScriptsBuilder.InBuildEditorTypes)i); if (visualStudio != null) { _currentEditor = visualStudio; return; } } // Fallback text editor (always valid) _currentEditor = codeEditing.GetInBuildEditor(ScriptsBuilder.InBuildEditorTypes.Text); }
private void UpdateCurrentEditor() { var codeEditing = Editor.Instance.CodeEditing; var vsCode = codeEditing.GetInBuildEditor(CodeEditorTypes.VSCode); var rider = codeEditing.GetInBuildEditor(CodeEditorTypes.Rider); #if PLATFORM_WINDOW // Favor the newest Visual Studio for (int i = (int)CodeEditorTypes.VS2019; i >= (int)CodeEditorTypes.VS2008; i--) { var visualStudio = codeEditing.GetInBuildEditor((CodeEditorTypes)i); if (visualStudio != null) { _currentEditor = visualStudio; return; } } #elif PLATFORM_LINUX // Favor the VS Code if (vsCode != null) { _currentEditor = vsCode; return; } #endif // Code editor fallback sequence if (vsCode != null) { _currentEditor = vsCode; } else if (rider != null) { _currentEditor = rider; } else { _currentEditor = codeEditing.GetInBuildEditor(CodeEditorTypes.SystemDefault); } }