Properties Methods Events Config Options Direct Link

    ContainerLayout
      BoxLayout
        HBoxLayout

# Class Ext.layout.HBoxLayout

Package: | Ext.layout
Defined In: | HBoxLayout.js
Class: | HBoxLayout
Extends: | BoxLayout

A layout that arranges items horizontally across a Container. This layout optionally divides available horizontal space between child items containing a numeric `flex` configuration.

This layout may also be used to set the heights of child items by configuring it with the align option.

## Config Options

Config Options | Defined By
--- | ---

align : String
Controls how the child items of the container are aligned. Acceptable configuration values for this property are: <di...
Controls how the child items of the container are aligned. Acceptable configuration values for this property are:

- `top` : Default
  child items are aligned vertically at the top of the container
- `middle` :
  child items are aligned vertically in the middle of the container
- `stretch` :
  child items are stretched vertically to fill the height of the container
- `stretchmax` :
  child items are stretched vertically to the height of the largest item.

HBoxLayout

defaultMargins : Object
If the individual contained items do not have a margins property specified, the default margins from this property wi...

If the individual contained items do not have a `margins` property specified, the default margins from this property will be applied to each item.

This property may be specified as an object containing margins to apply in the format:

    {
        top: (top margin),
        right: (right margin),
        bottom: (bottom margin),
        left: (left margin)
    }

This property may also be specified as a string containing space-separated, numeric margin values. The order of the sides associated with each value matches the way CSS processes margin values:

- If there is only one value, it applies to all sides.
- If there are two values, the top and bottom borders are set to the first value and the right and left are set to the second.
- If there are three values, the top is set to the first value, the left and right are set to the second, and the bottom is set to the third.
- If there are four values, they apply to the top, right, bottom, and left, respectively.

Defaults to:

    {top:0, right:0, bottom:0, left:0}

BoxLayout

extraCls : String
An optional extra CSS class that will be added to the container. This can be useful for adding customized styles to t...

An optional extra CSS class that will be added to the container. This can be useful for adding customized styles to the container or any of its children using standard CSS rules. See Ext.Component.ctCls also.

Note: `extraCls` defaults to `''` except for the following classes which assign a value by default:

- Absolute Layout : `'x-abs-layout-item'`
- Box Layout : `'x-box-item'`
- Column Layout : `'x-column'`

To configure the above Classes with an extra CSS class append to the default. For example, for ColumnLayout:

    extraCls: 'x-column custom-class'

ContainerLayout

flex : Number
This configuation option is to be applied to child items of the container managed by this layout. Each child item wit...
This configuation option is to be applied to child `items` of the container managed by this layout. Each child item with a `flex` property will be flexed horizontally according to each item's relative `flex` value compared to the sum of all items with a `flex` value specified. Any child items that have either a `flex = 0` or `flex = undefined` will not be 'flexed' (the initial size will not be changed).

HBoxLayout

pack : String
Controls how the child items of the container are packed together. Acceptable configuration values for this property ...
Controls how the child items of the container are packed together. Acceptable configuration values for this property are:

- `start` : Default
  child items are packed together at left side of container
- `center` :
  child items are packed together at mid-width of container
- `end` :
  child items are packed together at right side of container

HBoxLayout

padding : String
Sets the padding to be applied to all child items managed by this layout. This property must be specified as a string...

Sets the padding to be applied to all child items managed by this layout.

This property must be specified as a string containing space-separated, numeric padding values. The order of the sides associated with each value matches the way CSS processes padding values:

- If there is only one value, it applies to all sides.
- If there are two values, the top and bottom borders are set to the first value and the right and left are set to the second.
- If there are three values, the top is set to the first value, the left and right are set to the second, and the bottom is set to the third.
- If there are four values, they apply to the top, right, bottom, and left, respectively.

Defaults to: `"0"`

BoxLayout

| renderHidden : Boolean True to hide each contained item on render (defaults to false). | ContainerLayout

## Public Properties

Property | Defined By
--- | ---

activeItem : Ext.Component
A reference to the Ext.Component that is active. For example, if(myPanel.layout.activeItem.id == 'item-1') { ... } a...
A reference to the Ext.Component that is active. For example,

    if(myPanel.layout.activeItem.id == 'item-1') { ... }

`activeItem` only applies to layout styles that can display items one at a time (like Ext.layout.AccordionLayout, Ext.layout.CardLayout and Ext.layout.FitLayout). Read-only. Related to Ext.Container.activeItem.

ContainerLayout

fieldTpl : Ext.Template
The Ext.Template used by Field rendering layout classes (such as Ext.layout.FormLayout) to create the DOM structure o...
The Ext.Template used by Field rendering layout classes (such as Ext.layout.FormLayout) to create the DOM structure of a fully wrapped, labeled and styled form Field. A default Template is supplied, but this may be overriden to create custom field structures. The template processes values returned from Ext.layout.FormLayout.getTemplateArgs.

ContainerLayout

for : Object
When we have a shortfall but are not tooNarrow, we need to shrink the width of each non-flexed item. Flexed items are...
When we have a shortfall but are not tooNarrow, we need to shrink the width of each non-flexed item. Flexed items are immediately reduced to their minWidth and anything already at minWidth is ignored. The remaining items are collected into the minWidths array, which is later used to distribute the shortfall.

HBoxLayout

| if : Object This monitorResize flag will be renamed soon as to avoid confusion with the Container version which hooks onWindowRes... This monitorResize flag will be renamed soon as to avoid confusion with the Container version which hooks onWindowResize to doLayout monitorResize flag in this context attaches the resize event between a container and it's layout | ContainerLayout

## Public Methods

Method | Defined By
--- | ---

parseMargins( `Number|String v` ) : Object
Parses a number or string representing margin sizes into an object. Supports CSS-style margin declarations (e.g. 10, ...
Parses a number or string representing margin sizes into an object. Supports CSS-style margin declarations (e.g. 10, "10", "10 10", "10 10 10" and "10 10 10 10" are all valid options and would return the same result)
Parameters:

- `v` : Number|String
  The encoded margins

Returns:

- `Object`
  An object with margin sizes for top, right, bottom and left

ContainerLayout

updateChildBoxes( `Array boxes` ) : void
Resizes and repositions each child component
Resizes and repositions each child component
Parameters:

- `boxes` : Array
  The box measurements

Returns:

- void

BoxLayout

## Public Events

This class has no public events.