package mb;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;

public class MandelbrotLauncher extends JApplet implements ActionListener {
	
	private JButton launchButton;
	private Mandelbrot mandelFrame;
	
	public MandelbrotLauncher() {
		launchButton = new JButton("Launch Mandelbrot");
		launchButton.addActionListener(this);
		setContentPane(launchButton);
	}
	
	synchronized public void actionPerformed(ActionEvent evt) {
		if (evt.getSource() == launchButton) {
			launchButton.setEnabled(false);
			if (mandelFrame == null) {
				mandelFrame = new Mandelbrot("Mandelbrot", true, true);
				mandelFrame.addWindowListener(new WindowAdapter() {
					public void windowClosed(WindowEvent evt) {
						doClosed();
					}
					public void windowOpened(WindowEvent evt) {
						doOpened();
					}
				});
			}
			else {
				mandelFrame.dispose();
			}
		}
	}
	
	synchronized private void doOpened() {
		launchButton.setText("Close Mandelbrot");
		launchButton.setEnabled(true);
	}
	
	synchronized private void doClosed() {
		launchButton.setText("Launch Mandelbrot");
		launchButton.setEnabled(true);
		mandelFrame = null;
	}
	
}
