## org.gjt.sp.jedit.gui
Class HistoryModel

    java.lang.Object
      javax.swing.AbstractListModel
          javax.swing.DefaultListModel
              org.gjt.sp.jedit.gui.HistoryModel

All Implemented Interfaces:
  java.io.Serializable, javax.swing.ListModel, MutableListModel

    public class HistoryModel

extends javax.swing.DefaultListModel
implements MutableListModel

A history list. One history list can be used by several history text fields. Note that the list model implementation is incomplete; no events are fired when the history model changes. The max size of the history is defined globally via setDefaultMax(), see jEdit.java for instance. It may be locally overriden by calling setMax() on a HistoryModel instance.

See Also:
  Serialized Form

Field Summary

Fields inherited from class javax.swing.AbstractListModel
`listenerList`

Constructor Summary
`HistoryModel(java.lang.String name)` Creates a new history list.

Method Summary
`void` `addItem(java.lang.String text)` Adds an item to the end of this history list, trimming the list to the maximum number of items if necessary.
`static int` `getDefaultMax()` Gets the default size of all HistoryModels.
`static int` `getDefaultMaxSize()` Gets the default maximum size (in characters) for all history models.
`java.lang.String` `getItem(int index)` Returns an item from the history list.
`int` `getMax()`
`int` `getMaxSize()`
`static HistoryModel` `getModel(java.lang.String name)` Returns a named model.
`java.lang.String` `getName()` Returns the name of this history list.
`void` `insertElementAt(java.lang.Object obj, int index)`
`static void` `loadHistory()`
`void` `removeAllElements()`
`boolean` `removeElement(java.lang.Object obj)`
`static void` `saveHistory()`
`static void` `setDefaultMax(int max)` Sets the default size of all HistoryModels.
`static void` `setDefaultMaxSize(int newMax)` Sets the default max size (in characters) for all history models.
`void` `setMax(int max)` sets the maximum size of this history
`void` `setMaxSize(int max)` Sets the maximum size (in characters) for this history model
`static void` `setSaver(HistoryModelSaver saver)`

Methods inherited from class javax.swing.DefaultListModel
`add, addElement, capacity, clear, contains, copyInto, elementAt, elements, ensureCapacity, firstElement, get, getElementAt, getSize, indexOf, indexOf, isEmpty, lastElement, lastIndexOf, lastIndexOf, remove, removeElementAt, removeRange, set, setElementAt, setSize, size, toArray, toString, trimToSize`

Methods inherited from class javax.swing.AbstractListModel
`addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface javax.swing.ListModel
`addListDataListener, getElementAt, getSize, removeListDataListener`

Constructor Detail

### HistoryModel

    public HistoryModel(java.lang.String name)

  Creates a new history list. Calling this is normally not necessary.

Method Detail

### addItem

    public void addItem(java.lang.String text)

  Adds an item to the end of this history list, trimming the list to the maximum number of items if necessary.

  Parameters:
    `text` - The item

### insertElementAt

    public void insertElementAt(java.lang.Object obj,
                                int index)

  Specified by:
    `insertElementAt` in interface `MutableListModel`
  Overrides:
    `insertElementAt` in class `javax.swing.DefaultListModel`

### getItem

    public java.lang.String getItem(int index)

  Returns an item from the history list.

  Parameters:
    `index` - The index

### removeElement

    public boolean removeElement(java.lang.Object obj)

  Specified by:
    `removeElement` in interface `MutableListModel`
  Overrides:
    `removeElement` in class `javax.swing.DefaultListModel`

### removeAllElements

    public void removeAllElements()

  Overrides:
    `removeAllElements` in class `javax.swing.DefaultListModel`

### getName

    public java.lang.String getName()

  Returns the name of this history list. This can be passed to the HistoryTextField constructor.

### getModel

    public static HistoryModel getModel(java.lang.String name)

  Returns a named model. If the specified model does not already exist, it will be created.

  Parameters:
    `name` - The model name

### loadHistory

    public static void loadHistory()

### saveHistory

    public static void saveHistory()

### setMax

    public void setMax(int max)

  sets the maximum size of this history

  Parameters:
    `max` - the new maximum size of this history of -1 to restore default

### getMax

    public int getMax()

  Returns:
    maximum size of this history or -1 is it's the default size

### setMaxSize

    public void setMaxSize(int max)

  Sets the maximum size (in characters) for this history model

  Parameters:
    `max` - the new maximum size for the history model, or -1 to restore the default
  Since:
    jEdit 4.5pre1

### getMaxSize

    public int getMaxSize()

  Returns:
    the maximum size (in characters) for this history model, or -1 for the default
  Since:
    jEdit 4.5pre1

### setDefaultMax

    public static void setDefaultMax(int max)

  Sets the default size of all HistoryModels. Affects the VFS path history, the hypersearch history, etc.. To change the max size of one history, call setMax() instead.

### getDefaultMax

    public static int getDefaultMax()

  Gets the default size of all HistoryModels.

  Returns:
    default size limit for HistoryModels

### setDefaultMaxSize

    public static void setDefaultMaxSize(int newMax)

  Sets the default max size (in characters) for all history models. To change the max size of one history, call `setMaxSize(int)` instead.

  Since:
    jEdit 4.5pre1

### getDefaultMaxSize

    public static int getDefaultMaxSize()

  Gets the default maximum size (in characters) for all history models.

  Since:
    jEdit 4.5pre1

### setSaver

    public static void setSaver(HistoryModelSaver saver)