summaryrefslogtreecommitdiffstats
path: root/editor/debugger/script_editor_debugger.h
Commit message (Collapse)AuthorAgeFilesLines
* Pace debugger draw requestsPedro J. Estébanez2023-02-071-0/+1
|
* Better error display in debugger panelPaul Joannon2023-01-271-0/+2
| | | | | | - Use the right stack frame info as title of the error. - Use the actual C# exception type as error for exceptions raised from C#. - Show the right language instead of always **C++ Error**.
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | 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".
* Merge pull request #68709 from MewPurPur/instance-begone-part3Rémi Verschelde2022-11-161-1/+1
|\ | | | | | | Remove more instances of 'instance' being used as a verb
| * Remove more instances of 'instance' being used as a verbVolTer2022-11-161-1/+1
| |
* | [MP] Move engine and editor profilers to a plugin.Fabio Alessandrelli2022-11-141-3/+0
| | | | | | | | Also refactor the editor plugin out of the ReplicationEditor.
* | [Editor] Better expose EditorDebuggerPlugin.Fabio Alessandrelli2022-11-141-10/+3
|/ | | | | | | | | | | | | | | Now splitted into two classes: - EditorDebuggerPlugin (RefCounted). - EditorDebuggerSession (abstract). This allows the EditorPlugin to be in control of the debugger plugin lifecycle, be notified when sessions are created, and customize each of them independently. We should slowly transition the various profilers and captures in ScriptEditorDebugger to their own plugins, and decouple ScriptEditorDebugger from it's UI part (making it the "real" EditorDebuggerSession potentially dropping the wrappers).
* Add the button pressed to some signals in Treetrollodel2022-05-211-2/+2
|
* Replace most uses of Map by HashMapreduz2022-05-161-4/+4
| | | | | | | | | | | | * 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!
* Zero initialize all pointer class and struct membersRémi Verschelde2022-04-041-39/+39
| | | | | This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
* Remove VARIANT_ARG* macrosreduz2022-03-091-1/+1
| | | | | | | | * Very old macros from the time Godot was created. * Limited arguments to 5 (then later changed to 8) in many places. * They were replaced by C++11 Variadic Templates. * Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard. * Also added a dereference check for Variant*. Helped catch a couple of bugs.
* Editor: Cleanup some includes dependenciesRémi Verschelde2022-02-151-1/+0
| | | | | | | | | | | Removes some unnecessary includes from `editor_node.h`, and instead add those where they're used. Removes unnecessary `editor_node.h` includes in various editor classes. Renames `dynamicfont` to `dynamic_font` in a couple files. Misc cleanup while jumping through that rabbit hole.
* Remove most EditorNode constructor parameters and fieldstrollodel2022-02-141-3/+1
|
* Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker2022-02-121-1/+1
|
* Add global breakpoint listPaulb232022-01-151-0/+9
|
* Add option to filter the stack variables of GDScript debuggerYuri Roubinsky2022-01-121-0/+1
|
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* Fix debugger tab which don't resetting after pressing clear buttonYuri Roubinsky2021-11-151-1/+3
|
* Implemented advanced features of DAPEv1lbl0w2021-08-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Respect client "supportsVariableType" capability Implement "breakpointLocations" request Implement "restart" request Implement "evaluate" request Fix error messages not being shown, and improved wrong path message Removed thread option and behavior Implemented detailed inspection of complex variables Fix "const"ness of functions Added a configurable timeout for requests Implement Godot custom data request/event Implement syncing of breakpoints Added support for debugging native platforms
* Implemented initial DAP supportEv1lbl0w2021-08-021-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implemented "output" event Refactored "seq" field generation Prevent debugging when editor and client are in different projects Removed unneeded references to peer on the parser Refactored way to detect project path Implemented "setBreakpoints" request Fix double events when terminating from client Refactored "stopped" event Implemented "stopped" with breakpoint event Implemented "stackTrace", "scopes" and "variables" request Report incoming number of stack dump variables Implemented proper reporting of scopes and variables from stack frames Prevent editor from grabbing focus when a DAP session is active Implemented "next" and "stepIn" requests Implemented "Source" checksum computing Switched expected errors from macros to silent guards Refactored message_id Respect client settings regarding lines/columns behavior Refactored nested DAP fields Implement reporting of "Members" and "Globals" scopes as well Fix error messages not being shown, and improved wrong path message
* Add a menu action to open C++ source on GitHub in the editor debuggerHugo Locurcio2021-04-191-0/+5
| | | | | This helps user find back the source code where the error/warning was emitted from.
* Update copyright statements to 2021Rémi Verschelde2021-01-011-2/+2
| | | | | | | | | | | | | | 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 🎆
* Added debugger plugin supportsimpu2020-08-261-0/+15
| | | | | | Changes: * EngineDebugger is exposed to gdscript. Game side of communication can be implemented through it. * EditorDebuggerPlugin is added which handles the editor side of communication.
* Add override keywords.Marcel Admiraal2020-07-101-1/+1
|
* Added Custom Performance Monitor and feature to read intermediate values of ↵simpu2020-06-291-10/+2
| | | | | | | | | | | | | | | | Monitor Custom monitors can be added/removed/checked using `Performance.add_custom_monitor`/`Performance.remove_custom_monitor`/`Performance.has_custom_monitor` The value can be viewed in the `Monitor` tab of Debugger. Text before `/` is used to categorize the custom monitor. `EditorPerformanceProfiler` class is created to separate logic from `ScriptEditorDebugger` User can click on the graph of monitors to read the value at that point. Graph includes intermediate base lines.
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-1/+0
| | | | | | | | | | | | | | Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
* Add ability to export VRAM usage as CSVPedro J. Estébanez2020-04-241-0/+7
|
* Replace NULL with nullptrlupoDharkael2020-04-021-2/+2
|
* Style: Set clang-format Standard to Cpp11Rémi Verschelde2020-03-171-1/+1
| | | | | | | | | | For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
* Update editor debugger to new remote debugger.Fabio Alessandrelli2020-03-081-6/+9
| | | | | Shared RemoteDebuggerPeer code between client and server. Move editor profilers inside editor/debugger folder.
* Threaded networking for editor debugger.Fabio Alessandrelli2020-03-081-23/+11
|
* Fix visuals of the new debugger editorMichael Alexsander2020-02-221-0/+1
|
* Huge Debugger/EditorDebugger refactor.Fabio Alessandrelli2020-02-211-0/+270