C#: Fix line in OpenInExternalEditor

This commit is contained in:
Raul Santos 2023-07-13 02:52:09 +02:00
parent 83cc5d4914
commit 132a1daf1a
No known key found for this signature in database
GPG Key ID: B532473AE3A803E4
3 changed files with 6 additions and 5 deletions

View File

@ -280,7 +280,7 @@ void EditorInterface::edit_node(Node *p_node) {
}
void EditorInterface::edit_script(const Ref<Script> &p_script, int p_line, int p_col, bool p_grab_focus) {
ScriptEditor::get_singleton()->edit(p_script, p_line, p_col, p_grab_focus);
ScriptEditor::get_singleton()->edit(p_script, p_line - 1, p_col - 1, p_grab_focus);
}
void EditorInterface::open_scene_from_path(const String &scene_path) {

View File

@ -2331,7 +2331,7 @@ bool ScriptEditor::edit(const Ref<Resource> &p_resource, int p_line, int p_col,
}
if (p_line > 0) {
se->goto_line(p_line - 1);
se->goto_line(p_line);
}
}
_update_script_names();
@ -2426,8 +2426,8 @@ bool ScriptEditor::edit(const Ref<Resource> &p_resource, int p_line, int p_col,
_test_script_times_on_disk(p_resource);
_update_modified_scripts_for_external_editor(p_resource);
if (p_line > 0) {
se->goto_line(p_line - 1);
if (p_line >= 0) {
se->goto_line(p_line);
}
notify_script_changed(p_resource);

View File

@ -138,7 +138,8 @@ namespace GodotTools.Build
{
var script = (Script)ResourceLoader.Load(file, typeHint: Internal.CSharpLanguageType);
if (script != null && Internal.ScriptEditorEdit(script, issue.Line, issue.Column))
// Godot's ScriptEditor.Edit is 0-based but the issue lines are 1-based.
if (script != null && Internal.ScriptEditorEdit(script, issue.Line - 1, issue.Column - 1))
Internal.EditorNodeShowScriptScreen();
}
}