LMMS
Loading...
Searching...
No Matches
juce::FlexItem Class Referencefinal

#include <juce_FlexItem.h>

Classes

struct  Margin

Public Types

enum class  AlignSelf {
  autoAlign , flexStart , flexEnd , center ,
  stretch
}

Public Member Functions

 FlexItem () noexcept
 FlexItem (float width, float height) noexcept
 FlexItem (float width, float height, Component &targetComponent) noexcept
 FlexItem (float width, float height, FlexBox &flexBoxToControl) noexcept
 FlexItem (Component &componentToControl) noexcept
 FlexItem (FlexBox &flexBoxToControl) noexcept
FlexItem withFlex (float newFlexGrow) const noexcept
FlexItem withFlex (float newFlexGrow, float newFlexShrink) const noexcept
FlexItem withFlex (float newFlexGrow, float newFlexShrink, float newFlexBasis) const noexcept
FlexItem withWidth (float newWidth) const noexcept
FlexItem withMinWidth (float newMinWidth) const noexcept
FlexItem withMaxWidth (float newMaxWidth) const noexcept
FlexItem withHeight (float newHeight) const noexcept
FlexItem withMinHeight (float newMinHeight) const noexcept
FlexItem withMaxHeight (float newMaxHeight) const noexcept
FlexItem withMargin (Margin) const noexcept
FlexItem withOrder (int newOrder) const noexcept
FlexItem withAlignSelf (AlignSelf newAlignSelf) const noexcept

Public Attributes

Rectangle< float > currentBounds
ComponentassociatedComponent = nullptr
FlexBoxassociatedFlexBox = nullptr
int order = 0
float flexGrow = 0.0f
float flexShrink = 1.0f
float flexBasis = 0.0f
AlignSelf alignSelf = AlignSelf::autoAlign
float width = (float) notAssigned
float minWidth = 0.0f
float maxWidth = (float) notAssigned
float height = (float) notAssigned
float minHeight = 0.0f
float maxHeight = (float) notAssigned
Margin margin

Static Public Attributes

static const int autoValue = -2
static const int notAssigned = -1

Detailed Description

Describes the properties of an item inside a FlexBox container.

See also
FlexBox

@tags{GUI}

Member Enumeration Documentation

◆ AlignSelf

enum class juce::FlexItem::AlignSelf
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.

Constructor & Destructor Documentation

◆ FlexItem() [1/6]

juce::FlexItem::FlexItem ( )
noexcept

Creates an item with default parameters, and zero size.

◆ FlexItem() [2/6]

juce::FlexItem::FlexItem ( float width,
float height )
noexcept

Creates an item with the given size.

◆ FlexItem() [3/6]

juce::FlexItem::FlexItem ( float width,
float height,
Component & targetComponent )
noexcept

Creates an item with the given size and target Component.

◆ FlexItem() [4/6]

juce::FlexItem::FlexItem ( float width,
float height,
FlexBox & flexBoxToControl )
noexcept

Creates an item that represents an embedded FlexBox with a given size.

◆ FlexItem() [5/6]

juce::FlexItem::FlexItem ( Component & componentToControl)
noexcept

Creates an item with a given target Component.

◆ FlexItem() [6/6]

juce::FlexItem::FlexItem ( FlexBox & flexBoxToControl)
noexcept

Creates an item that represents an embedded FlexBox. This class will not create a copy of the supplied flex box. You need to ensure that the life-time of flexBoxToControl is longer than the FlexItem.

Member Function Documentation

◆ withAlignSelf()

FlexItem juce::FlexItem::withAlignSelf ( AlignSelf newAlignSelf) const
noexcept

Returns a copy of this object with a new alignSelf value.

◆ withFlex() [1/3]

FlexItem juce::FlexItem::withFlex ( float newFlexGrow) const
noexcept

Returns a copy of this object with a new flex-grow value.

◆ withFlex() [2/3]

FlexItem juce::FlexItem::withFlex ( float newFlexGrow,
float newFlexShrink ) const
noexcept

Returns a copy of this object with new flex-grow and flex-shrink values.

◆ withFlex() [3/3]

FlexItem juce::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.

◆ withHeight()

FlexItem juce::FlexItem::withHeight ( float newHeight) const
noexcept

Returns a copy of this object with a new height.

◆ withMargin()

FlexItem juce::FlexItem::withMargin ( Margin m) const
noexcept

Returns a copy of this object with a new margin.

◆ withMaxHeight()

FlexItem juce::FlexItem::withMaxHeight ( float newMaxHeight) const
noexcept

Returns a copy of this object with a new maximum height.

◆ withMaxWidth()

FlexItem juce::FlexItem::withMaxWidth ( float newMaxWidth) const
noexcept

Returns a copy of this object with a new maximum width.

◆ withMinHeight()

FlexItem juce::FlexItem::withMinHeight ( float newMinHeight) const
noexcept

Returns a copy of this object with a new minimum height.

◆ withMinWidth()

FlexItem juce::FlexItem::withMinWidth ( float newMinWidth) const
noexcept

Returns a copy of this object with a new minimum width.

◆ withOrder()

FlexItem juce::FlexItem::withOrder ( int newOrder) const
noexcept

Returns a copy of this object with a new order.

◆ withWidth()

FlexItem juce::FlexItem::withWidth ( float newWidth) const
noexcept

Returns a copy of this object with a new width.

Member Data Documentation

◆ alignSelf

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

◆ associatedComponent

Component* juce::FlexItem::associatedComponent = nullptr

If this is non-null, it represents a Component whose bounds are controlled by this item.

◆ associatedFlexBox

FlexBox* juce::FlexItem::associatedFlexBox = nullptr

If this is non-null, it represents a FlexBox whose bounds are controlled by this item.

◆ autoValue

const int juce::FlexItem::autoValue = -2
static

This constant can be used for sizes to indicate that 'auto' mode should be used.

◆ currentBounds

Rectangle<float> juce::FlexItem::currentBounds

The item's current bounds.

◆ flexBasis

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.

◆ flexGrow

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.

◆ flexShrink

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.

◆ height

float juce::FlexItem::height = (float) notAssigned

The item's height

◆ margin

Margin juce::FlexItem::margin

The margin to leave around this item.

◆ maxHeight

float juce::FlexItem::maxHeight = (float) notAssigned

The item's maximum height

◆ maxWidth

float juce::FlexItem::maxWidth = (float) notAssigned

The item's maximum width

◆ minHeight

float juce::FlexItem::minHeight = 0.0f

The item's minimum height

◆ minWidth

float juce::FlexItem::minWidth = 0.0f

The item's minimum width

◆ notAssigned

const int juce::FlexItem::notAssigned = -1
static

This constant can be used for sizes to indicate that no value has been set.

◆ order

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.

◆ width

float juce::FlexItem::width = (float) notAssigned

The item's width.


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