Skip to main content
Version: Next

Velaptor.UI.IWindow

Velaptor

Velaptor.UI

IWindow Interface

Provides the core of an application window which facilitates how the
window behaves, its state and the ability to be used in various types
of applications.

public interface IWindow :
System.IDisposable

Derived
Window

Implements System.IDisposable

Properties

AutoClearBuffer

Gets or sets a value indicating whether the buffers should
be automatically cleared before rendering any textures.

bool AutoClearBuffer { get; set; }

Property Value

System.Boolean

Remarks

If this is set to true, it means you do not have to
use or invoke the Clear()() method.

Set to the value of false if you want more control when
the back buffers will be cleared.

WARNING!! - To prevent performance issues, do not manually clear the
buffer with the Clear()() method
and set this property to true. That would be a waste of resources.

AutoSceneLoading

Gets or sets a value indicating whether the scenes should be automatically loaded.

bool AutoSceneLoading { get; set; }

Property Value

System.Boolean

AutoSceneRendering

Gets or sets a value indicating whether the scenes should be automatically rendered.

bool AutoSceneRendering { get; set; }

Property Value

System.Boolean

AutoSceneUnloading

Gets or sets a value indicating whether the scenes should be automatically unloaded.

bool AutoSceneUnloading { get; set; }

Property Value

System.Boolean

AutoSceneUpdating

Gets or sets a value indicating whether the scenes should be automatically updated.

bool AutoSceneUpdating { get; set; }

Property Value

System.Boolean

Draw

Gets or sets the System.Action delegate that is invoked per frame for rendering.

System.Action<Velaptor.FrameTime>? Draw { get; set; }

Property Value

System.Action<FrameTime>

Fps

Gets the frames per second that the main loop is running at.

float Fps { get; }

Property Value

System.Single

Height

Gets or sets the height of the window.

uint Height { get; set; }

Property Value

System.UInt32

Initialize

Gets or sets the System.Action delegate to be invoked one time to initialize the window.

System.Action? Initialize { get; set; }

Property Value

System.Action

Initialized

Gets a value indicating whether the window has been initialized.

bool Initialized { get; }

Property Value

System.Boolean

MouseCursorVisible

Gets or sets a value indicating whether the mouse cursor is visible.

bool MouseCursorVisible { get; set; }

Property Value

System.Boolean

Position

Gets or sets the position of the window.

System.Numerics.Vector2 Position { get; set; }

Property Value

System.Numerics.Vector2

SceneManager

Gets the scene manager.

Velaptor.Scene.ISceneManager SceneManager { get; }

Property Value

ISceneManager

Title

Gets or sets the title of the window.

string Title { get; set; }

Property Value

System.String

TypeOfBorder

Gets or sets the type of border that the IWindow will have.

Velaptor.WindowBorder TypeOfBorder { get; set; }

Property Value

WindowBorder

Uninitialize

Gets or sets the System.Action delegate to be invoked one time to uninitialize the window.

System.Action? Uninitialize { get; set; }

Property Value

System.Action

Update

Gets or sets the System.Action delegate that is invoked per frame for updating.

System.Action<Velaptor.FrameTime>? Update { get; set; }

Property Value

System.Action<FrameTime>

UpdateFrequency

Gets or sets the value of how often the update and render calls are invoked in the value of hertz.

int UpdateFrequency { get; set; }

Property Value

System.Int32

Width

Gets or sets the width of the window.

uint Width { get; set; }

Property Value

System.UInt32

WindowState

Gets or sets the state of the window.

Velaptor.StateOfWindow WindowState { get; set; }

Property Value

StateOfWindow

WinResize

Gets or sets the System.Action delegate that is invoked every time the window is resized.

System.Action<Velaptor.SizeU>? WinResize { get; set; }

Property Value

System.Action<SizeU>

Methods

Close()

Closes the window.

void Close();

Show()

Shows the window.

void Show();

ShowAsync(Action, Action)

Shows the window asynchronously.

System.Threading.Tasks.Task ShowAsync(System.Action? afterStart=null, System.Action? afterUnload=null);

Parameters

afterStart System.Action

Executed after the application starts asynchronously.

afterUnload System.Action

Executed after the window has been unloaded.

Returns

System.Threading.Tasks.Task
A System.Threading.Tasks.Task representing the result of the asynchronous operation.