George Marques
0ba6048ad3
Add support for static variables in GDScript
...
Which allows editable data associated with a particular class instead of
the instance. Scripts with static variables are kept in memory
indefinitely unless the `@static_unload` annotation is used or the
`static_unload()` method is called on the GDScript.
If the custom function `_static_init()` exists it will be called when
the class is loaded, after the static variables are set.
2023-04-27 09:51:44 -03:00
Yuri Sizov
f3033da97d
Merge pull request #76170 from HolonProduction/string-highlight
...
Fix multi-line string highlighting with single quotes.
2023-04-18 18:01:02 +02:00
RedMser
2330ffb5a1
Add GDScript template to RichTextEffect
2023-04-18 14:02:04 +02:00
HolonProduction
bdb7045e2c
Fix multi-line string highlighting with single quotes.
2023-04-17 15:58:39 +02:00
Danil Alexeev
9df96e97ea
GDScript: Misc fixes and improvements for signature generation
...
* Use type hints for `@GlobalScope` enums.
* Use plain `int` for `BitMask<T>`.
* Fix type hints for typed arrays.
* Use `Variant` and `void` type hints.
* Discard unnecessary class prefix.
2023-04-07 10:43:21 +03:00
Dmitrii Maganov
4e34cf238a
GDScript: Change parser representation of class extends
2023-03-13 01:40:13 +02:00
Dmitrii Maganov
e289a4ab2c
GDScript: Fix autocomplete inside a block with a type test condition
2023-03-09 23:53:27 +02:00
George Marques
c9e49c487d
GDScript: Limit recursion depth for completion functions
...
Avoid crashing if the completion gets stuck in infinite recursion while
trying to guess the expression type.
2023-02-20 14:55:13 -03:00
Dmitrii Maganov
8fe023ad93
GDScript: Rework type check
2023-02-17 19:57:18 +02:00
Rémi Verschelde
d405392847
Revert "Fixed the jumping to function definition using 'Ctrl+LMB'."
...
This reverts commit 7eb6367d5c
.
Fixes #73058 .
Fixes #73167 .
This caused regressions, we'll retry with fixes for 4.1.
2023-02-13 17:58:59 +01:00
Rémi Verschelde
3f95b39cb3
Merge pull request #72789 from Vilcrow/fix-jump-to-definition
...
Fixed the jumping to function definition using 'Ctrl+LMB'.
2023-02-07 19:37:50 +01:00
S.V.I. Vilcrow
7eb6367d5c
Fixed the jumping to function definition using 'Ctrl+LMB'.
2023-02-07 05:29:48 +03:00
Yuri Sizov
9d16250353
Merge pull request #70002 from poohcom1/fix/static-subscript-autocomplete
...
Fix code-completion suggesting non-static members for custom classes
2023-02-06 23:02:12 +03:00
Danil Alexeev
31749de128
GDScript: Better handling of @rpc
annotation and autocompletion
2023-02-05 21:21:37 +03:00
Eric M
9b93bdb4e7
Fix crash in gdscript when autocompleting virtual function and signature does not match base.
2023-02-02 22:52:08 +10:00
Danil Alexeev
b004f8180e
GDScript: Allow constant expressions in annotations
2023-01-25 18:43:56 +03:00
George Marques
629796c333
Merge pull request #69970 from poohcom1/fix/autocomplete-custom-class
...
Fixes https://github.com/godotengine/godot/issues/69941
2023-01-16 09:44:23 -03:00
poohcom1
2e53bf3d36
Fix code-completion suggesting non-static members
...
In GDScript code-completion:
- Fixes class symbols not being marked as meta
- Remove signal in static contexts
Fixes #69928
2023-01-16 00:41:20 +07:00
poohcom1
aa4bceff3e
Add identifier completion for custom classes.
...
Previously, custom class would only auto-complete for types in GDScript.
This applies it to identifiers as well.
2023-01-16 00:25:24 +07:00
Yuri Rubinsky
9bd5ef1836
Fix GDScript script templates to use a PascalCase style for _CLASS_
2023-01-14 16:21:05 +03:00
ocean (they/them)
366ec895b1
Assorted enum and native type fixes
2023-01-09 11:08:07 -05:00
jordi
d5e1b4a857
Force double quotes for NodePaths with apostrophes
2023-01-07 20:23:26 -06:00
Dmitrii Maganov
a1d06749f1
Unify typing of variables, constants and parameters in GDScript
2023-01-06 01:10:04 +02:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
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".
2023-01-05 13:25:55 +01:00
Yuri Rubinsky
abaedb54f1
Remove unused code paragraph from gdscript_editor.cpp/complete_code
2022-12-22 11:10:11 +03:00
poohcom1
1845d927dc
Fix autocomplete on functions returning variants
...
- When guessing return type, check type hints before last return value
2022-12-11 14:17:27 +07:00
Adam Scott
da65b61edb
Fix autocomplete crash as it would infinite loop
2022-12-08 23:40:17 -05:00
Yuri Rubinsky
b229a19688
Fix lookup to docs for variables initialized with get_node
2022-12-07 15:16:04 +03:00
Yuri Rubinsky
20660bb23a
Fix completion for the raw get_node
call
2022-12-06 10:42:44 +03:00
Yuri Rubinsky
afbea19a22
Fix lookup code to pass functions with the same name as built-ins
2022-11-28 15:53:14 +03:00
Yuri Rubinsky
4a8276a773
Fix GDScript completion crash
2022-11-21 16:34:03 +03:00
Yuri Rubinsky
65d14679e7
Fix completion popup for the variables created with get_node
call
2022-11-14 23:27:59 +03:00
Rémi Verschelde
4d9adfea23
Merge pull request #65712 from Chaosus/gds_fix_completion
...
fix https://github.com/godotengine/godot/issues/64477
2022-11-14 17:20:54 +01:00
Rune
bce6f1792e
GDScript compiler subclass bugfixes
2022-11-13 02:29:21 -08:00
kobewi
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
VolTer
ac1761c8cd
Fix outdated keywords autocompletion
2022-10-06 23:47:19 +02:00
Aaron Franke
094e8db97c
Fix hide_slider vs no_slider inconsistency in editor property code
2022-10-03 13:40:31 -05:00
Yuri Rubinsky
b20aed2812
Fix completion for variables initialized by get_node
call
2022-09-12 19:54:55 +03:00
Hugo Locurcio
f7292dbeb3
Rename or_lesser
range property hint to or_less
...
"less" should be used for quantity, rather than "lesser".
Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
Haoyu Qiu
660c700f9c
Fix action name completion for Input
2022-08-15 23:28:49 +08:00
Rémi Verschelde
a946768151
Merge pull request #63015 from Xwdit/fix_gds_editor_tooltip_arg_type
2022-08-10 16:31:32 +02:00
Xwdit
e25c86bf5d
Fixed incorrect type display of function argument in GDScript editor tooltips
2022-08-10 15:06:21 +02:00
Xwdit
7e262310a2
Fixed incorrect type display of void return in GDScript editor tooltips
2022-08-10 15:05:47 +02:00
Yuri Rubinsky
df85c9871f
Prevent global functions from overriding completion of subscript
2022-08-10 11:51:53 +03:00
Antonio Dell'Annunziata
7b975b50dc
fix(gdscript): Fix infinite loop on type inferernce from super method calls
...
When infering the type from a `super()` call, the gdscript_editor didn't use the base class to search for the original implementation of the method, but instead searched in the extending class.
This caused the same function to be analyzed for type inference which created the infinite loop.
Solves #63592
2022-07-29 10:22:55 +02:00
cdemirer
e9a5beeb01
Fix crash while trying to autocomplete non-global Autoload
2022-07-18 16:35:25 +03:00
Rémi Verschelde
fdff28e1a2
Merge pull request #62699 from cdemirer/fix-autocomplete-var-assigned-same-statement
2022-07-06 15:57:19 +02:00
Rémi Verschelde
4c56885bc0
Merge pull request #62690 from cdemirer/fix-infinite-guess-recursion
2022-07-06 15:54:16 +02:00
Rémi Verschelde
4873886830
Merge pull request #62760 from cdemirer/fix-annotation-initializer-conflict
...
Fix priority of annotated type vs initializer type
2022-07-06 15:47:56 +02:00