Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| HTML Parser Home Page
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.htmlparser.lexerapplications.thumbelina
Class ThumbelinaFrame

    java.lang.Object
      java.awt.Component
          java.awt.Container
              java.awt.Window
                  java.awt.Frame
                      javax.swing.JFrame
                          org.htmlparser.lexerapplications.thumbelina.ThumbelinaFrame

All Implemented Interfaces:
  Accessible, ActionListener, EventListener, ImageObserver, ItemListener, MenuContainer, PropertyChangeListener, RootPaneContainer, Serializable, WindowConstants, WindowListener

public class ThumbelinaFrame
extends JFrame
implements WindowListener, ActionListener, ItemListener, PropertyChangeListener

Encapsulate a Thumbelina bean and add menu and preferences support. Provides a JFrame base in which to place a Thumbelina bean, and adds a menu system with MRU (Most Recently Used) list. Also provides a Google search capability. Will eventually provide Javahelp too.

See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class javax.swing.JFrame
`JFrame.AccessibleJFrame`

Nested classes inherited from class java.awt.Frame
`Frame.AccessibleAWTFrame`

Nested classes inherited from class java.awt.Window
`Window.AccessibleAWTWindow`

Nested classes inherited from class java.awt.Container
`Container.AccessibleAWTContainer`

Nested classes inherited from class java.awt.Component
`Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy`

Field Summary
`protected JMenuItem` | `mAbout` About menu item.
`protected JMenuItem` | `mClear` Clear menu item
`protected JMenu` | `mCommand` Vommand menu.
`protected JMenuItem` | `mExit` Exit menu item.
`protected JMenuItem` | `mGoogle` Google menu item.
`protected JMenu` | `mHelp` Help submenu.
`protected JCheckBoxMenuItem` | `mHistoryVisible` History list visible menu item.
`protected JMenuBar` | `mMenu` Main menu.
`protected JMenuItem` | `mOpen` Open menu item.
`protected JMenuItem` | `mReset` Reset menu item.
`protected JSeparator` | `mSeparator1` MRU list separator #1.
`protected JSeparator` | `mSeparator2` MRU list separator #2.
`protected JCheckBoxMenuItem` | `mStatusVisible` Status bar visible menu item.
`protected JMenu` | `mURL` URL submenu.
`protected JMenu` | `mView` View submenu.

Fields inherited from class javax.swing.JFrame
`accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled`

Fields inherited from class java.awt.Frame
`CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR`

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Fields inherited from interface javax.swing.WindowConstants
`DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`ThumbelinaFrame()` Construct a new Thumbelina frame with an idle Thumbelina.
`ThumbelinaFrame(String url)` Construct a new Thumbelina frame with a Thumbelina primed with one URL.
`ThumbelinaFrame(Thumbelina thumbelina)` Construct a new Thumbelina frame with a given Thumbelina.
`ThumbelinaFrame(URL url)` Construct a new Thumbelina frame with a Thumbelina primed with one URL.

Method Summary
`void` | `about()` Display information about Thumbelina.
`void` | `actionPerformed(ActionEvent actionEvent)` Handles events from the menu.
`void` | `exit()` Exits the application.
`protected Rectangle` | `fromString(String value)` Convert the given string to a valid rectangle.
`Thumbelina` | `getThumbelina()` Access the Thumbelina object contained in the frame.
`void` | `googlesearch()` Query google via user specified keywords and queue results.
`void` | `initSize()` Sets the frame size if no previous preference has been stored.
`void` | `initState()` Initialize the user preferences.
`void` | `itemStateChanged(ItemEvent event)` Handles selections on the view state checkboxes.
`static void` | `main(String[] args)` Alternate mainline for Thumbelina.
`void` | `makeMenu()` Create the menu.
`void` | `open()` Opens a user specified URL.
`void` | `propertyChange(PropertyChangeEvent event)` Handle a property change.
`void` | `restoreSize()` Restores the window size based on stored preferences.
`void` | `saveState()` Saves the current settings in the user preferences.
`protected String` | `toString(Rectangle r)` Converts the rectangle to a string.
`void` | `updateMenu()` Adjusts the menu, by inserting the current MRU list.
`void` | `updateMRU(String url)` Updates the user preferences based on the most recently used list.
`void` | `windowActivated(WindowEvent event)` Invoked when the window is set to be the user's active window, which means the window (or one of its subcomponents) will receive keyboard events.
`void` | `windowClosed(WindowEvent event)` Invoked when a window has been closed as the result of calling dispose on the window.
`void` | `windowClosing(WindowEvent event)` Handles window closing event.
`void` | `windowDeactivated(WindowEvent event)` Invoked when a window is no longer the user's active window, which means that keyboard events will no longer be delivered to the window or its subcomponents.
`void` | `windowDeiconified(WindowEvent event)` Invoked when a window is changed from a minimized to a normal state.
`void` | `windowIconified(WindowEvent event)` Invoked when a window is changed from a normal to a minimized state.
`void` | `windowOpened(WindowEvent event)` Invoked the first time a window is made visible.

Methods inherited from class javax.swing.JFrame
`addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update`

Methods inherited from class java.awt.Frame
`addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated`

Methods inherited from class java.awt.Window
`addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront`

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle`

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

Methods inherited from interface java.awt.MenuContainer
`getFont, postEvent`

Field Detail

### mMenu

    protected JMenuBar mMenu

  Main menu.

### mURL

    protected JMenu mURL

  URL submenu.

### mOpen

    protected JMenuItem mOpen

  Open menu item.

### mGoogle

    protected JMenuItem mGoogle

  Google menu item.

### mSeparator1

    protected JSeparator mSeparator1

  MRU list separator #1.

### mSeparator2

    protected JSeparator mSeparator2

  MRU list separator #2.

### mExit

    protected JMenuItem mExit

  Exit menu item.

### mView

    protected JMenu mView

  View submenu.

### mStatusVisible

    protected JCheckBoxMenuItem mStatusVisible

  Status bar visible menu item.

### mHistoryVisible

    protected JCheckBoxMenuItem mHistoryVisible

  History list visible menu item.

### mCommand

    protected JMenu mCommand

  Vommand menu.

### mReset

    protected JMenuItem mReset

  Reset menu item.

### mClear

    protected JMenuItem mClear

  Clear menu item

### mHelp

    protected JMenu mHelp

  Help submenu.

### mAbout

    protected JMenuItem mAbout

  About menu item.

Constructor Detail

### ThumbelinaFrame

    public ThumbelinaFrame()

  Construct a new Thumbelina frame with an idle Thumbelina.

### ThumbelinaFrame

    public ThumbelinaFrame(String url)
                    throws MalformedURLException

  Construct a new Thumbelina frame with a Thumbelina primed with one URL.

Parameters:
  `url` - The URL to prime the Thumbelina with.
Throws:
  `MalformedURLException` - If the given string doesn't represent a valid url.

### ThumbelinaFrame

    public ThumbelinaFrame(URL url)

  Construct a new Thumbelina frame with a Thumbelina primed with one URL.

Parameters:
  `url` - The URL to prime the Thumbelina with.

### ThumbelinaFrame

    public ThumbelinaFrame(Thumbelina thumbelina)

  Construct a new Thumbelina frame with a given Thumbelina.

Parameters:
  `thumbelina` - The Thumbelina to encapsulate.

Method Detail

### getThumbelina

    public Thumbelina getThumbelina()

  Access the Thumbelina object contained in the frame.

  Returns:
    The Thumbelina bean.

### initState

    public void initState()

  Initialize the user preferences. Reads from the existing user preferences, or initializes values from the bean directly if they don't exist. Sets the state of the view checkboxes to match.

### saveState

    public void saveState()

  Saves the current settings in the user preferences. By default this writes to the thumbelina subdirectory under .java in the users home directory.

### initSize

    public void initSize()

  Sets the frame size if no previous preference has been stored. It creates a window covering all but `BORDERPERCENT` margins.

### restoreSize

    public void restoreSize()

  Restores the window size based on stored preferences. If no preferences exist, it calls `initSize()`.

### toString

    protected String toString(Rectangle r)

  Converts the rectangle to a string. The rectangle is converted into a string that is of the form

       [x,y,width,height].

  Parameters:
    `r` - The rectangle containing the window position and size, as returned by `getBounds()`.
  Returns:
    The string equivalent of the rectangle.

### fromString

    protected Rectangle fromString(String value)
                            throws IllegalArgumentException

  Convert the given string to a valid rectangle. The string is converted to a Rectangle.

  Parameters:
    `value` - The value to parse.
  Returns:
    Returns the rectangle extracted from the string.
  Throws:
    `IllegalArgumentException` - if the format does not match the form "[x,y,width,height]" with all values integers.

### makeMenu

    public void makeMenu()

  Create the menu. Initializes the menu and adds it to the frame.

### updateMenu

    public void updateMenu()

  Adjusts the menu, by inserting the current MRU list. Removes the old MRU (Most Recently Used) items and inserts new ones betweeen the two separators.

### windowOpened

    public void windowOpened(WindowEvent event)

  Invoked the first time a window is made visible. Not used.

  Specified by:
    `windowOpened` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowClosing

    public void windowClosing(WindowEvent event)

  Handles window closing event. Performs function `exitApplication()`.

  Specified by:
    `windowClosing` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowClosed

    public void windowClosed(WindowEvent event)

  Invoked when a window has been closed as the result of calling dispose on the window. Not used.

  Specified by:
    `windowClosed` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowIconified

    public void windowIconified(WindowEvent event)

  Invoked when a window is changed from a normal to a minimized state. For many platforms, a minimized window is displayed as the icon specified in the window's iconImage property. Not used.

  Specified by:
    `windowIconified` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowDeiconified

    public void windowDeiconified(WindowEvent event)

  Invoked when a window is changed from a minimized to a normal state. Not used.

  Specified by:
    `windowDeiconified` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowActivated

    public void windowActivated(WindowEvent event)

  Invoked when the window is set to be the user's active window, which means the window (or one of its subcomponents) will receive keyboard events. Not used.

  Specified by:
    `windowActivated` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### windowDeactivated

    public void windowDeactivated(WindowEvent event)

  Invoked when a window is no longer the user's active window, which means that keyboard events will no longer be delivered to the window or its subcomponents. Not used.

  Specified by:
    `windowDeactivated` in interface `WindowListener`
  Parameters:
    `event` - The window event.

### actionPerformed

    public void actionPerformed(ActionEvent actionEvent)

  Handles events from the menu. Based on the action of the event, executes the necessary subroutine.

  Specified by:
    `actionPerformed` in interface `ActionListener`
  Parameters:
    `actionEvent` - The event describing the user action.

### itemStateChanged

    public void itemStateChanged(ItemEvent event)

  Handles selections on the view state checkboxes.

  Specified by:
    `itemStateChanged` in interface `ItemListener`
  Parameters:
    `event` - The event describing the checkbox affected.

### propertyChange

    public void propertyChange(PropertyChangeEvent event)

  Handle a property change.

  Specified by:
    `propertyChange` in interface `PropertyChangeListener`
  Parameters:
    `event` - The property old and new values.

### updateMRU

    public void updateMRU(String url)

  Updates the user preferences based on the most recently used list.

  Parameters:
    `url` - The URL that is to be placed at the top of the MRU list.

### open

    public void open()

  Opens a user specified URL.

### googlesearch

    public void googlesearch()

  Query google via user specified keywords and queue results. Asks the user for keywords, and then submits them as input to the usual google form:

          • Advanced Search

       • Preferences

       • Language Tools

       Search:
        the web

       pages from Canada

  Creates a query of the form:

       http://www.google.ca/search?hl=en&ie=UTF-8&oe=UTF-8&q=thumbs&btnG=Google+Search&meta=

### about

    public void about()

  Display information about Thumbelina.

### exit

    public void exit()

  Exits the application. Saves user preferences before exiting.

### main

    public static void main(String[] args)

  Alternate mainline for Thumbelina. Similar code exists in the Thumbelina class, but this version doesn't worry about java version.

  Parameters:
    `args` - The command line arguments. Optionally, arg[0] can be the URL to preload the Thumeblina bean with.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| © 2004 Somik Raha Mar 14, 2004
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

HTML Parser is an open source library released under LGPL.