net.miginfocom.layout

Interface InCellGapProvider

public interface InCellGapProvider

An interfance to implement if you want to decide the gaps between two types of components within the same cell.

E.g.:

 if (adjacentComp == null || adjacentSide == SwingConstants.LEFT || adjacentSide == SwingConstants.TOP)
	  return null;

 boolean isHor = (adjacentSide == SwingConstants.LEFT || adjacentSide == SwingConstants.RIGHT);

 if (adjacentComp.getComponetType(false) == ComponentWrapper.TYPE_LABEL && comp.getComponetType(false) == ComponentWrapper.TYPE_TEXT_FIELD)
    return isHor ? UNRELATED_Y : UNRELATED_Y;

 return (adjacentSide == SwingConstants.LEFT || adjacentSide == SwingConstants.RIGHT) ? RELATED_X : RELATED_Y;
 
Method Summary
abstract BoundSizegetDefaultGap(ComponentWrapper comp, ComponentWrapper adjacentComp, int adjacentSide, String tag, boolean isLTR)
Returns the default gap between two components that are in the same cell.

Method Detail

getDefaultGap

public abstract BoundSize getDefaultGap(ComponentWrapper comp, ComponentWrapper adjacentComp, int adjacentSide, String tag, boolean isLTR)
Returns the default gap between two components that are in the same cell.

Parameters: comp The component that the gap is for. Never null. adjacentComp The adjacent component if any. May be null. adjacentSide What side the adjacentComp is on. javax.swing.SwingUtilities#TOP or javax.swing.SwingUtilities#LEFT or javax.swing.SwingUtilities#BOTTOM or javax.swing.SwingUtilities#RIGHT. tag The tag string that the component might be tagged with in the component constraints. May be null. isLTR If it is left-to-right.

Returns: The default gap between two components or null if there should be no gap.