OGRE  13.4 Object-Oriented Graphics Rendering Engine
Ogre::OverlayElement Class Referenceabstract

Abstract definition of a 2D element to be displayed in an Overlay. More...

#include <OgreOverlayElement.h>

Inheritance diagram for Ogre::OverlayElement:

## Public Member Functions

OverlayElement (const String &name)
Constructor: do not call direct, use OverlayManager::createElement. More...

virtual ~OverlayElement ()

virtual void _getClippingRegion (RealRect &clippingRegion)
Gets the clipping region of the element. More...

virtual Real _getDerivedLeft (void)
Gets the 'left' position as derived from own left and that of parents. More...

virtual Real _getDerivedTop (void)
Gets the 'top' position as derived from own left and that of parents. More...

Real _getHeight (void) const
Gets the height of this element in relation to the screen (where 1.0 = screen height)
More...

Real _getLeft (void) const
Gets the left of this element in relation to the screen (where 0 = far left, 1.0 = far right)
More...

virtual Real _getRelativeHeight (void)
Gets the 'height' as derived from own height and metrics mode. More...

virtual Real _getRelativeWidth (void)
Gets the 'width' as derived from own width and metrics mode. More...

Real _getTop (void) const
Gets the top of this element in relation to the screen (where 0 = far top, 1.0 = far bottom)
More...

Real _getWidth (void) const
Gets the width of this element in relation to the screen (where 1.0 = screen width)
More...

virtual void _notifyParent (OverlayContainer *parent, Overlay *overlay)
Internal method for notifying the GUI element of it's parent and ultimate overlay. More...

virtual void _notifyViewport ()
Internal method to notify the element when the viewport of parent overlay has changed. More...

virtual void _notifyWorldTransforms (const Matrix4 &xform)
Internal method to notify the element when it's world transform of parent overlay has changed. More...

virtual ushort _notifyZOrder (ushort newZOrder)
Internal method to notify the element when Z-order of parent overlay has changed. More...

virtual void _positionsOutOfDate (void)
Tell the object to recalculate. More...

virtual void _releaseManualHardwareResources ()
Notifies that hardware resources were lost. More...

virtual void _restoreManualHardwareResources ()
Notifies that hardware resources should be restored. More...

void _setDimensions (Real width, Real height)
Sets the width and height of this element in relation to the screen (where 1.0 = screen width/height) More...

void _setHeight (Real height)
Sets the height of this element in relation to the screen (where 1.0 = screen height) More...

void _setLeft (Real left)
Sets the left of this element in relation to the screen (where 1.0 = screen width) More...

void _setParent (OverlayContainer *parent)

void _setPosition (Real left, Real top)
Sets the left and top of this element in relation to the screen (where 1.0 = screen width/height) More...

void _setTop (Real top)
Sets the top of this element in relation to the screen (where 1.0 = screen height) More...

void _setWidth (Real width)
Sets the width of this element in relation to the screen (where 1.0 = screen width) More...

virtual void _update (void)
Internal method to update the element based on transforms applied. More...

virtual void _updateFromParent (void)
Updates this elements transform based on it's parent. More...

virtual void _updateRenderQueue (RenderQueue *queue)
Internal method to put the contents onto the render queue. More...

virtual OverlayElementclone (const String &instanceName)

virtual bool contains (Real x, Real y) const
Returns true if xy is within the constraints of the component. More...

virtual void copyFromTemplate (OverlayElement *templateOverlay)

virtual OverlayElementfindElementAt (Real x, Real y)
Returns true if xy is within the constraints of the component. More...

const DisplayStringgetCaption (void) const
Gets the caption for this element. More...

virtual const ColourValuegetColour (void) const
Gets the colour for this element. More...

Real getHeight (void) const
Gets the height of this element in relation to the current GuiMetricsMode. More...

GuiHorizontalAlignment getHorizontalAlignment (void) const
Gets the horizontal alignment for this element. More...

Real getLeft (void) const
Gets the left of this element in relation to the current GuiMetricsMode. More...

const LightListgetLights (void) const
Gets a list of lights, ordered relative to how close they are to this renderable. More...

const MaterialPtrgetMaterial (void) const override
Retrieves a weak reference to the material this renderable object uses. More...

virtual const StringgetMaterialName (void) const
Gets the name of the material this element uses. More...

GuiMetricsMode getMetricsMode (void) const
Retrieves the current settings of how the element metrics are interpreted. More...

const StringgetName (void) const
Gets the name of this overlay. More...

OverlayContainergetParent ()
Returns the parent container. More...

Real getSquaredViewDepth (const Camera *cam) const
Overridden from Renderable. More...

Real getTop (void) const
Gets the top of this element in relation to the current GuiMetricsMode (where 0 = top). More...

virtual const StringgetTypeName (void) const =0
Gets the type name of the element. More...

GuiVerticalAlignment getVerticalAlignment (void) const
Gets the vertical alignment for this element. More...

Real getWidth (void) const
Gets the width of this element in relation to the current GuiMetricsMode. More...

void getWorldTransforms (Matrix4 *xform) const override
Gets the world transform matrix / matrices for this renderable object. More...

ushort getZOrder () const
Returns the zOrder of the element. More...

void hide (void)
Hides this element if it was visible. More...

virtual void initialise (void)=0
Initialise gui element. More...

bool isCloneable () const

virtual bool isContainer () const
returns false as this class is not a container type More...

bool isEnabled () const

virtual bool isKeyEnabled () const

bool isVisible (void) const
Returns whether or not the element is visible. More...

virtual void setCaption (const DisplayString &text)
Sets the caption on elements that support it. More...

void setCloneable (bool c)

virtual void setColour (const ColourValue &col)
Sets the colour on elements that support it. More...

void setDimensions (Real width, Real height)
Sets the dimensions of this element in relation to the current GuiMetricsMode. More...

void setEnabled (bool b)

void setHeight (Real height)
Sets the height of this element in relation to the current GuiMetricsMode. More...

virtual void setHorizontalAlignment (GuiHorizontalAlignment gha)
Sets the horizontal origin for this element. More...

void setLeft (Real left)
Sets the left of this element in relation to the current GuiMetricsMode. More...

void setMaterial (const MaterialPtr &mat)
Sets the the material this element will use. More...

void setMaterialName (const String &matName, const String &group=DEFAULT_RESOURCE_GROUP)
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...

virtual void setMetricsMode (GuiMetricsMode gmm)
Tells this element how to interpret the position and dimension values it is given. More...

void setPosition (Real left, Real top)
Sets the position of the top-left corner in relation to the current GuiMetricsMode (where 0 = top). More...

void setTop (Real Top)
Sets the top of this element in relation to the current GuiMetricsMode (where 0 = top). More...

virtual void setVerticalAlignment (GuiVerticalAlignment gva)
Sets the vertical origin for this element. More...

void setVisible (bool visible)
Shows or hides this element. More...

void setWidth (Real width)
Sets the width of this element in relation to the current GuiMetricsMode. More...

void show (void)
Shows this element if it was hidden. More...

void visitRenderables (Renderable::Visitor *visitor, bool debugRenderables=false)
Method to allow a caller to abstractly iterate over the Renderable instances that this MovableObject will add to the render queue when asked, if any. More...

Public Member Functions inherited from Ogre::StringInterface
StringInterface ()

virtual ~StringInterface ()
Virtual destructor, see Effective C++. More...

void copyParametersTo (StringInterface *dest) const
Method for copying this object's parameters to another object. More...

ParamDictionarygetParamDictionary (void)
Retrieves the parameter dictionary for this class. More...

const ParamDictionarygetParamDictionary (void) const

String getParameter (const String &name) const
Generic parameter retrieval method. More...

const ParameterListgetParameters (void) const
Retrieves a list of parameters valid for this object. More...

bool setParameter (const String &name, const String &value)
Generic parameter setting method. More...

void setParameterList (const NameValuePairList &paramList)
Generic multiple parameter setting method. More...

Public Member Functions inherited from Ogre::Renderable
Renderable ()

virtual ~Renderable ()
Virtual destructor needed as class has virtual methods. More...

virtual void _updateCustomGpuParameter (const GpuProgramParameters::AutoConstantEntry &constantEntry, GpuProgramParameters *params) const
Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows. More...

virtual bool getCastsShadows (void) const
Method which reports whether this renderable would normally cast a shadow. More...

const Vector4getCustomParameter (size_t index) const
Gets the custom value associated with this Renderable at the given index. More...

virtual unsigned short getNumWorldTransforms (void) const
Returns the number of world transform matrices this renderable requires. More...

bool getPolygonModeOverrideable (void) const
Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting. More...

virtual void getRenderOperation (RenderOperation &op)=0
Gets the render operation required to send this object to the frame buffer. More...

virtual TechniquegetTechnique (void) const
Retrieves a pointer to the Material Technique this renderable object uses. More...

bool getUseIdentityProjection (void) const
Returns whether or not to use an 'identity' projection. More...

bool getUseIdentityView (void) const
Returns whether or not to use an 'identity' view. More...

const AnygetUserAny (void) const

UserObjectBindingsgetUserObjectBindings ()
Class that provides convenient interface to establish a linkage between custom user application objects and Ogre core classes. More...

const UserObjectBindingsgetUserObjectBindings () const
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...

bool hasCustomParameter (size_t index) const
Checks whether a custom value is associated with this Renderable at the given index. More...

virtual void postRender (SceneManager *sm, RenderSystem *rsys)
Called immediately after the Renderable has been rendered. More...

virtual bool preRender (SceneManager *sm, RenderSystem *rsys)
Called just prior to the Renderable being rendered. More...

void removeCustomParameter (size_t index)
Removes a custom value which is associated with this Renderable at the given index. More...

void setCustomParameter (size_t index, const Vector4 &value)
Sets a custom parameter for this Renderable, which may be used to drive calculations for this specific Renderable, like GPU program parameters. More...

void setPolygonModeOverrideable (bool override)
Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting. More...

void setUseIdentityProjection (bool useIdentityProjection)
Sets whether or not to use an 'identity' projection. More...

void setUseIdentityView (bool useIdentityView)
Sets whether or not to use an 'identity' view. More...

void setUserAny (const Any &anything)

## Static Public Attributes

static const StringDEFAULT_RESOURCE_GROUP

## Additional Inherited Members

Public Types inherited from Ogre::Renderable
enum  { DEFAULT_PRIORITY = 100 }

Static Public Member Functions inherited from Ogre::StringInterface
static void cleanupDictionary ()
Cleans up the static 'msDictionary' required to reset Ogre, otherwise the containers are left with invalid pointers, which will lead to a crash as soon as one of the ResourceManager implementers (e.g. More...

## Detailed Description

Abstract definition of a 2D element to be displayed in an Overlay.

This class abstracts all the details of a 2D element which will appear in an overlay. In fact, not all OverlayElement instances can be directly added to an Overlay, only those which are OverlayContainer instances (a subclass of this class). OverlayContainer objects can contain any OverlayElement however. This is just to enforce some level of grouping on widgets.

OverlayElements should be managed using OverlayManager. This class is responsible for instantiating / deleting elements, and also for accepting new types of element from plugins etc.
Note that positions / dimensions of 2D screen elements are expressed as parametric values (0.0 - 1.0) because this makes them resolution-independent. However, most screen resolutions have an aspect ratio of 1.3333:1 (width : height) so note that in physical pixels 0.5 is wider than it is tall, so a 0.5x0.5 panel will not be square on the screen (but it will take up exactly half the screen in both dimensions).
Because this class is designed to be extensible, it subclasses from StringInterface so its parameters can be set in a generic way.

## ◆ OverlayElement()

 Ogre::OverlayElement::OverlayElement ( const String & name )

Constructor: do not call direct, use OverlayManager::createElement.

## ◆ ~OverlayElement()

 virtual Ogre::OverlayElement::~OverlayElement ( )
virtual

## ◆ initialise()

 virtual void Ogre::OverlayElement::initialise ( void )
pure virtual

Initialise gui element.

## ◆ _releaseManualHardwareResources()

 virtual void Ogre::OverlayElement::_releaseManualHardwareResources ( )
inlinevirtual

Notifies that hardware resources were lost.

Reimplemented in Ogre::TextAreaOverlayElement, Ogre::PanelOverlayElement, and Ogre::BorderPanelOverlayElement.

## ◆ _restoreManualHardwareResources()

 virtual void Ogre::OverlayElement::_restoreManualHardwareResources ( )
inlinevirtual

Notifies that hardware resources should be restored.

Reimplemented in Ogre::TextAreaOverlayElement, Ogre::PanelOverlayElement, and Ogre::BorderPanelOverlayElement.

## ◆ getName()

 const String& Ogre::OverlayElement::getName ( void ) const
inline

Gets the name of this overlay.

Referenced by Ogre::OverlayContainer::_removeChild().

## ◆ show()

 void Ogre::OverlayElement::show ( void )
inline

Shows this element if it was hidden.

## ◆ hide()

 void Ogre::OverlayElement::hide ( void )
inline

Hides this element if it was visible.

## ◆ setVisible()

 void Ogre::OverlayElement::setVisible ( bool visible )
inline

Shows or hides this element.

## ◆ isVisible()

 bool Ogre::OverlayElement::isVisible ( void ) const
inline

Returns whether or not the element is visible.

## ◆ isEnabled()

 bool Ogre::OverlayElement::isEnabled ( ) const
inline

## ◆ setEnabled()

 void Ogre::OverlayElement::setEnabled ( bool b )
inline

## ◆ setDimensions()

 void Ogre::OverlayElement::setDimensions ( Real width, Real height )

Sets the dimensions of this element in relation to the current GuiMetricsMode.

## ◆ setPosition()

 void Ogre::OverlayElement::setPosition ( Real left, Real top )

Sets the position of the top-left corner in relation to the current GuiMetricsMode (where 0 = top).

## ◆ setWidth()

 void Ogre::OverlayElement::setWidth ( Real width )

Sets the width of this element in relation to the current GuiMetricsMode.

## ◆ getWidth()

 Real Ogre::OverlayElement::getWidth ( void ) const

Gets the width of this element in relation to the current GuiMetricsMode.

## ◆ setHeight()

 void Ogre::OverlayElement::setHeight ( Real height )

Sets the height of this element in relation to the current GuiMetricsMode.

## ◆ getHeight()

 Real Ogre::OverlayElement::getHeight ( void ) const

Gets the height of this element in relation to the current GuiMetricsMode.

## ◆ setLeft()

 void Ogre::OverlayElement::setLeft ( Real left )

Sets the left of this element in relation to the current GuiMetricsMode.

## ◆ getLeft()

 Real Ogre::OverlayElement::getLeft ( void ) const

Gets the left of this element in relation to the current GuiMetricsMode.

## ◆ setTop()

 void Ogre::OverlayElement::setTop ( Real Top )

Sets the top of this element in relation to the current GuiMetricsMode (where 0 = top).

## ◆ getTop()

 Real Ogre::OverlayElement::getTop ( void ) const

Gets the top of this element in relation to the current GuiMetricsMode (where 0 = top).

## ◆ _getLeft()

 Real Ogre::OverlayElement::_getLeft ( void ) const
inline

Gets the left of this element in relation to the screen (where 0 = far left, 1.0 = far right)

## ◆ _getTop()

 Real Ogre::OverlayElement::_getTop ( void ) const
inline

Gets the top of this element in relation to the screen (where 0 = far top, 1.0 = far bottom)

## ◆ _getWidth()

 Real Ogre::OverlayElement::_getWidth ( void ) const
inline

Gets the width of this element in relation to the screen (where 1.0 = screen width)

## ◆ _getHeight()

 Real Ogre::OverlayElement::_getHeight ( void ) const
inline

Gets the height of this element in relation to the screen (where 1.0 = screen height)

## ◆ _setLeft()

 void Ogre::OverlayElement::_setLeft ( Real left )

Sets the left of this element in relation to the screen (where 1.0 = screen width)

## ◆ _setTop()

 void Ogre::OverlayElement::_setTop ( Real top )

Sets the top of this element in relation to the screen (where 1.0 = screen height)

## ◆ _setWidth()

 void Ogre::OverlayElement::_setWidth ( Real width )

Sets the width of this element in relation to the screen (where 1.0 = screen width)

## ◆ _setHeight()

 void Ogre::OverlayElement::_setHeight ( Real height )

Sets the height of this element in relation to the screen (where 1.0 = screen height)

## ◆ _setPosition()

 void Ogre::OverlayElement::_setPosition ( Real left, Real top )

Sets the left and top of this element in relation to the screen (where 1.0 = screen width/height)

## ◆ _setDimensions()

 void Ogre::OverlayElement::_setDimensions ( Real width, Real height )

Sets the width and height of this element in relation to the screen (where 1.0 = screen width/height)

## ◆ getMaterialName()

 virtual const String& Ogre::OverlayElement::getMaterialName ( void ) const
virtual

Gets the name of the material this element uses.

## ◆ setMaterial()

 void Ogre::OverlayElement::setMaterial ( const MaterialPtr & mat )

Sets the the material this element will use.

Different elements will use different materials. One constant about them all though is that a Material used for a OverlayElement must have it's depth checking set to 'off', which means it always gets rendered on top. OGRE will set this flag for you if necessary. What it does mean though is that you should not use the same Material for rendering OverlayElements as standard scene objects. It's fine to use the same textures, just not the same Material.

## ◆ setMaterialName()

 void Ogre::OverlayElement::setMaterialName ( const String & matName, const String & group = DEFAULT_RESOURCE_GROUP )

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ getMaterial()

 const MaterialPtr& Ogre::OverlayElement::getMaterial ( void ) const
overridevirtual

Retrieves a weak reference to the material this renderable object uses.

Note that the Renderable also has the option to override the getTechnique method to specify a particular Technique to use instead of the best one available.

Implements Ogre::Renderable.

Reimplemented in Ogre::TextAreaOverlayElement.

## ◆ getWorldTransforms()

 void Ogre::OverlayElement::getWorldTransforms ( Matrix4 * xform ) const
overridevirtual

Gets the world transform matrix / matrices for this renderable object.

If the object has any derived transforms, these are expected to be up to date as long as all the SceneNode structures have been updated before this is called.

This method will populate transform with 1 matrix if it does not use vertex blending. If it does use vertex blending it will fill the passed in pointer with an array of matrices, the length being the value returned from getNumWorldTransforms.
Note
Internal Ogre never supports non-affine matrix for world transform matrix/matrices, the behavior is undefined if returns non-affine matrix here.

Implements Ogre::Renderable.

Referenced by Ogre::BorderRenderable::getWorldTransforms().

## ◆ _positionsOutOfDate()

 virtual void Ogre::OverlayElement::_positionsOutOfDate ( void )
virtual

Tell the object to recalculate.

Reimplemented in Ogre::OverlayContainer.

## ◆ _update()

 virtual void Ogre::OverlayElement::_update ( void )
virtual

Internal method to update the element based on transforms applied.

Reimplemented in Ogre::TextAreaOverlayElement, Ogre::OverlayContainer, and Ogre::BorderPanelOverlayElement.

## ◆ _updateFromParent()

 virtual void Ogre::OverlayElement::_updateFromParent ( void )
virtual

Updates this elements transform based on it's parent.

## ◆ _notifyParent()

 virtual void Ogre::OverlayElement::_notifyParent ( OverlayContainer * parent, Overlay * overlay )
virtual

Internal method for notifying the GUI element of it's parent and ultimate overlay.

Reimplemented in Ogre::OverlayContainer.

## ◆ _getDerivedLeft()

 virtual Real Ogre::OverlayElement::_getDerivedLeft ( void )
virtual

Gets the 'left' position as derived from own left and that of parents.

## ◆ _getDerivedTop()

 virtual Real Ogre::OverlayElement::_getDerivedTop ( void )
virtual

Gets the 'top' position as derived from own left and that of parents.

## ◆ _getRelativeWidth()

 virtual Real Ogre::OverlayElement::_getRelativeWidth ( void )
virtual

Gets the 'width' as derived from own width and metrics mode.

## ◆ _getRelativeHeight()

 virtual Real Ogre::OverlayElement::_getRelativeHeight ( void )
virtual

Gets the 'height' as derived from own height and metrics mode.

## ◆ _getClippingRegion()

 virtual void Ogre::OverlayElement::_getClippingRegion ( RealRect & clippingRegion )
virtual

Gets the clipping region of the element.

## ◆ _notifyZOrder()

 virtual ushort Ogre::OverlayElement::_notifyZOrder ( ushort newZOrder )
virtual

Internal method to notify the element when Z-order of parent overlay has changed.

Overlays have explicit Z-orders. OverlayElements do not, they inherit the Z-order of the overlay, and the Z-order is incremented for every container nested within this to ensure that containers are displayed behind contained items. This method is used internally to notify the element of a change in final Z-order which is used to render the element.

Returns
Return the next Z-ordering number available. For single elements, this is simply 'newZOrder + 1', except for containers. They increment it once for each child (or even more if those children are also containers with their own elements).

Reimplemented in Ogre::OverlayContainer.

## ◆ _notifyWorldTransforms()

 virtual void Ogre::OverlayElement::_notifyWorldTransforms ( const Matrix4 & xform )
virtual

Internal method to notify the element when it's world transform of parent overlay has changed.

Reimplemented in Ogre::OverlayContainer.

## ◆ _notifyViewport()

 virtual void Ogre::OverlayElement::_notifyViewport ( )
virtual

Internal method to notify the element when the viewport of parent overlay has changed.

Reimplemented in Ogre::OverlayContainer.

## ◆ _updateRenderQueue()

 virtual void Ogre::OverlayElement::_updateRenderQueue ( RenderQueue * queue )
virtual

Internal method to put the contents onto the render queue.

Reimplemented in Ogre::PanelOverlayElement, Ogre::OverlayContainer, and Ogre::BorderPanelOverlayElement.

## ◆ visitRenderables()

 void Ogre::OverlayElement::visitRenderables ( Renderable::Visitor * visitor, bool debugRenderables = false )

Method to allow a caller to abstractly iterate over the Renderable instances that this MovableObject will add to the render queue when asked, if any.

Parameters
 visitor Pointer to a class implementing the Renderable::Visitor interface which will be called back for each Renderable which will be queued. Bear in mind that the state of the Renderable instances may not be finalised depending on when you call this. debugRenderables If false, only regular renderables will be visited (those for normal display). If true, debug renderables will be included too.

## ◆ getTypeName()

 virtual const String& Ogre::OverlayElement::getTypeName ( void ) const
pure virtual

Gets the type name of the element.

All concrete subclasses must implement this.

Implemented in Ogre::TextAreaOverlayElement, Ogre::PanelOverlayElement, and Ogre::BorderPanelOverlayElement.

## ◆ setCaption()

 virtual void Ogre::OverlayElement::setCaption ( const DisplayString & text )
virtual

Sets the caption on elements that support it.

This property doesn't do something on all elements, just those that support it. However, being a common requirement it is in the top-level interface to avoid having to set it via the StringInterface all the time.

Reimplemented in Ogre::TextAreaOverlayElement.

## ◆ getCaption()

 const DisplayString& Ogre::OverlayElement::getCaption ( void ) const
inline

Gets the caption for this element.

## ◆ setColour()

 virtual void Ogre::OverlayElement::setColour ( const ColourValue & col )
virtual

Sets the colour on elements that support it.

This property doesn't do something on all elements, just those that support it. However, being a common requirement it is in the top-level interface to avoid having to set it via the StringInterface all the time.

Reimplemented in Ogre::TextAreaOverlayElement.

## ◆ getColour()

 virtual const ColourValue& Ogre::OverlayElement::getColour ( void ) const
virtual

Gets the colour for this element.

Reimplemented in Ogre::TextAreaOverlayElement.

## ◆ setMetricsMode()

 virtual void Ogre::OverlayElement::setMetricsMode ( GuiMetricsMode gmm )
virtual

Tells this element how to interpret the position and dimension values it is given.

By default, OverlayElements are positioned and sized according to relative dimensions of the screen. This is to ensure portability between different resolutions when you want things to be positioned and sized the same way across all resolutions. However, sometimes you want things to be sized according to fixed pixels. In order to do this, you can call this method with the parameter GMM_PIXELS. Note that if you then want to place your element relative to the center, right or bottom of it's parent, you will need to use the setHorizontalAlignment and setVerticalAlignment methods.

Reimplemented in Ogre::TextAreaOverlayElement, and Ogre::BorderPanelOverlayElement.

## ◆ getMetricsMode()

 GuiMetricsMode Ogre::OverlayElement::getMetricsMode ( void ) const
inline

Retrieves the current settings of how the element metrics are interpreted.

## ◆ setHorizontalAlignment()

 virtual void Ogre::OverlayElement::setHorizontalAlignment ( GuiHorizontalAlignment gha )
virtual

Sets the horizontal origin for this element.

By default, the horizontal origin for a OverlayElement is the left edge of the parent container (or the screen if this is a root element). You can alter this by calling this method, which is especially useful when you want to use pixel-based metrics (see setMetricsMode) since in this mode you can't use relative positioning.

For example, if you were using GMM_PIXELS metrics mode, and you wanted to place a 30x30 pixel crosshair in the center of the screen, you would use GHA_CENTER with a 'left' property of -15.
Note that neither GHA_CENTER or GHA_RIGHT alter the position of the element based on it's width, you have to alter the 'left' to a negative number to do that; all this does is establish the origin. This is because this way you can align multiple things in the center and right with different 'left' offsets for maximum flexibility.

## ◆ getHorizontalAlignment()

 GuiHorizontalAlignment Ogre::OverlayElement::getHorizontalAlignment ( void ) const
inline

Gets the horizontal alignment for this element.

## ◆ setVerticalAlignment()

 virtual void Ogre::OverlayElement::setVerticalAlignment ( GuiVerticalAlignment gva )
virtual

Sets the vertical origin for this element.

By default, the vertical origin for a OverlayElement is the top edge of the parent container (or the screen if this is a root element). You can alter this by calling this method, which is especially useful when you want to use pixel-based metrics (see setMetricsMode) since in this mode you can't use relative positioning.

For example, if you were using GMM_PIXELS metrics mode, and you wanted to place a 30x30 pixel crosshair in the center of the screen, you would use GHA_CENTER with a 'top' property of -15.
Note that neither GVA_CENTER or GVA_BOTTOM alter the position of the element based on it's height, you have to alter the 'top' to a negative number to do that; all this does is establish the origin. This is because this way you can align multiple things in the center and bottom with different 'top' offsets for maximum flexibility.

## ◆ getVerticalAlignment()

 GuiVerticalAlignment Ogre::OverlayElement::getVerticalAlignment ( void ) const
inline

Gets the vertical alignment for this element.

## ◆ contains()

 virtual bool Ogre::OverlayElement::contains ( Real x, Real y ) const
virtual

Returns true if xy is within the constraints of the component.

## ◆ findElementAt()

 virtual OverlayElement* Ogre::OverlayElement::findElementAt ( Real x, Real y )
virtual

Returns true if xy is within the constraints of the component.

Reimplemented in Ogre::OverlayContainer.

## ◆ isContainer()

 virtual bool Ogre::OverlayElement::isContainer ( ) const
inlinevirtual

returns false as this class is not a container type

Reimplemented in Ogre::OverlayContainer.

## ◆ isKeyEnabled()

 virtual bool Ogre::OverlayElement::isKeyEnabled ( ) const
inlinevirtual

## ◆ isCloneable()

 bool Ogre::OverlayElement::isCloneable ( ) const
inline

## ◆ setCloneable()

 void Ogre::OverlayElement::setCloneable ( bool c )
inline

## ◆ getParent()

 OverlayContainer* Ogre::OverlayElement::getParent ( )
inline

Returns the parent container.

## ◆ _setParent()

 void Ogre::OverlayElement::_setParent ( OverlayContainer * parent )
inline

## ◆ getZOrder()

 ushort Ogre::OverlayElement::getZOrder ( ) const
inline

Returns the zOrder of the element.

## ◆ getSquaredViewDepth()

 Real Ogre::OverlayElement::getSquaredViewDepth ( const Camera * cam ) const
inlinevirtual

Overridden from Renderable.

Implements Ogre::Renderable.

Referenced by Ogre::BorderRenderable::getSquaredViewDepth().

## ◆ getLights()

 const LightList& Ogre::OverlayElement::getLights ( void ) const
inlinevirtual

Gets a list of lights, ordered relative to how close they are to this renderable.

Directional lights, which have no position, will always be first on this list.

Implements Ogre::Renderable.

## ◆ copyFromTemplate()

 virtual void Ogre::OverlayElement::copyFromTemplate ( OverlayElement * templateOverlay )
inlinevirtual

## ◆ clone()

 virtual OverlayElement* Ogre::OverlayElement::clone ( const String & instanceName )
virtual

Reimplemented in Ogre::OverlayContainer.

## ◆ DEFAULT_RESOURCE_GROUP

 const String& Ogre::OverlayElement::DEFAULT_RESOURCE_GROUP
static

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