Files
sbox-public/engine/Sandbox.Engine/Core/Context/IToolsDll.cs
s&box team 71f266059a Open source release
This commit imports the C# engine code and game files, excluding C++ source code.

[Source-Commit: ceb3d758046e50faa6258bc3b658a30c97743268]
2025-11-24 09:05:18 +00:00

49 lines
1.3 KiB
C#

using NativeEngine;
namespace Sandbox.Engine;
internal unsafe interface IToolsDll
{
public static IToolsDll Current { get; set; }
public void Bootstrap();
public Task Initialize();
public void Tick();
public void RunEvent( string name );
public void RunEvent( string name, object argument );
public void RunEvent( string name, object arg0, object arg1 );
public void RunEvent<T>( Action<T> action );
public void Exiting();
public bool ConsoleFocus();
public void ExitPlaymode();
public void Spin();
public void RunFrame();
public void OnRender();
public void OnFunctionKey( ButtonCode key, KeyboardModifiers modifiers );
/// <summary>
/// Registers exclusive Sandbox.Tools <see cref="Sandbox.IHandle"/> types
/// </summary>
public int RegisterHandle( IntPtr ptr, uint type );
/// <summary>
/// Load the startup project for the first time
/// </summary>
public Task LoadProject();
public object InspectedObject { get; set; }
/// <summary>
/// Is the game view visible, or is it in a tab in the background?
/// </summary>
public bool IsGameViewVisible { get; }
/// <summary>
/// Called after the host network system is initialised, used to add additional package references etc. to dev servers
/// </summary>
public Task OnInitializeHost();
}