diff options
Diffstat (limited to 'editor/code_editor.cpp')
-rw-r--r-- | editor/code_editor.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index 4c7f2f53cc..24e86770bf 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -650,12 +650,12 @@ void CodeTextEditor::_text_editor_gui_input(const Ref<InputEvent> &p_event) { } void CodeTextEditor::_zoom_in() { - font_resize_val += EDSCALE; + font_resize_val += MAX(EDSCALE, 1.0f); _zoom_changed(); } void CodeTextEditor::_zoom_out() { - font_resize_val -= EDSCALE; + font_resize_val -= MAX(EDSCALE, 1.0f); _zoom_changed(); } @@ -677,7 +677,20 @@ void CodeTextEditor::_reset_zoom() { void CodeTextEditor::_line_col_changed() { line_nb->set_text(itos(text_editor->cursor_get_line() + 1)); - col_nb->set_text(itos(text_editor->cursor_get_column() + 1)); + + String line = text_editor->get_line(text_editor->cursor_get_line()); + + int positional_column = 0; + + for (int i = 0; i < text_editor->cursor_get_column(); i++) { + if (line[i] == '\t') { + positional_column += text_editor->get_indent_size(); //tab size + } else { + positional_column += 1; + } + } + + col_nb->set_text(itos(positional_column + 1)); } void CodeTextEditor::_text_changed() { |