Commit Graph

5542 Commits

Author SHA1 Message Date
Rémi Verschelde
745f8e112f
Revert "Add UID support to GDScript files"
This reverts commit c7f68a27ec.

We still think GDScript files need UIDs to allow safe refactoring,
but we're still debating what form those should take exactly.

So far there seems to be agreement that it shouldn't be done via an
annotation as implemented here, so we're reverting this one for now,
to revisit the feature in a future PR.
2024-01-29 21:00:26 +01:00
Hugo Locurcio
085629a7c9
Extend minimum/maximum zoom level of TextureRegion editor
This also applies a similar change to the SpriteFrames editor.
2024-01-29 14:58:40 +01:00
Rémi Verschelde
fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde
75d2cf3075
Merge pull request #87616 from ryevdokimov/cancel-transformation-2d
Add cancel transformation shortcut to 2D to match 3D
2024-01-29 13:17:33 +01:00
A Thousand Ships
15369fdb1d
Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Hugo Locurcio
04a930d9a6
Disable multi-window buttons instead of hiding them when support is unavailable
This is more explicit as for why this functionality isn't available
depending on editor settings and current platform.

This also exposes a `EditorInterface.is_multi_window_enabled()` method
so that editor plugins can easily query whether the editor is able and
expected to create multiple windows.
2024-01-27 19:38:39 +01:00
Yuri Sizov
815038962f Improve error reporting in the asset library and in related types
This also makes errors related to asset image loading
verbose-only, because, frankly, users can't do much about
those errors. Spamming them with error messages
about some assets on the frontend being broken
is pointless.
2024-01-26 20:33:22 +01:00
Yuri Sizov
9c919ea285 Generate script resource preview without parsing 2024-01-26 19:04:10 +01:00
Hugo Locurcio
341ca31be8
Change scene drag-and-drop modifier behavior in the 2D and 3D editors
Behavior is now consistent across 2D and 3D editors.

- By default, drag-and-dropping adds the scene as a child of the selected
  node. Hold Alt when releasing the mouse to add the scene as a child
  of the root node, or Shift to add the scene as a sibling of the selected
  node.
- To choose a different node type in the 2D editor when drag-and-dropping
  a texture resource, hold Alt + Shift (instead of just Alt).
- If multiple nodes are selected, only the first one is taken into account.
  This was previously the behavior in 2D, but not in 3D (an error dialog
  appeared instead). This makes the UI more forgiving.
2024-01-26 18:05:58 +01:00
Robert Yevdokimov
d9057c8b56 Add cancel transformation shortcut to 2D 2024-01-26 08:30:13 -05:00
Rémi Verschelde
c26a338430
Merge pull request #87356 from jsjtxietian/connection-error
Check if the ref shader is valid in visual shader's `_update_option_menu`
2024-01-26 11:44:13 +01:00
jsjtxietian
ff089f8cea Check is the ref shader valid in visual shader's update_option_menu 2024-01-25 11:54:23 +08:00
Giwayume
bb83c4adec Add custom shader attributes to Canvas Item Shaders 2024-01-23 14:36:39 -05:00
Adam Scott
12c84836b7
Make the text editor consistent with the script editor 2024-01-23 11:27:00 -05:00
Yuri Sizov
b5f033476c Merge pull request #87470 from AThousandShips/tile_thread_fix
[Editor] Fix threading problems with `TileMap` preview
2024-01-22 20:39:32 +01:00
Yuri Sizov
8f51117445 Merge pull request #87343 from ryevdokimov/fix-2d-top-level-2
Update the viewport if CanvasItem top level is changed
2024-01-22 20:39:11 +01:00
Yuri Sizov
feb1157276 Merge pull request #83510 from Geometror/vs-connection-ops
Add connection related functionality to VisualShader (deleting, dropping/inserting a node)
2024-01-22 20:38:30 +01:00
Robert Yevdokimov
3bed6b1cb0 Update the viewport if CanvasItem top level is changed 2024-01-22 13:10:54 -05:00
A Thousand Ships
dbcd82ba67
[Editor] Fix threading problems with TileMap preview 2024-01-22 13:44:36 +01:00
Hendrik Brucker
f59419bfe0 Add connection-related VisualShader operations
- Insert a node in a connection
- Drop an unconnected node on a connection to insert it
- Delete a connection
2024-01-19 11:38:59 +01:00
Robert Yevdokimov
ecc8493e17 Remove unused prev_rot variable 2024-01-18 11:24:22 -05:00
Rémi Verschelde
33f3511241
Merge pull request #87293 from YuriSizov/editor-theme-a-rehashed-follow-up
Improve editor theme generation after the refactor
2024-01-18 16:34:50 +01:00
Rémi Verschelde
d3003c48b3
Merge pull request #67132 from KoBeWi/This_commit_message_is_auto-generated._Do_not_modify_it-
Add UID support to GDScript files
2024-01-18 16:33:14 +01:00
kobewi
c7f68a27ec Add UID support to GDScript files 2024-01-17 22:30:56 +01:00
Yuri Sizov
c027aecc2e Merge pull request #86676 from rune-scape/sparse-script-reload
GDScript: Hot-reload changed scripts only
2024-01-17 18:52:54 +01:00
Yuri Sizov
45eedba1fa Improve editor theme generation after the refactor 2024-01-17 15:16:53 +01:00
Yuri Sizov
635b8a1474 Split theme generation logic into several subroutines
This change introduces a new theme configuration struct to be
passed to the aforementioned routines to better control reuse
of styles and definitions in the generator.

Everything not passed and not explicitly shared is scoped so it
is not automatically accessible throughout the routine. This
should ensure that the decision to share styles is a conscious one.

In the future we will try to reduce the number of unique definitions
and share most of it. This PR is a stepping stone on this path.

This also puts the effort into separating redefinitions of
default theme items vs custom types introduced only by the editor.
In a few cases where editor-specific definitions need to reference
default definitions we simply fetch them from the theme. It's not
ideal and hides the dependency a bit, but hopefully these cases
will be abstracted properly in due time.
2024-01-16 11:57:45 +01:00
Yuri Sizov
95b27fe8c7 Reorganize code related to editor theming
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.

Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.

All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
039379d272
Merge pull request #84193 from kitbdev/dock-manager-extract
Extract `EditorDockManager` from `EditorNode`
2024-01-16 10:35:11 +01:00
kit
2323f040e9 Extract editor dock manager 2024-01-15 15:15:42 -05:00
Rémi Verschelde
fe76b61743
Merge pull request #87160 from kleonc/tilemap-fix-debug-drawing-truncations-to-ints
Fix some `TileMap` debug drawing truncating to ints
2024-01-15 13:31:04 +01:00
Rémi Verschelde
fa3477f2be
Merge pull request #86878 from YeldhamDev/tabcontainer_pot_generation
Parse the names of children of `TabContainer`s on POT generation
2024-01-15 13:25:49 +01:00
kleonc
baa5504700 Fix some TileMap debug drawing truncating to ints 2024-01-14 02:02:46 +01:00
Rémi Verschelde
a3765274fb
Merge pull request #87048 from Mickeon/scene-string-names-are-a-mess
Use SceneStringNames in Skeleton3DEditorPlugin
2024-01-11 17:42:14 +01:00
Rémi Verschelde
880c12004b
Merge pull request #86881 from AThousandShips/gizmo_fix
[Editor] Add missing virtual bind to `EditorNode3DGizmo(Plugin)`
2024-01-11 17:39:48 +01:00
Rémi Verschelde
48936690af
Merge pull request #86736 from Illauriel/rename-add-lib
Add icon, tooltip, rename button in AnimationLibraryEditor for clarity.
2024-01-11 17:38:59 +01:00
Rémi Verschelde
9e967ebdf9
Merge pull request #86583 from reduz/lightmapper-dda-fix
Tiny fix for lightmapper DDA
2024-01-11 17:37:45 +01:00
Rémi Verschelde
087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
Illauriel
184b74c93f Add icon, tooltip, rename button in AnimationLibraryEditor for clarity. 2024-01-11 05:50:29 +01:00
Micky
3354273c9f Use SceneStringNames in Skeleton3DEditorPlugin 2024-01-10 18:17:58 +01:00
aXu-AP
5bdb5f5c37 Improve UV editor zoom behavior
Scrolling focuses towards mouse like in canvas editor.
Center view on opening.
Adjust scroll area to include polygons larger than texture.
Change zoom slider to EditorZoomWidget.
2024-01-10 13:27:20 +02:00
Juan Linietsky
caef2be758 Tiny fix for lightmapper DDA
- Ensures only one axis advances at a time
- This fixes extremely corner cases where the DDA may skip over geometry
2024-01-10 10:39:56 +01:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde
ee42c9e7ef
Merge pull request #82498 from aXu-AP/docs-double-navigation
Fix opening docs writing extra navigation history
2024-01-09 15:30:38 +01:00
SaracenOne
cb8a743e18
Fix behavior of 'Editable Children' toggle.
Prevents losing nodes owned by the edited scene when
toggling editable_children off on an instanced scene,
and makes the toggle compatible with undo-redo.
2024-01-09 13:34:38 +01:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Rémi Verschelde
35da70f953
Merge pull request #86933 from alessandrofama/drop-texture-scene-history
Fix 2D viewport texture drop issue with global history registration
2024-01-08 12:01:55 +01:00
Rémi Verschelde
4aa8e87e50
Merge pull request #86805 from ryevdokimov/clear-nodes-on-ui-cancel-2d
Allow `ui_cancel` to unselect all nodes in all edit modes in 2D, matching 3D behavior
2024-01-08 11:56:43 +01:00
Rémi Verschelde
f46465ba14
Merge pull request #86804 from ryevdokimov/allow-all-modes-to-select
Allow all editor modes to select nodes in the viewport
2024-01-08 11:56:19 +01:00
Rémi Verschelde
dd487ebb0b
Merge pull request #86568 from jsjtxietian/fix-infinite-loop-tile
Fix potential infinite loop when calculating tile editor zoom level
2024-01-08 11:55:30 +01:00
Rémi Verschelde
53d47a389c
Merge pull request #86542 from KoBeWi/merge_split_action
Improve Path2D editing
2024-01-08 11:54:42 +01:00
Alessandro Famà
4ea5c1ff2a Fix issue with dropping texture in 2D viewport causing incorrect global history registration
This fix addresses an issue where dropping a texture onto the 2D viewport in a scene without a root node incorrectly registers the action in the global history. Subsequently undoing and redoing this action in another scene results in the newly created node replacing the root of the current scene.

Fixes #86826.
2024-01-07 21:54:44 +01:00
A Thousand Ships
c794ce195b
[Editor] Add missing virtual bind to EditorNode3DGizmo(Plugin)
Method `_begin_handle_action` was not bound
2024-01-06 17:27:50 +01:00
Michael Alexsander
7b8c0b3a34
Parse the names of children of TabContainers on POT generation 2024-01-06 10:52:44 -03:00
jsjtxietian
42c672afd6 Fix infinite loop when calculating zoom level if tile_size * max_zoom < default 2024-01-06 16:11:26 +08:00
Zi Ye
97f9dbda81 Changed various editor transform operations to be committed in local instead of global space. Fixed a couple of bugs when syncing transforms to debug instance. 2024-01-05 17:07:20 -06:00
kobewi
f41b2c2ec4 Improve Path2D editing 2024-01-05 22:34:31 +01:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Robert Yevdokimov
ff03a32323 Allow all editor modes to select nodes in the viewport 2024-01-05 10:07:34 -05:00
Rémi Verschelde
dc5b57ea44
Merge pull request #81325 from AttackButton/path_2d_editor_plugin-clear_points
Add a button to clear curve points in the Path2D editor
2024-01-05 12:02:41 +01:00
Rémi Verschelde
d1b7c60afc
Merge pull request #77712 from nklbdev/Fix_lossless_formats_in_PortableCompressedTexture2D
Fix lossless formats in PortableCompressedTexture2D
2024-01-05 12:02:14 +01:00
Rémi Verschelde
85e999dc5e
Merge pull request #64908 from marcinn/lightmap-gi-texel-scale
Add `texel_scale` property to LightmapGI
2024-01-05 12:01:49 +01:00
Robert Yevdokimov
06f586e890 Allow ui_cancel to unselect all nodes in 2D, matching 3D behavior 2024-01-04 18:07:31 -05:00
nklbdev
47d991678d Fix lossless formats in PortableCompressedTexture2D
Update scene/resources/portable_compressed_texture.cpp

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-05 00:11:01 +05:00
Aaron Franke
9753a35c76
Move 3D scene import classes to their own folder 2024-01-04 11:02:49 -06:00
Rémi Verschelde
8a716e3275
Merge pull request #84353 from aXu-AP/sprite2d-plugin-zoom
Add zoom controls to Sprite2DPlugin converter preview
2024-01-04 16:40:05 +01:00
Rémi Verschelde
0cdb530c18
Merge pull request #83895 from clayjohn/origin-lines
Use screen-aligned quads for origin lines to avoid issues on NVidia
2024-01-04 16:39:42 +01:00
Rémi Verschelde
5eb22a317d
Merge pull request #83577 from DennisManaa/fix-translation-for-item-list
Add automatic translation of items to ItemList
2024-01-04 16:39:36 +01:00
Rémi Verschelde
52ab49ef1a
Merge pull request #83503 from YeldhamDev/grab_all_the_animations!
Allow to load multiple animation/libraries at once in the animation manager
2024-01-04 16:39:30 +01:00
Rémi Verschelde
0010096356
Merge pull request #83109 from Calinou/script-editor-add-more-toggle-comment-shortcuts
Allow Ctrl + KP / and Ctrl + # to toggle comment in the script editor
2024-01-04 16:39:10 +01:00
Rémi Verschelde
0d18a945ca
Merge pull request #76654 from TokageItLab/improve-filter-util-anim-tree
Add useful functions to `FilterEdit` in `AnimationBlendTreeEditor`
2024-01-04 16:38:32 +01:00
Rémi Verschelde
94f72a72e2
Merge pull request #75005 from J-N-Witch/add-position-gizmo-toggle
Add option to toggle visibility of Position gizmos in 2D editor, organize existing options
2024-01-04 16:38:24 +01:00
Marcin Nowak
eea2ad4019 Add texel_scale property to LightmapGI 2024-01-04 16:24:19 +01:00
Rémi Verschelde
3224e47af8
Merge pull request #84486 from jcostello/jcostello/fix-material-drop
Fix material drag and drop
2024-01-04 14:25:52 +01:00
Rémi Verschelde
6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Rémi Verschelde
11d1844e66
Merge pull request #85869 from paulloz/dotnet-warning-out-of-date-properties
.NET: Add a warning in the inspector when properties might be out of sync
2024-01-03 15:43:41 +01:00
Rémi Verschelde
54b83bd705
Merge pull request #84788 from Cerno-b/fix-description-text-for-grouping
Clarify description of "group selected"
2024-01-03 15:42:50 +01:00
rune-scape
cde478bda6 Hot-reload only changed scripts 2024-01-02 17:56:52 -08:00
kobewi
779d731940 Handle built-in shaders when closing scene 2024-01-02 16:00:11 +01:00
rune-scape
a938359cd3 Fix possible crash in script_text_editor.cpp 2023-12-29 18:05:58 -08:00
Paul Joannon
0818d015db
Inspector ⚠️ when C# props might be out of date 2023-12-22 23:27:13 +01:00
Yuri Sizov
980d55198c Merge pull request #86387 from jsjtxietian/fix-tile-set
Fix `UndoRedo history mismatch` when creating a new tile atlas
2023-12-22 17:20:08 +01:00
jsjtxietian
1217d7d678 Fix UndoRedo history mismatch when creating a new tile atlas 2023-12-21 17:25:21 +08:00
Yuri Sizov
bc6be82f5a Merge pull request #81260 from KoBeWi/min_maxing_particle_editing
Improve editing of min/max particle properties
2023-12-20 15:07:25 +01:00
kobewi
ce9fec9b4d Improve editing of min/max particle properties 2023-12-20 06:31:08 +01:00
Yuri Sizov
e18659c69d Merge pull request #82872 from jsjtxietian/require-editor-restart-when-csg-gizmo-color-changed
Prompt require editor restart to user when gizmo color changed
2023-12-19 20:32:20 +01:00
Yuri Sizov
ead01d0ca4 Merge pull request #85527 from fdstevex/master
Fix for Cmd-B shortcut conflict on macOS
2023-12-19 13:02:14 +01:00
Yuri Sizov
1c0be67952 Merge pull request #85452 from BleedingXiko/tilemap-typo
Fix typo in TileMap editor tooltip
2023-12-19 13:01:54 +01:00
Yuri Sizov
2552821f06 Merge pull request #86044 from KoBeWi/can't_add_if_can't_add
Disable Add button when theme item name is empty
2023-12-18 18:18:09 +01:00
Yuri Sizov
5c848174a3 Merge pull request #84898 from rsubtil/fix_dap_breakpoints_closed_scripts
Fix DAP breakpoints being cleared on closed scripts
2023-12-18 18:17:46 +01:00
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov
a6c0c90058 Merge pull request #86066 from Wiltof/tilemapPaint
Reset TileMap editor `drag_type` when the toolbar mode is not selected
2023-12-14 17:38:57 +01:00
Yuri Sizov
203c8c31d3 Merge pull request #85071 from Rubonnek/remove-unnecessary-assignments
Remove unnecessary assignments
2023-12-14 17:38:34 +01:00
Yuri Sizov
8f33b4e83a Merge pull request #84882 from Invertex/select-instance-asset
Add "Show In FileSystem" to the Scene hierarchy right-click
2023-12-14 17:38:30 +01:00
Yuri Sizov
daddb2b469 Merge pull request #84754 from aXu-AP/sprite2dplugin-rect
Add region rect and frames support to Sprite2DPlugin converter
2023-12-14 17:38:19 +01:00
wilto938
5a3de5bc30 Reset TileMap editor drag_type by using the _stop_dragging() function when the toolbar mode is not selected 2023-12-14 11:58:36 +01:00
Gilles Roudière
18fe0bd025 Move tile transforms handling cache to TileData 2023-12-13 17:44:59 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Invertex
59787683a9 Added "Show In FileSystem" right-click option to Scene hierarchy nodes.
-Implemented shared function for focusing FileSystem tab and highlighting the node path.
-Created right-click option that shows up in the Scene-Hierarchy on Nodes that have a file-system source path.
-Created custom icon for this right-click option
-Implemented the shared function and icon for other places that already had this features (Open Node tab, Inspector Resource)

Co-authored-by: MewPurPur <mew.pur.pur@gmail.com>
2023-12-13 07:43:39 -08:00
Rémi Verschelde
8f2b5cc109
Merge pull request #82899 from aaronfranke/import-settings-dialogs
Rename ImportSettings dialogs to have "Dialog" in the name
2023-12-12 00:15:59 +01:00