Describes the properties of an item inside a FlexBox container. More...
#include <juce_FlexItem.h>
Classes | |
struct | Margin |
Represents a margin. More... | |
Public Types | |
enum | AlignSelf { AlignSelf::autoAlign, AlignSelf::flexStart, AlignSelf::flexEnd, AlignSelf::center, AlignSelf::stretch } |
Possible value for the alignSelf property. More... | |
Public Member Functions | |
FlexItem () noexcept | |
Creates an item with default parameters, and zero size. More... | |
FlexItem (Component &componentToControl) noexcept | |
Creates an item with a given target Component. More... | |
FlexItem (FlexBox &flexBoxToControl) noexcept | |
Creates an item that represents an embedded FlexBox. More... | |
FlexItem (float width, float height) noexcept | |
Creates an item with the given size. More... | |
FlexItem (float width, float height, Component &targetComponent) noexcept | |
Creates an item with the given size and target Component. More... | |
FlexItem (float width, float height, FlexBox &flexBoxToControl) noexcept | |
Creates an item that represents an embedded FlexBox with a given size. More... | |
FlexItem | withAlignSelf (AlignSelf newAlignSelf) const noexcept |
Returns a copy of this object with a new alignSelf value. More... | |
FlexItem | withFlex (float newFlexGrow) const noexcept |
Returns a copy of this object with a new flex-grow value. More... | |
FlexItem | withFlex (float newFlexGrow, float newFlexShrink) const noexcept |
Returns a copy of this object with new flex-grow and flex-shrink values. More... | |
FlexItem | withFlex (float newFlexGrow, float newFlexShrink, float newFlexBasis) const noexcept |
Returns a copy of this object with new flex-grow, flex-shrink and flex-basis values. More... | |
FlexItem | withHeight (float newHeight) const noexcept |
Returns a copy of this object with a new height. More... | |
FlexItem | withMargin (Margin) const noexcept |
Returns a copy of this object with a new margin. More... | |
FlexItem | withMaxHeight (float newMaxHeight) const noexcept |
Returns a copy of this object with a new maximum height. More... | |
FlexItem | withMaxWidth (float newMaxWidth) const noexcept |
Returns a copy of this object with a new maximum width. More... | |
FlexItem | withMinHeight (float newMinHeight) const noexcept |
Returns a copy of this object with a new minimum height. More... | |
FlexItem | withMinWidth (float newMinWidth) const noexcept |
Returns a copy of this object with a new minimum width. More... | |
FlexItem | withOrder (int newOrder) const noexcept |
Returns a copy of this object with a new order. More... | |
FlexItem | withWidth (float newWidth) const noexcept |
Returns a copy of this object with a new width. More... | |
Public Attributes | |
AlignSelf | alignSelf = AlignSelf::autoAlign |
This is the align-self property of the item. More... | |
Component * | associatedComponent = nullptr |
If this is non-null, it represents a Component whose bounds are controlled by this item. More... | |
FlexBox * | associatedFlexBox = nullptr |
If this is non-null, it represents a FlexBox whose bounds are controlled by this item. More... | |
Rectangle< float > | currentBounds |
The item's current bounds. More... | |
float | flexBasis = 0.0f |
Specifies the flex-basis of the item. More... | |
float | flexGrow = 0.0f |
Specifies the flex grow factor of this item. More... | |
float | flexShrink = 1.0f |
Specifies the flex shrink factor of the item. More... | |
float | height = (float) notAssigned |
The item's height. More... | |
Margin | margin |
The margin to leave around this item. More... | |
float | maxHeight = (float) notAssigned |
The item's maximum height. More... | |
float | maxWidth = (float) notAssigned |
The item's maximum width. More... | |
float | minHeight = 0.0f |
The item's minimum height. More... | |
float | minWidth = 0.0f |
The item's minimum width. More... | |
int | order = 0 |
Determines the order used to lay out items in their flex container. More... | |
float | width = (float) notAssigned |
The item's width. More... | |
Static Public Attributes | |
static const int | autoValue = -2 |
This constant can be used for sizes to indicate that 'auto' mode should be used. More... | |
static const int | notAssigned = -1 |
This constant can be used for sizes to indicate that no value has been set. More... | |
|
strong |
Possible value for the alignSelf property.
Enumerator | |
---|---|
autoAlign | Follows the FlexBox container's alignItems property. |
flexStart | Item is aligned towards the start of the cross axis. |
flexEnd | Item is aligned towards the end of the cross axis. |
center | Item is aligned towards the center of the cross axis. |
stretch | Item is stretched from start to end of the cross axis. |
|
noexcept |
Creates an item with default parameters, and zero size.
Creates an item with the given size.
Creates an item with the given size and target Component.
Creates an item that represents an embedded FlexBox with a given size.
|
noexcept |
Creates an item with a given target Component.
|
noexcept |
Returns a copy of this object with a new alignSelf value.
Returns a copy of this object with a new flex-grow value.
Returns a copy of this object with new flex-grow and flex-shrink values.
|
noexcept |
Returns a copy of this object with new flex-grow, flex-shrink and flex-basis values.
Returns a copy of this object with a new height.
Returns a copy of this object with a new margin.
Returns a copy of this object with a new maximum height.
Returns a copy of this object with a new maximum width.
Returns a copy of this object with a new minimum height.
Returns a copy of this object with a new minimum width.
Returns a copy of this object with a new order.
Returns a copy of this object with a new width.
AlignSelf juce::FlexItem::alignSelf = AlignSelf::autoAlign |
This is the align-self property of the item.
This determines the alignment of the item along the cross-axis (perpendicular to the direction of flow).
Component* juce::FlexItem::associatedComponent = nullptr |
If this is non-null, it represents a Component whose bounds are controlled by this item.
FlexBox* juce::FlexItem::associatedFlexBox = nullptr |
If this is non-null, it represents a FlexBox whose bounds are controlled by this item.
|
static |
This constant can be used for sizes to indicate that 'auto' mode should be used.
float juce::FlexItem::flexBasis = 0.0f |
Specifies the flex-basis of the item.
This is the initial main size of a flex item in the direction of flow. It determines the size of the content-box unless specified otherwise using box-sizing.
float juce::FlexItem::flexGrow = 0.0f |
Specifies the flex grow factor of this item.
This indicates the amount of space inside the flex container the item should take up.
float juce::FlexItem::flexShrink = 1.0f |
Specifies the flex shrink factor of the item.
This indicates the rate at which the item shrinks if there is insufficient space in the container.
float juce::FlexItem::height = (float) notAssigned |
The item's height.
Margin juce::FlexItem::margin |
The margin to leave around this item.
float juce::FlexItem::maxHeight = (float) notAssigned |
The item's maximum height.
float juce::FlexItem::maxWidth = (float) notAssigned |
The item's maximum width.
float juce::FlexItem::minHeight = 0.0f |
The item's minimum height.
float juce::FlexItem::minWidth = 0.0f |
The item's minimum width.
|
static |
This constant can be used for sizes to indicate that no value has been set.
int juce::FlexItem::order = 0 |
Determines the order used to lay out items in their flex container.
Elements are laid out in ascending order of thus order value. Elements with the same order value are laid out in the order in which they appear in the array.
float juce::FlexItem::width = (float) notAssigned |
The item's width.