package com.efrei.restaurant.view;

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.io.IOException;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

import com.efrei.restaurant.application.GestionRestaurantImpl;
import com.efrei.restaurant.persistance.Save;

public class Mafenetre extends JFrame implements ActionListener, ItemListener, FocusListener{

	 
	private static final long serialVersionUID = 1L;

	GestionRestaurantImpl chezMario = new GestionRestaurantImpl();
	
	private JPanel panneau;
	private JTextField menu;
	private JTextField prix;
	private JButton b_ajout;
	private JButton b_save;

	public Mafenetre()
	{
		panneau = new JPanel();

		setTitle("Ajouter/Supprimer un Menu");
		setSize(300,300);
		Container contenu = getContentPane();
		contenu.setLayout(new FlowLayout());
		getContentPane().add(panneau);

		JLabel men = new JLabel("Menu : ");
		contenu.add(men);
		
		menu = new JTextField(20);
		contenu.add(menu);
		menu.addActionListener(this);
		
		JLabel pri = new JLabel("Prix : ");
		contenu.add(pri);
		
		prix = new JTextField(20);
		contenu.add(prix);
		prix.addActionListener(this);

		b_ajout = new JButton("Ajouter menu");
		contenu.add(b_ajout);
		b_ajout.addActionListener(this);

		b_save = new JButton("Sauvegarder carte");
		contenu.add(b_save);
		b_save.addActionListener(this);
	}


	@Override
	public void actionPerformed(ActionEvent e) {

		if(e.getSource() == b_ajout){
			float priix = 10*(prix.getText().charAt(0)-'0') + prix.getText().charAt(1)-'0';  
			chezMario.myCarte.creerMenu(menu.getText(),priix);
			JOptionPane.showMessageDialog(panneau,"Menu ajouté!");
		}
		else if(e.getSource() == b_save){
			Save save = new Save();
			try {
				save.SaveAll(chezMario);
			} catch (IOException e1) {
				e1.printStackTrace();
			}
			JOptionPane.showMessageDialog(panneau,"Carte sauvegardée!");
		}

	}
	
	@Override
	public void itemStateChanged(ItemEvent arg0) {
		// TODO Auto-generated method stub

	}
	
	public static void main(String args[]){

		Mafenetre fen = new Mafenetre();
		fen.setVisible(true);
	}


	@Override
	public void focusGained(FocusEvent arg0) {
		// TODO Auto-generated method stub
		
	}


	@Override
	public void focusLost(FocusEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	 
}
