summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_editor.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Wrap up GDScript 2.0 base implementationGeorge Marques2020-07-221-2/+4
|
* Reintroduce code completionGeorge Marques2020-07-201-2/+2545
|
* Add warning checks in GDScript analyzerGeorge Marques2020-07-201-14/+16
| | | | Reenable checking those when validating code.
* Add new GDScript type checkerGeorge Marques2020-07-201-0/+5
|
* New GDScript tokenizer and parserGeorge Marques2020-07-201-2985/+51
| | | | | | | | | | Sometimes to fix something you have to break it first. This get GDScript mostly working with the new tokenizer and parser but a lot of things isn't working yet. It compiles and it's usable, and that should be enough for now. Don't worry: other huge commits will come after this.
* Merge pull request #39315 from ThakeeNathees/ctrl-click-fix-for-subclassesRémi Verschelde2020-06-161-0/+8
|\ | | | | Fix: Ctrl + Click not working for subclasses
| * Fix: Ctrl + Click not working for subclassesThakee Nathees2020-06-051-0/+8
| |
* | regression: dictionary key no autocomplete fixThakee Nathees2020-05-241-1/+5
|/ | | | Fix: #38998
* Style: Enforce braces around if blocks and loopsRémi Verschelde2020-05-141-17/+34
| | | | | Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
* Style: Enforce separation line between function definitionsRémi Verschelde2020-05-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | | I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-65/+0
| | | | | | | | | | | | | | 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.
* Port member initialization from constructor to declaration (C++11)Rémi Verschelde2020-05-141-17/+10
| | | | | | | | | | Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
* Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde2020-05-101-10/+30
| | | | Part of #33027.
* Merge pull request #37293 from Janglee123/ctrl-click-improvementsRémi Verschelde2020-05-051-0/+12
|\ | | | | Improved go-to definition (Ctrl + Click)
| * Improved go-to definition (Ctrl + Click)janglee2020-05-051-0/+12
| | | | | | | | Co-Authored-By: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
* | Merge pull request #37172 from theoway/autoCompletionBugRémi Verschelde2020-04-241-1/+1
|\ \ | | | | | | Fixed the auto-completion bug in gdscript_editor
| * | Fixed the bool _static logic Umang Kalra2020-04-161-1/+1
| | |
* | | Merge pull request #37954 from ThakeeNathees/autocomplete-indexing-native-typesRémi Verschelde2020-04-211-1/+1
|\ \ \ | | | | | | | | Autocompleting with indexing for builtin types added
| * | | autocompleting with indexing for native types addedThakee Nathees2020-04-171-1/+1
| |/ / | | | | | | | | | Fix: #37768
* / / Fix handling of PROPERTY_USAGE_SUBGROUP in DocData and editorRémi Verschelde2020-04-201-1/+1
|/ / | | | | | | | | Subgroups were added in #37678 but not properly handled everywhere where PROPERTY_USAGE_GROUP is.
* | autocomplete for disconnect, is_connected implementedThakee Nathees2020-04-131-3/+6
| |
* | Replace NULL with nullptrlupoDharkael2020-04-021-45/+45
| |
* | Add missing docs for assert message in GDScriptThomas ten Cate2020-03-311-0/+2
|/ | | | Seems like this was overlooked in PR #31142. See also issue #17082.
* Style: Set clang-format Standard to Cpp11Rémi Verschelde2020-03-171-6/+6
| | | | | | | | | | For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
* Refactor ScriptDebugger.Fabio Alessandrelli2020-03-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | EngineDebugger is the new interface to access the debugger. It tries to be as agnostic as possible on the data that various subsystems can expose. It allows 2 types of interactions: - Profilers: A subsystem can register a profiler, assigning it a unique name. That name can be used to activate the profiler or add data to it. The registered profiler can be composed of up to 3 functions: - Toggle: called when the profiler is activated/deactivated. - Add: called whenever data is added to the debugger (via `EngineDebugger::profiler_add_frame_data`) - Tick: called every frame (during idle), receives frame times. - Captures: (Only relevant in remote debugger for now) A subsystem can register a capture, assigning it a unique name. When receiving a message, the remote debugger will check if it starts with `[prefix]:` and call the associated capture with name `prefix`. Port MultiplayerAPI, Servers, Scripts, Visual, Performance to the new profiler system. Port SceneDebugger and RemoteDebugger to the new capture system. The LocalDebugger also uses the new profiler system for scripts profiling.
* Fix autocomplete and GDScript Highlighting for typesnathanwfranke2020-02-261-2/+2
| | | Types include new integer types and others
* Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky2020-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | - Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
* Replace FALLTHROUGH macro by C++17 [[fallthrough]]Rémi Verschelde2020-02-231-4/+4
| | | | | | | | | | This attribute is now part of the standard we target so we no longer need compiler-specific hacks. Also enables -Wimplicit-fallthrough for Clang now that we can properly support it. It's already on by default for GCC's -Wextra. Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
* Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky2020-02-201-14/+14
| | | | objects and made them default.
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-3/+3
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Remove deprecated sync and slave networking keywordsRémi Verschelde2020-02-131-1/+1
| | | | | | Those keywords were deprecated for 3.1 in #22087. Also fix token name for `TK_REMOTE`, should be "remote" like the keyword.
* Merge pull request #35218 from bojidar-bg/26691-parse-error-errorsRémi Verschelde2020-01-161-1/+3
|\ | | | | Fix errors raised when showing parse errors in the editor
| * Fix errors raised when showing parse errors in the editorBojidar Marinov2020-01-161-1/+3
| | | | | | | | Fixes #26691
* | Fix function arguments hint format in GDScript editorDanil Alexeev2020-01-161-15/+3
|/ | | | | for consistency with the format of the documentation: "type func_name(arg1: type, arg2: type)"
* Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | 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.
* Fix GDScript autocompletion with `as` or typed variablesBojidar Marinov2019-12-121-0/+11
| | | | Fixes #31818, fixes #33434
* Make the script templates' blank lines conform with the official style guideMichael Alexsander2019-11-171-0/+3
|
* Fix autocompletion for singletonsEbbDrop2019-10-171-5/+4
|
* Adds skip-breakpoints featureiwek72019-09-031-2/+3
|
* Try and show all the properties added with _get_property_list() when ↵MrCdK2019-09-031-3/+12
| | | | | | triggering completion. Closes https://github.com/godotengine/godot/issues/25097
* gdscript: Fix build after #24925Rémi Verschelde2019-09-021-1/+2
| | | | | | The PR did not use the ScriptCodeCompletionOption system introduced later on, and somehow this did not generate a merge conflict even though neighboring code was changed.
* Merge pull request #24925 from Mr-Slurpy/typed-autoloadRémi Verschelde2019-09-021-0/+9
|\ | | | | Added autoloads as a potential type.
| * Added autoloads as a potential type.Daniel Eliasinski2019-01-111-0/+9
| |
* | Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'Rémi Verschelde2019-08-171-1/+1
| | | | | | | | | | | | | | | | | | | | The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is (conditionally defines the error message). There are a few ERR_EXPLAINC calls for C-strings where String is not included which can stay as is to avoid adding additional _MSGC macros just for that. Part of #31244.
* | Merge pull request #30576 from qarmin/lgtm_coverageRémi Verschelde2019-07-201-2/+0
|\ \ | | | | | | Changed some code reported by LGTM and Coverity
| * | Changed some code showed in LGTM and Coverageqarmin2019-07-201-2/+0
| | |
* | | Remove useless casts to StringNils ANDRÉ-CHANG2019-07-171-2/+2
| | |
* | | Show static functions inside classes in method listNils ANDRÉ-CHANG2019-07-151-0/+4
|/ /
* | Parse more informations for code completionGeequlim2019-07-041-75/+144
| |
* | Many fallthrough switch cases now have the FALLTHROUGH macro to tell the ↵hbina0852019-06-291-4/+8
| | | | | | | | compiler that this is intended.