TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

interface IInputConsumerEx in Tinman.Engine.Application

Base interface for classes that consume input events (see InputEvent) and/or poll input state (see IInputState).

interface IInputConsumerEx extends IInputConsumer
  base of ICameraControl
  ISceneObjectFocusable
  IWidget
  ObjectList
  SceneView
  ScrollControl
  SixDofCrosshair

Remarks

An IInputConsumerEx object can request to capture the mouse (see ShouldCaptureMouse). The outer code can then honor this request (for example via MouseCaptured).

Attributes

ShouldCaptureMouse

Should the mouse be captured, because this input consumer only processes relative input?

property ShouldCaptureMouse { get }
type bool
value true if the mouse should be captured, false if not.

See also:

IApplicationWindow.MouseCaptured

Methods

ConsumeInput

Consumes the given user input event.

method ConsumeInput (InputEvent inputEvent)
type bool
params inputEvent The user input event.
returns true if the input event has been consumed, false if not.
inherited IInputConsumer.ConsumeInput

Remarks:

Input events are provided to an IInputConsumer object only if it has the input focus (see FocusGained and FocusLost). Mouse events are provided when the mouse cursor is inside of the input bounds (MouseEnter and MouseLeave). The Closing event can be provided at any time.

  1. FocusGained: gained input focus
  2. Keyboard events:
  3. Mouse events:
    1. MouseEnter
    2. Mouse events:
    3. MouseLeave
  4. FocusLost: lost input focus
  5. Closing: user request to shut down

InputAttach

Attaches this input consumer to the given input state object.

method InputAttach (IInputState input)
params input [not-null] The input state object.

Remarks:

The input state object provides a snapshot of the input keys and buttons. It should not be used to detect up/down/click events.

InputDetach

Detached this input consumer from its input state object.

method InputDetach ()