Rémi Verschelde
c037f6339f
Merge pull request #15463 from neikeq/the-stack-frame-madness
...
Mono: Implement stack info for errors and exceptions
2018-01-09 19:44:10 +01:00
Ignacio Etcheverry
252702a304
Mono: Fix iteration order of object types when generating bindings
2018-01-09 19:06:59 +01:00
Ignacio Etcheverry
1c6269f2dd
External editor fixes
...
- Fix VS Code opening on the previous line to the desired one.
- Fix running MonoDevelop without the line and column parameters.
- Fix `ScriptEditor::_goto_script_line` not working with language overriden external editors.
2018-01-09 17:25:23 +01:00
Ignacio Etcheverry
5be356b72f
Mono: Implement stack info for errors and exceptions
2018-01-09 17:19:03 +01:00
Rémi Verschelde
0e6e98a65f
Fix build of GDMonoField
...
Closes #15385 .
2018-01-06 11:06:05 +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
fe391393d4
Mono: Change BindingsGenerator singleton to avoid StringName leaks
2018-01-01 03:05:19 +01:00
Ignacio Etcheverry
b271aa48e4
Mono: Script lifetime fixes
...
- alloc_language_binding: Use strong GC handle as well for references. Fixes #15138
- Set the native instance field of Godot.Object to IntPtr.Zero when it's freed.
- Create weak handles without tracking resurrection (that was causing trouble). This means we have to call notification predelete before queueing a native Object for deletion, and use the MonoObject* passed by the finalizer because the weak GC handle target will return NULL at this point.
2018-01-01 03:05:13 +01:00
Ignacio Etcheverry
e350a56efd
Mono: Bindings no longer relie on DocData for accessors
2017-12-29 02:18:46 +01:00
Noshyaar
ab444a8ca9
Merge pull request #14996 from neikeq/enums-mono
...
Mono: Make the bindings generator output enums
2017-12-27 10:29:00 +07:00
Ignacio Etcheverry
8b0ad17b76
Merge pull request #14997 from neikeq/issue-14988
...
Marshal NULL MonoString* as empty Godot string
2017-12-24 17:50:28 +01:00
Ignacio Etcheverry
0a0a44da8d
Mono: Make the bindings generator output enums
...
- Switch to PascalCase for constants names
2017-12-24 04:20:41 +01:00
Ignacio Etcheverry
6e3d4ee9a6
Marshal NULL MonoString* as empty Godot string
2017-12-24 03:32:40 +01:00
geequlim
52ad2e5418
Add more translatable text for editor plugins.
2017-12-23 22:40:15 +08:00
PJB3005
7368a0e0f0
Fix fatal mono logs not getting logged to disk.
...
They aborted the application without flushing the log file.
Also there was a typo.
2017-12-19 17:36:33 +01:00
Andreas Haas
e7c1255b06
Mono: Build in cloned env.
...
Use a cloned env, so that toggling glue_enabled doesn't force a full rebuild as mentioned in #14584 .
2017-12-12 16:20:34 +01:00
Rémi Verschelde
13c2ff9320
Style: Apply new clang-format 5.0 style to all files
2017-12-07 08:02:00 +01:00
Unknown
fd1b94e307
Improve slang, especially in user-visible parts
2017-12-05 15:41:38 +01:00
Nathan Warden
0c22447ebe
Exported variables now show in the correct order.
2017-12-02 21:01:58 -05:00
Rémi Verschelde
aa5f7e0ff2
Fix mono build after bc2e8d99
2017-11-25 12:16:58 +01:00
Rémi Verschelde
bc75fae579
doc: Update header version for 3.0-beta
2017-11-24 09:16:52 +01:00
Andreas Haas
e69dd3c712
Mono: Use PascalCase in core types.
2017-11-21 23:32:40 +01:00
pablotato
054a2ac579
Add cartesian to polar conversion functions
2017-11-20 23:34:40 +01:00
Rémi Verschelde
ecf80fbbba
Merge pull request #12988 from akien-mga/xdg-home-paths
...
Add support for XDG Base Directory spec
2017-11-20 00:42:51 +01:00
Rémi Verschelde
32c12a92a5
Add initial support for the XDG Base Directory spec
...
Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html
(latest as of this commit).
Three virtual methods are added to OS for the various XDG paths we will use:
- OS::get_data_path gives XDG_DATA_HOME, or if missing:
~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_config_path gives XDG_CONFIG_HOME, or if missing:
~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_cache_path gives XDG_CACHE_HOME, or if missing:
~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows
So for Windows there are no changes, for Linux we follow the full split spec
and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot.
Support for system-wide installation of templates on Unix was removed for now,
as it's a bit hackish and I don't think anyone uses it.
user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by
default, but when using the application/config/use_shared_user_dir option
it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame.
For now everything still goes in EditorSettings::get_settings_dir(), but
this will be changed in a later commit to make use of the new splitting
where relevant.
Part of #3513 .
2017-11-19 20:54:24 +01:00
Ignacio Etcheverry
b51b3dc030
Mono: Fix compiler error with Variant::operator AABB()
2017-11-18 18:13:57 +01:00
Rémi Verschelde
ad199c3964
EditorSettings: Rename settings_path to settings_dir
...
Also to prepare for upcoming refactoring for XDG support.
2017-11-17 20:55:09 +01:00
Rémi Verschelde
73049d115e
Rename OS::get_data_dir to OS::get_user_data_dir
...
Will be needed to avoid confusion with system data path (XDG_DATA_HOME)
and editor data dir in upcoming refactoring.
2017-11-17 20:55:09 +01:00
Ferenc Arn
d28763a4c1
Rename Rect3 to AABB.
...
Fixes #12973 .
2017-11-17 11:01:41 -05:00
Rémi Verschelde
677e95d8d1
doc: Make all module docs self-contained
2017-11-15 21:29:33 +01:00
Rémi Verschelde
e7701bb2de
doc: Rename "@Global Scope" to "@GlobalScope"
...
Spaces in filenames are evil.
2017-11-15 20:41:16 +01:00
Rémi Verschelde
967bfb0c4a
doc: Remove revision.module_config from version string
...
It is now "3.0-alpha" instead of "3.0.alpha.custom_build{,.mono}",
limits unnecessary diffs.
2017-11-15 20:41:16 +01:00
Leon Krause
9b7b46143d
Move singleton management from ProjectSettings to Engine
2017-11-14 15:15:13 +01:00
Matthias Hoelzl
1f6d766332
Remove preprocessor directives from macro arguments
...
Preprocessor directives within macro arguments lead to undefined
behavior, and VC++ actually rejects them as compiler errors.
2017-11-10 10:14:04 +01:00
Daniel J. Ramirez
c57fc8ee7d
Fixed editor settings disappearing.
...
Some items that are no longer defined may disappear, but thats expected i guess.
2017-11-09 22:10:48 -06:00
Rémi Verschelde
9a78efc7c2
Merge pull request #12642 from BrainBlasted/fix_msbuild_unix
...
Added fallback for msbuild.exe.
2017-11-05 11:54:26 +01:00
Rémi Verschelde
5bc2cf257b
Convert DOS line endings to Unix line endings
...
Should fix issues some of us have with `misc/dist/uwp_template/AppxManifest.xml`
always showing up as modified.
Might cause issues on Windows due to the removal of BOMs or change of line endings
in some of the Mono, UWP or gradlew.bat files, we will test and adapt if need be.
2017-11-05 11:37:59 +01:00
BrainBlasted
8e2a756eb8
Added for fallback msbuild.exe.
...
Fixes #12613
2017-11-04 21:05:22 -04:00
Juan Linietsky
79f81b77e2
-Modules can now add custom version info (added it for Mono)
...
-Version string takes this version info
-Ability to download templates from the interweb (listing does not work yet)
2017-11-01 23:13:27 -03:00
Ignacio Etcheverry
3c97a9543d
Merge pull request #12549 from neikeq/seriously-do-they
...
Mono cleanup fixes
2017-11-01 01:56:16 +01:00
Ignacio Etcheverry
cb3ef3c7e6
Merge pull request #12546 from neikeq/do-people-read-these
...
Use mono_gc_wbarrier_set_arrayref for Array marshalling
2017-11-01 01:52:42 +01:00
Ignacio Etcheverry
a018cbaee1
Fix thread checking to queue instances for deletion
2017-11-01 01:51:12 +01:00
Ignacio Etcheverry
06ea441564
Make sure gchandle bindings are released before cleanup
2017-11-01 01:48:47 +01:00
Ignacio Etcheverry
0525b63421
Use mono_gc_wbarrier_set_arrayref for Array marshalling
2017-11-01 00:17:34 +01:00
Andreas Haas
f3218c24c7
Mono: support custom script templates.
...
Also fixes a bug that prevented methods like `duplicate()` from copying the source code. (Copied from GDScript implementation)
2017-10-31 15:46:30 +01:00
Ignacio Etcheverry
157fa55e34
Merge pull request #12535 from neikeq/wtf···
...
Fix msbuild hint paths returning only the directory
2017-10-31 15:19:25 +01:00
Ignacio Etcheverry
32ee3ecce4
Fix msbuild hint paths returning only the directory
2017-10-31 15:15:42 +01:00
Rémi Verschelde
f021b00389
Merge pull request #12525 from neikeq/wololo
...
Remove Visual Studio for now from the external editors list
2017-10-30 23:47:34 +01:00
Ignacio Etcheverry
ad194f81b6
Remove Visual Studio for now from the external editors list
2017-10-30 23:43:26 +01:00
Ignacio Etcheverry
9290fd2a42
Fix 'which' returning file without extension on Windows
2017-10-30 21:09:59 +01:00
Ignacio Etcheverry
619e4eb23d
Merge pull request #12491 from neikeq/waitasecond···
...
Fix FrameworkPathOverride and assemblies path loop
2017-10-29 22:33:27 +01:00
Ignacio Etcheverry
aa5a0b550f
Fix FrameworkPathOverride and assemblies path loop
2017-10-29 22:22:38 +01:00
Matthias Hoelzl
a6d53effa5
Fix build with Python 3 on Windows
2017-10-29 19:27:12 +01:00
Rémi Verschelde
23740c8a91
Mono: Fix Windows build
2017-10-29 17:28:53 +01:00
Rémi Verschelde
c193286186
Merge pull request #12475 from neikeq/ohuiii
...
Fix regression from #12473 and #12388
2017-10-29 11:32:00 +01:00
Rémi Verschelde
6ea8ffc12f
Merge pull request #12474 from neikeq/s
...
Mono: Add build project button and reload interval
2017-10-29 11:09:49 +01:00
Ignacio Etcheverry
15e30187ee
Fix regression from #12473 and #12388
2017-10-29 10:11:20 +01:00
Ignacio Etcheverry
8fca54fb0d
Merge pull request #12473 from neikeq/Alpha2?-Let'sDoThis
...
BindingsGenerator cleanup and improved error messages
2017-10-29 05:58:26 +01:00
Ignacio Etcheverry
27b7fb8e66
Mono: Add build project button and reload interval
2017-10-29 05:57:38 +01:00
Ignacio Etcheverry
09a1e11765
Merge pull request #12388 from neikeq/r
...
Buildsystem improvements for the Mono module
2017-10-29 04:28:36 +01:00
Ignacio Etcheverry
9f469887fc
Buildsystem improvements for the Mono module
...
- Make sure to search the mono installation directory for the right architecture in the windows registry.
- Do not build GodotSharpTools directly to #bin dir. Instead build to the default output path and copy it. This way we avoid MSBuild adding files we don't want to #bin.
- Add hint path for MSBuild in OSX.
- Copy shared library on Unix if not statically linking.
- Use vswhere to search MSBuild and search for 14.0 tools version in the registry instead of 4.0.
- SCons will only fallback xbuild when msbuild is not found if 'xbuild_fallback=yes' is passed to the command.
- Use mono's assembly path as FrameworkPathOverride if using with system's MSBuild (not mono's fork).
- Cleanup.
2017-10-29 04:26:13 +01:00
Ignacio Etcheverry
452313ffb1
BindingsGenerator cleanup and improved error messages
...
If there is an error generating a property or a method, the error message will include the member and class names.
2017-10-29 02:37:13 +01:00
Unknown
a2247d45fc
Mono: Use "UnnamedProject" if application/config/name is empty
2017-10-27 21:22:54 +02:00
Rémi Verschelde
d135008acf
Merge pull request #12405 from Jerome67000/clean_getnodetype
...
Removes Script::get_node_type()
[ci skip]
2017-10-26 08:49:38 +02:00
Przmk
2ae23c9f97
Fix default C# script
2017-10-25 22:43:06 +02:00
Jerome67000
2609cc9ef4
Removes Script::get_node_type()
...
used before GDScript, with squirrel apparently
2017-10-25 20:11:30 +02:00
Rémi Verschelde
847c55bcb1
Merge pull request #12365 from neikeq/p
...
Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
2017-10-24 18:59:26 +02:00
Ignacio Etcheverry
63f58da054
Exit after generating mono glue
2017-10-24 16:18:47 +02:00
Ignacio Etcheverry
e218a13a64
Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
...
- Make ScriptCreateDialog disable the built-in script checked button if the language does not support it.
- ScriptLanguage's get_template and make_template now receive the script path as class name if the the script language does not have named classes.
2017-10-24 15:48:58 +02:00
Ignacio Etcheverry
a897f7f606
Merge pull request #12364 from neikeq/o
...
Mono: Fix and cleanup build start errors
2017-10-24 01:17:36 +02:00
Ignacio Etcheverry
9905002fa6
Mono: Fix and cleanup build start errors
2017-10-24 00:49:44 +02:00
Rémi Verschelde
8ef79ffe68
Merge pull request #12320 from mhilbrunner/issue-11994
...
Add _process(delta) to new script templates. Closes #11994 .
2017-10-23 23:18:14 +02:00
Ignacio Etcheverry
45e5e23ee8
Mono: Prevent raising exceptions in native code
...
For now we will just print the exceptions we catch. Later, we should use something similar to 'mono_set_pending_exception(ex)'.
2017-10-23 00:35:14 +02:00
Ignacio Etcheverry
acaaf2e440
Merge pull request #12326 from neikeq/n
...
Fix set field from MonoObject*
2017-10-22 22:14:10 +02:00
Ignacio Etcheverry
ae725969d3
Fix set field from MonoObject*
2017-10-22 22:07:52 +02:00
mhilbrunner
ba779c1c0c
Add _process(delta) to new script templates. Closes #11994 .
2017-10-22 21:07:34 +02:00
Rémi Verschelde
6361e24f29
Cleanup unnecessary debug prints
2017-10-21 20:41:07 +02:00
Rémi Verschelde
a3a85670a3
Mono: Fix static linking on macOS
...
[ci skip]
2017-10-20 22:11:55 +02:00
Rémi Verschelde
e4ec0d007c
Merge pull request #12209 from neikeq/m
...
Mono: Fix warning about exported static fields
2017-10-18 08:40:13 +02:00
Ignacio Etcheverry
b1d106adb6
Mono: Fix warning about exported static fields
2017-10-18 08:34:17 +02:00
Rémi Verschelde
9bead2e06f
Merge pull request #12208 from neikeq/l
...
Mono: Fix build with tools=no or target=release
2017-10-18 08:29:37 +02:00
Ignacio Etcheverry
fb63ee52fb
Mono: Fix build with tools=no or target=release
2017-10-18 08:27:18 +02:00
Rémi Verschelde
fb7428e797
Merge pull request #12178 from neikeq/k
...
Export attribute fixes and improvements
2017-10-17 21:29:19 +02: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
1bafd0e33a
Take self-contained mode into consideration
2017-10-17 11:36:19 +02:00
Rémi Verschelde
8de1dc7e9a
Merge pull request #12138 from neikeq/i
...
Avoid adding built-in script path to csproj
2017-10-16 10:19:16 +02:00
Rémi Verschelde
c0293aca59
Merge pull request #12136 from neikeq/h
...
Improve signature of signal target generated function
2017-10-16 10:18:17 +02:00
Ignacio Etcheverry
132c6deb28
Merge pull request #12104 from akien-mga/monosgen-2
...
mono: Request monosgen-2 explicitly via pkg-config
2017-10-16 04:32:47 +02:00
Ignacio Etcheverry
967335b969
Avoid adding built-in script path to csproj
2017-10-16 04:26:13 +02:00
Ignacio Etcheverry
8ed3247a63
Improve signature of signal target generated function
2017-10-16 04:19:36 +02:00
Ignacio Etcheverry
1a9efb417a
Merge pull request #12135 from neikeq/g
...
Re-write SignalAwaiter implementation
2017-10-16 03:58:51 +02:00
Ignacio Etcheverry
63369ec306
Re-write SignalAwaiter implementation
...
Old implementation had issues where you could only await on the same signal of the same source once.
2017-10-16 03:54:23 +02:00
Rémi Verschelde
cd69dcafb7
mono: Request monosgen-2 explicitly via pkg-config
...
Prevents GC mismatch between mono binary and library, fixes #11916 .
2017-10-14 23:54:26 +02:00
Ignacio Etcheverry
740ef3dc97
Merge pull request #11954 from neikeq/d
...
Added 'exposed' field to ClassInfo for registered classes
2017-10-11 13:54:34 +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
9b6f65af82
Mono: Make use of ClassInfo's exposed API
...
- BindingsGenerator only generates exposed classes.
- Fix creation of managed instances of non-exposed classes.
2017-10-09 23:50:06 +02:00
Ignacio Etcheverry
0c2e882210
Adds 'exposed' field to ClassInfo
...
This field represents if the class is exposed to the scripting API.
The value is 'true' if the class was registered manually ('ClassDB::register_*class()'), otherwise it's false (registered on '_post_initialize').
- Added missing registration of classes that are meant to be exposed.
2017-10-09 23:49:17 +02:00