Commit Graph

395 Commits

Author SHA1 Message Date
Rémi Verschelde b5334d14f7
Update copyright statements to 2021
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 🎆
2021-01-01 20:19:21 +01:00
Rémi Verschelde 76d4fab3f3
Merge pull request #44524 from madmiraal/rename-editor-viewport
Rename EditorInterface get_editor_viewport to get_editor_main_control
2020-12-28 14:54:50 +01:00
Marcel Admiraal 5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Marcel Admiraal e1128431de Rename EditorInterface get_editor_viewport to get_editor_main_control 2020-12-19 14:17:42 +00:00
kobewi 889f5e44ef Make tool menu plugins use Callables for callback 2020-12-16 20:23:51 +01:00
Hugo Locurcio 57dcc83152
Rename the TextureProgress node to TextureProgressBar
Advantages:

- When searching for "progressbar", you'll see both nodes in the
  search results.
- More consistent with Button/TextureButton.
2020-12-14 21:35:13 +01:00
Rémi Verschelde 114f97ff11
Merge pull request #44128 from KoBeWi/🧹
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Tomasz Chabora 2c048ea164 Cleanup unused engine code 2020-12-09 12:12:36 +01:00
Rémi Verschelde 9a8e123593
Fix connections to CanvasItem and Tabs signals
Follow-up to #44188 and #44189.
2020-12-09 12:04:02 +01:00
Rafał Mikrut e1811b689b Initialize class/struct variables with default values in platform/ and editor/ 2020-12-02 16:09:11 +01:00
Yuri Sizov 49f6dc5004 Expose methods to play scene from plugin code 2020-07-06 17:39:16 +03:00
Stijn Hinlopen c3d9f12a10 Remove unused class PaneDrag 2020-07-02 13:50:31 +02:00
rileylyman 4285211f40 implement generic filename disambiguation
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-26 16:12:08 -07:00
Hugo Locurcio 31b7f02a29
Remove ToolButton in favor of Button
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-19 20:49:49 +02:00
Hugo Locurcio cc1859efed
Add a getter and property for the editor distraction-free mode 2020-06-03 22:18:49 +02:00
Rémi Verschelde 0ee0fa42e6 Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14 21:57:34 +02:00
Rémi Verschelde 0be6d925dc Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
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-14 16:54:55 +02:00
Rémi Verschelde 1c18be1cc9
Merge pull request #38637 from Calinou/editor-rename-revert-scene-bind
Rename the editor action "Revert Scene" to "Reload Saved Scene"
2020-05-13 12:58:40 +02:00
Fabio Alessandrelli d79e28c302 Support multiple debug protocols. 2020-05-12 15:09:13 +02:00
Hugo Locurcio 2962819d1c Rename the editor action "Revert Scene" to "Reload Saved Scene"
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-05-12 14:42:09 +02:00
Hugo Locurcio 2f6f029a75 Remove Request Docs button in the script editor due to various issues
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-04-02 14:07:03 +02:00
Juan Linietsky eaae4b6408 Renamed 2D and 3D nodes to make their types explicit
Fixes #30736.
2020-03-27 14:54:04 +01:00
bruvzg 15a9f94346 Add macOS DisplayServer implementation.
Change global menu to use Callable, add support for check items and submenus.
2020-03-26 16:24:05 +01:00
Juan Linietsky 4758057f20 Working multiple window support, including editor 2020-03-26 15:49:40 +01:00
Juan Linietsky 9e08742de8 Added a Window node, and made it the scene root.
Still a lot of work to do.
2020-03-26 15:49:38 +01:00
Rémi Verschelde cb282c6ef0 Style: Set clang-format Standard to Cpp11
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-17 07:36:24 +01:00
Fabio Alessandrelli 4d623b70d7 Move Debug menu logic to DebuggerEditorPlugin 2020-03-08 22:57:48 +01:00
Pedro J. Estébanez 18fbdbb456 Reimplement Mutex with C++'s <mutex>
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-26 20:40:10 +01:00
Fabio Alessandrelli cbc450c0e5 Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
Juan Linietsky 3205a92ad8 PoolVector is gone, replaced by Vector
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
Juan Linietsky 3f335ce3d4 Texture refactor
-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-02-11 11:53:26 +01:00
Rémi Verschelde a565c93aeb Export: Properly disable resource preview thread
Fixes #26857.
Fixes #34433.
Fixes #34826.
2020-01-14 11:34:02 +01:00
Rémi Verschelde 7c29ce4375 Export: Add dedicated --export-pack option to export data pack
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-08 14:57:46 +01:00
Rémi Verschelde 5011afcb6a Export: Improve usability of command line interface
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-07 14:25:56 +01:00
Rémi Verschelde a7f49ac9a1 Update copyright statements to 2020
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.
2020-01-01 11:16:22 +01:00
Haoyu Qiu 078c0d75f2 Cleans up headers included in editor_node.h 2019-12-24 21:46:05 +08:00
Haoyu Qiu 0693718164 Makes more editor strings translatable
* "Add" button text in Groups Editor
* "Receiver Method" in Connect Signal Dialog
* "Play Mode" in Animation State Machine Editor
* "Mesh Library" button text in Mesh Library editor plugin
* Compose Array node button texts in Visual Script
* Various button texts in TileSet Editor
* Various Run Script errors
2019-12-21 20:58:17 +08:00
Michael Alexsander 36c4fd8935 Make the editor dimming smarter 2019-10-31 16:58:53 -03:00
volzhs 9131f70d8a Resize custom class icon 2019-10-24 03:55:56 +09:00
Rémi Verschelde 4967f303f5
Merge pull request #31461 from IronicallySerious/add-vcs-integration
VCS integration for Godot Editor
2019-09-04 01:09:24 +02:00
Twarit d98e944a19 Add VCS editor plugin UI elements to editor 2019-09-03 20:16:30 +05:30
Hugo Locurcio ef9f234d2b
Tweak the editor window dimming intensity, remove dim fade animation
The fade animation tended to give the editor a "sluggish" feel
when running at lower FPS (which is common in heavy 3D scenes),
so it's probably a good idea to remove it.

This also makes dimming less intense (50% instead of 60%).
2019-08-29 15:54:08 +02:00
bruvzg db6d4352ea
[macOS] Add methods to modify global and dock menus. Add ability to open multiple editor/project manager instances, recent/favourite project list to project manager dock menu and opened scene list to editor dock menu. 2019-08-26 16:45:49 +03:00
Tomasz Chabora cedee8281b Allow to create scene from FileSystem dock 2019-08-15 19:47:21 +02:00
Rémi Verschelde 6c607c3564
Merge pull request #31266 from IAmActuallyCthulhu/pr/remove-redundant-author-comments
Remove redundant author doc comments
2019-08-14 13:45:54 +02:00
Rémi Verschelde 8995d95da0
Merge pull request #31347 from neikeq/monodevelop-addin
C#: Add Ide Connection library and server for the editor
2019-08-14 11:39:41 +02:00
IAmActuallyCthulhu 82b9557803
Remove redundant author doc comments 2019-08-12 04:26:38 -05:00
Will Nations 2e3264259b Let EditorPlugins set editor/distraction-free mode 2019-08-06 08:48:00 -05:00
Ignacio Etcheverry 0b94203a79 C#: Add Ide Connection library and server for the editor
This will be used for communicating between the Godot editor and external IDEs/editors, for things like opening files, triggering hot-reload and running the game with a debugger attached.
2019-08-04 01:57:53 +02:00
Kanabenki a8ac739a5e Add Undo Close Tab option in tabs context menu 2019-07-27 16:51:24 +02:00
Hugo Locurcio dee9e9dc62
Display version information in the editor at all times
This closes #27811.
2019-07-25 21:05:36 +02:00
Bojidar Marinov 4f72178868
Make custom types more subtle and more useful
Implements #6067 (aaronfranke's idea)
Fixes #26980
2019-07-19 22:33:58 +03:00
Bojidar Marinov eed2251f17
Add a way to copy the text of warnings shown in the editor
Closes #20662
2019-07-09 21:11:31 +03:00
Rémi Verschelde 595763e0a0
Revert "Add editor menu to open the project data "user://" location." 2019-07-05 12:37:42 +02:00
Rémi Verschelde 3676100964
Merge pull request #30336 from fire/open_project_data
Add editor menu to open the project data "user://" location.
2019-07-05 11:40:28 +02:00
K. S. Ernest (iFire) Lee 44df7c8b9b Add editor menu to open the project data "user://" location. 2019-07-05 01:07:11 -07:00
Hugo Locurcio acbd0fea97
Use CheckBoxes in the editor instead of CheckButtons when applicable
CheckButtons should only be used if toggling them has an
immediate effect. Otherwise, CheckBoxes should be used.
2019-07-04 17:32:59 +02:00
K. S. Ernest (iFire) Lee 05de0eafab Add editor screenshot on control - f12. 2019-07-01 13:39:21 -07:00
Thomas ten Cate 05b67514a6 Make visibility of update spinner editor-wide, hidden by default
- Make visibility of the spinner and "update always" option editor-wide,
  rather than per-project metadata.
- Add options "Show Update Spinner" and "Update Continuously" under
  Editor Settings > Interface > Editor. Both options are false by
  default.
- Rename some variables and constants to be more consistent and clearer:
  "update always" -> "update continuously", "update changes" -> "update
  when changed", "update menu" -> "update spinner", "circle" -> "update
  spinner".

Fixes #23738.
2019-06-25 14:57:44 +02:00
Rémi Verschelde 30383a1cdc
Merge pull request #29376 from hilfazer/editor_layouts_dialog
Saving/deleting editor layouts dialog with layout list
2019-06-23 23:56:52 +02:00
hilfazer 9986cf7005 editor save/delete layout dialog with layout list 2019-06-21 19:38:04 +02:00
Luka Dornhecker ad504b926f Add option to toggle console window on Windows
This is an editor setting and its value can also be toggled
using an entry in the Editor toolbar. The console will still
appear briefly when starting the project manager or editor,
as it's still compiled as console application.

Does not impact exported games, which will still run without
console in release and with console in debug mode.

A project setting or export option could be added to disable
it in debug mode if there's demand for it, but that would
greatly reduce the usefulness of debug builds if Windows users
can no longer report error and crash messages.

Fixes #17889.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2019-06-20 16:55:52 +02:00
Hein-Pieter van Braam-Stewart 0ac7715a27 Fix moving and renaming files
This commit fixes several issues related to moving scenes and resources
in an open project.

* Don't try to reload scenes while not all scenes are updated yet.
* Don't use the UndoRedo system to update non-user initiated editor
state.
* Resave scenes after moving files and updating resource path(s).
2019-06-04 16:24:32 +02:00
Rémi Verschelde a69436aa4e
Merge pull request #27309 from KoBeWi/main_scene_on_android
Ensure main scene is set when running on device
2019-05-31 16:55:46 +02:00
Tomasz Chabora 9e18e94dc1 Ensure main scene is set when running on device 2019-05-31 16:02:57 +02:00
Rémi Verschelde 80f7a19569
Merge pull request #28789 from mitchcurtis/quick-open
Add Quick Open dialog
2019-05-28 20:45:52 +02:00
Mitch Curtis ffb6aab1f4 Add Quick Open dialog
This dialog searches every Resource-derived file in the project, making
it extremely useful for searching everything from audio files to scripts.

Unlike the Quick Open Script and Quick Open Scene dialogs, you don't need
to think about the type of file you're opening, just its name.

Shift + Alt + O was chosen to match the existing shortcuts for
Quick Open Scene and Quick Open Script.
2019-05-28 18:27:18 +02:00
Michael Alexsander Silva Dias dcf27c71b7 Make possible to create inherited scenes via the RMB menu in the FileSystem dock 2019-05-11 05:13:29 -03:00
Michael Alexsander Silva Dias 699140000c Revert "Merge pull request #28715 from YeldhamDev/inherent_scene_close_empty"
This reverts commit 0f8356d439, reversing
changes made to 7b7a664a97.
2019-05-08 00:46:40 -03:00
Michael Alexsander Silva Dias 648cc7c0f5 Make editor close empty scene when creating an inherited one
Fixes #28654.
2019-05-06 02:01:01 -03:00
Rémi Verschelde f05dce3ee2
Merge pull request #28262 from KoBeWi/gotta_close_them_all
Add Close Others/Right/All for scene tabs
2019-04-25 22:46:46 +02:00
Tomasz Chabora 6169e755aa Add Close Others/Right/All for scene tabs 2019-04-25 18:14:36 +02:00
Juan Linietsky a20235aeb0 Add ability to edit editor feature profiles
Allows enabling/disabling parts of the editor and storing/loading profiles for that.
2019-04-08 19:18:51 -03:00
Juan Linietsky dd03dcbd5a Android now (optionally) builds the template when exporting
Added new way to create add-ons
Removed old way to create add-ons
2019-04-07 15:46:52 -03:00
Rémi Verschelde 5881c6505b
Merge pull request #27414 from KoBeWi/drop_the_dir
Allow to drop folders onto editor
2019-04-22 12:01:32 +02:00
Tomasz Chabora c0da243f04 Allow to drop folders onto editor 2019-03-26 13:33:38 +01:00
Pedro J. Estébanez 9c3ddf05cb Revert accidental commits
This reverts commit fb37284c02.
This reverts commit 4db0f51b9a.
2019-03-20 21:43:55 +01:00
Pedro J. Estébanez 4db0f51b9a Create live view dock [wip] 2019-03-20 20:44:43 +01:00
Juan Linietsky 472c94ce3e Remove the "Open Editor" button, it will open automatically. 2019-03-04 16:50:21 -03:00
Juan Linietsky 9ca6ffa341 Save resources even if no scene is present, closes #26273 2019-02-27 20:00:40 -03:00
Eric Rybicki 747b9ac870 Fix editor crash after disabling plugin that used forward_spatial_gui_input
Fixes #26124.
2019-02-25 17:11:04 +01:00
Juan Linietsky 7f63b0e8cd Added a workaround to avoid crashes due to how TileSet editor works, fixes #23672
Also fixed a few uninitialized memory variables.
2019-02-22 17:42:29 -03:00
Michael Alexsander Silva Dias 3a70020c98 Cleanup editor's top bar of old nodes 2019-02-11 02:18:54 -02:00
Juan Linietsky 5bd3f72878 Properly warn about the effects of changing an import type, as well as force editor restart. Fixes #23874 2019-01-25 17:23:56 -03:00
Juan Linietsky e8d31cc765 Perform a cleaner exit for resource preview, fixes #24206 2019-01-17 09:09:39 -03:00
Rémi Verschelde b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Rémi Verschelde 9df7ed59fb
Merge pull request #19501 from Zylann/custom_loaders
Added basic support for custom resource savers and loaders
2018-12-16 14:26:56 +01:00
Marc Gilleron 065e2670af Added basic support for custom resource savers and loaders 2018-12-15 05:34:53 +00:00
Michael Alexsander Silva Dias bc9cb0e6cd Cleanup some unused controls in the editor's top bar 2018-12-09 17:51:30 -02:00
Rémi Verschelde e4a2003b98
Merge pull request #22323 from williamd1k0/ignore-main-scene
Editor: Skip loading main scene if restore_scenes_on_load is used
2018-12-07 15:08:34 +01:00
Juan Linietsky ab9bbce311 Disable progress dialog on export from command line, stab at fixing #24031 2018-11-28 08:46:26 -03:00
Juan Linietsky 616b91b498 Added test to avoid saving cyclic scene instancing, fixes #9686 2018-11-27 18:56:31 -03:00
Rémi Verschelde da31d63f76
Merge pull request #23680 from YeldhamDev/unified_help_search_revived
Unified Class and Reference Search 2: Resurrection
2018-11-22 16:16:52 +01:00
Juan Linietsky da0ec37aa9 Reworked how non-imported resources are reloaded on change, fixes #19852 2018-11-20 21:48:48 -03:00
Ray Koopa fddffa9eb8 Unify editor class and reference search
Co-authored-by: Michael Alexsander Silva Dias <michaelalexsander@protonmail.com>
2018-11-20 20:52:27 -02:00
JFonS dbca3b81ba Add Save option to resource property menu 2018-11-18 15:17:04 +01:00
Juan Linietsky f2e54057ae -Moved EditorDefaultValue to ClassDB, made it core
-Removed one and zero hints for properties, replaced by default value
2018-11-08 11:30:59 -03:00
Pedro J. Estébanez d2b0f69a64 Let user fix dependencies in resources 2018-11-02 04:44:40 +01:00
Juan Linietsky 4761c6bb7b Automatically unfold sections of properties that someone else edited (no local info exists). 2018-10-29 17:39:17 -03:00
Juan Linietsky e647342140 Moved folding outside the resource files, now saved outside the project. 2018-10-29 16:37:09 -03:00
Juan Linietsky 6cc116d415 Ability to revert any property, not just from inherited scenes or scripts. 2018-10-29 12:25:56 -03:00
William Tumeo 62218ea41b Editor: Skip loading main scene if restore_scenes_on_load is used 2018-10-02 15:41:16 -03:00
Juan Linietsky f2ed26d71e Reflection probe support in GLES2 back-end. 2018-09-28 16:42:47 -03:00
Rémi Verschelde 76ca46d1f4
Merge pull request #22225 from groud/fix_draw_on_viewport
Fixes drawing of the 2D plugins on the 3D view
2018-09-20 21:45:16 +02:00
Rémi Verschelde c884b55ff0 EditorNode: Reorder and cleanup initial dock setup 2018-09-20 18:35:38 +02:00
Rémi Verschelde 69ee33896a
Merge pull request #21426 from groud/add_files_to_tree_view
Add files to tree view
2018-09-20 18:32:13 +02:00
groud 5172642c32 Fixes drawing of the 2D plugins on the 3D view 2018-09-18 20:00:07 +02:00
willnationsdev 5436abefe4 Refactor editor icon retrieval 2018-09-14 09:27:56 -05:00
groud d7b638ed32 Replace the -show in filesystem- button by a RMB entry 2018-09-14 10:22:13 +02:00
groud b2633a97b9 Add thumnails to the tree view 2018-09-14 10:14:33 +02:00
Rémi Verschelde 2f20836e52
Merge pull request #19837 from willnationsdev/plugin-utilities
Add PluginConfigDialog.
2018-08-15 11:42:51 +02:00
Juan Linietsky 0fcc28b6f3
Merge pull request #15269 from ianb96/context_menu_improvements
Context Menu Improvements
2018-07-29 12:31:20 -03:00
Will Nations ff604414a4 Add PluginConfigDialog, EditorPluginSettings GUI 2018-07-26 10:12:05 -05:00
Ian 1bb13e95a8 context menu improvements 2018-07-26 08:58:35 -04:00
Hugo Locurcio b4f6b20273
Add menu buttons to open the project and editor data folders 2018-07-25 23:41:35 +02:00
Juan Linietsky c69de2ba46 -Project/Editor settings now use new inspector
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
2018-07-19 19:02:04 -03:00
Rémi Verschelde 13239cd4cc Export: Properly reload preset when opening dialog
Fixes #20119 where newly installed templates were not detected.

Also fix a bug with preset deletion where it would attempt to
edit an already removed preset. For this I made it so that
ItemList::deselect_all() also resets `current` to -1, as a manual
ItemList::deselect(idx) already does.
2018-07-18 13:49:34 +02:00
Juan Linietsky af7d8fb844 Added small icon to expand the bottom panel (and shortcut too) 2018-07-15 22:38:14 -03:00
Max Hilbrunner dacd9c51b1
Merge pull request #19849 from willnationsdev/expose-script-create-dialog
Expose ScriptCreateDialog to EditorPlugin
2018-07-04 22:37:27 +02:00
willnationsdev 2a6c591957 Expose ScriptCreateDialog to EditorPlugin 2018-07-04 09:41:12 -05:00
Max Hilbrunner fb838bf1b4
Merge pull request #19192 from marcelofg55/undo_redo_msg
Add a message when there is nothing to Undo or Redo
2018-07-03 17:32:16 +02:00
Juan Linietsky 0a1c1c660f -Added AnimationGraphPlayer (still missing features)
-Added ability to edit resources from built-in inspector (wip, needs testing and feedback)
2018-06-18 22:12:08 -03:00
Rémi Verschelde 3f09cac267 Fix shortcuts using KEY_MASK_CTRL instead of KEY_MASK_CMD
KEY_MASK_CMD is automatically replaced by KEY_MASK_CTRL on non-OSX
and KEY_MASK_META (Command key) on OSX, so it should be used for all
Ctrl/Cmd + key shortcuts.

Also de-hacked the macOS shortcut replacements with proper conditional
definition. Not tested on macOS, cannot judge if they are good shortcuts.

Fixes #10761.
2018-06-11 07:53:28 +02:00
Juan Linietsky b659fd6d74 Entirely new (and much improved) animation editor. 2018-06-07 12:52:00 -03:00
Marcelo Fernandez e9db8964e3 Add a message when there is nothing to Undo or Redo 2018-05-27 12:53:52 -03:00
Daniel J. Ramirez 9a365a1216 Moved inspector functionality from EditorNode to InspectorDock. 2018-05-17 16:29:26 -05:00
Juan Linietsky 005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
ianb96 9ac3c474b8 Drag to rearrange Tabs and TabContainer 2018-04-08 20:23:37 -04:00
Rémi Verschelde 74382dbfbb
Merge pull request #17576 from Mr-Slurpy/master
Allow users to add items to Tool menu
2018-03-23 11:08:03 +01:00
Mr-Slurpy 9da18f3974 Added tool menu functions in EditorPlugin 2018-03-17 14:41:50 -04:00
Poommetee Ketson 2de1dfa42f Update icons when theme changed 2018-02-25 23:04:16 +07:00
Nathan Warden 4bfb504c2f Added an auto quit and auto build flag to the command line options. 2018-02-19 16:22:55 -05:00
Will Nations dd6313710e Enable EditorPlugin to add/remove autoloads 2018-02-14 20:15:57 -06:00
Rémi Verschelde e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Juan Linietsky f3ad14224e -Add lightmapper
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Rémi Verschelde f041d2e8ec
Merge pull request #13233 from Krakean/add_eidtorinspector_collapseexpand_v2
Inspector: Implemented a collapse/expand all (v2)
2017-11-26 20:57:59 +01:00
Rémi Verschelde dc3509b2aa
Merge pull request #13259 from Paulb23/restore_scenes_on_startup_issue_2385
Restore scenes on startup, issue 2385
2017-11-26 20:16:06 +01:00
Paulb23 76a53aa328 Restore scenes on startup, issue 2385 2017-11-24 23:32:54 +00:00
Pedro J. Estébanez 3f31925b18 Universalize draw-over API for EditorPlugins
- Now it is usable from both `CanvasItem` and `Spatial` editors.
- `EditorPlugin` API changes:
 - `forward_draw_over_canvas()` becomes `forward_draw_over_viewport()`.
 - `update_canvas()` becomes `update_overlays()`, which now triggers the update of every overlay on top of any 2D or 3D viewports present. Also now it returns the number of such viewports, which is useful whenever you need to know the number of draw-over calls you'll get.
 - New: `[set/is]_force_draw_over_forwarding_enabled()` to force overlaying regardless it handles the current object type, in a similar fashion as `[set/is]_input_event_forwarding_always_enabled`. This kind of overlay is also on top of those for regular handled node types.
 - New: `forward_force_draw_over_canvas()`, which is the callback that gets called for plugins that enable forced overlaying.
2017-11-24 21:24:15 +01:00
Dmitry Koteroff aa20a84aa9 Implemented a collapse/expand all feature request for Inspector (issue #9427) via popup of "Object properties" button.
Editor Settings->Interface->Editor: added "Expand All Properties" option. Off by default.

Cosmetics fixes due to @Reduz notes.
2017-11-24 14:08:44 +03:00
Ian f8e8b7d1a2 add scene button and tab scrolling 2017-11-18 20:31:51 -05:00
George Marques b96ee28acd
Add a print handler for the editor output panel 2017-11-16 21:57:02 -02:00
Daniel J. Ramirez 2932cc79ee Update meshes when reimporting,
Save scene preview even when not doing save and play.
2017-11-12 13:41:44 -06:00
Daniel J. Ramirez 8cf0d6ceb4 Some fixes and improvements.
Changed FileDialogs for EditorFileDialogs in EditorNode.
Updated CheckButton.
2017-11-10 16:45:08 -06:00
MillionOstrich f6ca9d34a2 Improve file/folder drag preview on filesystem dock
Added icons for files/folders in drag preview
Fixed folders getting an empty string label
Don't show "1 more file(s)" label instead of the file
Added "more folders" case if moving folders exclusively
Merged drag_files and drag_files_and_dirs to reduce code duplication
Simplified get_drag_data_fw and removed commented out code
2017-11-03 21:39:53 +00:00
Gilles Roudiere fc02605b49 Fixes snapping and replaces the _draw_canvas by forward_canvas_draw 2017-10-18 00:01:59 +02:00
Juan Linietsky 3237e05c36 Ability to convert from SpatialMaterial to ShaderMaterial 2017-09-22 09:20:52 -03:00
volzhs cd81ef4d38 Show button name always in main toolbar 2017-09-20 16:03:52 +09:00
Rémi Verschelde c74bab66aa Merge pull request #11274 from Rubonnek/keep-argument-names-consistent
Renamed function arguments to keep them consistent between declaration and implementation
2017-09-17 12:53:48 +02:00
Rémi Verschelde 2d4f6ef0bf Apply clang-format again to recent changes
Also add missing copyright headers.

[ci skip]
2017-09-16 19:48:45 +02:00
Wilson E. Alvarez 072e379ffe Renamed function arguments to keep them consistent between declaration and implementation 2017-09-14 13:49:15 -04:00
Juan Linietsky 7e3c5043c1 Warn the user that changes to resources will be lost when editing imported or instanced resources from scenes. 2017-09-14 10:39:47 -03:00
toger5 45d57ccf28 fixed hover line for menu button 2017-09-04 18:06:13 +02:00
Juan Linietsky d39e79e7ec Fix issues regarding reload of resources in imported scenes. Closes #10017 2017-08-31 18:57:44 -03:00
Juan Linietsky 6d41ceea99 Merge pull request #10771 from neikeq/pr-improve-build-callbacks
Improve build callbacks
2017-08-29 20:12:04 -03:00
Ignacio Etcheverry c18b7046c6 Improve build callbacks
- Build callbacks now return bool to determine if the build was successful. If the build fails, the editor won't run the game.
- Makes sure build callbacks are called after saving the scene ("Save Before Running" option).
2017-08-29 23:59:26 +02:00
Poommetee Ketson 6bb290f6a7 EditorNode: enhance open scene error dialog 2017-08-29 07:09:47 +07:00
Juan Linietsky d23f323cde -Moved script run to editor, removed from project
-fixed to code completion
-fix shader crash bug reported by tagcup
2017-08-27 19:04:19 -03:00
Rémi Verschelde 7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Rémi Verschelde 565600e844 Cleanup tons of obsolete commented out code
Mostly in EditorNode, dropping some obsolete editor plugins and also a
cleanup of ProjectSettings/EditorSettings.
2017-08-26 17:47:57 +02:00
Juan Linietsky dd7145b778 -Split EditorPlugin into EditorPlugin and EditorInterface
-Added EditorInterface to EditorScript
-Added functions to save the scene to EditorInterface
2017-08-26 10:33:07 -03:00
Rémi Verschelde 13f879587d Merge pull request #10254 from marcelofg55/master
Added notification const NOTIFICATION_WM_ABOUT
2017-08-22 00:56:31 +02:00
Marcelo Fernandez aae29c7a0e Added notification const NOTIFICATION_WM_ABOUT 2017-08-17 11:28:45 -03:00
Rémi Verschelde b1ecaaa22b Merge pull request #10307 from Rubonnek/update-argument-names
Updated function argument names
2017-08-16 17:17:56 +02:00
Ruslan Mustakov ad457976fc Enable command-line export
The syntax is identical to what it was in 2.1, but now you specify
preset name instead of platform name.
2017-08-14 20:15:06 +07:00
Wilson E. Alvarez 428f03cf06 Updated function argument names 2017-08-12 15:12:49 -04:00
Poommetee Ketson dd6cb0b404 Fix !save_each_scene saving scenes with no filename
When save_each_scene is false, only scenes that have been saved at
least once are saved. But EditorNode tries to save scenes with no
filename too (they're never saved), so it crashes.
2017-07-26 18:57:34 +07:00
Poommetee Ketson 20d36bf226 Move About dialog to editor_about.cpp 2017-07-23 00:14:44 +07:00
Juan Linietsky 25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Poommetee Ketson 4c4969f639 EditorNode: remove obsolete comments in constructor 2017-07-18 20:04:20 +07:00
Jakub Grzesik 29c2aabdaf ability to reposition scene tabs with drag & drop 2017-07-10 10:31:15 +02:00
Poommetee Ketson da2de8932c About: add thirdparty license info 2017-07-06 14:42:47 +07:00
Poommetee Ketson a7ff7af8ae EditorNode: mark opened deleted scenes as unsaved 2017-06-30 00:55:29 +07:00
Poommetee Ketson a9367ce6bc EditorNode: enhance save/quit dialog 2017-06-27 03:04:47 +07:00
Poommetee Ketson 1453d67145 EditorNode: enhance quit dialog 2017-06-25 08:04:34 +07:00
Poommetee Ketson 14fa4190b3 EditorNode: add Save/Discard/Cancel dialog 2017-06-25 08:04:34 +07:00
Thomas Herzog 6b93455b6b Merge pull request #9099 from kubecz3k/plugin-camera-expose
EditorPlugin can request user inputs from editor 3d view
2017-06-19 22:43:33 +02:00
volzhs fc2fe7ebd1 Enhance scene tabs
- show scene thumbnail on hover
- resize if has many tabs
- show full scene file name with current edited scene
- can be customized EditorSettings > Interface > Scene Tab
- close scene with mouse middle button
2017-06-16 13:21:05 +09:00
Unknown d8b65b1657 EditorPlugin can request user inputs from editor 3d view 2017-06-12 17:55:15 +02:00
Juan Linietsky bb20f230ad -Added .hdr format support
-Added default environment editor setting
-Added environment created by default in new projects
-Removed default light and ambient from spatial editor, to make the editor more PBR compliant
2017-05-28 21:48:05 -03:00
Nuno Donato 7661cb5a62 Added an help menu
Also renamed the "tutorials" button in the script editor to be consistent with the help menu entry.
Fixed #8921
2017-05-26 16:20:33 +01:00
Nuno Donato 78781355ac Join text menus on the top-left, move shortcut buttons to new location 2017-05-24 22:08:07 +01:00
Juan Linietsky 5b3709d309 Removal of InputEvent as built-in Variant type..
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
Rémi Verschelde 231511b2a6 Merge pull request #8631 from volzhs/editor-theme-custom
New customizable editor theme
2017-05-20 07:16:11 +02:00
Andreas Haas 3be8a94868
Editor: Make "open 2d/3d/script editor" shortcuts configurable.
Also adds shortcuts for opening the AssetLib and for switching to the next/prev editor.
2017-05-18 18:36:16 +02:00
volzhs bb81293047 New customizable editor theme 2017-05-09 17:46:54 +09:00
Ramesh Ravone 204d3ccf5f
Separate fullscreen state for scene & script editor 2017-04-26 17:43:35 +05:30
Nuno Donato 2025672e7b Removed the deprecated Import menu from the main editor. 2017-04-12 13:32:22 +01:00
Rémi Verschelde df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Juan Linietsky b5a06cecff Export template management dialog.
Missing download (need to discuss this!)
2017-03-21 08:42:06 -03:00
Andreas Haas 9080232f17
Editor: Dim UI when a WindowDialog is shown.
Darkens the editor on WindowDialog popup.

This adds the following new Editor settings:

- interface/dim_editor_on_dialog_popup (true) # Enable/Disable editor dimming
- interface/dim_amount (0.6) # Percentage of how much the editor will be darkened (0-1)
- interface/dim_transition_time # The duration (in seconds) of the color blending effect (0-1), 0 is instant.

Please test this thoroughly, I haven't yet seen a case where it fails to work properly but I'm sure I didn't test all
windows of the editor :P
2017-03-06 20:14:41 +01:00
Rémi Verschelde 5dbf1809c6 A Whole New World (clang-format edition)
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?

I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon

A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format

A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde 49c065d29c Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00