Commit Graph

4994 Commits

Author SHA1 Message Date
Hugo Locurcio f524dc5da6
Improve loading UX in the asset library
The asset library will now fade when loading pages instead
of displaying a progress bar, which is a more common design pattern
when browsing an online resource's pages.

A "Loading..." text will be displayed before the first page loads.
2019-08-24 03:08:52 +02:00
Hugo Locurcio bd05d0e71b
Change mouse cursor when hovering a resize area in the animation editor
This also scales the default width of the track name column
on hiDPI displays.
2019-08-23 23:00:38 +02:00
Rémi Verschelde 2a855a068a
Merge pull request #31589 from Chaosus/minimap_enabled
Make code minimap to be visible by default
2019-08-23 09:38:49 +02:00
Rémi Verschelde dd6388d3f6
Merge pull request #31588 from Calinou/editor-help-add-horizontal-margins
Add horizontal margins to the editor help based on width
2019-08-23 09:38:37 +02:00
Rémi Verschelde 0cff5d0b30
Merge pull request #30833 from sparkart/fix_inspector_clear_remote_node
Fix Clearing Inspector for Remote Node
2019-08-23 09:13:06 +02:00
Rémi Verschelde 73f1f9b44f
Merge pull request #31586 from SonerSound/issue_31533
Export path is the only path to be saved as a relative path
2019-08-23 08:34:03 +02:00
Rémi Verschelde 2477d414a1
Merge pull request #31111 from Xrayez/script-templates-project
Allow to define and load script templates per project
2019-08-23 08:24:00 +02:00
Rémi Verschelde 739cbf45c3
Merge pull request #31569 from SaracenOne/plugin_shutdown_fix
Fix an exception when trying to close down editor with plugins using autoload singletons
2019-08-23 08:19:29 +02:00
Rémi Verschelde 9262ad45d6
Merge pull request #31548 from Calinou/project-manager-improve-missing
Improve the display of missing projects in the Project Manager
2019-08-23 08:17:27 +02:00
Yuri Roubinski db7bbbdbc7 Make code minimap to be visible by default 2019-08-23 08:42:15 +03:00
Hugo Locurcio e564bffd90
Add horizontal margins to the editor help based on width
This decreases the number of characters per line, and therefore
helps make the editor help more readable.
2019-08-23 01:42:29 +02:00
SonerSound 326f856006 Export path is the only path to be saved as a relative path
Also reverts 90b2415343
2019-08-22 22:20:15 +01:00
Andrii Doroshenko (Xrayez) f013596760 Allow to define and load script templates per project
Previously it was only possible to create custom script templates per
editor instance which could lead to certain name collisions, but now one
can create such templates per project tailored for specific use cases.

The default path to search for custom script templates is defined in
project settings via `editor/script_templates_search_path` setting as
`res://script_templates` path, yet this can be configured per project.

Templates have at most two origins now:

1. Project-specific, defined in `ProjectSettings`, for instance:
    - res://script_templates/
2. Editor script templates, for instance:
    - %APPDATA%/Godot/script_templates/

As script templates can have the same name over different paths,
the override mechanism was also added, enabling project-specific
templates over the editor ones.
2019-08-22 20:51:30 +03:00
Saracen daf443bcbc Fix an exception when trying to close down editor with plugins enabled. 2019-08-22 16:30:55 +01:00
Hugo Locurcio 0271a5f1d8
Improve the display of missing projects in the Project Manager
- Use a "broken file" icon instead of a "folder" icon for missing
  projects
- Fade out the project icon for missing projects
- Use transparent modulate for grayed out projects as it results in
  better-looking text
- Disable the "Edit", "Run" and "Rename" buttons if at least
  one missing project is selected
- Make double-clicking or pressing Enter do nothing when a missing
  project is selected
- Change the "Open in FileSystem" tooltip accordingly for missing
  projects
- Don't connect the "Open in FileSystem" pressed signal to make the
  button ineffective for missing projects
- Name missing projects as "Missing Project" instead of
  "Unnamed Project"
2019-08-22 17:06:02 +02:00
Michael Alexsander Silva Dias c5b45c9f09 Cleanup and minor changes in FileSystem Dock 2019-08-22 10:24:51 -03:00
Rémi Verschelde 7978e9071b
Merge pull request #31302 from Paulb23/issue_4881_code_minimap
Add minimap to text_edit
2019-08-22 13:15:43 +02:00
Rémi Verschelde 2e5ba32b4b
Merge pull request #31545 from groud/add_smart_snapping_display
Displays smart snapping guides when snapped
2019-08-22 13:12:09 +02:00
Rémi Verschelde 4ab4d4a59b
Merge pull request #31489 from iwek7/removeRenameRootOption
Showing only working options in filesystem dock menu
2019-08-22 11:56:48 +02:00
Rémi Verschelde d2f5c43ad9
Merge pull request #31502 from thimenesup/patch-1
Expose SceneTreeDock::get_tree_editor() to GDScript
2019-08-22 11:55:49 +02:00
Yuri Roubinski 4dcee2035a Implemented inverse shader function to GLES2 2019-08-22 08:22:49 +03:00
Paulb23 0cea72273f Add minimap to text_edit 2019-08-21 23:48:46 +01:00
Gilles Roudière 692a78db19 Displays smart snapping guides when snapped 2019-08-21 22:15:51 +02:00
Rémi Verschelde 3bd49dabfa
Merge pull request #31535 from KoBeWi/TileMove
Edit TileMap only with TOOL_SELECT
2019-08-21 21:18:39 +02:00
Rémi Verschelde e132c36261
Merge pull request #31539 from Calinou/improve-editor-strings
Tweak a few strings displayed in the editor for consistency
2019-08-21 21:09:36 +02:00
Tomasz Chabora 9520d9706a Edit TileMap only with TOOL_SELECT 2019-08-21 20:56:15 +02:00
Hugo Locurcio 3ae0306a1f
Tweak a few strings displayed in the editor for consistency 2019-08-21 19:33:29 +02:00
Hugo Locurcio e1b9004b0f
Rename FileDialog's folder icon custom color to `folder_icon_modulate`
The custom color introduced in be8d569744
had the same name as the "folder" icon, which could cause conflicts
in the generated documentation.

The new name is also more self-explanatory.
2019-08-21 18:43:01 +02:00
Rémi Verschelde 99980d856b
Merge pull request #29871 from Faless/crypto/initial_pr
More Crypto, SSL server, crt/key as Resource, HashingContext
2019-08-21 18:03:03 +02:00
Fabio Alessandrelli fc411115f5 Fix Network Editor Settings setup. 2019-08-21 17:12:33 +02:00
Fabio Alessandrelli ce5a3f56a6 Rewrite StreamPeerSSL with SSLContext helper class
connect_to_stream now accepts optional parameter to specify which
certificates to trust.
Implement accept_stream (SSL server) with key/cert parameters to specify
the RSA key and X509 certificate resources.
2019-08-21 16:59:38 +02:00
Hugo Locurcio a350fd4a57
Draw 3D collision shape/raycast gizmos in grayscale when disabled
This makes them easier to distinguish from their enabled counterparts,
as is already done in the 2D editor.
2019-08-21 15:32:51 +02:00
iwek7 2b8d65761c Improvements and fixes of filesystem dock 2019-08-21 11:13:50 +02:00
Rémi Verschelde 51def4dab9
Merge pull request #31523 from nekomatata/show-warning-loading
EditorNode::show_warning displays a console warning during project loading
2019-08-21 10:05:24 +02:00
PouleyKetchoupp a735afac95 EditorNode::show_warning displays a console warning instead of failing during project load
Fixes #31522
2019-08-21 09:05:30 +02:00
Rémi Verschelde 7b37321ae3
Merge pull request #31499 from nekomatata/fix-new-project-metadata
Setting project metadata doesn't fail when project_metadata.cfg doesn't exist
2019-08-21 08:54:32 +02:00
PouleyKetchoupp b49226e085 Support for file not found in ConfigFile::Load and handle a few specific cases
EditorSettings::set_project_metadata: creates project_metadata.cfg if it doesn't exist
EditorPlugin::get_config: removed (not used)

Fixes #31444
2019-08-21 08:32:55 +02:00
thimenesup 79a4930501
Expose SceneTreeDock::get_tree_editor()
This can be useful for plugins that rely on some signals emitted by it, Like my Networked Scene Editor plugin https://github.com/thimenesup/GodotNetworkedSceneEditor
2019-08-20 18:06:21 +02:00
Rémi Verschelde bb5bf8ef49
Merge pull request #31498 from KoBeWi/setter_getter_radar
Include setters and getters in help search
2019-08-20 17:11:17 +02:00
Tomasz Chabora e068fbbb20 Include setters and getters in help search 2019-08-20 15:37:22 +02:00
Rémi Verschelde a4377ca465
Merge pull request #31356 from Calinou/improve-project-manager-ui
Improve the project manager UI
2019-08-20 12:55:15 +02:00
Rémi Verschelde e84d83ce78
Merge pull request #31492 from Calinou/file-dialog-color-folders
Use a different color for folder icons in file dialogs
2019-08-20 12:51:31 +02:00
Rémi Verschelde e6c4ef3455
Merge pull request #31486 from KoBeWi/typos_must_die
Fix various typos and style errors in text
2019-08-20 12:50:12 +02:00
Rémi Verschelde 5d8951764a
Merge pull request #31466 from Calinou/improve-2d-path-editors
Improve the appearance of 2D path editors
2019-08-20 12:45:47 +02:00
Rémi Verschelde 4e760096a9
Merge pull request #31443 from Calinou/editor-use-minimum-window-size
Define a minimum window size in the editor and project manager
2019-08-20 12:42:58 +02:00
Hugo Locurcio be8d569744
Use a different color for folder icons in file dialogs
This makes them easier to distinguish from files for quick
visual grepping.

This can also be used in projects by setting the FileDialog "folder"
color. The default value (`Color(1, 1, 1)`) has no visual impact,
for compatibility with existing projects.
2019-08-20 00:10:27 +02:00
Tomasz Chabora 7e075029c8 Fix various typos and style errors in text 2019-08-19 20:43:42 +02:00
Fabio Alessandrelli c19871af6d Move CryptoCore to it's own folder.
Crypto classes will be placed in core/crypto.
2019-08-19 16:31:05 +02:00
Hugo Locurcio 558e93f069
Improve the appearance of 2D path editors
- Add new handle icons for path/polygon editors
- Add smooth path point icons and curve tangent icons
- Use a gray color for tangent lines in the Path2D and Path editors
- Use antialiasing for Path2D lines
2019-08-18 22:27:01 +02:00
Michael Alexsander Silva Dias c19a66d72f Simplify structure of preview text in visual shader editor 2019-08-18 13:27:08 -03:00
Rémi Verschelde ef37f00525
Merge pull request #31453 from Chaosus/vs_code_preview
Added code preview to visual shader
2019-08-18 17:32:49 +02:00
Rémi Verschelde 9cd58b6916
Merge pull request #31449 from Chaosus/vs_global_expression
Added global expressions to visual shaders
2019-08-18 17:31:39 +02:00
Yuri Roubinski 808e44df6d Added code preview to visual shader 2019-08-18 17:28:19 +03:00
Rémi Verschelde 2920c8fbaa
Merge pull request #31447 from Calinou/spatial-editor-use-shortcut-tooltips
Use shortcut tooltips in the spatial editor
2019-08-18 16:07:05 +02:00
Rémi Verschelde fb5e8b509b
Merge pull request #31448 from Calinou/improve-snap-object-to-floor
Improve "Snap Object to Floor" functionality
2019-08-18 11:07:12 +02:00
Rémi Verschelde d154e55f45
Merge pull request #31442 from KoBeWi/grounded_grabber
Update Slider grabber position when using mouse wheel
2019-08-18 11:03:28 +02:00
Rémi Verschelde 7f7e0f9dfc
Merge pull request #31439 from YeldhamDev/node_dock_minor_improvements
Minor improvements to the Node dock
2019-08-18 11:02:50 +02:00
Rémi Verschelde 5c853a45e6
Merge pull request #31423 from Calinou/improve-node-signal-group-tooltip
Improve the scene tree signals/groups tooltip
2019-08-18 10:55:16 +02:00
Yuri Roubinski e3b43771aa Added global expressions to visual shaders 2019-08-18 08:49:56 +03:00
Michael Alexsander Silva Dias 96a256557c Minor improvements to the Node dock 2019-08-17 23:05:58 -03:00
Hugo Locurcio 78878fbc97
Improve "Snap Object to Floor" functionality
- Display an error message if no selected nodes could be snapped
- Only register an undo/redo action if at least one node
  could be snapped
- Increase the maximum snapping height to 20
- Increase the negative snapping limit to 0.2
2019-08-18 01:50:25 +02:00
Hugo Locurcio 35ad0475c3
Use shortcut tooltips in the spatial editor
This makes the tooltips display the correct shortcuts in case
they are changed, as is done automatically by `set_shortcut()`.

Button shortcuts are now used to apply shortcut actions,
which makes for cleaner code.
2019-08-17 23:39:28 +02:00
Rémi Verschelde cc9f2a2d8b
Merge pull request #31401 from aaronfranke/no-init-scripts
Allow plugins to not have an init script
2019-08-17 22:09:17 +02:00
Hugo Locurcio c0eee235c4
Define a minimum window size in the editor and project manager
This prevents most UI elements from overlapping or being cut off
as a result of the window being too small.

This closes #20669.
2019-08-17 21:56:59 +02:00
Tomasz Chabora 8a0e6e23a7 Update Slider grabber position when using mouse wheel 2019-08-17 21:12:05 +02:00
Hugo Locurcio c62302a432
Improve the scene tree signals/groups tooltip
The tooltip now displays the number of connections and groups
that are assigned to the hovered node.
2019-08-17 14:20:16 +02:00
Hugo Locurcio cef7ca4abb
Improve the project manager UI
This incorporates many suggestions from #31342.

This also revises the search behavior to be simpler and more efficient:

- Searching will now search in both the project name and path. A project
  will be displayed if either of these match the search term.
- If the search term contains a "/", the whole path will be used to match
  the search term. Otherwise, only the last path component will be used.
2019-08-17 13:48:25 +02:00
Rémi Verschelde d3153c28f0 Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'
The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is
(conditionally defines the error message).

There are a few ERR_EXPLAINC calls for C-strings where String is not included
which can stay as is to avoid adding additional _MSGC macros just for that.

Part of #31244.
2019-08-17 13:31:22 +02:00
Braden Bodily 71d71d55b5 Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'
Condensed some if and ERR statements. Added dots to end of error messages

Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?),
core/os/memory.cpp,
drivers/png/png_driver_common.cpp,
drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-17 12:33:15 +02:00
Rémi Verschelde 40640a01dc
Merge pull request #31424 from Calinou/improve-animation-editor-timeline
Improve timeline drawing in the animation editor
2019-08-17 12:05:42 +02:00
Rémi Verschelde fe8f73c939
Merge pull request #31422 from sparkart/attachscript_by_scripteditor
Adds Attaching Script via Script Editor
2019-08-17 11:55:48 +02:00
Rémi Verschelde be42f1bf6c
Merge pull request #31399 from Calinou/box-selection-add-borders
Add an outline to box selection rectangles for better visibility
2019-08-17 11:26:05 +02:00
Rémi Verschelde c7a7163dff
Merge pull request #31398 from KoBeWi/1000_ways_to_make_scene
Allow to create scene from FileSystem dock
2019-08-17 11:25:33 +02:00
Hugo Locurcio a341c65f65
Improve timeline drawing in the animation editor
A small arrow-like icon is now drawn at the top of the timeline.
The timeline is now also wider as to be more visible.
2019-08-17 00:20:21 +02:00
Emmanuel Barroga c9445a0faa Adds Attaching Script via Script Editor
Allows you to attach a script by dragging the name in the script list of the script editor to the node in the scene tree.
2019-08-16 12:22:18 -07:00
Aaron Franke ceb61fb784
Allow plugins to not have an init script 2019-08-15 17:52:07 -04:00
Hugo Locurcio 108f9646f5
Add an outline to box selection rectangles for better visibility
This also refactors selection box color definitions
to avoid repetition.
2019-08-15 22:27:32 +02:00
Tomasz Chabora cedee8281b Allow to create scene from FileSystem dock 2019-08-15 19:47:21 +02:00
Hugo Locurcio bfce99bc98
Set the low processor mode sleep editor settings to require a restart
These settings are only read when the editor starts.
2019-08-15 19:14:14 +02:00
Rémi Verschelde b24228e03b
Merge pull request #31391 from Calinou/improve-particles-emission-editor-errors
Improve error reporting in the Particles emission point creation dialog
2019-08-15 18:17:54 +02:00
Rémi Verschelde 983e348fe9
Merge pull request #31387 from Daw11/assets-image-autoselect
Automatically select the first image of the assets page
2019-08-15 18:16:55 +02:00
Rémi Verschelde 97dcdd1a6b
Merge pull request #31381 from sparkart/fix_projectmanager_buttons
Fixes ProjectManager Buttons Not Updating
2019-08-15 18:13:42 +02:00
Hugo Locurcio 63d45136dc
Improve error reporting in the Particles emission point creation dialog
- Display an error message if the selected node doesn't
  extend from Spatial
- Display the selected node name in error messages to provide
  additional context when relevant
- Clarify error messages
- Use the standard editor warning dialog
2019-08-15 16:01:39 +02:00
Davide Busterna 7434966f10 Automatically select the first image of the assets page 2019-08-15 13:43:00 +02:00
Emmanuel Barroga 1f5dc0ea3b Fixes ProjectManager Buttons Not Updating
Fixes buttons in ProjectManager not updating to disabled after deleting projects.
2019-08-14 18:30:42 -07:00
Rémi Verschelde d998daeaa7
Merge pull request #31375 from Calinou/add-auto-editor-font-hinting
Add an "Auto" editor font hinting setting to match OS font rendering
2019-08-15 02:54:29 +02:00
Michael Alexsander Silva Dias 22e9544582 Fix matches result in the code search not appearing when the quantity is 0 2019-08-14 20:43:26 -03:00
Hugo Locurcio c940d29973
Add an "Auto" editor font hinting setting to match OS font rendering
The "Auto" setting picks the font hinting setting that best matches
the operating system's font rendering settings.
This font hinting setting is now the default.
2019-08-14 15:57:07 +02:00
Rémi Verschelde 188a10df8b
Merge pull request #31263 from Chaosus/vs_plugin
Plugin support for visual shaders
2019-08-14 15:52:21 +02:00
Yuri Roubinski 33e9fce1bb Plugin support for visual shaders 2019-08-14 15:52:27 +03:00
Rémi Verschelde 6c607c3564
Merge pull request #31266 from IAmActuallyCthulhu/pr/remove-redundant-author-comments
Remove redundant author doc comments
2019-08-14 13:45:54 +02:00
Tomasz Chabora bd9a0a3236 Fix Project Manager not remembering sorting option 2019-08-14 13:09:04 +02:00
Rémi Verschelde 1387c683d4
Merge pull request #31329 from KoBeWi/vscode_ftw
Tweak the behavior of search/replace bar
2019-08-14 11:42:18 +02:00
Rémi Verschelde 8995d95da0
Merge pull request #31347 from neikeq/monodevelop-addin
C#: Add Ide Connection library and server for the editor
2019-08-14 11:39:41 +02:00
Rémi Verschelde 6fedb2bf28
Merge pull request #31362 from Calinou/icons-use-lanczos-filtering
Use Lanczos filtering for variable-sized images such as project icons
2019-08-14 11:36:54 +02:00
Rémi Verschelde 5ff2688064
Merge pull request #31357 from YeldhamDev/theme_editor_fixup_fixup
Regression fixup to the theme editor
2019-08-14 00:57:13 +02:00
Hugo Locurcio 8f2bcfd909
Use Lanczos filtering for variable-sized images such as project icons
This results in better-looking icons with less artifacts
induced by downscaling.
2019-08-13 22:08:23 +02:00
Rémi Verschelde fcec358840
Merge pull request #31355 from nekomatata/fix-select-prev-freeze
Fixed freeze on search previous
2019-08-13 20:47:45 +02:00
Michael Alexsander Silva Dias b7c2bcff76 Regression fixup to the theme editor 2019-08-13 15:43:07 -03:00
PouleyKetchoupp 6a842fbb6d Fixed freeze on search_prev (missing condition for searching from a previous result, now the same as search_next)
Fixes #31328
2019-08-13 19:42:42 +02:00