/**
 * TextPanel.java
 *
 *
 * Caitlin Ross 
 * 100735219
 */

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

public class TextPanel extends JPanel{
	
	private JRadioButton ingredients;
	private JRadioButton directions;
	private JRadioButton description;
	private JTextArea textArea;
	private EventController controller;
	
	public void setAreaText(String text){textArea.setText(text);}
	public String getAreaText(){return textArea.getText();}
	public boolean isIngredientsSelected(){return ingredients.isSelected();}
	public boolean isDirectionsSelected(){return directions.isSelected();}
	public boolean isDescriptionSelected(){return description.isSelected();}
	
    public TextPanel(EventController aController) {
    	controller = aController;
    	GridBagLayout layout = new GridBagLayout();
    	GridBagConstraints constraints = new GridBagConstraints();
    	
    	setLayout(layout);
    	ButtonGroup textButtons = new ButtonGroup();
    	
		ingredients = new JRadioButton("Ingredients");
    	constraints.gridx = 0;
    	constraints.gridy = 0;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 33;
    	constraints.weighty = 0;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(ingredients, constraints);
    	add(ingredients);
    	textButtons.add(ingredients);
    	ingredients.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.ingredientsButtonPressed();
            }
        });
    	
    	directions = new JRadioButton("Directions");
    	constraints.gridx = 1;
    	constraints.gridy = 0;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 33;
    	constraints.weighty = 0;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(directions, constraints);
    	add(directions);
    	textButtons.add(directions);
    	directions.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.directionsButtonPressed();
            }
        });
    	
    	description = new JRadioButton("Description");
    	constraints.gridx = 2;
    	constraints.gridy = 0;
    	constraints.gridwidth = 1;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.NONE;
    	constraints.weightx = 33;
    	constraints.weighty = 0;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(description, constraints);
    	add(description);
    	textButtons.add(description);
    	description.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                controller.descriptionButtonPressed();
            }
        });
    	
    	textArea = new JTextArea();
    	textArea.setLineWrap(true);
    	textArea.setWrapStyleWord(true);
    	JScrollPane scrollPane = new JScrollPane(textArea,
              ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
              ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    	constraints.gridx = 0;
    	constraints.gridy = 1;
    	constraints.gridwidth = 3;
    	constraints.gridheight = 1;
    	constraints.fill = GridBagConstraints.BOTH;
    	constraints.weightx = 100;
    	constraints.weighty = 100;
    	constraints.anchor = GridBagConstraints.NORTHWEST;
    	constraints.insets = new Insets(5, 10, 5, 10);
    	layout.setConstraints(scrollPane, constraints);
    	add(scrollPane);
	}
	
}