Commit Graph

719 Commits

Author SHA1 Message Date
eab850524e Add closest_power_of_2 func and implement mix_rate/latency on OS X 2017-08-17 19:51:13 -03:00
b1ecaaa22b Merge pull request #10307 from Rubonnek/update-argument-names
Updated function argument names
2017-08-16 17:17:56 +02:00
c1a43a09be Merge pull request #10356 from RandomShaper/fix-msvc-error
Add comment warning about include order
2017-08-16 17:11:59 +02:00
ae2d449047 Revive inspector property evaluation
GDScript was restricted to parse only scripts beginning with __res://__ or __user://__ to avoid templates from being parsed. I've made that a bit less inclusive by allowing scripts with an empty path to be parsed too, which doesn't conflict and is needed for this to work.

Also I've removed the `this` variable of the generated script and made the relevant object to be the one the script instance refers to, so you can use `self` instead.

Now, with the shorter 3.0-style syntax, you can write things like: `self.position.x + 10`

Closes #9500.
2017-08-16 03:01:41 +02:00
2a26c5ce62 Comment include order to avoid errors
So as to not revive #10071, as suggested by @akien-mga.
2017-08-15 22:12:57 +02:00
0d35d4d53b Replace GUI anchor type by a float between 0 and 1 2017-08-13 21:20:13 +02:00
428f03cf06 Updated function argument names 2017-08-12 15:12:49 -04:00
dbece391a8 Merge pull request #10179 from marcelofg55/master
Fix crash when running a game with the profiler enabled
2017-08-11 10:38:16 +02:00
8e6768c963 Merge pull request #10202 from neikeq/how-do-you-turn-this-on
Improves method bind's detecting of signarute types
2017-08-11 10:29:41 +02:00
78619a5866 Fixes method definitions with extra number of arguments 2017-08-10 07:17:51 +02:00
2f290038d6 Removes type information from method binds 2017-08-10 07:17:50 +02:00
1e74f27f8f Adds missing type information to virtual method binds 2017-08-10 07:17:50 +02:00
e93ce339dc Merge pull request #10206 from endragor/show-base-nativescript-props
Allow to edit base type NativeScript properties
2017-08-09 23:07:42 +02:00
9c1afce38e Allow to edit base type NativeScript properties 2017-08-09 20:51:38 +07:00
9d4887e74b Fix getting default values for NativeScript base type properties 2017-08-09 20:37:37 +07:00
1536cc4381 Merge pull request #9633 from ducdetronquito/gdnative_string_api
[GDNative] Implement String API.
2017-08-09 04:44:22 +02:00
0b55363a82 Implemented String C API. 2017-08-08 23:42:54 +02:00
077ed98c92 Fix crash when running a game with the profiler enabled 2017-08-08 18:02:45 -03:00
8a4bce6ebd Ability to set a function as sequenced, so when called you can choose not to use sequence ports. Fixes #6346 2017-08-08 13:14:36 -03:00
95f10c620d push variable later when created, to avoid self-referencing as a valid case, closes #6111 2017-08-08 11:44:49 -03:00
fab75bce3f Properly rename visual script functions, fixed #6076 2017-08-08 11:32:09 -03:00
c6120e77a8 Implement len() gdscript built-in function for python users, closes #1960 2017-08-07 18:38:47 -03:00
5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
37adf936ab few bugs fixed thanks to explicit bool constructor and clang.
explicit bool constructor has thus now been removed, as it served it's mission!
2017-08-05 21:43:10 -03:00
76ce18c290 [GDNative] fixed double variant call
This bug got discovered thanks to clang!
2017-08-06 02:04:06 +02:00
cfe4b30941 renamed node path, closes #5691 2017-08-05 09:13:59 -03:00
d71171026f Dont call nativescript callbacks if lib is not initialized 2017-08-04 21:17:33 +07:00
211dfa6602 Merge pull request #10072 from karroffel/gdnative-header-include-paths
[GDNative] fixed a bug with ambiguous include paths
2017-08-04 04:06:54 +02:00
ab3b1e67c7 [GDNative] fixed a bug with ambiguous include paths
fixes #10071. The problem is that the json.h file includes the
local variant.h instead of the "absolute" core/variant.h
2017-08-04 03:26:32 +02:00
056b5f9e56 Merge pull request #10060 from endragor/nativescript-frame
Forward frame call to GDNative libraries
2017-08-03 13:52:44 +02:00
aaf84129db Forward frame call to GDNative libraries 2017-08-03 14:04:04 +07:00
c143f86968 [GDNative/NativeScript] fix -rdynamic and removed _init call
The _init call was buggy anyway and in the end shouldn't be a
thing that's called via ClassDB, it should be something that's
language specific, so we leave this out for the bindings.

In the commit 66a7763 the SCsub file for GDNative was changed to
use a cloned environment, that bricked -rdynamic which needs to be
passed down to the linker, which didn't happen with the new env.
2017-08-02 14:21:12 +02:00
880048377d [GDNative] better header include paths
The old include paths caused some problems on some compilers, for
example including "string.h" was ambiguous.
2017-08-02 03:50:33 +02:00
93c226f7a3 Merge pull request #9964 from supagu/audio_fix
Fixed AudioStreamPlaybackOGGVorbis::_mix_internal getting stuck in in…
2017-07-30 20:59:45 +02:00
fc9f5d59b5 [NativeScript] fix signals from base class not being accessible
https://github.com/GodotNativeTools/cpp_bindings/issues/26
2017-07-30 15:04:00 +02:00
207f596e69 Fixed AudioStreamPlaybackOGGVorbis::_mix_internal getting stuck in infinite loop causing audio to freeze 2017-07-29 18:59:51 +09:30
3193460c4a Pass GDNativeLibrary pointer to library init 2017-07-28 22:43:23 +07:00
204ec5459b Merge pull request #9932 from djrm/vs_fixes
Do not allow multiple data connections to the same data input slot, f…
2017-07-28 11:15:56 +02:00
707bb96fa8 Do not allow multiple data connections to the same data input slot, fixes #6357.Improved curve rendering when nodes are close. 2017-07-27 16:39:53 -05:00
3185c9c374 [NativeScript] fixed optional _init call
In 3c53b35 a call to an "_init" function was introduced,
that however was only executed in the `_new` function,
also it *required* that such a function exists.

With this patch the "_init" function will be optionally called on
every instance creation.
2017-07-27 15:30:39 +02:00
aae8accadd [NativeScript] fix mutex double lock
In 3c53b35 a bug got introduced where a mutex gets locked twice
instead of locked and then unlocked.
This path fixes that.
2017-07-27 14:56:47 +02:00
135c2112ad added an optional parameter to OS symbol lookup
When looking up a symbol from a library, previously an error was
shown when the symbol did not exist. That caused confusion when the
lookup was completely optional.
This adds a new parameter to that method so that those errors can
be handled manually if needed.
2017-07-27 11:13:21 +02:00
a2795e9531 [NativeScript] call _init on instance creation
This also adds basic locking for the set of owners
to avoid threading problems
2017-07-27 11:12:49 +02:00
18e23ad4dc Merge pull request #9882 from endragor/nativescript-refcount
Forward refcount changes to NativeScriptInstance
2017-07-26 21:29:26 +02:00
88bd18244b Merge pull request #9883 from bojidar-bg/8217-fixup-get_node-shortcut
Fix $a/b being parsed as division
2017-07-26 18:17:51 +02:00
a5fb82c28c Fix $a/b being parsed as division 2017-07-26 18:51:03 +03:00
db9dcbddbc Forward refcount changes to NativeScriptInstance
This also changes Reference::unreference() to always invoke
refcount_decremented. Previously it was not invoked until the count
reached zero due to short-circuit evalution of boolean expressions.
2017-07-26 22:36:57 +07:00
2b99bd492b Merge pull request #9867 from endragor/nativescript-threading
Support multithreading for NativeScriptLanguage
2017-07-26 16:01:43 +02:00
9caf9fa76f Merge pull request #9720 from endragor/stack-bottom
Add a way to retrieve stack bottom of the main thread
2017-07-26 15:30:04 +02:00
7f32023a1a Support multithreading for NativeScriptLanguage
Godot may call property setters from non-main thread when an object is
loaded in the edtior. This means NativeScriptLanguage could be accessed
from different threads, but it was not designed for thread-safety.
Besides, previous behaviour made it so that godot_nativescript_init and
godot_gdnative_init could be invoked from non-main thread, while
godot_gdnative_thread is always invoked on the main thread. This may
not be expected by the binding library.

This commit defers native library initialization to the main thread and
adds godot_nativescript_thread_enter and godot_nativescript_thread_exit
callbacks to make a binding library aware of foreign threads.
2017-07-26 19:39:10 +07:00