summaryrefslogtreecommitdiff
path: root/editor/editor_plugin.cpp
AgeCommit message (Collapse)Author
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
2021-06-12Consistently prefix bound virtual methods with _kobewi
2021-06-03Rename Transform to Transform3D in coreAaron Franke
2021-05-31Implement shader cachingreduz
* 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
2021-05-04Provide a way to hook into Inspectors UndoRedo.Gilles Roudière
2021-04-12Expose edit_node() for editor pluginskobewi
2021-04-05Expose editor scale to the plugin APIYuri Sizov