/*
 * Aleph Toolkit
 *
 * Copyright 1999, Brown University, Providence, RI.
 * 
 *                         All Rights Reserved
 * 
 * Permission to use, copy, modify, and distribute this software and its
 * documentation for any purpose other than its incorporation into a
 * commercial product is hereby granted without fee, provided that the
 * above copyright notice appear in all copies and that both that
 * copyright notice and this permission notice appear in supporting
 * documentation, and that the name of Brown University not be used in
 * advertising or publicity pertaining to distribution of the software
 * without specific, written prior permission.
 * 
 * BROWN UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ANY
 * PARTICULAR PURPOSE.  IN NO EVENT SHALL BROWN UNIVERSITY BE LIABLE FOR
 * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

package aleph.gui;

import aleph.Aleph;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
 * Help!
 * @see aleph.gui.Console
 *
 * @author Maurice Herlihy
 * @date January 1999
 **/

public class HelpMenu extends Menu {

  /**
   * Sole constructor.
   **/
  private Frame frame;
  public HelpMenu (Frame frame) {
    super("Help", true);	// tear-off
    this.frame = frame;

    // exhibit system properties
    MenuItem systemProperties = new MenuItem("System Properties");
    systemProperties.addActionListener(new ActionListener() {
      public void actionPerformed (ActionEvent e) {
	new PropertiesDialog(HelpMenu.this.frame, System.getProperties());
      }
    });
    add(systemProperties);

    // exhibit Aleph properties
    MenuItem alephProperties = new MenuItem("Aleph Properties");
    alephProperties.addActionListener(new ActionListener() {
      public void actionPerformed (ActionEvent e) {
	new PropertiesDialog(HelpMenu.this.frame, Aleph.getProperties());
      }
    });
    add(alephProperties);

    // It's about me!
    MenuItem about = new MenuItem("About");
    about.addActionListener(new ActionListener() {
      public void actionPerformed (ActionEvent e) {
	new AboutDialog(HelpMenu.this.frame);
      }
    });
    add(about);
  }
}
