Commit Graph

66 Commits

Author SHA1 Message Date
Rémi Verschelde 9df7ed59fb
Merge pull request #19501 from Zylann/custom_loaders
Added basic support for custom resource savers and loaders
2018-12-16 14:26:56 +01:00
Marc Gilleron 065e2670af Added basic support for custom resource savers and loaders 2018-12-15 05:34:53 +00:00
Wilson E. Alvarez 08f22f1cf0
Moved member variables to initializer list 2018-12-11 18:33:01 -05:00
Jared f115f00ec6 Allow plugin scene change signal to report null for empty scenes. 2018-11-03 00:11:02 +02:00
Rémi Verschelde e5bbcb8bcf Fix warnings for comparison between signed and unsigned integers [-Wsign-compare]
Also turn off -Wsign-compare warnings in the future, we do not consider them important.

Fixes the following GCC 5 warnings:
```
core/node_path.cpp:279:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
core/oa_hash_map.h:169:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
core/oa_hash_map.h:314:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
drivers/gles2/shader_gles2.cpp:985:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
drivers/gles3/rasterizer_storage_gles3.cpp:1075:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
drivers/pulseaudio/audio_driver_pulseaudio.cpp:343:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
editor/editor_plugin.cpp:525:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
editor/editor_properties_array_dict.cpp:747:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
editor/plugins/spatial_editor_plugin.cpp:2078:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
editor/plugins/spatial_editor_plugin.cpp:4096:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
editor/plugins/sprite_editor_plugin.cpp💯20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/cvtt/image_compress_cvtt.cpp:122:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/cvtt/image_compress_cvtt.cpp:134:77: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/cvtt/image_compress_cvtt.cpp:339:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/etc/image_etc.cpp:222:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/gdnative/register_types.cpp:242:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/gdnative/register_types.cpp:258:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/opensimplex/simplex_noise.cpp:200:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/opensimplex/simplex_noise.cpp:222:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
modules/opensimplex/simplex_noise.cpp:246:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/android/export/export.cpp:1085:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/android/export/export.cpp:1489:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/android/export/export.cpp:1623:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/iphone/export/export.cpp:206:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/iphone/export/export.cpp:356:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/iphone/export/export.cpp:406:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
platform/iphone/export/export.cpp:493:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/3d/audio_stream_player_3d.cpp:420:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/resources/audio_stream_sample.cpp:565:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/resources/audio_stream_sample.cpp:571:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio/audio_rb_resampler.cpp:156:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
```

The following warnings were not fixed, as they implied casting for no gain:
```
core/io/packet_peer.cpp:228:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
core/io/resource_format_binary.cpp:109:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
drivers/gles2/rasterizer_scene_gles2.cpp:144:57: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
drivers/unix/file_access_unix.cpp:249:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/3d/voxel_light_baker.cpp:889:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/3d/voxel_light_baker.cpp:1020:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/3d/voxel_light_baker.cpp:1154:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/3d/voxel_light_baker.cpp:2255:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
scene/resources/bit_mask.cpp:336:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio/audio_stream.cpp:141:49: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio/audio_stream.cpp:150:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio/audio_stream.cpp:154:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio_server.cpp:86:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
servers/audio_server.cpp:89:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
```
2018-09-27 16:25:23 +02:00
groud 5172642c32 Fixes drawing of the 2D plugins on the 3D view 2018-09-18 20:00:07 +02:00
Rémi Verschelde 52466d57e9 Make some debug prints verbose-only, remove others 2018-08-24 14:59:01 +02:00
Michael Alexsander Silva Dias 6fa1b5eca7 Add option to move Tile/GridMap editors to another side 2018-08-22 19:18:23 -03:00
Rémi Verschelde 2f20836e52
Merge pull request #19837 from willnationsdev/plugin-utilities
Add PluginConfigDialog.
2018-08-15 11:42:51 +02:00
JFonS 59fd18ab1a New gizmo structure and new gizmo disabling menu 2018-08-09 20:58:39 +02:00
Will Nations ff604414a4 Add PluginConfigDialog, EditorPluginSettings GUI 2018-07-26 10:12:05 -05:00
Max Hilbrunner dacd9c51b1
Merge pull request #19849 from willnationsdev/expose-script-create-dialog
Expose ScriptCreateDialog to EditorPlugin
2018-07-04 22:37:27 +02:00
willnationsdev 2a6c591957 Expose ScriptCreateDialog to EditorPlugin 2018-07-04 09:41:12 -05:00
Michael Lee 2adfdbe184 Preventing an editor crash in the event that a plugin scene's root-node is null. 2018-06-28 00:18:53 -05:00
Max Hilbrunner 8a9e7ab6a6
Merge pull request #15489 from willnationsdev/gdnative-hook
Add EditorPlugin.build() build callbacks
2018-05-26 19:01:45 +02:00
Daniel J. Ramirez 9a365a1216 Moved inspector functionality from EditorNode to InspectorDock. 2018-05-17 16:29:26 -05:00
Juan Linietsky 4b5227ff77 -Ability to open resources in the same window
-Plenty of fixes and improvements to new inspector
-Fixes that were needed to make inspector work better
2018-05-17 18:03:05 -03:00
Max Hilbrunner d4cdee5f9e
Merge pull request #15640 from willnationsdev/resource-saved-signal
Added EditorPlugin 'resource_saved' signal
2018-05-07 15:07:32 +02:00
Hugo Locurcio 1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
Rémi Verschelde 74382dbfbb
Merge pull request #17576 from Mr-Slurpy/master
Allow users to add items to Tool menu
2018-03-23 11:08:03 +01:00
Mr-Slurpy 9da18f3974 Added tool menu functions in EditorPlugin 2018-03-17 14:41:50 -04:00
Will Nations dd6313710e Enable EditorPlugin to add/remove autoloads 2018-02-14 20:15:57 -06:00
George Marques da69a06253
Add a function to remove controls from containers
Closes #5968
2018-02-13 19:35:10 -02:00
Will Nations 80595ba92b Added EditorPlugin 'resource_saved' signal 2018-01-31 09:06:09 -06:00
George Marques 87be0bc110
Add interface for plugins to enable/disable other plugins 2018-01-30 20:25:20 -02:00
Will Nations 732a877b21 Add EditorPlugin.build() build callbacks 2018-01-08 13:02:47 -06: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
Tim Schellenberg 2f7ab58780
forward_canvas_gui_input only takes one parameter 2018-01-04 22:07:32 +01:00
Rémi Verschelde 9e7fec3329
Merge pull request #14882 from willnationsdev/add-select-file
Plugins can select files in the FileSystem Dock
2018-01-04 14:59:34 +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
Will Nations 1408fab1b4 Plugins can select files in FileSystem Dock 2017-12-20 16:34:21 -06:00
George Marques 5931190348
Defer the scan filesystem call when adding import plugins
This ensures every plugin is added before the scan is made.

Fix #12749
2017-12-09 14:59:01 -02:00
Juan Linietsky 209cb3830c Exposed EditorSceneImporter to script. Added APIs to use intermediate converters more easily. 2017-12-07 15:44:20 -03:00
Waldson Patrício c6f28925e2 Add method to set main screen plugin icon 2017-12-06 19:31:25 -03:00
Pedro J. Estébanez 3f31925b18 Universalize draw-over API for EditorPlugins
- Now it is usable from both `CanvasItem` and `Spatial` editors.
- `EditorPlugin` API changes:
 - `forward_draw_over_canvas()` becomes `forward_draw_over_viewport()`.
 - `update_canvas()` becomes `update_overlays()`, which now triggers the update of every overlay on top of any 2D or 3D viewports present. Also now it returns the number of such viewports, which is useful whenever you need to know the number of draw-over calls you'll get.
 - New: `[set/is]_force_draw_over_forwarding_enabled()` to force overlaying regardless it handles the current object type, in a similar fashion as `[set/is]_input_event_forwarding_always_enabled`. This kind of overlay is also on top of those for regular handled node types.
 - New: `forward_force_draw_over_canvas()`, which is the callback that gets called for plugins that enable forced overlaying.
2017-11-24 21:24:15 +01:00
Rémi Verschelde 0968c8d2f6
Merge pull request #12982 from tagcup/aabb_rename
Rename Rect3 to AABB.
2017-11-17 20:04:29 +01:00
Ferenc Arn d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
George Marques e90cfa6f82
Make resources edited by plugins be sent as reference
This ensures that a plugin can save a resource using the ResourceSaver.
2017-11-17 13:48:33 -02:00
Juan Linietsky 192a4d7de5 Reworked how servers preallocate RIDs, should fix #10970 2017-11-09 23:35:34 -03:00
Poommetee Ketson 9cadb9e5f3 Bind unbound enums, rearrange some by value 2017-10-22 01:58:02 +07:00
Gilles Roudiere fc02605b49 Fixes snapping and replaces the _draw_canvas by forward_canvas_draw 2017-10-18 00:01:59 +02:00
Andreas Haas d7b9847864
Fix argument names in method bindings.
Adds a couple of missing argument names.
2017-10-11 20:00:25 +02:00
Marcelo Fernandez da970c5c5f Prevent a possible crash when exporting to MeshLibrary 2017-09-28 22:08:13 -03:00
Juan Linietsky d3c1f2a7f6 Re-Added export plugins with a more interesting API, as well as the ability to do path remapping.
Also added ability to tell the exporter that a shared object needs to be bundled in the build.
2017-09-14 19:41:14 -03:00
Juan Linietsky 9c3bddfac2 Merge pull request #10745 from neikeq/fix-docdata-and-stuff
DocData and virtual method type hints fixes
2017-08-29 20:11:07 -03:00
Ignacio Etcheverry c16d00591b DocData and type hints fixes
- Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types
- Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string.
- PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void.
- Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
2017-08-29 19:40:21 +02:00
Juan Linietsky 8fce79aaee -Some fixes to code completion.
-Fix getter in code completion being displayed when it shouldn't
-Clean up preview generation for editors and exposed it as editor plugin
2017-08-28 00:04:24 -03:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Juan Linietsky dd7145b778 -Split EditorPlugin into EditorPlugin and EditorInterface
-Added EditorInterface to EditorScript
-Added functions to save the scene to EditorInterface
2017-08-26 10:33:07 -03:00
Hein-Pieter van Braam cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00