summaryrefslogtreecommitdiff
path: root/editor/editor_plugin.cpp
AgeCommit message (Collapse)Author
2023-01-19Merge pull request #71443 from TechnoPorg/fix-resource-conversion-pluginsRémi Verschelde
Make EditorResourceConversionPlugin usable.
2023-01-16Add EditorUndoRedoManager singletonkobewi
2023-01-14Make EditorResourceConversionPlugin usable.TechnoPorg
Previously, EditorResourceConversionPlugin nominally existed in scripting, but there was no way for a user to actually register one. This PR adds methods to EditorPlugin for registering/unregistering EditorResourceConversionPlugins. Additionally, it documents EditorResourceConversionPlugin with descriptions and a basic example.
2023-01-05One Copyright Update to rule them allRémi Verschelde
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".
2022-11-29Use forward-declarations in big editor classestrollodel
2022-11-14Add EditorInterface.get_selected_paths()cespeute
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.
2022-11-14[Editor] Better expose EditorDebuggerPlugin.Fabio Alessandrelli
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).
2022-11-11Use forward-declarations in EditorPlugin where possibletrollodel
2022-11-02Unify usage of undo_redo in editorkobewi
2022-10-31Merge pull request #62416 from Calinou/movie-maker-request-attention-on-finishRémi Verschelde
Request attention on the editor window when done recording a movie
2022-10-19Simplify GDVIRTUAL_CALL callskobewi
2022-10-07Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg
change warnings=all to use /W4.
2022-10-04Rename remaining "Spatial" in Plugins to "Node3D"Micky
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.
2022-09-10Merge pull request #64465 from TokageItLab/bind-after-gui-inputRémi Verschelde
Bind `AfterGUIInput` to GDScript and update document
2022-09-08bind AfterGUIInputSilc Renew
2022-09-07Rename EditorInterface.get_editor_main_control to get_editor_main_screenYuri Sizov
2022-09-01Change Array arguments to TypedArraykobewi
2022-08-29Rename `CanvasItem.update()` to `queue_redraw()`Micky
Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on. Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency. Just a few comments have also been changed to say "redraw". In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
2022-08-22Replace Array return types with TypedArraykobewi
2022-08-22Merge pull request #59564 from KoBeWi/FINALLY,_ULTIMATE_UNDO_REDORémi Verschelde
2022-08-22Add per-scene UndoRedokobewi
2022-08-18Add a method for restarting the editor to EditorInterfaceAaron Franke
2022-08-13Rename EditorPlugin.`*_PROPERTY_EDITOR_*` to `*_INSPECTOR_*`Micky
The name "Inspector" has been adopted for years and is thus more familiar.
2022-07-26Split up editor export code into multiple filesAaron Franke
2022-07-08Add static methods for creating Image and ImageTexturekobewi
2022-06-26Request attention on the editor window when done recording a movieHugo Locurcio
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).
2022-04-27Merge pull request #59393 from techiepriyansh/move-gltf-export-under-scene-menuRémi Verschelde
2022-04-13Import scenes as AnimationLibraryreduz
Added the ability to import scenes as AnimationLibrary * Completes implementation of https://github.com/godotengine/godot-proposals/issues/4296 * Helps if you want to export animations to a separate file (say a GLTF) to avoid re-importing/exporting them every time the model changes. * Helps if you simply want to have animations using a dummy model, which can be shared across multiple models. Creates a secondary scene importer used only for animations. **NOTE**: A new flag for scene importer: EditorSceneFormatImporter.IMPORT_DISCARD_MESHES_AND_MATERIALS has been added, to hint importers that they should skip meshes and animations (and hence make importing faster). It is not implemented in any importer yet, this should be done in a separate PR.
2022-04-12move gltf export under scene menuPriyansh Rathi
2022-02-16Port existing _notification code to use switch statements (part 1/3)jmb462
2022-02-15Editor: Cleanup some includes dependenciesRémi Verschelde
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.
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-07ResourceImporter: Restore default append logic for new importersRémi Verschelde
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.
2022-01-28Improve some method bindings to use specific `Object` subtypesRémi Verschelde
This was made possible by changes to `VariantCaster` which now make it possible to pass any `Object`-derived type as pointer.
2022-01-20Store panels and docks singletons in their own classestrollodel
2022-01-08Allow showing both left and right side panelsHaoyu Qiu
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-08Expose `ScriptEditor::edit` to scriptingRaul Santos
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.
2021-10-15Add scene Post-Import Plugin support.reduz
* 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.
2021-10-07Implemented SkeletonEditorGizmoSilc Renew
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-09-30Rename Node's `filename` property to `scene_file_path` for clarityHugo Locurcio
2021-09-21Add Get Center Method for Rect2/Rect2i and AABB.Anilforextra
2021-08-31Sort palette commands by last usekobewi
2021-08-22Replace BIND_VMETHOD by new GDVIRTUAL syntaxreduz
* 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.
2021-08-15command palette improvementsBhuvan Vemula
2021-08-09Added EditorCommandPaletteBhuvan Vemula
2021-07-18Optimize StringName usagereduz
* 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-06-13Validate parameters when adding pluginsHaoyu Qiu
2021-06-13Fix some virtual methodskobewi