Yuri Sizov
b7c2fd2e9a
Bump version of module docs to 4.2
2023-07-05 22:58:30 +02:00
Rémi Verschelde
8a847d82a8
Merge pull request #78722 from RedworkDE/net-auto-version-defines
...
C#: Automatically generate version defines
2023-07-05 22:15:47 +02:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
...
Keep on waitin'
2023-07-05 22:07:03 +02:00
Ivan Shakhov
bf3af9fd48
Update the RiderPathLocator to support the JetBrains Toolbox 2.0
2023-07-02 20:55:26 +02:00
Ignacio Roldán Etcheverry
22aad32c69
C#: Fix NodePaths completion error for not calling from main thread
...
The node API we use for code completion changed and no longer allows
being called from threads other than the main one.
2023-07-02 03:48:15 +02:00
Matt Diener
783facf60b
C# Fix deserialization of delegates that are 0-parameter overloads
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-30 17:26:43 -04:00
RedworkDE
f759cc00a3
C#: Enable exporting for Android
2023-06-28 22:34:14 +02:00
RedworkDE
7c456d2d0d
C#: Remove old and unused android support code for mono
2023-06-28 22:34:14 +02:00
RedworkDE
777d959e05
C#: Add option to embed dotnet build outputs into the data file
2023-06-28 22:04:51 +02:00
RedworkDE
fe7c27b086
C#: Automatically generate version defines
2023-06-28 21:45:58 +02:00
RedworkDE
60b9eb169e
C# Fix reloading of non-tool scripts
2023-06-28 11:46:43 +02:00
Rémi Verschelde
af16013905
Merge pull request #78571 from MewPurPur/include-extension-info
...
Document file extensions of GDScript, CSharpScript, and Shader
2023-06-22 18:32:25 +02:00
MewPurPur
8848c395b6
Add information about file extension to GDScript, CSharpScript, and Shader
2023-06-22 18:56:08 +02:00
Yuri Sizov
57e61db115
Merge pull request #75533 from RedworkDE/net-no-reload-noncollectible
...
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
2023-06-22 12:45:02 +02:00
Paul Joannon
dbdbe5b042
Fix condition blocking .NET project build
...
Since #73015 , the build commands are called on project files instead of solution ones.
2023-06-21 20:13:32 +02:00
RedworkDE
e0f644a48d
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
...
- Do not reload scripts from non-collectible assemblies
- Do not load GodotTools as collectible
- Do not attempt to reload the same project assembly forever
2023-06-21 12:47:52 +02:00
Rémi Verschelde
af08b17f97
Merge pull request #78466 from raulsntos/dotnet/define-constants-without-whitespace
...
C#: Remove whitespace from define constants
2023-06-20 14:56:19 +02:00
Raul Santos
8f6166bd14
C#: Remove whitespace from define constants
...
Co-authored-by: RedworkDE <10944644+RedworkDE@users.noreply.github.com>
2023-06-20 14:33:45 +02:00
Raul Santos
bd65ae633d
C#: Add compat overloads
2023-06-20 12:11:13 +02:00
Raul Santos
48e20c628a
C#: Set `PropertyInfo.class_name` for method parameters
2023-06-16 23:19:38 +02:00
Rémi Verschelde
7f5ef953b7
Merge pull request #78249 from RedworkDE/net-version-define
...
C#: Add version defines to help users deal with breaking changes
2023-06-15 15:26:31 +02:00
Rémi Verschelde
58416245ce
Merge pull request #78218 from raulsntos/dotnet/reserved-assembly-name
...
C#: Avoid GodotSharp as project assembly name
2023-06-15 15:26:22 +02:00
Rémi Verschelde
25b2f1780a
Style: Harmonize header includes in modules
...
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
RedworkDE
1b466c6298
C#: Add version defines to help users deal with breaking changes
2023-06-15 13:18:04 +02:00
Raul Santos
7a031be769
C#: Avoid GodotSharp as project assembly name
...
The name GodotSharp conflicts with the name of the Godot assembly,
this causes a cyclic dependency.
2023-06-15 11:43:35 +02:00
Magian
e8aeb6baa0
C# Array<StringName> support PropertyHint.Enum
2023-06-15 16:01:42 +08:00
RedworkDE
92f13ba9ea
C#: Unify project name handling and fix issues with the handling of some special characters
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-14 21:07:58 +02:00
RedworkDE
d515fcc47a
C#: Fix crash with `DisposablesTracker_OnGodotShuttingDown`
2023-06-13 07:49:21 +02:00
Mikael Hermansson
1c1d1a1e2e
Fix crash when using base types of extension-based types from C#
2023-06-12 18:29:52 +02:00
Rémi Verschelde
5047892939
Merge pull request #73939 from raulsntos/dotnet/export-symbols
...
C#: Add option to disable exporting debug symbols
2023-06-09 12:14:15 +02:00
Rémi Verschelde
aa5dfff3f0
Merge pull request #77410 from dsnopek/object-pointer-pointer-encoding
...
Standardize Object ptrcall encoding on `Object **`
2023-06-07 13:31:49 +02:00
RedworkDE
e0efa3c357
C#: Always decode `dotnet` output as UTF-8
2023-06-07 10:58:34 +02:00
Rémi Verschelde
0a0132ccf4
Merge pull request #77904 from raulsntos/dotnet/obsolete-deprecated-members
...
C#: Add `[Obsolete]` attribute to deprecated members
2023-06-06 20:40:09 +02:00
Rémi Verschelde
e2fcc4de34
Merge pull request #75188 from RedworkDE/net-synchronize-insert
...
C#: Synchronize adding ScriptInstances
2023-06-06 20:39:16 +02:00
Raul Santos
0484993121
C#: Add `[Obsolete]` attribute to deprecated members
2023-06-06 12:23:23 +02:00
VolTer
119456304b
Reduce the total size of our SVGs by 15%
2023-06-04 15:11:48 +02:00
Raul Santos
0aa1f3440e
C#: Add option to disable exporting debug symbols
...
- Add export option to configure if the exported game should include debug symbols (PDB).
- Remove unused `outputDir` local variable.
- Replace `Process.GetCurrentProcess().Id` with `System.Environment.ProcessId` (CA1837).
2023-06-02 16:37:59 +02:00
Yuri Sizov
f00641af9d
Merge pull request #77657 from vmedea/color-hex-doc
...
Clarify doc for Color.hex
2023-05-30 15:59:39 +02:00
mara
779ac20bb9
Clarify doc for Color.hex and C# Color()
...
The "alpha channel first" seems misleading to me. It doesn't match with
the examples, so remove it. Add a more detailed specification of the
expected number format in hex.
2023-05-30 15:15:04 +02:00
Raul Santos
a1f454fee3
C#: Add global class support
...
Co-authored-by: willnationsdev <willnationsdev@gmail.com>
2023-05-29 19:04:02 +02:00
David Snopek
77733faede
Attempt to standardize Object ptrcall encoding on `Object **`
2023-05-25 21:46:22 -05:00
RedworkDE
fa14b6d212
C#: Fix `SendToScriptDebugger` crash
2023-05-23 00:00:32 +02:00
RedworkDE
8fdebb85ef
C#: Synchronize adding ScriptInstances
2023-05-22 21:40:14 +02:00
Rémi Verschelde
4fd64edc30
Merge pull request #77199 from RedworkDE/net-callable-hash
...
C#: Mostly fix hash of ManagedCallable
2023-05-22 13:48:58 +02:00
Yuri Sizov
156a2fabea
Merge pull request #76659 from shana/shana/75152-fix-crash-when-initializing-glue-generation
...
Skip initializing the C# runtime when generating glue bindings
2023-05-19 17:10:40 +02:00
Andreia Gaita
e56fdc8a9a
Skip initializing the C# runtime when generating glue bindings
...
The bindings generator doesn't require the C# runtime in order to generate
the glue, and when it the glue generation runs, it exits immediately
afterwards, so we can skip this initialization when the `--generate-mono-glue`
flag is passed in.
Fixes issue 75152
2023-05-18 13:57:42 +02:00
RedworkDE
1cfc382fe8
C#: Mostly fix hash of ManagedCallable
...
The hash can still change when reloading assemblies but in all other
cases the result should be correct.
2023-05-18 13:44:36 +02:00
Paul Joannon
178cd046bb
Link the right build property to REAL_T_IS_DOUBLE
2023-05-18 13:37:34 +02:00
Rémi Verschelde
c64afeb017
Merge pull request #77018 from RedworkDE/net-glue-neg-enum
...
Fix C# glue generation for enums with negative values
2023-05-12 23:27:07 +02:00
Rémi Verschelde
f26a2dbb1b
Merge pull request #75662 from goncalo/basis_looking_at
...
C#: Add Basis.LookingAt
2023-05-12 23:25:52 +02:00
RedworkDE
45659ce2d9
Fix C# glue generation for enums with negative values
2023-05-12 21:53:42 +02:00
Rémi Verschelde
8f17f26233
Merge pull request #76978 from raulsntos/property-hint-compat
...
Reorder `PropertyHint` enum to avoid breaking compat
2023-05-12 10:06:32 +02:00
Raul Santos
a34207b812
Reorder PropertyHint enum to avoid breaking compat
...
Also syncs the Core enum with the C# enum for the source generators.
2023-05-12 01:48:07 +02:00
clayjohn
f83a90192f
Revert "Add API for HSL conversion"
...
This reverts commit 0b7fd664c1
.
2023-05-10 17:45:56 -03:00
Rémi Verschelde
0f444f101a
Merge pull request #76661 from bonjorno7/hsl
...
Add API for HSL conversion
2023-05-09 19:28:35 +02:00
bonjorno7
0b7fd664c1
Add API for HSL conversion
...
Math ported pretty much 1:1 from https://en.wikipedia.org/wiki/HSL_and_HSV
Style doesn't match the existing HSV code exactly, but should be close enough.
2023-05-09 17:43:10 +02:00
Clay John
610877e326
Merge pull request #72288 from MewPurPur/use-string-repeat
...
Use `String.repeat()` to optimize several String methods
2023-05-05 09:56:48 -07:00
VolTer
6b84e258d2
Use String.repeat() in more places
2023-05-01 02:27:46 +02:00
Rémi Verschelde
8f7b09916d
Merge pull request #76026 from YuriSizov/editor-running-up-that-gui
...
Extract editor run toolbar into its own component
2023-04-26 12:15:29 +02:00
RedworkDE
692ad70fd7
C#: Do not use DocCache when generating glue code
2023-04-20 15:35:14 +02:00
Yuri Sizov
8a74d8438f
Extract editor run toolbar into its own component
...
- Simplify and update its logic.
- Simplify EditorScript.
- Improve EditorNode and other relevant includes.
- Fix scene-based path in the movie writer when
reloading a scene.
2023-04-19 17:12:28 +02:00
RedworkDE
34b4128004
C#: Make include scripts contents an export option
2023-04-18 14:27:15 +02:00
Kevin Simpson
c2b97ec1f7
Add the ability to set a custom C# editor
...
This allows users to still use the built-in Godot editor for GDScript.
2023-04-18 13:55:08 +02:00
Gonçalo Vasconcelos
b74d4f45bb
C#: Add Basis.LookingAt
2023-04-11 16:05:35 +01:00
RedworkDE
27124ed8e5
C#: Discontinue `GodotNuGetFallbackFolder`
2023-04-07 19:22:43 +02:00
bendn
ca0feabbb0
add `hex_decode()` to `String`
2023-04-05 19:44:00 +07:00
Yuri Sizov
ce03630f34
Merge pull request #75477 from kleonc/csharp-fix-vector234i-from-floats-creation
...
C# Truncate instead of round in Vector2/3/4 to Vector2I/3I/4I conversion
2023-03-31 13:01:48 +02:00
Yuri Sizov
8f6ce4c8f9
Merge pull request #71049 from alexdlm/dotnet-generator-selective-disable
...
Add fine-grained disabling of SourceGenerators
2023-03-31 12:56:03 +02:00
kleonc
f53d3382af
C# Truncate instead of round in Vector2/3/4 to Vector2I/3I/4I conversion
2023-03-31 10:59:11 +02:00
Redwarx008
eb1fb254a6
C#: Fix Array.AddRange index out of bounds
...
Fix Array.AddRange index out of bounds
2023-03-27 21:55:06 +08:00
Yuri Sizov
7ef4ada3a6
Merge pull request #75286 from AThousandShips/csharp_shadow
...
Fix "hides member" warnings in `csharp_script.cpp`
2023-03-25 16:15:25 +01:00
Ninni Pipping
ff5d8c4a42
Fix "hides member" warnings in `csharp_script.cpp`
2023-03-25 14:44:12 +01:00
Alex de la Mare
8ab3295e57
Add fine-grained disabling of SourceGenerators
...
This allows manual testing and/or alternate source generators to
provide functionality without conflict.
2023-03-25 13:46:12 +11:00
RedworkDE
42cf684837
C#: Do not print errors about missing references to intentionally ignored members
2023-03-24 20:21:55 +01:00
Yuri Sizov
8402927d3f
Prevent crashing on startup if project has scripted theme types
...
Also avoid order of operation conflicts by moving C# binding generation hook to main.cpp
2023-03-08 11:17:21 +01:00
Rémi Verschelde
b8126b18dc
Merge pull request #73429 from bruvzg/macos_no_sc
...
[macOS] Re-add support for the _sc_ inside app bundle.
2023-03-07 08:36:51 +01:00
RedworkDE
6019f497b8
C#: Fix building projects for MSBuild before 17.3
2023-03-06 17:58:20 +01:00
Rémi Verschelde
5dccc940e7
Merge pull request #74375 from raulsntos/dotnet/ignore-explicit-interface-implementations
...
C#: Ignore explicit interface implementations
2023-03-05 13:39:45 +01:00
Rémi Verschelde
b2622218f9
Merge pull request #74330 from aleksrutins/csharp-identifier-validation
...
Ensure that C# script names (and therefore class names) are valid identifiers
2023-03-05 13:29:26 +01:00
Rémi Verschelde
afc9d381d5
Merge pull request #74312 from raulsntos/dotnet/godot-project-dir-base64
...
C#: Encode GodotProjectDir as Base64 to prevent issues with special characters
2023-03-05 13:28:14 +01:00
Raul Santos
f949e94991
C#: Encode GodotProjectDir as Base64 to prevent issues with special characters
2023-03-04 23:33:30 +01:00
Raul Santos
0372bd56b6
C#: Ignore explicit interface implementations
2023-03-04 19:16:48 +01:00
Aleks Rutins
ae8752a731
Validate that C# class names are valid identifiers
2023-03-04 10:30:40 -05:00
RedworkDE
16a2a164fe
C#: Get singleton instances using the Core name
2023-03-03 16:30:18 +01:00
Rémi Verschelde
526f115752
Merge pull request #73904 from raulsntos/dotnet/tools-popup
...
C#: Always show "Create C# solution" option
2023-03-02 11:22:59 +01:00
Rémi Verschelde
880247ad54
Merge pull request #74127 from RedworkDE/net-debug-crash
...
C#: Fix crash when errors occur before language initialization.
2023-03-02 11:20:26 +01:00
Rémi Verschelde
1c1524a651
Bump version to 4.1-dev
...
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
RedworkDE
c0ebc28136
C#: Fix crash when errors occur before language initialization.
2023-03-01 00:00:33 +01:00
voidedWarranties
bd5ab9f9b4
Remove unused `ScriptLanguage` methods
2023-02-26 22:30:56 -08:00
Raul Santos
a1a2fc2255
C#: Always show "Create C# solution" option
...
Prevents ending up with an empty C# menu.
The option to create the C# solution no longer disappears, to avoid confusing users.
If an user tries to use it when a C# solution already exists they are warned that it will override their sln and csproj files.
2023-02-26 02:56:34 +01:00
Raul Santos
3730d8e343
C#: Check if a class is a singleton using the Core name
...
Use the name of the class in Core, rather than the C# rename, when checking if a class is registered as a singleton.
2023-02-24 18:02:31 +01:00
RedworkDE
6b050a3502
C#: Fix editor crashing without a message when .NET is not installed
2023-02-23 13:52:45 +01:00
bruvzg
b3c64675cc
[macOS] Replace all `Alt/Option+Letter/Number` default shortcuts to avoid conflicts with special character input.
2023-02-20 22:02:47 +02:00
RedworkDE
756a48023f
C#: Fix line position when opening file in VSCode
2023-02-19 12:43:15 +01:00
bruvzg
174e0837e0
[macOS] Re-add support for the _sc_ inside app bundle. Update docs.
2023-02-17 09:55:56 +02:00
Rémi Verschelde
2527d4ce9b
Merge pull request #73458 from paulloz/csharp/actually-clean-solution
...
.NET: Clicking "Clean solution" should clean, not build
2023-02-17 00:30:55 +01:00
Rémi Verschelde
5cb32d8476
Merge pull request #73392 from raulsntos/dotnet/vscode-open-solution
...
C#: Open the solution directory when using VSCode
2023-02-16 18:34:34 +01:00
Paul Joannon
5e3d114829
Clicking "Clean solution" should clean, not build
2023-02-16 11:45:33 +01:00
RedworkDE
fce8a05b58
C#: Fix internal source generator on the 7.0.200 SDK
2023-02-16 11:25:47 +01:00
Raul Santos
d57cb460e2
C#: Open the solution directory when using VSCode
...
The solution directory used to be the same as the project
directory (`res://`). We now allow specifying a different
path for the solution and the other external editors already
use that (which seems more convenient for multi-project
scenarios).
2023-02-15 20:13:40 +01:00
Rémi Verschelde
49e8a2fb66
Merge pull request #73026 from SirUppyPancakes/sync-context-send
...
Implement GodotSynchronizationContext.Send
2023-02-12 22:34:18 +01:00
Caleb Kemper
103cb4bee6
Implement GodotSynchronizationContext.Send
2023-02-12 14:12:09 -07:00
Raul Santos
2a1523d751
Build C# csproj instead of the solution
2023-02-10 03:19:30 +01:00
Rémi Verschelde
b53c4dda62
Merge pull request #72849 from RedworkDE/net-export-settings
...
C#: Rename export settings `mono` -> `dotnet` and remove unused AOT settings
2023-02-08 09:32:41 +01:00
RedworkDE
bf47b62203
C#: Rename export settings `mono` -> `dotnet` and remove unused AOT settings
2023-02-07 18:20:23 +01:00
Paul Joannon
c70c82b0fb
Try and match MSBuild and Godot UI languages
2023-02-07 16:48:23 +01:00
Paul Joannon
9bf2a0bcda
Add new settings about MSBuild
...
- toggle creation of binary logs
- manage log verbosity
- toggle logging in console
2023-02-07 16:48:23 +01:00
Paul Joannon
7cf42dbdee
Add button to open the msbuild logs folder
2023-02-07 16:48:23 +01:00
Paul Joannon
e51a20b714
Rename existing editor settings `mono` -> `dotnet`
2023-02-07 16:48:18 +01:00
RedworkDE
fb0adaff9f
C#: Fix AppContext.BaseDirectory
2023-02-04 14:35:11 +01:00
Rémi Verschelde
bbff9fd7a4
Merge pull request #71786 from raulsntos/dotnet/array
...
Sync C# Array with Core
2023-02-04 00:24:06 +01:00
Rémi Verschelde
1ff2204cfe
Merge pull request #72554 from RedworkDE/net-appcontext-basedirectory
...
C#: Set AppContext.BaseDirectory for editor builds
2023-02-03 15:35:29 +01:00
Rémi Verschelde
5a413894fc
Merge pull request #72635 from RedworkDE/net-nodepath-iequatable
...
C#: Implement `IEquatable<>` and equality operators in `NodePath`
2023-02-03 15:35:22 +01:00
RedworkDE
ac96af1cc9
C#: Declare `IEquatable<>` interface for `StringName`
2023-02-03 00:26:18 +01:00
RedworkDE
7403a3a11b
C#: Implement `IEquatable<>` and equality operators in `NodePath`
...
- Implement `IEquatable<>` interface.
- Implement `==` and `!=` operators.
- Override `Equals` and `GetHashCode`.
2023-02-03 00:25:48 +01:00
RedworkDE
b9d1462d2a
C#: Set AppContext.BaseDirectory for editor builds
2023-02-02 15:05:11 +01:00
Rémi Verschelde
c5c6f2db89
Merge pull request #72553 from RedworkDE/net-output-directory
...
C#: Preserve directories in output during export
2023-02-02 13:59:05 +01:00
Rémi Verschelde
0a9e6e478e
Merge pull request #71800 from akien-mga/ci-codespell-action
...
CI: Add official codespell action with PR annotations
2023-02-01 13:25:23 +01:00
Rémi Verschelde
c461d3880f
Merge pull request #72434 from Treer/master
...
Qualify Console's namespace to avoid mixup with plugin's objects
2023-02-01 13:24:47 +01:00
Rémi Verschelde
e52213e2fa
More codespell fixes, do more changes from previous ignore list
2023-02-01 12:11:36 +01:00
RedworkDE
70ebb6378c
C#: Preserve directories in output during export
2023-02-01 00:37:12 +01:00
Treer
086ce855a8
Update modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/GodotPluginsInitializerGenerator.cs
...
Co-authored-by: Ignacio Roldán Etcheverry <neikeq@users.noreply.github.com>
2023-02-01 07:56:20 +11:00
Raul Santos
7eb8325180
Fix C# examples in documentation
...
- Fix documentation after C# renames.
- Add missing `partial` in C# class declarations.
- Change `delta` parameter type to `double` in C#.
- Ensure parameters match base declaration.
- Use `$` string interpolation in C#.
- Fix invalid or outdated C# code.
- Changed some examples to follow our style guide more closely.
2023-01-31 19:04:07 +01:00
Treer
273df44e1d
Qualify Console's namespace to avoid mixup with plugin's objects
...
Avoid error when a plugin contains a class called "Console":
Godot.SourceGenerators\Godot.SourceGenerators.GodotPluginsInitializerGenerator\GodotPlugins.Game.generated.cs(32,25): error CS0117: 'Console' does not contain a definition for 'Error'
2023-01-31 16:23:17 +11:00
Raul Santos
8166568976
C#: Implement `IEquatable` in `Rid`
...
- Implement `IEquatable` interface.
- Implement `==` and `!=` operators.
- Add `IsValid` method.
- Override `Equals` and `GetHashCode`.
- Fix `ToString` to follow Core.
- Sync documentation with Core.
2023-01-31 04:44:18 +01:00
Rémi Verschelde
312011fade
Fix various typos with codespell
...
And include #72377 .
Co-authored-by: Wiktor Kocielski <withaust@gmail.com>
2023-01-30 14:22:47 +01:00
Rémi Verschelde
ab70b6ca8a
Merge pull request #72325 from raulsntos/dotnet/fix-72321
...
C#: Fix `Rotated` and `RotatedLocal`
2023-01-30 13:35:34 +01:00
Raul Santos
54f8fb010c
Sync C# Array with Core
...
- Add `AddRange` method.
- Add `Fill` method.
- Add `Max` and `Min` methods.
- Add `PickRandom` method.
- Add `Reverse` method.
- Add `RecursiveEqual` method.
- Add `Sort` method.
- Add `Slice` and `GetSliceRange` methods.
- Add `IndexOf` overload that takes an index parameter.
- Add `LastIndexOf` method.
- Add `BinarySearch` method.
- Add/update documentation.
2023-01-30 05:41:53 +01:00
Raul Santos
cc80dda408
C#: Fix `Rotated` and `RotatedLocal`
...
Implementation was interchanged.
2023-01-29 18:43:54 +01:00
Raul Santos
2ef9e2933a
C#: Add `Skew` to `Transform2D` and fix `InterpolateWith`
...
- Add `Skew` property to `Transform2D`.
- Fix `InterpolateWith` in `Transform2D` to support skewed transforms.
2023-01-29 16:24:41 +01:00
Rémi Verschelde
80f59aa3d9
Merge pull request #72205 from raulsntos/dotnet/proxy-class
...
Fix lookup of C# types by their engine name
2023-01-28 15:41:28 +01:00
Rémi Verschelde
092bbfc2ea
Merge pull request #71992 from raulsntos/dotnet/rect-alt
...
C#: Remove `GetArea` and `GetVolume` methods
2023-01-28 15:41:04 +01:00
Raul Santos
65d0d05fa7
Fix lookup of C# types by their engine name
2023-01-27 21:28:15 +01:00
Rémi Verschelde
3c9b7ec26b
Merge pull request #72182 from raulsntos/dotnet/remove-obsolete-stringextensions
...
C#: Remove obsolete StringExtensions methods
2023-01-27 19:26:39 +01:00
Rémi Verschelde
6462e54acc
Merge pull request #71986 from raulsntos/dotnet/readonly-collections
...
C#: Implement readonly-ness in Array and Dictionary
2023-01-27 19:26:35 +01:00
Raul Santos
b3af6141a2
C#: Remove `GetArea` and `GetVolume` methods
...
- Remove `GetArea` method in favor of the `Area` property in Rect2{i}.
- Replace `GetVolume` method with a `Volume` property in AABB.
2023-01-27 18:53:23 +01:00
Raul Santos
15066948d7
C#: Remove obsolete StringExtensions methods
2023-01-27 17:15:23 +01:00
Rémi Verschelde
2b55ac445b
Merge pull request #72111 from raulsntos/method-info-metadata
...
Add `GodotTypeInfo::Metadata` to `MethodInfo`
2023-01-27 15:41:38 +01:00
Raul Santos
1aa54141e6
C#: Implement readonly-ness in Array and Dictionary
...
- Expose `IsReadOnly` and add `MakeReadOnly` method.
2023-01-27 15:25:34 +01:00
Rémi Verschelde
bd1df0f2e3
Merge pull request #71943 from paulloz/debugger/better-errors-printing
...
Better error display in debugger panel
2023-01-27 10:32:38 +01:00
Paul Joannon
c93eec4139
Better error display in debugger panel
...
- Use the right stack frame info as title of the error.
- Use the actual C# exception type as error for exceptions raised from C#.
- Show the right language instead of always **C++ Error**.
2023-01-27 10:01:55 +01:00
Raul Santos
1aceacaa6b
C#: Rename `Object` to `GodotObject`
2023-01-27 02:04:18 +01:00
Raul Santos
a968e51414
C#: Renames to follow .NET naming conventions
...
Renamed C# types and members to use PascalCase and follow .NET naming conventions.
2023-01-27 02:04:17 +01:00
Raul Santos
4788cb35c1
C#: Add global namespace to grouping property info
2023-01-27 01:15:19 +01:00
Rémi Verschelde
2edef2a795
Merge pull request #71825 from RedworkDE/net6-roll-forward
...
C#: Allow use of .NET 7
2023-01-27 00:13:54 +01:00
Rémi Verschelde
0d1b5f8832
Merge pull request #71356 from raulsntos/dotnet/get
...
C#: Lookup signals and methods in Get method
2023-01-27 00:13:13 +01:00
Rémi Verschelde
4f572d1587
Merge pull request #71535 from raulsntos/dotnet/pointers-are-yabai
...
C#: Skip methods with pointer parameters
2023-01-26 23:44:28 +01:00
Rémi Verschelde
fdd3613de1
Merge pull request #71984 from raulsntos/dotnet/dictionary
...
Sync C# Dictionary with Core
2023-01-26 23:44:01 +01:00
Rémi Verschelde
239145d9cb
Merge pull request #71946 from raulsntos/dotnet/gd
...
C#: Sync GD with Core
2023-01-26 23:43:36 +01:00
Rémi Verschelde
bacf594a49
Merge pull request #71583 from raulsntos/dotnet/math
...
C#: Add float an double overloads to Mathf
2023-01-26 23:43:11 +01:00
Rémi Verschelde
c53066682b
Merge pull request #71787 from raulsntos/dotnet/restore-properties
...
C#: Restore `Scale` and `Rotation` properties
2023-01-26 23:42:46 +01:00
Rémi Verschelde
fdd02b8827
Merge pull request #71988 from raulsntos/ 🦭 -attributes
...
Seal C# attributes
2023-01-26 23:42:21 +01:00
Rémi Verschelde
0f840cb214
Merge pull request #72053 from raulsntos/dotnet/sync-context-dispose
...
C#: Implement disposable pattern and seal `GodotSynchronizationContext` class and related
2023-01-26 23:41:52 +01:00
Rémi Verschelde
63b5adf8a8
Merge pull request #72057 from raulsntos/dotnet/fix-must-be-variant
...
C#: Annotate API with `[MustBeVariant]`
2023-01-26 23:00:30 +01:00
Rémi Verschelde
2aa532ad6c
Merge pull request #65529 from magian1127/4.0FixDocTag
...
C# Improve the "Tag" conversion of documents
2023-01-26 22:58:26 +01:00
Raul Santos
cac7a784d6
Add `GodotTypeInfo::Metadata` to `MethodInfo`
2023-01-26 15:51:34 +01:00
Raul Santos
256632a07e
C#: Skip documentation syntax in MustBeVariant analyzer
2023-01-25 17:29:08 +01:00
Raul Santos
0a0c730805
C#: Annotate API with MustBeVariant
...
- Add MustBeVariant attribute to generic parameters that are used in a Variant context
2023-01-25 17:28:59 +01:00
Raul Santos
fc72604bef
C#: Implement disposable pattern and seal `GodotSynchronizationContext` class and related
...
- `GodotSynchronizationContext`
- Implements `IDisposable` to dispose of the disposable field `_queue`.
- Makes the class sealed.
- `GodotTaskScheduler`
- Implements `IDisposable` to dispose of the disposable property `Context`.
- Makes the class sealed.
- `Dispatcher`
- Dispose of previous `GodotTaskScheduler` instances before creating a new one.
2023-01-25 17:04:41 +01:00
Aaron Franke
2a65f6812b
Add PROPERTY_USAGE_NEVER_DUPLICATE flag and use for script
...
Co-authored-by: Yakov Borevich <j.borevich@gmail.com>
2023-01-24 16:37:50 -06:00
Aaron Franke
2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE"
2023-01-24 16:05:07 -06:00
Raul Santos
47ca2f2e09
C#: Sync GD with Core
...
- Add overloads to print methods that take a single `string`.
- Use `StringBuilder` to append print parameters.
- Remove `PrintStack` method.
- Add `ErrorString`.
- Remove `Str` method.
- Add exception to `Range` when step is 0.
- Add `VarToBytesWithObjects` and `BytesToVarWithObjects`.
- Remove optional boolean parameter from `VarToBytes` and `BytesToVar`.
- Move `InstanceFromId` to `Godot.Object`.
- Add `Godot.Object.IsInstanceIdValid`.
- Update documentation.
2023-01-24 19:18:38 +01:00
Raul Santos
e7b719b7ec
Seal C# attributes
2023-01-24 18:42:25 +01:00
Raul Santos
95ef4dc84f
Sync C# Dictionary with Core
...
- Implement `ICollection` methods explicitly.
- Add `Merge` method.
- Add `RecursiveEqual` method.
- Update documentation.
2023-01-24 17:19:52 +01:00
Raul Santos
8b07f95ba0
C#: Add float an double overloads to Mathf
...
- Add `float` and `double` overloads to all methods of `Mathf`.
This allows the methods to be usable with `float`, `double` or `real_t`.
- Use `System.MathF` in the `float` overloads which may result in
better performance.
- Constants remain as `real_t` for the time being.
- Add aggresive inlining for methods that wrap `System.Math` calls.
2023-01-24 15:01:26 +01:00
Magian
35bfce2afd
C# Improve the "Tag" conversion of documents
...
[codeblocks] for Keep only the [CSharp] part.
[param] is changed to <c>.
[b] for bold text.
[i] for italic text.
4.0 now uses variant, so [variant] to <see cref="Godot.Variant"/>.
since Rider does not support [u], only comments have been modified.
2023-01-24 18:40:48 +08:00
Raul Santos
b29193945d
C#: Move `LinearToDb` and `DbToLinear` to Mathf
2023-01-23 20:20:54 +01:00
Rémi Verschelde
5b1df48c6c
Convert en_GB spelling to en_US with codespell
2023-01-23 11:02:20 +01:00
RedworkDE
3f1241cb82
C#: Allow use of .NET 7
...
The editor will use .NET 7 if it is installed and fall back to .NET 6 otherwise.
Exported projects will use .NET 7 or .NET 6 depending on the value of TargetFramework in the csproj.
2023-01-21 23:11:37 +01:00
Juan Linietsky
dddd8d43f6
Support script global resource name in EditorFileSystem
...
* Works for binary and text files.
* Makes EditorQuickOpen work with custom resources again.
* Information is cached and easily accessible.
Properly fixes #66179 . Supersedes #66215 and supersedes #62417
**WARNING**: This required breaking backwards binary compatibility (.res and .scn files). Files saved after this PR is merged will no longer open in any earlier versions of Godot.
2023-01-21 14:19:27 +01:00
Raul Santos
04996df61e
C#: Restore `Scale` and `Rotation` properties
2023-01-21 04:59:13 +01:00
Rémi Verschelde
5dd3a6dbe2
Merge pull request #71638 from raulsntos/dotnet/export-plugin
...
C#: Implement `ExportPlugin::_get_name` and move `GLOBAL_DEF` to CSharpLanguage
2023-01-18 22:29:37 +01:00
Raul Santos
3425d43fed
C#: Move `GLOBAL_DEF`s to CSharpLanguage ctor
...
Also documents the .NET project settings.
2023-01-18 21:53:58 +01:00
Raul Santos
62106fe5e3
C#: Implement `ExportPlugin::_get_name`
2023-01-18 18:17:38 +01:00
Raul Santos
4bdcfe1443
Sync C# vectors with Core
...
- Remove `Vector2.Lerp` overload that takes a weight parameter of type `Vector2`.
- Remove `Vector3.Lerp` overload that takes a weight parameter of type `Vector3`.
- Remove `Color.Lerp` overload that takes a weight parameter of type `Color`.
- Remove `Angle` method from `Vector2i`.
- Remove `AngleTo` method from `Vector2i`.
- Remove `AngleToPoint` method from `Vector2i`.
- Remove `Cross` method from `Vector2i`.
- Remove `DistanceSquaredTo` method from `Vector2i` and `Vector3i`.
- Remove `DistanceTo` method from `Vector2i` and `Vector3i`.
- Remove `Dot` method from `Vector2i` and `Vector3i`.
- Remove `PosMod` method from `Vector2i` and `Vector3i`.
- Remove `Orthogonal` method from `Vector2i`.
- Remove `&` operator from `Vector2i` and `Vector3i`.
2023-01-17 18:07:33 +01:00
Rémi Verschelde
3a53990e9c
Merge pull request #71516 from raulsntos/dotnet/property-accessors
...
C#: Make property accessors internal
2023-01-17 17:30:49 +01:00
Raul Santos
ab5e532f1a
C#: Skip methods with pointer parameters
2023-01-17 04:32:05 +01:00
Raul Santos
47e355f965
C#: Make property accessors internal
2023-01-16 15:15:26 +01:00
Raul Santos
0ccb5f3954
C#: Implement `Mathf.SinCos`
...
Implement `Mathf.SinCos` that wraps a call to `System.Math.SinCos`,
this allows us to use the `SinCos` method more conveniently with
`real_t`.
Using `Math.SinCos` is often cheaper than separate calls to `Math.Sin`
and `Math.Cos`, and they are often used together.
2023-01-16 13:29:32 +01:00
Rémi Verschelde
ba551727ef
Merge pull request #71458 from raulsntos/dotnet/quaternion
...
C#: Make `Length` and `LengthSquared` into methods in `Quaternion`.
2023-01-16 09:20:53 +01:00
Rémi Verschelde
88c81bfbe5
Merge pull request #71456 from raulsntos/dotnet/sync-plane
...
C#: Sync `Plane` with Core
2023-01-16 09:20:30 +01:00
Rémi Verschelde
94312ab943
Merge pull request #71445 from raulsntos/dotnet/transforms
...
C#: Add missing `Transform{2D,3D}` and `Basis` constructors
2023-01-16 09:20:07 +01:00
Raul Santos
7a19c87c7e
C#: Sync `Plane` with Core
...
- Add `Plane(Vector3)` constructor.
- Rename `IntersectRay` to `IntersectsRay`.
- Rename `IntersectSegment` to `IntersectsSegment`.
- Replace `Center` property with `GetCenter` method.
- Add and fix documentation about the _normal_ parameter
to Core and C# documentation.
2023-01-15 19:47:42 +01:00
Raul Santos
5136366112
C#: Add missing `Transform{2D,3D}` and `Basis` constructors
...
- Remove `Transform3D(Quaternion, Vector3)` constructor from C#.
- Add `Transform3D(Projection)` constructor to C#.
- Add documentation to the `Transform3D(Projection)` constructor in Core.
- Add `Transform3D` constructor with only real_t params to C# that mirrors `Transform2D`.
- Expose `Basis` constructor with only real_t params in C#.
- Add `Transform2D(real_t, Vector2, real_t, Vector2)` constructor to C#.
2023-01-15 15:45:43 +01:00
Raul Santos
0476fc5a07
C#: Replace `Rotation` and `Scale` properties with get methods
...
- Replace `Rotation` property with `GetRotation` method in `Transform2D`.
- Replace `Scale` property with `GetScale` method in `Transform2D`.
- Replace `Scale` property with `GetScale` method in `Basis`.
Core does not expose set methods.
2023-01-15 14:06:16 +01:00
Raul Santos
28a8caac26
C#: Make `Length` and `LengthSquared` into methods in `Quaternion`.
...
The `Length` and `LengthSquared` members are implemented as methods
in every other C# struct, `Quaternion` was the only one implementing
them as properties.
2023-01-15 14:03:44 +01:00
Rémi Verschelde
d6d87b6ca4
Merge pull request #71374 from raulsntos/dotnet/remove-spherical_interpolate_with
...
C#: Remove `SphericalInterpolateWith` from Transform3D
2023-01-15 13:08:15 +01:00
Rémi Verschelde
e51426cab9
Merge pull request #71423 from raulsntos/dotnet/intersects-without-include_borders
...
C#: Remove `includeBorders` parameter from `Rect2i.Intersects` and `AABB.Intersects`
2023-01-15 13:07:13 +01:00
Raul Santos
949a2778ca
C#: Sync `Basis` with Core
...
- Remove `GetOrthogonalIndex` method (moved to `GridMap`).
- Remove `GetRow` and `SetRow` methods.
2023-01-14 20:06:45 +01:00
Raul Santos
c990f7984e
C#: Remove `includeBorders` parameter from `Rect2i.Intersects` and `AABB.Intersects`
2023-01-14 04:39:40 +01:00
Raul Santos
4438315242
C#: Remove `SphericalInterpolateWith` from Transform3D
2023-01-14 02:10:59 +01:00
Raul Santos
a6ba914f15
C#: Lookup signals and methods in Get method
...
Allows to retrieve `Callable`s and `Signal`s using `Get` like it works in GDScript.
2023-01-13 22:19:25 +01:00
Yuri Sizov
4c5e09f96a
Merge pull request #71339 from raulsntos/dotnet/is_finite
...
Add `IsFinite` to C# Variants
2023-01-13 23:34:51 +03:00
Yuri Sizov
bdb3543c2a
Merge pull request #71343 from raulsntos/dotnet/is_zero_approx
...
Add `IsZeroApprox` to C# vectors
2023-01-13 23:31:24 +03:00
Raul Santos
14c16746f3
Add `IsZeroApprox` to C# vectors
2023-01-13 18:53:39 +01:00
Raul Santos
f852004cf5
Add `IsFinite` to C# Variants
2023-01-13 17:57:52 +01:00
Juan Linietsky
6f0e210093
Refactor ProjectSetting overrides
...
* Overrides no longer happen for set/get.
* They must be checked with a new function: `ProjectSettings::get_setting_with_override()`.
* GLOBAL_DEF/GLOBAL_GET updated to use this
This change solves many problems:
* General confusion about getting the actual or overriden setting.
* Feature tags available after settings are loaded were being ignored, they are now considered.
* Hacks required for the Project Settings editor to work.
Fixes #64100 . Fixes #64014 . Fixes #61908 .
2023-01-13 15:13:56 +01:00
Guillermo
6137929f52
Improve description of `GetNodeOrDefault` in C# API
...
Indenting with spaces and added a line break
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-11 15:02:08 +01:00
Rémi Verschelde
64f2b970d8
Merge pull request #71114 from reduz/cleanup-property-hints
...
Removed unused property hints and `Object::get_translatable_strings()`
2023-01-09 16:57:31 +01:00
Juan Linietsky
0e0a6bb39b
Removed unused property hints and `Object::get_translatable_strings()`
...
* Remove unused `EditorPropertyMember` and related hints, previouly used by
VisualScript. Such logic should be implemented in the VS module itself.
* As the above broke compatibility with the VS module, clean up the other
hacks that were still in core in support of VisualScript.
* `PROPERTY_USAGE_INTERNATIONALIZED` was only used in Object's
`get_translatable_strings()`, which is a legacy function not used anywhere.
So both are removed.
* Reordered some usage flags after the above removal to minimize the diff.
* General clean up.
Fixes #30203 .
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-01-09 16:56:01 +01:00