summaryrefslogtreecommitdiff
path: root/editor/editor_node.h
AgeCommit message (Collapse)Author
2021-05-07Rework the TileSet resource and TileMap nodes:Gilles Roudière
- Move most properties from TileMap to TileSet, - Make TileSet more flexible, supporting more feature (several collision layers, etc...), - Fusion both the TileMap and TileSet editor, - Implement TileSetSources, and thus a new way to index tiles in the TileSet, - Rework the TileSet and TileMap editors completely, - Implement an editor zoom widget (and use it in several places)
2021-04-28Make it possible to copy the Godot version identifier by clicking itHugo Locurcio
This closes #24317.
2021-03-22Improved 3D Scene ImporterJuan Linietsky
* Added option for importers to show an Advanced settings dialog * Created advanced settings dialog for Scene Importer * Cleaned up importers (remove many old/unused options) * Added the ability to customize every node, material, mesh and animation individually * Saving to animations and meshes to files is now a manual process, making it more predictable * Added the ability for materials to be replaced by external files (or to be made external, up to you). * When doubleclicking an impoted scene in the filesystem dock, it automatically shows the import settings instead of asking to open it. WARNING: Lightmap UV unwrap is not working, it needs to be re-made.
2021-02-18Merge pull request #45617 from RandomShaper/modernize_atomicsRémi Verschelde
Modernize atomics (and fix `volatile`)
2021-02-18Modernize atomicsPedro J. Estébanez
- Based on C++11's `atomic` - Reworked `SafeRefCount` (based on the rewrite by @hpvb) - Replaced free atomic functions by the new `SafeNumeric<T>` - Replaced wrong cases of `volatile bool` by the new `SafeFlag` - Platform-specific implementations no longer needed Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2021-02-18Merge pull request #45943 from KoBeWi/YEEEETRémi Verschelde
Remove Merge From Scene
2021-02-13Fix editor always redrawingreduz
-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
2021-02-13Remove Merge From Scenekobewi
2021-02-10Merge pull request #31747 from KoBeWi/scene_stalkingRémi Verschelde
Detect external modification of scenes
2021-02-09Detect external modification of project.godotkobewi
2021-01-29Modernize ThreadPedro J. Estébanez
- Based on C++11's `thread` and `thread_local` - No more need to allocate-deallocate or check for null - No pointer anymore, just a member variable - Platform-specific implementations no longer needed (except for the few cases of non-portable functions) - Simpler for `NO_THREADS` - Thread ids are now the same across platforms (main is 1; others follow)
2021-01-16Detect external modification of scenesTomasz Chabora
2021-01-06Merge pull request #44950 from reduz/shader-debuggerRémi Verschelde
Added ability to visualize native shaders
2021-01-06Added ability to visualize native shadersreduz
2021-01-06Made save dialog open immediately when running unsaved scene.Eric M
Previously there was an unneeded confirmation dialog.
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-12-28Merge pull request #44524 from madmiraal/rename-editor-viewportRémi Verschelde
Rename EditorInterface get_editor_viewport to get_editor_main_control
2020-12-28Rename empty() to is_empty()Marcel Admiraal
2020-12-19Rename EditorInterface get_editor_viewport to get_editor_main_controlMarcel Admiraal
2020-12-16Make tool menu plugins use Callables for callbackkobewi
2020-12-14Rename the TextureProgress node to TextureProgressBarHugo Locurcio
Advantages: - When searching for "progressbar", you'll see both nodes in the search results. - More consistent with Button/TextureButton.
2020-12-09Merge pull request #44128 from KoBeWi/🧹Rémi Verschelde
Cleanup unused engine code
2020-12-09Cleanup unused engine codeTomasz Chabora
2020-12-09Fix connections to CanvasItem and Tabs signalsRémi Verschelde
Follow-up to #44188 and #44189.
2020-12-02Initialize class/struct variables with default values in platform/ and editor/Rafał Mikrut
2020-07-06Expose methods to play scene from plugin codeYuri Sizov
2020-07-02Remove unused class PaneDragStijn Hinlopen
2020-06-26implement generic filename disambiguationrileylyman
A static function is added to EditorNode which allows for filename disambiguation given a list of filenames and the corresponding list of absolute paths for those files. This function is then used to disambiguate scene and script tabs in the editor.
2020-06-19Remove ToolButton in favor of ButtonHugo Locurcio
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.
2020-06-03Add a getter and property for the editor distraction-free modeHugo Locurcio
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
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.
2020-05-13Merge pull request #38637 from Calinou/editor-rename-revert-scene-bindRémi Verschelde
Rename the editor action "Revert Scene" to "Reload Saved Scene"
2020-05-12Support multiple debug protocols.Fabio Alessandrelli
2020-05-12Rename the editor action "Revert Scene" to "Reload Saved Scene"Hugo Locurcio
This option can be used to workaround various issues with stuff not reloading properly when changes are made. The option was renamed to clarify the fact that it actually reloads the scene saved on the filesystem.
2020-04-02Remove Request Docs button in the script editor due to various issuesHugo Locurcio
The Request Docs button is partly responsible for layout overflow issues on narrow displays, such as #31133. It also tended to attract spam and low-effort issues that were difficult to act upon. A "Send Docs Feedback" menu option has been added to replace it.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-26Add macOS DisplayServer implementation.bruvzg
Change global menu to use Callable, add support for check items and submenus.
2020-03-26Working multiple window support, including editorJuan Linietsky
2020-03-26Added a Window node, and made it the scene root.Juan Linietsky
Still a lot of work to do.
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
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`.
2020-03-08Move Debug menu logic to DebuggerEditorPluginFabio Alessandrelli
2020-02-26Reimplement Mutex with C++'s <mutex>Pedro J. Estébanez
Main: - It's now implemented thanks to `<mutex>`. No more platform-specific implementations. - `BinaryMutex` (non-recursive) is added, as an alternative for special cases. - Doesn't need allocation/deallocation anymore. It can live in the stack and be part of other classes. - Because of that, it's methods are now `const` and the inner mutex is `mutable` so it can be easily used in `const` contexts. - A no-op implementation is provided if `NO_THREADS` is defined. No more need to add `#ifdef NO_THREADS` just for this. - `MutexLock` now takes a reference. At this point the cases of null `Mutex`es are rare. If you ever need that, just don't use `MutexLock`. - Thread-safe utilities are therefore simpler now. Misc.: - `ScopedMutexLock` is dropped and replaced by `MutexLock`, because they were pretty much the same. - Every case of lock, do-something, unlock is replaced by `MutexLock` (complex cases where it's not straightfoward are kept as as explicit lock and unlock). - `ShaderRD` contained an `std::mutex`, which has been replaced by `Mutex`.
2020-02-21Huge Debugger/EditorDebugger refactor.Fabio Alessandrelli
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
2020-01-14Export: Properly disable resource preview threadRémi Verschelde
Fixes #26857. Fixes #34433. Fixes #34826.
2020-01-08Export: Add dedicated --export-pack option to export data packRémi Verschelde
The previous behavior relying on the provided extension was problematic on macOS since .zip is the main extension used for the full project export (binary + data pack). We add a dedicated `--export-pack` command line option to define when only the data pack should be exported. Its extension will still be inferred from the path. Fixes #23073.
2020-01-07Export: Improve usability of command line interfaceRémi Verschelde
I'm barely scratching the surface of the changes needed to make the --export command line interface easy to use, but this should already improve things somewhat. - Streamline `can_export()` templates check in all platforms, checking first for the presence of official templates, then of any defined custom template, and reporting on the absence of any. Shouldn't change the actual return value much which is still true if either release or debug is usable - we might want to change that eventually and better validate against the requested target. - Fix discrepancy between platforms using `custom_package/debug` and `custom_template/debug` (resp. `release`). All now use `custom_template`, which will break compatibility for `export_presets.cfg` with earlier projects (but is easy to fix). - Use `can_export()` when attempting a command line export and report the same errors that would be shown in the editor. - Improve error reporting after a failed export attempt, handling missing template and invalid path more gracefully. - Cleanup of unused stuff in EditorNode around the export workflow. - Improve --export documentation in --help a bit. Fixes #16949 (at least many of the misunderstandings listed there). Fixes #18470.
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.