Merge branch 'more-scripting-templates' of https://github.com/Tryibion/FlaxEngine into Tryibion-more-scripting-templates

This commit is contained in:
Wojtek Figat
2024-12-10 16:48:11 +01:00
9 changed files with 202 additions and 1 deletions

View File

@@ -73,7 +73,7 @@ namespace FlaxEditor.Content
}
/// <summary>
/// Context proxy object for C# script files.
/// Context proxy object for C# Script files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CSharpProxy" />
[ContentContextMenu("New/C#/C# Script")]
@@ -89,6 +89,23 @@ namespace FlaxEditor.Content
}
}
/// <summary>
/// Context proxy object for C# Actor files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CSharpProxy" />
[ContentContextMenu("New/C#/C# Actor")]
public class CSharpActorProxy : CSharpProxy
{
/// <inheritdoc />
public override string Name => "C# Actor";
/// <inheritdoc />
protected override void GetTemplatePath(out string path)
{
path = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/ActorTemplate.cs");
}
}
/// <summary>
/// Context proxy object for empty C# files.
/// </summary>
@@ -105,4 +122,55 @@ namespace FlaxEditor.Content
path = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/CSharpEmptyTemplate.cs");
}
}
/// <summary>
/// Context proxy object for empty C# class files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CSharpProxy" />
[ContentContextMenu("New/C#/C# Class")]
public class CSharpEmptyClassProxy : CSharpProxy
{
/// <inheritdoc />
public override string Name => "C# Class";
/// <inheritdoc />
protected override void GetTemplatePath(out string path)
{
path = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/EmptyClassTemplate.cs");
}
}
/// <summary>
/// Context proxy object for empty C# struct files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CSharpProxy" />
[ContentContextMenu("New/C#/C# Struct")]
public class CSharpEmptyStructProxy : CSharpProxy
{
/// <inheritdoc />
public override string Name => "C# Struct";
/// <inheritdoc />
protected override void GetTemplatePath(out string path)
{
path = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/EmptyStructTemplate.cs");
}
}
/// <summary>
/// Context proxy object for empty C# interface files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CSharpProxy" />
[ContentContextMenu("New/C#/C# Interface")]
public class CSharpEmptyInterfaceProxy : CSharpProxy
{
/// <inheritdoc />
public override string Name => "C# Interface";
/// <inheritdoc />
protected override void GetTemplatePath(out string path)
{
path = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/EmptyInterfaceTemplate.cs");
}
}
}

View File

@@ -100,6 +100,24 @@ namespace FlaxEditor.Content
sourceTemplate = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/ScriptTemplate.cpp");
}
}
/// <summary>
/// Context proxy object for C++ Actor files.
/// </summary>
/// <seealso cref="FlaxEditor.Content.CppProxy" />
[ContentContextMenu("New/C++/C++ Actor")]
public class CppActorProxy : CppProxy
{
/// <inheritdoc />
public override string Name => "C++ Actor";
/// <inheritdoc />
protected override void GetTemplatePaths(out string headerTemplate, out string sourceTemplate)
{
headerTemplate = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/ActorTemplate.h");
sourceTemplate = StringUtils.CombinePaths(Globals.EngineContentFolder, "Editor/Scripting/ActorTemplate.cpp");
}
}
/// <summary>
/// Context proxy object for C++ Json Asset files.

View File

@@ -1136,9 +1136,14 @@ namespace FlaxEditor.Modules
Proxy.Add(new SceneAnimationProxy());
Proxy.Add(new CSharpScriptProxy());
Proxy.Add(new CSharpEmptyProxy());
Proxy.Add(new CSharpEmptyClassProxy());
Proxy.Add(new CSharpEmptyStructProxy());
Proxy.Add(new CSharpEmptyInterfaceProxy());
Proxy.Add(new CSharpActorProxy());
Proxy.Add(new CppAssetProxy());
Proxy.Add(new CppStaticClassProxy());
Proxy.Add(new CppScriptProxy());
Proxy.Add(new CppActorProxy());
Proxy.Add(new SceneProxy());
Proxy.Add(new PrefabProxy());
Proxy.Add(new IESProfileProxy());