Component::Positioner Class Referenceabstract
juce_gui_basics » components

Base class for objects that can be used to automatically position a component according to some kind of algorithm. More...

Inheritance diagram for Component::Positioner:

## Public Member Functions

| Positioner (Component &component) noexcept
| Creates a Positioner which can control the specified component. More...
virtual | ~Positioner ()=default
| Destructor. More...
Component & | getComponent () const noexcept
| Returns the component that this positioner controls. More...
virtual void | applyNewBounds (const Rectangle< int > &newBounds)=0
| Attempts to set the component's position to the given rectangle. More...

## Detailed Description

Base class for objects that can be used to automatically position a component according to some kind of algorithm.

The component class simply holds onto a reference to a Positioner, but doesn't actually do anything with it - all the functionality must be implemented by the positioner itself (e.g. it might choose to watch some kind of value and move the component when the value changes).

## Constructor & Destructor Documentation

## Positioner()

Component::Positioner::Positioner | ( | Component & | component | ) |

explicit noexcept

Creates a Positioner which can control the specified component.

## ~Positioner()

virtual Component::Positioner::~Positioner | ( |  | ) |

virtual default

Destructor.

## Member Function Documentation

## getComponent()

Component& Component::Positioner::getComponent | ( |  | ) | const

noexcept

Returns the component that this positioner controls.

## applyNewBounds()

virtual void Component::Positioner::applyNewBounds | ( | const Rectangle< int > & | newBounds | ) |

pure virtual

Attempts to set the component's position to the given rectangle.

Unlike simply calling Component::setBounds(), this may involve the positioner being smart enough to adjust itself to fit the new bounds.

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

- juce_Component.h