home *** CD-ROM | disk | FTP | other *** search
Java Source | 1996-08-14 | 4.0 KB | 132 lines |
- /*---------------------------------------------------------------------------
-
- Written by the Personal Journal developers of Dow Jones & Company, Inc.
-
- Dow Jones makes no representations or warranties about
- the suitability of this software, either express or
- implied, including but not limited to the implied warranties
- of merchantability, fitness for a particular purpose,
- or non-infringement. Dow Jones will not be liable for
- any damages suffered by a user as a result of using,
- modifying or distributing this software or its derivatives.
-
-
- @(#)Notebook.java 0.00 01-Jan-96
-
- A UI component that holds and displays pages.
-
-
- Authors:
-
- rphall Rick Hall
-
-
- Version Ident:
-
- $Header$
-
-
- History:
-
- 0.00 01-Jan-96 rphall Initial Creation
-
- ---------------------------------------------------------------------------*/
-
- package pj.awt;
-
- import pj.awt.Divider;
- import pj.awt.Page;
-
- import java.lang.String;
-
- import collections.ImplementationError;
-
- /**
- * A UI component that holds and displays pages and dividers.
- * Pages and dividers are maintained in the sequence that they are
- * added to the notebook. Pages and dividers may be displayed in sequence
- * by first, next, last, and previous operations. Pages and dividers may be
- * displayed nonsequentially by using a page name to show a particular
- * page or divider.
- * <P>
- * A notebook is responsible for defining the difference between a divider
- * and a page. Typically, dividers will be associated with a visual tab
- * whereas pages will be untabbed.
- *
- * @see pj.awt.Divider
- * @see pj.awt.Page
- * @version 0.00 01-Jan-96
- * @author rphall
- */
- public interface Notebook
- {
-
- // --- Public operations
-
- /**
- * Append a page as the last page in a notebook.
- * If name specifies a page that is a divider, a notebook should
- * guarentee that the divider will appear as "tabbed" in the
- * notebook.
- *
- * @param page The page to be added.
- */
- public void appendPage(Page page);
-
-
-
- /**
- * @return The count of pages in this notebook.
- */
- public int countPages();
-
-
-
- /**
- * Make the first page topmost in a stack of pages.
- * If the first page is a divider, a notebook should
- * guarentee that the tab associated with the divider appears selected.
- * If the notebook contains no pages, this operation does nothing.
- */
- public void firstPage();
-
- /**
- * Make the next page (after the currently visible page)
- * topmost in a stack of pages.
- * If the next page is a divider, a notebook should
- * guarentee that the tab associated with the divider appears selected.
- * If the last page is already displayed, this operation does nothing.
- */
- public void nextPage();
-
- /**
- * Make the last page topmost in a stack of pages.
- * If last page is a divider, a notebook should
- * guarentee that the tab associated with the divider appears selected.
- * If the notebook contains no pages, this operation does nothing.
- */
- public void lastPage();
-
- /**
- * Make the previous page (before the currently visible page)
- * topmost in a stack of pages.
- * If the previous page is a divider, a notebook should
- * guarentee that the tab associated with the divider appears selected.
- * If the first page is already displayed, this operation does nothing.
- */
- public void previousPage();
-
-
-
- /**
- * Display a page as topmost in a stack of other pages.
- * If name specifies a page that is a divider, a notebook should
- * guarentee that the tab associated with the divider appears selected.
- * If no page exists with the specified name, this operation
- * does nothing.
- * @param name The name of the page to display.
- */
- public void page(String name);
-
- } // Notebook
-