net.miginfocom.layout
Class PlatformDefaults

java.lang.Object
  extended by net.miginfocom.layout.PlatformDefaults

public final class PlatformDefaults
extends java.lang.Object

Currently handles Windows and Mac OS X spacing.


Field Summary
static int MAC_OSX
           
static int WINDOWS_XP
           
 
Method Summary
static java.lang.String getButtonOrder()
          Returns the order for the typical buttons in a standard button bar.
static int getCurrentPlatform()
          Returns the platform that the JRE is running on currently.
static UnitValue getDialogInsets(int side)
          Returns the default dialog inset depending of the current platform.
static InCellGapProvider getGapProvider()
          Returns the current gap privider or null if none is set and "related" should always be used.
static BoundSize getGridGapX()
          Returns the platform recommended inter-cell gap in the horizontal (x) dimension..
static BoundSize getGridGapY()
          Returns the platform recommended inter-cell gap in the vertical (x) dimension..
static float getLabelAlignPercentage()
          Returns the percentage used for alignment for labels (0 is left, 50 is center and 100 is right).
static UnitValue getMinimumButtonWidth()
          Returns the recommended minimum button width depending on the current set platform.
static int getModCount()
          Returns how many times the defaults has been changed.
static UnitValue getPanelInsets(int side)
          Returns the default panel inset depending of the current platform.
static int getPlatform()
          Returns the current platform
static UnitValue getUnitValueX(java.lang.String unit)
          Returns the unit value associated with the unit.
static UnitValue getUnitValueY(java.lang.String unit)
          Returns the unit value associated with the unit.
 void invalidate()
          Tells all layout manager instances to revalidate and recalculated everything.
static void setButtonOrder(java.lang.String order)
          Sets the order for the typical buttons in a standard button bar.
static void setDialogInsets(UnitValue top, UnitValue left, UnitValue bottom, UnitValue right)
          Sets the default insets for a dialog.
static void setGapProvider(InCellGapProvider provider)
          Sets the current gap privider or null if none is set and "related" should always be used.
static void setGridCellGap(UnitValue x, UnitValue y)
          Sets gap between two cells in the grid.
static void setIndentGap(UnitValue x, UnitValue y)
          Sets gap value for components that are "intended".
static void setMinimumButtonWidth(UnitValue width)
          Sets the recommended minimum button width.
static void setPanelInsets(UnitValue top, UnitValue left, UnitValue bottom, UnitValue right)
          Sets the default insets for a dialog.
static void setParagraphGap(UnitValue x, UnitValue y)
          Sets paragraph gap value for components.
static void setPlatform(int plaf)
          Set the defaults to the default for the platform
static void setRelatedGap(UnitValue x, UnitValue y)
          Sets gap value for components that are "related".
static void setUnitValue(java.lang.String[] unitStrings, UnitValue x, UnitValue y)
          Sets the unit value assiciated with a unit string.
static void setUnrelatedGap(UnitValue x, UnitValue y)
          Sets gap value for components that are "unrelated".
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

WINDOWS_XP

public static final int WINDOWS_XP
See Also:
Constant Field Values

MAC_OSX

public static final int MAC_OSX
See Also:
Constant Field Values
Method Detail

getCurrentPlatform

public static int getCurrentPlatform()
Returns the platform that the JRE is running on currently.

Returns:
The platform that the JRE is running on currently. E.g. MAC_OSX or WINDOWS_XP.

setPlatform

public static void setPlatform(int plaf)
Set the defaults to the default for the platform

Parameters:
plaf - The platform. PlatformDefaults.WINDOWS or PlatformDefaults.MAC_OSX

getPlatform

public static int getPlatform()
Returns the current platform

Returns:
PlatformDefaults.WINDOWS or PlatformDefaults.MAC_OSX

setRelatedGap

public static void setRelatedGap(UnitValue x,
                                 UnitValue y)
Sets gap value for components that are "related".

Parameters:
x - The value that will be transformed to pixels. If null the current value will not change.
y - The value that will be transformed to pixels. If null the current value will not change.

setUnrelatedGap

public static void setUnrelatedGap(UnitValue x,
                                   UnitValue y)
Sets gap value for components that are "unrelated".

Parameters:
x - The value that will be transformed to pixels. If null the current value will not change.
y - The value that will be transformed to pixels. If null the current value will not change.

setParagraphGap

public static void setParagraphGap(UnitValue x,
                                   UnitValue y)
Sets paragraph gap value for components.

Parameters:
x - The value that will be transformed to pixels. If null the current value will not change.
y - The value that will be transformed to pixels. If null the current value will not change.

setIndentGap

public static void setIndentGap(UnitValue x,
                                UnitValue y)
Sets gap value for components that are "intended".

Parameters:
x - The value that will be transformed to pixels. If null the current value will not change.
y - The value that will be transformed to pixels. If null the current value will not change.

setGridCellGap

public static void setGridCellGap(UnitValue x,
                                  UnitValue y)
Sets gap between two cells in the grid. Note that this is not a gap between component IN a cell, that has to be set on the component constraints. The value will be the min and preferred size of the gap.

Parameters:
x - The value that will be transformed to pixels. If null the current value will not change.
y - The value that will be transformed to pixels. If null the current value will not change.

setMinimumButtonWidth

public static void setMinimumButtonWidth(UnitValue width)
Sets the recommended minimum button width.

Parameters:
width - The recommended minimum button width.

getMinimumButtonWidth

public static UnitValue getMinimumButtonWidth()
Returns the recommended minimum button width depending on the current set platform.

Returns:
The recommended minimum button width depending on the current set platform.

getUnitValueX

public static UnitValue getUnitValueX(java.lang.String unit)
Returns the unit value associated with the unit. (E.i. "related" or "indent"). Must be lower case.

Parameters:
unit - The unit string.
Returns:
Tthe unit value associated with the unit. null for unrecognized units.

getUnitValueY

public static UnitValue getUnitValueY(java.lang.String unit)
Returns the unit value associated with the unit. (E.i. "related" or "indent"). Must be lower case.

Parameters:
unit - The unit string.
Returns:
Tthe unit value associated with the unit. null for unrecognized units.

setUnitValue

public static final void setUnitValue(java.lang.String[] unitStrings,
                                      UnitValue x,
                                      UnitValue y)
Sets the unit value assiciated with a unit string. This may be used to store values for new unit strings or modify old. Note that if a built in unit (such as "related") is modified all versions of it must be set (I.e. "r", "rel" and "related"). The build in values will be reset to the default ones if the platform is re-set.

Parameters:
unitStrings - The unit strings. E.g. "mu", "myunit". Will be converted to lower case and trimmed. Not null.
x - The value for the horizontal dimension. If null the value is not changed.
y - The value for the vertical dimension. Might be same object as for x. If null the value is not changed.

getButtonOrder

public static final java.lang.String getButtonOrder()
Returns the order for the typical buttons in a standard button bar. It is one letter per button type.

Returns:
The button order.
See Also:
setButtonOrder(String)

setButtonOrder

public static final void setButtonOrder(java.lang.String order)
Sets the order for the typical buttons in a standard button bar. It is one letter per button type.

Letter in upper case will get the minimum button width that the getMinimumButtonWidth() specifies and letters in lower case will get the width the corrent look&feel specifies.

Gaps will never be added to before the first component or after the last component. However, '+' (push) will be applied before and after as well, but with a minimum size of 0 if first/last so there will not be a gap before or after.

If gaps are explicitly set on buttons they will never be reduced, but they may be increased.

These are the characters that can be used:

Even though the style tags are normally applied to buttons this works with all components.

The normal style for MAC OS X is "L_HE+U+FBI_NYCOA_R" and for Windows is "L_E+U+FBI_YNOCAH_R"

Parameters:
order - The new button order for the current platform.

getGridGapX

public static BoundSize getGridGapX()
Returns the platform recommended inter-cell gap in the horizontal (x) dimension..

Returns:
The platform recommended inter-cell gap in the horizontal (x) dimension..

getGridGapY

public static BoundSize getGridGapY()
Returns the platform recommended inter-cell gap in the vertical (x) dimension..

Returns:
The platform recommended inter-cell gap in the vertical (x) dimension..

getDialogInsets

public static UnitValue getDialogInsets(int side)
Returns the default dialog inset depending of the current platform.

Parameters:
side - top == 0, left == 1, bottom = 2, right = 3.
Returns:
The inset. Never null.

setDialogInsets

public static void setDialogInsets(UnitValue top,
                                   UnitValue left,
                                   UnitValue bottom,
                                   UnitValue right)
Sets the default insets for a dialog. Values that are null will not be changed.

Parameters:
top - The top inset. May be null.
left - The left inset. May be null.
bottom - The bottom inset. May be null.
right - The right inset. May be null.

getPanelInsets

public static UnitValue getPanelInsets(int side)
Returns the default panel inset depending of the current platform.

Parameters:
side - top == 0, left == 1, bottom = 2, right = 3.
Returns:
The inset. Never null.

setPanelInsets

public static void setPanelInsets(UnitValue top,
                                  UnitValue left,
                                  UnitValue bottom,
                                  UnitValue right)
Sets the default insets for a dialog. Values that are null will not be changed.

Parameters:
top - The top inset. May be null.
left - The left inset. May be null.
bottom - The bottom inset. May be null.
right - The right inset. May be null.

getLabelAlignPercentage

public static float getLabelAlignPercentage()
Returns the percentage used for alignment for labels (0 is left, 50 is center and 100 is right).

Returns:
The percentage used for alignment for labels

getGapProvider

public static InCellGapProvider getGapProvider()
Returns the current gap privider or null if none is set and "related" should always be used.

Returns:
The current gap privider or null if none is set and "related" should always be used.

setGapProvider

public static void setGapProvider(InCellGapProvider provider)
Sets the current gap privider or null if none is set and "related" should always be used.

Parameters:
provider - The current gap privider or null if none is set and "related" should always be used.

getModCount

public static int getModCount()
Returns how many times the defaults has been changed. This can be used as a light weight check to see if layout caches needs to be refreshed.

Returns:
How many times the defaults has been changed.

invalidate

public void invalidate()
Tells all layout manager instances to revalidate and recalculated everything.



Copyright © 2006 MiG InfoCom AB. All Rights Reserved.