FontPolicies (JGoodies Looks 2.6 API)
Date: 2015-01-03

com.jgoodies.looks

## Class FontPolicies

- java.lang.Object
- - com.jgoodies.looks.FontPolicies

-     public final class FontPolicies
      extends Object

  Provides predefined FontPolicy implementations.

  Note: The available policies work well on Windows. On other platforms the fonts specified by the runtime environment are chosen. I plan to provide more logic or options for other platforms, for example that a Linux system checks for a Tahoma or Segoe UI.

  TODO: Add a check for a custom font policy set in the System properties.

  TODO: Add policies that emulate different Windows setups: default XP on 96dpi with normal fonts ("XP-normal-96"), Vista on 120dpi with large fonts ("Vista-large-120"), etc.

  Since:
    2.0
  Version:
    $Revision: 1.14 $
  Author:
    Karsten Lentzsch
  See Also:
    `FontPolicy`, `FontSet`, `FontSets`, `Fonts`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static FontPolicy` | `createFixedPolicy(FontSet fontSet)` Returns a font policy that in turn always returns the specified FontSet.
    `static FontPolicy` | `customSettingsPolicy(FontPolicy defaultPolicy)` Returns a font policy that checks for a custom FontPolicy and a custom FontSet specified in the System settings or UIManager.
    `static FontPolicy` | `getDefaultPlasticOnWindowsPolicy()` Returns the default font policy for Plastic on the Windows platform.
    `static FontPolicy` | `getDefaultPlasticPolicy()` Returns the default Plastic FontPolicy that may vary with the platform and environment.
    `static FontPolicy` | `getDefaultWindowsPolicy()` Returns the default font policy for the Windows platform.
    `static FontPolicy` | `getLogicalFontsPolicy()` Returns a font policy that returns the logical fonts as specified by the Java runtime environment.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### createFixedPolicy

          public static FontPolicy createFixedPolicy(FontSet fontSet)

      Returns a font policy that in turn always returns the specified FontSet. The FontSet will be fixed, but the FontSet itself may return different fonts in different environments.
      Parameters:
        `fontSet` - the FontSet to be return by this policy
      Returns:
        a font policy that returns the specified FontSet.

    - #### customSettingsPolicy

          public static FontPolicy customSettingsPolicy(FontPolicy defaultPolicy)

      Returns a font policy that checks for a custom FontPolicy and a custom FontSet specified in the System settings or UIManager. If no custom settings are available, the given default policy will be used to look up the FontSet.
      Parameters:
        `defaultPolicy` - the policy used if there are no custom settings
      Returns:
        a FontPolicy that checks for custom settings before the default policy is returned.

    - #### getDefaultPlasticOnWindowsPolicy

          public static FontPolicy getDefaultPlasticOnWindowsPolicy()

      Returns the default font policy for Plastic on the Windows platform. It differs from the default Windows policy in that it uses a bold font for TitledBorders, titles, and titled separators.
      Returns:
        the default font policy for Plastic on the Windows platform.

    - #### getDefaultPlasticPolicy

          public static FontPolicy getDefaultPlasticPolicy()

      Returns the default Plastic FontPolicy that may vary with the platform and environment. On Windows, the PlasticOnWindowsPolicy is returned that is much like the defualt WindowsPolicy but uses a bold title font. On other Platforms, the logical fonts policy is returned that uses the logical fonts as specified by the Java runtime environment.
      Returns:
        a Windows-like policy on Windows, a logical fonts policy on all other platforms

    - #### getDefaultWindowsPolicy

          public static FontPolicy getDefaultWindowsPolicy()

      Returns the default font policy for the Windows platform. It aims to return a FontSet that is close to the native guidelines and useful for the current Java environment.

      The control font scales with the platform screen resolution (96dpi/101dpi/120dpi/144dpi/...) and honors the desktop font settings (normal/large/extra large).

      Returns:
        the default font policy for the Windows platform.

    - #### getLogicalFontsPolicy

          public static FontPolicy getLogicalFontsPolicy()

      Returns a font policy that returns the logical fonts as specified by the Java runtime environment.
      Returns:
        a font policy that returns logical fonts.

Copyright © 2001-2014 JGoodies Software GmbH. All Rights Reserved.