org.crosswire.bibledesktop.book

## Class BibleComboBoxModel

- java.lang.Object
- - javax.swing.AbstractListModel
  - - org.crosswire.bibledesktop.book.BibleComboBoxModel

- All Implemented Interfaces:
    Serializable, ComboBoxModel, ListModel

      public class BibleComboBoxModel
      extends AbstractListModel
      implements ComboBoxModel

  Author:
    DM Smith
  See Also:
    `for license details.`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `BibleComboBoxModel.Level` The level of the book combo.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected BibleComboBoxModel.Level` | `level` Are we a book, chapter or verse selector
    `private static org.slf4j.Logger` | `log` The log stream
    `private Object` | `selected` What is currently selected?
    `private static long` | `serialVersionUID` Serialization ID
    `private BibleComboBoxModelSet` | `set` Shared settings
    `private org.crosswire.jsword.versification.Versification` | `v11n`

    - ### Fields inherited from class javax.swing.AbstractListModel

      `listenerList`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `BibleComboBoxModel(BibleComboBoxModelSet set, BibleComboBoxModel.Level level)` Simple ctor for choosing verses

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `fireContentsChanged(Object source, int index0, int index1)`
    `Object` | `getElementAt(int index)`
    `Object` | `getSelectedItem()`
    `int` | `getSize()`
    `private void` | `readObject(ObjectInputStream is)` Serialization support.
    `void` | `setBook(org.crosswire.jsword.versification.BibleBook book)` Accessor for the book
    `void` | `setChapter(int chapter)` Accessor for the chapter
    `void` | `setSelectedItem(Object selected)`
    `void` | `setVerse(int verse)` Accessor for the chapter

    - ### Methods inherited from class javax.swing.AbstractListModel

      `addListDataListener, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener`

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

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

    - ### Methods inherited from interface javax.swing.ListModel

      `addListDataListener, removeListDataListener`

- - ### Field Detail

    - #### v11n

          private transient org.crosswire.jsword.versification.Versification v11n

    - #### set

          private transient BibleComboBoxModelSet set

      Shared settings

    - #### selected

          private transient Object selected

      What is currently selected?

    - #### level

          protected BibleComboBoxModel.Level level

      Are we a book, chapter or verse selector

    - #### log

          private static final org.slf4j.Logger log

      The log stream

    - #### serialVersionUID

          private static final long serialVersionUID

      Serialization ID
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### BibleComboBoxModel

          protected BibleComboBoxModel(BibleComboBoxModelSet set,
                            BibleComboBoxModel.Level level)

      Simple ctor for choosing verses

  - ### Method Detail

    - #### setSelectedItem

          public void setSelectedItem(Object selected)

      Specified by:
        `setSelectedItem` in interface `ComboBoxModel`

    - #### getSelectedItem

          public Object getSelectedItem()

      Specified by:
        `getSelectedItem` in interface `ComboBoxModel`

    - #### getSize

          public int getSize()

      Specified by:
        `getSize` in interface `ListModel`

    - #### getElementAt

          public Object getElementAt(int index)

      Specified by:
        `getElementAt` in interface `ListModel`

    - #### setBook

          public void setBook(org.crosswire.jsword.versification.BibleBook book)

      Accessor for the book

    - #### setChapter

          public void setChapter(int chapter)

      Accessor for the chapter

    - #### setVerse

          public void setVerse(int verse)

      Accessor for the chapter

    - #### fireContentsChanged

          protected void fireContentsChanged(Object source,
                                 int index0,
                                 int index1)

      Overrides:
        `fireContentsChanged` in class `AbstractListModel`

    - #### readObject

          private void readObject(ObjectInputStream is)
                           throws IOException,
                                  ClassNotFoundException

      Serialization support.
      Parameters:
        `is` -
      Throws:
        `IOException`
        `ClassNotFoundException`