Commit Graph

457 Commits

Author SHA1 Message Date
HolonProduction 3f0ff0417c Autocompletion: Remove additional brace from utility function options 2025-04-15 13:25:28 +02:00
Lukas Tenbrink e989d7bd89 Change `StringName.operator const void *` to `explicit operator bool`. 2025-04-11 18:34:01 +02:00
Thaddeus Crews 717df3ee88
Merge pull request #105249 from Repiteo/core/math-defs-namespace
Core: Use `Math` namespace for constants
2025-04-11 09:51:04 -05:00
Thaddeus Crews 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
HolonProduction e7487263ad Autocompletion: Don't add parenthesis if `Callable` is expected 2025-04-10 18:40:32 +02:00
Danil Alexeev 4b9bcda113
GDScript: Add autocompletion for `@export_tool_button` 2025-04-06 08:21:43 +03:00
Yufeng Ying 4029051bb1 Change ClassDB::get_inheriters_from_class. 2025-04-04 23:47:19 +08:00
Yyf2333 22b5ec17fb Using iterator pattern instead of List::Element *.
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2025-03-28 13:29:15 +08:00
A Thousand Ships d9721954e6
[Core] Use `Vector` for `MethodInfo::arguments` 2025-03-10 13:57:53 +01:00
A Thousand Ships 466590d0ec
Use `get_slicec` instead of `get_slice` for single character splitters 2025-03-08 20:36:37 +01:00
A Thousand Ships 5113022dfe
Clean up some uses of `String::substr`
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
HolonProduction c00518eec7 Autocompletion: Override context for preload 2025-02-13 22:56:06 +01:00
HolonProduction 62eebf1266 Autocompletion: Account for invalid annotations when making arghint 2025-02-11 09:17:22 +01:00
HolonProduction d616ea5462 Fix enum value lookup jump 2025-02-06 10:04:01 +01:00
Thaddeus Crews 0b6a717ac1
Merge pull request #101127 from dalexeev/gds-edit-fix-enum-value-ctrl-click
Editor: Fix `Ctrl+Click` on enum values ​​does nothing
2025-02-04 09:04:17 -06:00
Pāvels Nadtočajevs 576892863c Fix GDScript editor crash on invalid `tween_property` arguments. 2025-01-16 10:40:13 +02:00
HolonProduction 24912d2010 Autocompletion: Try to guess method return type even if subscript base has no value 2025-01-11 23:50:43 +01:00
Danil Alexeev cd918ff470
GDScript: Remove `RENAMED_IN_GODOT_4_HINT` from `GDScriptWarning::Code` enum 2025-01-09 21:07:41 +03:00
Aarni Koskela f134769506 Fix various typos
* Add TODO notes for typos that should be fixed for 5.0

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-08 14:47:42 +02:00
Danil Alexeev 4cef91e0f5
Editor: Fix `Ctrl+Click` on enum values ​​does nothing 2025-01-04 17:28:53 +03:00
Danil Alexeev 80d11500b5
Code Editor: Add documentation tooltips 2024-12-15 10:51:33 +03:00
Thaddeus Crews 8f16f864a6
Merge pull request #99765 from dalexeev/core-fix-json-from-to-native
Core: Fix `JSON.{from,to}_native()` issues
2024-12-10 14:15:53 -06:00
Thaddeus Crews a372214a4a
Merge pull request #76020 from dalexeev/gds-warning-ignore-regions
GDScript: Add `@warning_ignore_start` and `@warning_ignore_restore` annotations
2024-12-09 14:33:38 -06:00
Lukas Tenbrink b5c31ebb41 Add contains_char() for single-character 'contains' calls. 2024-12-06 20:23:35 +01:00
Danil Alexeev 7d65d0a908
GDScript: Add `@warning_ignore_start` and `@warning_ignore_restore` annotations 2024-12-06 15:37:02 +03:00
rune-scape d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00
Danil Alexeev bd1a35ce9e
Core: Fix `JSON.{from,to}_native()` issues 2024-11-29 12:43:06 +03:00
Lazy-Rabbit-2001 ae853e1a42 Improve GDScript autocompletion for methods 2024-11-22 18:24:45 +08:00
A Thousand Ships 68f638cf02
Use `(r)find_char` instead of `(r)find` for single characters 2024-11-17 10:02:18 +01:00
Thaddeus Crews 4d4353179e
Merge pull request #97218 from wenqiangwang/local_debuggger_expr_evalulation
Add support for `print` command in local (command line `-d`) debugger
2024-11-12 12:13:13 -06:00
Thaddeus Crews 7da6d6032b
Merge pull request #96927 from HolonProduction/completion-inner-class-base-crash
Autocompletion: Don't use owner for inner classes
2024-10-25 13:03:53 -05:00
Yevhen Babiichuk (DustDFG) 8c29ef38fc Add some comments to #endif's where it will easier life
Also added some new line to improve readability

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2024-10-21 14:31:45 +03:00
HolonProduction 16aae0d7a7 Autocompletion: Don't use owner for inner classes 2024-10-13 18:20:27 +02:00
Chaosus 54f6a1bf64 Fix lookup symbol for enum members to search a correct code definition 2024-10-08 22:46:44 +03:00
Rémi Verschelde 0b2446101c
Merge pull request #96693 from HolonProduction/annotation-arg-hint
Autocompletion: Add arghint for annotations
2024-10-02 15:00:58 +02:00
Rémi Verschelde 7f1f9799c5
Merge pull request #92263 from HolonProduction/autocompletion-get-node-set-value-if-type-compatible
Autocompletion: Keep `get_node` values which are compatible with type hint
2024-10-02 15:00:42 +02:00
Wenqiang 9a94353fa3 Added support for 'print' command in local (command line -d) debugger 2024-09-28 13:28:07 -07:00
Haoyu Qiu a751c05b15 Fix script editor wrongly replaces and quotes non-ASCII letters 2024-09-23 00:05:16 +08:00
Rémi Verschelde 1ff2186fe9
Merge pull request #96666 from aXu-AP/unique-node-no-quotes
Remove unneeded quotes from autocomplete % nodes
2024-09-11 12:35:00 +02:00
HolonProduction 00dfd568e0 Autocompletion: Add arghint for annotations 2024-09-07 20:47:34 +02:00
aXu-AP 2525311538 Remove unneeded quotes from autocomplete % nodes
Removes unnecessary quotes for suggestions like $"%MyNode".
2024-09-07 17:49:20 +03:00
Rémi Verschelde 0b4ae20156
Merge pull request #78656 from Repiteo/typed-dictionary
Implement typed dictionaries
2024-09-06 22:38:13 +02:00
Rémi Verschelde 721d280b8a
Merge pull request #96326 from HolonProduction/completion-hacks-and-fixes
Autocompletion: Reintroduce enum options on assignment
2024-09-04 18:55:27 +02:00
Thaddeus Crews 9853a69144
Implement typed dictionaries 2024-09-04 10:27:26 -05:00
HolonProduction 171c522290 Autocompletion: reintroduce enum options on assignment 2024-08-30 13:46:48 +02:00
rune-scape 154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
Haoyu Qiu 8bf4ecc026 Add `String.is_valid_unicode_identifier()`
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
HolonProduction ccbdb34a2a Improve autocompletion for indices 2024-08-26 14:42:22 +02:00
Rémi Verschelde 2a61a2fa2f
Merge pull request #89274 from 0x0ACB/unchecked_cast
Fix use after free in `GDScriptLanguage::debug_get_globals`
2024-07-26 13:43:48 +02:00
Rémi Verschelde f361133601
Merge pull request #94664 from dalexeev/gds-fix-make-arguments-hint
GDScript: Fix incorrect default values ​​in `_make_arguments_hint()`
2024-07-24 09:59:28 +02:00
Rémi Verschelde 7708f0e163
Merge pull request #85382 from HolonProduction/in-case-of-a-script
GDScript: Generate `arghint` for script types
2024-07-24 09:59:08 +02:00
Danil Alexeev 37a3a98fde
GDScript: Fix incorrect default values ​​in `_make_arguments_hint()` 2024-07-23 19:35:42 +03:00
HolonProduction 4699e69708 Autocompletion: register depended parsers with the main parser 2024-07-18 12:16:28 +02:00
HolonProduction 402bdfa3b7 Generate `arghint` for script types 2024-07-13 10:47:26 +02:00
HolonProduction 9a84387017 Autocompletion: Keep get_node values which are compatible with type hint 2024-07-12 12:32:30 +02:00
HolonProduction 70488d40db Autocompletion: Don't use `in` operator to decide over variant lookup 2024-07-01 15:57:03 +02:00
Yuri Rubinsky 322c64c6ea Fix symbol lookup for native enums 2024-06-25 09:43:11 +03:00
Rémi Verschelde cd87b0bf84
Merge pull request #93057 from HolonProduction/not-enough-code-paths
Autocompletion: Add support for string name option in more places
2024-06-19 10:53:21 +02:00
HolonProduction 51f74af2ac Autocompletion: Add support for string name option in more places 2024-06-12 20:38:43 +02:00
Yuri Rubinsky 5962646fd3 Fix goto definition for `new` method 2024-06-08 10:52:01 +03:00
Yuri Rubinsky fc2b82188b Fix completion for `new` arguments 2024-05-26 13:47:22 +03:00
Rémi Verschelde 4ce95d684c
Merge pull request #91653 from HolonProduction/autocompletion-analyze-recursively-but-leave-the-parser-alone
Autocompletion: Analyze CLASS types as they are encountered
2024-05-19 11:21:11 +02:00
Danil Alexeev 76b2d85c9f
GDScript: Fix some export annotation issues 2024-05-13 17:49:06 +03:00
Rémi Verschelde d83586f1e4
Merge pull request #84492 from HolonProduction/reduce-const-arrays
Autocompletion: Mark datatype as constant for constant arrays
2024-05-07 21:52:40 +02:00
HolonProduction d131064841 Autocompletion: Analyze CLASS types as they are encountered 2024-05-07 10:45:28 +02:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
rune-scape 6b88c86cec GDScript: invalidate GDScriptParserRef when reloading 2024-04-18 14:05:58 -07:00
Rémi Verschelde 9a9045cf7a
Merge pull request #89382 from dcaoc03/master
Fix enum autocompletion for core classes
2024-04-09 22:25:13 +02:00
VolTer de8b6f7a3c Add editor settings for autocompletion with NodePath and StringName 2024-03-19 17:23:54 +02:00
Diogo Costa 935ea10f3a Fixed enum autocompletion for core classes (Issue #88858)
Minor fix consisted in the use of [[fallthrough]] macro
2024-03-15 20:20:36 +00:00
ACB 7426b4d448 Fix user after free in `GDScriptLanguage::debug_get_globals` 2024-03-08 07:32:31 +01:00
Micky 7b3e1a5bde Optimize SceneTree's `change_scene_to_file` autocompletion 2024-03-01 15:12:52 +01:00
Aiden Storey 7ffc246aad Add fallback argument hints for default values 2024-02-11 10:01:03 -05:00
George Marques b4d0a09f15
GDScript: Reintroduce binary tokenization on export
This adds back a function available in 3.x: exporting the GDScript
files in a binary form by converting the tokens recognized by the
tokenizer into a data format.

It is enabled by default on export but can be manually disabled. The
format helps with loading times since, the tokens are easily
reconstructed, and with hiding the source code, since recovering it
would require a specialized tool. Code comments are not stored in this
format.

The `--test` command can also include a `--use-binary-tokens` flag
which will run the GDScript tests with the binary format instead of the
regular source code by converting them in-memory before the test runs.
2024-02-08 11:20:05 -03:00
Rémi Verschelde 50491db048
Merge pull request #88071 from Calinou/gdscript-nodepath-autocomplete-fix-identifiers
Fix NodePath autocompletion to ensure paths are quoted when required
2024-02-08 10:54:12 +01:00
Hugo Locurcio 1238b60b22
Fix NodePath autocompletion to ensure paths are quoted when required
Every component of the path is now checked to be a valid identifier,
so that node names that start with a digit always require the full
path to be quoted.
2024-02-07 19:26:55 +01:00
Yuri Rubinsky 1d75480082 Fix autocompletion for enum members in the core classes 2024-02-07 20:42:06 +03:00
HolonProduction 6df1a1e9b0 Autocompletion: mark datatype as constant for constant arrays 2024-02-05 20:26:43 +01:00
Yuri Sizov d644b9b640 Better hide internal properties from users 2024-01-29 12:35:10 +01:00
Yuri Sizov 9579dc6313 Merge pull request #85239 from HolonProduction/global-class-property-location
Handle global classes when resolving property location
2024-01-25 16:26:50 +01:00
HolonProduction c99e4f862f Handle global classes when resolving property location 2024-01-24 18:05:47 +01:00
Yuri Sizov 72756133e0 Merge pull request #85224 from HolonProduction/identifier-type-prefer-annotated
Prefer identifiers annotated type if assigned type is incompatible to it
2024-01-24 14:07:52 +01:00
Rémi Verschelde b5dcb5f58a
Merge pull request #85215 from HolonProduction/type-from-property-class-name
Handle global classes when resolving type from `PropertyInfo`
2024-01-18 09:33:22 +01:00
HolonProduction 0203b3c310 Prefer identifiers annotated type if assigned type is incompatible to it 2024-01-17 22:32:00 +01:00
HolonProduction 4ab985d138 Handle global classes when resolving type from `PropertyInfo` 2024-01-17 21:39:51 +01:00
Yuri Sizov dc729f1614 Merge pull request #87278 from HolonProduction/give-those-autoloads-an-upgrade
Handle GDScript in `_type_from_variant` for autocompletion
2024-01-17 18:53:25 +01:00
Yuri Sizov 5b22884b4a Merge pull request #86554 from HolonProduction/lookup-subscript
Fix symbol lookup in index subscript
2024-01-17 18:52:49 +01:00
Yuri Sizov 28cf7fe2f6 Merge pull request #85384 from HolonProduction/unique-name-completion
Suggest scene unique nodes in `get_node` autocompletion
2024-01-17 18:52:31 +01:00
HolonProduction 6af45c6ef2 Handle GDScript in `_type_from_variant` for autocompletion 2024-01-16 23:04:10 +01:00
Muller-Castro 96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Rémi Verschelde 525e0bb37c
Merge pull request #86667 from HolonProduction/completion-enum-sorting
Improve sorting of enum autocompletion
2024-01-04 14:26:25 +01:00
Rémi Verschelde 6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
S.V.I. Vilcrow c8fc824608 Fix the autocomplete function for the 'self' keyword. 2024-01-02 20:47:41 +03:00
HolonProduction 76fd7ec394 Improve sorting of enum autocompletion 2023-12-31 14:35:08 +01:00
HolonProduction 54742f7c60 Fix symbol lookup in index subscript 2023-12-27 17:46:17 +01:00
Wilson E. Alvarez a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov 5c99558d16 Merge pull request #76591 from HolonProduction/complete-tween
Autocomplete properties in `tween_property`
2023-12-14 17:37:53 +01:00
HolonProduction 5f72254d4d Fix regression when autocompleting subscript on get node 2023-12-13 10:54:40 +01:00
Rémi Verschelde 7c8dfea9e3
Merge pull request #85196 from HolonProduction/completion-filter-groups
Filter groups and categories from autocompletion
2023-12-05 13:05:18 +01:00
HolonProduction c8889a7fe7 Improve autocompletion with get_node 2023-12-04 17:06:46 +01:00