From a40386a896af62109bf5d94687c9422255fb0f4d Mon Sep 17 00:00:00 2001 From: NonoL3Robot Date: Sun, 28 Nov 2021 19:19:50 +0100 Subject: [PATCH] edit de Menu() --- src/lecteur_pdf/affichage/Fenetre.java | 4 +-- src/lecteur_pdf/menu/Menu.java | 26 +++++++++++++++++-- src/lecteur_pdf/menu/SelectionnerFichier.java | 4 +-- tests/lecteur_pdf/menu/MenuTest.java | 6 ++--- .../menu/SelectionnerFichierTest.java | 4 +-- 5 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/lecteur_pdf/affichage/Fenetre.java b/src/lecteur_pdf/affichage/Fenetre.java index bfb3c28..1f58dc2 100644 --- a/src/lecteur_pdf/affichage/Fenetre.java +++ b/src/lecteur_pdf/affichage/Fenetre.java @@ -23,7 +23,7 @@ import javax.swing.*; public class Fenetre extends JFrame { //private JFrame frame; private String titre ; - private Menu menu = new Menu(); + private Menu menu = new Menu(this); private PDF pdf ; @@ -32,7 +32,7 @@ public class Fenetre extends JFrame { //création du frame // Création du menu - Menu menu = new Menu(); + Menu menu = new Menu(this); // Ajout de la barre de menu au frame diff --git a/src/lecteur_pdf/menu/Menu.java b/src/lecteur_pdf/menu/Menu.java index b02251e..6dd397d 100644 --- a/src/lecteur_pdf/menu/Menu.java +++ b/src/lecteur_pdf/menu/Menu.java @@ -6,9 +6,13 @@ package lecteur_pdf.menu; +import lecteur_pdf.affichage.Fenetre; +import lecteur_pdf.document.PDF; + import javax.swing.*; import java.awt.event.ActionEvent; import java.io.File; +import java.io.IOException; import java.util.ArrayList; /** @@ -31,10 +35,13 @@ public class Menu { /** Création de la barre de menu */ JMenuBar menubar = new JMenuBar(); + JFrame frame; + /** * Appelle la fonction createMenuFichier */ - public Menu() { + public Menu(JFrame frame) { + this.frame = frame; createMenuFichier(); } @@ -76,7 +83,22 @@ public class Menu { public void actionPerformed(ActionEvent ae) { String choice = ae.getActionCommand(); if (choice.equals("Ouvrir")) { - fichier = SelectionnerFichier.ouvrirFichier(); + try { + PDF doc; + doc = new PDF(SelectionnerFichier.ouvrirFichier()); + /* Creation du JScrollPane contenant notre PDF pour pouvoir scroller */ + JScrollPane scrollPane = new JScrollPane(doc); + scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + + /* Ajout du ScrollPane dans la frame et mise à jour de la frame */ + frame.add(scrollPane); + frame.validate(); + } catch (IOException e) { + e.printStackTrace(); + } + + }else if (choice.equals("Fermer")) { System.exit(0); // TODO à changer pour que ça quitte vraiment } diff --git a/src/lecteur_pdf/menu/SelectionnerFichier.java b/src/lecteur_pdf/menu/SelectionnerFichier.java index 7e632f4..5ab42d4 100644 --- a/src/lecteur_pdf/menu/SelectionnerFichier.java +++ b/src/lecteur_pdf/menu/SelectionnerFichier.java @@ -40,9 +40,9 @@ public class SelectionnerFichier { File file; int returnValue = fileChooser.showOpenDialog(null); if (returnValue == JFileChooser.APPROVE_OPTION) { - file = new File(fileChooser.getSelectedFile().getPath()); + file = new File(fileChooser.getSelectedFile().getAbsolutePath()); } else { - file = null; + file = null; } return file; } diff --git a/tests/lecteur_pdf/menu/MenuTest.java b/tests/lecteur_pdf/menu/MenuTest.java index c79b605..4bc414d 100644 --- a/tests/lecteur_pdf/menu/MenuTest.java +++ b/tests/lecteur_pdf/menu/MenuTest.java @@ -31,7 +31,7 @@ class MenuTest { final String[] itemAttendu = {"Ouvrir", "Fermer"}; - Menu menuTest = new Menu(); + Menu menuTest = new Menu(new JFrame()); ArrayList menuItemTest = menuTest.getMenuItems(); for (int i = 0; i < menuItemTest.size(); i++) { @@ -44,7 +44,7 @@ class MenuTest { final String[] itemAttendu = {"Ouvrir", "Fermer"}; - Menu menuTest = new Menu(); + Menu menuTest = new Menu(new JFrame()); for (int i = 0; i < itemAttendu.length; i++) { assertEquals(menuTest.getMenuItem(i).getText(), itemAttendu[i]); @@ -57,7 +57,7 @@ class MenuTest { JFrame frame = new JFrame("Menu ouverture"); // Créer le Menu - Menu menu = new Menu(); + Menu menu = new Menu(new JFrame()); // Ajouter la barre de menu au frame frame.setJMenuBar(menu.getMenuBar()); diff --git a/tests/lecteur_pdf/menu/SelectionnerFichierTest.java b/tests/lecteur_pdf/menu/SelectionnerFichierTest.java index c920501..d5b1f55 100644 --- a/tests/lecteur_pdf/menu/SelectionnerFichierTest.java +++ b/tests/lecteur_pdf/menu/SelectionnerFichierTest.java @@ -17,8 +17,8 @@ class SelectionnerFichierTest { * @param args */ public static void main(String[] args) { - JFrame frame = new JFrame("Menu ouverture"); - Menu menu = new Menu(); + JFrame frame = new JFrame("Test Menu ouverture"); + Menu menu = new Menu(frame); frame.setJMenuBar(menu.getMenuBar()); frame.setSize(300,300); frame.setLayout(null);