Base class for any property of an element that can be visually displayed, e.g. backgrounds and borders.
Public Member Functions | |
DisplayableProperty (RenderableData data) | |
Creates a new displayable property for the given render data. More... | |
MeshBlock | GetFirstBlock (Renderman renderer) |
Gets the first rendered block of this property. Used during Paint passes. More... | |
void | SetVisibility (bool visible) |
Call this when the visibility of this property as a whole changes. More... | |
virtual void | OnBatchDestroy () |
Called when the isolation batch for this property gets removed. More... | |
void | Change (string property, Value newValue) |
Called when a named css property changes. More... | |
void | ClearBlocks () |
Clears all mesh blocks that this property has allocated. More... | |
void | WentOffScreen () |
virtual bool | Render (bool first, LayoutBox box, Renderman renderer) |
Make this property visible by forcing it to redraw. More... | |
virtual void | ApplyTransform (Matrix4x4 delta, Renderman renderer) |
Transforms all the verts by the given delta matrix. Used during a Paint only. More... | |
virtual void | RequestPaint () |
Requests for a paint event to occur. Note that paint events are more efficient than a layout as they only refresh the mesh colours and uvs rather than the whole mesh. More... | |
void | SetBatchMaterial (Renderman renderer, Material material) |
Sets the current batches material. More... | |
void | RequestLayout () |
Requests for a layout event to occur. Note that paint events are more efficient than a layout as they only refresh the mesh colours and uvs rather than the whole mesh. More... | |
virtual void | Paint (LayoutBox box, Renderman renderer) |
Called when a paint event occurs. Paint events don't relocate the whole UI so are quick and efficient. More... | |
MeshBlock | Add (Renderman renderer) |
virtual void | PostProcess (LayoutBox box, Renderman renderer) |
Called after a render pass. More... | |
void | Isolate () |
Isolates this property from the rest of the UI such that it can have a custom mesh/shader/texture etc. More... | |
void | Include () |
Reverses Css.DisplayableProperty.Isolate by re-including this property in the main UI batch. More... | |
bool | IsIsolated () |
Checks if this is an isolated property - that's one which is seperate and takes its own drawcall. More... | |
AtlasLocation | RequireImage (AtlasEntity image) |
Public Attributes | |
bool | Visible |
True if this is currently visible on screen. More... | |
bool | Isolated |
True if this property is isolated and has a seperate mesh and material from everything else. More... | |
short | BlockCount |
The number of mesh blocks that this property has allocated. More... | |
RenderableData | RenderData |
The parent render data that this is a property of. More... | |
bool | GotBatchAlready |
Only applies to Isolated properties. Set to true when this property has allocated a UIBatch on the current layout. More... | |
Protected Member Functions | |
virtual void | OnChange (string property, Value newValue) |
Called when a named css property changes. More... | |
Package Functions | |
virtual bool | NowOnScreen () |
Called when this element goes on screen. More... | |
virtual void | NowOffScreen () |
Called when this element goes off screen (or is removed from the DOM). More... | |
virtual void | Layout (LayoutBox box, Renderman renderer) |
Called when a layout event occurs. Layout events relocate the whole UI so should be used less frequently than a paint event. More... | |
Package Attributes | |
UIBatch | Batch |
The batch that this was allocated to. More... | |
int | FirstBlockIndex |
The block index in the first buffer. With this, all blocks belonging to this property can be quickly discovered. More... | |
Properties | |
virtual int | DrawOrder [get] |
This property's draw order. More... | |
virtual bool | IsBackground [get] |
True if this paints across the whole background of the element. More... | |
bool | Paintable [get] |
Checks if this property can be repainted. More... | |
|
inline |
Creates a new displayable property for the given render data.
|
inlinevirtual |
Transforms all the verts by the given delta matrix. Used during a Paint only.
Reimplemented in Css.DisplayablePropertyGroup.
|
inline |
Called when a named css property changes.
property | The css property that changed. |
newValue | The properties new value. It may also be null. |
|
inline |
Clears all mesh blocks that this property has allocated.
Gets the first rendered block of this property. Used during Paint passes.
|
inline |
Reverses Css.DisplayableProperty.Isolate by re-including this property in the main UI batch.
|
inline |
Checks if this is an isolated property - that's one which is seperate and takes its own drawcall.
|
inline |
Isolates this property from the rest of the UI such that it can have a custom mesh/shader/texture etc.
|
inlinepackagevirtual |
Called when a layout event occurs. Layout events relocate the whole UI so should be used less frequently than a paint event.
Reimplemented in Css.TextRenderingProperty, Css.TextRenderingProperty3D, Css.RasterDisplayableProperty, Css.BackgroundImage, Css.TextShadowProperty, Css.DisplayablePropertyGroup, Css.TextStrokeProperty, Css.BorderProperty, Css.SelectionRenderingProperty, Css.BackgroundColour, Css.BackgroundShadow, and Css.RoundBorderInverseProperty.
|
inlinepackagevirtual |
Called when this element goes off screen (or is removed from the DOM).
Reimplemented in Css.BackgroundImage, Css.TextRenderingProperty3D, Css.TextRenderingProperty, Css.RasterDisplayableProperty, and Css.DisplayablePropertyGroup.
|
inlinepackagevirtual |
Called when this element goes on screen.
Reimplemented in Css.BackgroundImage, Css.TextRenderingProperty, Css.DisplayablePropertyGroup, Css.TextShadowProperty, and Css.TextStrokeProperty.
|
inlinevirtual |
Called when the isolation batch for this property gets removed.
Reimplemented in Css.BackgroundImage, and Css.DisplayablePropertyGroup.
|
inlineprotectedvirtual |
Called when a named css property changes.
property | The css property that changed. |
newValue | The properties new value. It may also be null. |
Called when a paint event occurs. Paint events don't relocate the whole UI so are quick and efficient.
Reimplemented in Css.TextRenderingProperty, Css.TextRenderingProperty3D, Css.BackgroundImage, Css.TextShadowProperty, Css.TextStrokeProperty, Css.SelectionRenderingProperty, Css.DisplayablePropertyGroup, Css.RasterDisplayableProperty, Css.BackgroundColour, Css.BorderProperty, Css.RoundBorderInverseProperty, and Css.BackgroundShadow.
|
inlinevirtual |
Called after a render pass.
Reimplemented in Css.BorderProperty.
|
inlinevirtual |
Make this property visible by forcing it to redraw.
Reimplemented in Css.BorderProperty.
|
inline |
Requests for a layout event to occur. Note that paint events are more efficient than a layout as they only refresh the mesh colours and uvs rather than the whole mesh.
|
inlinevirtual |
Requests for a paint event to occur. Note that paint events are more efficient than a layout as they only refresh the mesh colours and uvs rather than the whole mesh.
Reimplemented in Css.TextRenderingProperty3D.
|
inline |
|
inline |
Sets the current batches material.
|
inline |
Call this when the visibility of this property as a whole changes.
|
inline |
|
package |
The batch that this was allocated to.
short Css.DisplayableProperty.BlockCount |
The number of mesh blocks that this property has allocated.
|
package |
The block index in the first buffer. With this, all blocks belonging to this property can be quickly discovered.
bool Css.DisplayableProperty.GotBatchAlready |
Only applies to Isolated properties. Set to true when this property has allocated a UIBatch on the current layout.
bool Css.DisplayableProperty.Isolated |
True if this property is isolated and has a seperate mesh and material from everything else.
RenderableData Css.DisplayableProperty.RenderData |
The parent render data that this is a property of.
bool Css.DisplayableProperty.Visible |
True if this is currently visible on screen.
|
get |
This property's draw order.
|
get |
True if this paints across the whole background of the element.
|
get |
Checks if this property can be repainted.