/**
 * Dialog window for adding picture files
 * 
 * @author Kevin Strong
 */
 
package cstutor;

import javax.swing.Box;
import javax.swing.JFrame;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JFileChooser;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class AddPictureDlg extends JDialog {
	private JTextField filename;
	private JFileChooser fc;
	
	public AddPictureDlg(JFrame frame) {
		super(frame, "CSTutor", false);
		
		setDefaultCloseOperation(HIDE_ON_CLOSE);
		setSize(300,200);
		
		fc = new JFileChooser();
		
		JLabel heading = new JLabel("<html><h1>Add a Picture</h1></html>", JLabel.CENTER);
		
		JLabel sel = new JLabel("Selected File: 	");
		this.filename = new JTextField();
		
		JButton addfile = new JButton("Add From File...");
		JButton createpic = new JButton("Create Picture");
		JButton btnAdd = new JButton("Add");
		
		addfile.addActionListener(new ActionListener () { 
			public void actionPerformed(ActionEvent e) {
				openFileDlg();
			}
		});
		
		btnAdd.addActionListener(new ActionListener () {
			public void actionPerformed(ActionEvent e) {
				successMsg();
			}
		});
		
		Box addbtns = Box.createHorizontalBox();
		addbtns.add(addfile); addbtns.add(createpic);
		
		Box selfile = Box.createHorizontalBox();
		Box filen = Box.createVerticalBox();
		filen.add(Box.createVerticalStrut(20));
		filen.add(filename);
		filen.add(Box.createVerticalStrut(20));
		selfile.add(sel); selfile.add(filen);
		
		Box rows = Box.createVerticalBox();
		
		rows.add(addbtns);
		rows.add(selfile);
		rows.add(btnAdd);
		
		add(heading, BorderLayout.PAGE_START);
		add(rows, BorderLayout.CENTER);
	}
	
	private void openFileDlg() {
		int ret = fc.showOpenDialog(this);
		
		if (ret == JFileChooser.APPROVE_OPTION) {
			filename.setText(fc.getSelectedFile().getName());
		}
	}
	
	private void successMsg() {
		JOptionPane.showMessageDialog(this, "Picture Successfully Added");
	}
}