/*
 * Aleph Toolkit
 *
 * Copyright 1997, 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.Config;
import java.awt.Button;
import java.awt.Dialog;
import java.awt.Frame;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/**
 * Display <i>about</i> message.
 **/

public class AboutDialog extends Dialog {
  Label label;
  Button okButton;

  static public void  main (String[] args) {
    Frame frame = new Frame();
    AboutDialog err = new AboutDialog(frame);
    System.exit(0);
  }

  public AboutDialog(Frame frame) {
    super(frame, "About", true);

    // Window goes away also if window manager asks.
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
	setVisible(false);
	dispose();
      }
    });

    Panel panel = new Panel();
    int width = 0;
    for (int i = 0; i < Config.about.length; i++)
      width = Math.max(width, Config.about[i].length());
    TextArea textArea = new TextArea("", Config.about.length, width, TextArea.SCROLLBARS_NONE);
    textArea.append(Config.about[0]);
    for (int i = 1; i < Config.about.length; i++) {
      textArea.append("\n");
      textArea.append(Config.about[i]);
    }
    textArea.setEditable(false);
    panel.add(textArea);

    okButton = new Button("OK");
    okButton.addActionListener(new ActionListener() { 
      public void actionPerformed(ActionEvent e) {setVisible(false); dispose();}
    });
    panel.add(okButton);
    add(panel);
    pack();
    setVisible(true);
  }

}
