package SE4.controlleur;

import java.awt.Color;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.Observable;
import java.util.Observer;

import javax.swing.*;
import javax.swing.border.LineBorder;

import SE4.abstraction.Album;

public class ControlJButtons2 implements ActionListener , Observer{
	Album modele;
	private ArrayList<JButton> lesBoutons;
	private JPanel boutonsFond;
	public ControlJButtons2(Album modele,ArrayList<JButton> lesBoutons,JPanel boutonsFond) {
		this.modele=modele;
		this.lesBoutons = lesBoutons;
		this.boutonsFond=boutonsFond;
	}
	@Override
	public void actionPerformed(ActionEvent e) {

		for(int i = 0; i<modele.getSize();i++){			
			
		if( e.getSource()==lesBoutons.get(i)){
			modele.setIndexCourant(i);
		}
				
		}
		
	}
	@Override
	public void update(Observable arg0, Object arg1) {
		Integer iMessage=(Integer) arg1;
		if(iMessage==Album.NOUVELLE_IMAGE){
			JButton b1;
			b1=new JButton(modele.getPhoto(modele.getSize()-1).getIcone());
			b1.setBorder(new LineBorder(Color.BLUE,12));
			b1.setBorderPainted(false);
			lesBoutons.add(b1);
			boutonsFond.add(b1);
			
			
		}
		else{
		for(int i=0;i<modele.getSize();i++){
			if(i==modele.getIndexCourant()){
				lesBoutons.get(i).setBorderPainted(true);
			}
			else {
				lesBoutons.get(i).setBorderPainted(false);
			}
		}
		}
		
		
	}
	

}
