org.crosswire.bibledesktop.book.install

## Class BookFont

- java.lang.Object
- - org.crosswire.common.swing.FontStore
  - - org.crosswire.bibledesktop.book.install.BookFont

-     public final class BookFont
      extends FontStore

  Author:
    DM Smith
  See Also:
    `for license details.`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private static BookFont` | `fonts`

    - ### Fields inherited from class org.crosswire.common.swing.FontStore

      `DEFAULT_FONT, DEFAULT_KEY, LANG_KEY_PREFIX`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `private` | `BookFont()` Create a persistent Book Font Store.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Font` | `getFont(org.crosswire.jsword.book.Book book)` Get the most appropriate font for the book.
    `Font` | `getFont(org.crosswire.common.util.Language language)`
    `static BookFont` | `instance()`
    `boolean` | `isSet(org.crosswire.jsword.book.Book book, org.crosswire.common.util.Language lang)` Is a font for this book / language set in the properties file?
    `void` | `resetFont(org.crosswire.jsword.book.Book book, org.crosswire.common.util.Language lang)` Remove the entry for this book / language in the properties file and use the default font
    `void` | `setFont(org.crosswire.jsword.book.Book book, Font font)` Set the font for the book.

    - ### Methods inherited from class org.crosswire.common.swing.FontStore

      `getDefaultFont, getFont, getFontMap, getFontStore, getStoreName, isLoaded, load, obtainFont, resetFont, setDefaultFont, setFont, setFont, setFontMap, setFontStore, setLoaded, setStoreName, store`

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

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

- - ### Field Detail

    - #### fonts

          private static BookFont fonts

  - ### Constructor Detail

    - #### BookFont

          private BookFont()

      Create a persistent Book Font Store.

  - ### Method Detail

    - #### instance

          public static BookFont instance()

    - #### setFont

          public void setFont(org.crosswire.jsword.book.Book book,
                     Font font)

      Set the font for the book.
      Parameters:
        `book` - the book
        `font` - the font

    - #### getFont

          public Font getFont(org.crosswire.jsword.book.Book book)

      Get the most appropriate font for the book.
      Parameters:
        `book` - the book
      Returns:
        the font

    - #### getFont

          public Font getFont(org.crosswire.common.util.Language language)

    - #### isSet

          public boolean isSet(org.crosswire.jsword.book.Book book,
                      org.crosswire.common.util.Language lang)

      Is a font for this book / language set in the properties file?
      Parameters:
        `book` - the book to test
        `lang` - the language to test
      Returns:
        `true` a font property was set, `false` otherwise

    - #### resetFont

          public void resetFont(org.crosswire.jsword.book.Book book,
                       org.crosswire.common.util.Language lang)

      Remove the entry for this book / language in the properties file and use the default font