openshot-audio  0.1.2
Public Member Functions | List of all members
Component::Positioner Class Referenceabstract

#include <juce_Component.h>

Inheritance diagram for Component::Positioner:
RelativeCoordinatePositionerBase Drawable::Positioner< DrawableType > DrawablePath::RelativePositioner DrawableShape::RelativePositioner RelativeRectangleComponentPositioner

Public Member Functions

 Positioner (Component &component) noexcept
 
virtual ~Positioner ()
 
ComponentgetComponent () const noexcept
 
virtual void applyNewBounds (const Rectangle< int > &newBounds)=0
 

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

Component::Positioner::Positioner ( Component component)
explicitnoexcept

Creates a Positioner which can control the specified component.

virtual Component::Positioner::~Positioner ( )
inlinevirtual

Destructor.

Member Function Documentation

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, e.g. a RelativeRectangle's positioner may try to reverse the expressions used to make them fit these new coordinates.

Implemented in Drawable::Positioner< DrawableType >, RelativeRectangleComponentPositioner, DrawablePath::RelativePositioner, and DrawableShape::RelativePositioner.

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

Returns the component that this positioner controls.


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