net.miginfocom.layout

Class ConstraintParser

public final class ConstraintParser extends Object

Parses string constraints.
Method Summary
static BoundSizeparseBoundSize(String s, boolean isGap, boolean isHor)
Parses a singele "min:pref:max" value.
static ACparseColumnConstraints(String s)
Parses the column or rows constraints.
static CCparseComponentConstraint(String s)
Parses one component constraint and returns the parsed value.
static Map<ComponentWrapper,CC>parseComponentConstraints(Map<ComponentWrapper,String> constrMap)
Parses all component constraints and stores the parsed values in the transient (cache) member varables.
static UnitValue[]parseInsets(String s, boolean acceptPanel)
Parses insets which consists of 1-4 UnitValues.
static LCparseLayoutConstraint(String s)
Parses the layout constraints and stores the parsed values in the transient (cache) member varables.
static ACparseRowConstraints(String s)
Parses the column or rows constraints.
static UnitValueparseUnitValue(String s, boolean isHor)
Parses a single unit value.
static UnitValueparseUnitValueOrAlign(String s, boolean isHor, UnitValue emptyReplacement)
Parses a single unit value that may also be an alignment as parsed by ConstraintParser.
static Stringprepare(String s)
Makes null "", trimms and converts to lower case.

Method Detail

parseBoundSize

public static BoundSize parseBoundSize(String s, boolean isGap, boolean isHor)
Parses a singele "min:pref:max" value. May look something like "10px:20lp:30%" or "pref!".

Parameters: s The string to parse. Not null. isGap If this bound size is a gap (different empty string handling). isHor If the size is for the horizontal dimension.

Returns: A bound size that may be null if the string was "null", "n" or null.

parseColumnConstraints

public static AC parseColumnConstraints(String s)
Parses the column or rows constraints. They normally looks something like "[min:pref]rel[10px][]".

Parameters: s The string to parse. Not null.

Returns: An array of DimConstraints that is as manu are there exist "[...]" sections in the string that is parsed.

Throws: RuntimeException if the constaint was not valid.

parseComponentConstraint

public static CC parseComponentConstraint(String s)
Parses one component constraint and returns the parsed value.

Parameters: s The string to parse. Should not be null and must be lower case and trimmed.

Returns: The parsed constraint. Never null.

Throws: RuntimeException if the constaint was not valid.

parseComponentConstraints

public static Map<ComponentWrapper,CC> parseComponentConstraints(Map<ComponentWrapper,String> constrMap)
Parses all component constraints and stores the parsed values in the transient (cache) member varables.

Parameters: constrMap The constraints as Strings. Strings must be lower case and trimmed

Returns: The parsed constraints. Never null.

parseInsets

public static UnitValue[] parseInsets(String s, boolean acceptPanel)
Parses insets which consists of 1-4 UnitValues.

Parameters: s The string to parse. E.g. "10 10 10 10" or "20". If less than 4 groups the last will be used for the missing. acceptPanel If "panel" and "dialog" should be accepted. They are used to access platform defaults.

Returns: An array of length 4 with the parsed insets.

Throws: IllegalArgumentException if the parsing could not be done.

parseLayoutConstraint

public static LC parseLayoutConstraint(String s)
Parses the layout constraints and stores the parsed values in the transient (cache) member varables.

Parameters: s The String to parse. Should not be null and must be lower case and trimmed.

Returns: The parsed constraint. Never null.

Throws: RuntimeException if the constaint was not valid.

parseRowConstraints

public static AC parseRowConstraints(String s)
Parses the column or rows constraints. They normally looks something like "[min:pref]rel[10px][]".

Parameters: s The string to parse. Not null.

Returns: An array of DimConstraints that is as manu are there exist "[...]" sections in the string that is parsed.

Throws: RuntimeException if the constaint was not valid.

parseUnitValue

public static UnitValue parseUnitValue(String s, boolean isHor)
Parses a single unit value. E.g. "10px" or "5in"

Parameters: s The string to parse. Not null. May look something like "10px" or "5dlu". isHor If the value is for the horizontal dimension.

Returns: The parsed unit value. null is empty string,

parseUnitValueOrAlign

public static UnitValue parseUnitValueOrAlign(String s, boolean isHor, UnitValue emptyReplacement)
Parses a single unit value that may also be an alignment as parsed by ConstraintParser.

Parameters: s The string to parse. Not null. May look something like "10px" or "5dlu". isHor If the value is for the horizontal dimension. emptyReplacement A replacement if s is empty. May be null.

Returns: The parsed unit value. May be null.

prepare

public static final String prepare(String s)
Makes null "", trimms and converts to lower case.

Parameters: s The string

Returns: Not null.