summaryrefslogtreecommitdiffstats
path: root/editor/editor_plugin.h
Commit message (Collapse)AuthorAgeFilesLines
* 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".
* Move editor class and plugin registrations to a dedicated filetrollodel2022-11-181-1/+1
|
* Add EditorInterface.get_selected_paths()cespeute2022-11-141-1/+2
| | | | | | | | Exposes the selected paths in the editor filesystem dock. Implements this proposal : https://github.com/godotengine/godot-proposals/issues/2424 Also renamed the old `get_selected_path` to `get_selected_directory` to better match the already existing get_current_path function.
* [Editor] Better expose EditorDebuggerPlugin.Fabio Alessandrelli2022-11-141-2/+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).
* Use forward-declarations in EditorPlugin where possibletrollodel2022-11-111-15/+16
|
* Unify usage of undo_redo in editorkobewi2022-11-021-2/+0
|
* Merge pull request #62416 from Calinou/movie-maker-request-attention-on-finishRémi Verschelde2022-10-311-0/+3
|\ | | | | | | Request attention on the editor window when done recording a movie
| * Request attention on the editor window when done recording a movieHugo Locurcio2022-06-261-0/+3
| | | | | | | | | | | | | | | | | | Recording a movie can take a long time, so the user may not be paying attention to the editor while leaving a movie rendering in the background. This also allows editor plugins to access the state of Movie Maker mode within the editor (and set it).
* | Rename remaining "Spatial" in Plugins to "Node3D"Micky2022-10-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | For EditorNode3DGizmo: - `get_spatial_node` -> `get_node_3d` - `set_spatial_node` -> `set_node_3d` For EditorPlugin: - `add_spatial_gizmo_plugin` -> `add_node_3d_gizmo_plugin` - `remove_spatial_gizmo_plugin` -> `remove_node_3d_gizmo_plugin` Also renames some internal methods for consistency (`forward_3d_draw_over_viewport` & `forward_3d_force_draw_over_viewport` ...). Basically, Spatial has been completely eradicated.
* | Merge pull request #64465 from TokageItLab/bind-after-gui-inputRémi Verschelde2022-09-101-1/+2
|\ \ | | | | | | Bind `AfterGUIInput` to GDScript and update document
| * | bind AfterGUIInputSilc Renew2022-09-081-1/+2
| | |
* | | Rename EditorInterface.get_editor_main_control to get_editor_main_screenYuri Sizov2022-09-071-1/+1
| | |
* | | Change Array arguments to TypedArraykobewi2022-09-011-1/+1
|/ /
* | Replace Array return types with TypedArraykobewi2022-08-221-2/+2
| |
* | Merge pull request #59564 from KoBeWi/FINALLY,_ULTIMATE_UNDO_REDORémi Verschelde2022-08-221-4/+3
|\ \
| * | Add per-scene UndoRedokobewi2022-08-221-4/+3
| | |
* | | Add a method for restarting the editor to EditorInterfaceAaron Franke2022-08-181-0/+1
|/ /
* | Rename EditorPlugin.`*_PROPERTY_EDITOR_*` to `*_INSPECTOR_*`Micky2022-08-131-1/+1
| | | | | | | | The name "Inspector" has been adopted for years and is thus more familiar.
* | Code quality: Fix header guards consistencyRémi Verschelde2022-07-251-1/+1
|/ | | | | Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
* move gltf export under scene menuPriyansh Rathi2022-04-121-0/+2
|
* Remove the EditorNode parameter from EditorPlugins create methodstrollodel2022-02-141-6/+5
| | | | Remove EditorNode usage from the Navigation editor plugin.
* ResourceImporter: Restore default append logic for new importersRémi Verschelde2022-02-071-3/+3
| | | | | | | | This was changed in #56943 to allow adding new importers from plugins that take precedence over built-in ones, but this should be opt-in, not the default behavior. Fixes #57730.
* Improve some method bindings to use specific `Object` subtypesRémi Verschelde2022-01-281-1/+2
| | | | | This was made possible by changes to `VariantCaster` which now make it possible to pass any `Object`-derived type as pointer.
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* Expose `ScriptEditor::edit` to scriptingRaul Santos2021-12-081-0/+1
| | | | | | Exposes a method in `EditorInterface` to open scripts on a specified line and column. This method handles if the internal or the external editor should be used.
* Add scene Post-Import Plugin support.reduz2021-10-151-2/+5
| | | | | | | * New plugin system to control the whole import workflow * Can add options and run code at every import step (general, per node, mesh, animation, material etc.) This constitutes a first version of these plugins. The ability to interact with the import preview dialog will likely be added later on.
* Implemented SkeletonEditorGizmoSilc Renew2021-10-071-2/+8
| | | | Co-authored-by: Lyuma <xn.lyuma@gmail.com>
* Replace BIND_VMETHOD by new GDVIRTUAL syntaxreduz2021-08-221-1/+25
| | | | | | | | | | | * New syntax is type safe. * New syntax allows for type safe virtuals in native extensions. * New syntax permits extremely fast calling. Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`. These will require API rework on a separate PR as they work different than the rest of the functions. Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
* Added EditorCommandPaletteBhuvan Vemula2021-08-091-0/+3
|
* Rename Transform to Transform3D in coreAaron Franke2021-06-031-1/+1
|
* Implement shader cachingreduz2021-05-311-0/+2
| | | | | | | | | | | | * Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
* Provide a way to hook into Inspectors UndoRedo.Gilles Roudière2021-05-041-0/+3
|
* Expose edit_node() for editor pluginskobewi2021-04-121-0/+1
|
* Expose editor scale to the plugin APIYuri Sizov2021-04-051-0/+1
|
* Fix editor always redrawingreduz2021-02-131-0/+4
| | | | | | -Only update rendering settings when project settings change -Fixes the update spinner (and editor rendering) updating all the time. -Added a "project_settings_changed" signal to EditorNode and EditorPlugin
* 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 🎆
* Rename EditorInterface get_editor_viewport to get_editor_main_controlMarcel Admiraal2020-12-191-1/+1
|
* Make tool menu plugins use Callables for callbackkobewi2020-12-161-1/+1
|
* Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-1/+1
| | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* Refactor MethodBind to use variadic templatesreduz2020-10-181-1/+1
| | | | Removed make_binders and the old style generated binders.
* Added inspector_only option to inspect_object in EditorInterface.andriyDev2020-09-231-1/+1
| | | | Updated docs to reflect change to inspect_object.
* Added debugger plugin supportsimpu2020-08-261-0/+4
| | | | | | 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.
* Expose methods to play scene from plugin codeYuri Sizov2020-07-061-0/+7
|
* Add translation parser plugin supportSkyJJ2020-07-021-0/+4
|
* Remove ToolButton in favor of ButtonHugo Locurcio2020-06-191-2/+1
| | | | | | | | | | | ToolButton has no redeeming differences with Button; it's just a Button with the Flat property enabled by default. Removing it avoids some confusion when creating GUIs. Existing ToolButtons will be converted to Buttons, but the Flat property won't be enabled automatically. This closes https://github.com/godotengine/godot-proposals/issues/1081.
* Add a getter and property for the editor distraction-free modeHugo Locurcio2020-06-031-0/+1
|
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-3/+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.
* Port member initialization from constructor to declaration (C++11)Rémi Verschelde2020-05-141-5/+5
| | | | | | | | | | Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
* Replace NULL with nullptrlupoDharkael2020-04-021-1/+1
|
* Renamed 2D and 3D nodes to make their types explicitJuan Linietsky2020-03-271-6/+6
| | | | Fixes #30736.