declare namespace javax {
namespace swing {
namespace SpringLayout {
/**
* A Constraints object holds the
* constraints that govern the way a component's size and position
* change in a container controlled by a SpringLayout.
* A Constraints object is
* like a Rectangle, in that it
* has x, y,
* width, and height properties.
* In the Constraints object, however,
* these properties have
* Spring values instead of integers.
* In addition,
* a Constraints object
* can be manipulated as four edges
* -- north, south, east, and west --
* using the constraint property.
*
* The following formulas are always true
* for a Constraints object (here WEST and x are synonyms, as are and NORTH and y):
*
* EAST = WEST + WIDTH
* SOUTH = NORTH + HEIGHT
* HORIZONTAL_CENTER = WEST + WIDTH/2
* VERTICAL_CENTER = NORTH + HEIGHT/2
* ABSOLUTE_BASELINE = NORTH + RELATIVE_BASELINE*
*
* * For example, if you have specified the WIDTH and WEST (X) location * the EAST is calculated as WEST + WIDTH. If you instead specified * the WIDTH and EAST locations the WEST (X) location is then calculated * as EAST - WIDTH. *
* [RELATIVE_BASELINE is a private constraint that is set automatically when * the SpringLayout.Constraints(Component) constructor is called or when * a constraints object is registered with a SpringLayout object.] *
* Note: In this document,
* operators represent methods
* in the Spring class.
* For example, "a + b" is equal to
* Spring.sum(a, b),
* and "a - b" is equal to
* Spring.sum(a, Spring.minus(b)).
* See the
* {@link Spring Spring API documentation}
* for further details
* of spring arithmetic.
*
* Because a Constraints object's properties --
* representing its edges, size, and location -- can all be set
* independently and yet are interrelated,
* a Constraints object can become over-constrained.
* For example, if the WEST, WIDTH and
* EAST edges are all set, steps must be taken to ensure that
* the first of the formulas above holds. To do this, the
* Constraints
* object throws away the least recently set
* constraint so as to make the formulas hold.
* @since 1.4
*/
// @ts-ignore
class Constraints extends java.lang.Object {
/**
* Creates an empty Constraints object.
*/
// @ts-ignore
constructor()
/**
* Creates a Constraints object with the
* specified values for its
* x and y properties.
* The height and width springs
* have null values.
* @param x the spring controlling the component's x value
* @param y the spring controlling the component's y value
*/
// @ts-ignore
constructor(x: javax.swing.Spring, y: javax.swing.Spring)
/**
* Creates a Constraints object with the
* specified values for its
* x, y, width,
* and height properties.
* Note: If the SpringLayout class
* encounters null values in the
* Constraints object of a given component,
* it replaces them with suitable defaults.
* @param x the spring value for the x property
* @param y the spring value for the y property
* @param width the spring value for the width property
* @param height the spring value for the height property
*/
// @ts-ignore
constructor(x: javax.swing.Spring, y: javax.swing.Spring, width: javax.swing.Spring, height: javax.swing.Spring)
/**
* Creates a Constraints object with
* suitable x, y, width and
* height springs for component, c.
* The x and y springs are constant
* springs initialised with the component's location at
* the time this method is called. The width and
* height springs are special springs, created by
* the Spring.width() and Spring.height()
* methods, which track the size characteristics of the component
* when they change.
* @param c the component whose characteristics will be reflected by this Constraints object
* @throws NullPointerException if c is null.
* @since 1.5
*/
// @ts-ignore
constructor(c: java.awt.Component)
/**
* Sets the x property,
* which controls the x value
* of a component's location.
* @param x the spring controlling the x value
* of a component's location
* @see #getX
* @see SpringLayout.Constraints
*/
// @ts-ignore
public setX(x: javax.swing.Spring): void
/**
* Returns the value of the x property.
* @return the spring controlling the x value
* of a component's location
* @see #setX
* @see SpringLayout.Constraints
*/
// @ts-ignore
public getX(): javax.swing.Spring
/**
* Sets the y property,
* which controls the y value
* of a component's location.
* @param y the spring controlling the y value
* of a component's location
* @see #getY
* @see SpringLayout.Constraints
*/
// @ts-ignore
public setY(y: javax.swing.Spring): void
/**
* Returns the value of the y property.
* @return the spring controlling the y value
* of a component's location
* @see #setY
* @see SpringLayout.Constraints
*/
// @ts-ignore
public getY(): javax.swing.Spring
/**
* Sets the width property,
* which controls the width of a component.
* @param width the spring controlling the width of this
* Constraints object
* @see #getWidth
* @see SpringLayout.Constraints
*/
// @ts-ignore
public setWidth(width: javax.swing.Spring): void
/**
* Returns the value of the width property.
* @return the spring controlling the width of a component
* @see #setWidth
* @see SpringLayout.Constraints
*/
// @ts-ignore
public getWidth(): javax.swing.Spring
/**
* Sets the height property,
* which controls the height of a component.
* @param height the spring controlling the height of this Constraints
* object
* @see #getHeight
* @see SpringLayout.Constraints
*/
// @ts-ignore
public setHeight(height: javax.swing.Spring): void
/**
* Returns the value of the height property.
* @return the spring controlling the height of a component
* @see #setHeight
* @see SpringLayout.Constraints
*/
// @ts-ignore
public getHeight(): javax.swing.Spring
/**
* Sets the spring controlling the specified edge.
* The edge must have one of the following values:
* SpringLayout.NORTH,
* SpringLayout.SOUTH,
* SpringLayout.EAST,
* SpringLayout.WEST,
* SpringLayout.HORIZONTAL_CENTER,
* SpringLayout.VERTICAL_CENTER,
* SpringLayout.BASELINE,
* SpringLayout.WIDTH or
* SpringLayout.HEIGHT.
* For any other String value passed as the edge,
* no action is taken. For a null edge, a
* NullPointerException is thrown.
*
* Note: This method can affect {@code x} and {@code y} values
* previously set for this {@code Constraints}.
* @param edgeName the edge to be set
* @param s the spring controlling the specified edge
* @throws NullPointerException if edgeName is null
* @see #getConstraint
* @see #NORTH
* @see #SOUTH
* @see #EAST
* @see #WEST
* @see #HORIZONTAL_CENTER
* @see #VERTICAL_CENTER
* @see #BASELINE
* @see #WIDTH
* @see #HEIGHT
* @see SpringLayout.Constraints
*/
// @ts-ignore
public setConstraint(edgeName: java.lang.String | string, s: javax.swing.Spring): void
/**
* Returns the value of the specified edge, which may be
* a derived value, or even null.
* The edge must have one of the following values:
* SpringLayout.NORTH,
* SpringLayout.SOUTH,
* SpringLayout.EAST,
* SpringLayout.WEST,
* SpringLayout.HORIZONTAL_CENTER,
* SpringLayout.VERTICAL_CENTER,
* SpringLayout.BASELINE,
* SpringLayout.WIDTH or
* SpringLayout.HEIGHT.
* For any other String value passed as the edge,
* null will be returned. Throws
* NullPointerException for a null edge.
* @param edgeName the edge whose value
* is to be returned
* @return the spring controlling the specified edge, may be null
* @throws NullPointerException if edgeName is null
* @see #setConstraint
* @see #NORTH
* @see #SOUTH
* @see #EAST
* @see #WEST
* @see #HORIZONTAL_CENTER
* @see #VERTICAL_CENTER
* @see #BASELINE
* @see #WIDTH
* @see #HEIGHT
* @see SpringLayout.Constraints
*/
// @ts-ignore
public getConstraint(edgeName: java.lang.String | string): javax.swing.Spring
}
}
}
}