Commit Graph

12370 Commits

Author SHA1 Message Date
Ryan Roden-Corrent
53a00abb11
Correct superclass constructors in 3to4.
Fixes #70542.

The 3to4 conversion tool was not handling superclass constructors.
We should translate the godot3 syntax:

```gdscript
func _init(a,b,c).(a,b,c):
    pass

func _init(a,b,c):
    super(a,b,c)
```

Originally, the _init conversion was intended to remove `void` return types from _init functions, as this was disallowed due to #50589.
As that was resolved by #53366, I removed that part of the conversion logic. If a void return type is present on a constructor, the converter now leaves it.

Here's a sample diff from my own project:

```diff
@@ -103,10 +105,11 @@ class Real:
 class Text:
        extends Setting

-       var choices: PoolStringArray
-       var value: String setget set_value, get_value
+       var choices: PackedStringArray
+       var value: String : get = get_value, set = set_value

-       func _init(section: String, key: String, default: String, choice_list: Array).(section, key, default) -> void:
+       func _init(section: String, key: String, default: String, choice_list: Array) -> void:
+               super(section, key, default)
                choices = choice_list

        func normalize(val):
@@ -129,9 +132,10 @@ class Text:
 class Boolean:
        extends Setting

-       var value: bool setget set_value, get_value
+       var value: bool : get = get_value, set = set_value

-       func _init(section: String, key: String, default: bool).(section, key, default) -> void:
+       func _init(section: String, key: String, default: bool) -> void:
+               super(section, key, default)
                pass
```
2023-03-04 08:03:24 -05:00
Rémi Verschelde
743c86768a
Merge pull request #74237 from AThousandShips/convert_keycode
Add keycode project conversion
2023-03-03 11:09:03 +01:00
Rémi Verschelde
e005da9717
Merge pull request #74232 from rcorre/3to4-whitespace
Don't strip whitespace when converting 3to4.
2023-03-03 11:07:52 +01:00
Rémi Verschelde
540b17874e
Merge pull request #73685 from Calinou/textureregion-polygon-editors-default-pot-grid-size
Use 8×8 default grid size for TextureRegion and 2D polygon editors
2023-03-03 11:03:17 +01:00
Rémi Verschelde
d76c1c4f45
Merge pull request #73651 from hakro/editor-freelook-physical-shortcuts
Use physical shortcuts for freelook navigation in the editor
2023-03-03 11:02:53 +01:00
Rémi Verschelde
eafc88c835
Merge pull request #73514 from AThousandShips/tile_origin_fix
Fix TileSetEditor paiting texture_origin Vector2i
2023-03-03 11:02:24 +01:00
Ryan Roden-Corrent
d3684e662f
Don't strip whitespace when converting 3to4.
Fixes #74204.

The style guide says

> Always use one space around operators and after commas

The 3to4 conversion tool currently strips space in certain scenarios.
I've updated it to add space whenever it is generating new code.
In any case where it substitutes existing code, it leaves it as-is.

For example, connect(a,b,c) becomes `connect(a, callable(b, c))`, because the converter is adding new commads/parens.

However, `xform(Vector3(a,b,c))` becomes `Transform * Vector3(a,b,c)` because it uses the user's original Vector3 string whole. If the user originally had `xform(Vector3(a, b, c))`, then it becomes `Transform * Vector3(a, b, c)`.

Ideally we'd always preserve original formatting, but this seems quite difficult, so I tried to preserve it where we can, but air on the side of following the style guide whenever we're transforming code.
2023-03-02 18:00:19 -05:00
Ninni Pipping
fec630f360 Add keycode project conversion 2023-03-02 15:24:00 +01:00
Ninni Pipping
fb317546fe Fix TileSetEditor paiting texture_origin Vector2i 2023-03-02 12:06:27 +01:00
Rémi Verschelde
7e11cc8aa0
Merge pull request #74039 from daBlesr/tilemap-remember-previosuly-selected-tile
Remember previously selected TileMap tile.
2023-03-02 11:41:48 +01:00
Rémi Verschelde
0885e4b931
Merge pull request #73365 from bruvzg/no_transient_children
Automatically reparent editor message dialogs to avoid error spam.
2023-03-02 11:41:17 +01:00
Rémi Verschelde
c46716118f
Merge pull request #74017 from SaracenOne/fix_toaster_notification_flicker
Stop toaster notification circle flickering
2023-03-02 11:24:14 +01:00
Rémi Verschelde
f61da1e380
Merge pull request #74057 from bruvzg/fix_multi_arch_gde_export
Fix GDExtensions library export when multiple architectures are set.
2023-03-02 11:21:45 +01:00
Rémi Verschelde
f033cd630f
Merge pull request #74158 from timothyqiu/whats-your-name
Fix dock name lost translation after layout change
2023-03-02 11:18:40 +01:00
Haoyu Qiu
e03bfd6f7f Fix "Convert Full Project" button not translated
Also fixes a typo in the CHANGELOG.
2023-03-02 16:19:30 +08:00
Haoyu Qiu
43bf0ca8d2 Fix dock name lost translation after layout change
* After you click in the dock select panel
* After you load an editor layout
2023-03-01 22:18:51 +08:00
Rémi Verschelde
2f34a35722
i18n: Sync translations with Weblate 2023-03-01 00:11:39 +01:00
Niels Drost
66374c8dce TileSet editor was out of sync with TileMap and incorrectly overwrote old selected TileSet after an edit call with a null pointer. 2023-02-28 22:30:46 +01:00
Gilles Roudière
1a2caf28e3 Fix a crash in the GLB importer 2023-02-27 17:24:03 +01:00
bruvzg
c2d678a924
Fix GDExtensions library export when multiple architectures are set. 2023-02-27 17:00:38 +02:00
Rémi Verschelde
7cf1ec1cd4
Add 3-to-4 renames for project settings in project.godot
In the ConfigFile format, the first subpath is the category and is not part
of the line that the regex would match.

Fixes #66125.
2023-02-27 13:34:35 +01:00
Rémi Verschelde
6eb25f238f
Cleanup 3-to-4 renames, prevent common words replacements
Fixes #73505.
Fixes #73996.
2023-02-27 13:14:22 +01:00
SaracenOne
ab61624c78 Stop toaster notification circle flickering when notifications are all hidden. 2023-02-27 02:33:49 +00:00
Rémi Verschelde
0cd1483132
Merge pull request #73959 from clayjohn/GL-mobile-warnings
Add warnings for unsupported features in mobile and gl_compatibility backends
2023-02-26 21:39:06 +01:00
clayjohn
c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
Rémi Verschelde
c6443e9a4e
Merge pull request #73954 from KoBeWi/BugEx
Fix wrong OS regex in project converter
2023-02-26 14:28:17 +01:00
Thomas Lobig
dbb5e377fb
Converter: Rename 3.x Vector2 clamped to limit_length 2023-02-26 13:41:26 +01:00
kobewi
0ba6e36e40 Fix wrong OS regex in project converter 2023-02-26 13:02:57 +01:00
Rémi Verschelde
75c0027e5a
Merge pull request #73887 from nklbdev/master
fix typo `set_polygon` in GenericTilePolygonEditor
2023-02-25 01:01:26 +01:00
nklbdev
834a6c5983
fix typo set_polygon in GenericTilePolygonEditor 2023-02-25 00:57:34 +05:00
bruvzg
cebfc02d6f
Revert "Reordering emitted signals in PopupMenu" and fix editor selection issue in the safer way. 2023-02-24 21:17:05 +02:00
Rémi Verschelde
eec165e1f5
i18n: Sync translations with Weblate 2023-02-24 14:43:04 +01:00
Rémi Verschelde
cd699fedd8
Merge pull request #73855 from CheesecakeCG/scene-import-animationlibrary-tab-fix
Fix settings not appearing for Animation Libraries in the Scene Import window
2023-02-24 14:00:18 +01:00
hare_ware
f3095b7c9d Fix settings not appearing for Animation Libraries in the Scene Import window 2023-02-23 21:38:50 -05:00
Gordon MacPherson
e395eaf447 Fix editor resource preview deadlocking with --headless mode 2023-02-23 20:57:19 +00:00
Rémi Verschelde
e10a15fc19
Export: Default to exporting S3TC + BPTC for PC platforms
This is now required after #72031 when using HDRs.

Could have further cleanup as I think these import options may not be needed
at all anymore, and etc/etc2 support doesn't seem to make much sense.
Likewise, the hardcoded "s3tc" in `get_platform_features` could maybe be
removed. But this is material for after 4.1.

Fixes #73789.
2023-02-23 18:42:28 +01:00
Rémi Verschelde
13382a88df
Merge pull request #73814 from lyuma/importer_mesh_convex
import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
2023-02-23 13:55:43 +01:00
Rémi Verschelde
a5e944661d
Merge pull request #73775 from SaracenOne/fix_node_ownership_on_scene_update_addition
Fix ownership bug on ancestor nodes when scene is reimported
2023-02-23 13:53:47 +01:00
Rémi Verschelde
873c50732d
Merge pull request #73687 from Calinou/editor-convex-import-fix-max-convex-hulls-crash
Add a property hint to fix crash when setting max convex hulls below 0
2023-02-23 13:53:24 +01:00
Hugo Locurcio
7899726b98
Add a property hint to fix crash when setting max convex hulls below 0
Generating less than 1 convex hull is not valid anyway.
2023-02-23 13:51:12 +01:00
Lyuma
51a4fe1d53 import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
Implements create_convex_shape in ImpoterMesh.
Note: ImporterMeshInstance3D::get_mesh() is safe.
The only dangerous function with side effects is ImpoterMesh::get_mesh()
2023-02-23 11:55:28 +01:00
Lyuma
cb35471cb0 import: Pass the correct defaults to generated collision shapes.
Solves incorrect defaults, as well as applied scale failing to apply.
The default values are removed, and they differ from collision shape defaults
These values must match the defaults defined in resource_importer_scene.cpp
2023-02-23 03:03:04 +01:00
Rémi Verschelde
02583ddde8
Merge pull request #72460 from Calinou/project-manager-disable-incompatible-rendering-methods
Disable incompatible rendering methods in the project manager
2023-02-22 22:47:07 +01:00
Hugo Locurcio
8ebc5b2875
Disable incompatible rendering methods in the project manager
The project manager can now only create projects that use a rendering
method compatible with the current platform. Rendering methods that
are disabled at build-time are also grayed out (only for OpenGL).

While it is possible in theory to create a project using Forward+
on web (thanks to the automatic fallback),
it will look different once edited on a desktop platform.
2023-02-22 19:57:17 +01:00
George Marques
554b55ae74
Load script for addons without cache
Since they are postponed sometimes due to transient script errors, it
needs to try again without the cache to compile the script again
instead of using the failed one.
2023-02-22 15:52:36 -03:00
SaracenOne
7bbd7833de Fix ownership bug on ancestor nodes when scene is reimported. 2023-02-22 18:21:14 +00:00
bruvzg
4593ad23fd
Add some missing EditorFileDialog methods and properties. 2023-02-22 11:55:08 +02:00
Rémi Verschelde
ba5a70ccc9
Merge pull request #73708 from davicr/output_font_setting_fix
Add Output font size in Theme regeneration conditions
2023-02-22 10:14:52 +01:00
Rémi Verschelde
0a15f51617
Merge pull request #73741 from dalexeev/fix-sprite-frames-convert
Fix `SpriteFrames` data loss on 3-to-4 conversion
2023-02-22 10:13:57 +01:00
Rémi Verschelde
c86f18698e
Merge pull request #73726 from KoBeWi/parenting_problems
Fix Polygon3DEditor parenting errors
2023-02-22 10:13:13 +01:00