Package com.jgoodies.forms.util
Class AbstractUnitConverter
- java.lang.Object
-
- com.jgoodies.forms.util.AbstractUnitConverter
-
- All Implemented Interfaces:
UnitConverter
- Direct Known Subclasses:
DefaultUnitConverter
public abstract class AbstractUnitConverter extends java.lang.Object implements UnitConverter
An abstract implementation of theUnitConverter
interface that minimizes the effort required to convert font-dependent sizes to pixels.- Version:
- $Revision$
- Author:
- Karsten Lentzsch
- See Also:
DefaultUnitConverter
,Size
,Sizes
-
-
Constructor Summary
Constructors Constructor Description AbstractUnitConverter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected int
centimeterAsPixel(double cm, int dpi)
Converts Centimeters and returns pixels using the specified resolution.int
centimeterAsPixel(double cm, java.awt.Component component)
Converts Centimeters and returns pixels using the resolution of the given component's graphics object.protected double
computeAverageCharWidth(java.awt.FontMetrics metrics, java.lang.String testString)
Computes and returns the average character width of the specified test string using the given FontMetrics.protected int
dialogUnitXAsPixel(int dluX, double dialogBaseUnitsX)
Converts horizontal dialog units and returns pixels.int
dialogUnitXAsPixel(int dluX, java.awt.Component c)
Converts horizontal dialog units and returns pixels.protected int
dialogUnitYAsPixel(int dluY, double dialogBaseUnitsY)
Converts vertical dialog units and returns pixels.int
dialogUnitYAsPixel(int dluY, java.awt.Component c)
Converts vertical dialog units and returns pixels.protected int
getDefaultScreenResolution()
Computes and returns the default resolution.protected abstract double
getDialogBaseUnitsX(java.awt.Component component)
Gets and returns the horizontal dialog base units.protected abstract double
getDialogBaseUnitsY(java.awt.Component component)
Gets and returns the vertical dialog base units.protected int
getScreenResolution(java.awt.Component c)
Returns the components screen resolution or the default screen resolution if the component is null or has no toolkit assigned yet.protected int
inchAsPixel(double in, int dpi)
Converts Inches and returns pixels using the specified resolution.int
inchAsPixel(double in, java.awt.Component component)
Converts Inches and returns pixels using the specified resolution.protected int
millimeterAsPixel(double mm, int dpi)
Converts Millimeters and returns pixels using the specified resolution.int
millimeterAsPixel(double mm, java.awt.Component component)
Converts Millimeters and returns pixels using the resolution of the given component's graphics object.protected int
pointAsPixel(int pt, int dpi)
Converts DTP Points and returns pixels using the specified resolution.int
pointAsPixel(int pt, java.awt.Component component)
Converts DTP Points and returns pixels using the resolution of the given component's graphics object.
-
-
-
Method Detail
-
inchAsPixel
public int inchAsPixel(double in, java.awt.Component component)
Converts Inches and returns pixels using the specified resolution.- Specified by:
inchAsPixel
in interfaceUnitConverter
- Parameters:
in
- the Inchescomponent
- the component that provides the graphics object- Returns:
- the given Inches as pixels
-
millimeterAsPixel
public int millimeterAsPixel(double mm, java.awt.Component component)
Converts Millimeters and returns pixels using the resolution of the given component's graphics object.- Specified by:
millimeterAsPixel
in interfaceUnitConverter
- Parameters:
mm
- Millimeterscomponent
- the component that provides the graphics object- Returns:
- the given Millimeters as pixels
-
centimeterAsPixel
public int centimeterAsPixel(double cm, java.awt.Component component)
Converts Centimeters and returns pixels using the resolution of the given component's graphics object.- Specified by:
centimeterAsPixel
in interfaceUnitConverter
- Parameters:
cm
- Centimeterscomponent
- the component that provides the graphics object- Returns:
- the given Centimeters as pixels
-
pointAsPixel
public int pointAsPixel(int pt, java.awt.Component component)
Converts DTP Points and returns pixels using the resolution of the given component's graphics object.- Specified by:
pointAsPixel
in interfaceUnitConverter
- Parameters:
pt
- DTP Pointscomponent
- the component that provides the graphics object- Returns:
- the given Points as pixels
-
dialogUnitXAsPixel
public int dialogUnitXAsPixel(int dluX, java.awt.Component c)
Converts horizontal dialog units and returns pixels. Honors the resolution, dialog font size, platform, and l&f.- Specified by:
dialogUnitXAsPixel
in interfaceUnitConverter
- Parameters:
dluX
- the horizontal dialog unitsc
- a Component that provides the font and graphics- Returns:
- the given horizontal dialog units as pixels
-
dialogUnitYAsPixel
public int dialogUnitYAsPixel(int dluY, java.awt.Component c)
Converts vertical dialog units and returns pixels. Honors the resolution, dialog font size, platform, and l&f.- Specified by:
dialogUnitYAsPixel
in interfaceUnitConverter
- Parameters:
dluY
- the vertical dialog unitsc
- a Component that provides the font and graphics- Returns:
- the given vertical dialog units as pixels
-
getDialogBaseUnitsX
protected abstract double getDialogBaseUnitsX(java.awt.Component component)
Gets and returns the horizontal dialog base units. Implementations are encouraged to cache previously computed dialog base units.- Parameters:
component
- a Component that provides the font and graphics- Returns:
- the horizontal dialog base units
-
getDialogBaseUnitsY
protected abstract double getDialogBaseUnitsY(java.awt.Component component)
Gets and returns the vertical dialog base units. Implementations are encouraged to cache previously computed dialog base units.- Parameters:
component
- a Component that provides the font and graphics- Returns:
- the vertical dialog base units
-
inchAsPixel
protected final int inchAsPixel(double in, int dpi)
Converts Inches and returns pixels using the specified resolution.- Parameters:
in
- the Inchesdpi
- the resolution- Returns:
- the given Inches as pixels
-
millimeterAsPixel
protected final int millimeterAsPixel(double mm, int dpi)
Converts Millimeters and returns pixels using the specified resolution.- Parameters:
mm
- Millimetersdpi
- the resolution- Returns:
- the given Millimeters as pixels
-
centimeterAsPixel
protected final int centimeterAsPixel(double cm, int dpi)
Converts Centimeters and returns pixels using the specified resolution.- Parameters:
cm
- Centimetersdpi
- the resolution- Returns:
- the given Centimeters as pixels
-
pointAsPixel
protected final int pointAsPixel(int pt, int dpi)
Converts DTP Points and returns pixels using the specified resolution.- Parameters:
pt
- DTP Pointsdpi
- the resolution in dpi- Returns:
- the given Points as pixels
-
dialogUnitXAsPixel
protected int dialogUnitXAsPixel(int dluX, double dialogBaseUnitsX)
Converts horizontal dialog units and returns pixels.- Parameters:
dluX
- the horizontal dialog unitsdialogBaseUnitsX
- the horizontal dialog base units- Returns:
- the given dialog base units as pixels
-
dialogUnitYAsPixel
protected int dialogUnitYAsPixel(int dluY, double dialogBaseUnitsY)
Converts vertical dialog units and returns pixels.- Parameters:
dluY
- the vertical dialog unitsdialogBaseUnitsY
- the vertical dialog base units- Returns:
- the given dialog base units as pixels
-
computeAverageCharWidth
protected double computeAverageCharWidth(java.awt.FontMetrics metrics, java.lang.String testString)
Computes and returns the average character width of the specified test string using the given FontMetrics. The test string shall represent an "average" text.- Parameters:
metrics
- used to compute the test string's widthtestString
- the string that shall represent an "average" text- Returns:
- the test string's average character width.
-
getScreenResolution
protected int getScreenResolution(java.awt.Component c)
Returns the components screen resolution or the default screen resolution if the component is null or has no toolkit assigned yet.- Parameters:
c
- the component to ask for a toolkit- Returns:
- the component's screen resolution
-
getDefaultScreenResolution
protected int getDefaultScreenResolution()
Computes and returns the default resolution.- Returns:
- the default screen resolution
-
-