summaryrefslogtreecommitdiff
path: root/editor/code_editor.h
AgeCommit message (Collapse)Author
2023-02-12Rework code editor multiline operationsaXu-AP
Fix bugs if 2 selections were on same line. Fix bugs when selection ended at new line. Make carets stay in place after operation and on undo. Affects: delete lines, move lines, toggle comments, bookmarks and breakpoints.
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2022-12-06Cancels the code complete timer when the caret moves to another lineAlfred Reinold Baudisch
Fixes and closes #68961
2022-10-11Fix some bugs about search in code editorRindbee
1. Fix #61713; 2. Fix the bug when there are consecutive matches, forward searching will skip the adjacent item; 3. Fix the bug that enable the selection-only option will affect the operations in search mode.
2022-10-06Merge pull request #61902 from Paulb23/multi-caretRémi Verschelde
Add Multi-caret support to TextEdit
2022-10-05Add multi caret support to EditorPaulb23
2022-09-25Split script navigation state and edit statekobewi
2022-07-22Adding shader preprocessor supportYuri Roubinsky
Co-authored-by: TheOrangeDay <6472143+TheOrangeDay@users.noreply.github.com>
2022-05-02Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`Rémi Verschelde
Didn't commit all the changes where it wants to initialize a struct with `{}`. Should be reviewed in a separate PR. Option `IgnoreArrays` enabled for now to be conservative, can be disabled to see if it proposes more useful changes. Also fixed manually a handful of other missing initializations / moved some from constructors.
2022-04-27Indicate code editor search match numberOğuzhan Eroğlu
2022-04-04Zero initialize all pointer class and struct membersRémi Verschelde
This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
2022-03-27Add GDExtension support to Scriptreduz
* Ability to create script languages from GDExtension * Some additions to gdnative_extension.h to make this happen * Moved the GDExtension binder to core This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x. Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).
2022-03-12Initialize bools in the headers in editorAaron Franke
2022-02-16Port existing _notification code to use switch statements (part 1/3)jmb462
2022-02-15Editor: Cleanup some includes dependenciesRémi Verschelde
Removes some unnecessary includes from `editor_node.h`, and instead add those where they're used. Removes unnecessary `editor_node.h` includes in various editor classes. Renames `dynamicfont` to `dynamic_font` in a couple files. Misc cleanup while jumping through that rabbit hole.
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-10-21Remove unimplemented methodsMarcel Admiraal
2021-09-21Improve GDScript Editor and Improve latencyGordon MacPherson
Improvements: - GDScript Highlighter is faster by 25% as keys are smaller (hashes instead of strings) - Removes message queue from _apply_settings_change to allow resize to work correctly - Some performance fixes are pending still Note: this resolves the code editor behaving badly when resizing in debug builds
2021-08-23Entirely removes BIND_VMETHOD in favor of GDVIRTUALreduz
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions. * Everything else converted to GDVIRTUAL * BIND_VMETHOD is gone, always use the new syntax from now on. Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-13Move CodeEdit theme overrides into EditorThemePaulb23
2021-07-30Optimize theme change in code editorPouleyKetchoupp
Postpone applying the whole theme when a setting changes, to avoid updating everything many times when the whole editor theme is changed.
2021-06-29Script editor: Rename 'Clone Down' to 'Duplicate Selection'Rémi Verschelde
Fixes #36670.
2021-06-19Added support for scripts reporting multiple errors to ScriptTextEditorEric M
Scripts can now report multiple errors to the scripting editors in the engine. UI elements were added to support multiple errors.
2021-06-16Documentation search fixesGregory Basile
Updates rich_text_label so that the built-in documentation can be searched Previously, it would only find the first result and would not select other results Renames "_entered" functions to "_submitted"
2021-06-08Move FindReplaceBar out of CodeTextEditorkobewi
2021-05-22Add custom background line colour to TextEdit and remove marked linesPaulb23
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-09-10Add and convert editor to use CodeEditPaulb23
2020-07-11Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighterPaulb23
- Extacted all syntax highlighting code from text edit - Removed enable syntax highlighting from text edit - Added line_edited_from signal to text_edit - Renamed get/set_syntax_highlighting to get/set_syntax_highlighter - Added EditorSyntaxHighligher
2020-07-10Add override keywords.Marcel Admiraal
2020-06-19Remove ToolButton in favor of ButtonHugo Locurcio
ToolButton has no redeeming differences with Button; it's just a Button with the Flat property enabled by default. Removing it avoids some confusion when creating GUIs. Existing ToolButtons will be converted to Buttons, but the Flat property won't be enabled automatically. This closes https://github.com/godotengine/godot-proposals/issues/1081.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-12-17Fix toggle scripts panel to allow using shortcut in other areasYuri Roubinsky
2019-12-17Prevent showing toggle scripts panel switch in shader editorYuri Roubinsky
2019-12-15Moves switch for show scripts panel from File menu to status barYuri Roubinsky
2019-12-09Fixes Delete Line doesn't delete first line in scriptHaoyu Qiu
Also, match multi-line delete behavior in script with single line: If there are four lines: A, B, C, D. Before the change: Delete C: Cursor lands on D Delete B and C: Cursor lands on A After the change: Delete C: Cursor lands on D Delete B and C: Cursor lands on D
2019-08-13Tweak the behavior of search/replace barTomasz Chabora
2019-08-13Make the script search have a proper matches counterMichael Alexsander Silva Dias
2019-07-08Display a count of matches when searching in the code editorBojidar Marinov
Fixes #14513
2019-07-05Show icons for code completion optionsGeequlim
2019-07-04Parse more informations for code completionGeequlim
2019-06-23Center script line when double clicked on error in debuggerDawid Wdowiak
2019-06-19Merge pull request #28787 from mitchcurtis/fix-28059Rémi Verschelde
Script Text Editor: respect Move Down and Move Up shortcuts on macOS
2019-06-17Merge pull request #28766 from pgoral/editor_validation_issueRémi Verschelde
Changing method signature in other class in not recognized in working…
2019-06-11Merge pull request #29262 from DarknessCatt/issue-27476Rémi Verschelde
Automatically add new line to scripts
2019-05-29Automatically add new line to scriptsMatheus Lima Cunha
2019-05-29Changing method signature in other class in not recognized in working class ↵Goral
in typed GDScript #28685
2019-05-09Script Text Editor: respect Move Down and Move Up shortcuts on macOSMitch Curtis
Handle shortcuts in CodeTextEditor::_input() so that we get them before its text_editor's TextEdit::_gui_input() function does. If we don't, that function will execute the following code: if (k->get_shift()) { _pre_shift_selection(); } #ifdef APPLE_STYLE_KEYS if (k->get_command()) { cursor_set_line(0); } else #endif So using Command+Shift+Up for the Move Up shortcut would just result in selecting all text to the beginning of the document, rather than moving the current line up. Fixes #28059.