Module java.desktop
Package javax.swing.plaf.basic
Class BasicSplitPaneUI.BasicHorizontalLayoutManager
java.lang.Object
javax.swing.plaf.basic.BasicSplitPaneUI.BasicHorizontalLayoutManager
- All Implemented Interfaces:
LayoutManager
,LayoutManager2
- Direct Known Subclasses:
BasicSplitPaneUI.BasicVerticalLayoutManager
- Enclosing class:
- BasicSplitPaneUI
public class BasicSplitPaneUI.BasicHorizontalLayoutManager extends Object implements LayoutManager2
LayoutManager for JSplitPanes that have an orientation of
HORIZONTAL_SPLIT.
-
Field Summary
Fields Modifier and Type Field Description protected Component[]
components
The components.protected int[]
sizes
The size of components. -
Method Summary
Modifier and Type Method Description void
addLayoutComponent(Component comp, Object constraints)
Adds the specified component to the layout, using the specified constraint object.void
addLayoutComponent(String place, Component component)
Adds the component at place.protected int
getAvailableSize(Dimension containerSize, Insets insets)
Returns the available width based on the container size andInsets
.protected int
getInitialLocation(Insets insets)
Returns the left inset, unless theInsets
are null in which case 0 is returned.float
getLayoutAlignmentX(Container target)
Returns the alignment along the x axis.float
getLayoutAlignmentY(Container target)
Returns the alignment along the y axis.protected int
getPreferredSizeOfComponent(Component c)
Returns the width of the passed in Components preferred size.protected int
getSizeOfComponent(Component c)
Returns the width of the passed in component.protected int[]
getSizes()
Returns the sizes of the components.void
invalidateLayout(Container c)
Does nothing.void
layoutContainer(Container container)
Does the actual layout.Dimension
maximumLayoutSize(Container target)
Returns the maximum layout size, which is Integer.MAX_VALUE in both directions.Dimension
minimumLayoutSize(Container container)
Returns the minimum size needed to contain the children.Dimension
preferredLayoutSize(Container container)
Returns the preferred size needed to contain the children.void
removeLayoutComponent(Component component)
Removes the specified component from our knowledge.protected void
resetSizeAt(int index)
Resets the size of the Component at the passed in location.void
resetToPreferredSizes()
Marks the receiver so that the next time this instance is laid out it'll ask for the preferred sizes.protected void
setComponentToSize(Component c, int size, int location, Insets insets, Dimension containerSize)
Sets the width of the componentc
to besize
, placing its x location atlocation
, y to theinsets.top
and height to thecontainerSize.height
less the top and bottom insets.protected void
setSizes(int[] newSizes)
Sets the sizes tonewSizes
.protected void
updateComponents()
Determines the components.
-
Field Details
-
sizes
protected int[] sizesThe size of components. -
components
The components.
-
-
Method Details
-
layoutContainer
Does the actual layout.- Specified by:
layoutContainer
in interfaceLayoutManager
- Parameters:
container
- the container to be laid out
-
addLayoutComponent
Adds the component at place. Place must be one of JSplitPane.LEFT, RIGHT, TOP, BOTTOM, or null (for the divider).- Specified by:
addLayoutComponent
in interfaceLayoutManager
- Parameters:
place
- the string to be associated with the componentcomponent
- the component to be added
-
minimumLayoutSize
Returns the minimum size needed to contain the children. The width is the sum of all the children's min widths and the height is the largest of the children's minimum heights.- Specified by:
minimumLayoutSize
in interfaceLayoutManager
- Parameters:
container
- the component to be laid out- Returns:
- the minimum dimension for the container
- See Also:
LayoutManager.preferredLayoutSize(java.awt.Container)
-
preferredLayoutSize
Returns the preferred size needed to contain the children. The width is the sum of all the preferred widths of the children and the height is the largest preferred height of the children.- Specified by:
preferredLayoutSize
in interfaceLayoutManager
- Parameters:
container
- the container to be laid out- Returns:
- the preferred dimension for the container
- See Also:
LayoutManager.minimumLayoutSize(java.awt.Container)
-
removeLayoutComponent
Removes the specified component from our knowledge.- Specified by:
removeLayoutComponent
in interfaceLayoutManager
- Parameters:
component
- the component to be removed
-
addLayoutComponent
Adds the specified component to the layout, using the specified constraint object.- Specified by:
addLayoutComponent
in interfaceLayoutManager2
- Parameters:
comp
- the component to be addedconstraints
- where/how the component is added to the layout.
-
getLayoutAlignmentX
Returns the alignment along the x axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.- Specified by:
getLayoutAlignmentX
in interfaceLayoutManager2
- Parameters:
target
- the target container- Returns:
- the x-axis alignment preference
-
getLayoutAlignmentY
Returns the alignment along the y axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.- Specified by:
getLayoutAlignmentY
in interfaceLayoutManager2
- Parameters:
target
- the target container- Returns:
- the y-axis alignment preference
-
invalidateLayout
Does nothing. If the developer really wants to change the size of one of the views JSplitPane.resetToPreferredSizes should be messaged.- Specified by:
invalidateLayout
in interfaceLayoutManager2
- Parameters:
c
- the target container
-
maximumLayoutSize
Returns the maximum layout size, which is Integer.MAX_VALUE in both directions.- Specified by:
maximumLayoutSize
in interfaceLayoutManager2
- Parameters:
target
- the target container- Returns:
- the maximum size of the container
- See Also:
Component.getMaximumSize()
,LayoutManager
-
resetToPreferredSizes
public void resetToPreferredSizes()Marks the receiver so that the next time this instance is laid out it'll ask for the preferred sizes. -
resetSizeAt
protected void resetSizeAt(int index)Resets the size of the Component at the passed in location.- Parameters:
index
- the index of a component
-
setSizes
protected void setSizes(int[] newSizes)Sets the sizes tonewSizes
.- Parameters:
newSizes
- the new sizes
-
getSizes
protected int[] getSizes()Returns the sizes of the components.- Returns:
- the sizes of the components
-
getPreferredSizeOfComponent
Returns the width of the passed in Components preferred size.- Parameters:
c
- a component- Returns:
- the preferred width of the component
-
getSizeOfComponent
Returns the width of the passed in component.- Parameters:
c
- a component- Returns:
- the width of the component
-
getAvailableSize
Returns the available width based on the container size andInsets
.- Parameters:
containerSize
- a container sizeinsets
- an insets- Returns:
- the available width
-
getInitialLocation
Returns the left inset, unless theInsets
are null in which case 0 is returned.- Parameters:
insets
- the insets- Returns:
- the left inset
-
setComponentToSize
protected void setComponentToSize(Component c, int size, int location, Insets insets, Dimension containerSize)Sets the width of the componentc
to besize
, placing its x location atlocation
, y to theinsets.top
and height to thecontainerSize.height
less the top and bottom insets.- Parameters:
c
- a componentsize
- a new widthlocation
- a new X coordinateinsets
- an insetscontainerSize
- a container size
-
updateComponents
protected void updateComponents()Determines the components. This should be called whenever a new instance of this is installed into an existing SplitPane.
-