Commit Graph

1440 Commits

Author SHA1 Message Date
kobewi 7c6b659bd7 Add PropertyInfo overload for GLOBAL_DEF 2022-12-11 21:36:48 +01:00
Markus Sauermann e18107a57c Fix Determining Window for Touchscreen
DisplayServer::screen_is_touchscreen will likely never utilize its
parameter p_screen.
This PR replaces this function by DisplayServer::is_touchscreen_available()
with the same functionality.
This solves the problem, that a SubViewport was used for determining
the screen, which resulted in error messages.
2022-12-07 09:54:29 +01:00
kobewi 5d2a9a3570 Make remote inspector groups not foldable 2022-11-30 15:31:24 +01:00
Rémi Verschelde 5669834f82
Merge pull request #66995 from HolonProduction/main_window_bug
Fix a bug with main window `EditorPlugin`.
2022-11-29 16:50:03 +01:00
Rémi Verschelde 9d64a2e97b
Merge pull request #66194 from YeldhamDev/feature_fixes
Fix some stuff with the editor features
2022-11-29 16:47:26 +01:00
HolonProduction 1da0a12705 Solve a bug with main window plugins.
When removing a main window plugin the bindings of the main window buttons was not changed to reflect the changed indices.
2022-11-29 16:16:23 +01:00
trollodel c90d0bd84f Use forward-declarations in big editor classes 2022-11-29 09:59:43 +01:00
Markus Sauermann 302ddbcfd9 Fix that the History Dock appears before other Docks in old projects
Newly introduced docks, that are not apparent in old projects should
be positioned after the ones in the project-config-file.
This way it seems to be less irritating.
2022-11-25 03:09:03 +01:00
Rémi Verschelde e836284667
Merge pull request #69072 from souplamp/history-dock-check-connected
Add history dock to default editor layout, and prevent signal connecting multiple times
2022-11-24 19:04:10 +01:00
souplamp 51cf968e56 History dock singleton, set default editor layout, ready notification
- add the history dock to the default editor layout, so when a user does Editor -> Editor Layout -> Default the history dock will no longer disappear
- change the enter tree notification to a ready notification to prevent the history dock from trying to connect 'on_history_changed' signal everytime the dock is moved in the editor layout
2022-11-24 11:45:42 -06:00
Zae 4fdfc5176c [Editor] Fix float dock shows untranslated title. 2022-11-24 18:52:15 +08:00
Rémi Verschelde a66fc4cf7e
Merge pull request #60686 from trollodel/move_editor_registration
Move editor class and plugin registrations to a dedicated file
2022-11-18 23:07:48 +01:00
trollodel 75177455d9 Move editor class and plugin registrations to a dedicated file 2022-11-18 08:02:08 +01:00
Rémi Verschelde 6d2a7cb46d
Merge pull request #68709 from MewPurPur/instance-begone-part3
Remove more instances of 'instance' being used as a verb
2022-11-16 14:41:42 +01:00
VolTer 3b4f5f8a04 Remove more instances of 'instance' being used as a verb 2022-11-16 14:01:53 +01:00
cespeute 4b00c2ec57 Add EditorInterface.get_selected_paths()
Exposes the selected paths in the editor filesystem dock.
Implements this proposal : https://github.com/godotengine/godot-proposals/issues/2424

Also renamed the old `get_selected_path` to `get_selected_directory` to
better match the already existing get_current_path function.
2022-11-14 22:46:27 +01:00
Fabio Alessandrelli d568b25e36 [Editor] Better expose EditorDebuggerPlugin.
Now splitted into two classes:
- EditorDebuggerPlugin (RefCounted).
- EditorDebuggerSession (abstract).

This allows the EditorPlugin to be in control of the debugger plugin
lifecycle, be notified when sessions are created, and customize each of
them independently.

We should slowly transition the various profilers and captures in
ScriptEditorDebugger to their own plugins, and decouple
ScriptEditorDebugger from it's UI part (making it the "real"
EditorDebuggerSession potentially dropping the wrappers).
2022-11-14 14:55:22 +01:00
Michael Alexsander 441af72c6e Fix some stuff with the editor features 2022-11-12 21:09:19 -03:00
trollodel ba9e619b51 Use forward-declarations in EditorPlugin where possible 2022-11-11 20:25:51 +01:00
kobewi d9f066d5fa Remove duplicate project settings definitions 2022-11-08 01:29:39 +01:00
Rémi Verschelde 518b4bcc0d
Merge pull request #68342 from KoBeWi/Godot_museum't
Allow to disable History Dock via feature profile
2022-11-07 13:41:29 +01:00
kobewi c89100e571 Allow to disable History Dock via feature profile 2022-11-07 13:06:59 +01:00
RedMser f1743263d3 Fix disambiguate_filenames absolute paths on Unix
Also clean up relative path handling to use get_basename()
2022-11-06 16:34:59 +01:00
Rémi Verschelde 17497b1eb9
Merge pull request #65012 from KoBeWi/Godot_museum
Add history dock
2022-11-02 18:52:42 +01:00
Alfred Reinold Baudisch 07e367cb0b Cast dragged file extension name to lowercase, closes #68104 2022-11-01 09:48:09 +01:00
Rémi Verschelde 778ffce1e3
Merge pull request #62416 from Calinou/movie-maker-request-attention-on-finish
Request attention on the editor window when done recording a movie
2022-10-31 23:03:21 +01:00
Rémi Verschelde 5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde f4f98c4ecb
Merge pull request #67055 from GuilhermeGSousa/custom-node-export
Added custom node export
2022-10-31 11:11:07 +01:00
Marc Gilleron 7543a5e014 Rename queue_delete => queue_free
# Conflicts:
#	editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
kobewi e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
Guilherme Sousa 5d06843fcf Added custom node export 2022-10-14 17:31:00 +02:00
kobewi 072f6feaba Make some Image methods static 2022-10-14 14:34:15 +02:00
Rémi Verschelde 736a2df437
Merge pull request #67244 from RandomShaper/split_render_further_2
Polish rendering driver refactor further (take 2)
2022-10-11 21:08:42 +02:00
Pedro J. Estébanez f82deaa5b3 Polish rendering driver refactor further (take 2) 2022-10-11 19:06:55 +02:00
kobewi a3661ad079 Remove editor dependencies from ColorPicker 2022-10-11 16:09:27 +02:00
Rémi Verschelde 3a2e749a10 Merge pull request #59382 from akien-mga/editor-acceptdialog-swap-cancel-ok
Add editor setting for AcceptDialog OK/Cancel buttons positioning
2022-10-11 12:34:04 +02:00
bruvzg 73430f292b
[macOS] Fix window button position and title bar size when editor scale do not match OS UI scale. 2022-10-10 10:32:41 +03:00
HolonProduction 301a8fd559 Fix a bug with moving dock left and right.
Fixes #67039

`get_index` counts internal children by default but `move_child` ignores them therefore `move_child` had no effect.

The call to `set_current_tab` is not needed anymore in Godot 4 since the current tab will change when calling `move_child`.
2022-10-07 19:15:20 +02:00
bruvzg 0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde 9bb05de89f Add editor setting for AcceptDialog OK/Cancel buttons positioning
The position (left/right) of the Cancel and OK buttons in AcceptDialog
are DisplayServer specific, as Windows uses OK/Cancel and macOS uses Cancel/OK.

Linux/X11 currently uses the macOS convention which is also the GTK+/GNOME one,
though it's not consistent with Qt/KDE applications which follow the Windows
convention.

Since that can't satisfy everyone, it's best if it's configurable also for the
editor (it's already configurable for the project).

Fixes #59379.
2022-10-05 17:51:04 +02:00
Rémi Verschelde b4157cd6ac Merge pull request #65857 from MinusKube/inherited-open-crash
Prevent unsaved inherited scenes from being detected as the 'placeholder' scene
2022-10-05 13:38:12 +02:00
Micky ae5771e1b1 Rename remaining "Spatial" in Plugins to "Node3D"
For EditorNode3DGizmo:
- `get_spatial_node` -> `get_node_3d`
- `set_spatial_node` -> `set_node_3d`

For EditorPlugin:
- `add_spatial_gizmo_plugin` -> `add_node_3d_gizmo_plugin`
- `remove_spatial_gizmo_plugin` -> `remove_node_3d_gizmo_plugin`

Also renames some internal methods for consistency (`forward_3d_draw_over_viewport` & `forward_3d_force_draw_over_viewport` ...). Basically, Spatial has been completely eradicated.
2022-10-04 16:27:29 +02:00
Rémi Verschelde 73f5683c34 Merge pull request #58049 from jmb462/fix-distraction-mode-docks-tab
Prevent docks to be reset to first tab when switching dock visibility
2022-09-28 00:16:08 +02:00
Hugo Locurcio a98e2eb36f
Fix project run/stop buttons disappearing in the editor 2022-09-26 14:53:26 +02:00
Hugo Locurcio 74b324c434
Rename editor run/pause/stop shortcuts and tooltips for consistency
The new naming better suits non-game applications and is more explicit.
2022-09-25 20:17:58 +02:00
bruvzg 0dab11afa4
[macOS extend-to-title] Add scene/project name to the editor title, fix incorrect window button position/order when system primary language is RTL. 2022-09-22 23:09:56 +03:00
Rémi Verschelde e82a237f99 Merge pull request #65934 from YuriSizov/editor-theme-big-thumb
Improve icon generation in the editor theme
2022-09-21 18:55:33 +02:00
Hugo Locurcio 375ea5558a
Fix error string referring to invalid metadata name in Movie Maker dialog 2022-09-20 14:53:19 +02:00
bruvzg 0ed4cc6287
[macOS] Add an option to align window buttons in "extend to title" mode. 2022-09-20 12:55:59 +03:00
Rémi Verschelde 7da532275b Merge pull request #65541 from clayjohn/renderer-setting
Split rendering driver project setting into renderer_name and rendering_driver
2022-09-20 09:43:59 +02:00
clayjohn 4a1c7de57c Split rendering driver project setting into renderer_name and rendering_driver. To differentiate between a driver (e.g. Vulkan or D3D12) and a renderer (e.g. clustered or mobile renderer). 2022-09-19 10:26:10 -07:00
Rémi Verschelde e5594c26b1
Merge pull request #44143 from KoBeWi/callable_multiplayer 2022-09-18 13:47:04 +02:00
Tomasz Chabora 882a4f8906 Port remaining connections to callable_mp 2022-09-18 13:08:54 +02:00
Rémi Verschelde c6e5c76536 Merge pull request #65561 from ryburnj/inconsistent-cap-scene-file-name
Fix inconsistent scene file name casing
2022-09-18 10:49:00 +02:00
ryburnj 9d6af9323a Fix inconsistent scene file name casing by moving existing Name_Casing code to separate function in editor_node, and adding a call from both editor_node and scene_tree_dock. 2022-09-18 11:17:22 +10:00
kobewi 6cec00b099 Remove unused _clear_undo_history method 2022-09-17 21:03:04 +02:00
Yuri Sizov 02572f2c62 Improve icon generation in the editor theme 2022-09-16 23:34:01 +03:00
MinusKube 5f8293db54 Prevent unsaved inherited scenes from being detected as the 'placeholder' scene 2022-09-16 02:09:54 +02:00
Rémi Verschelde 85cd6960c6
Merge pull request #65494 from V-Sekai/fix_inspect_command_context 2022-09-14 14:44:03 +02:00
Fredia Huya-Kouadio 9d5e48f873 Disable menus and functionality that are not relevant on the Android Editor port 2022-09-13 20:48:33 -07:00
Rémi Verschelde b52305351d
Merge pull request #64465 from TokageItLab/bind-after-gui-input
Bind `AfterGUIInput` to GDScript and update document
2022-09-10 20:01:48 +02:00
Rémi Verschelde 24ce46e2a1
Merge pull request #64938 from YuriSizov/editor-scaled-icons 2022-09-09 16:52:32 +02:00
Rémi Verschelde 7a317b1314
Merge pull request #65520 from V-Sekai/remote_objects_no_read_only 2022-09-09 09:08:42 +02:00
SaracenOne 3c2e7b38cd Remove read-only status from EditorDebuggerRemoteObject 2022-09-08 14:34:31 +01:00
Rémi Verschelde 05896cc579
Merge pull request #65504 from KoBeWi/close_before_saving 2022-09-08 13:17:34 +02:00
Silc Renew 3c7a5fd8ac bind AfterGUIInput 2022-09-08 20:02:48 +09:00
Rémi Verschelde 69233093d7 Merge pull request #65241 from bruvzg/no_keymap_ambiguity
Fix key mapping changes when moving from macOS to other platform.
2022-09-08 09:24:24 +02:00
Rémi Verschelde 7936b3cc4c Merge pull request #60108 from KoBeWi/arise_to_top
Rename raise() to move_to_front()
2022-09-08 09:23:31 +02:00
Rémi Verschelde df5a356e6c Merge pull request #65501 from m4gr3d/fix_invalid_project_manager_path_main
Fix issue causing the project manager to crash because of missing path argument
2022-09-08 09:19:25 +02:00
kobewi 14266d8e66 Ask before closing with unsaved resources 2022-09-08 01:02:08 +02:00
Fredia Huya-Kouadio cd544fd86b Fix issue causing the project manager to crash because of missing path argument
In the process, the initialization logic is updated to show an error message and gracefully close the engine when setup errors occur.
2022-09-07 14:21:34 -07:00
Yuri Sizov 817d4db21f Allow images to be imported "for editor use" and respect editor settings 2022-09-07 23:31:31 +03:00
bruvzg 6f4d233062
Fix key mapping changes when moving from macOS to other platform
Removes separate `Command` key (use `Meta` instead).
Adds an event flag to automatically remap `Command` <-> `Control` (cannot be set alongside `Control` or `Meta`).
2022-09-07 18:45:35 +02:00
smix8 d7f75fab60 Remove / Replace old Navigation Debug Visualization
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
Rémi Verschelde 2b6e043491 Merge pull request #58617 from KoBeWi/custom_something
Improve handling of custom types
2022-09-07 17:54:17 +02:00
SaracenOne 1e99c13de2 In inspector, show 'edit' button instead of 'inspect' when resource is part of an editable scene. 2022-09-07 10:14:06 +01:00
Rémi Verschelde 61644f1dbe Merge pull request #65447 from Faless/net/4.x_ssl_to_tls
[Net] Rename StreamPeerSSL to StreamPeerTLS.
2022-09-07 09:19:46 +02:00
Fabio Alessandrelli 528e791a5f [Net] Rename StreamPeerSSL to StreamPeerTLS.
SSL has been deprectated almost 10 years ago.
2022-09-07 07:38:50 +02:00
Yuri Sizov 1459507ed2 Rename EditorInterface.get_editor_main_control to get_editor_main_screen 2022-09-07 03:01:58 +03:00
kobewi b218727599 Rename raise() to move_to_front() 2022-09-06 22:13:06 +02:00
kobewi a3309215c2 Improve handling of custom types 2022-09-05 23:08:28 +02:00
FireForge 6e8dc5130d Various editor UI fixes (bottom panel corner radius and scene tab bar)
- Fix top corners of bottom panel not having rounded corners
- Fix scene tab bar background expanding vertically by corner radius
- Remove two unneccesary theme items from the editor theme:
	- EditorStyles/SceneTabFG
	- EditorStyles/SceneTabBG
- Remove an instance where the scene TabBar was having its styleboxes overriden to the default value, which has no effect.
2022-09-05 15:11:57 -05:00
kobewi 78ad5e4305 Remove middle click shortcut to open scene tab 2022-09-04 00:50:17 +02:00
Rémi Verschelde c82bbc38a5 Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param 2022-09-02 13:49:53 +02:00
Rémi Verschelde 2e0cffdb6f Merge pull request #63479 from DarkKilauea/nav-link 2022-09-01 23:44:22 +02:00
Rémi Verschelde 181019cea5 Merge pull request #65135 from reduz/export-customization-plugins 2022-09-01 23:43:39 +02:00
Rémi Verschelde 027415312e
Merge pull request #65132 from bruvzg/global_menu_shortcuts_context 2022-09-01 17:02:04 +02:00
Juan Linietsky ef17c4668a Add support for scene/resource customization in export plugins
EditorExportPlugin adds a set of callbacks to allow customizing scenes, resources or subresources in all files exported:
* Can take scene files, resource files and subresources in all of them.
* Uses a cache for the converted files if nothing changes, so this work only happens if a file is modified.
* Uses hashing to differentiate export configuration caches.
* Removed the previous conversion code to binary, as this one uses existing stuff.

This API is useful in several scenarios:
* Needed by the "server" export platform to get rid of textures, meshes, audio, etc.
* Needed by text to binary converters.
* Needed by eventual optimizations such as shader precompiling on export, mesh merging and optimization, etc.

This is a draft, feedback is very welcome.
2022-09-01 11:16:00 +02:00
Yuri Rubinsky 8191b3c110 Rename `uniform` to `parameter` across the engine 2022-09-01 11:42:57 +03:00
bruvzg b85a4c5d79
[macOS] Handle accelerator and click events of the global menu items separately. 2022-09-01 08:13:56 +03:00
clayjohn 385ee5c70b Implement Physical Light Units as an optional setting.
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.

In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
RedMser 96bdcfd447 Fix #65122: disambiguate_filenames freeze 2022-08-31 13:36:47 +02:00
Rémi Verschelde 36a5160ad7
Merge pull request #62157 from ChronicallySerious/front-port-vcs-plugin
VCS: Port Godot 3.5's VCS features to GDExtension
2022-08-31 07:38:42 +02:00
Rémi Verschelde 292b94b97c
Merge pull request #65089 from YuriSizov/editor-launch-bar-with-style
Improve style and add contextual highlight to the editor launch pad
2022-08-30 21:18:41 +02:00
Twarit Waikar a62b0ec904 VCS: Improve VCS UI/UX by QoL changes
The editor will now use the project path i.e. the place where the root of
the repo is supposed to be according to the user. This project path is
also sent into the plugin and so out-of-directory asset folders can also be
maintained this way.
2022-08-31 00:27:08 +05:30
Rémi Verschelde de5f13e935
Merge pull request #63552 from RedMser/file-dialog-disambiguate
EditorFileDialog: disambiguate recent/favorite items
2022-08-30 20:24:38 +02:00
Rémi Verschelde e27b61d291
Merge pull request #65042 from YuriSizov/editor-docks-tabbar-bg 2022-08-30 18:53:54 +02:00
RedMser a401c4e6ac EditorFileDialog: disambiguate recent/favorite items
Similar to script editor, if two folders have the same name, they will
now get a more descriptive name in the item list.
2022-08-30 17:18:47 +02:00
Yuri Sizov a462d6e402 Improve style and add contextual highlight to the editor launch pad 2022-08-30 18:10:45 +03:00
Rémi Verschelde 02d510bd07
Merge pull request #63003 from Geometror/msaa-2d 2022-08-30 14:54:20 +02:00