Basic class for all structures that get inserted into the rendering hierarchy. More...
Public Types | |
enum | RenderableType { RT_LineList, RT_Screen, RT_Widget } |
A small enum to describe the type of renderable this is. | |
Public Member Functions | |
virtual void | _AppendRenderData (ScreenRenderData &RenderData)=0 |
Appends the vertices of this renderable to another vector. More... | |
bool | _IsDirty () const |
Gets whether or not this renderable is dirty. More... | |
virtual void | _MarkDirty ()=0 |
Marks this renderable as dirty, and informs other renderables if needed. More... | |
virtual String | GetDerivedSerializableName () const |
Gets the most derived serializable name of this Renderable. More... | |
const String & | GetName () const |
Gets the name of this renderable. More... | |
virtual RenderableType | GetRenderableType () const =0 |
Gets the type of renderable this is. More... | |
Screen * | GetScreen () const |
Gets the parent screen of this renderable. More... | |
virtual Boolean | GetVisible () const =0 |
Gets the visibility setting of this renderable. More... | |
virtual void | Hide ()=0 |
Forces this renderable to hide. | |
virtual Boolean | IsVisible () const =0 |
Gets whether or not this renderable is being drawn. More... | |
virtual void | ProtoDeSerialize (const XML::Node &SelfRoot) |
Take the data stored in an XML Node and overwrite this object with it. More... | |
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 | ProtoSerialize (XML::Node &ParentNode) const |
Convert this class to an XML::Node ready for serialization. More... | |
virtual void | ProtoSerializeProperties (XML::Node &SelfRoot) const |
Convert the properties of this class to an XML::Node ready for serialization. More... | |
virtual void | SetVisible (Boolean CanSee)=0 |
Sets the visibility of this renderable. More... | |
virtual void | Show ()=0 |
Forces this renderable to be shown. | |
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... | |
Protected Member Functions | |
Renderable (Screen *Parent) | |
Blank constructor. More... | |
Renderable (const String &RendName, Screen *Parent) | |
Class constructor. More... | |
virtual | ~Renderable () |
Class destructor. | |
virtual void | ProtoDeSerializeImpl (const XML::Node &SelfRoot) |
Implementation method for deseriailizing additional sets of data. More... | |
virtual void | ProtoSerializeImpl (XML::Node &SelfRoot) const |
Implementation method for serializing additional sets of data. More... | |
Protected Attributes | |
Boolean | Dirty |
Stores whether this Renderables vertices need to be regenerated. More... | |
String | Name |
The unique name of this Renderable. More... | |
Screen * | ParentScreen |
A pointer to the Screen that created this Renderable. More... | |
Boolean | Visible |
Stores whether this Renderable is to be rendered (also dependent on parent visibility). More... | |
Friends | |
class | Widget |
Basic class for all structures that get inserted into the rendering hierarchy.
Definition at line 60 of file renderable.h.
|
protected |
Blank constructor.
Parent | The parent screen that created this renderable. |
Definition at line 52 of file renderable.cpp.
Class constructor.
RendName | The name to be given to this renderable. |
Parent | The parent screen that created this renderable. |
Definition at line 58 of file renderable.cpp.
|
pure virtual |
Appends the vertices of this renderable to another vector.
RenderData | The vector of vertex's to append to. |
Implemented in Mezzanine::UI::QuadRenderable, and Mezzanine::UI::LineList.
bool Mezzanine::UI::Renderable::_IsDirty | ( | ) | const |
Gets whether or not this renderable is dirty.
Definition at line 143 of file renderable.cpp.
|
pure virtual |
Marks this renderable as dirty, and informs other renderables if needed.
Implemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Screen, and Mezzanine::UI::LineList.
|
virtual |
Gets the most derived serializable name of this Renderable.
Reimplemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Screen, and Mezzanine::UI::Widget.
Definition at line 134 of file renderable.cpp.
const String & Mezzanine::UI::Renderable::GetName | ( | ) | const |
Gets the name of this renderable.
Definition at line 77 of file renderable.cpp.
|
pure virtual |
Gets the type of renderable this is.
Implemented in Mezzanine::UI::Screen, Mezzanine::UI::Widget, and Mezzanine::UI::LineList.
Screen * Mezzanine::UI::Renderable::GetScreen | ( | ) | const |
Gets the parent screen of this renderable.
Definition at line 80 of file renderable.cpp.
|
static |
Get the name of the the XML tag the Renderable class will leave behind as its instances are serialized.
Definition at line 137 of file renderable.cpp.
|
pure virtual |
Gets the visibility setting of this renderable.
Implemented in Mezzanine::UI::Screen, Mezzanine::UI::Widget, and Mezzanine::UI::LineList.
|
pure virtual |
Gets whether or not this renderable is being drawn.
This function will check the visibility of all parent objects to see if it is being drawn. This will not tell you whether or not this renderable has it's own visibility setting enabled. For that see: GetVisible().
Implemented in Mezzanine::UI::Screen, Mezzanine::UI::Widget, and Mezzanine::UI::LineList.
|
virtual |
Take the data stored in an XML Node and overwrite this object with it.
SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::UI::QuadRenderable.
Definition at line 107 of file renderable.cpp.
|
protectedvirtual |
Implementation method for deseriailizing additional sets of data.
SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Widget, Mezzanine::UI::RadioButton, Mezzanine::UI::PagedContainer, and Mezzanine::UI::PageProvider.
Definition at line 71 of file renderable.cpp.
|
virtual |
Take the data stored in an XML Node and overwrite the properties of this object with it.
SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Screen, Mezzanine::UI::Widget, Mezzanine::UI::PagedContainer, Mezzanine::UI::Button, Mezzanine::UI::Scrollbar, Mezzanine::UI::MenuEntry, Mezzanine::UI::RadioButton, Mezzanine::UI::LinearContainer, Mezzanine::UI::CheckBox, Mezzanine::UI::ListBox, Mezzanine::UI::HorizontalContainer, Mezzanine::UI::VerticalContainer, Mezzanine::UI::LayoutContainer, Mezzanine::UI::MenuButton, and Mezzanine::UI::StackedContainer.
Definition at line 112 of file renderable.cpp.
|
virtual |
Convert this class to an XML::Node ready for serialization.
ParentNode | The point in the XML hierarchy that this renderable should be appended to. |
Reimplemented in Mezzanine::UI::QuadRenderable.
Definition at line 86 of file renderable.cpp.
|
protectedvirtual |
Implementation method for serializing additional sets of data.
SelfRoot | The root node containing all the serialized data for this instance. |
Reimplemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Widget, Mezzanine::UI::RadioButton, Mezzanine::UI::PagedContainer, and Mezzanine::UI::PageProvider.
Definition at line 68 of file renderable.cpp.
|
virtual |
Convert the properties of this class to an XML::Node ready for serialization.
SelfRoot | The root node containing all the serialized data for this instance. |
Reimplemented in Mezzanine::UI::QuadRenderable, Mezzanine::UI::Screen, Mezzanine::UI::Widget, Mezzanine::UI::PagedContainer, Mezzanine::UI::Button, Mezzanine::UI::Scrollbar, Mezzanine::UI::MenuEntry, Mezzanine::UI::RadioButton, Mezzanine::UI::LinearContainer, Mezzanine::UI::CheckBox, Mezzanine::UI::ListBox, Mezzanine::UI::HorizontalContainer, Mezzanine::UI::VerticalContainer, Mezzanine::UI::LayoutContainer, Mezzanine::UI::MenuButton, and Mezzanine::UI::StackedContainer.
Definition at line 93 of file renderable.cpp.
|
pure virtual |
Sets the visibility of this renderable.
CanSee | Bool determining whether or not this renderable should be visible. |
Implemented in Mezzanine::UI::Screen, Mezzanine::UI::Widget, Mezzanine::UI::MenuEntry, and Mezzanine::UI::LineList.
|
protected |
Stores whether this Renderables vertices need to be regenerated.
Definition at line 81 of file renderable.h.
|
protected |
The unique name of this Renderable.
Definition at line 84 of file renderable.h.
|
protected |
A pointer to the Screen that created this Renderable.
Definition at line 75 of file renderable.h.
|
protected |
Stores whether this Renderable is to be rendered (also dependent on parent visibility).
Definition at line 78 of file renderable.h.