# Class GroupLayout.SequentialGroup

java.lang.Object
com.codename1.ui.layouts.GroupLayout.Group
com.codename1.ui.layouts.GroupLayout.SequentialGroup

Enclosing class:
  `GroupLayout`

public class GroupLayout.SequentialGroup extends GroupLayout.Group

A `Group` that lays out its elements sequentially, one after another. This class has no public constructor, use the `createSequentialGroup` method to create one.

##### See also

- #createSequentialGroup()

- ## Method Summary

  Modifier and Type
  Method
  Description
  `GroupLayout.SequentialGroup`
  `add(boolean useAsBaseline, Component component)`
  Adds a `Component` to this `Group`.
  `GroupLayout.SequentialGroup`
  `add(boolean useAsBaseline, Component component, int min, int pref, int max)`
  Adds a `Component` to this `Group` with the specified size.
  `GroupLayout.SequentialGroup`
  `add(boolean useAsBaseline, GroupLayout.Group group)`
  Adds a `Group` to this `Group`.
  `GroupLayout.SequentialGroup`
  `add(int pref)`
  Adds a rigid gap.
  `GroupLayout.SequentialGroup`
  `add(int min, int pref, int max)`
  Adds a gap with the specified size.
  `GroupLayout.SequentialGroup`
  `add(Component component)`
  Adds the specified Component.
  `GroupLayout.SequentialGroup`
  `add(Component component, int min, int pref, int max)`
  Adds the specified `Component`.
  `GroupLayout.SequentialGroup`
  `add(GroupLayout.Group group)`
  Adds the specified `Group` to this `SequentialGroup`
  `GroupLayout.SequentialGroup`
  `addContainerGap()`
  Adds an element representing the preferred gap between one edge of the container and the next/previous Component.
  `GroupLayout.SequentialGroup`
  `addContainerGap(int pref, int max)`
  Adds an element representing the preferred gap between one edge of the container and the next/previous Component.
  `GroupLayout.SequentialGroup`
  `addPreferredGap(int type)`
  Adds an element representing the preferred gap between the nearest components.
  `GroupLayout.SequentialGroup`
  `addPreferredGap(int type, int pref, int max)`
  Adds an element for the preferred gap between the nearest components.
  `GroupLayout.SequentialGroup`
  `addPreferredGap(Component comp1, Component comp2, int type)`
  Adds an element representing the preferred gap between the two components.
  `GroupLayout.SequentialGroup`
  `addPreferredGap(Component comp1, Component comp2, int type, boolean canGrow)`
  Adds an element representing the preferred gap between the two components.

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `final Class`
  `getClass()`
  Returns the runtime class of an object.
  `int`
  `hashCode()`
  Returns a hash code value for the object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes current thread to wait until another thread invokes the method or the method for this object.
  `final void`
  `wait(long timeout)`
  Causes current thread to wait until either another thread invokes the method or the method for this object, or a specified amount of time has elapsed.
  `final void`
  `wait(long timeout, int nanos)`
  Causes current thread to wait until another thread invokes the method or the method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.

- ## Method Details

  - ### add

    public GroupLayout.SequentialGroup add(GroupLayout.Group group)

    Adds the specified `Group` to this `SequentialGroup`

    ###### Parameters

    - `group`: the Group to add

    ###### Returns

    this Group

  - ### add

    public GroupLayout.SequentialGroup add(boolean useAsBaseline, GroupLayout.Group group)

    Adds a `Group` to this `Group`.

    ###### Parameters

    - `group`: the `Group` to add

    - `useAsBaseline`: @param useAsBaseline whether the specified `Group` should be used to calculate the baseline for this `Group`

    ###### Returns

    this `Group`

  - ### add

    public GroupLayout.SequentialGroup add(Component component)

    Adds the specified Component. If the Component's min/max are different from its pref than the component will be resizable.

    ###### Parameters

    - `component`: the Component to add

    ###### Returns

    this `SequentialGroup`

  - ### add

    public GroupLayout.SequentialGroup add(boolean useAsBaseline, Component component)

    Adds a `Component` to this `Group`.

    ###### Parameters

    - `useAsBaseline`: @param useAsBaseline whether the specified `Component` should be used to calculate the baseline for this `Group`

    - `component`: the `Component` to add

    ###### Returns

    this `Group`

  - ### add

    public GroupLayout.SequentialGroup add(Component component, int min, int pref, int max)

    Adds the specified `Component`. Min, pref and max can be absolute values, or they can be one of `DEFAULT_SIZE` or `PREFERRED_SIZE`. For example, the following:

          add(component, PREFERRED_SIZE, PREFERRED_SIZE, 1000);

    Forces a max of 1000, with the min and preferred equalling that of the preferred size of `component`.

    ###### Parameters

    - `component`: the Component to add

    - `min`: the minimum size

    - `pref`: the preferred size

    - `max`: the maximum size

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if min, pref or max are not positive and not one of PREFERRED_SIZE or DEFAULT_SIZE

  - ### add

    public GroupLayout.SequentialGroup add(boolean useAsBaseline, Component component, int min, int pref, int max)

    Adds a `Component` to this `Group` with the specified size.

    ###### Parameters

    - `useAsBaseline`: @param useAsBaseline whether the specified `Component` should be used to calculate the baseline for this `Group`

    - `component`: the `Component` to add

    - `min`: @param min the minimum size or one of `DEFAULT_SIZE` or `PREFERRED_SIZE`

    - `pref`: @param pref the preferred size or one of `DEFAULT_SIZE` or `PREFERRED_SIZE`

    - `max`: @param max the maximum size or one of `DEFAULT_SIZE` or `PREFERRED_SIZE`

    ###### Returns

    this `Group`

  - ### add

    public GroupLayout.SequentialGroup add(int pref)

    Adds a rigid gap.

    ###### Parameters

    - `pref`: the size of the gap

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if min < 0 or pref < 0 or max < 0 or the following is not meant min <= pref <= max

  - ### add

    public GroupLayout.SequentialGroup add(int min, int pref, int max)

    Adds a gap with the specified size.

    ###### Parameters

    - `min`: the minimum size of the gap, or PREFERRED_SIZE

    - `pref`: the preferred size of the gap

    - `max`: the maximum size of the gap, or PREFERRED_SIZE

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if min < 0 or pref < 0 or max < 0 or the following is not meant min <= pref <= max

  - ### addPreferredGap

    public GroupLayout.SequentialGroup addPreferredGap(Component comp1, Component comp2, int type)

    Adds an element representing the preferred gap between the two components.

    ###### Parameters

    - `comp1`: the first component

    - `comp2`: the second component

    - `type`: @param type the type of gap; one of the constants defined by LayoutStyle

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if `type` is not a valid LayoutStyle constant

    ###### See also

    - LayoutStyle

  - ### addPreferredGap

    public GroupLayout.SequentialGroup addPreferredGap(Component comp1, Component comp2, int type, boolean canGrow)

    Adds an element representing the preferred gap between the two components.

    ###### Parameters

    - `comp1`: the first component

    - `comp2`: the second component

    - `type`: @param type the type of gap; one of the constants defined by LayoutStyle

    - `canGrow`: @param canGrow true if the gap can grow if more space is available

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if `type` is not a valid LayoutStyle constant

    ###### See also

    - LayoutStyle

  - ### addPreferredGap

    public GroupLayout.SequentialGroup addPreferredGap(int type)

    Adds an element representing the preferred gap between the nearest components. That is, during layout the neighboring components are found, and the min, pref and max of this element is set based on the preferred gap between the components. If no neighboring components are found the min, pref and max are set to 0.

    ###### Parameters

    - `type`: the type of gap; one of the LayoutStyle constants

    ###### Returns

    this SequentialGroup

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if type is not one of `LayoutStyle.RELATED` or `LayoutStyle.UNRELATED`

    ###### See also

    - LayoutStyle

  - ### addPreferredGap

    public GroupLayout.SequentialGroup addPreferredGap(int type, int pref, int max)

    Adds an element for the preferred gap between the nearest components. That is, during layout the neighboring components are found, and the min of this element is set based on the preferred gap between the components. If no neighboring components are found the min is set to 0. This method allows you to specify the preferred and maximum size by way of the `pref` and `max` arguments. These can either be a value >= 0, in which case the preferred or max is the max of the argument and the preferred gap, of DEFAULT_VALUE in which case the value is the same as the preferred gap.

    ###### Parameters

    - `type`: @param type the type of gap; one of LayoutStyle.RELATED or LayoutStyle.UNRELATED

    - `pref`: the preferred size; one of DEFAULT_SIZE or a value > 0

    - `max`: @param max the maximum size; one of DEFAULT_SIZE, PREFERRED_SIZE or a value > 0

    ###### Returns

    this SequentialGroup

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if type is not one of `LayoutStyle.RELATED` or `LayoutStyle.UNRELATED` or pref/max is != DEFAULT_SIZE and max

    ###### See also

    - LayoutStyle

  - ### addContainerGap

    public GroupLayout.SequentialGroup addContainerGap()

    Adds an element representing the preferred gap between one edge of the container and the next/previous Component. This will have no effect if the next/previous element is not a Component and does not touch one edge of the parent container.

    ###### Returns

    this `SequentialGroup`.

  - ### addContainerGap

    public GroupLayout.SequentialGroup addContainerGap(int pref, int max)

    Adds an element representing the preferred gap between one edge of the container and the next/previous Component. This will have no effect if the next/previous element is not a Component and does not touch one edge of the parent container.

    ###### Parameters

    - `pref`: the preferred size; one of DEFAULT_SIZE or a value > 0

    - `max`: @param max the maximum size; one of DEFAULT_SIZE, PREFERRED_SIZE or a value > 0.

    ###### Returns

    this `SequentialGroup`

    ###### Throws

    - `IllegalArgumentException`: @throws IllegalArgumentException if pref/max is != DEFAULT_SIZE and max