class Tinman.Engine.Application.ApplicationWindow

Derived from

ApplicationWindowBase abstract

Default implementation of the IApplicationWindow interface that represents a native window.

To create a new top-level window, use Create. To wrap an embedded native window (for example an MFC control), create a subclass and perform callbacks from the native windows message loop, for example by calling ApplicationWindowBase.OnMessage_Win32.

Public / Constructors


public static method Create → (3)

title in : string

The window title.

clientSize in : Vec2I

The initial client size (see IApplicationWindow.Resize)

onProcessSystemMessages opt : EventDelegateGeneric<IApplicationWindow> = null

Optional delegate that will be invoked when IApplicationWindow.ProcessSystemMessages is called. This is intended for special use-cases, for example when mixing a top-level application window with WinForms: then, the System.Windows.Forms.Application.DoEvents method must be called in addition to the plain WIN32 message loop of the top-level window.

returns → IApplicationWindow

The application window or null iff LowLevel.IsWindows is false.

Creates a new top-level window.

Protected / Constructors


protected constructor ApplicationWindow → (1)

windowHandle in : IntPtr

The native window handle.

Creates a new instance of ApplicationWindow.


If windowHandle in does not identify a valid native window or if some other unexpected error has occurred.

Protected / Attributes


protected attribute windowHandle → (IntPtr)

The native window handle.