Justification Class Reference
juce_graphics » placement

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

## 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, horizontallyCentred, right, and verticallyCentred.

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().

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

- juce_Justification.h