BasicTabbedPaneUI.TabbedPaneLayout (Java SE 26 & JDK 26)
Description: declaration: module: java.desktop, package: javax.swing.plaf.basic, class: BasicTabbedPaneUI, class: TabbedPaneLayout
Keywords: javax.swing.plaf.basic.BasicTabbedPaneUI.TabbedPaneLayout class

# Class BasicTabbedPaneUI.TabbedPaneLayout

java.lang.Object
javax.swing.plaf.basic.BasicTabbedPaneUI.TabbedPaneLayout

All Implemented Interfaces:
  `LayoutManager`

Direct Known Subclasses:
  `MetalTabbedPaneUI.TabbedPaneLayout`

Enclosing class:
  `BasicTabbedPaneUI`

public class BasicTabbedPaneUI.TabbedPaneLayout extends Object implements LayoutManager
This class should be treated as a "protected" inner class. Instantiate it only within subclasses of BasicTabbedPaneUI.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TabbedPaneLayout()`
  Constructs a `TabbedPaneLayout`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addLayoutComponent(String name, Component comp)`
  If the layout manager uses a per-component string, adds the component `comp` to the layout, associating it with the string specified by `name`.
  `void`
  `calculateLayoutInfo()`
  Calculates the layout info.
  `protected Dimension`
  `calculateSize(boolean minimum)`
  Returns the calculated size.
  `protected void`
  `calculateTabRects(int tabPlacement, int tabCount)`
  Calculate the tab rectangles.
  `void`
  `layoutContainer(Container parent)`
  Lays out the specified container.
  `Dimension`
  `minimumLayoutSize(Container parent)`
  Calculates the minimum size dimensions for the specified container, given the components it contains.
  `protected void`
  `normalizeTabRuns(int tabPlacement, int tabCount, int start, int max)`
  Normalizes the tab runs.
  `protected void`
  `padSelectedTab(int tabPlacement, int selectedIndex)`
  Pads selected tab.
  `protected void`
  `padTabRun(int tabPlacement, int start, int end, int max)`
  Pads the tab run.
  `Dimension`
  `preferredLayoutSize(Container parent)`
  Calculates the preferred size dimensions for the specified container, given the components it contains.
  `protected int`
  `preferredTabAreaHeight(int tabPlacement, int width)`
  Returns the preferred tab area height.
  `protected int`
  `preferredTabAreaWidth(int tabPlacement, int height)`
  Returns the preferred tab area width.
  `void`
  `removeLayoutComponent(Component comp)`
  Removes the specified component from the layout.
  `protected void`
  `rotateTabRuns(int tabPlacement, int selectedRun)`
  Rotates the run-index array so that the selected run is run[0].

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this 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 the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### TabbedPaneLayout

    public TabbedPaneLayout()
    Constructs a `TabbedPaneLayout`.

- ## Method Details

  - ### addLayoutComponent

    public void addLayoutComponent(String name, Component comp)
    Description copied from interface: `LayoutManager`
    If the layout manager uses a per-component string, adds the component `comp` to the layout, associating it with the string specified by `name`.
    Specified by:
      `addLayoutComponent` in interface `LayoutManager`
    Parameters:
      `name` - the string to be associated with the component
      `comp` - the component to be added

  - ### removeLayoutComponent

    public void removeLayoutComponent(Component comp)
    Description copied from interface: `LayoutManager`
    Removes the specified component from the layout.
    Specified by:
      `removeLayoutComponent` in interface `LayoutManager`
    Parameters:
      `comp` - the component to be removed

  - ### preferredLayoutSize

    public Dimension preferredLayoutSize(Container parent)
    Description copied from interface: `LayoutManager`
    Calculates the preferred size dimensions for the specified container, given the components it contains.
    Specified by:
      `preferredLayoutSize` in interface `LayoutManager`
    Parameters:
      `parent` - the container to be laid out
    Returns:
      the preferred dimension for the container
    See Also:
      - `LayoutManager.minimumLayoutSize(Container)`

  - ### minimumLayoutSize

    public Dimension minimumLayoutSize(Container parent)
    Description copied from interface: `LayoutManager`
    Calculates the minimum size dimensions for the specified container, given the components it contains.
    Specified by:
      `minimumLayoutSize` in interface `LayoutManager`
    Parameters:
      `parent` - the component to be laid out
    Returns:
      the minimum dimension for the container
    See Also:
      - `LayoutManager.preferredLayoutSize(Container)`

  - ### calculateSize

    protected Dimension calculateSize(boolean minimum)
    Returns the calculated size.
    Parameters:
      `minimum` - use the minimum size or preferred size
    Returns:
      the calculated size

  - ### preferredTabAreaHeight

    protected int preferredTabAreaHeight(int tabPlacement, int width)
    Returns the preferred tab area height.
    Parameters:
      `tabPlacement` - the tab placement
      `width` - the width
    Returns:
      the preferred tab area height

  - ### preferredTabAreaWidth

    protected int preferredTabAreaWidth(int tabPlacement, int height)
    Returns the preferred tab area width.
    Parameters:
      `tabPlacement` - the tab placement
      `height` - the height
    Returns:
      the preferred tab area width

  - ### layoutContainer

    public void layoutContainer(Container parent)
    Lays out the specified container.
    Specified by:
      `layoutContainer` in interface `LayoutManager`
    Parameters:
      `parent` - the container to be laid out

  - ### calculateLayoutInfo

    public void calculateLayoutInfo()
    Calculates the layout info.

  - ### calculateTabRects

    protected void calculateTabRects(int tabPlacement, int tabCount)
    Calculate the tab rectangles.
    Parameters:
      `tabPlacement` - the tab placement
      `tabCount` - the tab count

  - ### rotateTabRuns

    protected void rotateTabRuns(int tabPlacement, int selectedRun)
    Rotates the run-index array so that the selected run is run[0].
    Parameters:
      `tabPlacement` - the tab placement
      `selectedRun` - the selected run

  - ### normalizeTabRuns

    protected void normalizeTabRuns(int tabPlacement, int tabCount, int start, int max)
    Normalizes the tab runs.
    Parameters:
      `tabPlacement` - the tab placement
      `tabCount` - the tab count
      `start` - the start
      `max` - the max

  - ### padTabRun

    protected void padTabRun(int tabPlacement, int start, int end, int max)
    Pads the tab run.
    Parameters:
      `tabPlacement` - the tab placement
      `start` - the start
      `end` - the end
      `max` - the max

  - ### padSelectedTab

    protected void padSelectedTab(int tabPlacement, int selectedIndex)
    Pads selected tab.
    Parameters:
      `tabPlacement` - the tab placement
      `selectedIndex` - the selected index