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

class LightingGui in Tinman.AddOns.GUI.Shared

sealed class LightingGui extends Container
  implements ILightProvider

Public / Attributes

Action

The input click of the default action of this component.

public property Action { get set }
type InputClick
value The input click or None.
inherited Component.Action

Remarks:

Defaults to None.

AmbientOcclusion

public property AmbientOcclusion { get set }
type float32
value

Bounds

Returns the bounds of this component in the client area of its parent container.

public property Bounds { get }
type Box2I
value The component bounds.
inherited Component.Bounds

ClientArea

Returns the client area of this container.

public virtual property ClientArea { get }
type Box2I
value The client area.
inherited Container.ClientArea

ClientAreaCorners

Containers with a round client rectangle can override this property in order to return proper information.

public virtual property ClientAreaCorners { get }
type Pair<Corner, int32>
value The round corners of this containers client rectangle.
inherited Container.ClientAreaCorners

Components

Returns the list of child components.

public virtual property Components { get }
type IVectorConst<Component>
value [not-null] The list of child components.
inherited Container.Components

Focusable

Can this component receive the input focus?

public property Focusable { get set }
type bool
value true if the component can receive the input focus, false if not.
inherited Component.Focusable

Height

Height of this component in its parent containers client area.

public property Height { get }
type int32
value The current component height, in pixels.
inherited Component.Height

IsFocussed

Does this component has the input focus?

public override property IsFocussed { get }
type bool
value true if this component has the input focus, false if not.
inherited Container.IsFocussed

IsHighlighted

public property IsHighlighted { get }
type bool
value
inherited Component.IsHighlighted

IsHovered

Does the mouse cursor currently hover above this component?

public property IsHovered { get }
type bool
value true if the mouse cursor hovers above this component, false if not.
inherited Component.IsHovered

LayoutAlign

The alignment anchor of this component.

public property LayoutAlign { get set }
type Anchor
value The anchor.
inherited Component.LayoutAlign

LayoutDefault

Returns the default Layout settings for this component.

public override property LayoutDefault { get }
type Layout
value The default layout settings.
overrides Component.LayoutDefault

Remarks:

The default implementation returns Default.

LayoutFill

The fill mode of this component.

public virtual property LayoutFill { get set }
type Axis
value The fill mode.
inherited Component.LayoutFill

LayoutGrid

The bounds of this component in its parent containers layout grid.

public property LayoutGrid { get set }
type Box2I
value The layout grid bounds.
inherited Component.LayoutGrid

LayoutGrow

Defines how the layout grid column resp. row in the components parent container grows.

public property LayoutGrow { get set }
type Axis
value The axes that will grow.
inherited Component.LayoutGrow

LayoutInfo

The current layout settings of this component.

public override property LayoutInfo { get set }
type Layout
value The Layout info object.
inherited Container.LayoutInfo

LayoutInsets

The insets of this container.

public property LayoutInsets { get set }
type Edging
value The edge insets.
inherited Container.LayoutInsets

LayoutMargin

The outer margin of this component.

public property LayoutMargin { get set }
type Edging
value The outer margin.
inherited Component.LayoutMargin

LayoutShrink

Defines how the layout grid column resp. row in the components parent container grows.

public property LayoutShrink { get set }
type Axis
value The axes that will shrink.
inherited Component.LayoutShrink

LayoutSize

The requested size of this component, in pixels.

public property LayoutSize { get set }
type Vec2I
value The requested size.
inherited Component.LayoutSize

LifecycleState

Returns the lifecycle state of this object.

public virtual property LifecycleState { get }
type LifecycleState
value The lifecycle state.
inherited Disposable.LifecycleState

LightLatitude

Latitude of the prominent light in this environment map, if applicable.

public property LightLatitude { get }
type float64
value [-90..90] The latitude angle in degrees or NanD if there is no prominent light.
implements ILightProvider.LightLatitude

LightLongitude

Longitude of the prominent light in this environment map, if applicable.

public property LightLongitude { get }
type float64
value [-180..180] The longitude angle in degrees or NanD if there is no prominent light.
implements ILightProvider.LightLongitude

LightMetric

public property LightMetric { get set }
type float64
value

LightMetricEnable

public property LightMetricEnable { get set }
type bool
value

LightSize

Apparent size of prominent light in this environment map, if applicable.

public property LightSize { get }
type float64
value [>=0] The apparent diameter of the prominent light, given as an angle in degrees. Will be NanD if there is no prominent light.
implements ILightProvider.LightSize

OnAction

The components default action has been triggered.

public property OnAction { get }
type IEventGeneric<Component>
value [not-null] The event object.
inherited Component.OnAction

Parent

The parent container of this component.

public property Parent { get }
type Container
value The parent container or null if this component is the root.
inherited Component.Parent

ParentCorners

Returns the corners that this component shares with the client area of its parent container.

public property ParentCorners { get }
type Corner
value The shared client area corners.
inherited Component.ParentCorners

ParentEdges

Returns the edges that this component shares with the client area of its parent container.

public property ParentEdges { get }
type Anchor
value The shared client area edges.
inherited Component.ParentEdges

ScrollHeight

Scroll height of this component.

public property ScrollHeight { get }
type int32
value The current scroll height, in pixels.
inherited Component.ScrollHeight

ScrollTick

Returns the size of a single scroll tick.

public virtual property ScrollTick { get }
type int32
value The scroll tick size, in pixels.
inherited Component.ScrollTick

ScrollWidth

Scroll width of this component.

public property ScrollWidth { get }
type int32
value The current scroll width, in pixels.
inherited Component.ScrollWidth

ScrollX

The horizontal scroll position of this component.

public property ScrollX { get set }
type int32
value The current scroll position.
inherited Component.ScrollX

ScrollY

The vertical scroll position of this component.

public property ScrollY { get set }
type int32
value The current scroll position.
inherited Component.ScrollY

SetLightMask

Can the SetLight method be used to configure the prominent light?

public property SetLightMask { get set }
type int32
value Zero or more of the following bits:
1: LightLatitude can be configured.
2: LightLongitude can be configured.
4: LightSize can be configured.
implements ILightProvider.SetLightMask

State

The component state.

public virtual property State { get set }
type ComponentState
value The component state.
inherited Component.State

StyleClassType

Returns the style class for this component type.

public override property StyleClassType { get }
type StyleClass
value The style class (e.g. 'InputField' for InputField).
inherited Container.StyleClassType

StyleClassVariant

Optional style class variant of this component.

public property StyleClassVariant { get set }
type string
value The variant name or null.
inherited Component.StyleClassVariant

Stylesheet

The stylesheet object to use for this user interface element.

public property Stylesheet { get set }
type Stylesheet
value The stylesheet object to use or null.
inherited Component.Stylesheet

Tag

The user-defined tag value of this component.

public property Tag { get set }
type int32
value The tag value or null.
inherited Component.Tag

Remarks:

Defaults to -1.

Width

Width of this component in its parent containers client area.

public property Width { get }
type int32
value The current component width, in pixels.
inherited Component.Width

Public / Constructors

LightingGui

Creates a new instance of LightingGui.

public constructor LightingGui ()

Public / Methods

AcquireTry

Acquires a strong reference to this disposable object.

[OwnerReturn, ThreadSafe]
public method AcquireTry ()
type IDisposable
returns this if a new strong reference has been acquired, null if this object is already being disposed.
inherited Disposable.AcquireTry

Remarks:

The object will not be actually disposed by calls to Dispose when there is at least one strong reference left. Code that calls the AcquireTry method is responsible for calling the Dispose method accordingly.

This method is not intended to be used in performance-critical code. It should only be used to high-level resource management.

ChildAdd

Adds a child component to this container, using its current layout settings.

public virtual method ChildAdd ([Owner] Component component)
params component [not-null] The child component.
inherited Container.ChildAdd

Adds a child component to this container using the given layout settings.

public virtual method ChildAdd ([Owner] Component component, Layout layout)
params component [not-null] The child component.
  layout The layout settings to use. Unspecified settings will be taken from LayoutDefault.
inherited Container.ChildAdd

ChildAny

Checks if this container has any children.

[Pure]
public virtual method ChildAny (bool onlyVisible)
type bool
params onlyVisible true to test for non-hidden (see Hidden) children only, false to test for existing children.
returns true if there are one or more children (according to onlyVisible), false if not.
inherited Container.ChildAny

ChildRemove

Removes a child component from this container.

public virtual method ChildRemove (Component component)
params component [not-null] The child component.
inherited Container.ChildRemove

ChildRemoveAll

Removes all child components from this container.

public method ChildRemoveAll ()
inherited Container.ChildRemoveAll

ConsumeInput

Consumes the given user input event.

public 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 Component.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

Dispose

Releases all resources held by this object if there are no more strong references to it, decrements the reference counter by one otherwise.

[Dispose, OwnerThis, ThreadSafe]
public method Dispose ()
inherited Disposable.Dispose

Remarks:

The Dispose method silently returns if the object has already been disposed.

Focus

Transfers the input focus to this component.

public method Focus ()
returns [not-null] this
inherited Component.Focus

GraphicsAttach

Attaches this component to the given Graphics context.

public override method GraphicsAttach (Graphics graphics)
params graphics [not-null] The graphics context.
inherited Container.GraphicsAttach

Remarks:

All graphics-related resources should be created here.

GraphicsDetach

Detaches this user interface component from its Graphics context.

public override method GraphicsDetach ()
inherited Container.GraphicsDetach

Remarks:

All graphics-related resources should be disposed here.

GraphicsResize

The screen size has changed.

public virtual method GraphicsResize (Vec2I screenSize)
params screenSize The new screen size, in pixels.
inherited Component.GraphicsResize

Remarks:

The given screen size is equal to the value of ScreenSize of the Graphics object that has been passed to GraphicsAttach earlier.

Render2D

Performs 2D rendering.

public method Render2D (Graphics g)
params g [not-null] The graphics object to use.
inherited Component.Render2D

Remarks:

When this method is called, the given Graphics object has already been initialized for 2D rendering:

Usually, Render2D is called from within Render.

SetLight

Configures the prominent light.

public method SetLight (float64 latitude, float64 longitude, float64 size)
params latitude Latitude of the prominent light in this environment map (see LightLatitude).
  longitude Longitude of the prominent light in this environment map (see LightLongitude).
  size Apparent size of prominent light in this environment map, in degrees (see LightSize).
implements ILightProvider.SetLight

UpdateFrameTime

This method is called once per application frame.

public override method UpdateFrameTime (float32 time)
type bool
params time [>0] The amount of time that has elapsed since the last frame, in seconds.
returns true if the object needs to be presented again, false if the current presentation is still valid.
inherited Container.UpdateFrameTime