Commit Graph

216 Commits

Author SHA1 Message Date
A Thousand Ships ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +02:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
aaronp64 245be6f9c1 Move "Add a new scene" button when Scene Tabs settings change
Updating "Display Close Button" setting (interface/scene_tabs/display_close_button) in Editor Settings changes the size of scene tabs, but the add button at the end of the tabs was not being moved until the next update, causing gaps/overlaps between the controls.  Adding call to _scene_tabs_resized() after getting the new settings to update the add button position.

Fixes #91850
2024-05-11 20:13:29 -04:00
Gilles Roudière 7705265477 Fix PropertyListHelper::_get_property returning a valid value even if an index is outside the array valid indices
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2024-05-10 10:46:04 +02:00
Rémi Verschelde e63252b421
Merge pull request #90705 from AThousandShips/foreach_list
Reduce and prevent unnecessary random-access to `List`
2024-05-07 09:04:44 +02:00
Rémi Verschelde a7c59fe192
Merge pull request #91331 from dsnopek/expose-editor-file-dialog-popup-function
Expose `EditorFileDialog::popup_file_dialog()` to GDScript and GDExtension
2024-05-06 15:15:01 +02:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
A Thousand Ships fd8a31b53d
[Editor] Prevent some shortcut errors when generating docs 2024-05-03 17:43:54 +02:00
kit 5fd23730eb Fix editor spin slider RTL and margin 2024-05-02 08:34:46 -04:00
David Snopek 8ce54d4632 Expose `EditorFileDialog::popup_file_dialog()` to GDScript and GDExtension 2024-04-29 14:49:32 -05:00
A Thousand Ships 31e7ee63f2
Fix unsafe uses of `Callable.is_null()`
`Callable.is_null()` is not equivalent to `!Callable.is_valid()` and
doesn't guarantee the call is valid.
2024-04-27 16:22:57 +02:00
Rémi Verschelde 2338d9b3bc
Merge pull request #89747 from KoBeWi/icoNOT
Remove stray item icon from tabs menu
2024-04-26 15:13:31 +02:00
Rémi Verschelde 0fe0f1e992
Merge pull request #86605 from KoBeWi/update_all_of_the_tree_not
Don't update tree on deselect
2024-04-26 15:13:21 +02:00
Haoyu Qiu 308fb3a284 Fix error when moving FileSystem dock 2024-04-24 08:36:56 +08:00
Rémi Verschelde 1a89b60549
Merge pull request #90651 from Muller-Castro/folder-color
Fix folder colors not present in editor dir dialog
2024-04-18 12:24:30 +02:00
Rémi Verschelde ab24edca4f
Merge pull request #90680 from jsjtxietian/skip-.godot
Fix editor's file explorer will show directories that should be skipped
2024-04-17 20:26:24 +02:00
unknown 5ae6382105 Allow closing scene tab preview using Escape 2024-04-16 13:11:24 -07:00
Muller-Castro c8ef9e6955 Fix folder colors not present in editor dir dialog 2024-04-16 16:21:49 -03:00
kobewi 49e69fabba Add automatic checking for engine updates 2024-04-15 15:08:27 +02:00
jsjtxietian d06db652ef Fix editor's file explorer will show directories that should be skipped 2024-04-15 11:13:46 +08:00
AeioMuch 0ba1adfaf9 Inspect hovered node while dragging 2024-04-10 17:15:13 +02:00
Rémi Verschelde 6b8daa498e
SceneTreeEditor: Fix crash when TreeItem is removed before callback
Fixes #90235.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2024-04-05 16:53:33 +02:00
Rémi Verschelde 27dec32699
Merge pull request #89735 from bruvzg/ed_native_fd2
[Native File Dialog] Add support for using native dialogs in the editor.
2024-04-04 14:31:39 +02:00
RedMser 9cd30208d6 Improve SceneTreeEditor usability
- Mark contextually relevant node
- Remember/Clear selection as appropriate
- Scroll to marked/selected node
2024-03-31 21:35:10 +02:00
bruvzg 61f7145f43
[Native File Dialog] Add support for using native dialogs in the editor. 2024-03-28 11:53:03 +02:00
Haoyu Qiu f298aaa956 Fix unexpected auto-translation of more editor components 2024-03-28 10:50:57 +08:00
Rémi Verschelde 4389f85a17
Merge pull request #89518 from AThousandShips/spin_slider_clean
[Editor] Remove redundant code from `EditorSpinSlider`
2024-03-24 01:16:20 +01:00
Rémi Verschelde ae8d43b0bb
Merge pull request #88003 from kitbdev/dock-manager-fixes
Refactor and fix issues in Editor Dock Manager
2024-03-24 01:13:26 +01:00
kobewi e44079607a Remove stray item icon from tabs menu 2024-03-21 14:52:21 +01:00
A Thousand Ships 2cbf469912
Fix sorting of files/dirs in dialogs
Sorts leading `_` before other characters except `.`.
2024-03-20 13:45:47 +01:00
kit 0c9c84f7a6 Refactor and fix issues in Editor Dock Manager
Extract Dock Context Menu.
2024-03-16 13:51:31 -04:00
A Thousand Ships 56b05a5a3d
[Editor] Remove redundant code from `EditorSpinSlider` 2024-03-15 15:03:12 +01:00
Matt Enad d4ac3fabac Fix main button margins in custom themes
Defined more theme variations and styleboxes for those variations to work around an issue where external editor themes would apply incorrect margins to certain buttons. This should eliminate clipping/alignment issues while a custom theme is in use.

Also simplified the step where margins are copied over thanks to @Rindbee 's suggestion
2024-03-13 15:38:09 -04:00
Aaron Franke 0700b807a2 Allow node visibility to work with custom user-provided node types 2024-03-07 17:25:06 -08:00
passivestar a03315e3d9 Fix vertical alignment of editor version `LinkButton` in the bottom panel 2024-03-06 17:48:21 +04:00
Rémi Verschelde 13954fc33e
Merge pull request #87452 from bruvzg/native_menu
Move `global_menu_*` methods to a separate `NativeMenu` class.
2024-03-06 13:16:52 +01:00
Hugo Locurcio 8221e7546b
Add editor shortcuts to toggle bottom panel visibility
Default shortcuts use the first or second letter of each word.

This also adds a new shortcut to toggle the last opened bottom panel.
On editor startup, this defaults to the first panel in the list
(which is the Output panel).
2024-03-05 15:53:15 +01:00
Rémi Verschelde 9e13b90ce8
Merge pull request #81177 from Calinou/filedialog-focus-path-shortcut
Add Ctrl + L / Cmd + Shift + G shortcut to focus path bar in FileDialog
2024-03-05 09:55:36 +01:00
Hugo Locurcio 4f8d7cae26
Add Ctrl + L / Cmd + Shift + G shortcut to focus path bar in FileDialog
This also tweaks EditorFileDialog to use the same shortcut,
while making it select the path text after focusing
(like in most file managers).

Ctrl + L / Cmd + Shift + G can also now be used to focus on the
property name in the project settings editor, as well in the
Input Map, Autoload, Shader Globals and Global Groups tabs.
2024-03-05 00:02:09 +01:00
bruvzg c65a667924
Move `global_menu_*` methods to a separate `NativeMenu` class. 2024-03-04 23:41:41 +02:00
kobewi ffadba0b08 Allow to easily rename multiple nodes
Co-authored-by: ajreckof <tbonhoure@ymail.Com>
2024-03-03 13:16:21 +01:00
Hugo Locurcio 67e9ccdbc4
Display the build date in the editor and when starting the engine
This can be used to quickly see how recent a development build is,
without having to look up the commit date manually.
When juggling around with various builds (e.g. for benchmarking),
this can also be used to ensure that you're actually running the
binary you intended to run.

The date stored is the date of the Git commit that is built, not
the current date at the time of building the binary. This ensures
binaries can remain reproducible.

The version timestamp can be accessed using the `timestamp` key
of the `Engine.get_version_info()` return value.
2024-02-27 20:39:17 +01:00
Rémi Verschelde 4a4937318b
Merge pull request #88825 from adamscott/add-create-folder-icon
Add create folder icon
2024-02-27 10:18:13 +01:00
Muller-Castro 1638c1b28f Add const lvalue ref to editor/* container parameters 2024-02-26 15:28:15 -03:00
Adam Scott fd3666298c
Add create folder icon 2024-02-26 09:04:24 -05:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
Rémi Verschelde 4582ee1a0f
Merge pull request #87760 from kitbdev/extract-bottom-dock
Extract BottomPanel from EditorNode
2024-02-23 22:18:50 +01:00
Mounir Tohami 7884d63281 Fix PopupMenu doesn't respect it's ScrollContainer's margins 2024-02-23 15:51:47 +02:00
kit eb6ca91ba6 Extract BottomPanel from EditorNode 2024-02-20 15:09:07 -05:00
Rémi Verschelde 9e9dcdbba4
Merge pull request #86378 from RobProductions/update-hover-styling
Add hover highlight to main editor buttons
2024-02-20 19:34:40 +01:00
kobewi a031911c82 Use check_changed_settings_in_group() everywhere 2024-02-19 21:34:45 +01:00
Rémi Verschelde 92fcbe2f5c
Revert "Allow configuration warnings to refer to a property"
This reverts commit bf37a9bac6.
2024-02-17 19:04:18 +01:00
Rémi Verschelde 2c5fa95aea
Merge pull request #87530 from YeldhamDev/atr_inheritance
Rework the auto translation system
2024-02-17 15:54:31 +01:00
Rémi Verschelde 16e1dbb0b7
Merge pull request #88389 from passivestar/hidden-files-mac
[macOS] Fix the "Toggle Hidden Files" shortcut
2024-02-17 00:26:58 +01:00
Matt Enad 5b5de0e167 Add hover highlight to main editor buttons
Updates styling of the editor run bar, plugin, bottom panel, icon buttons, and main menu buttons for accessibility.
2024-02-16 14:49:44 -05:00
passivestar 4249436c52 [macOS] Fix the "Toggle Hidden Files" shortcut 2024-02-16 08:49:01 +04:00
passivestar 5689dbc209 Allow to abort `SpinSlider` value changes 2024-02-16 07:54:35 +04:00
Michael Alexsander 7b42c24550
Make auto translation inheritable 2024-02-15 16:51:19 -03:00
Rémi Verschelde d584ce0122
Merge pull request #80544 from MewPurPur/buff-editorspinslider-2
Fix read-only EditorSpinSlider display
2024-02-09 18:08:55 +01:00
RedMser bf37a9bac6 Allow configuration warnings to refer to a property
This is used by the inspector so it can show a warning icon on
a specific property.
2024-02-08 23:05:20 +01:00
Rémi Verschelde 1d3722a6aa
Merge pull request #87170 from AThousandShips/run_fix
Fix reloading current scene forgetting path
2024-01-29 21:33:26 +01:00
Rémi Verschelde ef9cb3dfa5
Merge pull request #87535 from Mickeon/scene-tree-configuration-warnings-cleanup
Improve appearance of Node configuration warnings
2024-01-29 13:17:17 +01:00
Micky 3e4e0f08c4 Improve appearance of Node configuration warnings 2024-01-27 13:03:07 +01:00
ajreckof 2f697926b0 Fix renaming a node to the name of its siblings breaking NodePath
Also fix cases where node name was not visually updated because name was not changed

Co-Authored-By: Nông Văn Tình <53887662+nongvantinh@users.noreply.github.com>
2024-01-16 15:18:30 +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
A Thousand Ships 595c6248a3
Fix reloading current scene forgetting path
Scene was stopped before running which cleared the last run scene,
forcing it to run the currently edited scene instead
2024-01-14 12:17:32 +01:00
kobewi 0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +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 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 00cc23f906
Merge pull request #86486 from timothyqiu/move-copy-dialog
Improve `EditorDirDialog`
2024-01-03 15:47:52 +01:00
Rémi Verschelde 73c5deff76
Merge pull request #82916 from jsjtxietian/update-scene-tree-tooltip-after-editor-description-chnage
Support updating tooltip immediately after editor description change
2024-01-03 15:41:31 +01:00
kobewi 413f55b06f Don't update tree on deselect 2023-12-29 13:15:15 +01:00
Haoyu Qiu a42ead59da Improve EditorDirDialog
* Automatically selects the newly created directory
* Automatically selects "res://" when nothing is selected
* Fixes an error when overwrite/replace dialog appears
* Changes "copy checkbox + action button" to "copy button + move button"
* Double clicking a directory (un)collapses it instead of copy/move
* Uses DirectoryCreateDialog for "Create Folder"
2023-12-25 19:14:04 +08:00
Haoyu Qiu c62c0fb2d2 Improve action name for ungroup button in Scene dock 2023-12-22 19:54:14 +08:00
bruvzg d8bb4c7163
[macOS] Fix updating editor tab titles in the dock menu. 2023-12-19 13:09:20 +02:00
Wilson E. Alvarez a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov efa8c46fab Fix various issues with the folder color lookup 2023-12-14 20:43:46 +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 6faa5c6dc4 Merge pull request #84837 from synalice/issue-83366-colored-folders
Fix folder color not showing up in file dialogs
2023-12-14 17:38:24 +01:00
Yuri Sizov 19f4dfbdfb Merge pull request #83957 from kitbdev/scene-tab-reuse
Only update `EditorSceneTabs` tabs when necessary
2023-12-14 17:38:09 +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
Yuri Sizov 0481a0b8b3 Merge pull request #82528 from SaracenOne/path_types
Add support for exporting script classes without a name
2023-12-08 15:22:48 +01:00
jsjtxietian 4680ced5fa support updating tooltip after editor description change 2023-11-15 14:27:49 +08:00
Nikita Krasnov 0d6300d269 Fix folder color not showing up in file dialogs 2023-11-14 17:17:10 +03:00
Saracen 7559eb1667 Script path type support in editor:
Allow script path type hints to be used in drag and drop
and scene tree popup.
2023-11-08 00:18:40 +00:00
Haoyu Qiu 3f00d713b8 Allow dragging editable children
But not allow dropping inside the scene tree editor.
2023-11-01 23:54:38 +08:00
Saracen 29c2615352 Remove toggling of unique names in subscenes 2023-10-28 02:55:45 +01:00
kit 473c209fcd Only update EditorSceneTabs tabs when necessary 2023-10-26 11:13:39 -04:00
DennisManaa 1a1c542836 Implement automatic translation for ItemList 2023-10-23 10:14:08 +02:00
Yuri Sizov 215e036600 Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
kobewi 825a18e980 Don't remove favorite files in EditorFileDialog 2023-10-18 02:06:01 +02:00
A Thousand Ships a1e47c3a87 Fix shortcut input for `EditorSceneTabs` 2023-10-17 15:49:53 +02:00
Rémi Verschelde 7513ae6d06
Merge pull request #81812 from MewPurPur/zoomies
Incorporate min and max zoom limits into the EditorZoomWidget
2023-10-09 15:31:49 +02:00
MewPurPur 44d782681c Incorporate min and max zoom limits into the EditorZoomWidget 2023-10-07 20:41:59 +03:00
Haoyu Qiu 3006394a69 Fix garbled text in editor toasters 2023-10-06 21:38:34 +08:00
Rémi Verschelde 94377f50b2
Merge pull request #80813 from TokageItLab/rework-animation-manager
Implement `AnimationMixer` as a base class of `AnimationPlayer` and `AnimationTree`
2023-09-29 10:20:16 +02:00
Silc Lizard (Tokage) Renew 1b95827d3e Implement AnimationManager the base class of AnimationPlayer/Tree 2023-09-29 08:23:57 +09:00