JUCE: Justification Class Reference

JUCE

Public Types | Public Member Functions | List of all members
Justification Class Reference
juce_graphics » placement

Represents a type of justification to be used when positioning graphical items. More...

`#include <juce_Justification.h>`

## Public Types
enum | Flags { left = 1 , right = 2 , horizontallyCentred = 4 , top = 8 , bottom = 16 , verticallyCentred = 32 , horizontallyJustified = 64 , centred = 36 , centredLeft = 33 , centredRight = 34 , centredTop = 12 , centredBottom = 20 , topLeft = 9 , topRight = 10 , bottomLeft = 17 , bottomRight = 18 }
| Flag values that can be combined and used in the constructor. More...

## Public Member Functions
| Justification (int justificationFlags) noexcept
| Creates a Justification object using a combination of flags from the Flags enum. More...
| Justification (const Justification &)=default
| Creates a copy of another Justification object. More...
Justification & | operator= (const Justification &)=default
| Copies another Justification object. More...
bool | operator== (const Justification &other) const noexcept
bool | operator!= (const Justification &other) const noexcept
int | getFlags () const noexcept
| Returns the raw flags that are set for this Justification object. More...
bool | testFlags (int flagsToTest) const noexcept
| Tests a set of flags for this object. More...
int | getOnlyVerticalFlags () const noexcept
| Returns just the flags from this object that deal with vertical layout. More...
int | getOnlyHorizontalFlags () const noexcept
| Returns just the flags from this object that deal with horizontal layout. More...
template<typename ValueType >
void | applyToRectangle (ValueType &x, ValueType &y, ValueType w, ValueType h, ValueType spaceX, ValueType spaceY, ValueType spaceW, ValueType spaceH) const noexcept
| Adjusts the position of a rectangle to fit it into a space. More...
template<typename ValueType >
const Rectangle< ValueType > | appliedToRectangle (const Rectangle< ValueType > &areaToAdjust, const Rectangle< ValueType > &targetSpace) const noexcept
| Returns the new position of a rectangle that has been justified to fit within a given space. More...

## Detailed Description

Represents a type of justification to be used when positioning graphical items.

e.g. it indicates whether something should be placed top-left, top-right, centred, etc.

It is used in various places wherever this kind of information is needed.

## Member Enumeration Documentation

## ◆ Flags

enum Justification::Flags

Flag values that can be combined and used in the constructor.

Enumerator
left | Indicates that the item should be aligned against the left edge of the available space.
right | Indicates that the item should be aligned against the right edge of the available space.
horizontallyCentred | Indicates that the item should be placed in the centre between the left and right sides of the available space.
top | Indicates that the item should be aligned against the top edge of the available space.
bottom | Indicates that the item should be aligned against the bottom edge of the available space.
verticallyCentred | Indicates that the item should be placed in the centre between the top and bottom sides of the available space.
horizontallyJustified | Indicates that lines of text should be spread out to fill the maximum width available, so that both margins are aligned vertically.
centred | Indicates that the item should be centred vertically and horizontally. This is equivalent to (horizontallyCentred | verticallyCentred)
centredLeft | Indicates that the item should be centred vertically but placed on the left hand side. This is equivalent to (left | verticallyCentred)
centredRight | Indicates that the item should be centred vertically but placed on the right hand side. This is equivalent to (right | verticallyCentred)
centredTop | Indicates that the item should be centred horizontally and placed at the top. This is equivalent to (horizontallyCentred | top)
centredBottom | Indicates that the item should be centred horizontally and placed at the bottom. This is equivalent to (horizontallyCentred | bottom)
topLeft | Indicates that the item should be placed in the top-left corner. This is equivalent to (left | top)
topRight | Indicates that the item should be placed in the top-right corner. This is equivalent to (right | top)
bottomLeft | Indicates that the item should be placed in the bottom-left corner. This is equivalent to (left | bottom)
bottomRight | Indicates that the item should be placed in the bottom-left corner. This is equivalent to (right | bottom)

## Constructor & Destructor Documentation

## ◆ Justification() [1/2]

Justification::Justification | ( | int | justificationFlags | ) |
| noexcept

Creates a Justification object using a combination of flags from the Flags enum.

## ◆ Justification() [2/2]

Justification::Justification | ( | const Justification & |  | ) |
| default

Creates a copy of another Justification object.

## Member Function Documentation

## ◆ operator=()

Justification & Justification::operator= | ( | const Justification & |  | ) |
| default

Copies another Justification object.

## ◆ operator==()

bool Justification::operator== | ( | const Justification & | other | ) | const
| noexcept

## ◆ operator!=()

bool Justification::operator!= | ( | const Justification & | other | ) | const
| noexcept

## ◆ getFlags()

int Justification::getFlags | ( |  | ) | const
| noexcept

Returns the raw flags that are set for this Justification object.

## ◆ testFlags()

bool Justification::testFlags | ( | int | flagsToTest | ) | const
| noexcept

Tests a set of flags for this object.

Returns
  true if any of the flags passed in are set on this object.

## ◆ getOnlyVerticalFlags()

int Justification::getOnlyVerticalFlags | ( |  | ) | const
| noexcept

Returns just the flags from this object that deal with vertical layout.

References bottom, top, and verticallyCentred.

## ◆ getOnlyHorizontalFlags()

int Justification::getOnlyHorizontalFlags | ( |  | ) | const
| noexcept

Returns just the flags from this object that deal with horizontal layout.

References horizontallyCentred, horizontallyJustified, left, and right.

## ◆ applyToRectangle()

template<typename ValueType >

void Justification::applyToRectangle | ( | ValueType & | x,
|  | ValueType & | y,
|  | ValueType | w,
|  | ValueType | h,
|  | ValueType | spaceX,
|  | ValueType | spaceY,
|  | ValueType | spaceW,
|  | ValueType | spaceH
| ) |  | const
| noexcept

Adjusts the position of a rectangle to fit it into a space.

The (x, y) position of the rectangle will be updated to position it inside the given space according to the justification flags.

References bottom, gl::h, horizontallyCentred, right, verticallyCentred, gl::w, gl::x, and gl::y.

Referenced by appliedToRectangle().

## ◆ appliedToRectangle()

template<typename ValueType >

const Rectangle< ValueType > Justification::appliedToRectangle | ( | const Rectangle< ValueType > & | areaToAdjust,
|  | const Rectangle< ValueType > & | targetSpace
| ) |  | const
| noexcept

Returns the new position of a rectangle that has been justified to fit within a given space.

References applyToRectangle(), gl::x, and gl::y.

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

- juce_Justification.h