Commit graph

1872 commits

Author SHA1 Message Date
Hein-Pieter van Braam
0deb8dda51 Fix Mono compilation on Windows/Ming
(cherry picked from commit 83140541dc)
2018-07-29 22:31:38 +02:00
Rémi Verschelde
d8e1cd7a10 mbedtls: Update to upstream version 2.12.0
_WIN32_WINNT redefinition fix is no longer needed as it was merged
upstream. PR 1453 is still not merged, diff updated to current state.
2018-07-28 11:16:58 +02:00
Rémi Verschelde
4488bb9956
Merge pull request #20463 from fire/vs_expand_hints_to_virtual_func
Visualscript: Carry property hint and hint string through to Visualscript virtual funcs
2018-07-28 09:49:23 +02:00
Rémi Verschelde
66429a1576
Merge pull request #17595 from viktor-ferenczi/issue-5042-subproc
Running builder (content generator) functions in subprocesses on Windows
2018-07-28 09:20:50 +02:00
K. S. Ernest (iFire) Lee
2650b87102 Carry property hint and hint string through to Visualscript virtual functions. 2018-07-27 13:12:34 -07:00
Rémi Verschelde
aecc3a444b
Merge pull request #20457 from fire/vs_generic_search_crash_and_connecting
Visualscript: misc generic search changes
2018-07-27 21:38:11 +02:00
Viktor Ferenczi
c5bd0c37ce Running builder (content generator) functions in subprocesses on Windows
- Refactored all builder (make_*) functions into separate Python modules along to the build tree
- Introduced utility function to wrap all invocations on Windows, but does not change it elsewhere
- Introduced stub to use the builders module as a stand alone script and invoke a selected function

There is a problem with file handles related to writing generated content (*.gen.h and *.gen.cpp)
on Windows, which randomly causes a SHARING VIOLATION error to the compiler resulting in flaky
builds. Running all such content generators in a new subprocess instead of directly inside the
build script works around the issue.

Yes, I tried the multiprocessing module. It did not work due to conflict with SCons on cPickle.
Suggested workaround did not fully work either.

Using the run_in_subprocess wrapper on osx and x11 platforms as well for consistency. In case of
running a cross-compilation on Windows they would still be used, but likely it will not happen
in practice. What counts is that the build itself is running on which platform, not the target
platform.

Some generated files are written directly in an SConstruct or SCsub file, before the parallel build starts. They don't need to be written in a subprocess, apparently, so I left them as is.
2018-07-27 21:37:55 +02:00
Rémi Verschelde
33f1ca89a5
Merge pull request #20462 from fire/vs_don't_typeguess_nil
Visualscript: Don't type guess on nil and set default type to ""
2018-07-27 21:37:46 +02:00
Ignacio Etcheverry
92c59384ec
Merge pull request #17720 from paulloz/custom-csharp-glue
[mono] Generic Typed GetNode, GetChild, etc.
2018-07-27 18:47:19 +02:00
Bastiaan Olij
8a914f17b0 Fixed nativescript getter and setter logic 2018-07-27 23:45:29 +10:00
Bastiaan Olij
03d02e88fc Reenabled module and fixed missing const 2018-07-27 18:43:50 +10:00
Paul Joannon
877ea882ce
Add missing methods to Node class in the mono glue
* GetNodeOrNull<T>
* GetChild<T>
* GetChildOrNull<T>
* GetOwner<T>
* GetOwnerOrNull<T>
* GetParent<T>
* GetParentOrNull<T>
2018-07-27 08:50:35 +02:00
George Marques
e8da2a60b3
GDScript: Fix parse error in string formatting 2018-07-26 10:52:11 -03:00
K. S. Ernest (iFire) Lee
607e5b7c95 Visualscript: Don't type guess on nil. 2018-07-26 06:39:36 -07:00
Rémi Verschelde
ef93fec789
Merge pull request #15643 from organicpencil/bullet_contact_impulse
Expose PhysicsDirectBodyState.get_contact_impulse
2018-07-26 15:36:37 +02:00
K. S. Ernest (iFire) Lee
00519debbe Visualscript fix crash and generic search does not connect ports.
* Signal change requires function changes to _selected_new_virtual_method
2018-07-26 06:18:23 -07:00
Rémi Verschelde
96d37769d9
Merge pull request #20468 from vnen/typed-gds-fixes
General GDScript fixes
2018-07-26 13:48:37 +02:00
Rémi Verschelde
10af1b3444
Merge pull request #20477 from swarnimarun/vs_duplicate_fix
Fix Visual Script duplicate issue
2018-07-26 12:57:55 +02:00
Rémi Verschelde
391e46830f doc: Sync classref with current source
Fix various missing arguments in bindings.
2018-07-26 11:56:21 +02:00
Rémi Verschelde
47a7dc7b3c
Merge pull request #18282 from aaronfranke/better-mathf
[Core] [Mono] Fix Color missing int export methods, added 64-bit
2018-07-26 10:48:47 +02:00
Swarnim Arun
b893dc2028 Fix Visual Script duplicate issue 2018-07-26 14:01:48 +05:30
George Marques
0b78e4f9e3
GDScript: Add type inference syntax for function arguments 2018-07-25 21:06:35 -03:00
George Marques
7db7b43cb0
GDScript: Fix type detection for String formatting operator 2018-07-25 20:50:13 -03:00
George Marques
aeb0b3114d
GDScript: Fix type detection on Object typed assign
Also make typed assigns a debug-only thing, so release builds are more
lenient on errors.
2018-07-25 20:50:12 -03:00
George Marques
a3ae4a9510
GDScript: Allow accessing constants of outer classes 2018-07-25 20:50:12 -03:00
George Marques
a62f4af7ba
GDScript: Enable built-in function introspection in non-tools
Only for debug builds. Fix problems in non-tools targets.
2018-07-25 20:50:12 -03:00
George Marques
3d6609303b
GDScript: Fix bogus error when a cursor token is found on class 2018-07-25 20:50:12 -03:00
George Marques
1ac9c0fe3a
GDScript: Allow strict conversion when assigning typed variables 2018-07-25 20:50:12 -03:00
George Marques
96ee93e8c7
GDScript: Fix mismatching between export hint and type hint 2018-07-25 20:50:12 -03:00
George Marques
4cb17191b8
GDScript: Allow inherited method to add optional arguments
Also show the parent method signature in the error message.
2018-07-25 20:50:11 -03:00
George Marques
cd6ad5462c
GDScript: Fix returned value of get_default_argument_count() 2018-07-25 20:50:11 -03:00
George Marques
65c069c8d9
GDScript: Fix main script detection 2018-07-25 20:50:11 -03:00
George Marques
b7bd85e70c
GDScript: Look up local scope first for detecting type 2018-07-25 20:50:11 -03:00
Hein-Pieter van Braam
0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Aaron Franke
e3368d692d [Mono] Fix Color incorrect ordering of int export methods, added 64-bit
[Mono] Fix Color incorrect ordering of int export methods, added 64-bit long export methods.
2018-07-25 15:34:24 -05:00
Ignacio Etcheverry
762c912e8e Fix continuous attempt to reload domain with API assemblies out of sync 2018-07-25 21:54:21 +02:00
Ignacio Etcheverry
f1130f9a8a Mono: Fix domain reload never triggering 2018-07-25 21:31:02 +02:00
Ignacio Etcheverry
8edf85b09c Fix '!valid' error spam on C# script instance create 2018-07-25 21:30:49 +02:00
Ignacio Etcheverry
5aefe5d936 Mono: Fix null dereferences 2018-07-25 21:30:11 +02:00
Rémi Verschelde
19fe78fe6f
Merge pull request #20450 from fire/vs_generic_search_20433
Visualscript: Don't show Shift+A search box at every screen.
2018-07-25 20:54:45 +02:00
Max Hilbrunner
bacc02b7d8
Merge pull request #20452 from fire/vs_hide_empty_categories_20433
Visualscript: Hide empty categories for basic types and methods.
2018-07-25 20:08:05 +02:00
K. S. Ernest (iFire) Lee
31008c9199 Visualscript: Don't show Shift+A search box at every screen and reuse EDIT_FIND_NODE_TYPE (ctrl-f) shortcut.
The generic search shortcut is now CTRL-F.
2018-07-25 09:34:52 -07:00
Ignacio Etcheverry
fe28e323b3
Merge pull request #20298 from PJB3005/18-07-20-mono-partial-api-ext
Makes Mono binding classes partial & adds GetNode<T>.
2018-07-25 18:03:57 +02:00
K. S. Ernest (iFire) Lee
5b2c4b77e2 Visualscript: Hide empty categories for basic types and methods. 2018-07-25 08:56:03 -07:00
Thomas Herzog
95d9302248
Merge pull request #20370 from marcelofg55/gdnative_crash
Fix possible crash at NativeScript::get_base_script
2018-07-25 17:09:51 +02:00
Marcelo Fernandez
77f3c0b495 Fix possible crash at NativeScript::get_base_script 2018-07-25 10:58:15 -03:00
Rémi Verschelde
f778bd8e69
Merge pull request #20404 from TigerCaldwell/master
Ensured consistency between RigidBody, PhysicsDirectBodyState, PhysicsServers and their 2D counterparts
2018-07-25 08:25:34 +02:00
Juan Linietsky
2e67fc57e6
Merge pull request #18867 from fire/better_vx_us_rebase_02
Improve VisualScript UX
2018-07-24 18:02:10 -03:00
K. S. Ernest (iFire) Lee
85670726fd Improve VisualScript UX
* Prototype faster function call ux.
* Work on general search ux.
* Able to create nodes from search.
* Show class for variables but not methods.
* Get actions search working.
* Descriptions now show for both methods and properties.
* Enable zooming on mouse wheel up and down.
* Make the drag trigger on right mouse button.
* Search now shows for action visual script nodes.
* Able to search visual node names.
* Search works better.
* Change zooming scale to hide artifacts better.
* Remove zoom changes
* Select from base should check properties too like the other functions.
* Seq_connect flag is needed to set sequence lines correctly.
* Remove comment
* Code cleanup with function names and arguments.
* Use brief description for search descriptions.
* Clean and fix bug with input nodes connecting with sequence lines.
* Add a warning and fix some edge conditions with sequence into data lines and vice versa.
* Don't search functions when pulling from a sequence node.
* Don't show actions when pulling from a data line.
* Set set and get properties.
* Convert visual script operators to the correct type
* Create a function preset finds only functions.
* Singletons can now find functions.
* Add shift-a for generic search.
* Add brief descriptions for Visual Script nodes.
* Search boxes can now filter names.
* Add bigger hit zones to node connect.
* For the drop zones, make all the rect2 areas the same size.
* Function names in visual script node should be lower case so that search works better.
* Use the convention of capitalize() for set, set, visual script nodes and methods.
* Make search more general. Ignore "_" and make case-insensitive. Also made the search window smaller and remove extra info from search
* Make type_cast use the connecting node's type and remove use of found variable.
* Fix case where you call an instance's call function where it becomes an invalid call.
* Make get_visual_node_names use a set of filters, move action creations and fix bug with sequence node connections.
* Make the window bigger.
* Make connect_data and connect_seq more robust.
* Add icons to search items.
* Add vs constructors in shift-a menu.
* Operators, builtins and constructors show type name. Fix several problems with port connections.
* In shift-a mode search everything.
* Code cleanup
* Work on autocompleting the type.
  * Use type guess in action creation.
  * Check if type hint string exists in object variables when generating the visual script search.
  * Add the hint to SceneTree.
  * Add original type detection.
  * Make type casting great again. This puts the type casted base type as the data output type string hint.
  * Pass the type in a VisualScriptFunctionCall too.
  * Set the base type correctly in VisualScriptFunctionGet and VisualScriptFunctionSet using hint string.
  * Make sure the instance is passed in VisualScriptPropertySet.
  * Restore search on the node's type.
* Remove dependencies from graph_edit.
* Remove dependencies from property_selector and name the class visual_script_property_selector.
* Extract hot zones into a function.
* Move hot_zones constants into default theme.
* Bigger capture zones.
* Clean messy port_grab_distance variables.
* Remove RMB functionality.
* Remove memory leak on showing visual script descriptions.
* Read the port_grab_distance constants on enter tree and theme changed.
2018-07-24 13:59:28 -07:00
Max Hilbrunner
b92c432313
Merge pull request #19225 from Paulb23/open_all_files_in_script_editor
Open all files in script editor
2018-07-24 21:52:11 +02:00