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

This is a helper class designed to describe the behaviors of a quad when it needs to be resized. More...

#include <sizinginfo.h>

+ Collaboration diagram for Mezzanine::UI::SizingInfo:

Public Member Functions

 SizingInfo ()
 Class constructor.
 
 SizingInfo (const UnifiedVec2 &Size)
 Size constructor. More...
 
 SizingInfo (const UI::SizingRules HRules, const UI::SizingRules VRules)
 Rules constructor. More...
 
 SizingInfo (const UI::SizingRules HRules, const UI::SizingRules VRules, const UnifiedVec2 &Size)
 Descriptive constructor. More...
 
 SizingInfo (const SizingInfo &Other)
 Copy constructor. More...
 
 ~SizingInfo ()
 Class destructor.
 
bool CanExpand () const
 Cheacks to see if this will expand horizontally or vertically. More...
 
bool CanExpandHorizontally () const
 Checks to see if this will expand horizontally. More...
 
bool CanExpandVertically () const
 Checks to see if this will expand vertically. More...
 
bool operator!= (const SizingInfo &Other) const
 Inequality comparison operator. More...
 
bool operator== (const SizingInfo &Other) const
 Equality comparison operator. More...
 
void ProtoDeSerialize (const XML::Node &SelfRoot)
 Take the data stored in an XML Node and overwrite this object with it. More...
 
void ProtoSerialize (XML::Node &ParentNode) const
 Convert this class to an XML::Node ready for serialization. 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...
 

Public Attributes

UI::SizingRules HorizontalRules
 Rules for resizing on the X axis.
 
UnifiedVec2 MaxSize
 The maximum permitted size.
 
UnifiedVec2 MinSize
 The minumum permitted size.
 
UI::AspectRatioLock RatioLock
 Rule for determining aspect ratio lock.
 
UnifiedVec2 USize
 Unified dimensions to be used if the resize rules permits it.
 
UI::SizingRules VerticalRules
 Rules for resizing on the Y axis.
 

Detailed Description

This is a helper class designed to describe the behaviors of a quad when it needs to be resized.

This struct contains all the information necessary to define complete behavior of sizing child quads within a quad.

Definition at line 56 of file sizinginfo.h.

Constructor & Destructor Documentation

Mezzanine::UI::SizingInfo::SizingInfo ( const UnifiedVec2 Size)
inline

Size constructor.

Parameters
SizeA UnifiedVector2 to be used if the rules provided permit it on sizing.

Definition at line 83 of file sizinginfo.h.

Mezzanine::UI::SizingInfo::SizingInfo ( const UI::SizingRules  HRules,
const UI::SizingRules  VRules 
)
inline

Rules constructor.

Parameters
HRulesThe rules to be used for resizing on the X axis.
VRulesThe rules to be used for resizing on the Y axis.

Definition at line 88 of file sizinginfo.h.

Mezzanine::UI::SizingInfo::SizingInfo ( const UI::SizingRules  HRules,
const UI::SizingRules  VRules,
const UnifiedVec2 Size 
)
inline

Descriptive constructor.

Parameters
HRulesThe rules to be used for resizing on the X axis.
VRulesThe rules to be used for resizing on the Y axis.
SizeA UnifiedVector2 to be used if the rules provided permit it on sizing.

Definition at line 94 of file sizinginfo.h.

Mezzanine::UI::SizingInfo::SizingInfo ( const SizingInfo Other)
inline

Copy constructor.

Parameters
OtherThe other SizingInfo to copy from.

Definition at line 98 of file sizinginfo.h.

Member Function Documentation

bool Mezzanine::UI::SizingInfo::CanExpand ( ) const
inline

Cheacks to see if this will expand horizontally or vertically.

Returns
Returns true if this will expand on either axis.

Definition at line 117 of file sizinginfo.h.

bool Mezzanine::UI::SizingInfo::CanExpandHorizontally ( ) const
inline

Checks to see if this will expand horizontally.

Returns
Returns true if this will expand on the X axis.

Definition at line 109 of file sizinginfo.h.

bool Mezzanine::UI::SizingInfo::CanExpandVertically ( ) const
inline

Checks to see if this will expand vertically.

Returns
Returns true if this will expand on the Y axis.

Definition at line 113 of file sizinginfo.h.

static String Mezzanine::UI::SizingInfo::GetSerializableName ( )
inlinestatic

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 215 of file sizinginfo.h.

bool Mezzanine::UI::SizingInfo::operator!= ( const SizingInfo Other) const
inline

Inequality comparison operator.

Parameters
OtherThe other SizingInfo to compare to.
Returns
Returns true if these SizingInfo's are not equal, false otherwise.

Definition at line 138 of file sizinginfo.h.

bool Mezzanine::UI::SizingInfo::operator== ( const SizingInfo Other) const
inline

Equality comparison operator.

Parameters
OtherThe other SizingInfo to compare to.
Returns
Returns true if these SizingInfo's are equal, false otherwise.

Definition at line 126 of file sizinginfo.h.

void Mezzanine::UI::SizingInfo::ProtoDeSerialize ( const XML::Node SelfRoot)
inline

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

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

Definition at line 178 of file sizinginfo.h.

void Mezzanine::UI::SizingInfo::ProtoSerialize ( XML::Node ParentNode) const
inline

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

Parameters
ParentNodeThe point in the XML hierarchy that all this renderable should be appended to.

Definition at line 153 of file sizinginfo.h.


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