Commit graph

135 commits

Author SHA1 Message Date
Paul Joannon
1eb9c7e6cb
RID cached class was wrong (mono) 2018-01-22 14:01:20 +01:00
Paul Joannon
e0ce249621
fix GDMonoProperty::set_value
was calling getter and not setter
should close #15387
2018-01-21 12:29:49 +01:00
Rémi Verschelde
9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Kelly Thomas
ed17b42654
remove c#7 features for compatibility with 2015 Build Tools
https://github.com/godotengine/godot/issues/15742
2018-01-18 19:43:23 +08: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
Paul Joannon
1de5f7e70b
fix marshalling when a function is returning an object from c# 2018-01-18 10:31:36 +01:00
Rémi Verschelde
e28cdc4654 doc: Update version string in XML 2018-01-13 11:43:42 +01:00
Ignacio Etcheverry
bff9627dc4 Mono: Some StackTrace to StackInfo[] fixes
- Sometimes `StackFrame.GetMethod()` returns null (e.g.: latest frame of a `MissingMethodException`). Still not sure what to do with that frame (maybe skip it), but at least it no longer fails.
- Skip `CSharpLanguage::debug_get_current_stack_info()` if an error is printed from `GDMonoUtils::update_corlib_cache()`.
- Fix crash when calling `GDMonoUtils::print_unhandled_exception(exc)` if there is no ScriptDebugger attached.
2018-01-12 19:31:15 +01:00
Ignacio Etcheverry
feb843da2b Mono: Fix starting MonoDevelop process from the wrong appdomain 2018-01-12 19:19:20 +01:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Rémi Verschelde
a60896869e
Merge pull request #15537 from PJB3005/18-01-09-fix-color-string-constructor-mono
Fixes Mono color creation from string being 0-255 instead of 0-1.
2018-01-10 14:50:26 +01:00
Pieter-Jan Briers
6e14cf991a Fixes Mono color creation from string.
Fixes #15468

Also improves the error messages if the string isn't hex, because saying that the color value is negative is just a side effect of the implementation and tells you nothing.
2018-01-10 13:56:30 +01:00
Ignacio Etcheverry
f7de51b3a6 Mono: Some fixes for #15463 2018-01-09 22:27:55 +01:00
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