Spinning Topp Logo BlackTopp Studios
inc
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
Mezzanine::UI::Screen Class Reference

This class is a helper class for creating UI's. It is responsible for storing and keeping track of all the elements of a single UI screen. More...

#include <screen.h>

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

Public Types

typedef BooleChildCallback) (QuadRenderable *Quad)
 Callback type for child processing.
 
typedef WidgetFactoryContainer::const_iterator ConstWidgetFactoryIterator
 Const Iterator type for Widget instances stored by this class.
 
typedef WidgetContainer::const_iterator ConstWidgetIterator
 Const Iterator type for Widget instances stored by this class.
 
typedef std::vector< AtlasAndPositionTextureVertexContainer
 Basic container type for the storage of render data on this screen.
 
typedef std::map< String, Widget * > WidgetContainer
 Basic container type for Widget storage by this class.
 
typedef std::map< String, WidgetFactory * > WidgetFactoryContainer
 Basic container type for Widget storage by this class.
 
typedef WidgetFactoryContainer::iterator WidgetFactoryIterator
 Iterator type for Widget instances stored by this class.
 
typedef WidgetContainer::iterator WidgetIterator
 Iterator type for Widget instances stored by this class.
 
- Public Types inherited from Mezzanine::UI::QuadRenderable
typedef std::vector< Widget * > ChildContainer
 Basic container type for Widget storage by this class.
 
typedef ChildContainer::iterator ChildIterator
 Iterator type for Widget instances stored by this class.
 
typedef ChildContainer::const_iterator ConstChildIterator
 Const Iterator type for Widget instances stored by this class.
 
typedef RenderLayerGroupContainer::const_iterator ConstRenderLayerGroupIterator
 Const Iterator type for RenderLayerGroup instances stored by this class.
 
typedef RenderLayerContainer::const_iterator ConstRenderLayerIterator
 Const Iterator type for RenderLayer instances stored by this class.
 
typedef ChildContainer::const_reverse_iterator ConstReverseChildIterator
 Const Reverse Iterator type for Widget instances stored by this class.
 
typedef std::vector< RenderLayer * > RenderLayerContainer
 Basic container type for RenderLayer storage by this class.
 
typedef std::vector< RenderLayerGroup * > RenderLayerGroupContainer
 Basic container type for RenderLayerGroup storage by this class.
 
typedef RenderLayerGroupContainer::iterator RenderLayerGroupIterator
 Iterator type for RenderLayerGroup instances stored by this class.
 
typedef RenderLayerContainer::iterator RenderLayerIterator
 Iterator type for RenderLayer instances stored by this class.
 
typedef ChildContainer::reverse_iterator ReverseChildIterator
 Reverse Iterator type for Widget instances stored by this class.
 
- Public Types inherited from Mezzanine::UI::Renderable
enum  RenderableType { RT_LineList, RT_Screen, RT_Widget }
 A small enum to describe the type of renderable this is.
 

Public Member Functions

virtual void _MarkAllLayersDirty ()
 Tells this QuadRenderable that all of it's layers are dirty. More...
 
void _MarkDirty ()
 Marks this renderable as dirty, and informs other renderables if needed. More...
 
template<typename Callback >
Boole _ProcessAllChildren (Callback *CB)
 Processes all children of this screen by their zorder. More...
 
void _RenderScreen ()
 Manually calls the UI system to render this screen. More...
 
void _RenderVertices (bool Force=false)
 Prepares all vertices for rendering to the screen. More...
 
template<typename Callback >
Boole _ReverseProcessAllChildren (Callback *CB)
 Processes all children of this screen in reverse zorder. More...
 
void _SetOrientation (const Mezzanine::OrientationMode &Mode)
 Forces an orientation mode change for this screen. More...
 
void _Transform (ScreenRenderData &RenderData, const Whole &Begin, const Whole &End)
 Updates the vertex positions so they are in front of the camera in world space. More...
 
void AddAllDefaultWidgetFactories ()
 Adds all the default widget factories provided by the engine to the Screen.
 
void AddWidgetFactory (WidgetFactory *ToBeAdded)
 Adds/registers a widget factory with this Screen, allowing it to be constructed through this API. More...
 
virtual void CheckViewportSize ()
 Checks to see if the viewport has changed in size. If so it updates all the UI elements on the screen.
 
virtual ButtonCreateButton (const String &RendName)
 Creates a Button. More...
 
virtual ButtonCreateButton (const String &RendName, const UnifiedRect &RendRect)
 Creates a Button. More...
 
virtual CheckBoxCreateCheckBox (const String &RendName)
 Creates a CheckBox. More...
 
virtual CheckBoxCreateCheckBox (const String &RendName, const UnifiedRect &RendRect)
 Creates a CheckBox. More...
 
virtual DropDownListCreateDropDownList (const String &RendName, const UI::ScrollbarStyle Style)
 Creates a DropDownList. More...
 
virtual DropDownListCreateDropDownList (const String &RendName, const UnifiedRect &RendRect, const UI::ScrollbarStyle Style)
 Creates a DropDownList. More...
 
virtual EditBoxCreateEditBox (const String &RendName, const RenderLayerType EditLayerType, FontData *EditFont)
 Creates a EditBox. More...
 
virtual EditBoxCreateEditBox (const String &RendName, const RenderLayerType EditLayerType, const String &EditFontName)
 Creates a EditBox. More...
 
virtual EditBoxCreateEditBox (const String &RendName, const UnifiedRect &RendRect, const RenderLayerType EditLayerType, FontData *EditFont)
 Creates a EditBox. More...
 
virtual EditBoxCreateEditBox (const String &RendName, const UnifiedRect &RendRect, const RenderLayerType EditLayerType, const String &EditFontName)
 Creates a EditBox. More...
 
virtual GridContainerCreateGridContainer (const String &RendName)
 Creates a widget container for the placement of widgets on a 2D grid. More...
 
virtual GridContainerCreateGridContainer (const String &RendName, const UnifiedRect &RendRect)
 Creates a widget container for the placement of widgets on a 2D grid. More...
 
virtual HorizontalContainerCreateHorizontalContainer (const String &RendName)
 Creates a widget container aligned on the X axis. More...
 
virtual HorizontalContainerCreateHorizontalContainer (const String &RendName, const UnifiedRect &RendRect)
 Creates a widget container aligned on the X axis. More...
 
virtual HorizontalScrollbarCreateHorizontalScrollbar (const String &RendName, const UI::ScrollbarStyle Style)
 Creates a Scrollbar aligned on the X axis. More...
 
virtual HorizontalScrollbarCreateHorizontalScrollbar (const String &RendName, const UnifiedRect &RendRect, const UI::ScrollbarStyle Style)
 Creates a Scrollbar aligned on the X axis. More...
 
virtual ListBoxCreateListBox (const String &RendName, const UI::ScrollbarStyle Style)
 Creates a ListBox. More...
 
virtual ListBoxCreateListBox (const String &RendName, const UnifiedRect &RendRect, const UI::ScrollbarStyle Style)
 Creates a ListBox. More...
 
virtual MenuEntryCreateMenuEntry (const String &RendName)
 Creates a MenuEntry. More...
 
virtual MenuEntryCreateMenuEntry (const String &RendName, const UnifiedRect &RendRect)
 Creates a MenuEntry. More...
 
virtual RadioButtonCreateRadioButton (const String &RendName)
 Creates a RadioButton. More...
 
virtual RadioButtonCreateRadioButton (const String &RendName, const UnifiedRect &RendRect)
 Creates a RadioButton. More...
 
virtual SpinnerCreateSpinner (const String &RendName, const SpinnerStyle SpinStyle, FontData *EditFont)
 Creates a Spinner. More...
 
virtual SpinnerCreateSpinner (const String &RendName, const SpinnerStyle SpinStyle, const String &EditFontName)
 Creates a Spinner. More...
 
virtual SpinnerCreateSpinner (const String &RendName, const UnifiedRect &RendRect, const SpinnerStyle SpinStyle, FontData *EditFont)
 Creates a Spinner. More...
 
virtual SpinnerCreateSpinner (const String &RendName, const UnifiedRect &RendRect, const SpinnerStyle SpinStyle, const String &EditFontName)
 Creates a Spinner. More...
 
virtual StackButtonCreateStackButton (const String &RendName)
 Creates a StackButton. More...
 
virtual StackButtonCreateStackButton (const String &RendName, const UnifiedRect &RendRect)
 Creates a MenuButton. More...
 
virtual TabSetCreateTabSet (const String &RendName)
 Creates a TabSet. More...
 
virtual TabSetCreateTabSet (const String &RendName, const UnifiedRect &RendRect)
 Creates a TabSet. More...
 
virtual VerticalContainerCreateVerticalContainer (const String &RendName)
 Creates a widget container aligned on the Y axis. More...
 
virtual VerticalContainerCreateVerticalContainer (const String &RendName, const UnifiedRect &RendRect)
 Creates a widget container aligned on the Y axis. More...
 
virtual VerticalScrollbarCreateVerticalScrollbar (const String &RendName, const UI::ScrollbarStyle Style)
 Creates a Scrollbar aligned on the Y axis. More...
 
virtual VerticalScrollbarCreateVerticalScrollbar (const String &RendName, const UnifiedRect &RendRect, const UI::ScrollbarStyle Style)
 Creates a Scrollbar aligned on the Y axis. More...
 
virtual WidgetCreateWidget (const XML::Node &WidgetNode)
 Creates a widget from an XML::Node. More...
 
virtual WidgetCreateWidget (const String &TypeName, const String &RendName, const NameValuePairMap &Params)
 Creates a widget based on the provided typename. More...
 
virtual WidgetCreateWidget (const String &TypeName, const String &RendName, const UnifiedRect &RendRect, const NameValuePairMap &Params)
 Creates a widget based on the provided typename. More...
 
virtual WidgetCreateWidget (const String &RendName)
 Creates a generic widget. More...
 
virtual WidgetCreateWidget (const String &RendName, const UnifiedRect &RendRect)
 Creates a generic widget. More...
 
void DestroyAllWidgetFactories ()
 Destroys all widget factories in this Screen. More...
 
virtual void DestroyAllWidgets ()
 Destroys all widgets being stored by this screen.
 
virtual void DestroyWidget (Widget *ToBeDestroyed)
 Destroys a widget. More...
 
void DestroyWidgetFactory (WidgetFactory *ToBeDestroyed)
 Removes and destroys a widget factory in this Screen. More...
 
void DestroyWidgetFactory (const String &ImplName)
 Removes and destroys a widget factory in this Screen. More...
 
virtual WidgetFindHoveredWidget (const Vector2 &MousePos)
 Gets the quad the mouse is over if any. More...
 
TextureAtlasGetAtlas (const String &Atlas) const
 Gets an atlas that has been loaded. More...
 
virtual String GetDerivedSerializableName () const
 Gets the most derived serializable name of this Renderable. More...
 
FontDataGetFont (const String &FontName, const String &Atlas) const
 Gets the specified FontData from an Atlas. More...
 
virtual UIManagerGetManager () const
 Gets the UIManager this screen belongs to. More...
 
UI::MarkupParserGetMarkupParser (const String &ParserName) const
 Gets a MarkupParser by it's registered name. More...
 
virtual const Vector2GetMouseHitPosition () const
 Gets the mouse position from the last call to "FindHoveredQuad(const Vector2&). More...
 
virtual MouseHoverStrategyGetMouseHoverStrategy () const
 Gets the MouseHoverStrategy currently being used by this screen. More...
 
virtual Whole GetNumWidgets ()
 Gets the number of widgets being used in this screen. More...
 
virtual String GetPrimaryAtlas ()
 Gets the currently set primary atlas. More...
 
virtual RenderableType GetRenderableType () const
 Gets the type of renderable this is. More...
 
SpriteGetSprite (const String &SpriteName, const String &Atlas) const
 Gets a sprite from an Atlas. More...
 
Real GetTexelOffsetX () const
 Gets the X axis Texel Offset for the current rendersystem. More...
 
Real GetTexelOffsetY () const
 Gets the Y axis Texel Offset for the current rendersystem. More...
 
Vector2 GetTextureSize (const String &Atlas) const
 Gets the texture size of the specified Atlas. More...
 
virtual Graphics::ViewportGetViewport () const
 Gets the Viewport this screen is currently rendering to. More...
 
virtual const Vector2GetViewportDimensions () const
 Gets the current viewport dimensions. More...
 
virtual Boole GetVisible () const
 Gets the visibility setting of this renderable. More...
 
Vector2 GetWhitePixel (const String &Atlas) const
 Gets the position of the white pixel from an Atlas. More...
 
virtual WidgetGetWidget (const String &Name)
 Gets a widget in this screen by name. More...
 
virtual void Hide ()
 Forces this renderable to hide. More...
 
bool IsMarkupParserRegistered (const String &ParserName) const
 Checks to see if a MarkupParser has already been registsered under a specific name. More...
 
virtual Boole IsVisible () const
 Gets whether or not this renderable is being drawn. 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 ProtoSerializeProperties (XML::Node &SelfRoot) const
 Convert the properties of this class to an XML::Node ready for serialization. More...
 
void RemoveWidgetFactory (WidgetFactory *ToBeRemoved)
 Removes a widget factory from this Screen. More...
 
void RemoveWidgetFactory (const String &ImplName)
 Removes a widget factory from this Screen. More...
 
virtual void SetMouseHoverStrategy (MouseHoverStrategy *Strategy)
 Sets the strategy to use when detect which object the mouse is hovered over. More...
 
virtual void SetPrimaryAtlas (const String &Atlas)
 Sets the Atlas to be assumed when one isn't provided for atlas related tasks. More...
 
virtual void SetVisible (Boole CanSee)
 Sets the visibility of this renderable. More...
 
virtual void Show ()
 Forces this renderable to be shown. More...
 
- Public Member Functions inherited from Mezzanine::UI::QuadRenderable
 QuadRenderable (Screen *Parent)
 Blank constructor. More...
 
 QuadRenderable (const String &RendName, Screen *Parent)
 Class constructor. More...
 
 QuadRenderable (const String &RendName, const UnifiedRect &RendRect, Screen *Parent)
 Parent-less constructor. More...
 
virtual ~QuadRenderable ()
 Class destructor. More...
 
virtual void _AppendRenderData (ScreenRenderData &RenderData)
 Appends the vertices of this renderable to another vector. More...
 
virtual void _AppendRenderDataCascading (ScreenRenderData &RenderData)
 Appends the vertices of this renderable to another vector, and then does the same for this renderable's children. More...
 
virtual void _Clean ()
 Refreshes the render data of this renderable. More...
 
virtual void _MarkAllChildrenDirty ()
 Tells this QuadRenderable to mark each of it's children (and their children) as dirty. More...
 
virtual void _NotifyParenthood (QuadRenderable *NewParent)
 Notifies this QuadRenderable that it has been added to another QuadRenderable. More...
 
virtual void _SetLayoutStrat (LayoutStrategy *ToSet)
 Sets a new LayoutStrategy for this quad to use. More...
 
virtual void _SetZOrder (const UInt16 &Zorder)
 Ssts the ZOrder value for this renderable. More...
 
virtual void AddChild (Widget *Child)
 Adds a Widget to this as a child of this quad. More...
 
virtual void AddChild (Widget *Child, const UInt16 ZOrder)
 Adds a Widget to this as a child of this quad. More...
 
void AddLayerToExistingGroup (RenderLayer *Layer, const UInt16 LayerZOrder, const UInt16 GroupID)
 Adds a RenderLayer to the specified group. More...
 
void AddLayerToGroup (RenderLayer *Layer, const UInt16 LayerZOrder, const UInt16 GroupID)
 Adds a RenderLayer to the specified group. More...
 
void AddLayerToGroup (RenderLayer *Layer, const GroupOrderEntry &GroupAndZ)
 Adds a RenderLayer to the specified group. More...
 
void AddLayerToGroups (RenderLayer *Layer, const GroupOrderEntryVector &Entrys)
 Adds a RenderLayer to multiple groups. More...
 
virtual Boole CheckOverlap (const QuadRenderable *Quad) const
 Checks to see if another Quad is overlapping with this one. More...
 
ChildIterator ChildrenBegin ()
 Gets an iterator to the first child Widget. More...
 
ConstChildIterator ChildrenBegin () const
 Gets a const iterator to the first child Widget. More...
 
ChildIterator ChildrenEnd ()
 Gets an iterator to one passed the last child Widget. More...
 
ConstChildIterator ChildrenEnd () const
 Gets an iterator to one passed the last child Widget. More...
 
MultiImageLayerCreateMultiImageLayer ()
 Creates an MultiImageLayer for this renderable. More...
 
MultiImageLayerCreateMultiImageLayer (const UInt16 NormalZ, const UInt16 HoveredZ)
 Creates an MultiImageLayer for this renderable. More...
 
MultiImageLayerCreateMultiImageLayer (const GroupOrderEntry &GroupAndZ)
 Creates an MultiImageLayer for this renderable and adds it to a RenderLayerGroup. More...
 
MultiLineTextLayerCreateMultiLineTextLayer ()
 Creats a MultiLineTextLayer for this renderable. More...
 
MultiLineTextLayerCreateMultiLineTextLayer (const UInt16 NormalZ, const UInt16 HoveredZ)
 Creats a MultiLineTextLayer for this renderable. More...
 
MultiLineTextLayerCreateMultiLineTextLayer (const GroupOrderEntry &GroupAndZ)
 Creats a MultiLineTextLayer for this renderable. More...
 
MultiLineTextLayerCreateMultiLineTextLayer (const String &FontName)
 Creats a MultiLineTextLayer for this renderable. More...
 
MultiLineTextLayerCreateMultiLineTextLayer (const String &FontName, const UInt16 NormalZ, const UInt16 HoveredZ)
 Creats a MultiLineTextLayer for this renderable. More...
 
MultiLineTextLayerCreateMultiLineTextLayer (const String &FontName, const GroupOrderEntry &GroupAndZ)
 Creats a MultiLineTextLayer for this renderable. More...
 
RenderLayerGroupCreateOrRetrieveRenderLayerGroup (const UInt16 GroupID)
 Gets the named RenderLayerGroup or creates one with the specified ID if it does not exist. More...
 
RenderLayerGroupCreateRenderLayerGroup (const UInt16 GroupID)
 Creates a new RenderLayerGroup that can have.

Exceptions
Thisfunction will throw an exception if a group already exists with the provided name.
More...
 
SingleImageLayerCreateSingleImageLayer ()
 Creates a SingleImageLayer for this renderable. More...
 
SingleImageLayerCreateSingleImageLayer (const UInt16 NormalZ, const UInt16 HoveredZ)
 Creates a SingleImageLayer for this renderable. More...
 
SingleImageLayerCreateSingleImageLayer (const GroupOrderEntry &GroupAndZ)
 Creates a SingleImageLayer for this renderable and adds it to a RenderLayerGroup. More...
 
SingleImageLayerCreateSingleImageLayer (const String &SpriteName)
 Creates a SingleImageLayer for this renderable. More...
 
SingleImageLayerCreateSingleImageLayer (const String &SpriteName, const UInt16 NormalZ, const UInt16 HoveredZ)
 Creates a SingleImageLayer for this renderable. More...
 
SingleImageLayerCreateSingleImageLayer (const String &SpriteName, const GroupOrderEntry &GroupAndZ)
 Creates a SingleImageLayer for this renderable and adds it to a RenderLayerGroup. More...
 
SingleLineTextLayerCreateSingleLineTextLayer ()
 Creats a SingleLineTextLayer for this renderable. More...
 
SingleLineTextLayerCreateSingleLineTextLayer (const UInt16 NormalZ, const UInt16 HoveredZ)
 Creats a SingleLineTextLayer for this renderable. More...
 
SingleLineTextLayerCreateSingleLineTextLayer (const GroupOrderEntry &GroupAndZ)
 Creats a SingleLineTextLayer for this renderable. More...
 
SingleLineTextLayerCreateSingleLineTextLayer (const String &FontName)
 Creats a SingleLineTextLayer for this renderable. More...
 
SingleLineTextLayerCreateSingleLineTextLayer (const String &FontName, const UInt16 NormalZ, const UInt16 HoveredZ)
 Creats a SingleLineTextLayer for this renderable. More...
 
SingleLineTextLayerCreateSingleLineTextLayer (const String &FontName, const GroupOrderEntry &GroupAndZ)
 Creats a SingleLineTextLayer for this renderable. More...
 
virtual void DestroyAllChildren ()
 Destroys all child Widgets currently inside this QuadRenderable.
 
void DestroyAllRenderLayerGroups ()
 Destroy's all RenderLayerGroups being stored/managed by this QuadRenderable.
 
void DestroyAllRenderLayers ()
 Destroys all RenderLayers being stored by this renderable.
 
virtual void DestroyChild (Widget *ToBeDestroyed)
 Destroys a child Widget currently inside this QuadRenderable. More...
 
void DestroyRenderLayer (RenderLayer *ToBeDestroyed)
 Destroys a RenderLayer being stored by this renderable. More...
 
void DestroyRenderLayerGroup (const UInt16 GroupID)
 Destroy's a RenderLayerGroup by ID. More...
 
void DestroyRenderLayerGroup (RenderLayerGroup *ToBeDestroyed)
 Destroy's a RenderLayerGroup by pointer. More...
 
RenderLayerGroupGetActiveGroup () const
 Gets the current RenderLayerGroup used for rendering. More...
 
virtual Vector2 GetActualPosition () const
 Gets the pixel position of this widget. More...
 
virtual Vector2 GetActualSize () const
 Gets the pixel size of this widget. More...
 
virtual UI::AspectRatioLock GetAspectRationLock () const
 Gets how (and if) the aspect ratio of this quad is locked. More...
 
virtual WidgetGetChild (const UInt16 Zorder) const
 Gets a child by it's ZOrder. More...
 
virtual WidgetGetChild (const String &RendName) const
 Gets a child by it's name. More...
 
WidgetGetClosestChild (Widget *Child)
 Gets a pointer to the child of this QuadRenderable that is storing a child, or another quad that is. More...
 
virtual UInt16 GetHighestChildZOrder () const
 Gets the highest ZOrder among the children of this QuadRenderable. More...
 
virtual Whole GetHorizontalPositioningRules () const
 Gets the current behavior this quad will follow when it is positioned automatically on the X axis. More...
 
virtual Whole GetHorizontalSizingRules () const
 Gets the current behavior this quad will follow for the X axis when it is resized. More...
 
virtual Real GetIdealHeightForText () const
 Gets the height needed for this quadrenderable to be able to completely display text in it's child text layers. More...
 
virtual UInt16 GetLowestChildZOrder () const
 Gets the lowest ZOrder among the children of this QuadRenderable. More...
 
virtual Boole GetManualTransformUpdates () const
 Gets whether or not this quad will be automatically updated when parent transforms are updated. More...
 
virtual UnifiedVec2 GetMaxSize () const
 Gets the currently set maximum size for this quad. More...
 
virtual UnifiedVec2 GetMinSize () const
 Gets the currently set minimum size for this quad. More...
 
virtual Boole GetMousePassthrough () const
 Gets whether or not Mouse Passthrough is enabled. More...
 
QuadRenderableGetNextSibling (Boole Wrap=true)
 Gets the QuadRenderable after this one among the QuadRenderables owned by it's parent. More...
 
virtual Whole GetNumChildren () const
 Gets the number of children in this QuadRenderable. More...
 
UInt32 GetNumRenderLayerGroups () const
 Gets the number of RenderLayerGroup's created for this renderable. More...
 
UInt32 GetNumRenderLayers () const
 Gets the number of RenderLayers created for this renderable. More...
 
UInt32 GetNumVisibleRenderLayers () const
 Gets the number of RenderLayers that are visible in this renderable. More...
 
QuadRenderableGetParent () const
 Gets the parent of this quad. More...
 
virtual const PositioningInfoGetPositioningPolicy () const
 Gets the current behavior this QuadRenderable will use when it is positioned. More...
 
QuadRenderableGetPrevSibling (Boole Wrap=true)
 Gets the QuadRenderable before this one among the QuadRenderables owned by it's parent. More...
 
virtual Rect GetRect () const
 Gets this QuadRenderables' Rect. More...
 
RenderLayerGetRenderLayer (const UInt32 &Index) const
 Gets a RenderLayer belonging to this QuadRenderable by index. More...
 
RenderLayerGetRenderLayer (const Whole Which, const UI::RenderLayerType Type)
 Gets a RenderLayer belonging to this QuadRenderable by it's type. More...
 
RenderLayerGroupGetRenderLayerGroup (const UInt16 GroupID) const
 Gets a RenderLayerGroup by ID. More...
 
virtual const SizingInfoGetSizingPolicy () const
 Gets the current behavior this QuadRenderable will use when it is sized. More...
 
QuadRenderableGetTopMostQuad ()
 Gets the QuadRenderable that is both an ancestor of this quad, and a direct child of the screen. More...
 
virtual UnifiedVec2 GetUnifiedPosition () const
 Gets the position of this QuadRenderable as a Unified Vector2. More...
 
virtual UnifiedRect GetUnifiedRect () const
 Gets the Unified positiona nd size of this QuadRenderable as a unified rect. More...
 
virtual UnifiedVec2 GetUnifiedSize () const
 Gets the size of this QuadRenderable as a Unified Vector2. More...
 
virtual Whole GetVerticalPositioningRules () const
 Gets the current behavior this quad will follow when it is positioned automatically on the Y axis. More...
 
virtual Whole GetVerticalSizingRules () const
 Gets the current behavior this quad will follow for the Y axis when it is resized. More...
 
virtual const UInt16GetZOrder () const
 Gets the currently set ZOrder of this QuadRenderable with it's parent. More...
 
virtual Boole IsChildOfScreen () const
 Gets whether or not this QuadRenderable is a direct child of it's screen. More...
 
virtual Boole IsInside (const Vector2 &Point) const
 Checks to see if a point in 2D space is inside this quad. More...
 
Boole IsVertexCachingEnabled () const
 Gets whether or not vertex caching is enabled for this Quad. More...
 
virtual void PopulateTextLinesInLayers (const Real MaxWidth)
 Populates all text lines in all text layers owned by this quad. 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 ProtoDeSerializeChildQuads (const XML::Node &SelfRoot)
 Take the data stored in an XML Node and overwrite the ChildQuads of this object with it. More...
 
virtual void ProtoDeSerializeRenderLayerGroups (const XML::Node &SelfRoot)
 Take the data stored in an XML Node and overwrite the RenderLayerGroups of this object with it. More...
 
virtual void ProtoDeSerializeRenderLayers (const XML::Node &SelfRoot)
 Take the data stored in an XML Node and overwrite the RenderLayers 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 ProtoSerializeChildQuads (XML::Node &SelfRoot) const
 Convert the child quads of this class to an XML::Node ready for serialization. More...
 
virtual void ProtoSerializeRenderLayerGroups (XML::Node &SelfRoot) const
 Convert the RenderLayerGroups of this class to an XML::Node ready for seriailization. More...
 
virtual void ProtoSerializeRenderLayers (XML::Node &SelfRoot) const
 Convert the RenderLayers of this class to an XML::Node ready for serialization. More...
 
ReverseChildIterator RChildrenBegin ()
 Gets an iterator to the last Widget. More...
 
ConstReverseChildIterator RChildrenBegin () const
 Gets a const iterator to the last Widget. More...
 
ReverseChildIterator RChildrenEnd ()
 Gets an iterator to one before the first child Widget. More...
 
ConstReverseChildIterator RChildrenEnd () const
 Gets a const iterator to one before the first child Widget. More...
 
virtual void RemoveAllChildren ()
 Removes all child Widgets from this QuadRenderable. More...
 
virtual void RemoveChild (Widget *ToBeRemoved)
 Removes a child Widget from this quadrenderable. More...
 
void RemoveLayerFromAllGroups (RenderLayer *Layer)
 Removes a single RenderLayer from all RenderLayerGroups owned by this QuadRenderable. More...
 
void RemoveLayerFromGroup (RenderLayer *Layer, const UInt16 GroupID)
 Removes a single RenderLayer from a specified RenderLayerGroup. More...
 
RenderLayerIterator RenderLayerBegin ()
 Gets an iterator to the first RenderLayer. More...
 
ConstRenderLayerIterator RenderLayerBegin () const
 Gets a const iterator to the first RenderLayer. More...
 
RenderLayerIterator RenderLayerEnd ()
 Gets an iterator to one passed the last RenderLayer. More...
 
ConstRenderLayerIterator RenderLayerEnd () const
 Gets an iterator to one passed the last RenderLayer. More...
 
RenderLayerGroupIterator RenderLayerGroupBegin ()
 Gets an iterator to the first RenderLayerGroup. More...
 
ConstRenderLayerGroupIterator RenderLayerGroupBegin () const
 Gets a const iterator to the first RenderLayerGroup. More...
 
RenderLayerGroupIterator RenderLayerGroupEnd ()
 Gets an iterator to one passed the last RenderLayerGroup. More...
 
ConstRenderLayerGroupIterator RenderLayerGroupEnd () const
 Gets an iterator to one passed the last RenderLayerGroup. More...
 
Boole RenderLayerGroupExists (const UInt16 GroupID) const
 Checks to see if a RenderLayerGroup exists. More...
 
void SetActiveGroup (const UInt16 GroupID)
 Sets the RenderLayerGroup that will be used to render this renderable. More...
 
void SetActiveGroup (RenderLayerGroup *Group)
 Sets the RenderLayerGroup that will be used to render this renderable. More...
 
virtual void SetAspectRatioLock (const UI::AspectRatioLock Lock)
 Sets how (and if) the aspect ratio of this quad is locked. More...
 
virtual void SetHorizontalPositioningRules (const Whole Rules)
 Sets the behavior this quad will have when it is positioned automatically on the X axis. More...
 
virtual void SetHorizontalSizingRules (const Whole Rules)
 Sets the behavior this quad will have on the X axis when it is resized. More...
 
void SetLocalVertexCaching (Boole Enable)
 Enables or disables caching of vertex's belonging to this and all child renderables. More...
 
virtual void SetManualTransformUpdates (Boole Enable)
 Sets whether or not this quad has specific behaviors for it's transform updates and they should not be done automatically. More...
 
virtual void SetMaxSize (const UnifiedVec2 &Max)
 Sets the maximum size this quad is allowed to have. More...
 
virtual void SetMinSize (const UnifiedVec2 &Min)
 Sets the minimum size this quad is allowed to have. More...
 
virtual void SetMousePassthrough (Boole Enable)
 Sets whether or not this quad should be skipped when determining if the mouse is hovered over this quad. More...
 
virtual void SetPositioningPolicy (const PositioningInfo &Policy)
 Sets the behavior to be used when this QuadRenderable is positioned. More...
 
virtual void SetSizingPolicy (const SizingInfo &Policy)
 Sets the behavior to be used when this QuadRenderable is sized. More...
 
virtual void SetUnifiedPosition (const UnifiedVec2 &Position)
 Sets the position this QuadRenderable will have within it's parent. More...
 
virtual void SetUnifiedSize (const UnifiedVec2 &Size)
 Sets the size this QuadRenderable will have within it's parent. More...
 
virtual void SetVerticalPositioningRules (const Whole Rules)
 Sets the behavior this quad will have when it is positioned automatically on the Y axis. More...
 
virtual void SetVerticalSizingRules (const Whole Rules)
 Sets the behavior this quad will have on the Y axis when it is resized. More...
 
virtual void UpdateChildDimensions ()
 Updates the dimensions of the children in this QuadRenderable. More...
 
virtual void UpdateChildOrder ()
 Updates the order of children in this QuadRenderable based on the ZOrder set on each child.
 
virtual void UpdateDimensions ()
 Updates the dimensions of this QuadRenderable based on the transform of it's parent. More...
 
virtual void UpdateDimensions (const Rect &OldSelfRect, const Rect &NewSelfRect)
 Updates the dimensions of this QuadRenderable based on the transform of it's parent. More...
 
- Public Member Functions inherited from Mezzanine::UI::Renderable
Boole _IsDirty () const
 Gets whether or not this renderable is dirty. More...
 
const StringGetName () const
 Gets the name of this renderable. More...
 
ScreenGetScreen () const
 Gets the parent screen of this renderable. More...
 
Boole IsScreen () const
 Gets whether or not this renderable is a Screen. More...
 
Boole IsWidget () const
 Gets whether or not this renderable is a Widget. More...
 

Static Public Member Functions

template<typename Callback >
static Boole _ProcessAllChildren (Widget *Wid, Callback *CB)
 Processes all children of this screen by their zorder. More...
 
template<typename Callback >
static Boole _ReverseProcessAllChildren (Widget *Wid, Callback *CB)
 Processes all children of this screen in reverse zorder. More...
 
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::QuadRenderable
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::Renderable
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

 Screen (const String &RendName, const String &Atlas, Graphics::Viewport *WindowViewport, UIManager *Manager)
 Internal constructor. More...
 
 Screen (const XML::Node &XMLNode, UIManager *Manager)
 XML constructor. More...
 
virtual ~Screen ()
 Class destructor.
 
virtual WidgetCheckAndInsertExcept (Widget *ToInsert)
 Verifies uniqueness of a widget and inserts it if it is.

Exceptions
Ifa widget with the same name already exists in this Screen, a II_DUPLICATE_IDENTITY_EXCEPTION will be thrown.
More...
 
virtual void CreateVertexBuffer (const Whole &InitialSize)
 Creates a new Vertex Buffer for vertices generated by the UI system. More...
 
virtual void DestroyVertexBuffer ()
 Destroys the Vertex Buffer storing all the UI vertices generated by this screen. More...
 
virtual Graphics::SceneManagerGetSceneManager () const
 Gets a pointer to the SceneManager connected to this screens viewport. More...
 
virtual WidgetFactoryGetWidgetFactoryExcept (const String &WidgetTypeName)
 Gets a registered WidgetFactory that creates the specified type of widget.

Exceptions
Ifa widget factor of the specified widget type isn't registered then a II_IDENTITY_NOT_FOUND_EXCEPTION will be thrown.
More...
 
virtual void PrepareRenderSystem ()
 Sets up all the necessary projection and world matrices for UI rendering. More...
 
virtual void ResizeVertexBuffer (const Whole &RequestedSize)
 Resizes the Vertex Buffer. More...
 
- Protected Member Functions inherited from Mezzanine::UI::QuadRenderable
void AppendLayerVertices (std::vector< VertexData > &Vertices)
 Adds all the vertices belonging to all the layers of this renderable to the provided vector. More...
 
RenderLayerGroupCreateRenderLayerGroupNoCheck (const UInt16 ID)
 Creates a new RenderLayerGroup with the provided ID, without checking if it is unique. More...
 
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...
 
void ResizeLayers (const Whole NewSize)
 Resizes the container for RenderLayers in this QuadRenderable. More...
 
- Protected Member Functions inherited from Mezzanine::UI::Renderable
 Renderable (Screen *Parent)
 Blank constructor. More...
 
 Renderable (const String &RendName, Screen *Parent)
 Class constructor. More...
 
virtual ~Renderable ()
 Class destructor.
 

Protected Attributes

Graphics::ViewportGameViewport
 A pointer to the viewport this screen is bound to. More...
 
Vector2 InverseSize
 The inverse size (1/size) of the viewport this screen is bound to in pixels. More...
 
Vector2 MouseHitPosition
 The pixel position on this screen where the mouse clicked on a Widget. More...
 
MouseHoverStrategyMouseStrat
 A pointer to the strategy to be used when detecting the hovered widget. More...
 
Mezzanine::OrientationMode Orientation
 The current orientation mode of this screen. More...
 
String PrimaryAtlas
 The name of the this screens primary atlas for texture lookups. More...
 
Vector3 Scale
 The scaling to be applied to all vertices that are generated by this screen. More...
 
ScreenInternalData * SID
 A pointer to the class storing all sensative internal data THAT IS NOT FOR YOUR EYES! More...
 
TextureVertexContainer TextureByVertex
 A container storing a mapping of the textures needed to render each section of vertices. More...
 
UIManagerUIMan
 A pointer to the UIManager that owns this screen. More...
 
ScreenRenderData VertexCache
 A container storing the actual vertices to be rendered. More...
 
Matrix4x4 VertexTransform
 The transformation matrix used to update vertex transforms if needed. More...
 
WidgetFactoryContainer WidgetFactories
 A container storing all the factories for the widgets supported by this screen. More...
 
WidgetContainer Widgets
 A container storing all the created Widgets owned by this screen. More...
 
- Protected Attributes inherited from Mezzanine::UI::QuadRenderable
Rect ActDims
 The actual (pixel) position and size of this Quad on the screen it belongs to. More...
 
RenderLayerGroupActiveGroup
 This is a pointer to the group of RenderLayers currently being used for rendering. More...
 
Boole AllLayersDirty
 Determines whether or not this Quad needs all of it's layers refreshed. Usually after a transform update. More...
 
ChildContainer ChildWidgets
 This is a container storing all the children that belong to this Quad. More...
 
LayoutStrategyLayoutStrat
 This is a pointer to the strategy being used by this Quad to determine the positions and sizes of children during transform updates. More...
 
Boole ManualTransformUpdates
 Controls whether or not this Quad and it's children will recieve automatic transform updates. More...
 
Boole MousePassthrough
 Controls whether or not this Quad will be considered for mouse hover checks. More...
 
QuadRenderableParentQuad
 This is a pointer to the Quad that owns this Quad and is responsible for transform updates applied to this Quad. More...
 
PositioningInfo PositioningPolicy
 This stores all the information needed to determine the specific behaviors this Quad should have when it's position is being updated. More...
 
RenderLayerGroupContainer RenderLayerGroups
 This is a container storing all the RenderLayerGroup instances created by and belonging to this Quad. More...
 
RenderLayerContainer RenderLayers
 This is a container storing all the RenderLayer instances created by and belonging to this Quad. More...
 
SizingInfo SizingPolicy
 This stores all the information needed to determine the specific behaviors this Quad should have when it's size is being updated. More...
 
ScreenRenderDataVertexCache
 This is a pointer to the optional cache of vertex's belonging to this Quad and all of it's children. More...
 
UInt16 ZOrder
 This is the ZOrder of this Quad in relation to all other Quads in it's parent. More...
 
- Protected Attributes inherited from Mezzanine::UI::Renderable
Boole Dirty
 Stores whether this Renderables vertices need to be regenerated. More...
 
String Name
 The unique name of this Renderable. More...
 
ScreenParentScreen
 A pointer to the Screen that created this Renderable. More...
 
Boole Visible
 Stores whether this Renderable is to be rendered (also dependent on parent visibility). More...
 

Friends

class Mezzanine::UI::UIManager
 

Detailed Description

This class is a helper class for creating UI's. It is responsible for storing and keeping track of all the elements of a single UI screen.

UI's can optionally be divided up into Screens. Each screen is batched together for rendering, so keeping the amount of screens to a minimum will improve performance.

Definition at line 142 of file screen.h.

Constructor & Destructor Documentation

Mezzanine::UI::Screen::Screen ( const String RendName,
const String Atlas,
Graphics::Viewport WindowViewport,
UIManager Manager 
)
protected

Internal constructor.

Parameters
RendNameThe name of this screen.
AtlasThe name of the primary atlas to be assigned to this screen. This can be overridden later, even by individual UI elements.
WindowViewportThe Viewport to which this screen belongs.
ManagerA pointer to the UI manager creating this screen.

Definition at line 191 of file screen.cpp.

Mezzanine::UI::Screen::Screen ( const XML::Node XMLNode,
UIManager Manager 
)
protected

XML constructor.

Parameters
XMLNodeThe node of the xml document to construct from.
ManagerA pointer to the UI manager creating this screen.

Definition at line 226 of file screen.cpp.

Member Function Documentation

void Mezzanine::UI::Screen::_MarkAllLayersDirty ( )
virtual

Tells this QuadRenderable that all of it's layers are dirty.

Reimplemented from Mezzanine::UI::QuadRenderable.

Definition at line 1013 of file screen.cpp.

void Mezzanine::UI::Screen::_MarkDirty ( )
virtual

Marks this renderable as dirty, and informs other renderables if needed.

Reimplemented from Mezzanine::UI::QuadRenderable.

Definition at line 1007 of file screen.cpp.

template<typename Callback >
Boole Mezzanine::UI::Screen::_ProcessAllChildren ( Callback *  CB)
inline

Processes all children of this screen by their zorder.

Parameters
CBThe callback implementing how the children are to be processed.
Returns
Returns the result of the callback, and exits early if true.

Definition at line 665 of file screen.h.

template<typename Callback >
static Boole Mezzanine::UI::Screen::_ProcessAllChildren ( Widget Wid,
Callback *  CB 
)
inlinestatic

Processes all children of this screen by their zorder.

Parameters
WidThe Widget whose children need to be processed.
CBThe callback implementing how the children are to be processed.
Returns
Returns the result of the callback, and exits early if true.

Definition at line 694 of file screen.h.

void Mezzanine::UI::Screen::_RenderScreen ( )

Manually calls the UI system to render this screen.

Definition at line 1022 of file screen.cpp.

void Mezzanine::UI::Screen::_RenderVertices ( bool  Force = false)

Prepares all vertices for rendering to the screen.

Parameters
ForceWhether or not to force preparation regardless of if they need it.

Definition at line 1094 of file screen.cpp.

template<typename Callback >
Boole Mezzanine::UI::Screen::_ReverseProcessAllChildren ( Callback *  CB)
inline

Processes all children of this screen in reverse zorder.

Parameters
CBThe callback implementing how the children are to be processed.
Returns
Returns the result of the callback, and exits early if true.

Definition at line 679 of file screen.h.

template<typename Callback >
static Boole Mezzanine::UI::Screen::_ReverseProcessAllChildren ( Widget Wid,
Callback *  CB 
)
inlinestatic

Processes all children of this screen in reverse zorder.

Parameters
WidThe Widget whose children need to be processed.
CBThe callback implementing how the children are to be processed.
Returns
Returns the result of the callback, and exits early if true.

Definition at line 711 of file screen.h.

void Mezzanine::UI::Screen::_SetOrientation ( const Mezzanine::OrientationMode Mode)

Forces an orientation mode change for this screen.

Parameters
ModeThe orientation mode to be applied to the UI on this screen.

Definition at line 1068 of file screen.cpp.

void Mezzanine::UI::Screen::_Transform ( ScreenRenderData RenderData,
const Whole Begin,
const Whole End 
)

Updates the vertex positions so they are in front of the camera in world space.

Parameters
RenderDataVector of the vertices to be transformed.
BeginThe first Vertex to transform in the range.
EndThe last Vertex to transform in the range.

Definition at line 1077 of file screen.cpp.

void Mezzanine::UI::Screen::AddWidgetFactory ( WidgetFactory ToBeAdded)

Adds/registers a widget factory with this Screen, allowing it to be constructed through this API.

Parameters
ToBeAddedThe widget factory to be added.

Definition at line 442 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CheckAndInsertExcept ( Widget ToInsert)
protectedvirtual

Verifies uniqueness of a widget and inserts it if it is.

Exceptions
Ifa widget with the same name already exists in this Screen, a II_DUPLICATE_IDENTITY_EXCEPTION will be thrown.

Parameters
ToInsertThe widget to be verified and inserted.
Returns
Returns a pointer to the same widget that was passed into this method.

Definition at line 283 of file screen.cpp.

Button * Mezzanine::UI::Screen::CreateButton ( const String RendName)
virtual

Creates a Button.

Parameters
RendNameThe name to be given to this Button.
Returns
Returns a pointer to the created Button.

Definition at line 630 of file screen.cpp.

Button * Mezzanine::UI::Screen::CreateButton ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a Button.

Parameters
RendNameThe name to be given to this Button.
RendRectThe rect describing this Button's transform relative to it's parent.
Returns
Returns a pointer to the created Button.

Definition at line 637 of file screen.cpp.

CheckBox * Mezzanine::UI::Screen::CreateCheckBox ( const String RendName)
virtual

Creates a CheckBox.

Parameters
RendNameThe name of the CheckBox.
Returns
Returns a pointer to the created CheckBox.

Definition at line 672 of file screen.cpp.

CheckBox * Mezzanine::UI::Screen::CreateCheckBox ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a CheckBox.

Parameters
RendNameThe name of the CheckBox.
RendRectThe Rect representing the position and size of the CheckBox.
Returns
Returns a pointer to the created CheckBox.

Definition at line 679 of file screen.cpp.

DropDownList * Mezzanine::UI::Screen::CreateDropDownList ( const String RendName,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a DropDownList.

Parameters
RendNameThe name to be given to this DropDownList.
StyleAn enum value representing how the scrollbar child of the ListBox will be constructed. See UI::ScrollbarStyle enum for more info.
Returns
Returns a pointer to the created DropDownList.

Definition at line 812 of file screen.cpp.

DropDownList * Mezzanine::UI::Screen::CreateDropDownList ( const String RendName,
const UnifiedRect RendRect,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a DropDownList.

Parameters
RendNameThe name to be given to this DropDownList.
RendRectThe rect describing this DropDownList's transform relative to it's parent.
StyleAn enum value representing how the scrollbar child of the ListBox will be constructed. See UI::ScrollbarStyle enum for more info.
Returns
Returns a pointer to the created DropDownList.

Definition at line 819 of file screen.cpp.

EditBox * Mezzanine::UI::Screen::CreateEditBox ( const String RendName,
const RenderLayerType  EditLayerType,
FontData EditFont 
)
virtual

Creates a EditBox.

Parameters
RendNameThe name of the EditBox.
EditLayerTypeThe type of text layer to be auto-created for editing.
EditFontA pointer to the font to be used by the edit layer.
Returns
Returns a pointer to the created EditBox.

Definition at line 686 of file screen.cpp.

EditBox * Mezzanine::UI::Screen::CreateEditBox ( const String RendName,
const RenderLayerType  EditLayerType,
const String EditFontName 
)
virtual

Creates a EditBox.

Parameters
RendNameThe name of the EditBox.
EditLayerTypeThe type of text layer to be auto-created for editing.
EditFontNameThe name of the font to be used by the edit layer.
Returns
Returns a pointer to the created EditBox.

Definition at line 693 of file screen.cpp.

EditBox * Mezzanine::UI::Screen::CreateEditBox ( const String RendName,
const UnifiedRect RendRect,
const RenderLayerType  EditLayerType,
FontData EditFont 
)
virtual

Creates a EditBox.

Parameters
RendNameThe name of the EditBox.
RendRectThe Rect representing the position and size of the EditBox.
EditLayerTypeThe type of text layer to be auto-created for editing.
EditFontA pointer to the font to be used by the edit layer.
Returns
Returns a pointer to the created EditBox.

Definition at line 700 of file screen.cpp.

EditBox * Mezzanine::UI::Screen::CreateEditBox ( const String RendName,
const UnifiedRect RendRect,
const RenderLayerType  EditLayerType,
const String EditFontName 
)
virtual

Creates a EditBox.

Parameters
RendNameThe name of the EditBox.
RendRectThe Rect representing the position and size of the EditBox.
EditLayerTypeThe type of text layer to be auto-created for editing.
EditFontNameThe name of the font to be used by the edit layer.
Returns
Returns a pointer to the created EditBox.

Definition at line 707 of file screen.cpp.

GridContainer * Mezzanine::UI::Screen::CreateGridContainer ( const String RendName)
virtual

Creates a widget container for the placement of widgets on a 2D grid.

Parameters
RendNameThe name to be given to this renderable.
Returns
Returns a pointer to the created GridContainer.

Definition at line 854 of file screen.cpp.

GridContainer * Mezzanine::UI::Screen::CreateGridContainer ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a widget container for the placement of widgets on a 2D grid.

Parameters
RendNameThe name to be given to this renderable.
RendRectThe rect describing this widget's transform relative to it's parent.
Returns
Returns a pointer to the created GridContainer.

Definition at line 861 of file screen.cpp.

HorizontalContainer * Mezzanine::UI::Screen::CreateHorizontalContainer ( const String RendName)
virtual

Creates a widget container aligned on the X axis.

Parameters
RendNameThe name to be given to this renderable.
Returns
Returns a pointer to the created HorizontalContainer.

Definition at line 826 of file screen.cpp.

HorizontalContainer * Mezzanine::UI::Screen::CreateHorizontalContainer ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a widget container aligned on the X axis.

Parameters
RendNameThe name to be given to this renderable.
RendRectThe rect describing this widget's transform relative to it's parent.
Returns
Returns a pointer to the created HorizontalContainer.

Definition at line 833 of file screen.cpp.

HorizontalScrollbar * Mezzanine::UI::Screen::CreateHorizontalScrollbar ( const String RendName,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a Scrollbar aligned on the X axis.

Parameters
RendNameThe name of the HorizontalScrollbar.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created HorizontalScrollbar.

Definition at line 714 of file screen.cpp.

HorizontalScrollbar * Mezzanine::UI::Screen::CreateHorizontalScrollbar ( const String RendName,
const UnifiedRect RendRect,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a Scrollbar aligned on the X axis.

Parameters
RendNameThe name of the HorizontalScrollbar.
RendRectThe Rect representing the position and size of the HorizontalScrollbar.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created HorizontalScrollbar.

Definition at line 721 of file screen.cpp.

ListBox * Mezzanine::UI::Screen::CreateListBox ( const String RendName,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a ListBox.

Parameters
RendNameThe name to be given to this ListBox.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created ListBox.

Definition at line 798 of file screen.cpp.

ListBox * Mezzanine::UI::Screen::CreateListBox ( const String RendName,
const UnifiedRect RendRect,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a ListBox.

Parameters
RendNameThe name to be given to this ListBox.
RendRectThe rect describing this ListBox's transform relative to it's parent.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created ListBox.

Definition at line 805 of file screen.cpp.

MenuEntry * Mezzanine::UI::Screen::CreateMenuEntry ( const String RendName)
virtual

Creates a MenuEntry.

Parameters
RendNameThe name to be given to this MenuEntry.
Returns
Returns a pointer to the created MenuEntry.

Definition at line 770 of file screen.cpp.

MenuEntry * Mezzanine::UI::Screen::CreateMenuEntry ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a MenuEntry.

Parameters
RendNameThe name to be given to this MenuEntry.
RendRectThe rect describing this MenuEntry's transform relative to it's parent.
Returns
Returns a pointer to the created MenuEntry.

Definition at line 777 of file screen.cpp.

RadioButton * Mezzanine::UI::Screen::CreateRadioButton ( const String RendName)
virtual

Creates a RadioButton.

Parameters
RendNameThe name to be given to this RadioButton.
Returns
Returns a pointer to the created RadioButton.

Definition at line 658 of file screen.cpp.

RadioButton * Mezzanine::UI::Screen::CreateRadioButton ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a RadioButton.

Parameters
RendNameThe name to be given to this RadioButton.
RendRectThe rect describing this RadioButton's transform relative to it's parent.
Returns
Returns a pointer to the created RadioButton.

Definition at line 665 of file screen.cpp.

Spinner * Mezzanine::UI::Screen::CreateSpinner ( const String RendName,
const SpinnerStyle  SpinStyle,
FontData EditFont 
)
virtual

Creates a Spinner.

Parameters
RendNameThe name of the Spinner.
SpinStyleThe layout of buttons this Spinner will have.
EditFontA pointer to the font to be used by the edit layer.
Returns
Returns a pointer to the created Spinner.

Definition at line 742 of file screen.cpp.

Spinner * Mezzanine::UI::Screen::CreateSpinner ( const String RendName,
const SpinnerStyle  SpinStyle,
const String EditFontName 
)
virtual

Creates a Spinner.

Parameters
RendNameThe name of the Spinner.
SpinStyleThe layout of buttons this Spinner will have.
EditFontNameThe name of the font to be used by the edit layer.
Returns
Returns a pointer to the created Spinner.

Definition at line 749 of file screen.cpp.

Spinner * Mezzanine::UI::Screen::CreateSpinner ( const String RendName,
const UnifiedRect RendRect,
const SpinnerStyle  SpinStyle,
FontData EditFont 
)
virtual

Creates a Spinner.

Parameters
RendNameThe name of the Spinner.
RendRectThe Rect representing the position and size of the Spinner.
SpinStyleThe layout of buttons this Spinner will have.
EditFontA pointer to the font to be used by the edit layer.
Returns
Returns a pointer to the created Spinner.

Definition at line 756 of file screen.cpp.

Spinner * Mezzanine::UI::Screen::CreateSpinner ( const String RendName,
const UnifiedRect RendRect,
const SpinnerStyle  SpinStyle,
const String EditFontName 
)
virtual

Creates a Spinner.

Parameters
RendNameThe name of the Spinner.
RendRectThe Rect representing the position and size of the Spinner.
SpinStyleThe layout of buttons this Spinner will have.
EditFontNameThe name of the font to be used by the edit layer.
Returns
Returns a pointer to the created Spinner.

Definition at line 763 of file screen.cpp.

StackButton * Mezzanine::UI::Screen::CreateStackButton ( const String RendName)
virtual

Creates a StackButton.

Parameters
RendNameThe name to be given to this StackButton.
Returns
Returns a pointer to the created StackButton.

Definition at line 644 of file screen.cpp.

StackButton * Mezzanine::UI::Screen::CreateStackButton ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a MenuButton.

Parameters
RendNameThe name to be given to this StackButton.
RendRectThe rect describing this StackButton's transform relative to it's parent.
Returns
Returns a pointer to the created StackButton.

Definition at line 651 of file screen.cpp.

TabSet * Mezzanine::UI::Screen::CreateTabSet ( const String RendName)
virtual

Creates a TabSet.

Parameters
RendNameThe name to be given to this TabSet.
Returns
Returns a pointer to the created TabSet.

Definition at line 784 of file screen.cpp.

TabSet * Mezzanine::UI::Screen::CreateTabSet ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a TabSet.

Parameters
RendNameThe name to be given to this TabSet.
RendRectThe rect describing this TabSet's transform relative to it's parent.
Returns
Returns a pointer to the created TabSet.

Definition at line 791 of file screen.cpp.

void Mezzanine::UI::Screen::CreateVertexBuffer ( const Whole InitialSize)
protectedvirtual

Creates a new Vertex Buffer for vertices generated by the UI system.

Parameters
InitialSizeThe amount of space to allocate for the initial buffer, in number of vertices.

Definition at line 302 of file screen.cpp.

VerticalContainer * Mezzanine::UI::Screen::CreateVerticalContainer ( const String RendName)
virtual

Creates a widget container aligned on the Y axis.

Parameters
RendNameThe name to be given to this renderable.
Returns
Returns a pointer to the created VerticalContainer.

Definition at line 840 of file screen.cpp.

VerticalContainer * Mezzanine::UI::Screen::CreateVerticalContainer ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a widget container aligned on the Y axis.

Parameters
RendNameThe name to be given to this renderable.
RendRectThe rect describing this widget's transform relative to it's parent.
Returns
Returns a pointer to the created VerticalContainer.

Definition at line 847 of file screen.cpp.

VerticalScrollbar * Mezzanine::UI::Screen::CreateVerticalScrollbar ( const String RendName,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a Scrollbar aligned on the Y axis.

Parameters
RendNameThe name of the VerticalScrollbar.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created VerticalScrollbar.

Definition at line 728 of file screen.cpp.

VerticalScrollbar * Mezzanine::UI::Screen::CreateVerticalScrollbar ( const String RendName,
const UnifiedRect RendRect,
const UI::ScrollbarStyle  Style 
)
virtual

Creates a Scrollbar aligned on the Y axis.

Parameters
RendNameThe name of the VerticalScrollbar.
RendRectThe Rect representing the position and size of the VerticalScrollbar.
StyleThe style of scrollbar you want to create, see Scrollbar documentation for more details.
Returns
Returns a pointer to the created VerticalScrollbar.

Definition at line 735 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CreateWidget ( const XML::Node WidgetNode)
virtual

Creates a widget from an XML::Node.

Note
This IS a polymorphic create method, and can create a widget of any type that has it's factory registered.
Exceptions
Thismethod will throw an exception if the WidgetNode is not named after a known widget.
Parameters
WidgetNodeThe XML node populated with data needed to construct a widget.
Returns
Returns a pointer to the created widget.

Definition at line 542 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CreateWidget ( const String TypeName,
const String RendName,
const NameValuePairMap Params 
)
virtual

Creates a widget based on the provided typename.

Note
This IS a polymorphic create method, and can create a widget of any type that has it's factory registered.
Parameters
TypeNameThe class name of the widget to be created.
RendNameThe unique instance name to be given to the widget.
ParamsA NameValuePairMap containing the params to be applied during construction.
Returns
Returns a pointer to the created widget.

Definition at line 553 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CreateWidget ( const String TypeName,
const String RendName,
const UnifiedRect RendRect,
const NameValuePairMap Params 
)
virtual

Creates a widget based on the provided typename.

Note
This IS a polymorphic create method, and can create a widget of any type that has it's factory registered.
Parameters
TypeNameThe class name of the widget to be created.
RendNameThe unique instance name to be given to the widget.
RendRectThe dimensions that will be assigned to the created Widget.
ParamsA NameValuePairMap containing the params to be applied during construction.
Returns
Returns a pointer to the created widget.

Definition at line 563 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CreateWidget ( const String RendName)
virtual

Creates a generic widget.

Note
This IS NOT a polymorphic create method. It will case an instance of the widget base class.
Parameters
RendNameThe name to be given to this Widget.
Returns
Returns a pointer to the created Widget.

Definition at line 616 of file screen.cpp.

Widget * Mezzanine::UI::Screen::CreateWidget ( const String RendName,
const UnifiedRect RendRect 
)
virtual

Creates a generic widget.

Note
This IS NOT a polymorphic create method. It will case an instance of the widget base class.
Parameters
RendNameThe name to be given to this Widget.
RendRectThe rect describing this Widget's transform relative to it's parent.
Returns
Returns a pointer to the created Widget.

Definition at line 623 of file screen.cpp.

void Mezzanine::UI::Screen::DestroyAllWidgetFactories ( )

Destroys all widget factories in this Screen.

Warning
The destruction of widget factories should only be done after the corresponding managers have been destroyed, otherwise this will cause an exception.

Definition at line 474 of file screen.cpp.

void Mezzanine::UI::Screen::DestroyVertexBuffer ( )
protectedvirtual

Destroys the Vertex Buffer storing all the UI vertices generated by this screen.

Definition at line 332 of file screen.cpp.

void Mezzanine::UI::Screen::DestroyWidget ( Widget ToBeDestroyed)
virtual

Destroys a widget.

Parameters
ToBeDestroyedPointer to the widget you want destroyed.

Definition at line 585 of file screen.cpp.

void Mezzanine::UI::Screen::DestroyWidgetFactory ( WidgetFactory ToBeDestroyed)

Removes and destroys a widget factory in this Screen.

Parameters
ToBeDestroyedA pointer to the widget factory that is to be removed and destroyed.

Definition at line 460 of file screen.cpp.

void Mezzanine::UI::Screen::DestroyWidgetFactory ( const String ImplName)

Removes and destroys a widget factory in this Screen.

Parameters
ImplNameThe name of the widget implementation created by the factory to be removed and destroyed.

Definition at line 465 of file screen.cpp.

Widget * Mezzanine::UI::Screen::FindHoveredWidget ( const Vector2 MousePos)
virtual

Gets the quad the mouse is over if any.

Parameters
MousePosThe current mouse position.
Returns
Returns the Widget the mouse is over, or NULL if there are none.

Definition at line 422 of file screen.cpp.

TextureAtlas * Mezzanine::UI::Screen::GetAtlas ( const String Atlas) const

Gets an atlas that has been loaded.

Parameters
AtlasThe name of the Atlas to retrieve, usually stored as a filename.
Returns
Returns a pointer to the requested Texture Atlas.

Definition at line 895 of file screen.cpp.

String Mezzanine::UI::Screen::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::QuadRenderable.

Definition at line 998 of file screen.cpp.

FontData * Mezzanine::UI::Screen::GetFont ( const String FontName,
const String Atlas 
) const

Gets the specified FontData from an Atlas.

Parameters
FontNameThe name of the Font to retrieve.
AtlasThe name of the atlas to check the specified FontData for.
Returns
Returns a pointer to the requested FontData.

Definition at line 889 of file screen.cpp.

UIManager * Mezzanine::UI::Screen::GetManager ( ) const
virtual

Gets the UIManager this screen belongs to.

Returns
Returns a pointer to the UI manager that owns this screen.

Definition at line 401 of file screen.cpp.

MarkupParser * Mezzanine::UI::Screen::GetMarkupParser ( const String ParserName) const

Gets a MarkupParser by it's registered name.

Parameters
ParserNameThe name of the MarkupParser to retrieve.
Returns
Returns a pointer to the requested MarkupParser, or NULL if none are registered under the specified name.

Definition at line 910 of file screen.cpp.

const Vector2 & Mezzanine::UI::Screen::GetMouseHitPosition ( ) const
virtual

Gets the mouse position from the last call to "FindHoveredQuad(const Vector2&).

Note
Screens have a 1:1 ratio to viewports, not windows. The returned coordinates is in viewport space.
Warning
This will not perform any additional checks. Only returns the result of the last check. Verify the screen this is being called on is the one with the mouse over if prior to calling or you may get outdated information.
Returns
Returns a valid point on this screen if the last check was valid, or (-1,-1) if the check failed.

Definition at line 434 of file screen.cpp.

MouseHoverStrategy * Mezzanine::UI::Screen::GetMouseHoverStrategy ( ) const
virtual

Gets the MouseHoverStrategy currently being used by this screen.

Returns
Returns a pointer to the currently set MouseHoverStrategy.

Definition at line 417 of file screen.cpp.

Whole Mezzanine::UI::Screen::GetNumWidgets ( )
virtual

Gets the number of widgets being used in this screen.

Returns
Returns the number of widgets this screen is storing.

Definition at line 580 of file screen.cpp.

String Mezzanine::UI::Screen::GetPrimaryAtlas ( )
virtual

Gets the currently set primary atlas.

Returns
Returns a string containing the name of the primary atlas that is set.

Definition at line 880 of file screen.cpp.

Renderable::RenderableType Mezzanine::UI::Screen::GetRenderableType ( ) const
virtual

Gets the type of renderable this is.

Returns
Returns a RenderableType enum value coressponding the type of renderable this is.

Implements Mezzanine::UI::Renderable.

Definition at line 379 of file screen.cpp.

Graphics::SceneManager * Mezzanine::UI::Screen::GetSceneManager ( ) const
protectedvirtual

Gets a pointer to the SceneManager connected to this screens viewport.

Returns
Returns a pointer to the SceneManager that will be rendering this screen.
Todo:
This function exists (as opposed to storing a pointer that doesn't change) so that if changes in the viewport configuration occur this will pick up on that. However the render queue listener that is added in this class' constructor never gets re-assigned. This needs to be fixed. Until then if a change does occur the UI will be rendered at a different time then it needs to be, potentially overwritten by the scene render.

Definition at line 257 of file screen.cpp.

String Mezzanine::UI::Screen::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 1001 of file screen.cpp.

Sprite * Mezzanine::UI::Screen::GetSprite ( const String SpriteName,
const String Atlas 
) const

Gets a sprite from an Atlas.

Parameters
SpriteNameThe name of the sprite to retrieve.
AtlasThe name of the Atlas to get the sprite from.
Returns
Returns a pointer to the requested Sprite.

Definition at line 886 of file screen.cpp.

Real Mezzanine::UI::Screen::GetTexelOffsetX ( ) const

Gets the X axis Texel Offset for the current rendersystem.

Returns
Retruns a real containing the texel offset to be applied to renderables on this screen.

Definition at line 898 of file screen.cpp.

Real Mezzanine::UI::Screen::GetTexelOffsetY ( ) const

Gets the Y axis Texel Offset for the current rendersystem.

Returns
Retruns a real containing the texel offset to be applied to renderables on this screen.

Definition at line 901 of file screen.cpp.

Vector2 Mezzanine::UI::Screen::GetTextureSize ( const String Atlas) const

Gets the texture size of the specified Atlas.

Parameters
AtlasThe name of the atlas to get the texture size of.
Returns
Returns a Vector2 containing the size of the requested Atlas.

Definition at line 892 of file screen.cpp.

Graphics::Viewport * Mezzanine::UI::Screen::GetViewport ( ) const
virtual

Gets the Viewport this screen is currently rendering to.

Returns
Returns a pointer to the Viewport this screen is applied to.

Definition at line 398 of file screen.cpp.

const Vector2 & Mezzanine::UI::Screen::GetViewportDimensions ( ) const
virtual

Gets the current viewport dimensions.

Returns
Returns a Vector2 representing the current viewport dimensions.

Definition at line 382 of file screen.cpp.

Boole Mezzanine::UI::Screen::GetVisible ( ) const
virtual

Gets the visibility setting of this renderable.

Returns
Returns a bool that is the current visibility setting of this renderable.

Implements Mezzanine::UI::Renderable.

Definition at line 367 of file screen.cpp.

Vector2 Mezzanine::UI::Screen::GetWhitePixel ( const String Atlas) const

Gets the position of the white pixel from an Atlas.

Parameters
AtlasThe name of the Atlas to get the white pixel from.
Returns
Returns a Vector2 with the location of white pixel on the Atlas.

Definition at line 883 of file screen.cpp.

Widget * Mezzanine::UI::Screen::GetWidget ( const String Name)
virtual

Gets a widget in this screen by name.

Parameters
NameThe name of the widget to get.
Returns
Returns a pointer to the widget of the specified name.

Definition at line 573 of file screen.cpp.

WidgetFactory * Mezzanine::UI::Screen::GetWidgetFactoryExcept ( const String WidgetTypeName)
protectedvirtual

Gets a registered WidgetFactory that creates the specified type of widget.

Exceptions
Ifa widget factor of the specified widget type isn't registered then a II_IDENTITY_NOT_FOUND_EXCEPTION will be thrown.

Parameters
WidgetTypeNameThe name of the widget type to retrieve the factory for.
Returns
Returns a pointer to the specified factory. This pointer will always be valid if an exception isn't thrown.

Definition at line 273 of file screen.cpp.

void Mezzanine::UI::Screen::Hide ( )
virtual

Forces this renderable to hide.

Implements Mezzanine::UI::Renderable.

Definition at line 376 of file screen.cpp.

bool Mezzanine::UI::Screen::IsMarkupParserRegistered ( const String ParserName) const

Checks to see if a MarkupParser has already been registsered under a specific name.

Parameters
ParserNameThe name of the MarkupParser to check for.
Returns
Returns true if a MarkupParser is registered under the specified name.

Definition at line 907 of file screen.cpp.

Boole Mezzanine::UI::Screen::IsVisible ( ) const
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().

Returns
Returns a bool representing the visibility of this renderable.

Implements Mezzanine::UI::Renderable.

Definition at line 370 of file screen.cpp.

void Mezzanine::UI::Screen::PrepareRenderSystem ( )
protectedvirtual

Sets up all the necessary projection and world matrices for UI rendering.

Definition at line 292 of file screen.cpp.

void Mezzanine::UI::Screen::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::QuadRenderable.

Definition at line 937 of file screen.cpp.

void Mezzanine::UI::Screen::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::QuadRenderable.

Definition at line 916 of file screen.cpp.

void Mezzanine::UI::Screen::RemoveWidgetFactory ( WidgetFactory ToBeRemoved)

Removes a widget factory from this Screen.

Parameters
ToBeRemovedA pointer to the widget factory that is to be removed.

Definition at line 447 of file screen.cpp.

void Mezzanine::UI::Screen::RemoveWidgetFactory ( const String ImplName)

Removes a widget factory from this Screen.

Parameters
ImplNameThe name of the widget implementation created by the factory to be removed.

Definition at line 452 of file screen.cpp.

void Mezzanine::UI::Screen::ResizeVertexBuffer ( const Whole RequestedSize)
protectedvirtual

Resizes the Vertex Buffer.

Note
The Vertex Buffer will not shrink, only grow. Passing in a smaller size will do nothing.
Parameters
RequestedSizeThe new size for the existing buffer.

Definition at line 339 of file screen.cpp.

void Mezzanine::UI::Screen::SetMouseHoverStrategy ( MouseHoverStrategy Strategy)
virtual

Sets the strategy to use when detect which object the mouse is hovered over.

Note
This method will replace whatever method is currently set if one is set.
Parameters
StrategyA pointer to the strategy to use.

Definition at line 407 of file screen.cpp.

void Mezzanine::UI::Screen::SetPrimaryAtlas ( const String Atlas)
virtual

Sets the Atlas to be assumed when one isn't provided for atlas related tasks.

Parameters
AtlasThe name of the atlas to be used.

Definition at line 877 of file screen.cpp.

void Mezzanine::UI::Screen::SetVisible ( Boole  CanSee)
virtual

Sets the visibility of this renderable.

Parameters
CanSeeBoole determining whether or not this renderable should be visible.

Implements Mezzanine::UI::Renderable.

Definition at line 364 of file screen.cpp.

void Mezzanine::UI::Screen::Show ( )
virtual

Forces this renderable to be shown.

Implements Mezzanine::UI::Renderable.

Definition at line 373 of file screen.cpp.

Member Data Documentation

Graphics::Viewport* Mezzanine::UI::Screen::GameViewport
protected

A pointer to the viewport this screen is bound to.

Definition at line 202 of file screen.h.

Vector2 Mezzanine::UI::Screen::InverseSize
protected

The inverse size (1/size) of the viewport this screen is bound to in pixels.

Definition at line 192 of file screen.h.

Vector2 Mezzanine::UI::Screen::MouseHitPosition
protected

The pixel position on this screen where the mouse clicked on a Widget.

Definition at line 189 of file screen.h.

MouseHoverStrategy* Mezzanine::UI::Screen::MouseStrat
protected

A pointer to the strategy to be used when detecting the hovered widget.

Definition at line 205 of file screen.h.

Mezzanine::OrientationMode Mezzanine::UI::Screen::Orientation
protected

The current orientation mode of this screen.

Definition at line 209 of file screen.h.

String Mezzanine::UI::Screen::PrimaryAtlas
protected

The name of the this screens primary atlas for texture lookups.

Definition at line 182 of file screen.h.

Vector3 Mezzanine::UI::Screen::Scale
protected

The scaling to be applied to all vertices that are generated by this screen.

Note
This member is set once and barely used, could be replaced with individual constructions where used.

Definition at line 186 of file screen.h.

ScreenInternalData* Mezzanine::UI::Screen::SID
protected

A pointer to the class storing all sensative internal data THAT IS NOT FOR YOUR EYES!

Definition at line 196 of file screen.h.

TextureVertexContainer Mezzanine::UI::Screen::TextureByVertex
protected

A container storing a mapping of the textures needed to render each section of vertices.

Definition at line 166 of file screen.h.

UIManager* Mezzanine::UI::Screen::UIMan
protected

A pointer to the UIManager that owns this screen.

Definition at line 199 of file screen.h.

ScreenRenderData Mezzanine::UI::Screen::VertexCache
protected

A container storing the actual vertices to be rendered.

Definition at line 169 of file screen.h.

Matrix4x4 Mezzanine::UI::Screen::VertexTransform
protected

The transformation matrix used to update vertex transforms if needed.

Definition at line 179 of file screen.h.

WidgetFactoryContainer Mezzanine::UI::Screen::WidgetFactories
protected

A container storing all the factories for the widgets supported by this screen.

Definition at line 172 of file screen.h.

WidgetContainer Mezzanine::UI::Screen::Widgets
protected

A container storing all the created Widgets owned by this screen.

Definition at line 175 of file screen.h.


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