Commit Graph

457 Commits

Author SHA1 Message Date
Rémi Verschelde 8e0dfe5501 EditorNode: New default dock layout
As discussed with @reduz, now that the FileSystem dock is getting
files display in tree view (#21426), we can change the docks layout
again to give more height to the new inspector.

The new layout is thus:
- Top left: Scene and Import docks
- Bottom left: FileSystem
- Right (full height): Inspector and Node docks

The 2nd left (LEFT_R) and 1st right (RIGHT_L) VSplitContainers (the
ones in use) also get an additional 40px of width compared to their
previous size (which was the minimum size).

Fixes #21480.
2018-09-20 18:35:38 +02:00
Rémi Verschelde c884b55ff0 EditorNode: Reorder and cleanup initial dock setup 2018-09-20 18:35:38 +02:00
Rémi Verschelde 69ee33896a
Merge pull request #21426 from groud/add_files_to_tree_view
Add files to tree view
2018-09-20 18:32:13 +02:00
groud 5172642c32 Fixes drawing of the 2D plugins on the 3D view 2018-09-18 20:00:07 +02:00
Fabio Alessandrelli d2b38aabec Bundle SSL certs with the templates.
If this is undesired it can be avoided by specifying builtin_certs=no .
Bundled SSL certs will be used unless you specify an override in:
Project Settings -> SSL -> Certificates .
2018-09-15 10:54:00 +02:00
Rémi Verschelde d3527834f3 Fix video toggle UX issue
It was still functional but showing duplicate entries and thus
"GLES2" for both GLES2 and GLES3 choices.

Fixes #22089.
2018-09-15 01:49:59 +02:00
willnationsdev 5436abefe4 Refactor editor icon retrieval 2018-09-14 09:27:56 -05:00
groud d7b638ed32 Replace the -show in filesystem- button by a RMB entry 2018-09-14 10:22:13 +02:00
groud 796418aa11 Merge the disable_split and show_files_in_tree settings 2018-09-14 10:22:07 +02:00
groud b2633a97b9 Add thumnails to the tree view 2018-09-14 10:14:33 +02:00
Rémi Verschelde 399f667911 Use plain text instead of icons for video driver toggle
Fixes #21660, supersedes and closes #21724.
2018-09-13 12:15:17 +02:00
Rémi Verschelde 1a16dabfb5
Merge pull request #21982 from luzpaz/misc-typos
Misc. typos
2018-09-13 10:59:00 +02:00
luz.paz 08bde5b2de Misc. typos
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
Hugo Locurcio ff9d3e569f
Fix project and editor data paths not being opened correctly on macOS
This closes #21904.
2018-09-11 20:32:08 +02:00
Rémi Verschelde 45b609f46a Replace last occurrences of PropertyEditor by EditorInspector
Updates the following plugins:
- ConnectionsDialog
- ScriptEditorDebugger
- ItemListEditorPlugin

Also drop now unnecessary compatibility methods.
2018-09-11 16:09:19 +02:00
Rémi Verschelde 4c37ea59be
Merge pull request #21971 from scayze/window_title_update
Update window title when switching scenes
2018-09-11 13:03:11 +02:00
Manuel Strey 909885642a update window title when switching scenes 2018-09-11 12:28:32 +02:00
Rémi Verschelde 0471386a97
Revert "Fix selection of spatial nodes after selecting a non-spatial one." 2018-09-11 11:30:48 +02:00
Rémi Verschelde fcabf95934
Merge pull request #21835 from DualMatrix/save_branch
Prevent overwriting open scenes when saving
2018-09-10 16:00:25 +02:00
DualMatrix c43ffc8917 Prevent overwriting open scenes when saving
Prevent overwriting open scenes when saving, this fixes #17628
2018-09-07 15:54:26 +02:00
JFonS b82f037818 Fix selection of spatial nodes after selecting a non-spatial one.
Fixes #13849
2018-09-07 10:49:40 +02:00
Rémi Verschelde e22f0515c9 Drop old ShaderGraph code, obsoleted by VisualShader 2018-08-24 11:49:08 +02:00
Rémi Verschelde 0e6551d8e2
Merge pull request #21274 from YeldhamDev/meshlib_editor_fixes
Fix MeshLibrary editor
2018-08-22 01:54:59 +02:00
Michael Alexsander Silva Dias d0f55ab6e4 Fix MeshLibrary editor 2018-08-21 19:06:52 -03:00
Rémi Verschelde a3fe19dd10
Merge pull request #21252 from vnen/remove-autoload-init
Disable scripting and physics early in EditorNode
2018-08-21 23:42:26 +02:00
George Marques ed3776c6a4
Disable scripting and physics early in EditorNode
This avoids issues with scripts being instanced before this is set, like
autoloads.
2018-08-20 21:55:01 -03:00
Juan Linietsky c7e4527a88 Massive rewrite to AnimationTree. Many APIs changed in order to:
-Reuse resources
-Expose properties in AnimationTree
2018-08-20 13:39:16 -03:00
Rémi Verschelde 2f20836e52
Merge pull request #19837 from willnationsdev/plugin-utilities
Add PluginConfigDialog.
2018-08-15 11:42:51 +02:00
Rémi Verschelde 1e49b2d720
Merge pull request #20997 from Gamblify/add_files_to_tree_view
Add a way to disable the split view in the FileSystem dock
2018-08-14 22:50:51 +02:00
Juan Linietsky e6a64b1888 Avoid scripts from being opened in same inspector, closes #20111 2018-08-14 15:44:23 -03:00
Rémi Verschelde 7a2ad1321a
Merge pull request #20621 from YeldhamDev/bottom_panel_min
Adjust bottom panel's minimal height for the expand icon
2018-08-14 15:57:19 +02:00
groud b3f02d0840 Add a way to disable the split view
Also add a parameter as the max height before split
2018-08-14 10:17:51 +02:00
Chaosus 94cf2133d5 Add warning color to output log 2018-08-13 21:52:38 +03:00
Hugo Locurcio c541430315
Fix a typo in a TTR() call 2018-08-08 16:30:23 +02:00
Juan Linietsky 51da08856a
Merge pull request #20737 from Calinou/use-standard-button-texts
Use a standard "OK" text for confirmation buttons in error dialogs
2018-08-08 09:46:22 -03:00
Juan Linietsky 254eb46de3 Several improvements to inspector.
-Added optional horizontal/vertical modes for vector editing (default false for vec2, true for vec3)
-Some clean ups with fonts and styles
2018-08-07 12:22:46 -03:00
Juan Linietsky edde52c8de Added proper import support for 3D and Array textures 2018-08-06 14:56:06 -03:00
Hugo Locurcio 1368bcfc53
Use a standard "OK" text for confirmation buttons in error dialogs
[ci skip]
2018-08-05 16:49:22 +02:00
AndreaCatania b7e66188df Implemented IK 2018-08-04 11:25:07 +02:00
Michael Alexsander Silva Dias 22ffaded01 Adjust bottom panel's minimal height for the expand icon 2018-07-30 19:12:31 -03:00
Juan Linietsky 317dee95de It is now possible to import images as a separate resource, closes #5738 and likely many others 2018-07-29 16:45:23 -03:00
Juan Linietsky 0fcc28b6f3
Merge pull request #15269 from ianb96/context_menu_improvements
Context Menu Improvements
2018-07-29 12:31:20 -03:00
Juan Linietsky 936b5a395a Do conversion of scene preview icon at the end, improves save performance a bit. Closes #14387 2018-07-27 08:59:43 -03:00
Will Nations ff604414a4 Add PluginConfigDialog, EditorPluginSettings GUI 2018-07-26 10:12:05 -05:00
Ian 1bb13e95a8 context menu improvements 2018-07-26 08:58:35 -04:00
Rémi Verschelde eab105310b
Merge pull request #19257 from volzhs/edit-visual-script
Open internal visual script editor while use external editor is on
2018-07-26 10:36:01 +02:00
Hein-Pieter van Braam 0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Hugo Locurcio b4f6b20273
Add menu buttons to open the project and editor data folders 2018-07-25 23:41:35 +02:00
volzhs 6bdec4ffb6 Open internal visual script editor while use external editor is on 2018-07-25 11:59:31 +09:00
Max Hilbrunner b92c432313
Merge pull request #19225 from Paulb23/open_all_files_in_script_editor
Open all files in script editor
2018-07-24 21:52:11 +02:00
Wilson E. Alvarez a22e746bc3 Removed unnecessary assignments 2018-07-24 09:51:03 +02:00
Paulb23 8ff747171f Allow opening and editing of any utf_8 file in script editor 2018-07-22 11:55:56 +01:00
Juan Linietsky 336db8bcd1 -Fix tooltips in inspector, now they show as rich text. 2018-07-20 18:16:19 -03:00
Michael Alexsander Silva Dias 12b55610ed Make Update Spinner popup use radio items 2018-07-20 14:32:53 -03:00
Juan Linietsky c69de2ba46 -Project/Editor settings now use new inspector
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
2018-07-19 19:02:04 -03:00
Juan Linietsky 43dc050947 Several improvements to editor inspector usability and style 2018-07-18 19:37:41 -03:00
Rémi Verschelde 13239cd4cc Export: Properly reload preset when opening dialog
Fixes #20119 where newly installed templates were not detected.

Also fix a bug with preset deletion where it would attempt to
edit an already removed preset. For this I made it so that
ItemList::deselect_all() also resets `current` to -1, as a manual
ItemList::deselect(idx) already does.
2018-07-18 13:49:34 +02:00
Rémi Verschelde afb554afdf
Merge pull request #20185 from volzhs/audio-preview
Add audio preview to Inspector dock
2018-07-18 10:38:30 +02:00
volzhs 4bb85b70e1 Fix copying ttf, otf by DND to editor
regression from d65ac7378c
2018-07-18 01:49:57 +09:00
volzhs dd2f39da53 Add audio stream preview to Inspector dock 2018-07-17 22:11:35 +09:00
Juan Linietsky af7d8fb844 Added small icon to expand the bottom panel (and shortcut too) 2018-07-15 22:38:14 -03:00
Juan Linietsky f6ce73f724 Visual Shaders are back. 2018-07-14 18:16:18 -03:00
Juan Linietsky 7dcaabaf19 Support for CPU based particles, which aids compatibility with OpenGL ES 2.0 2018-07-06 20:21:42 -03: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
Max Hilbrunner fb838bf1b4
Merge pull request #19192 from marcelofg55/undo_redo_msg
Add a message when there is nothing to Undo or Redo
2018-07-03 17:32:16 +02:00
Juan Linietsky 896e250f2b -Fix in animationplayback, sound would be cut on loop
-Fix on scene importer, keeping changes to animation tracks was not working
2018-07-01 17:45:19 -03:00
Rémi Verschelde 5d7f9f804a Revert "Fix saving unmodified scenes and resources"
This reverts commits 28ab60422d
and 7821b70a00.

Fixes #19576, and likely the fact that subresources are no
longer saved when saving scenes with no change.
2018-06-29 08:38:49 +02:00
Juan Linietsky c633b770cb -Add root motion support in AnimationTree.
-Add RootMotionView, to debug root motion in 3D (disabled in runtime)
2018-06-26 19:06:16 -03:00
Thomas Herzog 0f7c35f955 added BlendSpace1D editor plugin
This commit also fixes a crash in the BlendSpace2D as well as correct
the drawing of the x-zero indicator in the BlendSpace2D editor plugin.
2018-06-25 21:46:12 +02:00
Thomas Herzog 1ff7aa4c9b rename BlendSpace to BlendSpace2D 2018-06-25 21:36:10 +02:00
Juan Linietsky 4f5a7ebaec State machine animation node 2018-06-25 16:22:41 -03:00
Juan Linietsky b80946ee0d Fix crashes, ability to add blendpsace into blendtree, ability to delete with delete key 2018-06-21 18:08:11 -03:00
Juan Linietsky a0719533bd Animation Blend Spaces 2018-06-21 15:46:11 -03:00
Juan Linietsky 0a1c1c660f -Added AnimationGraphPlayer (still missing features)
-Added ability to edit resources from built-in inspector (wip, needs testing and feedback)
2018-06-18 22:12:08 -03:00
Guilherme Felipe 3511a7ac7e Fix path typo for editor def capitalize_properties 2018-06-15 11:51:09 -03:00
Rémi Verschelde 3f09cac267 Fix shortcuts using KEY_MASK_CTRL instead of KEY_MASK_CMD
KEY_MASK_CMD is automatically replaced by KEY_MASK_CTRL on non-OSX
and KEY_MASK_META (Command key) on OSX, so it should be used for all
Ctrl/Cmd + key shortcuts.

Also de-hacked the macOS shortcut replacements with proper conditional
definition. Not tested on macOS, cannot judge if they are good shortcuts.

Fixes #10761.
2018-06-11 07:53:28 +02:00
Juan Linietsky b659fd6d74 Entirely new (and much improved) animation editor. 2018-06-07 12:52:00 -03:00
Rémi Verschelde 59c2c21b15 Move NavigationMeshEditorPlugin to Recast module as should be
Modules can register their own editor plugins (like GridMap does),
so no need to put module-specific classes in the `editor/` folder.

Also cleans up the previous SCons env pollution from the Recast
module, integrating its code into libmodules as other modules.
2018-05-30 22:10:11 +02:00
Marcelo Fernandez e9db8964e3 Add a message when there is nothing to Undo or Redo 2018-05-27 12:53:52 -03: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
Max Hilbrunner 23b4b7d53a
Merge pull request #18234 from flashyincceo/font-preview
Adding font preview to file browsers
2018-05-26 18:31:48 +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
Juan Linietsky 005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
Leon Krause af7926cf98 Allow exporting runnable presets from command line 2018-05-10 20:17:51 +02:00
Peter Folkins 365d814361 Adding font preview to file browsers 2018-05-09 13:34:30 -05:00
AndreaCatania 9e57a07fb6 Implemented ragdoll
Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

a

Implemented implicit hierarchy.

Improved

Added some physics properties

Added bone offset to preserve COM, partially fixed scaling

work in progress

WIP

wip

Implemented Joint Gizmos

Implemented pin joint joint

Implemented all joints
2018-05-07 21:03:16 +02: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
Rémi Verschelde 18c28c159d
Merge pull request #17196 from RandomShaper/improve-gui-touch
Implement universal translation of touch to mouse (3.1)
2018-05-02 10:47:49 +02:00
Rémi Verschelde de97339a2d
Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-var
Fix Coverity reports of uninitialized scalar variable
2018-05-01 19:14:07 +02:00
Rémi Verschelde 007d1754e3 Revert "Added a more specific error message on export"
This reverts commit 00c689d625.

Reason: "Missing template" is just one possible explanation for
`err` being != OK here, it does not make sense to hardcode it in
the generic error message (and break translations doing so).
2018-05-01 13:07:11 +02:00
Pedro J. Estébanez de9d40a953 Implement universal translation of touch to mouse
Now generating mouse events from touch is optional (on by default) and it's performed by `InputDefault` instead of having each OS abstraction doing it. (*)

The translation algorithm waits for a touch index to be pressed and tracks it translating its events to mouse events until it is raised, while ignoring other pointers.

Furthermore, to avoid an stuck "touch mouse", since not all platforms may report touches raised when the window is unfocused, it checks if touches are still down by the time it's focused again and if so it resets the state of the emulated mouse.

*: In the case of Windows, since it already provides touch-to-mouse translation by itself, "echo" mouse events are filtered out to have it working like the rest.

On X11 a little hack has been needed to avoid a case of a spurious mouse motion event that is generated during touch interaction.

Plus: Improve/fix tracking of current mouse position.

** Summary of changes to settings: **

- `display/window/handheld/emulate_touchscreen` becomes `input/pointing_devices/emulate_touch_from_mouse`
- New setting: `input/pointing_devices/emulate_mouse_from_touch`
2018-04-30 19:03:38 +02:00
Max Hilbrunner c408eb7520
Merge pull request #18506 from AlexHolly/export-more-specific-error-message
Added a more specific error message on export
2018-04-30 18:14:35 +02:00
Hein-Pieter van Braam 3bd3f41465
Merge pull request #18455 from neikeq/export-pck-zip-debug
Make 'Export PCK/ZIP' work well with EditorExportPlugin
2018-04-29 18:29:32 +02:00
Alexander Holland 00c689d625 Added a more specific error message on export 2018-04-29 15:26:33 +02:00
Juan Linietsky 8d199a9b2c CSG Support for Godot!
-Missing Icons
-Missing freezing option (for baking light and faster load)
-Missing a way to export from Godot (GLTF2?)
-Probably buggy (may freeze editor, can be worked around easily, but let me know if this happens so it's easier to catch bugs)
Happy testing!
2018-04-27 21:55:10 -03:00
Ignacio Etcheverry 68b35de2b6 Make 'Export PCK/ZIP' work well with EditorExportPlugin
Add debug flag to the 'Export PCK/ZIP' option
Make 'Export PCK/ZIP' notify when the export process begins. This is necessary to receive the 'EditorExportPlugin::_export_begin' callback
2018-04-26 23:21:05 +02:00
Hugo Locurcio 1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
Rémi Verschelde bf7ca623a6 Fix Coverity reports of uninitialized scalar variable
Fixes most current reports on Coverity Scan of uninitialized scalar
variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html

These happen most of the time (in our code) when instanciating structs
without a constructor (or with an incomplete one), and later returning
the instance. This is sometimes intended though, as some parameters are
only used in some situations and should not be double-initialized for
performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-19 15:20:45 +02:00