Fenetre.java 2,6 ko
Newer Older
Bruno Mermet's avatar
Bruno Mermet a validé
package tp4;

import java.awt.BorderLayout;
Bruno Mermet's avatar
Bruno Mermet a validé

Bruno Mermet's avatar
Bruno Mermet a validé
import javax.swing.JFrame;
import javax.swing.JLabel;

import javax.swing.JMenu;
import javax.swing.JMenuBar;

import tp4.util.UtilitaireFichierImage;
import tp4.actions.ActionAugmenter;
Nathan Caron's avatar
Nathan Caron a validé
import tp4.actions.ActionCharger;
import tp4.actions.ActionQuitter;
Nathan Caron's avatar
Nathan Caron a validé
import tp4.actions.ActionSauver;
import tp4.actions.ActionDiminuer;
Bruno Mermet's avatar
Bruno Mermet a validé

public class Fenetre extends JFrame {
  private ActionQuitter quitter;
  private ActionCharger charger;
  private ActionSauver sauver;
  private ActionDiminuer diminuer;
  private ActionAugmenter augmenter;
  private ImageIcon icone;
  private String image;
  private JLabel afficheurImage;
  private float pas = 0.1f;

  public float getPas() {
Nathan Caron's avatar
Nathan Caron a validé
		return pas;
	}

	public void setPas(float pas) {
		this.pas = pas;
	}

	public Fenetre() {
Bruno Mermet's avatar
Bruno Mermet a validé
        this.setTitle("TP4");
        setSize(300, 300);
Bruno Mermet's avatar
Bruno Mermet a validé
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }
      icone = UtilitaireFichierImage.chargerImage(new File(path));
      if (icone != null) {
Arthur BOYREAU's avatar
Arthur BOYREAU a validé
        diminuer.setEnabled(true);
        augmenter.setEnabled(true);
        afficheurImage.setIcon(icone);
        image = path;
      }
      if (icone == null) {
        diminuer.setEnabled(false);
        augmenter.setEnabled(false);
        image = null;
      }
    public String getImage() {
    	return image;
Arthur BOYREAU's avatar
Arthur BOYREAU a validé
    public void setIcon(ImageIcon ic) {
      this.icone = ic;
      this.afficheurImage.setIcon(ic);
    }

    public ImageIcon getIcon() {
    private void initActions() {
Nathan Caron's avatar
Nathan Caron a validé
    	charger = new ActionCharger(this);
    	quitter = new ActionQuitter();
	    sauver = new ActionSauver(this);
      diminuer = new ActionDiminuer(this);
      augmenter = new ActionAugmenter(this);
    }

    private void initMenus() {
      JMenuBar barre = new JMenuBar();
      JMenu mFichier = new JMenu("Fichier");
      mFichier.setMnemonic('F');
Nathan Caron's avatar
Nathan Caron a validé
      mFichier.add(charger);
      mFichier.add(quitter);
Nathan Caron's avatar
Nathan Caron a validé
      mFichier.add(sauver);
      barre.add(mFichier);

      JMenu mImage = new JMenu("Image");
      mImage.setMnemonic('I');
      mImage.add(diminuer);
      mImage.add(augmenter);

      barre.add(mImage);
      setJMenuBar(barre);
    }

    private void initComposants() {
      this.afficheurImage = new JLabel();
	    getContentPane().add(afficheurImage, BorderLayout.CENTER);
    private void init() {
	    initComposants();
	    initActions();
	    initMenus();
Bruno Mermet's avatar
Bruno Mermet a validé
}