Commit Graph

789 Commits

Author SHA1 Message Date
Rémi Verschelde e162c07af9
Merge pull request #36920 from Faless/debugger/more_instances
Move Debug menu logic to DebuggerEditorPlugin, allow 4 debug instances
2020-03-09 12:01:14 +01:00
Haoyu Qiu 9ed61a70cc Keeps the filename when marking scene as unsaved 2020-03-09 10:26:57 +08:00
Fabio Alessandrelli 4d623b70d7 Move Debug menu logic to DebuggerEditorPlugin 2020-03-08 22:57:48 +01:00
Thakee Nathees 3275e8488b Fix EditorFolding crash when switching scenes 2020-03-05 18:19:58 +05:30
Rémi Verschelde f742dabafe Signals: Manually port most of remaining connect_compat uses
It's tedious work...

Some can't be ported as they depend on private or protected methods
of different classes, which is not supported by callable_mp (even if
it's a class inherited by the current one).
2020-02-28 14:24:09 +01:00
Rémi Verschelde 01afc442c7 Signals: Port connect calls to use callable_mp
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.

No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
Rémi Verschelde b7b3978684
Merge pull request #36556 from RandomShaper/rework_mutex
Reimplement `Mutex` with C++'s `<mutex>` (plus more)
2020-02-28 00:26:01 +01:00
Aaron Franke b8a79d7530
Make internal editor key order consistent
Godot already displays controls in the order Control+Shift+Alt, so the order used with the bitmask flags should be the same.
2020-02-27 03:32:58 -05: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
Juan Linietsky 33b5c57199 Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.

Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.

For Variant, the float datatype is always 64 bits, and exposed as `float`.

We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.

Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
2020-02-25 12:55:53 +01:00
Rémi Verschelde 2cf6ac6c50 Replace FALLTHROUGH macro by C++17 [[fallthrough]]
This attribute is now part of the standard we target so we no longer
need compiler-specific hacks.

Also enables -Wimplicit-fallthrough for Clang now that we can properly
support it. It's already on by default for GCC's -Wextra.

Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
2020-02-23 00:52:50 +01:00
PouleyKetchoupp 8f5ac3dbfc Fixed flipped scene preview thumbnail
No need to flip the image generated from the viewport texture anymore.
2020-02-21 17:58:05 +01:00
Fabio Alessandrelli cbc450c0e5 Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
Juan Linietsky 69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +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 867d073b98 Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
Rémi Verschelde 282c8dda98
Merge pull request #36066 from timothyqiu/float-step-range
Fixes range hint for default_float_step
2020-02-14 16:17:31 +01:00
Doug Richardson edf907213e
Disable video driver option in editor since switching to GLES2 would
currently cause a crash on restart.

Fixes #36190.
2020-02-13 12:30:10 -08:00
Rémi Verschelde 386968ea97 Remove obsolete GLES3 backend
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.

The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.

Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.

So long, OpenGL driver bugs!
2020-02-13 10:36:44 +01:00
Yuri Roubinsky 516cd821c0 Added high-end (Vulkan) label to some functions in visual shader 2020-02-12 23:17:00 +03:00
Juan Linietsky cf8c679a23 ObjectID converted to a structure, fixes many bugs where used incorrectly as 32 bits. 2020-02-12 14:24:54 -03:00
K. S. Ernest (iFire) Lee f65debaf68 Don't flip screenshot. 2020-02-11 10:10:42 -08:00
Juan Linietsky 2049dec79e Added normalmap guided roughness mipmap generator, and a global roughness limiter. 2020-02-11 12:16:01 +01:00
Juan Linietsky bed8980ca5 Re-implemented screen space ambient occlusion 2020-02-11 12:15:46 +01:00
Juan Linietsky f8b5c5f063 DOF fully implemented, can be edited on the fly. 2020-02-11 12:15:26 +01:00
Juan Linietsky acf0f6c8a7 GIProbes working. 2020-02-11 12:03:20 +01:00
Juan Linietsky 4aea9f74e6 Rewritten StreamTexture for better code reuse, added basis universal support 2020-02-11 12:02:36 +01:00
Juan Linietsky dd3682e5fe Modernized default 3D material, fixes material bugs. 2020-02-11 12:01:24 +01:00
Juan Linietsky 449df8f688 Base 3D engine done, still untested, though. 2020-02-11 11:59:25 +01:00
bruvzg eb48be51db Add static Vulkan loader.
Initial Vulkan support for Windows.
Initial Vulkan support for macOS.
2020-02-11 11:57:11 +01:00
Juan Linietsky e1b3444415 Bugfixes and ability to better specify filter and repeat modes everywhere.
Removes antialiased flag for draw_* methods.
2020-02-11 11:53:28 +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
Michael Alexsander 021fdb1b58 Remove AnimationTreePlayer node 2020-02-10 16:25:50 -03:00
Andrea Catania e6be3f68da - Integrated NavigationServer and Navigation2DServer.
- Added Navigation Agents and Obstacles.
- Integrated Collision Avoidance.

This work has been kindly sponsored by IMVU.
2020-02-10 14:38:52 +01:00
Haoyu Qiu dfe9825e00 Fixes range hint for default_float_step 2020-02-10 15:39:29 +08:00
Marcel Admiraal f0db13502a Remove duplicate WARN_PRINT macro. 2020-02-05 11:13:24 +01:00
Marcel Admiraal 5af3b4ca27 Remove duplicate ERR_PRINT macro. 2020-02-05 11:13:24 +01:00
PouleyKetchoupp 9c4a6cf745 Fixed Inspector update when a node is renamed
Whenever any node is renamed, EditorNode::_edit_current() is called and it resets plugins used for current edited properties. This change forces the inspector to update even though the same object is edited, to make sure all plugins are restored properly from unfolded properties/resources/etc.

Fixes #32832
2020-01-24 18:12:05 +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 017b7de2df EditorNode: Delay addon init to NOTIFICATION_READY
Fixes #25635.
2020-01-13 15:02:11 +01:00
Haoyu Qiu 047d66cc6f Fixes the New Window option in macOS dock menu 2020-01-13 08:58:12 +08: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
Rémi Verschelde 86a732b136
Merge pull request #34680 from Calinou/editor-export-nonzero-exit-code-error
Exit the editor export process with a non-zero exit code on error
2019-12-30 18:07:36 +01:00
Rémi Verschelde 388318ad4c
Merge pull request #34614 from qarmin/dont_create_preview_of_empty_scene
Don't create preview of empty scene.
2019-12-30 17:13:07 +01:00
Hugo Locurcio 79494992e4
Exit the editor export process with a non-zero exit code on error
This closes #34672.
2019-12-30 14:34:06 +01:00
Rafał Mikrut 542945f5f0 Don't create preview of empty scene. 2019-12-26 09:15:36 +01:00
Haoyu Qiu 078c0d75f2 Cleans up headers included in editor_node.h 2019-12-24 21:46:05 +08:00
Haoyu Qiu d53c392b34 Centers Dock Position text 2019-12-23 09:37:36 +08:00
Haoyu Qiu 7a9c337dfe Makes more strings in editor translatable
* File type names in file dialogs
* Layout option names
* Visual shader editor UI
2019-12-16 16:41:07 +08:00
Haoyu Qiu 6f178a2061 Fixes infinite loop when switching editor 2019-12-11 13:27:21 +08:00
Rémi Verschelde 2845e6a21a
Merge pull request #34040 from qarmin/unused_variable_more_precise_numbers
Removed unused variables, add some constants numbers
2019-12-10 08:25:31 +01:00
Rafał Mikrut ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
Haoyu Qiu 93f00c0303 Fixes prompt closes the wrong scene when exiting 2019-12-06 21:46:01 +08:00
PouleyKetchoupp dd552494eb Debug menu in editor doesn't hide on checkbox toggle
Fixes #33850
2019-11-25 16:25:54 +01:00
Rémi Verschelde 41634199c8 EditorNode: Improve tooltip for pause button
Closes #14742.
2019-11-14 11:44:20 +01:00
PouleyKetchoupp 824bc3fed8 Keep focus on the top-most node for multi-selection in scene tree
Makes behavior consistent with selecting/deselecting single nodes and fixes a regression about the focused node being lost when multi-selecting.

Fixes #33332
2019-11-10 09:37:51 +01:00
PouleyKetchoupp 133014c3fb Fixed errors when saving scene with a shrunk viewport
Handle viewport size larger than preview size but very close, when the ratio was 1 the size ended up being 0.

Fixes #33497
2019-11-09 21:16:19 +01:00
Michael Alexsander 36c4fd8935 Make the editor dimming smarter 2019-10-31 16:58:53 -03:00
Rémi Verschelde 35944aebde
Merge pull request #33019 from volzhs/class_icon
Resize custom class icon
2019-10-23 21:48:40 +02:00
volzhs 9131f70d8a Resize custom class icon 2019-10-24 03:55:56 +09:00
Rémi Verschelde 2d6cf9cc56
Merge pull request #33009 from ebert83/fix_editor_save_layout
Fix layout saving error
2019-10-23 15:31:48 +02:00
Thomas Ebert Hansen d62ab4ab10 Fix layout saving error
As a result of commit b49226e085 FileAccess::open no longer returns ERR_CANT_OPEN if the file cannot be found/opened.
Instead check against ERR_FILE_NOT_FOUND or ERR_FILE_CANT_OPEN.
2019-10-23 15:02:51 +02:00
Fabio Alessandrelli 2ae3631318 Fix EditorNode.get_editor_theme
EditorNode was not correctly setting the class memeber when creating the
theme, using a local variable instead.
Theme is now created before registering exporters (as they might need it).
2019-10-23 10:59:03 +02:00
Mark Riedesel 6a85614d86 expose EditorSpinSlider to GDScript 2019-10-20 11:54:35 -04:00
Michael Alexsander Silva Dias 4689ece741 Minor visual adjustment in drag preview of the scene and file tree editors 2019-09-30 13:36:49 -03:00
Ruslan Mullayanov 4d5298ed7d Fixed unable to open project data folder
Removed `default` case to prevent hiding such errors in the future.

Fixes #31939.
2019-09-26 08:17:07 +02:00
Rémi Verschelde dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin 17732fe698 Added some obvious errors explanations 2019-09-25 10:28:50 +02:00
Stefano Coratti c46d172533 Fix #32263 - Hide Console Window stores opposite value 2019-09-23 22:06:34 +02:00
Rémi Verschelde fb12f54721
Merge pull request #32074 from KoBeWi/ninja_reload
Preserve folding when sub-scene is changed
2019-09-23 10:32:02 +02:00
Hugo Locurcio ba566dff2e
Distinguish editor-originating messages in the editor log
This fades out messages originating from the editor to make messages
printed by the project stand out more.

This also tweaks wording in some editor messages for consistency.
2019-09-20 01:59:02 +02:00
Tomasz Chabora 7e89ec2cd8 Preserve folding when sub-scene is changed 2019-09-10 14:43:46 +02:00
Rémi Verschelde 1046a9d143
Merge pull request #31927 from willnationsdev/csv-import
Add CSV import without translation.
2019-09-04 16:02:39 +02:00
willnationsdev 7ac0239afa Add CSV import without translation. 2019-09-03 19:37:20 -05:00
Rémi Verschelde 75cbcb596a
Merge pull request #30982 from iwek7/feature/skip_breakpoints
Adds skip-breakpoints feature
2019-09-04 01:31:08 +02: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
iwek7 617797c47c Adds skip-breakpoints feature 2019-09-03 20:49:09 +02:00
Twarit d98e944a19 Add VCS editor plugin UI elements to editor 2019-09-03 20:16:30 +05:30
Bhupendra Aole 1de3ec911f Default ColorPicker color mode setting
There is a new setting for Default ColorPicker color mode in Editor Settings->Interface->Inspector. Initially this setting will be RGB. Editor ColorPicker will always start with mode defined in this settiing.
Fixes #30755 and #30754
2019-08-31 00:34:33 -04:00
Rémi Verschelde ca652bbc47
Merge pull request #25353 from azagaya/master
Use also invisible tabs to calculate minimum size of tab container
2019-08-30 13:58:37 +02:00
azagaya fa6f86b886 Make tab containers in editor, project settings, and export dialog, to use hidden tabs for min size computation. 2019-08-30 08:33:32 -03:00
Rémi Verschelde 57c60cdc35
Merge pull request #31706 from akien-mga/android-custom-build-improvements
Buildsystem and workflow improvements to the new Android custom builds
2019-08-30 11:55:34 +02:00
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
Rémi Verschelde b1f294b3ac Android: Improve dialogs about custom build template
The language didn't make it clear that it's installing a *source* template
to the project folder, for later use when compiling custom APKs.

Fixes #28736.
2019-08-29 13:22:20 +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
Rémi Verschelde 51def4dab9
Merge pull request #31523 from nekomatata/show-warning-loading
EditorNode::show_warning displays a console warning during project loading
2019-08-21 10:05:24 +02:00
PouleyKetchoupp a735afac95 EditorNode::show_warning displays a console warning instead of failing during project load
Fixes #31522
2019-08-21 09:05:30 +02:00
Rémi Verschelde 7b37321ae3
Merge pull request #31499 from nekomatata/fix-new-project-metadata
Setting project metadata doesn't fail when project_metadata.cfg doesn't exist
2019-08-21 08:54:32 +02:00
PouleyKetchoupp b49226e085 Support for file not found in ConfigFile::Load and handle a few specific cases
EditorSettings::set_project_metadata: creates project_metadata.cfg if it doesn't exist
EditorPlugin::get_config: removed (not used)

Fixes #31444
2019-08-21 08:32:55 +02:00
Rémi Verschelde 4e760096a9
Merge pull request #31443 from Calinou/editor-use-minimum-window-size
Define a minimum window size in the editor and project manager
2019-08-20 12:42:58 +02:00
Rémi Verschelde cc9f2a2d8b
Merge pull request #31401 from aaronfranke/no-init-scripts
Allow plugins to not have an init script
2019-08-17 22:09:17 +02:00
Hugo Locurcio c0eee235c4
Define a minimum window size in the editor and project manager
This prevents most UI elements from overlapping or being cut off
as a result of the window being too small.

This closes #20669.
2019-08-17 21:56:59 +02:00
Braden Bodily 71d71d55b5 Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'
Condensed some if and ERR statements. Added dots to end of error messages

Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?),
core/os/memory.cpp,
drivers/png/png_driver_common.cpp,
drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-17 12:33:15 +02:00
Aaron Franke ceb61fb784
Allow plugins to not have an init script 2019-08-15 17:52:07 -04:00
Tomasz Chabora cedee8281b Allow to create scene from FileSystem dock 2019-08-15 19:47:21 +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
Hugo Locurcio 9e1c23a353
Reorganize various menus for consistency and conciseness
- Clean up the recent scripts dialog to match the recent scenes dialog
- Add "..." at the end of shortcuts that cause a modal dialog to appear

This closes #31148.
2019-08-13 11:52:10 +02:00
Rémi Verschelde f5f16e57fd
Merge pull request #30804 from hbina/fix_issue_30160
Fixed crash when making subresource unique in inspector dock
2019-08-07 11:43:16 +02:00
Hanif Bin Ariffin befc2c0894 add forgotten calls to inspector_dock->update(...).
I believe many calls to the said function was mistakenly left out leading to InspectorDock having a pointer to deleted values.
As such, this commit introduces many such calls to inspector_dock where I believe is appropriate...
2019-08-06 18:02:36 -04:00
Rémi Verschelde 52cfb5f579
Merge pull request #31121 from willnationsdev/plugin-select-editor
Let EditorPlugins set editor/distraction-free mode
2019-08-06 16:43:49 +02:00
Will Nations 2e3264259b Let EditorPlugins set editor/distraction-free mode 2019-08-06 08:48:00 -05:00
Rémi Verschelde fa35a73f0a
Merge pull request #31116 from sparkart/add_quit_shortcut
Add Shortcut Settings for Quitting Editor
2019-08-05 22:02:11 +02:00
Emmanuel Barroga 8e4ae09639 Add Shortcut Settings for Quitting Editor
Adds the ability to change the shortcut keys in Editor Settings for quitting the editor.
2019-08-05 11:53:42 -07:00
merumelu dcd551bf78 Remove Editor dependency from SceneTree 2019-08-05 19:46:23 +02: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 648313ab8a Don't add unsaved scene to previous scenes list 2019-07-31 23:49:16 +02:00
Rémi Verschelde 7d76f3b393
Merge pull request #30944 from YeldhamDev/bottom_panel_icon_simplify
Make the expand icon in the bottom panel always be the same
2019-07-30 09:27:33 +02:00
Michael Alexsander Silva Dias d6988b7d2b Make the expand icon in the bottom panel always be the same 2019-07-29 18:08:05 -03:00
Kanabenki a8ac739a5e Add Undo Close Tab option in tabs context menu 2019-07-27 16:51:24 +02:00
Rémi Verschelde e4ec59b6ae
Merge pull request #30763 from Calinou/editor-add-version-info
Display version information in the editor at all times
2019-07-26 19:08:42 +02:00
Hugo Locurcio 6f6a9d9c09
Simplify editor settings related to window dimming
Only a single checkbox is now exposed to control whether the editor
window should be dimmed when opening a popup. The main use case
for disabling it is picking colors from the editor window while
a popup is open.
2019-07-26 15:29:04 +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
Rémi Verschelde d844e30614 Inspector: Make default float step configurable
Also allow lifting the decimal step formatting with a hint range step
of 0. A new `range_step_decimals()` is added for this to avoid breaking
compatibility on the general purpose `step_decimals()` (which still
returns 0 for an input step of 0).

Supersedes #25470.
Partial fix for #18251.
2019-07-23 17:31:38 +02:00
Michael Alexsander Silva Dias 9be52a5e0f Move "Open Screenshot" from the "Editor" menu to the editor settings 2019-07-23 02:05:29 -03:00
Rémi Verschelde d15cf7b672
Merge pull request #30576 from qarmin/lgtm_coverage
Changed some code reported by LGTM and Coverity
2019-07-20 12:00:13 +02:00
qarmin 6cbaf7662f Changed some code showed in LGTM and Coverage 2019-07-20 08:09:57 +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
Nils ANDRÉ-CHANG 7a1b399df2 Use switch instead of if statement 2019-07-15 17:21:34 +01: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
Bojidar Marinov e222615e97
Fix editor remaining dimmed after certain actions
Fixes #30368
2019-07-06 17:37:40 +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
Rémi Verschelde 133a07ed2d
Merge pull request #30327 from Calinou/editor-dim-window-quitting
Dim the editor window while it's quitting
2019-07-05 09:44:43 +02:00
Hugo Locurcio 492c3196ae
Dim the editor window while it's quitting
This makes it clearer that the editor window is busy while it's quitting
(which can take a while on slower PCs).
This also makes it feel more responsive to user input.

Note that the effect is only visible if
"Interface > Editor > Quit Confirmation" is disabled in the
Editor Settings, as the quit confirmation already makes
the editor window dim while quitting.
2019-07-04 23:47:47 +02: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
Fabio Alessandrelli c798173332 Fix editor crash when StreamPeerSSL is unavilable.
The fix for EditorNode is a bit hacky, but the handling of the buttons
and features there is hacky too (based on enums that might not reflect
the actual state).
2019-07-02 15:34:34 +02:00
Rémi Verschelde 98879be276
Merge pull request #27510 from fire/screenshot_editor
Add editor screenshot on control - f12.
2019-07-02 11:30:16 +02:00
K. S. Ernest (iFire) Lee 05de0eafab Add editor screenshot on control - f12. 2019-07-01 13:39:21 -07:00
Rémi Verschelde d17eac735c
Merge pull request #29815 from NilsIrl/plus_file_1
Replace ` + "/" + ` with `String::file_add()`
2019-07-01 12:06:35 +02:00
Chaosus da7cf8b49f Added convertor from VisualShader to Shader 2019-06-28 19:54:43 +03: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
Nils ANDRÉ-CHANG d2833d4f4d Replace ` + "/" + ` with `String::file_add()` 2019-06-23 13:33:50 +01: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
Rémi Verschelde d2e8b5bd18
Merge pull request #29493 from YeldhamDev/enhance_fix_feature_profile
Enhancements and fixes for the editor feature profile
2019-06-19 00:14:05 +02:00
Rémi Verschelde b5459d9f0a
Merge pull request #29830 from NilsIrl/remove_useless
Remove useless cast from c-string to String
2019-06-17 11:00:01 +02:00
Rémi Verschelde e864237f1a i18n: Fix extract.py support for new TTRC
Also make compatible with Python 3.
2019-06-16 22:02:44 +02:00
Nils ANDRÉ-CHANG 640ed6baba Remove useless cast from c-string to String 2019-06-16 13:12:01 +01:00
Michael Alexsander Silva Dias 484127c88f Enhancements and fixes for the editor feature profile 2019-06-12 21:46:53 -03:00
Rémi Verschelde 971b5160c6
Merge pull request #29306 from qarmin/small_code_fixes
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-12 12:49:21 +02:00
Rémi Verschelde 6d16f2f053 Fix error macro calls not ending with semicolon
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +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
qarmin 8245db869f Small fixes to unrechable code, possibly overflows, using NULL pointers 2019-06-03 21:52:50 +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
Tomasz Chabora 847a74d588 Fix crash when inherit in rootless unsaved scene 2019-05-31 02:08:37 +02:00