public SkinnerApplication(String title, int width, int height) {
		super(title,width,height);

        m_Image = new ImageIcon(this.getClass()
                .getResource("Window.jpeg"));
		m_Frame = new JFrame(m_Title);
		m_Frame.setIconImage(m_Image.getImage());
		m_Frame.setLayout(new GridBagLayout());

		GridBagConstraints layout = new GridBagConstraints();
		layout.fill = GridBagConstraints.HORIZONTAL;
		layout.weightx = SEPARATION_X_AXIS;
		layout.weighty = SEPARATION_Y_AXIS;

		m_Panel1 = new JPanel(new BorderLayout());
		layout.gridx = COLUMN_ONE;
		layout.gridy = ROW_ONE;
		m_Frame.add(m_Panel1,layout);
		
		m_Panel2 = new JPanel(new BorderLayout());
		layout.gridx = COLUMN_ONE;
		layout.gridy = ROW_TWO;
		m_Frame.add(m_Panel2,layout);

		m_Icon = new JLabel(m_Image);
		m_Panel1.add(m_Icon, BorderLayout.CENTER);

		m_ProgressBar = new JProgressBar(PROGRESS_BAR_START, PROGRESS_BAR_END);
		m_ProgressBar.setValue(PROGRESS_BAR_START);
		m_ProgressBar.setStringPainted(true);
		m_Panel2.add(m_ProgressBar, BorderLayout.CENTER);

		m_Frame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                int confirmed = JOptionPane.showConfirmDialog(null, 
                "Are you sure you want to exit the program?", 
                "Exit Program Message Box",
                JOptionPane.YES_NO_OPTION);
                
                if (confirmed == JOptionPane.YES_OPTION) {
                   	System.exit(SYSTEM_EXIT);
                } 
            }
        });

		m_Frame.pack();
        m_Frame.setLocationRelativeTo(null);
		m_Frame.setSize(m_Width,m_Height);
        m_Frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        m_Frame.setVisible(true);	

		for (int i = MIN_RUN_LENGTH; i <= MAX_RUN_LENGTH; i++) {
	      	final int PERCENT = i;
	      	try {
	        	SwingUtilities.invokeLater(new Runnable() {
	          		public void run() {
	          			m_ProgressBar.setValue(PERCENT);
	          			if (PERCENT == MAX_RUN_LENGTH) {
							new MenuGUI("Main Menu",MENU_WIDTH,MENU_HIEGHT);
							m_Frame.dispose();
	          			}
	          		}
	        	});
	        	java.lang.Thread.sleep(SLEEP_TIME);
	      	} catch (InterruptedException e) {
	        	System.out.println("An Interrupted Exception" + 
	        		"error has occurred");
	      	}
      	}
	}