MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Mezzanine::UI::ImageLayer Class Reference

This layer is for placing images and basic colours in it's parents' quad space. More...

#include <imagelayer.h>

+ Inheritance diagram for Mezzanine::UI::ImageLayer:
+ Collaboration diagram for Mezzanine::UI::ImageLayer:

Public Member Functions

 ImageLayer (QuadRenderable *ParentRenderable)
 Class constructor. More...
 
virtual ~ImageLayer ()
 Class destructor.
 
virtual const ColourValueGetBorderColour (const UI::Border Side) const
 Gets the colour of a border on this renderable. More...
 
virtual Real GetBorderWidth () const
 Gets the border width of this renderable. More...
 
virtual const ColourValueGetColour (const UI::QuadCorner Corner) const
 Gets the colour of a corner of this layer. More...
 
virtual String GetDerivedSerializableName () const
 Gets the most derived serializable name of this Renderable. More...
 
virtual
RenderLayer::RenderLayerType 
GetLayerType () const
 Gets the type of render layer this is. More...
 
virtual bool IsCompletelyTransparent () const
 Gets whether or not this layer is entirely transparent. More...
 
virtual void NoBorder ()
 Disables any border set on this renderable if one is currently set.
 
virtual void ProtoDeSerializeProperties (const XML::Node &SelfRoot)
 Take the data stored in an XML Node and overwrite the properties of this object with it. More...
 
virtual void ProtoSerializeProperties (XML::Node &SelfRoot) const
 Convert the properties of this class to an XML::Node ready for serialization. More...
 
virtual void SetBorder (const Real Width, const ColourValue &Colour)
 Sets all parameters for enabling a border. More...
 
virtual void SetBorder (const Real Width, const ColourValue &North, const ColourValue &South, const ColourValue &East, const ColourValue &West)
 Sets all parameters for enabling a border. More...
 
virtual void SetBorderColour (const ColourValue &Colour)
 Sets the colour of the border for this renderable. More...
 
virtual void SetBorderColour (const UI::Border Side, const ColourValue &Colour)
 Sets the colour of one side of the border for this renderable. More...
 
virtual void SetBorderWidth (const Real Width)
 Sets the width of the border for this renderable. More...
 
virtual void SetColour (const ColourValue &Colour)
 Sets the colour of the layer. More...
 
virtual void SetColour (const UI::QuadCorner Corner, const ColourValue &Colour)
 Sets the colour for one corner the layer. More...
 
virtual void SetGradient (const UI::Gradient Grad, const ColourValue &ColourA, const ColourValue &ColourB)
 Sets a colour gradient to be applied to this layer. More...
 
virtual void SetSprite (Sprite *PSprite)
 Sets the fill image(if provided in the atlas) of the layer. More...
 
virtual void SetSprite (const String &SpriteName)
 Sets the fill image(if provided in the atlas) of the layer. More...
 
virtual void SetSprite (const String &SpriteName, const String &Atlas)
 Sets the fill image(if provided in the atlas) of the layer. More...
 
- Public Member Functions inherited from Mezzanine::UI::RenderLayer
virtual ~RenderLayer ()
 Class destructor.
 
virtual void _MarkDirty ()
 Marks this renderable as well as all parent objects as dirty. More...
 
virtual void _UpdateIndex (const Whole Index)
 Notifies this RenderLayer that it's index in the parent QuadRenderable has been updated. More...
 
virtual Rect GetAreaRect () const
 Gets a rect containing the actual position and size of this layer. More...
 
virtual Whole GetIndex () const
 Gets the index position of this RenderLayer in it's parent. More...
 
virtual QuadRenderableGetParent () const
 Gets the parent of this render layer. More...
 
virtual Real GetRotationDegrees () const
 Gets the current rotation applied to this renderable in degrees. More...
 
virtual Real GetRotationRadians () const
 Gets the current rotation applied to this renderable in radians. More...
 
virtual Vector2 GetScale () const
 Gets the scaling currently applied to this render layer. More...
 
virtual ScreenGetScreen () const
 Gets the screen the parent renderable is being rendered on. More...
 
virtual void NotifyActive ()
 Notifies this RenderLayer that the group this layer belongs to has become the active group. More...
 
virtual void NotifyInactive ()
 Notifies this RenderLayer that the group this layer belongs to is no longer the active group. More...
 
virtual void SetRotationDegrees (const Real &Degrees)
 Sets the rotation to be applied to this renderable. More...
 
virtual void SetRotationRadians (const Real &Radians)
 Sets the rotation to be applied to this renderable. More...
 
virtual void SetScale (const Vector2 &Scaling)
 Sets the scaling to be applied to this render layer. More...
 

Static Public Member Functions

static String GetSerializableName ()
 Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized. More...
 
- Static Public Member Functions inherited from Mezzanine::UI::RenderLayer
static String GetSerializableName ()
 Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized. More...
 
- Static Public Member Functions inherited from Mezzanine::UI::QuadRenderer
static String GetSerializableName ()
 Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized. More...
 
- Static Public Member Functions inherited from Mezzanine::UI::SimpleRenderer
static String GetSerializableName ()
 Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized. More...
 

Protected Member Functions

void DrawBorder (const Vector2 &TopLeft, const Vector2 &TopRight, const Vector2 &BottomLeft, const Vector2 &BottomRight, const Vector2 &OuterTopLeft, const Vector2 &OuterTopRight, const Vector2 &OuterBottomLeft, const Vector2 &OuterBottomRight)
 Draws the border, if any is set.
 
void DrawFill (const Vector2 &TopLeft, const Vector2 &TopRight, const Vector2 &BottomLeft, const Vector2 &BottomRight)
 Draws the main rectangle.
 
virtual void RedrawImpl (bool Force)
 Provides the class specific implementation for regenerating vertices for this renderable. More...
 
- Protected Member Functions inherited from Mezzanine::UI::RenderLayer
 RenderLayer (QuadRenderable *ParentRenderable)
 Class constructor. More...
 
virtual void RotationTransform (Vector2 &Point, const Vector2 &RotationCenter)
 Applies rotation to a point in 2D space. More...
 
virtual void RotationTransform (Vector2 &TopLeft, Vector2 &TopRight, Vector2 &BottomLeft, Vector2 &BottomRight)
 Applies rotation to a quad in 2D space. More...
 
- Protected Member Functions inherited from Mezzanine::UI::QuadRenderer
 QuadRenderer ()
 Class constructor.
 
virtual ~QuadRenderer ()
 Class destructor.
 
virtual void PushQuad (Vector2 *Positions, Vector2 *UVs, ColourValue *Colours, const String &Atlas)
 Pushes vertex information for a quad to a vector. Equivalent to calling "PushTriangle" twice.
 
virtual void PushQuad2 (Vector2 *Positions, Vector2 *UVs, const ColourValue &Colour, const String &Atlas)
 Pushes vertex information for a quad to a vector. Equivalent to calling "PushTriangle" twice.
 
- Protected Member Functions inherited from Mezzanine::UI::SimpleRenderer
 SimpleRenderer ()
 Class constructor.
 
virtual ~SimpleRenderer ()
 Class destructor.
 
virtual void PushTriangle (const Vector2 &A, const Vector2 &B, const Vector2 &C, const Vector2 &UV, const ColourValue &Colour, const String &Atlas)
 Pushes vertex information for a triangle to a vector. Equivalent to calling "PushVertex" three times. More...
 
virtual void PushVertex (const Real &X, const Real &Y, const Vector2 &UV, const ColourValue &Colour, const String &Atlas)
 Collects all the relevant information for a single vertex and pushes it to a vector. More...
 

Protected Attributes

ColourValue BorderColours [4]
 
Real BorderWidth
 
ColourValue FillColours [4]
 
SpriteLayerSprite
 
- Protected Attributes inherited from Mezzanine::UI::RenderLayer
Whole IndexID
 Stores the index of this RenderLayer in it's parent QuadRenderable. More...
 
QuadRenderableParent
 A pointer to the parent of this RenderLayer. More...
 
Real RotAngle
 The amount of rotation to be applied to this RenderLayer in radians. More...
 
Vector2 Scale
 The scaling applied to this RenderLayer. More...
 

Additional Inherited Members

- Public Types inherited from Mezzanine::UI::RenderLayer
enum  RenderLayerType { RLT_Image, RLT_MultiLineText, RLT_SingleLineText }
 This enum describes the type of RenderLayer this is for use in casting.
 

Detailed Description

This layer is for placing images and basic colours in it's parents' quad space.

Definition at line 57 of file imagelayer.h.

Constructor & Destructor Documentation

Mezzanine::UI::ImageLayer::ImageLayer ( QuadRenderable ParentRenderable)

Class constructor.

Parameters
ParentRenderableThe renderable that created this layer.

Definition at line 51 of file imagelayer.cpp.

Member Function Documentation

const ColourValue & Mezzanine::UI::ImageLayer::GetBorderColour ( const UI::Border  Side) const
virtual

Gets the colour of a border on this renderable.

Parameters
SideThe side to retrieve the colour for.
Returns
Returns the colour of the border on the specified side.

Definition at line 336 of file imagelayer.cpp.

Real Mezzanine::UI::ImageLayer::GetBorderWidth ( ) const
virtual

Gets the border width of this renderable.

Returns
Returns a Real with the currently set width of the border.

Definition at line 331 of file imagelayer.cpp.

const ColourValue & Mezzanine::UI::ImageLayer::GetColour ( const UI::QuadCorner  Corner) const
virtual

Gets the colour of a corner of this layer.

Parameters
CornerThe corner to get the colour for.
Returns
Returns the colour of the specified corner.

Definition at line 273 of file imagelayer.cpp.

String Mezzanine::UI::ImageLayer::GetDerivedSerializableName ( ) const
virtual

Gets the most derived serializable name of this Renderable.

Note
When creating a new Renderable class verify this method has a valid return for it in order for serialization to work properly.
Returns
Returns the name of the XML tag from the most derived class of "this".

Reimplemented from Mezzanine::UI::RenderLayer.

Definition at line 451 of file imagelayer.cpp.

RenderLayer::RenderLayerType Mezzanine::UI::ImageLayer::GetLayerType ( ) const
virtual

Gets the type of render layer this is.

Returns
Returns a RenderLayerType describing the type of layer this is.

Implements Mezzanine::UI::RenderLayer.

Definition at line 168 of file imagelayer.cpp.

String Mezzanine::UI::ImageLayer::GetSerializableName ( )
static

Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized.

Returns
A string containing the name of this class.

Definition at line 456 of file imagelayer.cpp.

bool Mezzanine::UI::ImageLayer::IsCompletelyTransparent ( ) const
virtual

Gets whether or not this layer is entirely transparent.

Returns
Returns true if all quad corners of this layer have their value set to zero, false otherwise.

Definition at line 278 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::ProtoDeSerializeProperties ( const XML::Node SelfRoot)
virtual

Take the data stored in an XML Node and overwrite the properties of this object with it.

Parameters
SelfRootAn XML::Node containing the data to populate this class with.

Reimplemented from Mezzanine::UI::RenderLayer.

Definition at line 390 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::ProtoSerializeProperties ( XML::Node SelfRoot) const
virtual

Convert the properties of this class to an XML::Node ready for serialization.

Parameters
SelfRootThe root node containing all the serialized data for this instance.

Reimplemented from Mezzanine::UI::RenderLayer.

Definition at line 344 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::RedrawImpl ( bool  Force)
protectedvirtual

Provides the class specific implementation for regenerating vertices for this renderable.

Implements Mezzanine::UI::SimpleRenderer.

Definition at line 69 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetBorder ( const Real  Width,
const ColourValue Colour 
)
virtual

Sets all parameters for enabling a border.

Parameters
WidthThe width to set for the border.
ColourThe colour to be applied to all sides of the border.

Definition at line 310 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetBorder ( const Real  Width,
const ColourValue North,
const ColourValue South,
const ColourValue East,
const ColourValue West 
)
virtual

Sets all parameters for enabling a border.

Parameters
WidthThe width to set for the border.
NorthThe colour to apply to the north side of the border.
SouthThe colour to apply to the south side of the border.
EastThe colour to apply to the east side of the border.
WestThe colour to apply to the west side of the border.

Definition at line 316 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetBorderColour ( const ColourValue Colour)
virtual

Sets the colour of the border for this renderable.

Parameters
ColourThe colour to set for the border.

Definition at line 295 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetBorderColour ( const UI::Border  Side,
const ColourValue Colour 
)
virtual

Sets the colour of one side of the border for this renderable.

Parameters
SideThe side to have the colour applied to.
ColourThe colour to be applied.

Definition at line 304 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetBorderWidth ( const Real  Width)
virtual

Sets the width of the border for this renderable.

Parameters
WidthThe width to set for the border.

Definition at line 289 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetColour ( const ColourValue Colour)
virtual

Sets the colour of the layer.

Parameters
ColourA colour value representing the colour to be set.

Definition at line 176 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetColour ( const UI::QuadCorner  Corner,
const ColourValue Colour 
)
virtual

Sets the colour for one corner the layer.

Parameters
CornerWhich corner the colour should be applied to.
ColourA colour value representing the colour to be set.

Definition at line 185 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetGradient ( const UI::Gradient  Grad,
const ColourValue ColourA,
const ColourValue ColourB 
)
virtual

Sets a colour gradient to be applied to this layer.

Parameters
GradThe direction/style of gradient to enable.
ColourAThe colour to apply to the first side of the gradient.
ColourBThe colour to apply to the second side of the gradient.

Definition at line 227 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetSprite ( Sprite PSprite)
virtual

Sets the fill image(if provided in the atlas) of the layer.

Parameters
PSpriteA pointer to the sprite to set as the fill.

Definition at line 191 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetSprite ( const String SpriteName)
virtual

Sets the fill image(if provided in the atlas) of the layer.

Parameters
SpriteNameThe name of the sprite to set as the fill.

Definition at line 215 of file imagelayer.cpp.

void Mezzanine::UI::ImageLayer::SetSprite ( const String SpriteName,
const String Atlas 
)
virtual

Sets the fill image(if provided in the atlas) of the layer.

Parameters
SpriteNameThe name of the sprite to set as the fill.
AtlasThe Atlas to load the sprite from.

Definition at line 221 of file imagelayer.cpp.


The documentation for this class was generated from the following files: