virtualx-engine/modules/mono/editor/GodotTools
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
..
GodotTools Improve handling of generic C# types 2024-02-08 18:31:13 +01:00
GodotTools.BuildLogger C#: Upgrade TFM for net472 and some netstandard2.0 projects 2024-01-06 09:14:33 -06:00
GodotTools.Core C#: Unify project name handling and fix issues with the handling of some special characters 2023-06-14 21:07:58 +02:00
GodotTools.IdeMessaging Add readonly to C# methods and types that don't mutate 2022-11-14 20:32:20 +01:00
GodotTools.IdeMessaging.CLI C#: Upgrade TFM for net472 and some netstandard2.0 projects 2024-01-06 09:14:33 -06:00
GodotTools.OpenVisualStudio C#: Upgrade TFM for net472 and some netstandard2.0 projects 2024-01-06 09:14:33 -06:00
GodotTools.ProjectEditor C#: Remove unused code 2024-01-28 16:09:59 +01:00
GodotTools.Shared Fix NuGet fallback folder packages 2022-09-15 09:28:59 +02:00
.gitignore Add a simple C# .editorconfig 2021-07-23 17:04:53 -04:00
GodotTools.sln C#: Replace P/Invoke with delegate pointers 2022-08-22 03:36:52 +02:00