Loading...
Searching...
No Matches
juce::Grid Class Referencefinal

## Detailed Description

Container that handles geometry for grid layouts (fixed columns and rows) using a set of declarative rules.

Implemented from the CSS Grid Layout specification as described at: https://css-tricks.com/snippets/css/complete-guide-grid/

See also
  GridItem

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

- juce_gui_basics/layout/juce_Grid.h

## Classes

struct | Px
| A size in pixels. More...
struct | Fr
| A fractional ratio integer. More...
struct | TrackInfo
| Represents a track. More...

## Public Types

enum class | JustifyItems : int { start = 0 , end , center , stretch }
| Possible values for the justifyItems property. More...
enum class | AlignItems : int { start = 0 , end , center , stretch }
| Possible values for the alignItems property. More...
enum class | JustifyContent { start , end , center , stretch , spaceAround , spaceBetween , spaceEvenly }
| Possible values for the justifyContent property. More...
enum class | AlignContent { start , end , center , stretch , spaceAround , spaceBetween , spaceEvenly }
| Possible values for the alignContent property. More...
enum class | AutoFlow { row , column , rowDense , columnDense }
| Possible values for the autoFlow property. More...

## Public Member Functions

| Grid ()=default
| Creates an empty Grid container with default parameters.
void | setGap (Px sizeInPixels) noexcept
| Sets the gap between rows and columns in pixels.
void | performLayout (Rectangle< int >)
| Lays-out the grid's items within the given rectangle.
int | getNumberOfColumns () const noexcept
| Returns the number of columns.
int | getNumberOfRows () const noexcept
| Returns the number of rows.

## Public Attributes

JustifyItems | justifyItems = JustifyItems::stretch
| Specifies the alignment of content inside the items along the rows.
AlignItems | alignItems = AlignItems::stretch
| Specifies the alignment of content inside the items along the columns.
JustifyContent | justifyContent = JustifyContent::stretch
| Specifies the alignment of items along the rows.
AlignContent | alignContent = AlignContent::stretch
| Specifies the alignment of items along the columns.
AutoFlow | autoFlow = AutoFlow::row
| Specifies how the auto-placement algorithm places items.
Array< TrackInfo > | templateColumns
| The set of column tracks to lay out.
Array< TrackInfo > | templateRows
| The set of row tracks to lay out.
StringArray | templateAreas
| Template areas.
TrackInfo | autoRows
| The row track for auto dimension.
TrackInfo | autoColumns
| The column track for auto dimension.
Px | columnGap { 0 }
| The gap in pixels between columns.
Px | rowGap { 0 }
| The gap in pixels between rows.
Array< GridItem > | items
| The set of items to lay-out.

## Member Enums

## JustifyItems

enum class juce::Grid::JustifyItems : int

strong

Possible values for the justifyItems property.

Enumerator
start | Content inside the item is justified towards the left.
end | Content inside the item is justified towards the right.
center | Content inside the item is justified towards the center.
stretch | Content inside the item is stretched from left to right.

## AlignItems

enum class juce::Grid::AlignItems : int

strong

Possible values for the alignItems property.

Enumerator
start | Content inside the item is aligned towards the top.
end | Content inside the item is aligned towards the bottom.
center | Content inside the item is aligned towards the center.
stretch | Content inside the item is stretched from top to bottom.

## JustifyContent

enum class juce::Grid::JustifyContent

strong

Possible values for the justifyContent property.

Enumerator
start | Items are justified towards the left of the container.
end | Items are justified towards the right of the container.
center | Items are justified towards the center of the container.
stretch | Items are stretched from left to right of the container.
spaceAround | Items are evenly spaced along the row with spaces between them.
spaceBetween | Items are evenly spaced along the row with spaces around them.
spaceEvenly | Items are evenly spaced along the row with even amount of spaces between them.

## AlignContent

enum class juce::Grid::AlignContent

strong

Possible values for the alignContent property.

Enumerator
start | Items are aligned towards the top of the container.
end | Items are aligned towards the bottom of the container.
center | Items are aligned towards the center of the container.
stretch | Items are stretched from top to bottom of the container.
spaceAround | Items are evenly spaced along the column with spaces between them.
spaceBetween | Items are evenly spaced along the column with spaces around them.
spaceEvenly | Items are evenly spaced along the column with even amount of spaces between them.

## AutoFlow

enum class juce::Grid::AutoFlow

strong

Possible values for the autoFlow property.

Enumerator
row | Fills the grid by adding rows of items.
column | Fills the grid by adding columns of items.
rowDense | Fills the grid by adding rows of items and attempts to fill in gaps.
columnDense | Fills the grid by adding columns of items and attempts to fill in gaps.

## Constructors and Destructors

## Grid()

juce::Grid::Grid | ( |  | ) |

default

Creates an empty Grid container with default parameters.

## Member Functions

## setGap()

void juce::Grid::setGap | ( | Px | sizeInPixels | ) |

inline noexcept

Sets the gap between rows and columns in pixels.

References columnGap, and rowGap.

## performLayout()

void juce::Grid::performLayout | ( | Rectangle< int > |  | ) |

Lays-out the grid's items within the given rectangle.

## getNumberOfColumns()

int juce::Grid::getNumberOfColumns | ( |  | ) | const

inline noexcept

Returns the number of columns.

References templateColumns.

## getNumberOfRows()

int juce::Grid::getNumberOfRows | ( |  | ) | const

inline noexcept

Returns the number of rows.

References templateRows.

## Member Data Documentation

## justifyItems

JustifyItems juce::Grid::justifyItems = JustifyItems::stretch

Specifies the alignment of content inside the items along the rows.

## alignItems

AlignItems juce::Grid::alignItems = AlignItems::stretch

Specifies the alignment of content inside the items along the columns.

## justifyContent

JustifyContent juce::Grid::justifyContent = JustifyContent::stretch

Specifies the alignment of items along the rows.

## alignContent

AlignContent juce::Grid::alignContent = AlignContent::stretch

Specifies the alignment of items along the columns.

## autoFlow

AutoFlow juce::Grid::autoFlow = AutoFlow::row

Specifies how the auto-placement algorithm places items.

## templateColumns

Array<TrackInfo> juce::Grid::templateColumns

The set of column tracks to lay out.

Referenced by getNumberOfColumns().

## templateRows

Array<TrackInfo> juce::Grid::templateRows

The set of row tracks to lay out.

Referenced by getNumberOfRows().

## templateAreas

StringArray juce::Grid::templateAreas

Template areas.

## autoRows

TrackInfo juce::Grid::autoRows

The row track for auto dimension.

## autoColumns

TrackInfo juce::Grid::autoColumns

The column track for auto dimension.

## columnGap

Px juce::Grid::columnGap { 0 }

The gap in pixels between columns.

Referenced by setGap().

## rowGap

Px juce::Grid::rowGap { 0 }

The gap in pixels between rows.

Referenced by setGap().

## items

Array<GridItem> juce::Grid::items

The set of items to lay-out.

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited