Loading...
Searching...
No Matches
Component::Positioner Class Referenceabstract

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

#include <juce_Component.h>

Inheritance diagram for Component::Positioner:

Public Member Functions

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

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)
explicitnoexcept

Creates a Positioner which can control the specified component.

◆ ~Positioner()

virtual Component::Positioner::~Positioner ( )
virtualdefault

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:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram