TGUI  1.0-alpha
tgui::Layout Class Reference

Class to store the left, top, width or height of a widget. More...

#include <TGUI/Layout.hpp>

Public Types

enum class  Operation {
  Value , Plus , Minus , Multiplies ,
  Divides , Minimum , Maximum , BindingPosX ,
  BindingPosY , BindingLeft , BindingTop , BindingWidth ,
  BindingHeight , BindingInnerWidth , BindingInnerHeight , BindingString
}
 The operation which the layout has to perform to find its value.
 

Public Member Functions

 Layout ()=default
 Default constructor.
 
template<typename T , typename = typename std::enable_if<std::is_arithmetic<T>::value, T>::type>
 Layout (T constant)
 Constructor to implicitly construct from numeric constant. More...
 
 Layout (const char *expression)
 Constructs the layout based on a string which will be parsed to determine the value of the layout. More...
 
 Layout (String expression)
 Constructs the layout based on a string which will be parsed to determine the value of the layout. More...
 
 Layout (Operation operation, Widget *boundWidget)
 
 Layout (Operation operation, std::unique_ptr< Layout > leftOperand, std::unique_ptr< Layout > rightOperand)
 
 Layout (const Layout &other)
 Copy constructor.
 
 Layout (Layout &&other) noexcept
 Move constructor.
 
Layoutoperator= (const Layout &other)
 Copy assignment operator.
 
Layoutoperator= (Layout &&other) noexcept
 Move assignment operator.
 
 ~Layout ()
 Destructor.
 
void replaceValue (const Layout &value)
 Replaces the value of the layout without overwriting its parent. More...
 
float getValue () const
 Return the cached value of the layout. More...
 
bool isConstant () const
 Return whether the layout stores a constant value. More...
 
String toString () const
 
void connectWidget (Widget *widget, bool xAxis, std::function< void()> valueChangedCallbackHandler)
 
void unbindWidget ()
 
void recalculateValue ()
 
LayoutgetLeftOperand () const
 
LayoutgetRightOperand () const
 

Detailed Description

Class to store the left, top, width or height of a widget.

You don't have to create an instance of this class, numbers are implicitly cast to this class.

Constructor & Destructor Documentation

◆ Layout() [1/3]

template<typename T , typename = typename std::enable_if<std::is_arithmetic<T>::value, T>::type>
tgui::Layout::Layout ( constant)
inline

Constructor to implicitly construct from numeric constant.

Parameters
constantValue of the layout

◆ Layout() [2/3]

tgui::Layout::Layout ( const char *  expression)
inline

Constructs the layout based on a string which will be parsed to determine the value of the layout.

Parameters
expressionString to parse

◆ Layout() [3/3]

tgui::Layout::Layout ( String  expression)

Constructs the layout based on a string which will be parsed to determine the value of the layout.

Parameters
expressionString to parse

Member Function Documentation

◆ getValue()

float tgui::Layout::getValue ( ) const
inline

Return the cached value of the layout.

Returns
Value of the layout

◆ isConstant()

bool tgui::Layout::isConstant ( ) const
inline

Return whether the layout stores a constant value.

Returns
Value of the layout

◆ replaceValue()

void tgui::Layout::replaceValue ( const Layout value)

Replaces the value of the layout without overwriting its parent.

Parameters
valueNew value of the layout

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