<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Tue Jun 29 05:55:08 GMT+01:00 1999 -->
<TITLE>
Swing 1.1 API Specification: Class  AbstractListModel
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" ID="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" ID="NavBarCell1Rev"> &nbsp;<FONT ID="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="class-use/AbstractListModel.html"><FONT ID="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Swing 1.1</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" ID="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../javax/swing/AbstractButton.ButtonChangeListener.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../javax/swing/BorderFactory.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" ID="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractListModel.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" ID="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" ID="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
javax.swing</FONT>
<BR>
Class  AbstractListModel</H2>
<PRE>
java.lang.Object
  |
  +--<B>javax.swing.AbstractListModel</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../javax/swing/plaf/basic/BasicDirectoryModel.html">BasicDirectoryModel</A>, <A HREF="../../javax/swing/DefaultComboBoxModel.html">DefaultComboBoxModel</A>, <A HREF="../../javax/swing/DefaultListModel.html">DefaultListModel</A>, <A HREF="../../javax/swing/plaf/metal/MetalFileChooserUI.DirectoryComboBoxModel.html">MetalFileChooserUI.DirectoryComboBoxModel</A>, <A HREF="../../javax/swing/plaf/metal/MetalFileChooserUI.FilterComboBoxModel.html">MetalFileChooserUI.FilterComboBoxModel</A></DD>
</DL>
<HR>
<DL>
<DT>public abstract class <B>AbstractListModel</B><DT>extends java.lang.Object<DT>implements <A HREF="../../javax/swing/ListModel.html">ListModel</A>, java.io.Serializable</DL>

<P>
The Abstract definition for the data model the provides
 a List with its contents.
 <p>
 <strong>Warning:</strong>
 Serialized objects of this class will not be compatible with 
 future Swing releases.  The current serialization support is appropriate
 for short term storage or RMI between applications running the same
 version of Swing.  A future release of Swing will provide support for
 long term persistence.
<P>
<DL>
<DT><B>See Also: </B><DD><A HREF="../../serialized-form.html#javax.swing.AbstractListModel">Serialized Form</A></DL>
<HR>

<P>
<!-- ======== INNER CLASS SUMMARY ======== -->


<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Field Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../javax/swing/event/EventListenerList.html">EventListenerList</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#listenerList">listenerList</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#AbstractListModel()">AbstractListModel</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#addListDataListener(javax.swing.event.ListDataListener)">addListDataListener</A></B>(<A HREF="../../javax/swing/event/ListDataListener.html">ListDataListener</A>&nbsp;l)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a listener to the list that's notified each time a change
 to the data model occurs.</TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#fireContentsChanged(java.lang.Object, int, int)">fireContentsChanged</A></B>(java.lang.Object&nbsp;source,
                    int&nbsp;index0,
                    int&nbsp;index1)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AbstractListModel subclasses must call this method <b>after</b>
 one or more elements of the list change.</TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#fireIntervalAdded(java.lang.Object, int, int)">fireIntervalAdded</A></B>(java.lang.Object&nbsp;source,
                  int&nbsp;index0,
                  int&nbsp;index1)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AbstractListModel subclasses must call this method <b>after</b>
 one or more elements are added to the model.</TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#fireIntervalRemoved(java.lang.Object, int, int)">fireIntervalRemoved</A></B>(java.lang.Object&nbsp;source,
                    int&nbsp;index0,
                    int&nbsp;index1)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AbstractListModel subclasses must call this method <b>after</b>
 one or more elements are removed from the model.</TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../javax/swing/AbstractListModel.html#removeListDataListener(javax.swing.event.ListDataListener)">removeListDataListener</A></B>(<A HREF="../../javax/swing/event/ListDataListener.html">ListDataListener</A>&nbsp;l)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove a listener from the list that's notified each time a 
 change to the data model occurs.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" ID="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" ID="TableRowColor">
<TD><CODE>clone, 
equals, 
finalize, 
getClass, 
hashCode, 
notify, 
notifyAll, 
toString, 
wait, 
wait, 
wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Field Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="listenerList"><!-- --></A><H3>
listenerList</H3>
<PRE>
protected <A HREF="../../javax/swing/event/EventListenerList.html">EventListenerList</A> <B>listenerList</B></PRE>
<DL>
</DL>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="AbstractListModel()"><!-- --></A><H3>
AbstractListModel</H3>
<PRE>
public <B>AbstractListModel</B>()</PRE>
<DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" ID="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="addListDataListener(javax.swing.event.ListDataListener)"><!-- --></A><H3>
addListDataListener</H3>
<PRE>
public void <B>addListDataListener</B>(<A HREF="../../javax/swing/event/ListDataListener.html">ListDataListener</A>&nbsp;l)</PRE>
<DL>
<DD>Add a listener to the list that's notified each time a change
 to the data model occurs.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../javax/swing/ListModel.html#addListDataListener(javax.swing.event.ListDataListener)">addListDataListener</A> in interface <A HREF="../../javax/swing/ListModel.html">ListModel</A><DT><B>Parameters:</B><DD><CODE>l</CODE> - the ListDataListener</DL>
</DD>
</DL>
<HR>

<A NAME="removeListDataListener(javax.swing.event.ListDataListener)"><!-- --></A><H3>
removeListDataListener</H3>
<PRE>
public void <B>removeListDataListener</B>(<A HREF="../../javax/swing/event/ListDataListener.html">ListDataListener</A>&nbsp;l)</PRE>
<DL>
<DD>Remove a listener from the list that's notified each time a 
 change to the data model occurs.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../javax/swing/ListModel.html#removeListDataListener(javax.swing.event.ListDataListener)">removeListDataListener</A> in interface <A HREF="../../javax/swing/ListModel.html">ListModel</A><DT><B>Parameters:</B><DD><CODE>l</CODE> - the ListDataListener</DL>
</DD>
</DL>
<HR>

<A NAME="fireContentsChanged(java.lang.Object, int, int)"><!-- --></A><H3>
fireContentsChanged</H3>
<PRE>
protected void <B>fireContentsChanged</B>(java.lang.Object&nbsp;source,
                                   int&nbsp;index0,
                                   int&nbsp;index1)</PRE>
<DL>
<DD>AbstractListModel subclasses must call this method <b>after</b>
 one or more elements of the list change.  The changed elements
 are specified by a closed interval index0, index1, i.e. the
 range that includes both index0 and index1.  Note that
 index0 need not be less than or equal to index1.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>source</CODE> - The ListModel that changed, typically "this".<DD><CODE>index0</CODE> - One end of the new interval.<DD><CODE>index1</CODE> - The other end of the new interval.<DT><B>See Also: </B><DD><A HREF="../../javax/swing/event/EventListenerList.html"><CODE>EventListenerList</CODE></A>, 
<A HREF="../../javax/swing/DefaultListModel.html"><CODE>DefaultListModel</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="fireIntervalAdded(java.lang.Object, int, int)"><!-- --></A><H3>
fireIntervalAdded</H3>
<PRE>
protected void <B>fireIntervalAdded</B>(java.lang.Object&nbsp;source,
                                 int&nbsp;index0,
                                 int&nbsp;index1)</PRE>
<DL>
<DD>AbstractListModel subclasses must call this method <b>after</b>
 one or more elements are added to the model.  The new elements
 are specified by a closed interval index0, index1, i.e. the
 range that includes both index0 and index1.  Note that
 index0 need not be less than or equal to index1.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>source</CODE> - The ListModel that changed, typically "this".<DD><CODE>index0</CODE> - One end of the new interval.<DD><CODE>index1</CODE> - The other end of the new interval.<DT><B>See Also: </B><DD><A HREF="../../javax/swing/event/EventListenerList.html"><CODE>EventListenerList</CODE></A>, 
<A HREF="../../javax/swing/DefaultListModel.html"><CODE>DefaultListModel</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="fireIntervalRemoved(java.lang.Object, int, int)"><!-- --></A><H3>
fireIntervalRemoved</H3>
<PRE>
protected void <B>fireIntervalRemoved</B>(java.lang.Object&nbsp;source,
                                   int&nbsp;index0,
                                   int&nbsp;index1)</PRE>
<DL>
<DD>AbstractListModel subclasses must call this method <b>after</b>
 one or more elements are removed from the model.  The new elements
 are specified by a closed interval index0, index1, i.e. the
 range that includes both index0 and index1.  Note that
 index0 need not be less than or equal to index1.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>source</CODE> - The ListModel that changed, typically "this".<DD><CODE>index0</CODE> - One end of the new interval.<DD><CODE>index1</CODE> - The other end of the new interval.<DT><B>See Also: </B><DD><A HREF="../../javax/swing/event/EventListenerList.html"><CODE>EventListenerList</CODE></A>, 
<A HREF="../../javax/swing/DefaultListModel.html"><CODE>DefaultListModel</CODE></A></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" ID="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" ID="NavBarCell1Rev"> &nbsp;<FONT ID="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="class-use/AbstractListModel.html"><FONT ID="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" ID="NavBarCell1">    <A HREF="../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Swing 1.1</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" ID="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../javax/swing/AbstractButton.ButtonChangeListener.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../javax/swing/BorderFactory.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" ID="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractListModel.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" ID="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" ID="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<font size="-1"><a href="http://java.sun.com/cgi-bin/bugreport.cgi">Submit a bug or feature</a><br>Java is a trademark or registered trademark of Sun Microsystems,  Inc. in the US and other countries.<br>Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A.  All Rights Reserved.</font>
</BODY>
</HTML>
