Commit graph

15298 commits

Author SHA1 Message Date
George Marques
e3d72d14ff
Use type information to enable GDScript introspection
This makes the Script API provide accurate information when requesting
property or method info.
2018-07-20 21:55:17 -03:00
George Marques
4b18c4e448
Add typed instructions to GDScript
- Typed assignment (built-in, native, and script).
- Cast (built-in conversion; native and script checks).
- Check type of functions arguments on call.
- Check type of members on set.
2018-07-20 21:55:17 -03:00
George Marques
743053734f
Add static type checks in the parser
- Resolve types for all identifiers.
- Error when identifier is not found.
- Match return type and error when not returning a value when it should.
- Check unreachable code (code after sure return).
- Match argument count and types for function calls.
- Determine if return type of function call matches the assignment.
- Do static type check with match statement when possible.
- Use type hints to determine export type.
- Check compatibility between type hint and explicit export type.
2018-07-20 21:55:16 -03:00
George Marques
f7793fc5c9
Store type hint of declared identifiers 2018-07-20 21:55:16 -03:00
George Marques
b7a00aead0
Move inheritance resolution to the parser 2018-07-20 21:55:16 -03:00
George Marques
8aab9a06d4
Add typing syntax 2018-07-20 21:55:16 -03:00
Juan Linietsky
cfcb6e11f2
Merge pull request #20312 from Nufflee/fix-#20171
Fix #20171.
2018-07-20 18:17:00 -03:00
Juan Linietsky
336db8bcd1 -Fix tooltips in inspector, now they show as rich text. 2018-07-20 18:16:19 -03:00
Nufflee
228bd21e26 Fix #20171. 2018-07-20 22:25:18 +02:00
Rémi Verschelde
002bacc01f
Merge pull request #20311 from YeldhamDev/update_spinner_popup_radio
Make Update Spinner popup use radio items
2018-07-20 21:20:05 +02:00
Michael Alexsander Silva Dias
12b55610ed Make Update Spinner popup use radio items 2018-07-20 14:32:53 -03:00
Juan Linietsky
6c09cdd136
Merge pull request #20157 from GodotExplorer/image-load-webp
Add webp buffer loader for Image
2018-07-20 12:00:21 -03:00
Rémi Verschelde
814fdd3985 Fix some more build issues after c69de2ba4
Fixes #20301.
2018-07-20 11:56:18 +02:00
Rémi Verschelde
2662c7e3d1
Merge pull request #20299 from PJB3005/18-07-20-cs-editorconfig
Adds C# rule to .editorconfig.
2018-07-20 11:36:29 +02:00
Pieter-Jan Briers
4c40227af6 Adds C# rule to .editorconfig.
C# standard is 4 width spaces, not tabs.
2018-07-20 08:42:13 +02:00
Rémi Verschelde
8c9e10553c Fix build issues and typos after c69de2ba4 2018-07-20 08:37:10 +02:00
Rémi Verschelde
286c88bb50 Fix typo in gdnative module path in CODEOWNERS
Supersedes and closes #20293.
2018-07-20 08:04:54 +02:00
Ignacio Etcheverry
a85f0f89fe
Merge pull request #20257 from oisincar/fix_basis
Fix bug with Basis.Transposed()
2018-07-20 06:47:15 +02:00
volzhs
b2d7641a0d
Merge pull request #20295 from volzhs/fix-restart
Fix unwanted restarting
2018-07-20 10:45:56 +09:00
volzhs
515c848ba8 Fix unwanted restarting 2018-07-20 10:41:32 +09:00
Ignacio Etcheverry
ee3c476c9a Add Array and Dictionary wrapper classes to C# 2018-07-20 01:44:30 +02:00
Juan Linietsky
c69de2ba46 -Project/Editor settings now use new inspector
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
2018-07-19 19:02:04 -03:00
Rémi Verschelde
76bfe14e00
Merge pull request #20117 from ordigdug/inspector-fix-inconsistencies-with-exported-enums
Fix -new inspector- Inconsistencies with exported enums - Fixes remai…
2018-07-19 18:18:20 +02:00
Max Hilbrunner
aea6f4853e
Merge pull request #20265 from BastiaanOlij/csg_documentation
Added some documentation for the CSG nodes
2018-07-19 17:34:30 +02:00
Bastiaan Olij
6843f39875 Added some documentation for the CSG nodes 2018-07-19 22:24:46 +10:00
Rémi Verschelde
4ebcbea1ce
Merge pull request #20259 from marcelofg55/anim_call_err
Print an error when calling an invalid method on an Animation
2018-07-19 08:19:08 +02:00
Juan Linietsky
911febb41f Improvements to vector fields, show axis in color with a background 2018-07-18 22:27:39 -03:00
Marcelo Fernandez
9b9949de39 Print an error when calling an invalid method on an Animation 2018-07-18 22:26:01 -03:00
ordigdug
afb4dfab22 Fix -new inspector- Inconsistencies with exported enums - Fixes remaining issues in #19534 2018-07-18 20:01:03 -04:00
oisincar
7a4d593198 Fix bug with Basis.Transposed()
Fix bug where Basis.Transposed() incorrectly updated local basis, and
returned an unmodified copy. This also fixes Transform.Inverse().
2018-07-19 00:17:45 +01:00
Juan Linietsky
43dc050947 Several improvements to editor inspector usability and style 2018-07-18 19:37:41 -03:00
Ignacio Etcheverry
2f69e36cef Add Dictionary::erase_checked(key) method
Same as erase, but it returns a boolean value indicating whether the pair was erased or not.
This method should be removed during the next compatibility breakage, and 'Dictionary::erase(key)' should be changed to return a boolean.
2018-07-18 23:07:31 +02:00
Ignacio Etcheverry
a731bd5864
Merge pull request #20253 from neikeq/nobranchnameideasfeelsbadman
Make C# bindings generator ignore disabled classes
2018-07-18 21:20:34 +02:00
Ignacio Etcheverry
92c7fe422b Make C# bindings generator ignore disabled classes 2018-07-18 21:15:41 +02:00
Juan Linietsky
82b550c6b3 Fix spin slider, was not registering drag properly 2018-07-18 15:35:26 -03:00
Rémi Verschelde
b538254b18
Merge pull request #20243 from karroffel/object-windows-doof
fix nameclash with MSVC
2018-07-18 19:31:44 +02:00
karroffel
43ae1c712f fix nameclash with MSVC 2018-07-18 19:28:26 +02:00
Juan Linietsky
d1550b4a9b Ability to disable scale in nodes, closes #19927 2018-07-18 13:48:09 -03:00
Rémi Verschelde
36efa7d445 Travis: Update clang-format version in shell script 2018-07-18 17:49:01 +02:00
Rémi Verschelde
22b176f69d Travis: Install libstdc++ >= 4.9 for clang-format-6.0 2018-07-18 17:39:05 +02:00
Juan Linietsky
09b1fdc97b
Merge pull request #19931 from BastiaanOlij/csg_polygon_local
Added path_local, path_continuous_u and path_joined properties to CSGPolygon
2018-07-18 11:33:47 -03:00
Rémi Verschelde
003ac67df1 Travis: Update style checks to clang-format 6.0.1 2018-07-18 16:29:43 +02:00
Rémi Verschelde
7c9f7452f4 Style: Format code with clang-format 6.0.1 2018-07-18 16:27:03 +02:00
Max Hilbrunner
ce53876a44
Merge pull request #20242 from akien-mga/export-preset-reload
Export: Properly reload preset when opening dialog
2018-07-18 16:20:57 +02:00
Max Hilbrunner
e064eea940
Merge pull request #20241 from akien-mga/export-filter-no-res
Export filters: Relax match to allow paths without leading res://
2018-07-18 16:20:06 +02:00
Rémi Verschelde
13239cd4cc Export: Properly reload preset when opening dialog
Fixes #20119 where newly installed templates were not detected.

Also fix a bug with preset deletion where it would attempt to
edit an already removed preset. For this I made it so that
ItemList::deselect_all() also resets `current` to -1, as a manual
ItemList::deselect(idx) already does.
2018-07-18 13:49:34 +02:00
Rémi Verschelde
d603a74c53
Merge pull request #20240 from matthew1006/has-custom-feature-tag-fix
Fixed OS.has_feature not using custom feature tags.
2018-07-18 12:36:09 +02:00
Rémi Verschelde
70b3ef52da Export filters: Relax match to allow paths without leading res://
Previously to include "file.txt", you had to set either "res://file.txt",
"*file.txt" or "*.txt" as filter. Now you can use "file.txt".
2018-07-18 12:20:37 +02:00
Rémi Verschelde
bd9b8098fe
Merge pull request #20140 from EIREXE/ambient_light_disable_shader
Add disable ambient light flag to shaders and materials
2018-07-18 10:39:20 +02:00
Rémi Verschelde
afb554afdf
Merge pull request #20185 from volzhs/audio-preview
Add audio preview to Inspector dock
2018-07-18 10:38:30 +02:00