Commit Graph

13837 Commits

Author SHA1 Message Date
Yuri Sizov 8ecc0c4f47 Fix accessing editor theme items throughout the UI
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
Yuri Sizov 6e11fcb92c Warn about accessing non-existing editor theme items 2023-09-15 14:51:01 +02:00
MewPurPur f29b6e73c2 Add a bus_renamed AudioServer signal 2023-09-15 13:02:03 +03:00
Chia-Hsiang Cheng 3d7facd21c Remove animation tracks with correct indices 2023-09-15 14:22:09 +08:00
jsjtxietian 0113e6961d Hide animation tool correctly when switching scenes 2023-09-15 10:48:26 +08:00
Hugo Locurcio 1024ba0c0d
Show visual-oriented 3D node gizmos only when selected
Affected nodes:

- DirectionalLight3D, OmniLight3D, SpotLight3D
- ReflectionProbe
- LightmapGI
- VoxelGI
- GPUParticles3D (but not collision/attractor nodes)
- AudioStreamPlayer3D

This reduces visual clutter in the editor with 3D scenes.
2023-09-15 01:59:49 +02:00
Rémi Verschelde 5a74ce9a56
Merge pull request #81557 from YuriSizov/editor-toolbars-divided
Improve the looks of 2D/3D viewport contextual toolbars
2023-09-14 23:40:33 +02:00
Yuri Sizov 76062213d1 Merge pull request #80278 from KoBeWi/basically_ViewPanner_but_3D_and_without_panning
Add helper for 3D gizmos and unify box
2023-09-14 15:21:23 +02:00
Yuri Sizov 9948f03344 Merge pull request #79920 from KoBeWi/most_sane_path
Automatically add path to built-in scripts
2023-09-14 15:21:19 +02:00
Yuri Sizov aa075e251a Merge pull request #79161 from MewPurPur/variant-icons
Optimize Variant icons and a few others
2023-09-14 15:21:13 +02:00
Hugo Locurcio e732a9d41b
Add XML files to default TextFile extensions in the editor
This allows opening `*.xml` files by double-clicking them in the
FileSystem dock.
2023-09-13 20:44:15 +02:00
Yuri Sizov f542dffb39 Improve the looks of 2D/3D viewport contextual toolbars 2023-09-13 13:04:55 +02:00
kobewi 015953a3d9 Add helper for 3D gizmos and unify box 2023-09-12 18:08:02 +02:00
MewPurPur ea51392824 Optimize Variant icons 2023-09-12 14:15:55 +03:00
Haoyu Qiu b8b0339549 Improve undo action names
* Avoid concating strings manually for better i18n and easy l10n
   * Use `vformat` when possible
   * Use separate strings if the changing part is only a few hardcoded strings
* Don't put a period at the end of the name
2023-09-12 18:53:50 +08:00
Rémi Verschelde 183850ee24
Merge pull request #81563 from jsjtxietian/ignore-method-track-when-draw-line
Ignore method track when drawing line between keys
2023-09-12 12:02:26 +02:00
Rémi Verschelde 3e68ed0ca1
Merge pull request #81255 from JohnGabrielUK/primary-line-separate-xy
Allow configuring primary line X/Ys separately
2023-09-12 12:01:15 +02:00
Rémi Verschelde e83fc9c03a
Merge pull request #80503 from OXTyler/80379
Fixes Scene corruption when child scene is renamed in another directory
2023-09-12 12:00:49 +02:00
Rémi Verschelde 475860839c
Merge pull request #80144 from KoBeWi/freedom_tiles
Add per-tile flipping and transposing
2023-09-12 12:00:20 +02:00
Danil Alexeev 26ce861910
Editor: Remove unused Class Name field from Create Script dialog 2023-09-12 12:49:56 +03:00
John Gabriel 984eb96c43 Allow configuring primary line X/Ys separately 2023-09-12 10:24:07 +01:00
Rémi Verschelde 5c43e4c1ef
Fix various typos with codespell
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
Rémi Verschelde 7471ac2c4d
Merge pull request #81543 from DarioSamo/lightmap-size-crash-fix
Propagate error correctly when max texture size for lightmaps is too small.
2023-09-12 08:50:45 +02:00
Rémi Verschelde 006a88c855
Merge pull request #80975 from Calinou/editor-property-auto-refresh-add-property-hint
Add a property hint range to Auto Refresh Interval editor setting
2023-09-12 08:49:08 +02:00
jsjtxietian 042e0f7019 Ignore method track when drawing line between keys 2023-09-12 14:43:23 +08:00
Hugo Locurcio 9359e0b91d
Add a property hint range to Auto Refresh Interval editor setting
This prevents using zero or negative values, which are invalid and
will cause various issues in the editor (such as the inspector never
updating until the editor is closed and reopened).
2023-09-11 19:46:21 +02:00
Jean-Michel Bernard 67dce301aa Add code region folding to CodeEdit 2023-09-11 18:36:40 +02:00
Danil Alexeev 4b5daf06ef
Editor: Improve signal callback generation 2023-09-11 18:45:39 +03:00
Rémi Verschelde 3669188607
Merge pull request #81415 from Rindbee/fix-copy-or-paste-root-nodes
Fix bugs of copying scene root node or pasting node as scene root
2023-09-11 15:38:31 +02:00
Rémi Verschelde 786dab42fd
Merge pull request #70329 from Daylily-Zeleen/daylily-zeleen/register_internal_class
Allow GDExtension to register unexposed classes.
2023-09-11 15:35:31 +02:00
Dario 7dfb854556 Propagate error correctly when max texture size for lightmaps is too small.
Add error handling for BAKE_ERROR_LIGHTMAP_TOO_SMALL, which was previously ignored. Fixes #81453.
2023-09-11 09:14:39 -03:00
kobewi a9f3154da3 Add per-tile flipping and transposing 2023-09-09 00:56:38 +02:00
Rémi Verschelde 6c1241dcf6
Merge pull request #81380 from AThousandShips/folder_color_add
Update folder colors when moving or renaming
2023-09-08 23:15:17 +02:00
Yuri Sizov 639aba4ee1 Improve handling of archives when installing assets 2023-09-08 20:45:49 +02:00
Rémi Verschelde 8c1817f755
i18n: Sync translations with Weblate
(cherry picked from commit f2c8eea60e)
2023-09-08 12:12:18 +02:00
Rémi Verschelde b39303abae
Merge pull request #81430 from aaronfranke/export-platform-os-name
Expose `EditorExportPlatform::get_os_name()`
2023-09-08 11:50:46 +02:00
Rémi Verschelde 72ceaa8d9c
Merge pull request #81226 from AThousandShips/file_diag_fix
Fix `EditorFileDialog` clears the file name on changing directory
2023-09-08 11:50:42 +02:00
Rémi Verschelde 119f379a3d
Merge pull request #81075 from SekoiaTree/prevent-leading-dot
Prevent creating any type of file with a leading dot
2023-09-08 09:10:59 +02:00
sekoia bbeb2f98f5 Prevent creating any type of file with a leading dot
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: gotnospirit <gotnospirit@gmail.com>
2023-09-07 22:13:02 +02:00
Aaron Franke c1c0ee3faf
Expose EditorExportPlatform::get_os_name() 2023-09-07 12:28:09 -05:00
A Thousand Ships 0f026193b2 Update folder colors when moving or renaming 2023-09-07 17:46:27 +02:00
Hendrik Brucker 5afe78bd9c Clean up/refactor GraphNode and make it more flexible
Split GraphNode into GraphElement and GraphNode, add custom
titlebar, and adjust theming.
2023-09-07 17:29:06 +02:00
Rémi Verschelde 08c578c54c
Merge pull request #81416 from akien-mga/uwp-ce-nest-qu-un-au-revoir
UWP: Remove platform port, needs to be redone from scratch for 4.x
2023-09-07 16:33:40 +02:00
Rémi Verschelde 074931a3aa
Merge pull request #81410 from bitsawer/fix_shader_include_reload
Fix shader text editor include file reloading
2023-09-07 16:32:54 +02:00
风青山 95248a7d72 Fix bugs of copying scene root node or pasting node as scene root
Fix crash when pasting a node as a new scene root.
Fix owner was not set correctly when copying scene root node from unsaved scene.

The owner of the root node is `nullptr`, which was ignored before.
2023-09-07 21:57:37 +08:00
Danil Alexeev f8a0c487a8
Editor: Rearrange "Main Menu > Help" items 2023-09-07 16:17:28 +03:00
Rémi Verschelde 8de6405288
UWP: Remove platform port, needs to be redone from scratch for 4.x
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.

So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
2023-09-07 15:01:59 +02:00
Rémi Verschelde d6d8cb1a17
Merge pull request #81408 from jsjtxietian/fix-property-array-tooltip-shows-wrong-ID-on-later-pages
Fix property array tooltip shows wrong ID on later pages
2023-09-07 14:04:58 +02:00
Rémi Verschelde 5c7b0ed299
Merge pull request #81407 from AThousandShips/print_go_away
Remove leftover debug print in `FileSystemDock`
2023-09-07 14:04:34 +02:00
Rémi Verschelde 7663c69922
Merge pull request #81388 from YuriSizov/core-gdvirtual-but-less-confused-about-itself
Extract `ScriptInstance` into its own file to simplify includes
2023-09-07 13:53:45 +02:00
Rémi Verschelde 8dc15e8429
Merge pull request #81130 from YuriSizov/theme-context-for-global-themes
Implement a system to contextualize global themes
2023-09-07 13:51:20 +02:00
Rémi Verschelde 88269cfb86
Merge pull request #80821 from Alex2782/bugfix_go_up_#80750
Fix go to parent folder in `EditorFileDialog`
2023-09-07 13:50:55 +02:00
bitsawer d50595c0e9 Fix shader text editor include file reloading 2023-09-07 14:35:26 +03:00
jsjtxietian d4ac65bc48 Fix property array tooltip shows wrong ID on later pages
Also do some cleanup, use`element_position` instead of
`begin_array_index + i`
2023-09-07 19:04:28 +08:00
A Thousand Ships 1589efb350 Remove leftover debug print in `FileSystemDock` 2023-09-07 11:19:18 +02:00
Yuri Sizov d8ff69d53c Extract ScriptInstance to simplify includes
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.

This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Yuri Sizov fc01e2e7f6 Add a theme preview switcher to the 2D viewport
This commit adds a new View submenu that allows switching
between the project theme (default), the editor theme, and
the default theme. The last selected option is stored per
project and is restored when reloading the project.
2023-09-06 19:40:43 +02:00
Yuri Sizov 512182f147 Add theme contexts to various parts of the editor
This change defines additional theme contexts for editor
branches to prevent theme leaking between the default
theme, the project theme, and the editor theme.

- Both editor window and EditorNode define an editor-specific
context with the editor theme and the default theme.
- The 2D viewport defines a project-specific context with
the project theme and the default theme.
- Theme editor preview tabs define the default-only context
with the default theme.

Additionally, the default theme context now only includes
the project theme for running projects (both export and debug).
This prevents the project theme from leaking into the editor.

This commit also does a little clean up on the theming aspects
of the EditorNode.
2023-09-06 19:40:43 +02:00
Yuri Sizov 21c5f86d5d Check the native base of scripts when resolving icons 2023-09-06 15:20:07 +02:00
Yuri Sizov 3a585a6bcf Merge pull request #81346 from timothyqiu/interning
Avoid text substitution in EditorHelp messages
2023-09-06 14:49:37 +02:00
Yuri Sizov 008dc63fe6 Merge pull request #81344 from AThousandShips/folder_color_fix
Fix saving editor folder colors
2023-09-06 14:49:34 +02:00
Yuri Sizov d2cc6897d4 Merge pull request #81299 from jsjtxietian/Reload-built_in-script-after-create-to-allow-drag-nodes-into-it
Fix an error when dragging nodes into built-in scripts because script does not inherit Node
2023-09-06 14:49:24 +02:00
Yuri Sizov 102f42a48d Merge pull request #81121 from jsjtxietian/fix-crash-in-make_mesh_previews
Fix a crash when enable a tool plugin uses `make_mesh_previews`
2023-09-06 14:49:09 +02:00
Yuri Sizov 3c63dce3cd Merge pull request #80573 from KoBeWi/2k_lines_of_changes_created_at_2AM
Add EditorStringNames singleton
2023-09-06 14:49:02 +02:00
jsjtxietian 7e3a762369 Fix a crash when enable a plugin uses `make_mesh_previews`
The bug happens when plugin tree is propagating mouse events
(so it is blocked), but EditorProgress's dtor will make main editor
focused and call update_plugins immediately
 which will update the blocked tree.
2023-09-06 11:11:07 +08:00
jsjtxietian d32348c686 Reload built-in script after create to allow dropping nodes into it 2023-09-06 10:03:27 +08:00
Alexander Hartmann 40046bcf60 Fix go to parent folder in EditorFileDialog 2023-09-06 01:01:04 +02:00
Rémi Verschelde 0a7f75ec7b
Merge pull request #80740 from m4gr3d/godot_android_plugin_refactor_main
Godot Android plugin re-architecture
2023-09-06 00:09:07 +02:00
Haoyu Qiu e350034251 Avoid text substitution in EditorHelp messages 2023-09-05 23:15:34 +08:00
A Thousand Ships 1083ce4466 Fix saving editor folder colors
Also clears setting if none are assigned
2023-09-05 16:57:15 +02:00
bruvzg ab33613a13
Update and properly list versions of the built-in fonts. 2023-09-05 08:17:24 +03:00
Rémi Verschelde 75de1ca768
Merge pull request #81280 from ogapo/deterministic_pcks
Fix for non-deterministic behavior in PCKPacker
2023-09-04 09:09:23 +02:00
Rémi Verschelde a0d21d41a8
Merge pull request #80149 from aaronfranke/fix-res-reimport-empty-scene
Fix error message when reimporting resources with an empty scene open
2023-09-04 09:07:48 +02:00
Rémi Verschelde dd4fae6162
Merge pull request #74809 from Chaosus/completion_color_xyzw
Add coloring for completion of vector components
2023-09-04 09:06:57 +02:00
Daylily-Zeleen 41ffe5461f Allow GDExtension to register unexposed class. 2023-09-04 10:18:20 +08:00
Fredia Huya-Kouadio 8cc7739197 Godot Android plugin re-architecture 2023-09-03 17:04:10 -07:00
David Nikdel 067807c1cb Remove nondeterminism in pck_packer
PCK files (like other build products) should be deterministic based on their inputs. Removed calls to Math::rand() that are being used to generate padding.

Looks like these were introduced as part of adding encryption support, but the padding being random does not have any cryptographic significance. This can be trivially inferred since file blocks that happen to be aligned don't get padding anyway.

If there's a desire to indroduce something that functions as a nonce it should probably be added explicitly and only if encryption is enabled.
remove Math::rand() calls in editor_export_platform.cpp

follow up to make consistent with pck_packer
2023-09-03 18:14:30 -04:00
Alexander Hartmann 053d718154 Fixes the 'CLAMP' problem in the 'EditorSpinSlider' ...
... when arrow keys are pressed up or down.
2023-09-03 20:47:22 +02:00
kobewi 6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
Aaron Franke ff911c3ad3
Fix error message when reimporting resources with an empty scene open 2023-09-03 11:40:48 -05:00
Rémi Verschelde fa3428ff25
Merge pull request #81221 from dalexeev/editor-inspector-and-signal-dock-improvements
Editor: Inspector and Signal docks improvements
2023-09-03 00:21:04 +02:00
Rémi Verschelde 07035466e8
Merge pull request #81189 from jsjtxietian/Fix-press-space-when-enter-editor-layout-name-will-confirm-save
Use `ui_text_submit` instead of `ui_accept` to confirm and close text prompts
2023-09-02 14:30:12 +02:00
Rémi Verschelde bb61a932c2
Merge pull request #81072 from KoBeWi/the_scene_file_is_in_another_castle
Refactor disabling scene tab context menu options
2023-09-02 14:29:24 +02:00
Rémi Verschelde 60422759fa
Merge pull request #80849 from KoBeWi/edit_NOTHING
Unedit nodes early when closing scene tab
2023-09-02 14:29:00 +02:00
Danil Alexeev c33ca26e17
Editor: Inspector and Signal docks improvements 2023-09-02 08:50:28 +03:00
A Thousand Ships 17d69ed7bb Fix `EditorFileDialog` clears the file name on changing directory
Fixes issues with assigning a name for files being saved
2023-09-01 22:53:41 +02:00
kobewi a949f1b4b5 Refactor disabling scene tab context menu options 2023-09-01 21:34:54 +02:00
Rémi Verschelde 5588980e47
Merge pull request #80184 from MewPurPur/gray=abstract
Use the gray color for all abstract classes
2023-09-01 16:00:58 +02:00
jsjtxietian ba41910967 Use ui_text_submit to confirm and close text prompts
Fix press space when enter editor layout name will
confirm and save layout, same in theme editor
2023-09-01 12:23:30 +08:00
MewPurPur 398ca4e71a Use the gray color for all abstract classes 2023-08-31 12:59:18 +03:00
Rémi Verschelde 56a5fb26a0
Merge pull request #81156 from jsjtxietian/fix-crash-when-built-in-scripts-not-saved-and-have-error
Fix a crash when built-in script is not saved and have syntax error
2023-08-31 08:56:04 +02:00
Hugo Locurcio 3ba031602b
Display time of last save in the unsaved changes confirmation editor dialog
When multitasking, this makes it clearer whether closing a window with unsaved
changes is potentially dangerous or not.
2023-08-31 00:47:11 +02:00
Yuri Rubinsky 35802374ac Add coloring for completion of vector components 2023-08-30 21:13:25 +03:00
jsjtxietian cfd7dfd985 Fix a crash when built-in script is not saved and have syntax error
When built-in script is not saved, it has empty path, and origin
code assumes error with empty path is a depended_error but that's
not always the case.
Also add protection before access list index 0.
2023-08-30 17:45:58 +08:00
the-sink 95b0f28255 Add custom color support to project folders 2023-08-29 12:13:53 -07:00
Rémi Verschelde 8ebb34707a
Merge pull request #61818 from KoBeWi/secret_prefix_stash
Made hidden ProjectSettings groups more explicit
2023-08-29 15:05:38 +02:00
Rémi Verschelde 571aa7f531
Merge pull request #81092 from dalexeev/editor-improve-signal-connection-dock
Editor: Signal Connection Dock improvements
2023-08-29 12:47:55 +02:00
Rémi Verschelde c1e85c6593
Merge pull request #80617 from jmb462/fix_80524
Add buttons to reorder inspector array items without dragging
2023-08-29 12:43:34 +02:00
Rémi Verschelde 3417f34a37
Merge pull request #80529 from KoBeWi/unfortunate_fix_is_unfortunate🤦‍♂️
Fix TileSet not disappearing on deselecting TileMap
2023-08-29 12:43:10 +02:00
Rémi Verschelde 1ffc24e19e
Merge pull request #80124 from Calinou/3d-editor-frame-time-initialize-fps
Initialize View Frame Time estimates to match 120 FPS
2023-08-29 12:42:16 +02:00
Rémi Verschelde 91c5273ec5
Merge pull request #75656 from YuriSizov/core-iconic-builtins
Add a script method to get its class icon
2023-08-29 12:41:03 +02:00
Igor 4b8163586b
Streamline the project import workflow 2023-08-29 09:50:03 +02:00
Danil Alexeev 8efa3cebd9
Editor: Signal Connection Dock improvements 2023-08-29 09:59:58 +03:00
Rémi Verschelde ba1089689a
Merge pull request #80954 from bruvzg/sp_per_font
[Text Server] Store extra spacing of individual font variations.
2023-08-28 20:37:58 +02:00
Rémi Verschelde 9229ea121c
Merge pull request #77986 from KoBeWi/outside_the_texture,_only_death_awaits
Cleanup tiles outside the texture
2023-08-28 20:37:04 +02:00
Hugo Locurcio 15b31f0891
Initialize View Frame Time estimates to match 120 FPS
This prevents the estimation from being extremely high (close to 100,000 FPS)
until enough time has passed to display an accurate estimation.
2023-08-28 17:25:56 +02:00
kobewi 52d41cc555 Add option to cleanup tiles outside the texture 2023-08-28 15:15:45 +02:00
Rémi Verschelde 031f6deefb
Merge pull request #81068 from KoBeWi/is_scene_a_resource
Fix Quick Open not opening binary resources
2023-08-28 15:05:28 +02:00
Rémi Verschelde 8df1d90336
Merge pull request #81065 from YuriSizov/themable-chairs
Move default theme files to `scene/theme`
2023-08-28 15:05:04 +02:00
Rémi Verschelde 6636ccc3ea
Merge pull request #80943 from rakkarage/tileset-atlas-merge-rgb8
Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed
2023-08-28 15:04:16 +02:00
Rémi Verschelde bcbe1fd5e0
Merge pull request #80754 from KoBeWi/TileSetImprovementsCollectionSource
Improve scene tiles workflow
2023-08-28 15:03:26 +02:00
Rémi Verschelde a7ded904de
Merge pull request #79678 from thiagola92/auto_create_tilesets_for_multiple_atlas
Auto create tile for multiple atlases
2023-08-28 15:02:37 +02:00
Rémi Verschelde 120abd12c2
Merge pull request #79504 from Pingar5/master
Android: Add option to always use WiFi to connect to remote debug
2023-08-28 15:02:13 +02:00
Rémi Verschelde 2d42357464
Merge pull request #77316 from rakkarage/tileset_atlas_merge
Include animation frames in tile atlas merge.
2023-08-28 15:01:24 +02:00
Brennen Shaughnessy 40b08cb4b6
Android: Add option to always use WiFi to connect to remote debug 2023-08-28 13:13:36 +02:00
kobewi cbd01043f0 Fix Quick Open not opening binary resources 2023-08-28 12:57:14 +02:00
Rémi Verschelde b3811a3e4f
Merge pull request #81061 from KoBeWi/remembering_things_is_so_meta
Properly remember custom text color in scene tree
2023-08-28 12:11:59 +02:00
Rémi Verschelde 00d1fafc77
Merge pull request #81022 from YuriSizov/editor-run-scripts-valid-and-toasty
Improve warnings when running scripts in the editor
2023-08-28 12:08:37 +02:00
Rémi Verschelde b5b87b38ad
Merge pull request #81016 from YeldhamDev/took_me_a_while_to_discover_why_my_plugin_was_acting_weird
Keep `_export_begin()`'s `path` argument always consistent
2023-08-28 12:08:14 +02:00
Rémi Verschelde 8f07644867
Merge pull request #81011 from 21dhruvp/remove-meta-array
Added checks to remove meta arrays when creating and undoing guides
2023-08-28 12:07:03 +02:00
Rémi Verschelde 9a140f92be
Merge pull request #80999 from dsnopek/gdextension-editor-export-plugin
Fix overriding `_export_begin`, `_export_file` and `_export_end` from GDExtension
2023-08-28 12:06:39 +02:00
Rémi Verschelde ea3c5f96e5
Merge pull request #80998 from MewPurPur/fix-my-little-oopsie-daisy
Move the new RegEx icons into their respective module
2023-08-28 12:06:16 +02:00
Rémi Verschelde 0655a7d7d3
Merge pull request #80517 from YuriSizov/tsa-randomly-picked-you-for-mandatory-inspection-i-think-not
Avoid unnecessary inspector updates when loading or switching scenes
2023-08-28 12:05:06 +02:00
Rémi Verschelde 2967084fe3
Merge pull request #80490 from YuriSizov/editor-scene-tabs-unchained
Extract editor scene tabs into their own component
2023-08-28 12:04:41 +02:00
Rémi Verschelde 33a3e12fe1
Merge pull request #80435 from YuriSizov/region-editor-quality-pass
Fix multiple usability issues in the texture region editor
2023-08-28 12:04:18 +02:00
kobewi b88007b6c5 Properly remember custom text color in scene tree 2023-08-28 02:37:47 +02:00
Yuri Sizov fd2ec47ec9 Move default theme files to scene/theme
This also puts the default theme icons into their own folder.
2023-08-28 00:23:38 +02:00
Michael Alexsander cc859fda33
Keep `_export_begin()`'s `path` argument always consistent 2023-08-27 11:06:45 -03:00
thiagola92 c8a94ea3e8 Support auto create tiles when adding multiple atlases
TileSet add button support multiple files
Join most of the code of `_drop_data_fw()` and `_texture_file_selected()` in a new function `_load_texture_files()`
Rename `init_source` to `init_new_atlases`
2023-08-27 10:45:03 -03:00
Yuri Sizov 4b7d0c84a1 Fix multiple usability issues in the texture region editor
- Correctly display atlas textures when used by other objects.
- Make region handles easier to hit in ninepatchable objects.
- Correctly initialize and restore various visual properties.
- Improve code quality.
2023-08-27 14:25:49 +02:00
Yuri Sizov 2270f4917a Improve warnings when running scripts in the editor 2023-08-27 13:59:06 +02:00
Jean-Michel Bernard a871679aac Add buttons to reorder inspector array items without dragging 2023-08-27 13:18:16 +02:00
21dhruvp a7b2819540 Added checks to remove meta arrays when creating and undoing guides
Added checks to remove meta arrays when creating and undoing guides

Update editor/plugins/canvas_item_editor_plugin.cpp

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update editor/plugins/canvas_item_editor_plugin.cpp

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-08-26 10:35:54 -04:00
Yuri Sizov 6da4ad1662 Merge pull request #80968 from rakkarage/alternative-icon-scale
Call `add_child` after `set_rect` to fix size bug
2023-08-25 21:26:50 +02:00
Yuri Sizov 43f61836ad Merge pull request #80934 from philippesic/TileSet-Sep-Suffix
Add `px` suffix for TileSet `separation` property
2023-08-25 21:26:41 +02:00
Yuri Sizov 3c71214a70 Merge pull request #80914 from jsjtxietian/init-importer-default-correctly
Fix "Import Defaults" selector not being initialized incorrectly
2023-08-25 21:26:34 +02:00
jsjtxietian f997feed75 Fix "Import Defaults" selector not being initialized incorrectly
In ImportDefaultsEditor, delete 'Select Importer';
when first call the function, last_selected should
be the first one, directly show the settings for
"Animation Library"
2023-08-26 00:24:30 +08:00
Pippo Pesic 0044217a7f Add `px` suffix to TileSet `Separation` value
Add px suffix to TileSet separation value
2023-08-25 08:58:11 -07:00
David Snopek d09843c5ae Fix overriding _export_begin, _export_file and _export_end from GDExtension 2023-08-25 10:52:30 -05:00
MewPurPur 3f79c69d70 Move the new RegEx icons into their respective module 2023-08-25 18:08:45 +03:00
Rakka Rage e93d2a04df Call `add_child` after `set_rect` to fix size bug 2023-08-25 10:10:47 -04:00
Yuri Sizov 6f90b23702 Merge pull request #80967 from aaronfranke/fix-enter-tree
Fix redundant enter tree notification in project export texture format
2023-08-25 14:59:04 +02:00
Yuri Sizov 6340fb3479 Merge pull request #80879 from jsjtxietian/keep-show-built-in-action-after-editor-restart
Save "Show Built-In Actions" state to project metadata
2023-08-25 14:58:44 +02:00
Yuri Sizov e21ded8f8f Merge pull request #80450 from KoBeWi/settings_freeze,_no_more_changes
Deprecate `project_settings_changed` signal
2023-08-25 14:58:32 +02:00
ajreckof f2758d8591 Fix paste value emptying an array on some right click location 2023-08-25 14:00:02 +02:00
Aaron Franke 4c51544d62
Fix redundant enter tree notification in project export texture format 2023-08-24 12:32:10 -05:00
Yuri Sizov 4cdbbfd071 Differentiate between core and editor-only singletons
This makes sure that running scenes in debug mode
(from the editor) does not crash Godot.
In export mode it should already work correctly, because
editor-only singletons are never registered in the first place.
2023-08-24 16:46:54 +02:00
Yuri Sizov 2c77f07aaa Add a script method to get its class icon
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2023-08-24 13:05:41 +02:00
Yuri Sizov 6ab34005ad Extract editor scene tabs into their own component 2023-08-24 12:24:29 +02:00
bruvzg 5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
Rakka Rage dc2aa69c46 Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed 2023-08-23 19:26:57 -04:00
kobewi 2cd63a1ef0 Made hidden ProjectSettings groups more explicit 2023-08-23 22:43:43 +02:00
Rakka Rage c17848f07d Include animation frames in tile atlas merge. 2023-08-23 16:19:24 -04:00
jsjtxietian 9c1278cae8 save show built-in actions button state 2023-08-22 16:36:48 +08:00
Rémi Verschelde b195b0a7d4
Merge pull request #80865 from MewPurPur/cam-revert
Revert to the old Camera icons
2023-08-22 09:09:31 +02:00
MewPurPur 383c0116d7 Revert to the old Camera icons 2023-08-22 01:58:04 +03:00
Rémi Verschelde cc01b28886
Merge pull request #80779 from Chaosus/cpuparticles_converter
Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D)
2023-08-21 19:26:48 +02:00
Rémi Verschelde 38b8751f0d
Merge pull request #79891 from Calinou/plugin-editor-create-add-tooltips
Add tooltips to the plugin editor creation dialog
2023-08-21 19:26:24 +02:00
kobewi dd7152a311 Unedit nodes early when closing scene tab 2023-08-21 14:12:26 +02:00
Rémi Verschelde 5c690c324e
Merge pull request #80811 from Nolkaloid/root_name_no-translate
Disable translation of root name on scene creation
2023-08-21 08:25:50 +02:00
Rémi Verschelde 23db0240a2
Merge pull request #78996 from Tetane/create_shader_node_popup
Fix "Create Shader Node" window position when visual shader editor is floating
2023-08-21 08:20:42 +02:00
Hugo Locurcio aa8eb8fd3a
Add tooltips to the plugin editor creation dialog 2023-08-21 00:00:48 +02:00
Nolkaloid 4d13126e3b Disable translation of root name on scene creation 2023-08-20 11:23:38 +02:00
Rémi Verschelde f2f8cfb783
Merge pull request #80771 from KoBeWi/simplify-inator
Simplify making texture nodes in 2D editor
2023-08-19 11:49:24 +02:00
Rémi Verschelde 1fbe3e12a6
Merge pull request #79213 from martinboue/show-only-compatible-nodes
Show only compatible nodes in 'Select a node' window
2023-08-19 11:48:56 +02:00
Yuri Roubinski 7fcb91f077 Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D) 2023-08-19 11:58:57 +03:00
kobewi 0d8f8d7054 Simplify making texture nodes in 2D editor 2023-08-19 00:17:34 +02:00
Martin Boué bf4cbd4129 Show only compatible nodes in 'Select a node' window
Fixes https://github.com/godotengine/godot-proposals/issues/7217
2023-08-18 18:52:00 +02:00
Rémi Verschelde a2a1ed1aac
Merge pull request #80576 from KurtBliss/master
Fixed editor filesystem/import properties not being caught by the doctool.
2023-08-18 15:43:58 +02:00
kobewi a88e3b8604 Improve scene tiles workflow 2023-08-18 13:55:30 +02:00
Rémi Verschelde a017e9c698
Merge pull request #80119 from MewPurPur/svg-opacities-standardization
Optimize and fix up some SVGs
2023-08-18 09:30:23 +02:00
Rémi Verschelde 8c0e08481d
Merge pull request #80726 from dalexeev/editor-dont-cache-script-signal-descriptions
Editor: Don't cache script signal descriptions
2023-08-18 00:42:02 +02:00
Rémi Verschelde 1c0e2e532c
Merge pull request #80724 from MewPurPur/regex-icon
Add a RegEx icon
2023-08-18 00:41:39 +02:00
MewPurPur c845242250 Add a RegEx icon 2023-08-17 19:41:56 +03:00
Danil Alexeev fe5bcadb73
Editor: Don't cache script signal descriptions 2023-08-17 18:59:37 +03:00
Hugo Locurcio 81d603ad0e
Replace all flags with one value when holding Cmd in the layers editor
This behavior is inspired by Blender (except it's the other way
around to preserve the current default behavior).

Trying to enable a single enabled value with Cmd held will invert the
current flags, which makes enabling all flags but one faster.
2023-08-17 14:01:55 +02:00
Rémi Verschelde 281b7b9fdf
i18n: Sync translations with Weblate
(cherry picked from commit 7a86ffc034)
2023-08-17 13:24:10 +02:00
Rémi Verschelde 446dfdbd87
Merge pull request #80329 from xiongyaohua/path3d_tilt_gizmo
Add handles to control Curve3D tilt
2023-08-17 12:29:55 +02:00
Rémi Verschelde d3b69c09ad
Merge pull request #78297 from aganm/contrast
Change light themes default contrast from -0.08 to -0.06
2023-08-17 12:27:53 +02:00
Rémi Verschelde a42f95f9e2
Merge pull request #80689 from AThousandShips/gizmo_fix
Fix gizmo for `BoxShape3D`
2023-08-17 11:27:28 +02:00
Rémi Verschelde c7356c795b
Merge pull request #80647 from jsjtxietian/CollisionShape3D-Shape-Size-handles-missing-when-Script-editor-floating
Fix 2D/3D viewport context switching issues when script editor is floating
2023-08-17 11:27:04 +02:00
Rémi Verschelde 417239ee6d
Merge pull request #80411 from dalexeev/editor-improve-signal-dock
Editor: Improve Signal Dock for script classes
2023-08-17 11:25:51 +02:00
Rémi Verschelde 8d0c9a4c87
Merge pull request #80317 from KoBeWi/taking_shortcuts
Ensure TileMap editor shortcuts are handled
2023-08-17 11:24:39 +02:00
Rémi Verschelde 678c89aa1a
Merge pull request #79382 from MewPurPur/better-prepare-scene-context-menu
Disable irrelevant scene tab context menu items
2023-08-17 11:20:57 +02:00
Rémi Verschelde 229af8e573
Merge pull request #78457 from aaronfranke/tex-format-fix-button
Add a button in the export dialog to fix missing texture formats
2023-08-17 11:20:08 +02:00
Rémi Verschelde aa9e4b8ace
Merge pull request #77096 from spanzeri/skeleton-editor-cleanup-followup
Additional cleanup of bone editors
2023-08-17 11:19:44 +02:00
Rémi Verschelde 4b11bc2b34
Merge pull request #36493 from KoBeWi/echo_menus
Add option to allow echo events in menu shortcuts
2023-08-17 11:18:50 +02:00
Aaron Franke ada360affe
Add a button in the export dialog to fix missing texture formats 2023-08-17 02:56:42 -05:00
Tomasz Chabora 3dd881b4e4 Add option to allow echo events in menu shortcuts 2023-08-16 16:59:17 +02:00
Rémi Verschelde c081d1bd24
Merge pull request #78816 from kleonc/scene-tree-fix-drag-drop-to-parent-with-internal-nodes
Fix drag-dropping nodes to parent with internal nodes
2023-08-16 16:54:06 +02:00
A Thousand Ships 1dcb45a79c Fix gizmo for `BoxShape3D` 2023-08-16 16:49:04 +02:00
Danil Alexeev 1d5539cf77
Editor: Improve Signal Dock for script classes
* Add signal documentation for script classes.
* Use separate sections for script class inheritance.
2023-08-16 13:05:10 +03:00
Rémi Verschelde 90f90cbcb0
Merge pull request #80661 from MewPurPur/nav-agent-more-readable
Make the NavigationAgent3D icon more readable
2023-08-16 09:18:59 +02:00
Rémi Verschelde d2f7f8de34
Merge pull request #80659 from MewPurPur/portable-texture-icon
Add PortableCompressedTexture2D icon
2023-08-16 09:18:35 +02:00
MewPurPur 82c45ed689 Make the NavigationAgent3D icon more readable 2023-08-15 18:31:02 +03:00
MewPurPur 8498078ee9 Add PortableCompressedTexture2D icon 2023-08-15 17:31:43 +03:00
jsjtxietian fec0396cac fix CollisionShape3D Shape Size handle will missing
when Script editor floating
2023-08-15 12:41:20 +08:00
Rémi Verschelde c78be12f42
Merge pull request #80610 from lawnjelly/fix_tilemap_editor_plugin_crash2
Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
2023-08-14 15:31:19 +02:00
Rémi Verschelde c2fde9cc1e
Merge pull request #80607 from lawnjelly/fix_tileset_signal_crash
Fix crash on exit where `TileSet` calls destroyed `TileSetAtlasSourceEditor`
2023-08-14 15:30:32 +02:00
Rémi Verschelde 6f1c205221
Merge pull request #80598 from MewPurPur/curve-xyz-texture-icon
Add CurveXYZTexture icon
2023-08-14 15:30:08 +02:00
lawnjelly 356fc728a4 Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
Store the tilemap ObjectID instead of raw pointer, and check it is valid before access.
2023-08-14 12:56:52 +01:00
KurtBliss 300ecfab89 Fixed editor filesystem/import properties not being caught by the doctool
Defined glft editor properties in editor_settings
Added documentation descriptions and entries
2023-08-14 06:06:28 -04:00
MewPurPur d009caef2b Add CurveXYZTexture icon 2023-08-14 12:44:33 +03:00
lawnjelly fa7be20ee1 Fix crash on exit where TileSet calls destroyed TileSetAtlasSourceEditor
Removes signal from TileSet on destroying TileSetAtlasSourceEditor, to prevent TileSet calling function in destroyed TileSetAtlasSourceEditor.
2023-08-14 10:25:50 +01:00
MewPurPur 93318d2dd5 Optimize and fix up some SVGs 2023-08-13 17:48:17 +03:00
Yuri Sizov 2445414aa0 Avoid unnecessary inspector updates when loading or switching scenes
This should result in some noticeable performance improvements,
aside from fixing bugs due to conflicts in logic.
This also simplifies some related code identified while debugging.
2023-08-12 13:32:59 +02:00
Daniel Roberts 46e395abb1 Add handles to control Curve3D tilt 2023-08-12 14:55:38 +08:00
kobewi 6b7829b5ff Fix TileSet not disappearing on deselecting TileMap 2023-08-12 00:47:26 +02:00
Rémi Verschelde a22cadfee9
Merge pull request #76778 from eugene87222/create-plugin-dialog
Apply new input validation method for Create Plugin dialog
2023-08-11 10:32:36 +02:00
Rémi Verschelde 48a447b5ee
Merge pull request #58389 from rcorre/blender-numeric
Implement numeric blender-style transforms.
2023-08-11 10:31:40 +02:00
Tyler 98bdf279d7 Fixes Scene corruption when child scene is renamed in another directory
Fixes #80379
2023-08-10 21:38:31 -04:00
Eugene Yang 8671dc4e03 Add validation pane to create plugin dialog 2023-08-10 22:08:51 +08:00
kobewi fca3ab5564 Deprecate project_settings_changed signal 2023-08-10 15:07:25 +02:00
Rémi Verschelde 7df393312f
Merge pull request #80476 from bruvzg/log_print_rich_ml
[Editor Log] Clear rich print tags only after the last line.
2023-08-10 14:55:56 +02:00
Rémi Verschelde b78d52b693
Merge pull request #75694 from YuriSizov/editor-hot-singleton-interfaces-in-your-area
Make `EditorInterface` accessible as a singleton
2023-08-10 14:53:35 +02:00
Ryan Roden-Corrent d6a83a6bac
Implement numeric blender-style transforms.
This allows the user to input numbers during an "instant" (blender
style) transform operation to specify exactly how far to transform the
object. For example:

g2.5xx: Translate 2.5 units along the local x-axis
ry-45: Rotate -45 degrees around the y-axis
s.25Z: Scale by a factor of .25 on the xy plane

Some shared code between the traslate/rotate/scale branches of update_transform
was refactored into apply_transform so numeric transforms could reuse it.

This removes any "{X,Y,Z}-Axis Transform" messages. These prevented the
"Transforming: (x,y,z)" messages from showing, and the latter are more
useful, as they tell you the actual units.

This also rearranges finish_transform to clear _edit before updating
the axis rendering, so an axis doesn't remain highlighted.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-08-10 07:18:18 -04:00
bruvzg 9a6ecda591
[Editor Log] Clear rich print tags only after the last line. 2023-08-10 09:48:53 +03:00
kobewi f02133a4a2 Fix TileSet with TileMap handling 2023-08-09 23:50:45 +02:00
Rémi Verschelde 1b132b7c23
Merge pull request #80377 from YuriSizov/importers-are-made-to-be-alone
Register and cleanup resource importer singletons in a predictable way
2023-08-09 17:46:33 +02:00
Rémi Verschelde 8375f73680
Merge pull request #80355 from jcovin293/issue/80347/fix-missing-ellipsis
Fix menu items that trigger secondary interface missing ellipsis
2023-08-09 17:46:26 +02:00
Yuri Sizov 951ea2415b Make EditorInterface accessible as a singleton
- EditorPlugin.get_editor_interface() is removed as redundant.
2023-08-09 16:01:31 +02:00
RandomWalrus13 585633ea85 Fix menu items that trigger secondary interface missing ellipsis
fix #80347
2023-08-09 08:30:35 -05:00
Rémi Verschelde f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Rémi Verschelde 75c979e48d
Merge pull request #80256 from garychia/stack_var_debug
Avoid retrieving the object ID of a stack variable if it is nil
2023-08-09 15:20:20 +02:00
Rémi Verschelde 1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Rémi Verschelde 60d6e14323
Merge pull request #78744 from KoBeWi/easy_peasy_routine_refactor_stuff
Standardize dialog input validation as a new class
2023-08-08 16:55:55 +02:00
Rémi Verschelde 14256a2395
Merge pull request #78468 from KoBeWi/enmarginalization
Fix ColorPicker margin theme property
2023-08-08 16:55:32 +02:00
kobewi 7f41403a6f Standardize dialog input validation as a new class 2023-08-08 16:14:35 +02:00
Hugo Locurcio e21388d9f4
Readd a Camera3D icon gizmo to the 3D editor, renew Camera2D/3D icons
The lack of icon gizmo made it no longer possible to select Camera3D
nodes in the 3D viewport by clicking on them.

A new Camera3D icon gizmo was designed to be direction-neutral.
This avoids the issue that the previous icon gizmo had, since it was
always facing right.

This also adds icons for CameraAttributesPractical and CameraAttributesPhysical.
2023-08-08 16:04:53 +02:00
Michael Alexsander 98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
Yuri Sizov 237515d0ed Register and cleanup resource importer singletons in a predictable way 2023-08-07 17:49:33 +02:00
Rémi Verschelde 169a28bd0f
Merge pull request #80362 from Calinou/string-use-unicode-compiletime
Use compile-time Unicode string conversion
2023-08-07 14:55:58 +02:00
Rémi Verschelde c833827e50
Merge pull request #80102 from MewPurPur/undo-redo-icon
Add UndoRedo icon
2023-08-07 14:50:23 +02:00
Rémi Verschelde 5413b185f1
Merge pull request #79971 from Calinou/editor-filesystem-dock-expand-favorites
Uncollapse favorites by default in the editor FileSystem dock
2023-08-07 14:49:58 +02:00
Rémi Verschelde 016621f51d
Merge pull request #79467 from Calinou/editor-add-paste-as-sibling
Add a shortcut to paste nodes as sibling of the selected node
2023-08-07 14:47:27 +02:00
Rémi Verschelde 1ee571887e
Merge pull request #79431 from MewPurPur/non-placeholder-icons-for-placeholders
Add icons to some placeholder classes
2023-08-07 14:46:14 +02:00
Rémi Verschelde 524c8f03e7
Merge pull request #78903 from MewPurPur/forget-dice-we-have-texture-cubes-now
Add icons for 3D texture classes
2023-08-07 14:44:58 +02:00
Rémi Verschelde 02709d57ee
Merge pull request #78858 from MewPurPur/tweak-mesh-preview
Improve material and mesh preview buttons
2023-08-07 14:44:34 +02:00
Rémi Verschelde bbfa74a991
Merge pull request #75137 from nongvantinh/implement-6320
Expose 'Reimport' on right-click context menu in the FileSystem panel
2023-08-07 14:43:44 +02:00
Rémi Verschelde faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
clayjohn 57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Hugo Locurcio e9f723006a
Use compile-time Unicode string conversion
Thanks to this syntax introduced in C++11, this reduces the amount of work
that needs to be performed at run-time while making the code more terse.
2023-08-07 10:38:16 +02:00
kobewi 181eecc51b Ensure TileMap editor shortcuts are handled 2023-08-06 03:38:03 +02:00
Yuri Sizov dc6ea03101
Merge pull request #35555 from Calinou/add-version-project-setting
Add a "version" project setting and use it in new export presets
2023-08-04 21:01:15 +02:00
MewPurPur 3510b6e02c Add icons for 3D texture classes 2023-08-04 19:38:27 +03:00
MewPurPur 21739b89ef Add UndoRedo icon 2023-08-04 19:18:11 +03:00
MewPurPur 4b0ee492ae Disable irrelevant scene tab context menu items 2023-08-04 19:04:18 +03:00
Chia-Hsiang Cheng 8da66412f6 Avoid retrieving the object ID of a Nil variable 2023-08-04 22:38:43 +08:00
kobewi 05ab444357 Show valid types in SceneTreeDialog 2023-08-04 13:50:27 +02:00
Hugo Locurcio ad4480bf2e
Add a "version" project setting and use it in new export presets
This makes it easy to retrieve the project version at runtime
for display purposes, while simplifying the export preset configuration.
You can now leave the version empty unless you need to override it on a per-preset
basis.

Since export presets save the values of default values to the `export_presets.cfg`
file, this change only affects export presets created after this commit was merged.
2023-08-04 10:29:33 +02:00