- java.lang.Object
-
- net.miginfocom.swing.MigLayout
-
- All Implemented Interfaces:
LayoutManager
,LayoutManager2
,Externalizable
,Serializable
public class MigLayout extends Object implements LayoutManager2, Externalizable
A very flexible layout manager.Read the documentation that came with this layout manager for information on usage.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MigLayout()
Constructor with no constraints.MigLayout(String layoutConstraints)
Constructor.MigLayout(String layoutConstraints, String colConstraints)
Constructor.MigLayout(String layoutConstraints, String colConstraints, String rowConstraints)
Constructor.MigLayout(LC layoutConstraints)
Constructor.MigLayout(LC layoutConstraints, AC colConstraints)
Constructor.MigLayout(LC layoutConstraints, AC colConstraints, AC rowConstraints)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addLayoutCallback(LayoutCallback callback)
Adds the callback function that will be called at different stages of the layout cycle.void
addLayoutComponent(Component comp, Object constraints)
void
addLayoutComponent(String s, Component comp)
static <E> E
findType(Class<E> clazz, Component comp)
Object
getColumnConstraints()
Returns the column layout constraints either as aString
orAC
.Object
getComponentConstraints(Component comp)
Returns the component constraints as a String representation.Map<Component,Object>
getConstraintMap()
Returns a shallow copy of the constraints map.float
getLayoutAlignmentX(Container parent)
float
getLayoutAlignmentY(Container parent)
Object
getLayoutConstraints()
Returns layout constraints either as aString
orLC
depending what was sent in to the constructor or set withsetLayoutConstraints(Object)
.Object
getRowConstraints()
Returns the row layout constraints either as aString
orAC
.void
invalidateLayout(Container target)
boolean
isManagingComponent(Component c)
Returns if this layout manager is currently managing this component.void
layoutContainer(Container parent)
Dimension
maximumLayoutSize(Container parent)
Dimension
minimumLayoutSize(Container parent)
Dimension
preferredLayoutSize(Container parent)
void
readExternal(ObjectInput in)
void
removeLayoutCallback(LayoutCallback callback)
Removes the callback if it exists.void
removeLayoutComponent(Component comp)
void
setColumnConstraints(Object constr)
Sets the column layout constraints for the layout manager instance as a String.void
setComponentConstraints(Component comp, Object constr)
Sets the component constraint for the component that already must be handled by this layout manager.void
setConstraintMap(Map<Component,Object> map)
Sets the constraints map.void
setLayoutConstraints(Object constr)
Sets the layout constraints for the layout manager instance as a String.void
setRowConstraints(Object constr)
Sets the row layout constraints for the layout manager instance as a String.void
writeExternal(ObjectOutput out)
-
-
-
Constructor Detail
-
MigLayout
public MigLayout()
Constructor with no constraints.
-
MigLayout
public MigLayout(String layoutConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as "".
-
MigLayout
public MigLayout(String layoutConstraints, String colConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as "".colConstraints
- The constraints for the columns in the grid.null
will be treated as "".
-
MigLayout
public MigLayout(String layoutConstraints, String colConstraints, String rowConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as "".colConstraints
- The constraints for the columns in the grid.null
will be treated as "".rowConstraints
- The constraints for the rows in the grid.null
will be treated as "".
-
MigLayout
public MigLayout(LC layoutConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as an empty constraint.
-
MigLayout
public MigLayout(LC layoutConstraints, AC colConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as an empty constraint.colConstraints
- The constraints for the columns in the grid.null
will be treated as an empty constraint.
-
MigLayout
public MigLayout(LC layoutConstraints, AC colConstraints, AC rowConstraints)
Constructor.- Parameters:
layoutConstraints
- The constraints that concern the whole layout.null
will be treated as an empty constraint.colConstraints
- The constraints for the columns in the grid.null
will be treated as an empty constraint.rowConstraints
- The constraints for the rows in the grid.null
will be treated as an empty constraint.
-
-
Method Detail
-
getLayoutConstraints
public Object getLayoutConstraints()
Returns layout constraints either as aString
orLC
depending what was sent in to the constructor or set withsetLayoutConstraints(Object)
.- Returns:
- The layout constraints either as a
String
orLC
depending what was sent in to the constructor or set withsetLayoutConstraints(Object)
. Nevernull
.
-
setLayoutConstraints
public void setLayoutConstraints(Object constr)
Sets the layout constraints for the layout manager instance as a String.See the class JavaDocs for information on how this string is formatted.
- Parameters:
constr
- The layout constraints as a String orLC
representation.null
is converted to""
for storage.- Throws:
RuntimeException
- if the constraint was not valid.
-
getColumnConstraints
public Object getColumnConstraints()
Returns the column layout constraints either as aString
orAC
.- Returns:
- The column constraints either as a
String
orAC
depending what was sent in to the constructor or set withsetColumnConstraints(Object)
. Nevernull
.
-
setColumnConstraints
public void setColumnConstraints(Object constr)
Sets the column layout constraints for the layout manager instance as a String.See the class JavaDocs for information on how this string is formatted.
- Parameters:
constr
- The column layout constraints as a String orAC
representation.null
is converted to""
for storage.- Throws:
RuntimeException
- if the constraint was not valid.
-
getRowConstraints
public Object getRowConstraints()
Returns the row layout constraints either as aString
orAC
.- Returns:
- The row constraints either as a
String
orAC
depending what was sent in to the constructor or set withsetRowConstraints(Object)
. Nevernull
.
-
setRowConstraints
public void setRowConstraints(Object constr)
Sets the row layout constraints for the layout manager instance as a String.See the class JavaDocs for information on how this string is formatted.
- Parameters:
constr
- The row layout constraints as a String orAC
representation.null
is converted to""
for storage.- Throws:
RuntimeException
- if the constraint was not valid.
-
getConstraintMap
public Map<Component,Object> getConstraintMap()
Returns a shallow copy of the constraints map.- Returns:
- A shallow copy of the constraints map. Never
null
.
-
setConstraintMap
public void setConstraintMap(Map<Component,Object> map)
Sets the constraints map.- Parameters:
map
- The map. Will be copied.
-
getComponentConstraints
public Object getComponentConstraints(Component comp)
Returns the component constraints as a String representation. This string is the exact string as set withsetComponentConstraints(java.awt.Component, Object)
or set when adding the component to the parent component.See the class JavaDocs for information on how this string is formatted.
- Parameters:
comp
- The component to return the constraints for.- Returns:
- The component constraints as a String representation or
null
if the component is not registered with this layout manager. The returned values is either a String or aCC
depending on what constraint was sent in when the component was added. May benull
.
-
setComponentConstraints
public void setComponentConstraints(Component comp, Object constr)
Sets the component constraint for the component that already must be handled by this layout manager.See the class JavaDocs for information on how this string is formatted.
- Parameters:
constr
- The component constraints as a String orCC
.null
is ok.comp
- The component to set the constraints for.- Throws:
RuntimeException
- if the constraint was not valid.IllegalArgumentException
- If the component is not handling the component.
-
isManagingComponent
public boolean isManagingComponent(Component c)
Returns if this layout manager is currently managing this component.- Parameters:
c
- The component to check. Ifnull
thenfalse
will be returned.- Returns:
- If this layout manager is currently managing this component.
-
addLayoutCallback
public void addLayoutCallback(LayoutCallback callback)
Adds the callback function that will be called at different stages of the layout cycle.- Parameters:
callback
- The callback. Notnull
.
-
removeLayoutCallback
public void removeLayoutCallback(LayoutCallback callback)
Removes the callback if it exists.- Parameters:
callback
- The callback. May benull
.
-
layoutContainer
public void layoutContainer(Container parent)
- Specified by:
layoutContainer
in interfaceLayoutManager
-
minimumLayoutSize
public Dimension minimumLayoutSize(Container parent)
- Specified by:
minimumLayoutSize
in interfaceLayoutManager
-
preferredLayoutSize
public Dimension preferredLayoutSize(Container parent)
- Specified by:
preferredLayoutSize
in interfaceLayoutManager
-
maximumLayoutSize
public Dimension maximumLayoutSize(Container parent)
- Specified by:
maximumLayoutSize
in interfaceLayoutManager2
-
getLayoutAlignmentX
public float getLayoutAlignmentX(Container parent)
- Specified by:
getLayoutAlignmentX
in interfaceLayoutManager2
-
getLayoutAlignmentY
public float getLayoutAlignmentY(Container parent)
- Specified by:
getLayoutAlignmentY
in interfaceLayoutManager2
-
addLayoutComponent
public void addLayoutComponent(String s, Component comp)
- Specified by:
addLayoutComponent
in interfaceLayoutManager
-
addLayoutComponent
public void addLayoutComponent(Component comp, Object constraints)
- Specified by:
addLayoutComponent
in interfaceLayoutManager2
-
removeLayoutComponent
public void removeLayoutComponent(Component comp)
- Specified by:
removeLayoutComponent
in interfaceLayoutManager
-
invalidateLayout
public void invalidateLayout(Container target)
- Specified by:
invalidateLayout
in interfaceLayoutManager2
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
-