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
}
}
}
}