mirror of
https://github.com/LucasVbr/LecteurPdfDoubleAffichage.git
synced 2026-05-15 09:05:33 +00:00
121 lines
2.9 KiB
Java
121 lines
2.9 KiB
Java
/*
|
|
* MenuOptions.java, 20/11/2021
|
|
* IUT Rodez 2021-2021, INFO2
|
|
* pas de copyright, aucun droits
|
|
*/
|
|
|
|
package lecteur_pdf.menu;
|
|
|
|
import lecteur_pdf.affichage.Fenetre;
|
|
|
|
import javax.swing.*;
|
|
import java.awt.event.ActionEvent;
|
|
import java.io.File;
|
|
import java.util.ArrayList;
|
|
|
|
/**
|
|
* Classe pour afficher le Menu "Fichier" avec ses options
|
|
*
|
|
* @author Léo FRANCH
|
|
* @author Tristan NOGARET
|
|
* @author Lucàs VABRE
|
|
* @author Noé VILLENEUVE
|
|
* @version 1.0
|
|
*/
|
|
public class Menu extends JMenuBar {
|
|
|
|
/**
|
|
* La Fenêtre mère de la barre des menus
|
|
*/
|
|
private final Fenetre fenetre;
|
|
|
|
/**
|
|
* Liste contenant les différents menus
|
|
*/
|
|
private final ArrayList<JMenu> menuList = new ArrayList<>();
|
|
|
|
/**
|
|
* Liste contenant les différents sous menus
|
|
*/
|
|
private final ArrayList<JMenuItem> itemList = new ArrayList<>();
|
|
|
|
/**
|
|
* Constructeur du menu
|
|
*
|
|
* @param fenetre La Fenêtre mère de la barre des menus
|
|
*/
|
|
public Menu(Fenetre fenetre) {
|
|
this.fenetre = fenetre;
|
|
|
|
createMenuFichier();
|
|
// createMenuAfficher();
|
|
}
|
|
|
|
/**
|
|
* Créé le menu Fichier et ses sous-menus
|
|
*/
|
|
private void createMenuFichier() {
|
|
|
|
// Créer le Menu Fichier
|
|
JMenu Fichier = new JMenu("Fichier");
|
|
|
|
// Créer les items Ouvrir et Fermer
|
|
JMenuItem Ouvrir = new JMenuItem("Ouvrir");
|
|
JMenuItem Fermer = new JMenuItem("Fermer");
|
|
|
|
// Ajoute des Listener aux JMenuItem
|
|
Ouvrir.addActionListener(this::actionPerformed);
|
|
Fermer.addActionListener(this::actionPerformed);
|
|
|
|
// TODO raccourcis
|
|
|
|
// Ajouter les éléments au menu "Fichier"
|
|
Fichier.add(Ouvrir);
|
|
Fichier.add(Fermer);
|
|
|
|
// Ajoute le menu "Fichier" dans la liste des menus
|
|
menuList.add(Fichier);
|
|
|
|
// Ajoute Ouvrir et Fermer dans la liste des sous menu
|
|
itemList.add(Ouvrir);
|
|
itemList.add(Fermer);
|
|
|
|
// Ajoute le menu à la barre de menu
|
|
this.add(Fichier);
|
|
}
|
|
|
|
/**
|
|
* Méthode qui gère les actions des sous-menus
|
|
*
|
|
* @param ae un action event
|
|
*/
|
|
public void actionPerformed(ActionEvent ae) {
|
|
String choice = ae.getActionCommand();
|
|
|
|
switch (choice) {
|
|
case "Ouvrir" -> {
|
|
File fichier = SelectionnerFichier.ouvrirFichier();
|
|
fenetre.chargerPdf(fichier);
|
|
}
|
|
case "Fermer" -> System.exit(
|
|
0); // TODO à changer pour que ça quitte vraiment
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @return la liste des JMenuItem
|
|
*/
|
|
public ArrayList<JMenuItem> getMenuItems() {
|
|
return itemList;
|
|
}
|
|
|
|
/**
|
|
* Methode qui renvoie le sous menu demandé
|
|
*
|
|
* @param index Indice du sous menu
|
|
* @return Le sous menu demandé
|
|
*/
|
|
public JMenuItem getMenuItem(int index) {
|
|
return itemList.get(index);
|
|
}
|
|
} |