Commit Graph

57 Commits

Author SHA1 Message Date
Thaddeus Crews c3fdf82602 Merge pull request #117892 from jaydensipe/debugger-object-id-no-more
Use class name instead of Object ID in `Debugger`
2026-04-01 18:10:09 -05:00
Rgeditv1 5ddc922f4a feat: Display Node name in the remote debugger inspector title for single selected Node objects. =)
Signed-off-by: Rgeditv1 <rgeditv1@protonmail.com>
2026-03-30 13:56:56 -04:00
Jayden Sipe 8331515457 Use class name instead of Object ID in Debugger 2026-03-27 20:23:38 -04:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Jayden Sipe 23edf0d4d9 Hide property groups from the "Members" section in debugger 2026-02-25 22:02:49 -05:00
Yufeng Ying 37164e28f0 Remove typed_dictionary.h include 2026-02-19 13:28:06 +08:00
Thaddeus Crews e1c8e6cfb6 Merge pull request #108208 from YeldhamDev/remote_class_name_fix
Show custom class name in the remote inspector
2026-02-16 10:19:26 -06:00
Chris Cranford 9cba4ab7ab Fix typed dictionary hint string 2026-02-05 18:44:49 -05:00
Lukas Tenbrink 1d840aae3a Remove sky.h include from environment.h, to speed up compile time. 2026-01-30 00:05:55 +01:00
Michael Alexsander 6862edcede Move RuntimeNodeSelect to its own files 2026-01-29 11:02:25 -03:00
Michael Alexsander 442dd8a1ee Show custom class name in the remote inspector 2025-12-08 11:12:01 -03:00
Michael Alexsander 31efc7eefa Fix error when editing multifield values inside arrays and dictionaries 2025-10-13 13:29:32 -03:00
ydeltastar 7c31b8f6ea Fix Evaluator's format issues caused by special characters in the expression 2025-07-31 12:22:17 -03:00
A Thousand Ships f11aff3841 Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
Michael Alexsander 96e9670963 Fix problems with scripts and metadata in remote objects 2025-06-13 10:57:59 -03:00
kit b45d45e4ce Fix debugger inspector minimum size 2025-06-12 17:52:43 -04:00
Michael Alexsander d01d40490f Fix regressions regarding multiple remote object selection 2025-03-24 18:07:12 -03:00
Michael Alexsander 5c66129e62 Allow to select multiple remote nodes at runtime 2025-03-11 12:35:41 -03:00
A Thousand Ships 466590d0ec Use get_slicec instead of get_slice for single character splitters 2025-03-08 20:36:37 +01:00
A Thousand Ships a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
kobewi 645abdbb80 Add expression evaluater to debugger (REPL)
Co-authored-by: rohanrhu <rohanrhu2@gmail.com>
2024-10-01 15:36:09 +02:00
rune-scape 154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07: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
Chia-Hsiang Cheng 8da66412f6 Avoid retrieving the object ID of a Nil variable 2023-08-04 22:38:43 +08:00
Juan Linietsky 5e512b705e Support threads in the script debugger
* This implementation adds threads on the side of the client (script debugger).
* Some functions of the debugger are optimized.
* The profile is also now thread safe using atomics.
* The editor can switch between multiple threads when debugging.

This PR adds threaded support for the script language debugger. Every thread has its own thread local data and it will connect to the debugger using multiple thread IDs.
This means that, now, the editor can receive multiple threads entering debug mode at the same time.
2023-07-26 12:06:45 +02:00
Rémi Verschelde d95794ec8a One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Markus Sauermann 3b14f0334c Remove redundant Variant-types initializations 2022-11-14 19:35:19 +01: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
Pavel Pletnev 770cd6764e Fix editing of remote objects in the inspector 2022-08-02 23:15:03 +03:00
Hugo Locurcio 829c824755 Require ScriptInstance to be valid in the editor debugger
This fixes an issue with visual scripts spamming error messages
in the editor when running the project with the remote scene tree
visible.
2022-07-25 14:29:47 +02:00
Rémi Verschelde c8ce7e34e2 i18n: Misc fixes translation strings
Adds some translator comments to solve some questions raised on Weblate.
2022-06-08 12:57:54 +02:00
reduz 45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Aaron Record 900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
reduz 746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Hugo Locurcio 180e5d3028 Remove RES and REF typedefs in favor of spelled out Ref<>
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
Hendrik Brucker 314430b868 Cleanup EditorNode and EditorData
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-03-30 20:12:26 +02:00
jmb462 dcd2a92af3 Port existing _notification code to use switch statements (part 1/3) 2022-02-16 11:38:24 +01:00
Anilforextra adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45
Rémi Verschelde 387f2744f7 Merge pull request #56719 from Chaosus/gds_debugger_filter 2022-01-14 16:12:53 +01:00
Yuri Roubinsky eba047eff5 Merge pull request #52710 from Jummit/fix-debug-tooltips 2022-01-12 22:03:52 +03:00
Yuri Roubinsky 49db87ab3d Add option to filter the stack variables of GDScript debugger 2022-01-12 15:01:53 +03:00
Rémi Verschelde fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Raul Santos b642c32dfb Skip script property in remote object property list 2021-12-01 21:21:58 +01:00
Lightning_A c63b18507d Use range iterators for Map 2021-09-30 15:09:12 -06:00
Jummit 1260735ee6 Show correct debug tooltips for existing variables 2021-09-15 19:46:53 +02:00
Aaron Franke 4e6efd1b07 Use C++ iterators for Lists in many situations 2021-07-23 17:38:28 -04:00
reduz 6631f66c2a Optimize StringName usage
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.

This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
Rémi Verschelde b5334d14f7 Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
PouleyKetchoupp 01802074a0 Fix dialog spam when inspecting MeshInstance from model file
Avoid load_scene for built-in resources to make sure we don't
open a scene tab and prompt for model file editing.

Load scene as regular resource instead and store the reference to keep
the dependency until the remote inspector cache is cleared.
2020-05-22 21:50:16 +02:00