Commit graph

417 commits

Author SHA1 Message Date
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
ianb96
9ac3c474b8 Drag to rearrange Tabs and TabContainer 2018-04-08 20:23:37 -04:00
Juan Linietsky
6eb0c74e9d
Merge pull request #17443 from Noshyaar/tilesetcrash
Fix converting to tileset crashes Godot if existing file is not tileset
2018-04-08 09:31:54 -03:00
Pieter-Jan Briers
4954982b95 Explicitly print an error when --export fails.
Previously this would not explicitly say the export failed.
Sure you might see another error somewhere,
but that's not very reliable/obvious.
2018-04-04 16:51:35 +02:00
robfram
7821b70a00 Fix bug added in PR#17589. Resources couldn't be saved to files
This PR fixes the code to avoid saving default environment every time
the project is run whitin the editor.

Should fix #17727. Sorry for the troubles!
2018-03-24 19:16:47 +01:00
Poommetee Ketson
ed3b080ca6 Fix converting to tileset crashes Godot if existing file is not tileset
also make TileSetEditorPlgn tile list updates the preview modulate
2018-03-23 21:27:30 +07:00
Rémi Verschelde
fd79de01c2
Merge pull request #17706 from Calinou/overhaul-hidpi-settings
Overhaul the display scaling editor settings
2018-03-23 14:12:20 +01:00
Hugo Locurcio
61bf0d10d5
Overhaul the display scaling editor settings
This adds more scaling options, in addition to a custom scaling option
which allows any scale between 0.75 and 3.0 to be used.
2018-03-23 14:04:39 +01:00
Rémi Verschelde
f16652d1a2
Merge pull request #17496 from robfram/fix-f3-change-editor-and-find
Fix pressing `F3` do both changing to script editor AND find next text
2018-03-23 11:28:48 +01: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
Ivan Vodopiviz
f5147befb6 Prevented external editor from running multiple times
Fixes #16923. I'm not a fan of the special case for scripts in editor_node.cpp, but in any case,
I made it so it wouldn't make the external editor to re-open just because we switched scenes.
2018-03-21 22:23:15 +01:00
robfram
28ab60422d Fix saving unmodified scenes and resources
When `_save_all_scenes` or `save_resource_in_path` was called, they
always saved all the scenes and the resource no matter if they were
modified or not. For example, when `saving before run` option was
checked, it always overwrote the current scene and the default
environment simply by opening and runing the project.

This PR adds checks for unsaved scenes (using the same `unsave` check
others method used) and modified resources (comparing last modified
time and last import time).

Fix #6025.
2018-03-18 11:58:40 +01:00
Mr-Slurpy
9da18f3974 Added tool menu functions in EditorPlugin 2018-03-17 14:41:50 -04:00
robfram
8939f44f6a Fix pressing F3 do both changing to script editor AND find next text
As `KEY_F3` was used both for changing to script editor window and, in
the script editor, for finding the next result in the last search, and
the key event is **not** consumed, the resulting behaviour was similar
to press `F3` twice, first to change to script editor and second to
find the next result of a previous search.

This PR sets the `key_pressed` status of `InputEvent` to `false` if
this event is responsible of an editor change, simulating the
consumption of the event.

Fix #17334
2018-03-16 20:17:42 +01:00
Rémi Verschelde
535205196f
Merge pull request #17013 from Noshyaar/theme
Update icons when theme changed
2018-03-13 13:48:37 +01:00
Rémi Verschelde
401a39f57e
Merge pull request #17116 from poke1024/fix16734
Fix round preview getting square on "run scene" (issue 16734)
2018-03-13 13:33:51 +01:00
Rémi Verschelde
ed1fb87429
Merge pull request #17435 from poke1024/output-error-icon
Show error icon at "Output" in case of errors
2018-03-13 11:22:28 +01:00
Poommetee Ketson
e12e6cacdb EditorNode: fix clicking ok keeps trying to save 2018-03-11 21:33:21 +07:00
Bernhard Liebl
5120690013 Show error icon at "Output" in case of errors 2018-03-11 14:20:32 +01:00
poke1024
899f7b125e Fix round preview getting square on "run scene" (issue 16734) 2018-02-28 20:23:40 +01:00
Poommetee Ketson
2de1dfa42f Update icons when theme changed 2018-02-25 23:04:16 +07:00
Juan Linietsky
7cd867c3fe 2D Skeletons WORK IN PROGRESS 2018-02-21 17:24:00 -03:00
luz.paz
612ab4bbc6 Fix typos with codespell
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Juan Linietsky
9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Nathan Warden
4bfb504c2f Added an auto quit and auto build flag to the command line options. 2018-02-19 16:22:55 -05:00
Rémi Verschelde
d71d78b7e7
Merge pull request #15862 from poke1024/esc-close-dock
Make KEY_ESCAPE close all output/debugger docks on bottom
2018-02-14 16:12:38 +01:00
Michael Alexsander Silva Dias
08559a68d2 Small changes to the "Recent Scenes" menu. 2018-02-02 17:18:55 -02:00
Will Nations
80595ba92b Added EditorPlugin 'resource_saved' signal 2018-01-31 09:06:09 -06:00
Juan Linietsky
1322ca6fb2 Ability to import .escn files, which is just a .tscn but with forced import.
This works together with the new Blender to Godot exporter.
2018-01-30 11:04:22 -03:00
Bernhard Liebl
2ae2735a7a Make KEY_ESCAPE close all output/debugger docks on bottom 2018-01-19 09:04:55 +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
Juan Linietsky
702e28f265 Properly save the new save safe setting, avoid crash. 2018-01-12 17:18:40 -03:00
Juan Linietsky
e56b3439a5 Attempt renaming multiple times on safe file save, and make the behavior optional. Fixes #14339. 2018-01-12 17:03:52 -03:00
Will Nations
732a877b21 Add EditorPlugin.build() build callbacks 2018-01-08 13:02:47 -06:00
Blazej Floch
9d3eb3d2b0 Fixes #15416 - "The deleted nodes are hanging in the inspector." 2018-01-08 03:12:41 -05:00
Rémi Verschelde
25e942d64f
Merge pull request #15438 from endragor/export-after-import
Perform export after import is fully complete
2018-01-07 14:27:03 +01:00
Juan Linietsky
50b975548d Removed PBM bitmap loader, added abiliy to importi mages as bitmap. Fixes #14828 2018-01-06 16:38:36 -03:00
Juan Linietsky
061db1ca95 Avoid crashing when dependencies on inherited/instanced scenes cant be satisfied, fixes #15298 2018-01-05 19:02:54 -03: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
Rémi Verschelde
d65ac7378c Fix crash in OS::execute on FreeBSD
As spotted by @robfram, closes #15288.
Also reviewed other uses of `if (String.find(.*))` for potential similar mistakes, found a wrong (and useless) one in ScriptEditorDialog.
2018-01-04 01:20:20 +01:00
Rémi Verschelde
5cbbf87e60
Merge pull request #15226 from volzhs/copy-resource
Copy resource with specific extension
2018-01-03 11:56:08 +01:00