/**
 * FilePanel.java
 *
 *
 * Caitlin Ross 
 * 100735219
 */

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

public class FilePanel extends JPanel{
	
	private JLabel fileNameLabel;
	private JTextField fileNameField;
	private JButton openButton;
	private JButton newButton;
	private JButton saveButton;
	private JButton findButton;
    private EventController controller;
    
    public String getFileText(){return fileNameField.getText();}
	
    public FilePanel(EventController aController) {
    	controller = aController;
    	GridBagLayout layout = new GridBagLayout();
    	GridBagConstraints constraints = new GridBagConstraints();
    	String defaultFileName = "aLaCarteData.txt";
    	
    	setLayout(layout);
    	
    	fileNameLabel = new JLabel("File Name");
    	constraints.gridx = 0;
    	constraints.gridy = 0;
    	constraints.gridwidth = 2;
    	constraints.gridheight = 1;
    	constraints.weightx = 100;
    	constraints.weighty = 15;
    	constraints.anchor = GridBagConstraints.SOUTHWEST;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(fileNameLabel, constraints);
    	add(fileNameLabel);
    	
    	fileNameField = new JTextField();
    	fileNameField.setText(defaultFileName);
    	constraints.gridx = 0;
    	constraints.gridy = 1;
    	constraints.gridwidth = 2;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.HORIZONTAL;
    	constraints.weightx = 100;
    	constraints.weighty = 15;
    	constraints.anchor = GridBagConstraints.NORTHWEST;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(fileNameField, constraints);
    	add(fileNameField);
    	
    	openButton = new JButton("Open");
    	constraints.gridx = 0;
    	constraints.gridy = 2;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 50;
    	constraints.weighty = 35;
    	constraints.anchor = GridBagConstraints.CENTER;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(openButton, constraints);
    	add(openButton);
    	openButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.openButtonPressed();
            }
        });
    	
    	newButton = new JButton("New Recipe");
    	constraints.gridx = 1;
    	constraints.gridy = 2;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 50;
    	constraints.weighty = 35;
    	constraints.anchor = GridBagConstraints.CENTER;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(newButton, constraints);
    	add(newButton);
    	newButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.newButtonPressed();
            }
        });
    	
    	saveButton = new JButton("Save");
    	constraints.gridx = 0;
    	constraints.gridy = 3;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 50;
    	constraints.weighty = 35;
    	constraints.anchor = GridBagConstraints.CENTER;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(saveButton, constraints);
    	add(saveButton);
    	saveButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.saveButtonPressed();
            }
        });
    	
    	findButton = new JButton("Find Contributor");
    	constraints.gridx = 1;
    	constraints.gridy = 3;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 50;
    	constraints.weighty = 35;
    	constraints.anchor = GridBagConstraints.CENTER;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(findButton, constraints);
    	add(findButton);
    	findButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.findButtonPressed();
            }
        });
    }
    
}