Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::glui::BoxLayout Class Reference

layout for aligning Elements either horizontally or vertically More...

#include <boxlayout.h>

+ Inheritance diagram for inviwo::glui::BoxLayout:

Public Types

enum class  LayoutDirection { Vertical , Horizontal }
 

Public Member Functions

 BoxLayout (LayoutDirection direction)
 
void setDirection (LayoutDirection direction)
 
LayoutDirection getDirection () const
 
virtual ivec2 getExtent () const override
 
void setSpacing (int spacing)
 
int getSpacing () const
 
virtual void setScalingFactor (double factor) override
 apply the given scaling factor to all widgets
 
virtual void render (const ivec2 &topLeft, const size2_t &canvasDim) override
 render the layout and all its glui::Elements at the given position
 
virtual void addElement (Element &element) override
 add a glui::Element to the layout at the end of the layout
 
void insertElement (int index, Element &element)
 insert a glui::Element to the layout at the given index. If the index is negative, the UI element is added at the end.
 
void removeElement (Element &element) override
 remove the given glui::Element from the layout
 
- Public Member Functions inherited from inviwo::glui::Layout
void setMargins (int top, int left, int bottom, int right)
 
void setMargins (const ivec4 &margins)
 set layout margins. margins correspond to margins in the order: top, left, bottom, and right.
 
const ivec4 & getMargins () const
 

Additional Inherited Members

- Protected Attributes inherited from inviwo::glui::Layout
ivec4 margins_ = ivec4(10, 10, 10, 10)
 top, left, bottom, right
 
double scaling_ = 1.0
 

Detailed Description

layout for aligning Elements either horizontally or vertically

This class does not take over ownership of the Elements.

Member Function Documentation

◆ addElement()

virtual void inviwo::glui::BoxLayout::addElement ( Element & element)
overridevirtual

add a glui::Element to the layout at the end of the layout

Parameters
elementglui::Element to be added

Implements inviwo::glui::Layout.

◆ getExtent()

virtual ivec2 inviwo::glui::BoxLayout::getExtent ( ) const
overridevirtual

Implements inviwo::glui::Layout.

◆ insertElement()

void inviwo::glui::BoxLayout::insertElement ( int index,
Element & element )

insert a glui::Element to the layout at the given index. If the index is negative, the UI element is added at the end.

Parameters
indexindex position of where to insert the glui::Element
elementglui::Element to be added

◆ removeElement()

void inviwo::glui::BoxLayout::removeElement ( Element & element)
overridevirtual

remove the given glui::Element from the layout

Parameters
elementglui::Element to be removed

Implements inviwo::glui::Layout.

◆ render()

virtual void inviwo::glui::BoxLayout::render ( const ivec2 & topLeft,
const size2_t & canvasDim )
overridevirtual

render the layout and all its glui::Elements at the given position

Parameters
topLeftdefines the top left corner where the UI is positioned
canvasDimdimensions of the output canvas

Implements inviwo::glui::Layout.

◆ setScalingFactor()

virtual void inviwo::glui::BoxLayout::setScalingFactor ( double factor)
overridevirtual

apply the given scaling factor to all widgets

Parameters
factorscaling factor for widget extents
See also
Element::setScalingFactor

Implements inviwo::glui::Layout.


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