Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## contrib.ch.randelshofer.quaqua
Class VisualMargin

    java.lang.Object
      javax.swing.border.AbstractBorder
          contrib.ch.randelshofer.quaqua.VisualMargin

All Implemented Interfaces:
  java.io.Serializable, javax.swing.border.Border, javax.swing.plaf.UIResource

    public class VisualMargin

extends javax.swing.border.AbstractBorder
implements javax.swing.plaf.UIResource

The VisualMargin is used to visually align components using bounds based on other criterias than the clip bounds of the component. For example: The clip bounds of a JButton includes its cast shadow and its focus ring. When we align the JButton with a JLabel, we want to align the baseline of the Text of the JButton with the text in the JLabel. The visual margin may be quite large. We allow to programmatically set a smaller margin using the client property "Quaqua.Component.margin".

Version:
  2.2 2005-10-01 Added method getVisualMargin.
  2.1 2005-06-21 Implements UIResource.
  2.0 2005-05-08 Renamed from BorderMargin to VisualMargin. Reworked API.
  1.0 31 March 2005 Created.
Author:
  Werner Randelshofer
See Also:
  Serialized Form

Constructor Summary
`VisualMargin()` Creates a new VisualMargin.
`VisualMargin(boolean ftop, boolean fleft, boolean fbottom, boolean fright)`
`VisualMargin(java.awt.Insets layoutMargin)` Creates a new VisualMargin.
`VisualMargin(int top, int left, int bottom, int right)` Creates a new VisualMargin.
`VisualMargin(int top, int left, int bottom, int right, boolean ftop, boolean fleft, boolean fbottom, boolean fright)`

Method Summary
`java.awt.Insets` | `getBorderInsets(java.awt.Component c)`
`java.awt.Insets` | `getBorderInsets(java.awt.Component c, java.awt.Insets insets)` Reinitializes the insets parameter with this Border's current Insets.
`java.awt.Insets` | `getVisualMargin(java.awt.Component c)`
`protected java.awt.Insets` | `getVisualMargin(java.awt.Component c, java.awt.Insets insets)` Reinitializes the insets parameter with this Border's current Insets.
`void` | `setFixed(boolean top, boolean left, boolean bottom, boolean right)`
`void` | `setPropertyName(java.lang.String propertyName)` The UIManager Property to be used for the default margin.

Methods inherited from class javax.swing.border.AbstractBorder
`getBaseline, getBaselineResizeBehavior, getInteriorRectangle, getInteriorRectangle, isBorderOpaque, paintBorder`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### VisualMargin

    public VisualMargin()

  Creates a new VisualMargin.

### VisualMargin

    public VisualMargin(int top,
                        int left,
                        int bottom,
                        int right)

  Creates a new VisualMargin.

  Parameters:
    `top` - Defines the margin from the clip bounds of the component to its visual bounds.
    `left` - Defines the margin from the clip bounds of the component to its visual bounds.
    `bottom` - Defines the margin from the clip bounds of the component to its visual bounds.
    `right` - Defines the margin from the clip bounds of the component to its visual bounds.

### VisualMargin

    public VisualMargin(int top,
                        int left,
                        int bottom,
                        int right,
                        boolean ftop,
                        boolean fleft,
                        boolean fbottom,
                        boolean fright)

### VisualMargin

    public VisualMargin(boolean ftop,
                        boolean fleft,
                        boolean fbottom,
                        boolean fright)

### VisualMargin

    public VisualMargin(java.awt.Insets layoutMargin)

  Creates a new VisualMargin.

  Parameters:
    `layoutMargin` - Defines the margin from the clip bounds of the component to its visual bounds. The margin has usually negative values!

Method Detail

### setPropertyName

    public void setPropertyName(java.lang.String propertyName)

  The UIManager Property to be used for the default margin.

### setFixed

    public void setFixed(boolean top,
                         boolean left,
                         boolean bottom,
                         boolean right)

### getVisualMargin

    public java.awt.Insets getVisualMargin(java.awt.Component c)

### getBorderInsets

    public java.awt.Insets getBorderInsets(java.awt.Component c)

  Specified by:
    `getBorderInsets` in interface `javax.swing.border.Border`
  Overrides:
    `getBorderInsets` in class `javax.swing.border.AbstractBorder`

### getBorderInsets

    public java.awt.Insets getBorderInsets(java.awt.Component c,
                                           java.awt.Insets insets)

  Reinitializes the insets parameter with this Border's current Insets.

  Overrides:
    `getBorderInsets` in class `javax.swing.border.AbstractBorder`
  Parameters:
    `c` - the component for which this border insets value applies
    `insets` - the object to be reinitialized
  Returns:
    the `insets` object

### getVisualMargin

    protected java.awt.Insets getVisualMargin(java.awt.Component c,
                                              java.awt.Insets insets)

  Reinitializes the insets parameter with this Border's current Insets.

  Parameters:
    `c` - the component for which this border insets value applies
    `insets` - the object to be reinitialized
  Returns:
    the `insets` object

Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD