Matt Enad
f75cffcd46
Fix hover style margin with extra borders enabled
...
The content margins for FlatMenuButton and RunBarButton are now handled correctly when the "Draw Extra Borders" user option is enabled
2024-02-21 21:36:48 -05:00
Rémi Verschelde
c6d091e0f3
Merge pull request #87253 from van800/van800/analyser
...
Provide a roslyn analyzers corresponding to the GD0001 and GD0002
2024-02-21 15:22:54 +01:00
Ivan Shakhov
00dc19585b
provide analyser corresponding to the GD0001 and GD0002, add ClassPartialModifierAnalyzerFix, and tests
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-02-21 12:35:28 +03:00
Rémi Verschelde
aeaec000fc
Merge pull request #88495 from paulloz/dotnet/test-and-fix-exports-diagnostics
...
[.NET] Test and fix exports diagnostics
2024-02-21 07:43:08 +01:00
Rémi Verschelde
00f6c97610
Merge pull request #80343 from raulsntos/dotnet/warnings/RS2008
...
C#: Add analyzer release tracking
2024-02-20 23:59:39 +01:00
Rémi Verschelde
1aab6e96b9
Merge pull request #87133 from Repiteo/dotnet/enforce-globalization-rules
...
C#: Enforce globalization code quality rules
2024-02-20 20:04:30 +01:00
Rémi Verschelde
9e9dcdbba4
Merge pull request #86378 from RobProductions/update-hover-styling
...
Add hover highlight to main editor buttons
2024-02-20 19:34:40 +01:00
Thaddeus Crews
000d12d237
C#: Enforce Globalization code quality rules
2024-02-20 11:15:12 -06:00
Paul Joannon
88ad4e6c24
Add tests and fix exports diagnostics
...
- Add tests for the following diagnostics: GD0101, GD0102, GD0103, GD0104, GD0105, GD0106, GD0107.
- Fix GD0101 not being reported any more (was filtering static classes before reporting).
- Fix GD0107 not preventing `Node` members from being exported from not-`Node` types.
2024-02-20 11:24:41 +01:00
Raul Santos
f685c69bd4
C#: Add analyzer release tracking
...
Fixes diagnostic RS2008.
2024-02-19 19:47:40 +01:00
Ivan Shakhov
703c34a788
Bump Rider.PathLocator nuget version, which provides a fix for detecting Rider installations
2024-02-19 21:04:28 +03:00
Raul Santos
fe280ef9ae
C#: Various fixes to generic scripts
...
- Report a diagnostic when there are multiple classes that match the script file name in the same script since that will result in a duplicate path key in the bimap and it's not allowed.
- Fix InspectorPlugin to handle empty paths in case the project was built with a previous version of Godot that used empty paths for generic scripts.
- Add tests for the new diagnostic GD0003.
2024-02-19 06:33:13 +01:00
Rémi Verschelde
9f48330c3f
Merge pull request #88469 from paulloz/dotnet/cleaner-diagnostic-rules
...
[.NET] Clean diagnostic rules
2024-02-19 00:08:30 +01:00
Rémi Verschelde
033821c595
Merge pull request #88245 from shana/simplify-mono-support-detection
...
C#: Let platforms signal if they support the mono module or not
2024-02-19 00:08:07 +01:00
Paul Joannon
5981886fb7
Clean diagnostic rules
...
Move the following diagnostics into static readonly fields: GD0101, GD0102, GD0103, GD0104, GD0105, GD0106, GD0107, GD0201, GD0202, GD0203, GD0301, GD0302, GD0303, GD0401, GD0402.
To be more consistent, the titles for the following diagnostics were modified: GD0101, GD0105, GD0106, GD0302, GD0303, GD0401, GD0402. A subsequent update of the documentation repo is needed.
Tests for the following diagnostics were created: GD0201, GD0202, GD0203.
2024-02-18 16:47:20 +01:00
Raul Santos
dcb411daee
C#: Fix building OpenVisualStudio executable
...
Since moving the TFM to .NET Core we need to add some configuration to cross-compile a Windows executable from Linux.
2024-02-18 05:40:06 +01:00
Thaddeus Crews
48428bd087
C#: Match Core implementation of `BinToInt` & `HexToInt`
2024-02-17 11:59:14 -06:00
Rémi Verschelde
ccd9cefa8e
Merge pull request #87137 from /dotnet/nullable-godot-tools
2024-02-17 18:31:37 +01:00
Matt Enad
5b5de0e167
Add hover highlight to main editor buttons
...
Updates styling of the editor run bar, plugin, bottom panel, icon buttons, and main menu buttons for accessibility.
2024-02-16 14:49:44 -05:00
Rémi Verschelde
09df8f4a56
Merge pull request #87952 from paulloz/dotnet/byebye-signal-callback-generation
...
Disable signal callback generation in C#
2024-02-15 15:44:55 +01:00
Rémi Verschelde
1efc3625fa
Merge pull request #87342 from raulsntos/dotnet/warnings/RS1024
...
C#: Use SymbolEqualityComparer
2024-02-15 15:44:47 +01:00
Raul Santos
7b348708e8
C#: Use SymbolEqualityComparer
...
Use `SymbolEqualityComparer` to compare symbols and fix `RS1024` warning.
2024-02-14 17:33:06 +01:00
Muller-Castro
a8bc9f3e78
Add const lvalue ref to core/* container parameters
2024-02-14 11:20:36 -03:00
Paul Joannon
9fa2355cef
Disable signal callback generation in C#
2024-02-14 13:26:45 +01:00
Andreia Gaita
21e524a798
C#: Let platforms signal if they support it or not
...
Instead of hardcoding platform names that support C#, let platforms
set a flag indicating if they support it. All public platforms
except web already support it, and it's a pain to maintain a patch
for this list just to add additional names of proprietary console
platforms.
This makes adding new platforms or variants or existing platforms
much easier, as the platform can signal what it supports/doesn't
support directly, and we can avoid harcoding platform names.
2024-02-13 22:48:43 +01:00
Thaddeus Crews
3314f8cc65
C#: Enable nullable environment for `GodotTools`
2024-02-13 12:24:53 -06:00
Rémi Verschelde
dfe226b933
Merge pull request #88270 from TokageItLab/avoid-near-far
...
Avoid unqualified-id "near" and "far" in Node3DEditor/Viewport
2024-02-13 11:25:24 +01:00
Silc Lizard (Tokage) Renew
67e38709fd
Avoid unqualified-id "near" and "far" in Node3DEditor/Viewport
2024-02-13 18:53:21 +09:00
Zae
8245157682
C#: Fix missing CowData 64-bit promotion for `PackedInt32Array`.
2024-02-13 12:19:48 +08:00
Rémi Verschelde
7d89f557f3
Merge pull request #88238 from shana/cs-export-fix-output-files
...
C#: Fix processing exclusions during export
2024-02-12 23:29:47 +01:00
Andreia Gaita
2f10f7bed4
Fix processing exclusions during export
2024-02-12 11:51:05 +01:00
Raul Santos
5815d1c8c8
Improve handling of generic C# types
...
- Create CSharpScript for generic C# types.
- `ScriptPathAttributeGenerator` registers the path for the generic type definition.
- `ScriptManagerBridge` lookup uses the generic type definition that was registered by the generator.
- Constructed generic types use a virtual `csharp://` path so they can be registered in the map and loaded as if there was a different file for each constructed type, even though they all share the same real path.
- This allows getting the base type for a C# type that derives from a generic type.
- Shows base scripts in the _Add Node_ and _Create Resource_ dialogs even when they are generic types.
- `get_global_class_name` implementation was moved to C# and now always returns the base type even if the script is not a global class (this behavior matches GDScript).
- Create `CSharpScript::TypeInfo` struct to hold all the type information about the C# type that corresponds to the `CSharpScript`, and use it as the parameter in `UpdateScriptClassInfo` to avoid adding more parameters.
2024-02-08 18:31:13 +01:00
Paul Joannon
9d283063a0
Fix C# "out of sync" notice with external editors
...
Change what triggers our re-evaluation of the last valid build datetime stored internally.
Move that datetime in `BuildManager`.
2024-02-07 21:26:32 +01:00
Raul Santos
8ce4a0cf15
C#: Fix crash when reloading scripts
...
The crash cond was accidentally moved to the `reload_scripts` method when it was only meant to be in the `reload_tool_script` method. Same about restarting the HotReloadAssemblyWatcher timer.
Also removed the loop that checks if the script array contains a C# script because if we're in CSharpLanguage we can assume that at least one of them is.
2024-02-07 06:33:51 +01:00
Rémi Verschelde
acde2a81ff
Merge pull request #84640 from aaronfranke/gravity-get
...
Expose a method to get gravity for any physics body
2024-02-05 14:48:31 +01:00
Rémi Verschelde
d0f8b76ffd
Merge pull request #87838 from paulloz/dotnet/fix-duplicate-key-on-reload
...
C#: Fix duplicate key issue on reload
2024-02-02 12:05:14 +01:00
Rémi Verschelde
8a47d6eb50
Merge pull request #87790 from nongvantinh/fix-87643
...
Fix incorrect condition for error filtering
2024-02-02 12:03:59 +01:00
Rémi Verschelde
24a2560d30
Merge pull request #87682 from zaevi/fix_csharp_stringname_ref
...
C#: Fix issues for StringName reference in `CSharpInstanceBridge.Get`.
2024-02-02 12:02:44 +01:00
Paul Joannon
999180d5b5
Delay fs update when populating path bimap
2024-02-01 22:06:40 +01:00
Nông Văn Tình
d81c9c32c5
Fix incorrect condition for error filtering
...
Fixes : #87643
The original condition stopped immediately after checking for 'searchText' in the 'Message' field, resulting in premature termination of subsequent checks. This fix ensures that all relevant conditions are appropriately evaluated before determining the filtering outcome.
Additionally, accompanying changes include improved code readability for better comprehension. This adjustment enhances the maintainability of the error filtering mechanism, contributing to a more robust codebase overall.
2024-01-31 23:01:37 +07:00
Aaron Franke
aed5ea9460
Expose a method to get gravity for any physics body
2024-01-30 23:57:38 -06:00
Rémi Verschelde
736696b533
Merge pull request #87679 from raulsntos/dotnet/remove-unused
...
C#: Remove unused code
2024-01-30 17:48:07 +01:00
Michael Wörner
9d50a486bf
Fixed ~CSharpScript() holding on to a mutex longer than necessary, creating potential for a deadlock.
2024-01-28 21:28:14 +01:00
Zae
1e14503715
C#: Fix issues for StringName reference in `CSharpInstanceBridge.Get`.
2024-01-29 02:04:02 +08:00
Raul Santos
82380ec700
C#: Remove unused code
...
- Remove `AotBuilder` that was used for MonoAOT in 3.x.
- Remove `PlaySettings` that was used for IDE support in 3.x.
- Remove `ApiAssembliesInfo` that was used for Project generation in 3.x.
- Remove pieces of the old iOS support from 3.x.
2024-01-28 16:09:59 +01:00
Rémi Verschelde
99ac3d332a
Merge pull request #87597 from zaevi/fix_csharp_aot_initialization
...
C#: Fix not assigning `runtime_initialized` when initializing with AOT.
2024-01-26 11:49:53 +01:00
Rémi Verschelde
3bbf4abfaa
Merge pull request #87550 from zaevi/fix_csharp_generic_reloading
...
C#: Fix sorting for generic types when reloading assemblies.
2024-01-26 11:48:18 +01:00
Rémi Verschelde
563e385810
Merge pull request #87526 from zaevi/fix_csharp_gc
...
C#: Fix incorrect GC handle for non-instantiable types.
2024-01-26 11:47:25 +01:00
Rémi Verschelde
85b2c947b2
Merge pull request #87518 from paulloz/dotnet/fix-warnings
...
Clean a number of C# warnings
2024-01-26 11:46:37 +01:00
Rémi Verschelde
849b69828b
Merge pull request #85908 from avilches/fix-must-be-variant-analyzer-fail-with-generic-typed-attributes
...
Allow using `[MustBeVariant]` in generic typed attributes
2024-01-26 11:42:34 +01:00
Rémi Verschelde
d36f5cf2ba
Merge pull request #85504 from nongvantinh/fix-csharp-loader
...
Fix C# script loader does not work reliably
2024-01-26 11:42:01 +01:00
Zae
18599c0935
C#: Fix sorting for generic types when reloading assemblies.
2024-01-26 18:00:46 +08:00
Paul Joannon
46b3096570
Clean a bunch of C# warnings
...
- `[Obsolete]` tag generated in the middle of documentation comments
- Potential `null` values in generators
- Obsolete call to `GetEditorInterface()`
- We don't want `Godot.Collections.Array` to end with `Collection`
- A few culture specifications and use of `AsSpan` instead of `SubString` in `StringExtensions`
- Disable CA1716 in GodotSharp
2024-01-26 09:38:33 +01:00
Zae
e868a9f577
C#: Fix not assigning `runtime_initialized` when initializing with AOT.
2024-01-26 05:44:40 +08:00
Zae
201e946741
C#: Fix incorrect GC handle for non-instantiable types.
2024-01-25 02:40:08 +08:00
Alberto Vilches
692412562d
C#: Fix to allow usage of [MustBeVariant] in generic typed attributes
2024-01-21 22:29:29 +01:00
Nông Văn Tình
7676e389a7
Fixes C# script loader does not work reliably
2024-01-22 04:20:27 +07:00
Rémi Verschelde
0bcc0e92b3
Merge pull request #86730 from reduz/64-bit-cowdata
...
Promote CowData to 64 bits
2024-01-19 18:46:11 +01:00
Juan Linietsky
24fe0715b5
Promote CowData to 64 bits
...
Fixes a lot of bugs, please help me fill the list.
2024-01-19 17:41:10 +01:00
Yuri Sizov
b6a2c78033
Merge pull request #87286 from akien-mga/fix-preprocessor-if-ENABLED-checks
...
Fix `#if *_ENABLED` inconsistencies, should check if defined
2024-01-17 18:53:33 +01:00
Yuri Sizov
66736398cd
Merge pull request #87264 from AThousandShips/aabb_fix_cs
...
[C#] Fix `Encloses` failing on shared upper bound for `AABB` and `Rect2(I)`
2024-01-17 18:53:22 +01:00
Yuri Sizov
c027aecc2e
Merge pull request #86676 from rune-scape/sparse-script-reload
...
GDScript: Hot-reload changed scripts only
2024-01-17 18:52:54 +01:00
Yuri Sizov
7351b5704a
Merge pull request #86528 from avilches/must-be-variant-tests
...
Add unit tests for C# diagnostic analyzers
2024-01-17 18:52:45 +01:00
Rémi Verschelde
0a7579b161
Fix `#if *_ENABLED` inconsistencies, should check if defined
...
Co-authored-by: Caroline Joy Bell <halotroop2288@proton.me>
2024-01-17 10:30:15 +01:00
A Thousand Ships
227a165ce4
[C#] Fix `Encloses` failing on shared upper bound for `AABB` and
...
`Rect2(I)`
2024-01-16 20:20:53 +01:00
Yuri Sizov
95b27fe8c7
Reorganize code related to editor theming
...
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.
Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.
All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
Alberto Vilches
7a90c56c00
C# Add test suite for Diagnostic Analyzers: GlobalClass and MustBeVariant
2024-01-15 11:31:12 +01:00
Rémi Verschelde
3dcf9059ae
Merge pull request #86454 from Repiteo/c#-upgrade-TFMs
...
C#: Upgrade TFM for `net472` and some `netstandard2.0` projects
2024-01-11 17:37:19 +01:00
Rémi Verschelde
ba96dbb49a
Merge pull request #85460 from van800/master
...
Bump the `JetBrains.Rider.PathLocator` PackageReference to 1.0.8
2024-01-11 17:36:04 +01:00
Rémi Verschelde
cea56336b2
Merge pull request #86972 from zaevi/fix_csharp_method_return_type
...
C#: Fix return type hint for methods.
2024-01-10 12:03:33 +01:00
Rémi Verschelde
8a6debd71e
Merge pull request #86592 from emklasson/fix_gd0103_link
...
Fix typo in GD0103 error link
2024-01-10 12:03:29 +01:00
Zae
51c54b03d1
C#: Fix return type hint for methods.
2024-01-09 04:28:17 +08:00
Thaddeus Crews
7a06390552
C#: Upgrade TFM for `net472` and some `netstandard2.0` projects
2024-01-06 09:14:33 -06:00
Muller-Castro
96a95cb974
Add const lvalue ref to container parameters
2024-01-05 14:49:57 -03:00
Rémi Verschelde
11d1844e66
Merge pull request #85869 from paulloz/dotnet-warning-out-of-date-properties
...
.NET: Add a warning in the inspector when properties might be out of sync
2024-01-03 15:43:41 +01:00
Rémi Verschelde
22e880ad20
Merge pull request #83163 from Chubercik/vectorXi_dist_methods
...
Implement `Vector2i/3i/4i` methods: `distance_to` and `distance_squared_to`
2024-01-03 09:58:36 +01:00
rune-scape
cde478bda6
Hot-reload only changed scripts
2024-01-02 17:56:52 -08:00
Mikael Klasson
a2b183067c
fix: use correct number in GD0103 link
2023-12-27 20:30:59 +09:00
Paul Joannon
0818d015db
Inspector ⚠️ when C# props might be out of date
2023-12-22 23:27:13 +01:00
Raul Santos
abd7927325
C#: Use string literal instead of nameof
...
Using `nameof` expressions with method parameters requires C# 11 and we're currently on C# 10.
2023-12-21 03:11:47 +01:00
Yuri Sizov
ef79e5d9dd
Merge pull request #82983 from Repiteo/c#-godotsharp-nullable-classes
...
[C#] Enable nullability for variant classes
2023-12-19 20:32:30 +01:00
Yuri Sizov
c8d0325a93
Merge pull request #82955 from paulloz/testing-source-generators
...
Add unit tests for C# source generators
2023-12-19 20:32:26 +01:00
msreis
f1cc14d525
Fix missing time for some script functions in profiler
...
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.
Fixes #23715 , #40251 , #29049
2023-12-19 19:42:21 +01:00
Paul Joannon
b352bdc8cb
Add tests for source generators
...
- Bootstrap xUnit project to test source generators
- Implement source generator tests
- Better tests structure (put test data in cs files)
- Enable `ScriptSerializationGeneratorTests`
- Enable `ScriptPathAttributeGeneratorTests`
- Fix `NesterClass` -> `NestedClass`
- Use `Path.Combine` when dealing with paths
- Copy test data to the output directory
2023-12-19 18:26:52 +01:00
Yuri Sizov
f478a599fc
Merge pull request #85975 from Repiteo/c#-null-ptr-exception
...
C#: Implement function to throw on null pointers
2023-12-19 13:02:24 +01:00
Thaddeus Crews
a0db88335a
Implement function to throw on null pointers
...
• Specifically: checks if ptr == IntPtr.Zero
2023-12-17 08:52:20 -06:00
Thaddeus Crews
08e44123cb
[C#] Enable nullability for variant classes
2023-12-09 12:42:10 -06:00
Thaddeus Crews
db7a643e1c
[C#] Enable nullability for variant structs
2023-12-09 12:41:53 -06:00
Rémi Verschelde
d76c1d0e51
Bump version to 4.3-dev
...
The essential doesn't change.
-- Samuel Beckett, Waiting for Godot
2023-11-29 23:00:27 +01:00
Ivan Shakhov
7f63f4a6bf
bump the PackageReference "JetBrains.Rider.PathLocator" to 1.0.8
2023-11-28 11:13:30 +01:00
bruvzg
a92511fec3
[iOS] Fix dotnet export.
2023-11-16 15:05:44 +02:00
Raul Santos
a351c4bbe3
C#: Use `get_instance_binding` instead of set
2023-11-15 21:06:13 +01:00
Raul Santos
3936871077
C#: Fail `callp` silently if script is not valid
2023-11-14 16:56:16 +01:00
Rémi Verschelde
313bffc205
Merge pull request #83357 from raulsntos/dotnet/ConvertCallableToNative(default)
...
C#: Fix converting default Callables to native
2023-11-10 21:55:22 +01:00
A Thousand Ships
668761fa8e
Rename `Vector2/3/4I.Min/Max` to `MinValue/MaxValue`
...
More consistent with the `Mathf` constants they reference
2023-11-09 14:16:53 +01:00
Rémi Verschelde
26f1c503ec
Merge pull request #84617 from YuriSizov/editor-this-one-is-for-all-my-subs
...
Fix node names of submenu items across the editor
2023-11-09 11:47:24 +01:00
Rémi Verschelde
ce53362f98
Merge pull request #83670 from raulsntos/notification-predelete-cleanup
...
Add `NOTIFICATION_PREDELETE_CLEANUP` notification to fix C# `Dispose()`
2023-11-09 11:45:49 +01:00
Yuri Sizov
b04b546092
Fix node names of submenu items across the editor
...
Also removes some programmer remarks and fixes some docs.
2023-11-08 14:42:42 +01:00
Rémi Verschelde
6afd320984
Merge pull request #78157 from RedworkDE/net-shutting-down-abruptly
...
C#: Fix crash with `DisposablesTracker_OnGodotShuttingDown`
2023-10-31 20:52:27 +01:00
Rémi Verschelde
67941551ca
Merge pull request #83809 from raulsntos/dotnet/free-dialogs
...
C#: Free dialogs when exiting the editor
2023-10-30 16:26:15 +01:00
Rémi Verschelde
bf41c6bd34
Merge pull request #82918 from raulsntos/dotnet/only-node-can-export-node
...
C#: Report diagnostic for Node exports in a type that doesn't derive from Node
2023-10-27 11:36:33 +02:00
Rémi Verschelde
398b254f27
Merge pull request #83325 from raulsntos/dotnet/find-latest-sdk
...
C#: Fallback to the latest SDK
2023-10-24 10:54:04 +02:00
Theraot
8777c05817
Expanded documentation for vector slide and project
2023-10-23 06:16:07 -05:00
Raul Santos
48edcc3b34
C#: Free dialogs when exiting the editor
2023-10-23 02:10:06 +02:00
Raul Santos
9750e49c57
Add `NOTIFICATION_PREDELETE_CLEANUP` notification
...
New notification sent after `NOTIFICATION_PREDELETE` to let Objects cleanup at the very end, it should be the last notification sent.
2023-10-20 13:43:42 +02:00
Rémi Verschelde
49f492d54b
Merge pull request #83532 from raulsntos/dotnet/nested-class-generation
...
C#: Fix generated nested class order
2023-10-18 16:54:58 +02:00
Raul Santos
fe078219fc
C#: Fix generated nested class order
2023-10-18 03:37:57 +02:00
Raul Santos
e6ebde8408
Fix C# docs to use the proper XML
...
Replaces some BBCode that was accidentally left in the C# documentation
with the proper XML syntax.
2023-10-18 01:56:25 +02:00
Rémi Verschelde
dce1aab174
Merge pull request #83514 from kleonc/docs-multiplication-operators-doing-xform_inv-csharp
...
Clarify C# docs for operators performing `xform_inv`
2023-10-18 00:06:02 +02:00
Rémi Verschelde
ca09afd530
Merge pull request #80489 from raulsntos/dotnet/diagnostics
...
C#: Improve diagnostic messages and add help link
2023-10-17 23:59:17 +02:00
kleonc
408de3b091
Clarify C# docs for operators performing xform_inv
2023-10-17 19:49:42 +02:00
Raul Santos
aa4dba5b56
C#: Improve diagnostic messages and add help link
...
- Reword diagnostic messages.
- Add help link to diagnostics.
2023-10-17 19:45:09 +02:00
Thaddeus Crews
0935a99bf9
C# - bindings generator langword check
2023-10-17 08:51:24 -05:00
Raul Santos
be1dfd3b3a
C#: Allow exporting games without C#
...
When exporting a game that contains a C# solution, a feature is added so the exported game can check if it should initialize the .NET module. Otherwise, the module initialization is skipped so games without C# won't check for the assemblies and won't show alerts when they're missing.
2023-10-16 05:07:11 +02:00
Raul Santos
d525a45e5c
C#: Fix converting default Callables to native
2023-10-15 02:02:58 +02:00
Raul Santos
a186343abd
C#: Fallback to the latest SDK
2023-10-14 14:21:48 +02:00
Zae
55f74d99f4
C#: Fix lookup for singleton instance types.
2023-10-13 16:40:46 +08:00
Jakub Marcowski
cb954c6bab
Implement `Vector2i/3i/4i` methods: `distance_to` and `distance_squared_to`
2023-10-12 13:46:49 +02:00
Raul Santos
cea77d0b48
C#: Add checks to Android export
...
- Add .NET 7.0 TFM when the platform is Anroid to the created csproj.
- Prevent exporting to Android when the architecture is not supported.
2023-10-10 00:35:08 +02:00
Rémi Verschelde
9694f1d48c
Merge pull request #83051 from Repiteo/c#-untyped-to-typed-argumentnullexception
...
C#: Untyped to typed `ArgumentNullException`
2023-10-09 23:24:52 +02:00
Rémi Verschelde
4a5801b44a
Merge pull request #82729 from shana/shana/ios-csharp
...
Add C# iOS support
2023-10-09 23:23:11 +02:00
Rémi Verschelde
71a8ac41fb
Merge pull request #72751 from dalexeev/doc-comment-color
...
Highlight doc comments in a different color
2023-10-09 23:21:54 +02:00
Andreia Gaita
ee9a735c26
Add C# iOS support
...
This support is experimental and requires .NET 8
Known issues:
- Requires macOS due to use of lipo and xcodebuild
- arm64 simulator templates are not currently included
in the official packaging
2023-10-09 18:22:56 +02:00
Thaddeus Crews
d0cd726310
C#: untyped to typed handle null exception
...
• Add some missing exception/return documentation
2023-10-09 09:53:21 -05:00
Rémi Verschelde
a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
...
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Danil Alexeev
de7cbe8789
Highlight doc comments in a different color
2023-10-08 19:26:10 +03:00
A Thousand Ships
f18aa00e85
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-08 17:23:33 +02:00
Thaddeus Crews
d5d5af653e
C# - Fix inheritdoc links in Compat.cs
2023-10-08 09:14:28 -05:00
Raul Santos
bfe1a93023
C#: Report diagnostic for Node exports in a type that doesn't derive from Node
2023-10-06 19:03:18 +02:00
clayjohn
51ed3aef63
Vertex and attribute compression to reduce the size of the vertex format.
...
This allows Godot to automatically compress meshes to save a lot of bandwidth.
In general, this requires no interaction from the user and should result in
no noticable quality loss.
This scheme is not backwards compatible, so we have provided an upgrade
mechanism, and a mesh versioning mechanism.
Existing meshes can still be used as a result, but users can get a
performance boost by reimporting assets.
2023-10-05 12:02:23 -06:00
Rémi Verschelde
46b8f4a859
Merge pull request #82740 from raulsntos/dotnet/compat4.2
...
Add C# compat members for 4.2 changes
2023-10-04 15:44:05 +02:00
Rémi Verschelde
1e544505be
Merge pull request #82691 from YuriSizov/rst-validate-with-exceptions
...
Validate `code` tags for class and member references
2023-10-04 15:42:42 +02:00
Raul Santos
1dbecc3ff1
Add C# compat members for 4.2 changes
2023-10-03 19:34:39 +02:00
Yuri Sizov
cc0eebd9d8
Validate `code` tags for class and member references
...
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.
Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
Raul Santos
404fd0b2dc
Fix C# editor dialogs
...
- Use `EditorInterface` to open C# editor dialogs.
- Ensure C# editor dialogs are open after `EditorProgress` finishes.
2023-10-02 17:50:33 +02:00
Rémi Verschelde
6bebd9c961
Merge pull request #82664 from hackerzhuli/master
...
Fixed an error in `Vector3.BezierDerivative` in mono module
2023-10-02 13:17:02 +02:00
Rémi Verschelde
e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
...
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
朱力
bceba81b54
Fixed an error in Vector3.BezierDerivative in mono module
2023-10-02 15:00:05 +08:00
etti
3a39de4e2f
Add rotate_toward and angle_difference to GDScript and C#
2023-10-01 22:19:42 +02:00
Danil Alexeev
aff767ef07
Fix expected argument count for `Callable` call errors
2023-09-29 20:00:10 +03:00
Rémi Verschelde
c7a5a284d3
Merge pull request #80260 from raulsntos/dotnet/msbuild-panel
...
C#: Redesign MSBuild panel
2023-09-27 09:20:19 +02:00
Raul Santos
f19694a8d6
C#: Redesign MSBuild panel
...
- Redesign panel to look closer to the look of other Godot panels such as Output and Debugger.
- Moved list of problems and output log to separate tabs instead of using a HSplit.
- Added Tree/List layouts to the problems tab.
- Added search box to filter problems tab.
- Added `FileTree` icon, made from `FileList`. Both are used for the button that toggles the Tree/List layouts.
2023-09-27 02:53:27 +02:00
A Thousand Ships
517e9f8aef
[Modules] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-26 16:44:52 +02:00
Rémi Verschelde
4410b0b0e1
Merge pull request #67304 from wscalf/master
...
Allow readonly and writeonly C# properties to be accessed from GDScript
2023-09-26 16:36:33 +02:00
Raul Santos
f60cff1cb2
C#: Remove compat method that is now generated
2023-09-26 16:12:10 +02:00
Rémi Verschelde
42011d8673
Merge pull request #82240 from jaros3/vector2i-gethashcode
...
[C#] Use `HashCode.Combine()` for basic composite types instead of xor
2023-09-26 13:45:18 +02:00
Rémi Verschelde
017541bcec
Merge pull request #80527 from raulsntos/dotnet/generate-compat-methods-from-classdb
...
C#: Generate and use compat methods
2023-09-26 13:44:52 +02:00
bruvzg
bc6585a5a7
[RTL] Add support for image dynamic updating, padding, tooltips and size in percent.
2023-09-26 09:39:51 +03:00
Rémi Verschelde
d759f91f8d
Merge pull request #81101 from 398utubzyt/dotnet/abstract-class-support
...
C#: Add abstract class support
2023-09-25 17:18:05 +02:00
Rémi Verschelde
1a0e653d7f
Merge pull request #78573 from dalexeev/editor-create-script-class-name
...
Editor: Remove unused Class Name field from Create Script dialog
2023-09-25 17:17:46 +02:00
Jaroslav Wegner
f1bab5fa51
[C#] Use `HashCode.Combine()` for basic composite types instead of xor
2023-09-25 13:56:23 +03:00
Rémi Verschelde
d65d379d22
Merge pull request #81802 from Nomad1/vs2022_mac_fix
...
Fixed VS 2022 Mac compatibility
2023-09-22 22:04:46 +02:00
Nomad1
a119365d4e
Fixed VS 2022 Mac compatibility
...
Visual Studio 2022 on Mac marks the project as invalid if the project Guid is set. Easiest way to fix it is to remove outdated 'EnableGodotProjectTypeGuid' and other Guid references
2023-09-21 15:30:10 -02:30
Rémi Verschelde
5fd8506e19
Merge pull request #81847 from crazyStewie/dotnet_editor_project_fix
...
Implemented {project} placeholder for external dotnet editor
2023-09-20 18:55:13 +02:00
Rémi Verschelde
ce0fa4c691
Merge pull request #81783 from zaevi/fix-csharp-static-method
...
C#: make C# static methods accessible.
2023-09-20 18:55:10 +02:00
Zae
67e1373e5a
C#: make C# static methods accessible.
2023-09-20 22:49:33 +08:00
crazyStewie
c01a47867b
Implemented {project} placeholder for external dotnet editor
...
Implements the {project} placeholder, available when setting an external editor
in the project settings, via Editor > Editor Settings > Text Editor > External
for the c# external editor, under Editor > Editor Settings > Dotnet > Editor,
This allows passing the project folder as a command line argument when using a
custom external editor that isn't one of the available options.
Fixes #81845
2023-09-20 10:20:45 -03:00
Raul Santos
5f6082a96b
C#: Generate and use compat methods
...
- Implements `ClassDB::get_method_list_with_compatibility` to retrieve all methods from a class including compat methods.
- C# bindings generator now also generates compat methods.
- All generated C# methods now use `ClassDB::get_method_with_compatibility`.
2023-09-19 20:35:11 +02:00
Thaddeus Crews
657d81e056
C#: CS1591 from `none` to `suggestion`
2023-09-19 13:12:06 -05:00
Rémi Verschelde
c78d0e2eb0
Merge pull request #81819 from Chaosus/cs_max_min_vectors
...
Add Vector2/3/4i.MAX and MIN (C#)
2023-09-19 09:04:05 +02:00
Rémi Verschelde
793c382fa7
Merge pull request #81703 from Repiteo/c#-binding-warnings-to-editorconfig
...
C# - `bindings_generator` warnings to `.editorconfig`
2023-09-18 10:38:12 +02:00
Yuri Roubinski
cf3008cb05
Add Vector2/3/4i.MAX and MIN (C#)
2023-09-17 22:12:59 +03:00
Rémi Verschelde
c63e0aefcf
Merge pull request #79366 from dalexeev/gds-signal-info-and-callback
...
Editor: Improve signal callback generation
2023-09-17 14:45:47 +02:00
Thaddeus Crews
e43b63ab98
C# - bindings_generator warnings to .editorconfig
2023-09-16 11:55:04 -05:00
398utubzyt
2df37a237a
C#: Abstract script class support
2023-09-15 20:35:25 -07:00
Yuri Sizov
5f1e56ff26
Merge pull request #81690 from raulsntos/dotnet/hide-hostfxr-error
...
C#: Hide hostfxr not found error
2023-09-15 19:48:48 +02:00
Yuri Sizov
df6cd37a69
Merge pull request #81516 from YuriSizov/editor-theme-access-the-success
...
Fix accessing editor theme items throughout the UI
2023-09-15 19:48:14 +02:00
Yuri Sizov
8ecc0c4f47
Fix accessing editor theme items throughout the UI
...
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
Raul Santos
394c0eb225
C#: Hide hostfxr not found error
...
Godot tries to find hostfxr in two locations, the method that tries
to retrieve the location printed an error when it was not found.
So when the first location fails it was printing an error, even if
the second location succeeded, and users were left confused thinking
there was something wrong with their installation.
Now the error will only be printed when stdout verbose is enabled.
Users will still get an error later if hostfxr is not found in any
of the two locations.
2023-09-15 14:12:01 +02:00
Raul Santos
5f6524ad44
C#: Check if JetBrains Rider editor path is empty
2023-09-14 01:55:51 +02:00
Danil Alexeev
26ce861910
Editor: Remove unused Class Name field from Create Script dialog
2023-09-12 12:49:56 +03:00
Danil Alexeev
4b5daf06ef
Editor: Improve signal callback generation
2023-09-11 18:45:39 +03:00
Rémi Verschelde
cfd292939c
Haiku: Remove remnants of past WIP platform port
...
The Haiku platform port was never finalized, and moved to a separate repo in
Godot 3.2 days: https://github.com/godotengine/godot-platform-haiku
Sadly it didn't garner more interest there and is bitrotting. It was never
ported to Godot 4 so the bits of Haiku support left in Mono aren't useful.
2023-09-07 16:37:51 +02:00
Rémi Verschelde
8de6405288
UWP: Remove platform port, needs to be redone from scratch for 4.x
...
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.
So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
2023-09-07 15:01:59 +02:00
Yuri Sizov
d8ff69d53c
Extract ScriptInstance to simplify includes
...
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.
This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Rémi Verschelde
00e14f39fd
Merge pull request #81230 from SamiKalliomaki/array-dispose
...
Fix double unregistration on dispose of Array.
2023-09-04 09:08:35 +02:00
Rémi Verschelde
0215d53a10
Merge pull request #81229 from raulsntos/dotnet/arc-hyperbolic
...
C#: Expose `asinh`, `acosh` and `atanh` in Mathf
2023-09-04 09:08:12 +02:00
Sami Kalliomäki
43a6748dfd
Do not call Array default constructor when not necessary.
...
This fixes a bug where Array would get registered twice with the
DisposablesTracker causing an exception on shutdown.
Fixes #81231
2023-09-03 11:25:23 +01:00
Rémi Verschelde
2e71e5516e
Merge pull request #80632 from Repiteo/C#-editor-docstring
...
C#: Dereference editor types in core documentation
2023-09-02 14:28:35 +02:00
Raul Santos
f90005072c
C#: Expose `asinh`, `acosh` and `atanh` in Mathf
2023-09-02 12:00:02 +02:00
Thaddeus Crews
cbf17b5ac1
C#: Dereference editor types in core documentation
2023-09-01 15:17:13 -05:00
Rémi Verschelde
07f6fa8ff9
Merge pull request #80629 from Repiteo/C#-CS0419
...
C#: Include argument types in generated methods
2023-09-01 16:01:24 +02:00
Rémi Verschelde
549fcce5f8
Merge pull request #81175 from raulsntos/dotnet/project_settings_changed
...
C#: Replace usage of deprecated `project_settings_changed` signal
2023-08-31 08:56:55 +02:00
Rémi Verschelde
1594acc64e
Merge pull request #81073 from raulsntos/dotnet/cached-string-names
...
C#: Replace `StringNameCache` with `SNAME`
2023-08-31 08:54:53 +02:00
Raul Santos
cde9dc6c3c
C#: Replace usage of deprecated `project_settings_changed` signal
...
Replace usage of `EditorPlugin::project_settings_changed` signal with `ProjectSettings::settings_changed`.
2023-08-30 19:45:41 +02:00
Markus Sauermann
c4705a590b
Fix Object::notification order
...
Previously the `p_reversed` parameter didn't influence the order
in a correct way.
Also script overridden _notification functions were not called in
the correct order.
To fix this some `notification` functions had to add a `p_reversed`
parameter.
This made it necessary to adjust cpp-bindings.
Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-08-30 00:15:55 +02:00
Rémi Verschelde
76d318dbd1
Merge pull request #75778 from KoBeWi/_vp
...
Expose `_validate_property()` for scripting
2023-08-29 12:41:27 +02:00
Raul Santos
6d7d083254
C#: Replace `StringNameCache` with `SNAME`
2023-08-28 15:41:26 +02:00
kobewi
67db4693eb
Expose _validate_property() for scripting
2023-08-28 15:18:48 +02:00
Yuri Sizov
2c77f07aaa
Add a script method to get its class icon
...
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2023-08-24 13:05:41 +02:00
Rémi Verschelde
a017e9c698
Merge pull request #80119 from MewPurPur/svg-opacities-standardization
...
Optimize and fix up some SVGs
2023-08-18 09:30:23 +02:00
Rémi Verschelde
1d852cb75e
Merge pull request #80631 from Repiteo/C#-delegate-docstring
...
C#: Fixed delegate docstring logic
2023-08-16 09:15:50 +02:00
Rémi Verschelde
db1a5dc41a
Merge pull request #80630 from Repiteo/C#-paramref
...
C#: paramref now properly tagged in documentation
2023-08-16 09:15:27 +02:00
Thaddeus Crews
f735aa1fc2
C#: Include argument types in generated methods
...
• Prevents warnings over ambiguous references with Compat.cs
• Fix typo in Compat.cs causing AddCodeCompletionOption documentation to inherit itself
2023-08-14 16:15:49 -05:00
Thaddeus Crews
10cc46196b
C#: paramref now properly tagged in documentation
...
• If part of a signal, the old documentation style is used, as it points to a delegate & doesn't have actual parameters to reference
2023-08-14 15:16:52 -05:00
Thaddeus Crews
4d7c07a132
C#: Fixed delegate docstring logic
...
• No longer produces double-summaries
2023-08-14 11:17:47 -05:00
Thaddeus Crews
51154a86a1
Implement proxy_name for EnumInterface
...
• Fixes generated CS1574 warnings
2023-08-14 10:47:14 -05:00
William Scalf
41cf94e8b6
Allow readonly and writeonly C# properties to be accessed from GDScript
2023-08-13 18:35:10 -04:00
MewPurPur
93318d2dd5
Optimize and fix up some SVGs
2023-08-13 17:48:17 +03:00
scgm0
05bc070f7c
C#: Fix exporting for Android
2023-08-12 09:22:49 +08:00