mirror of
https://github.com/LucasVbr/LecteurPdfDoubleAffichage.git
synced 2026-05-13 17:11:51 +00:00
Refactor de code + edit Popup
This commit is contained in:
@@ -14,43 +14,53 @@ import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
* Classe définissant une fenêtre qui peut contenir un document PDF
|
||||
*
|
||||
* @author Léo Franch
|
||||
* @author Lucas Vabre
|
||||
* @author Noé Villeneuve
|
||||
* @author Tristan Nogaret
|
||||
*/
|
||||
public class IhmPdf extends JFrame {
|
||||
public class Fenetre extends JFrame {
|
||||
|
||||
/* Elements visuels */
|
||||
/**
|
||||
* Titre de l'application
|
||||
*/
|
||||
public static final String TITRE = "LPDA";
|
||||
|
||||
/**
|
||||
* Le Panel contenant le document PDF
|
||||
*/
|
||||
private final PdfPanel pdfPanel;
|
||||
private MenuBar menuBar;
|
||||
|
||||
/* Relatif au FullScreen */
|
||||
/**
|
||||
* Booléen qui définit si la fenêtre est en mode plein écran ou non
|
||||
*/
|
||||
private boolean fullscreen = false;
|
||||
|
||||
/**
|
||||
* Composant Graphique permettant la mise en place du plein ecran
|
||||
*/
|
||||
private GraphicsDevice device;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* @throws IOException
|
||||
* Crée une nouvelle fenêtre vide
|
||||
*/
|
||||
public IhmPdf() throws IOException {
|
||||
super(GestionPdf.TITRE_APPLICATION);
|
||||
public Fenetre() {
|
||||
super(TITRE);
|
||||
|
||||
/* Icone de la fenêtre */
|
||||
setIconImage(GestionPdf.ICONE);
|
||||
setIconImage(GestionFenetre.ICONE);
|
||||
|
||||
/* Déclaration des attributs */
|
||||
menuBar = new MenuBar(this);
|
||||
pdfPanel = new PdfPanel();
|
||||
|
||||
/* Hierarchie */
|
||||
setContentPane(pdfPanel);
|
||||
setJMenuBar(menuBar);
|
||||
setJMenuBar(new MenuBar(this)); // Ajoute la barre des menus
|
||||
|
||||
/* Action à la fermeture de la fenêtre */
|
||||
this.addWindowListener(new WindowAdapter(){
|
||||
@@ -72,42 +82,57 @@ public class IhmPdf extends JFrame {
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* @return
|
||||
* @return Le Panel contenant le document PDF
|
||||
*/
|
||||
public PdfPanel getPdfPanel() {
|
||||
return pdfPanel;
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Si fullscreen est égal à false -> Désactive le mode Plein Ecran
|
||||
* Sinon Active le mode Plein Ecran
|
||||
*/
|
||||
public void pleinEcran() {
|
||||
// Switch de disposition
|
||||
fullscreen = !fullscreen;
|
||||
if (fullscreen) { // Set fullscreen
|
||||
GraphicsEnvironment graphics =
|
||||
GraphicsEnvironment.getLocalGraphicsEnvironment();
|
||||
|
||||
if (!fullscreen) { // Active le Plein Ecran
|
||||
GraphicsEnvironment graphics = GraphicsEnvironment.getLocalGraphicsEnvironment();
|
||||
device = graphics.getDefaultScreenDevice();
|
||||
device.setFullScreenWindow(this);
|
||||
} else { // remove fullscreen
|
||||
} else { // Désactive le Plein Ecran
|
||||
device.setFullScreenWindow(null);
|
||||
setUndecorated(false);
|
||||
setVisible(true);
|
||||
}
|
||||
|
||||
fullscreen = !fullscreen;
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Décharge le PDF courrant, ferme la fenêtre
|
||||
* Si il s'agit de la dernière fenêtre ouverte, arrête l'application
|
||||
*/
|
||||
public void quitter() {
|
||||
|
||||
/* Décharge le PDF */
|
||||
pdfPanel.dechargerPdf();
|
||||
if (GestionPdf.ihmPdfList.size() == GestionPdf.maxPdf) GestionMode.activerFenetre();
|
||||
GestionPdf.ihmPdfList.remove(this);
|
||||
|
||||
/* Supprime la fenêtre de la liste du Gestionnaire de Fenêtre */
|
||||
GestionFenetre.FENETRE_LIST.remove(this);
|
||||
dispose();
|
||||
|
||||
if (GestionPdf.ihmPdfList.size() == 0) {
|
||||
System.exit(0);
|
||||
}
|
||||
/* Si la liste des fenêtres n'est pas pleine alors on reactive le boutton pour créer une nouvelle fenêtre */
|
||||
if (GestionFenetre.FENETRE_LIST.size() < GestionFenetre.NB_MAX_PDF) GestionMode.activerBtnNouvelleFenetre();
|
||||
|
||||
/* Si il n'y a plus de fenêtre ouvertes on quitte l'application */
|
||||
if (GestionFenetre.FENETRE_LIST.size() == 0) System.exit(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Décharge le PDF courrant et redéfini le titre de l'application
|
||||
*/
|
||||
public void fermerPdf() {
|
||||
getPdfPanel().dechargerPdf();
|
||||
setTitle(TITRE);
|
||||
pack();
|
||||
}
|
||||
}
|
||||
@@ -6,69 +6,60 @@
|
||||
|
||||
package lecteur_pdf;
|
||||
|
||||
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
* Gestionnaire des fênetres ouvertes dans l'application
|
||||
*
|
||||
* @author Léo Franch
|
||||
* @author Lucas Vabre
|
||||
* @author Noé Villeneuve
|
||||
* @author Tristan Nogaret
|
||||
*/
|
||||
public class GestionPdf {
|
||||
/**
|
||||
* TODO
|
||||
*/
|
||||
public static final String TITRE_APPLICATION = "LPDA";
|
||||
public class GestionFenetre {
|
||||
|
||||
/**
|
||||
* Iconne de l'application (affiché en haut a droite des fenêtres)
|
||||
*/
|
||||
public static final Image ICONE = new ImageIcon("./lib/icon.png").getImage();
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Nombre maximum de PDF que l'application peut ouvrir en simultané
|
||||
*/
|
||||
public static final int maxPdf = 2;
|
||||
public static final int NB_MAX_PDF = 2;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Liste des fenêtres ouvertes
|
||||
*/
|
||||
public static final List<IhmPdf> ihmPdfList = new ArrayList<>();
|
||||
public static final List<Fenetre> FENETRE_LIST = new ArrayList<>();
|
||||
|
||||
/**
|
||||
* Crée une nouvelle fenêtre
|
||||
* Crée une nouvelle fenêtre si NB_MAX_PDF n'est pas atteint
|
||||
*/
|
||||
public static void newIhmPdf() {
|
||||
if (ihmPdfList.size() >= maxPdf) {
|
||||
JOptionPane.showMessageDialog(new JFrame(),"vous ne pouvez plus ouvrir de nouvelle fenêtre car vous avez atteint le nombre maximum. ");
|
||||
return;
|
||||
if (FENETRE_LIST.size() < NB_MAX_PDF) {
|
||||
Fenetre ihm = new Fenetre();
|
||||
FENETRE_LIST.add(ihm);
|
||||
}
|
||||
|
||||
try {
|
||||
IhmPdf ihm = new IhmPdf();
|
||||
ihmPdfList.add(ihm);
|
||||
} catch (IOException ignored) {}
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode affiche la page suivante en mode Synchronisé
|
||||
* Methode qui affiche la page suivante de tout les PDF ouvert (mode Synchronisé)
|
||||
*/
|
||||
public static void nextPages() {
|
||||
for (IhmPdf ihm : ihmPdfList) {
|
||||
for (Fenetre ihm : FENETRE_LIST) {
|
||||
ihm.getPdfPanel().nextPage();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode affiche la page précédente en mode Synchronisé
|
||||
* Methode qui affiche la page précédente de tout les PDF ouvert (mode Synchronisé)
|
||||
*/
|
||||
public static void previousPages() {
|
||||
for (IhmPdf ihm : ihmPdfList) {
|
||||
for (Fenetre ihm : FENETRE_LIST) {
|
||||
ihm.getPdfPanel().previousPage();
|
||||
}
|
||||
}
|
||||
@@ -78,9 +69,7 @@ public class GestionPdf {
|
||||
* @param args non utilisé
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
/* Définit le style de la fenêtre sur l'explorateur windows lorsque
|
||||
* cela est possible
|
||||
*/
|
||||
/* Définit le style de la fenêtre sur l'explorateur windows si possible */
|
||||
try {
|
||||
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
|
||||
} catch (Exception ignored) {}
|
||||
@@ -104,7 +104,7 @@ public class GestionMode {
|
||||
/**
|
||||
* TODO
|
||||
*/
|
||||
public static void activerFenetre() {
|
||||
public static void activerBtnNouvelleFenetre() {
|
||||
for (NouvelleFenetre item : nouvelleFenetreList) {
|
||||
item.setEnabled(true);
|
||||
item.setBackground(Color.BLACK);
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Popup.java, 09/03/2022
|
||||
* IUT Rodez 2021-2022, INFO 2
|
||||
* pas de copyright, aucun droits
|
||||
*/
|
||||
|
||||
package lecteur_pdf;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
*
|
||||
* @author Léo Franch
|
||||
* @author Lucas Vabre
|
||||
* @author Noé Villeneuve
|
||||
* @author Tristan Nogaret
|
||||
*/
|
||||
public class Popup {
|
||||
|
||||
public static int OuiNonPopup(Component parent, String titre, String message) {
|
||||
JOptionPane d = new JOptionPane();
|
||||
String[] choix = {"Oui", "Non"};
|
||||
return d.showOptionDialog(parent, message, titre, JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE,
|
||||
null, choix, choix[0]);
|
||||
}
|
||||
|
||||
public static void errorPopup(Component parent, String titre, String message) {
|
||||
JOptionPane d = new JOptionPane();
|
||||
String[] choix = {"OK"};
|
||||
JOptionPane.showOptionDialog(parent, message, titre, JOptionPane.YES_NO_OPTION, JOptionPane.ERROR_MESSAGE, null, choix, choix[0]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -12,8 +12,8 @@ import javax.swing.filechooser.FileSystemView;
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
* Classe qui permet d'ouvrir une fenêtre pour sélectionner le fichier pdf à
|
||||
* ouvrir
|
||||
* Classe qui permet d'ouvrir une fenêtre pour sélectionner le fichier pdf à ouvrir
|
||||
*
|
||||
* @author Léo FRANCH
|
||||
* @author Tristan NOGARET
|
||||
* @author Lucàs VABRE
|
||||
@@ -23,8 +23,8 @@ import java.io.File;
|
||||
public class SelectionnerFichier {
|
||||
|
||||
/**
|
||||
* Méthode qui créée une fenêtre pour que l'utilisateur choisisse un
|
||||
* fichier PDF
|
||||
* Méthode qui créée une fenêtre pour que l'utilisateur choisisse un fichier PDF
|
||||
*
|
||||
* @return le fichier choisi par l'utilisateur
|
||||
*/
|
||||
public static File ouvrirFichier(JFrame parent) {
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.menuBar;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.menuBar.menu.MenuAffichage;
|
||||
import lecteur_pdf.menuBar.menu.MenuFichier;
|
||||
import lecteur_pdf.menuBar.menu.MenuMode;
|
||||
@@ -24,7 +24,7 @@ import javax.swing.*;
|
||||
*/
|
||||
public class MenuBar extends JMenuBar {
|
||||
|
||||
public MenuBar(IhmPdf parent) {
|
||||
public MenuBar(Fenetre parent) {
|
||||
add(new MenuFichier(parent));
|
||||
add(new MenuAffichage(parent));
|
||||
add(new MenuMode(parent));
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menu;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.menuBar.menuItems.*;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -26,16 +26,14 @@ public class MenuAffichage extends JMenu {
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce menu
|
||||
*/
|
||||
public MenuAffichage(IhmPdf parent) {
|
||||
public MenuAffichage(Fenetre parent) {
|
||||
super("Affichage");
|
||||
|
||||
/* - Ajoute les différentes options - */
|
||||
|
||||
/* Mode plein écran */
|
||||
add(new PleinEcran(parent));
|
||||
addSeparator();
|
||||
|
||||
/* Navigation dans les différentes pages des documents */
|
||||
/* Navigation dans les différentes pages */
|
||||
add(new PagePrecedente(parent));
|
||||
add(new PageSuivante(parent));
|
||||
addSeparator();
|
||||
@@ -46,6 +44,7 @@ public class MenuAffichage extends JMenu {
|
||||
add(new ZoomPlus(parent));
|
||||
addSeparator();
|
||||
|
||||
/* Mode d'affichage */
|
||||
add(new PageEntiere(parent));
|
||||
add(new PleineLargeur(parent));
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menu;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.menuBar.menuItems.*;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -26,11 +26,9 @@ public class MenuFichier extends JMenu {
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce menu
|
||||
*/
|
||||
public MenuFichier(IhmPdf parent) {
|
||||
public MenuFichier(Fenetre parent) {
|
||||
super("Fichier");
|
||||
|
||||
/* - Ajoute les différentes options - */
|
||||
|
||||
add(new OuvrirFichier(parent));
|
||||
add(new FermerFichier(parent));
|
||||
add(new Quitter(parent));
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
package lecteur_pdf.menuBar.menu;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.menuBar.menuItems.ModeSepare;
|
||||
import lecteur_pdf.menuBar.menuItems.ModeSynchronise;
|
||||
import lecteur_pdf.menuBar.menuItems.NouvelleFenetre;
|
||||
@@ -29,7 +29,7 @@ public class MenuMode extends JMenu {
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce menu
|
||||
*/
|
||||
public MenuMode(IhmPdf parent) {
|
||||
public MenuMode(Fenetre parent) {
|
||||
super("Mode");
|
||||
|
||||
/* Crée les différentes options */
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menu;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.menuBar.menuItems.*;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -26,7 +26,7 @@ public class MenuOptions extends JMenu {
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce menu
|
||||
*/
|
||||
public MenuOptions(IhmPdf parent) {
|
||||
public MenuOptions(Fenetre parent) {
|
||||
super("Options");
|
||||
add(new ModifierTouches(parent));
|
||||
}
|
||||
|
||||
@@ -6,13 +6,11 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.Popup;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -25,35 +23,21 @@ import java.awt.event.KeyEvent;
|
||||
public class FermerFichier extends MenuItem {
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Crée un nouvel Element de Menu "Fermer"
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
public FermerFichier(IhmPdf parent) {
|
||||
public FermerFichier(Fenetre parent) {
|
||||
super(parent, "Fermer");
|
||||
|
||||
/* TODO Définition du raccourcis.save clavier a modifier */
|
||||
// setRaccourcis(KeyEvent.VK_X, KeyEvent.CTRL_DOWN_MASK);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void action(ActionEvent evt) {
|
||||
JDialog jd = new JDialog();
|
||||
jd.setLayout(new FlowLayout());
|
||||
jd.setBounds(500,300,400,100);
|
||||
JLabel jlabel = new JLabel("etes vous sûr de vouloir fermer ? ");
|
||||
JButton oui = new JButton("oui");
|
||||
oui.addActionListener(m -> {
|
||||
parent.getPdfPanel().dechargerPdf();
|
||||
parent.setTitle(GestionPdf.TITRE_APPLICATION);
|
||||
parent.pack();
|
||||
jd.setVisible(false);
|
||||
});
|
||||
JButton non = new JButton("non");
|
||||
non.addActionListener(n -> jd.setVisible(false));
|
||||
jd.add(jlabel);
|
||||
jd.add(oui);
|
||||
jd.add(non);
|
||||
jd.setVisible(true);
|
||||
if (parent.getPdfPanel().isCharge()) {
|
||||
String TITRE = "Fermeture du document";
|
||||
String MESSAGE = "Etes vous sûr de vouloir fermer le document ?";
|
||||
|
||||
if (Popup.OuiNonPopup(parent, TITRE, MESSAGE) == JOptionPane.YES_OPTION) parent.fermerPdf();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
* Classe abstraite qui défini les Elements de menu qui necessite d'acceder à leur Fenêtre parente
|
||||
*
|
||||
* @author Léo Franch
|
||||
* @author Lucas Vabre
|
||||
@@ -23,25 +23,26 @@ import java.awt.event.ActionEvent;
|
||||
public abstract class MenuItem extends JMenuItem {
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
IhmPdf parent;
|
||||
Fenetre parent;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Crée un nouvel Element de Menu avec un nom, une action et se référence dans la liste des raccourcis claviers
|
||||
*
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
* @param name Nom de l'action
|
||||
*/
|
||||
public MenuItem(IhmPdf parent, String name) {
|
||||
public MenuItem(Fenetre parent, String name) {
|
||||
super(name);
|
||||
this.parent = parent;
|
||||
addActionListener(this::action);
|
||||
RaccourcisClavier.listeMenuItems.add(this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Action de l'element lors du clic
|
||||
* @param evt Action de l'utilisateur (clic)
|
||||
*/
|
||||
protected abstract void action(ActionEvent evt);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -24,15 +23,10 @@ public class ModeSepare extends JRadioButtonMenuItem {
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
public ModeSepare() {
|
||||
super("Mode Séparé");
|
||||
|
||||
addActionListener(e -> {
|
||||
GestionMode.setModeSepare();
|
||||
});
|
||||
|
||||
addActionListener(e -> GestionMode.setModeSepare());
|
||||
RaccourcisClavier.listeMenuItems.add(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -22,13 +21,12 @@ import javax.swing.*;
|
||||
*/
|
||||
public class ModeSynchronise extends JRadioButtonMenuItem {
|
||||
|
||||
/**
|
||||
* TODO
|
||||
*/
|
||||
public ModeSynchronise() {
|
||||
super("Mode Synchronisé");
|
||||
|
||||
addActionListener(e -> {
|
||||
GestionMode.setModeSynchronise();
|
||||
});
|
||||
|
||||
addActionListener(e -> GestionMode.setModeSynchronise());
|
||||
RaccourcisClavier.listeMenuItems.add(this);
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
@@ -25,7 +25,7 @@ public class ModifierTouches extends MenuItem {
|
||||
* TODO
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
public ModifierTouches(IhmPdf parent) {
|
||||
public ModifierTouches(Fenetre parent) {
|
||||
super(parent, "Modifier Touches");
|
||||
}
|
||||
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.GestionFenetre;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
@@ -26,16 +26,16 @@ public class NouvelleFenetre extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public NouvelleFenetre(IhmPdf parent) {
|
||||
public NouvelleFenetre(Fenetre parent) {
|
||||
super(parent, "Nouvelle Fenêtre");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action(ActionEvent evt) {
|
||||
/* Essaye de créer une nouvelle fenêtre */
|
||||
GestionPdf.newIhmPdf();
|
||||
GestionFenetre.newIhmPdf();
|
||||
|
||||
/* Désactive le bouton si on a atteint la limite des affichages */
|
||||
if (GestionPdf.ihmPdfList.size() == GestionPdf.maxPdf) GestionMode.desactiverFenetre();
|
||||
if (GestionFenetre.FENETRE_LIST.size() == GestionFenetre.NB_MAX_PDF) GestionMode.desactiverFenetre();
|
||||
}
|
||||
}
|
||||
@@ -6,12 +6,11 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.Popup;
|
||||
import lecteur_pdf.SelectionnerFichier;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
@@ -28,7 +27,7 @@ public class OuvrirFichier extends MenuItem {
|
||||
* TODO
|
||||
*
|
||||
*/
|
||||
public OuvrirFichier(IhmPdf parent) {
|
||||
public OuvrirFichier(Fenetre parent) {
|
||||
super(parent, "Ouvrir");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_O, KeyEvent.CTRL_DOWN_MASK);
|
||||
@@ -45,14 +44,16 @@ public class OuvrirFichier extends MenuItem {
|
||||
|
||||
/* Si il y a deja un fichier d'ouvert, on le ferme */
|
||||
parent.getPdfPanel().dechargerPdf();
|
||||
parent.setTitle(GestionPdf.TITRE_APPLICATION);
|
||||
parent.setTitle(Fenetre.TITRE);
|
||||
parent.pack();
|
||||
|
||||
if (parent.getPdfPanel().chargerPdf(fichier)) {
|
||||
parent.setTitle(GestionPdf.TITRE_APPLICATION + " - " + fichier.getName());
|
||||
parent.setTitle(Fenetre.TITRE + " - " + fichier.getName());
|
||||
parent.pack();
|
||||
} else {
|
||||
// TODO Erreur fichier n'as pas pu etre chargé
|
||||
final String TITRE = "Erreur";
|
||||
final String MESSAGE = "Erreur : Le document n'as pas pu être chargé";
|
||||
Popup.errorPopup(parent, TITRE, MESSAGE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
@@ -9,7 +9,7 @@ public class PageEntiere extends MenuItem {
|
||||
* TODO
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
public PageEntiere(IhmPdf parent) {
|
||||
public PageEntiere(Fenetre parent) {
|
||||
super(parent, "Page Entière");
|
||||
}
|
||||
|
||||
|
||||
@@ -7,11 +7,10 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.GestionFenetre;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -27,13 +26,13 @@ public class PagePrecedente extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public PagePrecedente(IhmPdf parent) {
|
||||
public PagePrecedente(Fenetre parent) {
|
||||
super(parent, "Page précédente");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void action(ActionEvent evt) {
|
||||
if (GestionMode.isModeSepare()) parent.getPdfPanel().previousPage();
|
||||
else GestionPdf.previousPages();
|
||||
else GestionFenetre.previousPages();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,11 +7,10 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.GestionFenetre;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -27,13 +26,13 @@ public class PageSuivante extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public PageSuivante(IhmPdf parent) {
|
||||
public PageSuivante(Fenetre parent) {
|
||||
super(parent, "Page suivante");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void action(ActionEvent evt) {
|
||||
if (GestionMode.isModeSepare()) parent.getPdfPanel().nextPage();
|
||||
else GestionPdf.nextPages();
|
||||
else GestionFenetre.nextPages();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -25,10 +24,8 @@ public class PleinEcran extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public PleinEcran(IhmPdf parent) {
|
||||
public PleinEcran(Fenetre parent) {
|
||||
super(parent, "Mode Plein Ecran");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_P, KeyEvent.CTRL_DOWN_MASK);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
|
||||
@@ -11,7 +11,7 @@ public class PleineLargeur extends MenuItem{
|
||||
* TODO
|
||||
* @param parent Référence de la fenêtre qui possède l'instance de ce MenuItem
|
||||
*/
|
||||
public PleineLargeur(IhmPdf parent) {
|
||||
public PleineLargeur(Fenetre parent) {
|
||||
super(parent, "Pleine Largeur");
|
||||
}
|
||||
|
||||
|
||||
@@ -6,12 +6,11 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
import lecteur_pdf.Popup;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -27,28 +26,14 @@ public class Quitter extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public Quitter(IhmPdf parent) {
|
||||
public Quitter(Fenetre parent) {
|
||||
super(parent, "Quitter");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_Q, KeyEvent.CTRL_DOWN_MASK);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void action(ActionEvent evt) {
|
||||
JDialog jd = new JDialog();
|
||||
jd.setLayout(new FlowLayout());
|
||||
jd.setBounds(500,300,400,100);
|
||||
JLabel jlabel = new JLabel("etes vous sûr de vouloir quitter ? ");
|
||||
JButton oui = new JButton("oui");
|
||||
oui.addActionListener(m -> {
|
||||
parent.quitter();
|
||||
jd.setVisible(false);
|
||||
});
|
||||
JButton non = new JButton("non");
|
||||
non.addActionListener(n -> jd.setVisible(false));
|
||||
jd.add(jlabel);
|
||||
jd.add(oui);
|
||||
jd.add(non);
|
||||
jd.setVisible(true);
|
||||
final String TITRE = "Quitter";
|
||||
final String MESSAGE = "Etes-vous sûr de vouloir quitter l'application ?";
|
||||
if (Popup.OuiNonPopup(parent, TITRE, MESSAGE) == JOptionPane.YES_OPTION) parent.quitter();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -25,11 +24,8 @@ public class ZoomDefaut extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public ZoomDefaut(IhmPdf parent) {
|
||||
public ZoomDefaut(Fenetre parent) {
|
||||
super(parent, "Zoom 100%");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_G, KeyEvent.CTRL_DOWN_MASK);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -25,11 +24,8 @@ public class ZoomMoins extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public ZoomMoins(IhmPdf parent) {
|
||||
public ZoomMoins(Fenetre parent) {
|
||||
super(parent, "Zoom 50%");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_F, KeyEvent.CTRL_DOWN_MASK);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
|
||||
package lecteur_pdf.menuBar.menuItems;
|
||||
|
||||
import lecteur_pdf.IhmPdf;
|
||||
import lecteur_pdf.Fenetre;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
/**
|
||||
* TODO commentaires
|
||||
@@ -25,11 +24,8 @@ public class ZoomPlus extends MenuItem {
|
||||
* TODO
|
||||
* @param parent
|
||||
*/
|
||||
public ZoomPlus(IhmPdf parent) {
|
||||
public ZoomPlus(Fenetre parent) {
|
||||
super(parent, "Zoom 150%");
|
||||
|
||||
// setRaccourcis(KeyEvent.VK_H, KeyEvent.CTRL_DOWN_MASK);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -21,7 +21,7 @@ import java.io.IOException;
|
||||
* @author Noé Villeneuve
|
||||
* @author Tristan Nogaret
|
||||
*/
|
||||
public class PdfLoader {
|
||||
public class DocumentPdf {
|
||||
|
||||
/**
|
||||
* TODO
|
||||
@@ -42,7 +42,7 @@ public class PdfLoader {
|
||||
* @param file
|
||||
* @throws IOException
|
||||
*/
|
||||
public PdfLoader(File file) throws IOException {
|
||||
public DocumentPdf(File file) throws IOException {
|
||||
document = PDDocument.load(file);
|
||||
renderer = new PDFRenderer(document);
|
||||
minWidth = -1;
|
||||
@@ -112,16 +112,4 @@ public class PdfLoader {
|
||||
minHeight = -1;
|
||||
} catch (IOException ignored) {}
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
*
|
||||
* @param file
|
||||
*/
|
||||
public void load(File file) {
|
||||
try {
|
||||
document = PDDocument.load(file);
|
||||
} catch (IOException ignored) {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,60 +1,60 @@
|
||||
package lecteur_pdf.pdf;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
public class OutilsImage {
|
||||
|
||||
/**
|
||||
* Change la taille d'une image
|
||||
* @param img
|
||||
* @param newW
|
||||
* @param newH
|
||||
* @return
|
||||
*/
|
||||
public static BufferedImage resize(BufferedImage img, int newW, int newH) {
|
||||
int w = img.getWidth();
|
||||
int h = img.getHeight();
|
||||
BufferedImage dimg = new BufferedImage(newW, newH, img.getType());
|
||||
Graphics2D g = dimg.createGraphics();
|
||||
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
|
||||
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
|
||||
g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null);
|
||||
g.dispose();
|
||||
return dimg;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param img
|
||||
* @param newW
|
||||
* @return
|
||||
*/
|
||||
public static BufferedImage resizeWidth(PdfLoader a, Icon img, int newW) {
|
||||
int w = a.getMinWidth();
|
||||
int h = a.getMinHeight();
|
||||
|
||||
float ratio = (float)newW / (float)w;
|
||||
|
||||
return a.setScale(ratio);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param img
|
||||
* @param newH
|
||||
* @return
|
||||
*/
|
||||
public static BufferedImage resizeHeight(BufferedImage img, int newH) {
|
||||
int w = img.getWidth();
|
||||
int h = img.getHeight();
|
||||
|
||||
int ratio = newH / (1+h);
|
||||
|
||||
int newW = w * ratio;
|
||||
|
||||
return resize(img, newW, newH);
|
||||
}
|
||||
|
||||
}
|
||||
//package lecteur_pdf.pdf;
|
||||
//
|
||||
//import javax.swing.*;
|
||||
//import java.awt.*;
|
||||
//import java.awt.image.BufferedImage;
|
||||
//
|
||||
//public class OutilsImage {
|
||||
//
|
||||
// /**
|
||||
// * Change la taille d'une image
|
||||
// * @param img
|
||||
// * @param newW
|
||||
// * @param newH
|
||||
// * @return
|
||||
// */
|
||||
// public static BufferedImage resize(BufferedImage img, int newW, int newH) {
|
||||
// int w = img.getWidth();
|
||||
// int h = img.getHeight();
|
||||
// BufferedImage dimg = new BufferedImage(newW, newH, img.getType());
|
||||
// Graphics2D g = dimg.createGraphics();
|
||||
// g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
|
||||
// RenderingHints.VALUE_INTERPOLATION_BILINEAR);
|
||||
// g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null);
|
||||
// g.dispose();
|
||||
// return dimg;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// *
|
||||
// * @param img
|
||||
// * @param newW
|
||||
// * @return
|
||||
// */
|
||||
// public static BufferedImage resizeWidth(DocumentPdf a, Icon img, int newW) {
|
||||
// int w = a.getMinWidth();
|
||||
// int h = a.getMinHeight();
|
||||
//
|
||||
// float ratio = (float)newW / (float)w;
|
||||
//
|
||||
// return a.setScale(ratio);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// *
|
||||
// * @param img
|
||||
// * @param newH
|
||||
// * @return
|
||||
// */
|
||||
// public static BufferedImage resizeHeight(BufferedImage img, int newH) {
|
||||
// int w = img.getWidth();
|
||||
// int h = img.getHeight();
|
||||
//
|
||||
// int ratio = newH / (1+h);
|
||||
//
|
||||
// int newW = w * ratio;
|
||||
//
|
||||
// return resize(img, newW, newH);
|
||||
// }
|
||||
//
|
||||
//}
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
package lecteur_pdf.pdf;
|
||||
|
||||
import lecteur_pdf.GestionMode;
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.GestionFenetre;
|
||||
import lecteur_pdf.Popup;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
@@ -33,7 +34,7 @@ public class PdfPanel extends JPanel {
|
||||
private boolean processing;
|
||||
|
||||
/* Chargeur de Pdf */
|
||||
private PdfLoader pdfLoader;
|
||||
private DocumentPdf pdfLoader;
|
||||
|
||||
/* Interface */
|
||||
private final JTextField indexPageInput;
|
||||
@@ -123,7 +124,7 @@ public class PdfPanel extends JPanel {
|
||||
*/
|
||||
private void btnSuivantAction(ActionEvent evt) {
|
||||
if (GestionMode.isModeSepare()) nextPage();
|
||||
else GestionPdf.nextPages();
|
||||
else GestionFenetre.nextPages();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -131,7 +132,7 @@ public class PdfPanel extends JPanel {
|
||||
*/
|
||||
private void btnPrecedentAction(ActionEvent evt) {
|
||||
if (GestionMode.isModeSepare()) previousPage();
|
||||
else GestionPdf.previousPages();
|
||||
else GestionFenetre.previousPages();
|
||||
}
|
||||
|
||||
public void resize() {
|
||||
@@ -167,44 +168,44 @@ public class PdfPanel extends JPanel {
|
||||
*/
|
||||
public boolean chargerPdf(File pdfFile) {
|
||||
try {
|
||||
setPdfLoader(new PdfLoader(pdfFile));
|
||||
setPdfLoader(new DocumentPdf(pdfFile));
|
||||
setPage(0);
|
||||
return true;
|
||||
} catch (IOException e) {
|
||||
JOptionPane.showMessageDialog(new JFrame(),"Une erreur s'est produite dans le chargement de votre document, il est peut-être corrompu. ");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param pdfLoader
|
||||
*/
|
||||
public void setPdfLoader(PdfLoader pdfLoader) {
|
||||
public void setPdfLoader(DocumentPdf pdfLoader) {
|
||||
this.pdfLoader = pdfLoader;
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* Décharge le document courrant si il y en a un
|
||||
*/
|
||||
public void dechargerPdf() {
|
||||
if (pdfLoader == null) return;
|
||||
if (isCharge()) {
|
||||
/* Ferme le loader et l'efface */
|
||||
pdfLoader.close();
|
||||
pdfLoader = null;
|
||||
|
||||
/* Ferme le loader et l'efface */
|
||||
pdfLoader.close();
|
||||
pdfLoader = null;
|
||||
/* Efface l'image de la page */
|
||||
page.setIcon(null);
|
||||
currentPage = 0;
|
||||
|
||||
/* Efface l'image de la page */
|
||||
page.setIcon(null);
|
||||
currentPage = 0;
|
||||
/* Interface Vide */
|
||||
indexPageInput.setText("");
|
||||
maxPageLabel.setText("/ -");
|
||||
|
||||
/* Interface Vide */
|
||||
indexPageInput.setText("");
|
||||
maxPageLabel.setText("/ -");
|
||||
/* Efface les données relatives au zoom */
|
||||
scaleSizing = 0.0f;
|
||||
scaleZoom = 1.0f;
|
||||
|
||||
/* Efface les données relatives au zoom */
|
||||
scaleSizing = 0.0f;
|
||||
scaleZoom = 1.0f;
|
||||
|
||||
validate();
|
||||
validate();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -247,15 +248,24 @@ public class PdfPanel extends JPanel {
|
||||
* @param index Le numéro de la page où l'on veut se rendre
|
||||
*/
|
||||
private void setPage(int index) {
|
||||
if (!isPageValide(index)) return;
|
||||
if (isPageValide(index)) {
|
||||
|
||||
processing = true;
|
||||
try {
|
||||
page.setIcon(new ImageIcon(pdfLoader.renderPage(index, scaleZoom + scaleSizing)));
|
||||
currentPage = index;
|
||||
indexPageInput.setText(Integer.toString(currentPage + 1));
|
||||
maxPageLabel.setText(String.format("/%d", pdfLoader.getNbPages()));
|
||||
} catch (IOException ignored) {}
|
||||
processing = false;
|
||||
processing = true;
|
||||
try {
|
||||
page.setIcon(new ImageIcon(pdfLoader.renderPage(index, scaleZoom + scaleSizing)));
|
||||
currentPage = index;
|
||||
indexPageInput.setText(Integer.toString(currentPage + 1));
|
||||
maxPageLabel.setText(String.format("/%d", pdfLoader.getNbPages()));
|
||||
} catch (IOException ignored) {}
|
||||
processing = false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prédicat qui vérifie si un PDF est chargé ou non
|
||||
* @return true si un PDF est chargé, false sinon
|
||||
*/
|
||||
public boolean isCharge() {
|
||||
return pdfLoader != null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package lecteur_pdf.raccourcisClavier;
|
||||
|
||||
import lecteur_pdf.GestionPdf;
|
||||
import lecteur_pdf.GestionFenetre;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
@@ -27,10 +27,10 @@ import java.util.Map;
|
||||
*/
|
||||
public class RaccourcisClavier extends JFrame {
|
||||
|
||||
public static boolean saisieBloquee;
|
||||
|
||||
public static final String FICHIER_SAUVEGARDE = "raccourcis.save";
|
||||
|
||||
public static boolean saisieBloquee;
|
||||
|
||||
/**
|
||||
* Liste des menus items, se remplis a la création de chaque MenuItem de l'application
|
||||
*/
|
||||
@@ -82,7 +82,7 @@ public class RaccourcisClavier extends JFrame {
|
||||
public RaccourcisClavier() {
|
||||
super("Modification des raccourcis claviers");
|
||||
saisieBloquee = false;
|
||||
setIconImage(GestionPdf.ICONE);
|
||||
setIconImage(GestionFenetre.ICONE);
|
||||
|
||||
/* Charge le fichier et affecte les raccourcis aux MenuItems */
|
||||
chargerRaccourcis();
|
||||
|
||||
Reference in New Issue
Block a user