Haoyu Qiu
2f90dfef65
Add missing ETR/TTR markups
...
(cherry picked from commit a7c1f2730f
)
2025-03-12 23:16:21 +01:00
Sébastien Dunne Fulmer
34e97c2b65
Fix a segfault in ConnectDialog if the destination node does not exist
...
(cherry picked from commit ed108fc993
)
2025-03-12 23:02:28 +01:00
Pedro J. Estébanez
a20934c8e4
Optimize enumeration of global classes in create dialog and autocomplete
2025-01-29 09:39:50 +01:00
Haoyu Qiu
bf4e5cca3f
Make editor's shortcut names translated on-site
2024-12-18 13:00:30 +08:00
Rémi Verschelde
08508d2e01
Merge pull request #99700 from hpvb/scene_tree_editor_performance
...
Improve Scene Tree editor performance
2024-12-16 17:16:00 +01:00
Hilderin
4e19ab8afe
Fix connecting a signal with a double click is too difficult
...
Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>
2024-12-14 16:18:34 +03:00
HP van Braam
6f7525c396
Improve Scene Tree editor performance
...
We now cache the Node*<>TreeItem* mapping in the SceneTreeEditor. This
allows us to make targeted updates to the Tree used to display the scene
tree in the editor.
Previously on almost all changes to the scene tree the editor would
rebuild the entire widget, causing a large number of deallocations an
allocations. We now carefully manipulate the Tree widget in-situ saving
a large number of these allocations.
In order to know what Nodes need to be updated we add a
editor_state_changed signal to Node, this is a TOOLS_ENABLED,
editor-only signal fired when changes to Node happen that are relevant
to editor state.
We also now make sure that when nodes are moved/renamed we don't check
expensive properties that cannot contain NodePaths. This saves a lot of
time when SceneTreeDock renames a node in a scene with a lot of
MeshInstances. This makes renaming nodes go from ~27 seconds to ~2
seconds on large scenes.
SceneTreeEditor instances will now also not do all of the potentially
expensive update work if they are invisible. This behavior is turned off
by default so it won't affect existing users. This change allows the
editor to only update SceneTreeEditors that actually in view. In
practice this means that for most changes instead of updating 6
SceneTreeEditors we only update 1 instantly, and the others only when
they become visible.
There is definitely more that could be done, but this is already a
massive improvement. In complex scenes we see an improvement of 10x,
things that used to take ~30 seconds now only take 2.
This fixes #83460
I want to thank KoBeWi, TokisanGames, a-johnston, aniel080400 for
their tireless testing. And AeioMuch for their testing and providing a
fix for the hover issue.
2024-12-12 22:47:05 +01:00
Lukas Tenbrink
b5c31ebb41
Add contains_char() for single-character 'contains' calls.
2024-12-06 20:23:35 +01:00
hakro
274064ae7f
Ignore custom tooltip if its text is empty in signals tab
2024-12-03 20:18:59 +01:00
A Thousand Ships
68f638cf02
Use (r)find_char
instead of (r)find
for single characters
2024-11-17 10:02:18 +01:00
Aaron Franke
562c666e3d
Rename internal Button icon to button_icon to match exposed methods
2024-10-29 16:23:03 -07:00
Hilderin
46edd6df55
Fix script properties reload from external editor
2024-09-14 15:07:53 -04:00
kit
5e1c9d68aa
Extract editor main screen
2024-09-09 11:06:18 -04:00
Rémi Verschelde
466b4b9ff8
Merge pull request #96164 from Giganzo/signal-dialog-align-fix
...
Fix Connect Signal Dialog control alignment
2024-09-08 23:21:36 +02:00
Thaddeus Crews
9853a69144
Implement typed dictionaries
2024-09-04 10:27:26 -05:00
Giganzo
1b7d7034a4
Fix Connect Signal Dialog control alignment
2024-08-27 13:25:26 +02:00
Haoyu Qiu
7187a82cfe
Update Node dock when theme changes
2024-07-03 00:25:21 +08:00
Rémi Verschelde
a50b535988
Merge pull request #93110 from Hilderin/fix-signal-panel-after-connection
...
Fix Can't reopen signals panel immediately after connecting a signal
2024-06-19 10:10:14 +02:00
A Thousand Ships
fbb879debd
[Scene] Add SceneStringNames::text/value_changed
2024-06-19 09:44:38 +02:00
A Thousand Ships
ca18a06ecb
[Scene] Add SceneStringNames::confirmed
2024-06-19 09:40:54 +02:00
A Thousand Ships
d9e2fc74c7
[Scene] Add SceneStringNames::item_selected
2024-06-19 09:39:05 +02:00
Hilderin
64ba2cf3a9
Fix Can't reopen signals panel immediately after connecting a signal #92996
2024-06-18 18:24:40 -04:00
A Thousand Ships
d519715d94
[Scene] Add SceneStringNames::font(_size/_color)
2024-06-18 17:24:27 +02:00
Danil Alexeev
ae737d8cd9
Editor: Hide GDScript internal functions from method selectors
2024-06-05 18:24:59 +03:00
Rémi Verschelde
d522c20186
Merge pull request #92465 from Frefreak/signal-connection-dialog-enhance
...
Make signal connections dialog method picker respect bind/unbind
2024-06-04 10:10:01 +02:00
Rémi Verschelde
9c87e8c7b4
Merge pull request #91953 from AThousandShips/use_normal_sname
...
Use `CoreStringNames::normal` in more places
2024-05-31 14:16:05 +02:00
A Thousand Ships
cade5b88d9
Use CoreStringNames::normal
in more places
2024-05-30 22:57:54 +02:00
A Thousand Ships
755a0efbb6
[Scene] Add SceneStringNames::id_pressed
2024-05-30 22:54:04 +02:00
carsonzhu
989056b85e
make signal connections dialog method picker respect bind/unbind
2024-05-28 17:10:34 +08:00
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
A Thousand Ships
b4c6cc7d82
[Core] Add case-insensitive String::containsn
2024-05-08 12:48:01 +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
Joel Kuntz
94e5bada97
Update ConnectDialog::_filter_method_list to be case insensitive for search string
...
Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-05-06 09:05:57 -03: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
Danil Alexeev
a714cb9f65
Editor: Display deprecated/experimental messages in tooltips
2024-04-18 14:32:04 +03:00
jsjtxietian
4aa5c80c07
Fix connection dialog raise error when it was previously opened in another scene
2024-04-11 12:57:58 +08: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
Haoyu Qiu
f298aaa956
Fix unexpected auto-translation of more editor components
2024-03-28 10:50:57 +08:00
Haoyu Qiu
8cd1ebbd6d
Fix unexpected auto translation of Tree content
2024-03-18 09:31:00 +08:00
Rémi Verschelde
b18942d429
Merge pull request #89405 from KoBeWi/receiver,_do_you_copy
...
Select method name edit when opening connection dialog
2024-03-12 14:23:06 +01:00
passivestar
3199c294f9
Allow connecting signals to existing methods without opening the script editor
2024-03-12 15:50:54 +04:00
kobewi
c1a034297d
Select method name edit when opening connection dialog
2024-03-12 00:51:50 +01:00
Muller-Castro
1638c1b28f
Add const lvalue ref to editor/* container parameters
2024-02-26 15:28:15 -03:00
kobewi
a031911c82
Use check_changed_settings_in_group() everywhere
2024-02-19 21:34:45 +01:00
Rémi Verschelde
ef7c045f1c
Merge pull request #88317 from passivestar/signal-connect-search
...
Add support for search shortcut to signal connection dialog
2024-02-17 00:23:39 +01:00
Paul Joannon
9fa2355cef
Disable signal callback generation in C#
2024-02-14 13:26:45 +01:00
passivestar
c2c791fed2
Add support for search shortcut to signal connection dialog
2024-02-14 11:47:15 +04:00
passivestar
97a77c5193
Add support for search shortcut to all docks
2024-01-22 22:37:59 +04:00
Madalaski
3b9fc45f8c
Fixing a usability issue where the DEL key does not delete connections
2024-01-17 00:51:43 +00:00