Commit graph

9617 commits

Author SHA1 Message Date
Rémi Verschelde
33c7f52f36
Merge pull request #58169 from megalobyte/update-notificatin-if-to-switch-batch-B 2022-02-16 16:39:23 +01:00
megalobyte
8824b6c5e9 Update if == NOTIFICATION_* to switch statements to match coding style 2022-02-16 08:44:37 -05:00
Rémi Verschelde
b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
jmb462
dcd2a92af3 Port existing _notification code to use switch statements (part 1/3) 2022-02-16 11:38:24 +01:00
Rémi Verschelde
c4c29728a3
i18n: Sync editor translations with Weblate
Minor proofreading of new OSX export strings.

(cherry picked from commit 9f09251027)
2022-02-16 10:08:40 +01:00
kobewi
547786650f Automatically select source of the picked tile 2022-02-16 00:39:00 +01:00
Rémi Verschelde
11572c6e30
Editor: Cleanup some includes dependencies
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-15 14:54:15 +01:00
Rémi Verschelde
1d910b1e58
Merge pull request #57863 from Calinou/editor-use-anchors-metadata-no-redundant 2022-02-15 14:41:27 +01:00
Rémi Verschelde
6d708dfd6a
Merge pull request #57329 from Ev01/tileset-editor-minimum-zoom 2022-02-15 14:20:22 +01:00
Rémi Verschelde
760a95e86a
Merge pull request #57877 from bruvzg/subpixel_gl_pos 2022-02-15 13:58:38 +01:00
Rémi Verschelde
78a767edb3
Merge pull request #35679 from Calinou/doc-add-xml-schema 2022-02-15 13:14:58 +01:00
Rémi Verschelde
c4779196b9
Merge pull request #58125 from fire-forge/editor_property_overlap_fix
Fix EditorProperty icon overlapping text with checkbox
2022-02-15 08:09:51 +01:00
Hugo Locurcio
b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
Rémi Verschelde
d02db6306e
Merge pull request #58105 from trollodel/nuke_p_editor_editor_plugin 2022-02-14 21:10:38 +01:00
trollodel
cd1d7294d8 Remove the EditorNode parameter from EditorPlugins create methods
Remove EditorNode usage from the Navigation editor plugin.
2022-02-14 18:21:42 +01:00
Hugo Locurcio
15244e55bd
Improve completion scroll bar visibility in the script editor
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 16:49:08 +01:00
Rémi Verschelde
f810f76890
Merge pull request #57306 from trollodel/remove_editornode_param 2022-02-14 16:40:40 +01:00
Rémi Verschelde
cd6301ae25
Merge pull request #58008 from Geometror/increase-checkerboard-contrast 2022-02-14 15:22:50 +01:00
Yuri Sizov
7f4b71b682 Add missing CheckButton icons 2022-02-14 16:23:59 +03:00
trollodel
05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
JFonS
8317753c24
Merge pull request #57964 from mbrlabs/deselect
Deselect nodes in the 3D editor when pressing ESC
2022-02-14 10:42:46 +01:00
JFonS
58199e5ad0
Merge pull request #57990 from jmb462/fix-drag-lines-precision-issue
Fix 3D editor axis drag lines precision issue
2022-02-14 10:39:44 +01:00
Haoyu Qiu
9aaab5b693 Make duplicate animation prompt for new name 2022-02-14 14:48:25 +08:00
FireForge
dbc380af59 Fix EditorProperty text and icon overlap bugs 2022-02-13 22:27:06 -06:00
Hugo Locurcio
7ca843b655
Only store _edit_use_anchors_ metadata if value is not the default
The default value is assumed to be `false`, so this metadata
only needs to be stored if the value is `true`.
2022-02-14 01:26:57 +01:00
Rémi Verschelde
e9ef64526a
Merge pull request #57892 from TechnicalSoup/ProjManager-Patch
Center initial position of project manager window
2022-02-13 10:37:48 +01:00
TechnicalSoup
f3b7419790 Center initial position project manager window
Ensure that the project manager window is centered on the screen if any resizing is performed due to DPI scaling.
Resizing and repositioning code has been moved to after the initialisation of the window contents to improve UI response/presentation.
2022-02-13 19:48:53 +11:00
Rémi Verschelde
aa069a4d31
Merge pull request #58033 from jmb462/fix-mouse-wheel-animation-track-zoom
Fix AnimationTrack mouse wheel zooming at low zoom level
2022-02-13 08:27:27 +01:00
jmb462
64ca6a0696 Fix AnimationTrack mouse wheel zooming at low zoom level 2022-02-13 00:24:35 +01:00
bruvzg
9739a2038a
Fix Project Manager crash on exit.
Fix editor settings loading / saving by Project Manager.
2022-02-12 21:55:11 +02:00
bruvzg
29199579f7
Add sub-pixel glyph positioning support. 2022-02-12 19:55:52 +02:00
Rémi Verschelde
498805282a
Merge pull request #57993 from Calinou/sky-tweak-default-values 2022-02-12 16:46:19 +01:00
Hendrik Brucker
8ebecf5095 Increase checkerboard texture contrast 2022-02-12 14:55:07 +01:00
Hendrik Brucker
77fb65debf Use EditorFileDialog instead of FileDialog in the project manager 2022-02-12 12:06:51 +01:00
Rémi Verschelde
3f759f03c3
Merge pull request #57997 from Calinou/texture-import-rename-hdr-as-srgb 2022-02-12 10:22:06 +01:00
Jean-Michel Bernard
b452534e60 Fix 3D Editor axis drag lines precision issue 2022-02-12 10:20:31 +01:00
Rémi Verschelde
f5a27ee4fe
Merge pull request #57994 from jmb462/polygon2d-handles 2022-02-12 10:12:06 +01:00
Rémi Verschelde
7a7fabe4f6
Merge pull request #57641 from Geometror/compilation-time-improvements-1 2022-02-12 09:46:02 +01:00
Hendrik Brucker
b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
Hugo Locurcio
1737b4a946
Rename Hdr as Srgb texture import option to be lowercase
Unlike all other import options, Hdr As Srgb was internally spelled
out with uppercase characters.
2022-02-12 02:39:10 +01:00
Hugo Locurcio
b7b18a4940
Tweak default ProceduralSkyMaterial and PhysicalSkyMaterial appearance
- Tweak colors to be less saturated and more balanced (in terms of hue).
  The cool blue sky is balanced by a warm brown ground,
  which makes reflections look closer to how they'd look like when using
  an HDRI panorama texture.
- Make the ground color dark on both ProceduralSkyMaterial and
  PhysicalSkyMaterial to reduce indoor light leaking, especially
  when using GI.
- Tweak the PhysicalSkyMaterial colors to be as close as possible
  to ProceduralSkyMaterial (with the default sun orientation).
- Tweak editor environment defaults to be identical to the default
  ProceduralSkyMaterial colors. Previously, the default editor sky
  color was different from the colors of a newly created
  ProceduralSkyMaterial resource.

Both new skies were tested without GI, with SDFGI and with VoxelGI.
They were tuned to look best when using ACES tonemapping with a
whitepoint set to 6, but they still look good with other
tonemapping operators.
2022-02-12 02:22:40 +01:00
Jean-Michel Bernard
b0ebbd8ece Hide Polygon2D lines and handles when node is not visible in tree. 2022-02-11 23:18:23 +01:00
Rémi Verschelde
a0558b8af8
Merge pull request #57984 from jmb462/collisionshape_handles 2022-02-11 23:03:20 +01:00
Rémi Verschelde
45360ca118
Merge pull request #57982 from trollodel/fix_disabled_visualscript 2022-02-11 22:57:11 +01:00
trollodel
e97e894aa0 Fix editor compile error when VisualScript is disabled 2022-02-11 18:45:41 +01:00
Jean-Michel Bernard
ef995b222e Hide CollisionShape2D handles when node is not visible in tree. 2022-02-11 18:44:17 +01:00
Yuri Sizov
175088db25 Add an explicit way to remove a theme type 2022-02-11 17:57:52 +03:00
Marcus Brummer
55fda17742 Deselect nodes in the 3D editor when pressing ESC 2022-02-11 11:41:51 +01:00
JFonS
3aa7b7eaf2
Merge pull request #57919 from mbrlabs/region-select-fixes
Fixed issues with 3D region-select in the editor
2022-02-11 10:59:18 +01:00
Marcus Brummer
3c4c73b100 Fixed issues with 3D region-select in the editor 2022-02-11 09:43:40 +01:00
Francois Belair
52649d5402 Fix selecting keys in Track Edit 2022-02-10 17:57:08 -05:00
Rémi Verschelde
ba8973d663
Merge pull request #57902 from aaronfranke/canvas-editor-scale 2022-02-10 22:24:22 +01:00
Rémi Verschelde
69ddf2fd05
Merge pull request #55157 from pycbouh/control-inspector-reorg 2022-02-10 22:13:28 +01:00
Yuri Sizov
107b6f299c Reorganize inspector layout workflow for Control nodes 2022-02-10 20:29:34 +03:00
Rémi Verschelde
519075cf41
Merge pull request #57912 from rcorre/fix-blender 2022-02-10 16:53:01 +01:00
Rémi Verschelde
52a7ecf821
Merge pull request #57886 from KoBeWi/icon.png_drop 2022-02-10 16:12:36 +01:00
kobewi
283ec9e640 Fix texture file dropping in 2D editor 2022-02-10 15:06:13 +01:00
Ryan Roden-Corrent
628219c922
Don't block input after cancelling transform.
After starting an instant transform and cancelling it, the mouse was
blocked because cancel_transform did not set _edit.instant back to
false.

This refactors all the cleanup into a separate function that both
cancel_transform and commit_transform can call.

Fixes #57868.
2022-02-10 08:23:10 -05:00
Rémi Verschelde
1bdb82c64e
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.
2022-02-10 12:30:19 +01:00
Anilforextra
bb5d130509 Code quality cleanup for some variable scopes. 2022-02-10 15:56:01 +05:45
Aaron Franke
742205b29a
Fix CanvasItemEditor scale editor not using the editor methods 2022-02-10 03:51:53 -06:00
Rémi Verschelde
f21a62b620
Merge pull request #57866 from fire-forge/better_array_editor 2022-02-10 10:39:36 +01:00
Francois Belair
13a0d9177d Implement drawing and editing all anim beziers
* Move bezier edit from track to button in toolbar
* Draw, edit all bezier curves simultaneously
* Add click on curve to select tracks
* Tie track editor's filter view to bezier editor
* Implement visibility and locking
* Fix editor spacing issues
* Fix track buttons spacing
* Add keyframe focus and (de)select all key handling
2022-02-09 19:48:22 -05:00
Rémi Verschelde
8161e28512
Merge pull request #55899 from groud/fix_rotation_track_wrong_type
Fixes rotation 3D track inspector not using the correct type
2022-02-09 22:17:07 +01:00
Rémi Verschelde
d22ac13bc2
Merge pull request #57715 from Faless/debugger/4.x_core_includes_and_servers
[Debugger] Move most profilers to ServersDebugger, fix core includes.
2022-02-09 21:57:32 +01:00
Marcus Brummer
c283a0ece7 Improved region-select in the 3D editor viewport 2022-02-09 12:22:03 +01:00
Rémi Verschelde
79077e6c10
Merge pull request #57817 from akien-mga/version-hash-cpp 2022-02-09 09:46:02 +01:00
Rémi Verschelde
d6deada47c
Revert "Show the 3D transform gizmo in the center when otherwise offscreen"
This reverts commit 4234a72b25.

There are some errors which are problematic to have in 4.0 alpha 2.
The PR can be redone with fixes and merged again after the dev release.

Fixes #57839.
2022-02-09 09:39:28 +01:00
Rémi Verschelde
90162851a7
Core: Move generated VERSION_HASH to a .cpp file
This lets us have its definition in `core/version.h` and avoid
rebuilding a handful of files every time the commit hash changes.
2022-02-09 09:20:17 +01:00
FireForge
62073d157f Unify array, dictionary, and inspector array editors 2022-02-09 00:15:47 -06:00
Ellen Poe
41a158af56
Add AudioStreamRandomizer, replacing AudioStreamRandomPitch
Add additional randomization options.
2022-02-09 00:05:32 +01:00
Rémi Verschelde
25d4c14fef
Merge pull request #57627 from JFonS/occluder_improvements 2022-02-08 23:23:50 +01:00
Aaron Franke
4234a72b25
Show the 3D transform gizmo in the center when otherwise offscreen 2022-02-08 14:38:31 -06:00
Rémi Verschelde
76ce5c16f3
Merge pull request #55584 from KoBeWi/twoids 2022-02-08 21:14:51 +01:00
jfons
8345aabaf4 Improve rotation in the 3D transform gizmo
* Get rid of deadzones.
* Make it easier to select rotation handles at very oblique angles.
* Handle rotation for axes that are perpendicular to the camera.
2022-02-08 20:56:59 +01:00
jfons
e0c82913ff Fix navigation in 3D viewport
The incorrect initialization of EditData::instant to true was preventing the navigation code to run until the transform gizmo was used.
2022-02-08 19:24:50 +01:00
kobewi
4397109aab Fix uid conflict when duplicating resource 2022-02-08 18:04:19 +01:00
Rémi Verschelde
72de251501
Merge pull request #57807 from KoBeWi/ninja_methods 2022-02-08 17:32:33 +01:00
Rémi Verschelde
6889085813
Merge pull request #57808 from KoBeWi/named_inspector 2022-02-08 17:32:14 +01:00
Rémi Verschelde
96e4de3511
Merge pull request #57626 from Calinou/3d-editor-rename-debug-draw-modes 2022-02-08 16:42:01 +01:00
Rémi Verschelde
cc097cd22b
Merge pull request #56543 from rcorre/blendermotion-4.0 2022-02-08 16:39:19 +01:00
kobewi
0e8147d303 Display built-in script names in the inspector 2022-02-08 16:15:27 +01:00
kobewi
fb1fa2a3f7 Reload built-in scripts when picking methods 2022-02-08 16:06:57 +01:00
bruvzg
8e3245383a
[Editor] Fix font style matching issues.
Fix font selection when no style selected.
Fix style matching when fonts have different style sets.
Use SNAME for theme overrides.
2022-02-08 15:20:01 +02:00
Rémi Verschelde
e26598b4a1
Merge pull request #40140 from hinlopen/tree-scroll-center 2022-02-08 13:43:19 +01:00
Rémi Verschelde
561fbe2175
Merge pull request #56923 from fire-forge/fix-create-root-node-scrolling 2022-02-08 13:17:35 +01:00
Rémi Verschelde
f425d403fe
Merge pull request #57066 from KoBeWi/in_the_name_of_the_custom 2022-02-08 11:15:01 +01:00
Rémi Verschelde
a66e55069e
Merge pull request #57796 from akien-mga/revert-sname-theme-setters 2022-02-08 11:13:24 +01:00
Rémi Verschelde
6eeeb9a63c
Re-add missing SNAME macros in get_theme_* calls
They were removed in the previous commit reverting the addition of `SNAME`
to `add_theme_*` and theme setter methods, which is not wanted.
2022-02-08 10:31:56 +01:00
Rémi Verschelde
fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
Rémi Verschelde
317cd0b19a
Refactor some object type checking code with cast_to
Less stringly typed logic, and less String allocations and comparisons.
2022-02-08 10:08:34 +01:00
Rémi Verschelde
0154ce2c8d
Merge pull request #43015 from Xrayez/refactor-auto-instaprop
Refactor auto-instantiation of `Object` properties in editor
2022-02-08 08:57:29 +01:00
Jason Knight
81b6da9d3d Use ScriptServer::get_global_class_base instead of script_class_get_base in script_class_is_parent. 2022-02-07 11:37:48 -06:00
kobewi
a08fc442a0 Fix script editor errors with CustomCallables 2022-02-07 14:34:42 +01:00
Michael Alexsander
59e9a8c275 Fix theming for floating window docks 2022-02-07 09:55:25 -03:00
Rémi Verschelde
88aea70a09
Merge pull request #57749 from timothyqiu/feature-class-props 2022-02-07 13:20:15 +01:00
jfons
dd970482c5 Improvements and fixes to occluders
Improvements:
* Occluder3D is now an abstract type inherited by: ArrayOccluder3D, QuadOccluder3D, BoxOccluder3D, SphereOccluder3D and PolygonOccluder3D. ArrayOccluder3D serves the same purpose as the old Occluder3D (triangle mesh occluder) while the rest are primitives that can be used to manually place simple occluders.
* Occluder baking can now apply simplification. The "bake_simplification_distance" property can be used to set a world-space distance as the desired maximum error, set to 0.1 by default.
* Occluders can now be generated on import. Using the "occ" and "occonly" keywords (similar to "col" and "colonly" for colliders) or by enabling on MeshInstance3Ds in the scene's import window.

Fixes:
* Fixed saving of occluder files after bake.
* Fixed a small error where occluders didn't correctly update in the rendering server.

Bonus content:
* Generalized "CollisionPolygon3DEditor" so it can also be used to edit Resources. Renamed it to "Polygon3DEditor" since it was already being used by other things, not just colliders.
* Fixed a small bug in "EditorPropertyArray" where a call to "remove" was left after the "remove_at" rename.
2022-02-07 13:04:51 +01:00
Rémi Verschelde
bfb75d107c
Merge pull request #57741 from Chaosus/vs_fixes 2022-02-07 12:50:44 +01:00
Haoyu Qiu
d9d12cd352 Don't display empty Class Properties in feature profile 2022-02-07 18:55:17 +08:00
Rémi Verschelde
b024602660
Merge pull request #57725 from jmb462/missing-sname-theme-setters 2022-02-07 11:46:25 +01:00
Rémi Verschelde
ec00283f91
ResourceImporter: Restore default append logic for new importers
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-02-07 09:47:16 +01:00
Yuri Roubinsky
a6e280c5de Add some more fixes to visual shader 2022-02-07 11:28:42 +03:00
Rémi Verschelde
c2a540de51
Merge pull request #57732 from KoBeWi/leftplication
Move Replication tab to a fixed position
2022-02-07 08:14:30 +01:00
kobewi
ee3b7bc747 Move Replication tab to a fixed position 2022-02-07 01:06:55 +01:00
kleonc
803ac608a6 SpriteFramesEditor Fix crash when selecting non-Texture2D file for splitting 2022-02-06 23:39:04 +01:00
jmb462
a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
Rémi Verschelde
9cf6e5113b
Merge pull request #57716 from Chaosus/vs_vector_3d
Rename `PORT_TYPE_VECTOR` to `PORT_TYPE_VECTOR_3D` in visual shaders
2022-02-06 21:24:47 +01:00
Yuri Roubinsky
db18faf660 Rename PORT_TYPE_VECTOR to PORT_TYPE_VECTOR_3D 2022-02-06 20:15:28 +03:00
Rémi Verschelde
95719930a8
Merge pull request #57672 from fire-forge/fix-image-drop-nodes 2022-02-06 18:11:12 +01:00
Fabio Alessandrelli
6583797305 [Debugger] Move servers-related behaviours to ServersDebugger.
Forcing draw during debug break is now handled by ServersDebugger, and
only happens when the proper message is sent from the EditorDebugger
("servers:draw").
In a similar way, briging the window in foreground is now also handled
by ServersDebugger upon receiving "servers:foreground" which is sent by
the EditorDebugger when resuming from a break ("continue").
2022-02-06 17:36:48 +01:00
Fabio Alessandrelli
87f4bbd668 [Debugger] Move most profilers to ServersDebugger.
Also splits bandwidth/rpc profiler (RPCProfiler is now in
SceneDebugger).
2022-02-06 17:36:48 +01:00
Rémi Verschelde
79a4d782a5
Merge pull request #57709 from jmb462/missing-sname-optimization 2022-02-06 17:03:11 +01:00
Rémi Verschelde
fb6cf1e3b7
Merge pull request #57689 from NeilKleistGao/master 2022-02-06 16:39:42 +01:00
jmb462
1ce81dc5f2 Add missing SNAME macro optimization in some function calls 2022-02-06 15:54:04 +01:00
NeilKleistGao
729c1f056b Edit font properties on multiple objects at once 2022-02-06 18:32:55 +08:00
FireForge
871b9fc352 Fix node types in image drag-and-drop and add node icons 2022-02-05 21:01:29 -06:00
Rémi Verschelde
bd32dd4a48
Merge pull request #56943 from V-Sekai/override-import
Make add_importer and add_post_importer_plugin override existing importers.
2022-02-05 19:50:37 +01:00
Rémi Verschelde
aecff478b7
Merge pull request #48006 from KoBeWi/incognito_layer
Add visibility to CanvasLayer
2022-02-05 16:05:53 +01:00
kobewi
189dab2d76 Add visibility to CanvasLayer 2022-02-05 14:02:21 +01:00
Ger Hean
8acc8838c4 Add shortcut_cell double click functionality 2022-02-05 19:06:54 +08:00
Ger Hean
472c6cbfdc Fix shortcut collapse after edit 2022-02-05 18:49:32 +08:00
Stijn Hinlopen
31824420e4 Center when scrolling to tree item. 2022-02-05 10:59:33 +01:00
Rémi Verschelde
df1724470d
Merge pull request #49775 from fire/faster-cvtt
Faster CVTT by lowering default quality
2022-02-05 10:28:07 +01:00
Rémi Verschelde
2e44778cd2
Merge pull request #57635 from jmb462/fix-template-optionbutton
Fix OptionButton in create script dialog doesn't select the correct template
2022-02-05 10:18:21 +01:00
Jean-Michel Bernard
f86ab4031a Fix template OptionButton in create script dialog doesn't select the correct template 2022-02-05 07:06:53 +01:00
kobewi
e714f5e56e Rework TextureButton stretch 2022-02-05 02:11:32 +01:00
K. S. Ernest (iFire) Lee
419b342a9a Faster CVTT by reducing quality.
Make BC6 and BC7 CVTT faster while still having better quality than DXT5.
2022-02-04 15:15:26 -08:00
Rémi Verschelde
3db1d689ce
Merge pull request #57631 from groud/terrain_fix_with_empty_cells 2022-02-04 19:03:44 +01:00
Rémi Verschelde
2885befbe6
Merge pull request #55950 from Faless/mp/4.x_replication_nodes 2022-02-04 19:03:10 +01:00
Gilles Roudière
64e53cdc55 Fixes terrain painting on TileMaps when using empty terrain bits 2022-02-04 18:10:12 +01:00
Hugo Locurcio
21b9f1ecfe
Rename 3D editor debug draw modes to be more explicit
- Rename "Directional Shadow" to "Directional Shadow Map"
  to distinguish it from the "Directional Shadow Splits" option.
- Rename "Disable LOD" to "Disable Mesh LOD" as it only affects
  automatic mesh LOD, not visibility ranges.
- Rename "GI Buffer" to "VoxelGI/SDFGI Buffer" as it doesn't cover
  LightmapGI or SSIL.
- Rename the cluster options to match the respective node names.
2022-02-04 16:37:43 +01:00
Rémi Verschelde
e223bad86d
Core: Move Vector2i to its own vector2i.h header
Also reduce interdependencies and clean up a bit.
2022-02-04 16:32:21 +01:00
Fabio Alessandrelli
c971316d88 [Editor] Replication plugin to configure MultiplayerSynchronizers.
Allows configuring the MultiplayerSynchornizer in a way similar to
AnimationPlayer.
Properties are added manually, edither as plain properties, or via the
NodePath format for child nodes' properties "path/to/node:property"
relative to the MultiplayerSynchronizer root path.

Nice things to add would be:
- Moving properties up/down in the list.
- Some form of keying, autmatic filling of the replication properity
  line edit.
2022-02-04 14:56:30 +01:00
Rémi Verschelde
2e320dcf87
Merge pull request #57617 from bruvzg/char_cleanup 2022-02-04 13:06:38 +01:00
Rémi Verschelde
29c4644890
Merge pull request #57086 from YeldhamDev/scene_tabs_fix 2022-02-04 11:01:41 +01:00
bruvzg
244db37508
Cleanup and move char functions to the char_utils.h header. 2022-02-04 11:35:01 +02:00
Rémi Verschelde
f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
String: Add contains().
2022-02-03 22:21:24 +01:00
Rémi Verschelde
025e778020
Merge pull request #57175 from fire-forge/add-type-icons
Add type icons to Project Settings, Array, and Dictionary editors
2022-02-03 22:17:25 +01:00
Anilforextra
adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45
fire540
d5d05386a6 Add type icons to Project Settings, Array, and Dictionary editors 2022-02-03 13:02:18 -06:00
Rémi Verschelde
ffc828ac50
Merge pull request #57582 from akien-mga/editorproperty-range-fix-step 2022-02-03 17:51:16 +01:00
Rémi Verschelde
3004415bfc
Merge pull request #57565 from jmb462/split_offset 2022-02-03 17:04:49 +01:00
Rémi Verschelde
ebe9495b7d
EditorProperty: Fix range hint parsing with optional step
This could lead to have a step of 0 when parsing e.g. "1,10,is_greater".
2022-02-03 12:57:59 +01:00
Gilles Roudière
73e784de1e Remove get_focus_owner() from Control, replaced by get_viewport()->gui_get_focus_owner() 2022-02-03 11:59:32 +01:00
Rémi Verschelde
6de5bafd2f
Merge pull request #57547 from akien-mga/editorhelp-tooltip-set-fit_content_height 2022-02-02 23:19:30 +01:00
jmb462
71fb89390f Save script editor's function list split offset with the editor layout 2022-02-02 22:50:49 +01:00
Rémi Verschelde
9f0a693b50
EditorHelpBit: Fix content height fit and RTL theme propagation
This reverts #51619 and fixes the issue properly, as well as enabling
`fit_content_height` which is necessary following #57304.

Fixes #57174.

Also adds a placeholder for property and signal tooltips with no description,
factoring the code while at it.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-02-02 22:16:46 +01:00
Rémi Verschelde
7be7623d69
Merge pull request #57494 from Geometror/project-and-editor-settings-fixes 2022-02-02 21:55:08 +01:00
Yuri Roubinsky
59af063636 Add support for 2D vector type to visual shaders 2022-02-02 19:59:34 +03:00
Rémi Verschelde
bf12719cca
Merge pull request #57524 from Sauermann/fix-display-grid-fadeout 2022-02-02 11:51:07 +01:00
Anilforextra
fc27636999 Vectors: Use clear() and has().
Use clear() instead of resize(0).

Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
Markus Sauermann
51b5b51653 Fix TileMap Display Grid fadeout 2022-02-01 18:58:27 +01:00
Michael Alexsander
45a32f21ee Fix buggy behavior of the "Add tab" button in the scene tabs 2022-02-01 11:44:58 -03:00
Rémi Verschelde
d4e21b7d62
Merge pull request #57358 from akien-mga/signal-bindings-object 2022-02-01 14:24:47 +01:00
Rémi Verschelde
f1bff648f2
Merge pull request #57355 from akien-mga/method-bindings-clearer-types 2022-02-01 14:24:35 +01:00
Hendrik Brucker
2f1e7c28a4 Minor fixes/refactoring of project and editor setting dialogs 2022-02-01 00:19:01 +01:00
Rémi Verschelde
45553fd586
Merge pull request #56970 from YeldhamDev/rise_tabbar_rise 2022-01-31 21:46:07 +01:00
Rémi Verschelde
cc7d8817eb
Merge pull request #57413 from fazil47/master 2022-01-31 19:58:49 +01:00
Michael Alexsander
64c4a5b283 Bring TabBar to full parity with the TabContainer implementation. 2022-01-31 15:35:54 -03:00
Rémi Verschelde
7d97f04da8
Merge pull request #57454 from rcorre/undo_skel 2022-01-31 18:13:32 +01:00
Rémi Verschelde
d7822cbf21
Merge pull request #57367 from Chaosus/vs_derivative 2022-01-31 16:51:30 +01:00
Paulb23
1cd1df5dc3 Move placeholder color to theme item 2022-01-30 17:56:23 +00:00
Ryan Roden-Corrent
c9cce53983
Merge create_physical_skeleton undo entries.
Pressing `ctrl+z` after clicking "Create Physical Skeleton" will now
undo the creation of all physical bones by that operation.

Previously undo would remove one bone at a time.

Fixes https://github.com/godotengine/godot/issues/55351.
2022-01-30 12:28:44 -05:00
Yuri Roubinsky
6e2c9f398c Fix theming of doc background 2022-01-30 09:49:24 +03:00
Fazil Babu
65b6b140b6 Inspector retains content when detached and when docked 2022-01-30 12:11:27 +05:30
Ev01
c66ab56544 Set a minimum zoom of 1% and a maximum zoom of 10,000% on the tileset editor
Fixes issue #57292 where zooming out too much stops
you from being able to zoom back in
2022-01-30 13:45:14 +11:00
Nathan Franke
8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy 2022-01-29 04:41:03 -06:00
Rémi Verschelde
252ec22ff9
Merge pull request #57296 from emcguirk/bug-57253-fix-hint-label 2022-01-29 00:36:42 +01:00
Rémi Verschelde
e84c552b08
Merge pull request #52557 from jmb462/rename_layers 2022-01-29 00:36:03 +01:00
Rémi Verschelde
e22a162003
Merge pull request #57365 from pycbouh/editor-icons-uniformity 2022-01-28 23:53:23 +01:00
jmb462
b619a47416 Renaming layers from the inspector via a popup menu. 2022-01-28 23:52:11 +01:00
Rémi Verschelde
2279edeaf0
Merge pull request #57368 from TokageItLab/fix-delta-for-animation-tree 2022-01-28 23:16:29 +01:00
Rémi Verschelde
27e4c84edd
Merge pull request #57326 from Josephblt/material-preview-sphere-icon-has-wrong-inactive-modulation 2022-01-28 23:06:59 +01:00
Yuri Sizov
876345191f Fix theme application in various curve editors 2022-01-29 01:03:43 +03:00
Yuri Sizov
36ff66c62f Fix the breakpoint icon in CodeEdit 2022-01-29 01:03:43 +03:00
Yuri Sizov
49eddd22e0 Update icons and color conversion rules to simplify the palette 2022-01-29 01:03:39 +03:00
Silc 'Tokage' Renew
0650846248 Make AnimationTree delta argument force double in core 2022-01-29 05:07:30 +09:00
Yuri Roubinsky
88b2afa28f [VisualShader] Merge scalar and vector derivative functions into one 2022-01-28 22:19:10 +03:00
Rémi Verschelde
b9a2569be6
Merge pull request #57347 from Chaosus/vs_refactor_addop 2022-01-28 17:45:54 +01:00
Rémi Verschelde
02d48f88ef
Merge pull request #56933 from Chaosus/fix_shader_editor_theming 2022-01-28 17:45:28 +01:00
Rémi Verschelde
7c3003fcbe
Improve some signal bindings to use specific Object subtypes 2022-01-28 15:35:40 +01:00
Rémi Verschelde
7072b359b4
Improve some method bindings to use specific Object subtypes
This was made possible by changes to `VariantCaster` which now make
it possible to pass any `Object`-derived type as pointer.
2022-01-28 15:07:22 +01:00
Rémi Verschelde
b8b33df178
TileSetAtlasSource: Make get_tile_data return TileData *
This is now possible thanks to `Variant` changes.

Also unbind some `_` prefixed methods which don't need to be exposed.
2022-01-28 14:27:12 +01:00
Yuri Sizov
af045e568d Remove unnecessary transformations from editor icons 2022-01-28 16:16:28 +03:00
Yuri Roubinsky
fd8c0f4a6a Refactor AddOption in visual shader editor 2022-01-28 15:28:37 +03:00
Rémi Verschelde
9686d680b7
Merge pull request #57116 from bruvzg/win_net_share 2022-01-28 11:03:23 +01:00
Eric McGuirk
9f01c887b1 Fixes Hint label in 2D editor appearing at wrong position and pushes zoom controls 2022-01-27 21:49:33 -05:00
Rémi Verschelde
e6caaf4c80
Merge pull request #57205 from TechnoPorg/variant-template-cast
Allow method binds to take Object subclasses as arguments
2022-01-27 23:46:37 +01:00
Wagner Scholl Lemos
a2d176a53d Fix to prevent icons from disappearing. 2022-01-27 19:29:42 -03:00
Rémi Verschelde
aa94d5d61a
Merge pull request #57290 from IgorKordiukiewicz/fix-tile-map-editor-not-disappearing 2022-01-27 11:44:13 +01:00
Rémi Verschelde
899cd34426
Merge pull request #57281 from Rubonnek/rename-subsequence 2022-01-27 11:03:13 +01:00
Rémi Verschelde
a4f999b7dc
Merge pull request #57295 from TokageItLab/fix-blendspace2d-discrete 2022-01-27 10:17:04 +01:00
Silc 'Tokage' Renew
1c0b163df5 More time parameters change type float to double 2022-01-27 12:42:46 +09:00
kobewi
2cd0c3f8be Improve 2D editor's right-click menu 2022-01-27 03:02:45 +01:00
Igor Kordiukiewicz
a6b20c1816 Fixes TileMap editor not disappearing 2022-01-27 02:49:29 +01:00
Wilson E. Alvarez
3eb5e0ac50
Rename String::is_subsequence_ofi to String::is_subsequence_ofn 2022-01-26 18:03:56 -05:00
Hugo Locurcio
68580ecedd
Rename VoxelGI editor bake actions from "GI Probe" to "VoxelGI" 2022-01-26 23:12:26 +01:00
Rémi Verschelde
9df9dc77a3
Merge pull request #54822 from KoBeWi/sortuces 2022-01-26 15:46:48 +01:00
kobewi
e793331cd7 Allow sorting tileset sources 2022-01-26 13:58:32 +01:00
Hugo Locurcio
78c946f554
Fix lightmap size hint option not displaying for 3D scenes
This also renames the Static Lightmaps option hint to be more explicit
about which GI techniques are supported (as VoxelGI/SDFGI can still
be used with Static Lightmaps).
2022-01-26 00:33:47 +01:00
kleonc
93a95ae84a SpriteFramesEditor Incorrect texture type fix 2022-01-25 18:39:26 +01:00
TechnoPorg
051ef479c9 Allow method binds to take Object subclasses as arguments
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object.
This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary.
A few small changes also had to be made to other files, due to the changes cascading down all the includes.
2022-01-25 09:03:36 -07:00
Haoyu Qiu
5ea4a8b421 Fix crash after renaming an animation node 2022-01-25 20:18:40 +08:00
Yuri Roubinsky
050f746e19 Fix theming update of shader editor 2022-01-25 12:10:07 +03:00
kobewi
342a31e326 Fix 2D Pan Tool 2022-01-24 22:21:19 +01:00
bruvzg
9456454109
Fix translation with multiple sources for the same language.
Remove unnecessary locale length checks.
Add "C" -> "en" locale remap.
2022-01-24 18:58:16 +02:00
bruvzg
cba8280515 [Windows] Add support for handling network share paths. 2022-01-24 16:22:59 +02:00
bruvzg
f13db28a5c
[Editor] Do not update editor help theme, if calculated margin hasn't changed. 2022-01-24 09:51:35 +02:00
Rémi Verschelde
eb5aa3218f
Merge pull request #57029 from timothyqiu/disable-script-editor-menu 2022-01-23 16:04:46 +01:00
kobewi
98692d68c3 Minor tweaks and fixes to panning 2022-01-23 13:49:53 +01:00
Rémi Verschelde
c3d28ffa74
Merge pull request #57012 from Calinou/editor-add-new-script-textfile-shortcuts 2022-01-23 12:55:58 +01:00
bruvzg
3940bf586b
[Editor] Disable contextual alternates (coding ligatures) outside of code editor. 2022-01-23 11:09:10 +02:00
Ryan Roden-Corrent
58e8e5f219
Implement blender-style 3D transform tools.
See godotengine/godot-proposals#1215.

This adds shortcuts for blender-inspired transforms, where you can press
the key and immediately be transforming an object without holding the
mouse. Clicking commits the transformation, ESC aborts it.

This is inspired by Blender's G(rab)/R(otate)/S(cale) shortcuts, but I
decided not to add default bindings as `S` is already bound to the
regular scale tool, and it might be confusing to only bind some of them.

While actively using a transform tool, you can press X/Y/Z to lock the
transform to an axis or (shift)+X/Y/Z to constrain the transform to a
plane. These keys are only processed if you have a transform tool
(translate/rotate/scale) active _and_ the mouse button is held.

Pressing XX/YY/ZZ will lock the transform to a local (rather than
global) axis.

This is achieved by temporarily toggling the local transform button. I
did this (vs handling it in the transform functions) for 3 reasons:

- Transform logic for translate/rotate (but not scale) appears to be
  tightly coupled to the gizmo
- This ensures the gizmo changes to indicate we're transforming
  locally/globally
- Toggling the button state in the UI also gives the user feedback about
  the nature of the transform.

The original state of the button is reset when the transform completes.

Pressing the `spatial_editor/cancel_transform` shortcut key during a
transform operation will cancel the transform and reset the objects back
to their original transforms.

This functionality was already accessible by pressing RMB during a
transform, however:

- ESC is more familiar to blender users, and a more common "cancel" key
  in general.
- Given you must hold LMB during a transform, pressing RMB as well is
  clumsy if not impossible (on a laptop trackpad).
2022-01-22 20:55:39 -05:00
Rémi Verschelde
e363f404a5
Merge pull request #57000 from KoBeWi/UNLIMITED_PANNING 2022-01-23 00:47:52 +01:00
Rémi Verschelde
5e26a275bb
Merge pull request #56474 from brennengreen/keying-bounds 2022-01-23 00:33:28 +01:00
Rémi Verschelde
f63457814f
Merge pull request #35508 from Calinou/editor-help-references-use-code-font 2022-01-23 00:29:00 +01:00
Rémi Verschelde
ee253163ab
Merge pull request #57056 from Chaosus/vs_fix_defaults 2022-01-23 00:27:48 +01:00
Rémi Verschelde
649aa547a3
Merge pull request #57060 from KoBeWi/you_have_1_completion_request 2022-01-23 00:26:35 +01:00
kobewi
b86e3dbe7b Add usage of indeterminate checkboxes to editor 2022-01-22 21:12:06 +01:00
kleonc
c635ab914d SpriteFramesEditor Show AtlasTexture's source texture path in the frame's tooltip 2022-01-22 17:03:37 +01:00
Yuri Roubinsky
56a6e95d6a Remove transform input from fog mode in visual shaders 2022-01-22 16:31:06 +03:00
kobewi
1422c756ed Rename request_code_completion signal 2022-01-22 14:04:35 +01:00
Yuri Roubinsky
538cff1351 Fix default input port hints for some modes in visual shader 2022-01-22 11:12:56 +03:00
Hugo Locurcio
5e901c5807
Fix missing VoxelGI 3D editor gizmo icon 2022-01-22 00:41:56 +01:00
Hugo Locurcio
8cc9ff4f5b
Use a fixed-width font for internal references in the editor help
Since internal references are often written in scripts, it makes sense
to use a fixed-width font for them.
2022-01-21 20:05:11 +01:00
kobewi
74bfe88267 Add ViewPanner to 2D editor 2022-01-21 18:35:06 +01:00
Michael Alexsander
8383115666 Fix icon in drag preview of scripts/docs 2022-01-21 13:00:02 -03:00
Rémi Verschelde
a257ceb53d
Merge pull request #57036 from timothyqiu/groups-editor 2022-01-21 13:05:52 +01:00
Haoyu Qiu
c0b3af8688 Improve Groups dock panel and the Group Editor 2022-01-21 18:34:46 +08:00
Rémi Verschelde
ffc4d62e60
Merge pull request #57032 from timothyqiu/assetlib-network-settings 2022-01-21 11:32:46 +01:00
Haoyu Qiu
575cd3645c Update AssetLib network settings when Editor Settings change 2022-01-21 15:42:05 +08:00
Silc 'Tokage' Renew
b3a800b1e2 Fixed target which connected animation player, follow up #55066 2022-01-21 15:31:16 +09:00
Haoyu Qiu
e461e28c70 Disable ScriptEditor's menu items when they do nothing 2022-01-21 12:12:48 +08:00
Hugo Locurcio
990586b06b
Add shortcuts for New Script and New Text File in the script editor
These default to Ctrl + N and Ctrl + Shift + N respectively,
and will only work while the script editor is focused.
When the script editor is not focused, a new scene
(or inherited scene) will be created instead.
2022-01-20 23:10:42 +01:00
Rémi Verschelde
cfb986c631
Merge pull request #51452 from omar-polo/fix-macros 2022-01-20 22:50:39 +01:00
Rémi Verschelde
e6170aae39
Merge pull request #55066 from trollodel/less_singletons_in_editornode 2022-01-20 22:29:17 +01:00
Rémi Verschelde
d681d99e12
Merge pull request #52134 from RandomShaper/fix_naming 2022-01-20 22:01:37 +01:00
Rémi Verschelde
04d283dc23
Merge pull request #36198 from Calinou/code-font-jetbrains-mono 2022-01-20 21:43:17 +01:00
Rémi Verschelde
8bb98ad743
Merge pull request #52690 from nsrCodes/batch-rename-preview-wrap 2022-01-20 21:04:42 +01:00
Omar Polo
bd448e5535 Rename or refactor macros to avoid leading underscores
These are not used consistently and some can conflict with
system-specific defines.  While here, also delete some unused macros.
2022-01-20 20:29:15 +01:00
Rémi Verschelde
880855264f
Merge pull request #56980 from KoBeWi/handled_key_input 2022-01-20 20:25:01 +01:00
trollodel
aa1102fc53 Store panels and docks singletons in their own classes 2022-01-20 20:13:26 +01:00
Pedro J. Estébanez
7b0ed2aa5e Rename Variant::is_ref() to is_ref_counted() 2022-01-20 18:46:25 +01:00
Rémi Verschelde
7e3b92f81f
Merge pull request #55360 from Calinou/rename-bake-mode-properties 2022-01-20 17:35:32 +01:00
Rémi Verschelde
eacde082a5
Merge pull request #53276 from Phischermen/propagate_check 2022-01-20 16:37:16 +01:00
Rémi Verschelde
9e0973ca23
Merge pull request #56972 from lawnjelly/warn_unused 2022-01-20 15:34:41 +01:00
kobewi
b4ad04078c Fix unhandled_key_input() in Script Editor 2022-01-20 15:11:44 +01:00
lawnjelly
b411a731fe Add nodiscard to core math classes to catch c++ errors.
A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
2022-01-20 13:07:49 +00:00
Michael Alexsander
b3a82f8310 Make Scene dock menu button an actual MenuButton 2022-01-20 08:54:36 -03:00
fire540
f8dde5871c Fix Create Root Node dialog expanding in favorites tab 2022-01-19 16:05:02 -06:00