/* File: Belief.java
 * Author: Jason Gookins
 * Description: This class is the main class of Belief. It instantiates the main window as a new runnable thread.
 */

import java.awt.Dimension;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class Belief extends JFrame implements Runnable
{
	/**********************
	 ** Main Constructor **
	 **********************/

	public Belief(String[] args)
	{
		JFrame.setDefaultLookAndFeelDecorated(true);

		ImageIcon icon = new ImageIcon(ClassLoader.getSystemResource("Belief.ico"));

		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setPreferredSize(new Dimension(800, 600));
		setMinimumSize(new Dimension(800, 600));
		setTitle("Belief - Untitled Network");
		setIconImage(icon.getImage());

		BeliefListener beliefListener = new BeliefListener();

		BeliefMenuBar beliefMenuBar = new BeliefMenuBar(beliefListener);
		this.setJMenuBar(beliefMenuBar);

		ContentPane contentPane = new ContentPane(beliefListener);
		setContentPane(contentPane);

		beliefListener.setListensTo(args, this, beliefMenuBar, contentPane);

		pack();
	}



	/*************************
	 ** New Runnable Thread **
	 *************************/

	public void run()
	{
		setVisible(true);

		//AboutDialog aboutDialog = new AboutDialog(this);
	}



	/*****************
	 ** Main Method **
	 *****************/

	public static void main(String[] args)
	{
		SwingUtilities.invokeLater(new Belief(args));
	}
}
