Ignacio Etcheverry
c55ce204b3
Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'modules/mono'
...
And 'CRASH_*_MSG' as well.
Also make error messages puntuation and quotation more consistent.
2019-08-09 12:13:21 +02:00
Ignacio Etcheverry
270af6fa08
Re-write mono module editor code in C#
...
Make the build system automatically build the C# Api assemblies to be shipped with the editor.
Make the editor, editor player and debug export templates use Api assemblies built with debug symbols.
Always run MSBuild to build the editor tools and Api assemblies when building Godot.
Several bugs fixed related to assembly hot reloading and restoring state.
Fix StringExtensions internal calls not being registered correctly, resulting in MissingMethodException.
2019-07-05 09:38:23 +02:00
Ignacio Etcheverry
14df9e5cb2
Android build and export for the mono module
2019-06-03 17:09:24 +02:00
Ignacio Etcheverry
9b76c56098
Fix C# build error in MarshalUtils debug code
2019-05-21 19:09:00 +02:00
Ignacio Etcheverry
5a4bf4f369
C#: Marshalling support for IEnumerable<> and IDictionary<,>
...
Also fixed the hint string of exported members.
2019-05-18 19:39:56 +02:00
Ignacio Etcheverry
470b80cc55
C#: Support resource type hint in exported arrays
...
- Elements of types like PackedScene will display with the special editor for such type.
2019-04-29 21:20:05 +02:00
Ignacio Etcheverry
480d4c6fba
C#: Support type hints for exported Arrays
...
Added the code for Dictionary as well, but it's not yet supported by the Godot inspector.
2019-04-06 12:14:43 +02:00
Ignacio Etcheverry
187e6ae26d
C#: Add marshalling support for IEnumerable and IDictionary
...
Added constructor that takes IEnumerable for Array and IEnumerable<T> for Array<T>.
Added constructor that takes IDictionary for Dictionary and IDictionary<TKey, TValue> for Dictionary<TKey, TValue>.
2019-04-06 12:14:37 +02:00
marxin
8d51618949
Add -Wshadow=local to warnings and fix reported issues.
...
Fixes #25316 .
2019-02-20 19:44:12 +01:00
Ignacio Etcheverry
b41a793592
Fix Godot.Reference marshalling from MonoObject* to Variant
...
Need to cast Ref<T> to Variant instead of constructing Variant from Object*, otherwise the Variant won't hold a reference.
2019-02-14 22:54:15 +01:00
Rémi Verschelde
b16c309f82
Update copyright statements to 2019
...
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Hein-Pieter van Braam
4e25e5066b
Reduce String CoW
...
By introducing an intermediate proxy class for the array subscript
operator for String and CharString we can control better when CowData
will actually CoW.
This should improve performance of String usage for most cases.
2018-12-16 16:51:38 +01:00
Ignacio Etcheverry
b9b7dcdf00
C#: Improve tool script support and fix reloading issues
2018-11-30 20:43:06 +01:00
Ignacio Etcheverry
23ae64b15e
C#: Optimize struct marshalling
...
- We no longer box struct to return them from internal calls.
- Use reinterpret_cast if the managed struct layout is the same as the native struct.
2018-10-17 22:36:26 +02:00
Ignacio Etcheverry
ee3c476c9a
Add Array and Dictionary wrapper classes to C#
2018-07-20 01:44:30 +02:00
Rémi Verschelde
7c9f7452f4
Style: Format code with clang-format 6.0.1
2018-07-18 16:27:03 +02:00
Ignacio Etcheverry
4739cb8c00
Mono: Pending exceptions and cleanup
2018-07-04 03:08:29 +02:00
Ignacio Etcheverry
7933a6cc9f
Mono: Null checks when marshaling from MonoArray* and managed Dictionary
2018-06-05 22:14:32 +02:00
Carter Anderson
56262ceafe
Reduce allocations when converting mono arrays to pool arrays
2018-05-20 18:18:06 -07:00
Paul Joannon
2dc6725cc4
remove an unneeded marshalling function
...
`Variant mono_object_to_variant(MonoObject*, const ManagedType&)`
2018-01-18 10:33:43 +01:00
Rémi Verschelde
e4213e66b2
Add missing copyright headers and fix formatting
...
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Ignacio Etcheverry
119a910bc6
Mono: Add properties support in scripts
2018-01-04 21:16:22 +01:00
Rémi Verschelde
b50a9114b1
Update copyright statements to 2018
...
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Ignacio Etcheverry
6e3d4ee9a6
Marshal NULL MonoString* as empty Godot string
2017-12-24 03:32:40 +01:00
Ignacio Etcheverry
b51b3dc030
Mono: Fix compiler error with Variant::operator AABB()
2017-11-18 18:13:57 +01:00
Ferenc Arn
d28763a4c1
Rename Rect3 to AABB.
...
Fixes #12973 .
2017-11-17 11:01:41 -05:00
Ignacio Etcheverry
0525b63421
Use mono_gc_wbarrier_set_arrayref for Array marshalling
2017-11-01 00:17:34 +01:00
Ignacio Etcheverry
6e6b455d1f
Export attribute fixes and improvements
...
- Allow non-public fields to be exported as well (to avoid confusion).
- Set PROPERTY_HINT_RESOURCE_TYPE for resource derived fields.
- Support enums and automatically fill PROPERTY_HINT_ENUM's hint_string for enum fields.
2017-10-17 14:42:13 +02:00
Ignacio Etcheverry
14b9ad1296
Fix wrong array index
2017-10-10 18:29:56 +02:00
Ignacio Etcheverry
18d3ba0c50
Fix getting struct elements from MonoArray ( #11978 )
...
* Fix getting struct elements from MonoArray
* Revert undesired change
2017-10-10 00:25:36 +02:00
Ignacio Etcheverry
ff28569d16
Fixed IntPtr unboxing ( #11949 )
...
- Fix boolean never reset to false
- Fix IntPtr unboxing and cleanup
2017-10-09 00:10:54 +02:00
Ignacio Etcheverry
e36fb95c50
Added mono module
2017-10-03 00:01:26 +02:00