Commit Graph

2637 Commits

Author SHA1 Message Date
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
Geequlim ed7ed52151 Parse more informations for code completion 2019-07-04 14:00:14 +08:00
Rémi Verschelde b0d41847ed SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor defines
It's the recommended way to set those, and is more portable
(automatically prepends -D for GCC/Clang and /D for MSVC).

We still use CPPFLAGS for some pre-processor flags which are not
defines.
2019-07-03 09:59:04 +02:00
Fabio Alessandrelli c798173332 Fix editor crash when StreamPeerSSL is unavilable.
The fix for EditorNode is a bit hacky, but the handling of the buttons
and features there is hacky too (based on enums that might not reflect
the actual state).
2019-07-02 15:34:34 +02:00
Rémi Verschelde e9d624d7ce
Merge pull request #30239 from Faless/crypto/crypto_core
CryptoCore class to access to base crypto utils.
2019-07-02 14:52:43 +02:00
Fabio Alessandrelli 564d93ff10 CryptoCore class to access to base crypto utils.
Godot core needs MD5/SHA256/AES/Base64 which used to be provided by
separate libraries.
Since we bundle mbedtls in most cases, and we can easily only include
the needed sources if we so desire, let's use it.

To simplify library changes in the future, and better isolate header
dependencies all functions have been wrapped around inside a class in
`core/math/crypto_base.h`.

If the mbedtls module is disabled, we only bundle the needed source
files independently of the `builtin_mbedtls` option.
If the module is enabled, the `builtin_mbedtls` option works as usual.

Also remove some unused headers from StreamPeerMbedTLS which were
causing build issues.
2019-07-02 12:36:27 +02:00
Rémi Verschelde 98879be276
Merge pull request #27510 from fire/screenshot_editor
Add editor screenshot on control - f12.
2019-07-02 11:30:16 +02:00
Rémi Verschelde c486b8dac0
Merge pull request #30223 from qarmin/properly_delete_thread
Remove thread to prevent memory leak
2019-07-02 11:26:29 +02:00
K. S. Ernest (iFire) Lee 05de0eafab Add editor screenshot on control - f12. 2019-07-01 13:39:21 -07:00
qarmin 6edd06e566 Remove thread to prevent memory leak 2019-07-01 15:07:06 +02:00
Rémi Verschelde 6b30f284a0
Merge pull request #29980 from Dentrax/directed-by-qarmin
Fix some editor crashes
2019-07-01 14:59:29 +02:00
Rémi Verschelde b0ce9401ff
Merge pull request #30126 from qarmin/remove_unnecessary_code
Remove unnecessary code and add some error explanations
2019-07-01 14:32:04 +02:00
Furkan Türkal 7d8d337b2c fix some crashes 2019-07-01 14:28:29 +03:00
qarmin 3c154eb93b Remove unnecessary code and add some error explanations 2019-07-01 12:59:42 +02:00
Rémi Verschelde d17eac735c
Merge pull request #29815 from NilsIrl/plus_file_1
Replace ` + "/" + ` with `String::file_add()`
2019-07-01 12:06:35 +02:00
Rémi Verschelde 0db138a621 doc: Enforce default values for OS properties
Otherwise we end up fetching values from the current OS instance
when running doctool, so they would change based on the system or
even simply due to changes to the system clipboard.
2019-06-30 13:58:07 +02:00
Rémi Verschelde 850a54a2a5 Fix uninitialized variables in Line2D, JSONParseResult and TileMap 2019-06-30 13:58:07 +02:00
Rémi Verschelde b4aba3ae7c
Merge pull request #30177 from hbina/use_FALLTHROUGH_macro
Applied some of FALLTHROUGH macro usage from #30122
2019-06-29 23:40:08 +02:00
hbina085 9f0c6a6009 Many fallthrough switch cases now have the FALLTHROUGH macro to tell the compiler that this is intended. 2019-06-29 16:08:48 -04:00
Bojidar Marinov 55234d62b0
Remove bogus nulls from generated default values
Also, fix crash in PluginScript destructor.
2019-06-29 15:51:33 +03:00
Rémi Verschelde 1df38f2372
Merge pull request #30112 from AgentEnder/master
AStar get_current_point enabled consideration
2019-06-29 13:45:17 +02:00
Rémi Verschelde 52355c638b
Merge pull request #29380 from bojidar-bg/16086-docs-default-value
Add default values to the editor help, docs, and generated RST
2019-06-29 12:28:30 +02:00
Craigory V Coppola dc9659a9bf AStar get_closest_point/get_closest_position_in_segment enabled consideration 2019-06-29 02:04:13 -05:00
Rémi Verschelde a5bd40aa48
Merge pull request #30121 from DrMoriarty/encrypted_configfile
Add encrypted files support to ConfigFile
2019-06-28 12:06:44 +02:00
Rémi Verschelde 3942c939e3
Merge pull request #30135 from qarmin/fix_memory_leak_os
Fix small memory leak in OS.cpp
2019-06-27 22:06:52 +02:00
qarmin d408c254a2 Fix small memory leak in OS.cpp 2019-06-27 21:35:27 +02:00
Bojidar Marinov 0c4c36d823
Add default values to the editor help, docs, and generated RST
Also, make spacing of "=" in the editor help a bit more consistent.
Closes #16086
2019-06-27 18:29:35 +03:00
Vasiliy Makarov fcd8faf2f4 Add encrypted files support to ConfigFile
Fix #26477
Add in ConfigFile this methods:
load_encrypted(path, key)
load_encrypted_pass(path, password)
save_encrypted(path, key)
save_encrypted_pass(path, password)
2019-06-27 16:43:44 +03:00
Rémi Verschelde 1bf448dd87 Properly expose all Error constants to scripting languages 2019-06-27 12:48:26 +02:00
Rémi Verschelde 755b589384
Merge pull request #30096 from akien-mga/doc-misc-updates
doc: Proofread and complete various nodes
2019-06-27 08:12:34 +02:00
Rémi Verschelde eaaff9da31
Merge pull request #29941 from qarmin/redundant_code_and_others
Remove redundant code, possible NULL pointers and others
2019-06-27 01:05:18 +02:00
Andrii Doroshenko (Xrayez) 6f2233d13a Bind is_point_in_polygon in Geometry singleton 2019-06-27 00:20:22 +03:00
Rémi Verschelde 867dda1124 doc: Proofread and complete various nodes
All 100% completed: MainLoop, Node, Object, Path, Performance,
Reference, Resource, SceneState, SceneTree, UndoRedo.

Also fixed some en_GB occurrences as the reference spelling is en_US.
2019-06-26 23:05:51 +02:00
Alexander Holland 8f23f4b44e UndoRedo add version changed signal
added some functions to manage undo buttons
2019-06-26 16:32:34 +02:00
qarmin 4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Rémi Verschelde a9cff880d6 doc: Document EncodedObjectAsID, expose its property 2019-06-26 10:50:45 +02:00
Fabio Alessandrelli 679bb882fc Fix PoolVector resize and subarray.
The first used to accept negative values, the second would crash if out
of bound.
2019-06-24 09:24:09 +02:00
Nils ANDRÉ-CHANG d2833d4f4d Replace ` + "/" + ` with `String::file_add()` 2019-06-23 13:33:50 +01:00
Rémi Verschelde 05a0a68c72
Merge pull request #24448 from lukad/toggle-system-console
Add option to toggle console window
2019-06-21 23:43:16 +02:00
Rémi Verschelde 1e833cadbc
Merge pull request #29935 from Faless/net/get_if_multicast_pr
Multicast, more network interfaces info
2019-06-21 10:21:01 +02:00
Fabio Alessandrelli e5e3f86648 Multicast support in NetSocket/PacketPeerUDP 2019-06-21 00:14:42 +02:00
Fabio Alessandrelli b574e476ec Implement IP.get_local_interfaces.
Allow getting interfaces names and assigned names.

On UWP this is not supported, and the function will return one interface
for each local address (with interface name the local address itself).
2019-06-21 00:14:42 +02:00
Rémi Verschelde 5c66771e3e
Merge pull request #29283 from qarmin/fix_some_always_same_values
Remove always true/false values
2019-06-20 21:10:10 +02:00
qarmin 072e40368e Fix always true/false values 2019-06-20 16:59:48 +02:00
Luka Dornhecker ad504b926f Add option to toggle console window on Windows
This is an editor setting and its value can also be toggled
using an entry in the Editor toolbar. The console will still
appear briefly when starting the project manager or editor,
as it's still compiled as console application.

Does not impact exported games, which will still run without
console in release and with console in debug mode.

A project setting or export option could be added to disable
it in debug mode if there's demand for it, but that would
greatly reduce the usefulness of debug builds if Windows users
can no longer report error and crash messages.

Fixes #17889.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2019-06-20 16:55:52 +02:00
JohnJLight 38d3bfe971 Made use of semicolons more consitent, fixed formatting 2019-06-19 15:24:31 +02:00
Rémi Verschelde 43a9b8c76c
Merge pull request #27237 from Chaosus/astar_2d
Added 2D functions to AStar
2019-06-19 15:07:59 +02:00
Rémi Verschelde 2b52cd3e5c
Merge pull request #28648 from KoBeWi/substr-1
Make second parameter of substr optional
2019-06-19 12:43:46 +02:00
Rémi Verschelde 22afebcad7
Merge pull request #29598 from GodotExplorer/uri-encode
Expose String.http_escape and String.http_unescape
2019-06-19 10:47:34 +02:00
Rémi Verschelde d6176db271 Unexpose subclasses of ResourceFormatLoader and -Saver
ResourceFormatLoader and ResourceFormatSaver are meant to be overridden
to add support for different formats in ResourceLoader and ResourceSaver.
Those should be exposed as they can be overridden in plugins.

On the other hand, all predefined subclasses of those two base classes
are only meant to register support for new file and resource types, but
should not and cannot be used directly from script, so they should not
be exposed.

Also unexposed ResourceImporterOGGVorbis (and thus its base class
ResourceImporter) which are editor-only.
2019-06-18 17:56:23 +02:00