Commit 203bc9ac authored by Léo DUBOIS--JULIENNE's avatar Léo DUBOIS--JULIENNE
Browse files

des beaux boutons partout

parent a5511dce
......@@ -35,7 +35,6 @@ import info1.ships.NavyFleet;
import info1.ships.Ship;
import info1.ships.Submarine;
/**
* JPanel affichant la vue pour créer & placer les bateaux sur le plateau.
*
......@@ -69,10 +68,10 @@ public class CreationFlotte extends JPanel {// JPanel {
private Coord selectedCell;
/**
* Création de la vue de la page
*
* @param titre le titre de la fenêtre
*/
* Création de la vue de la page
*
* @param titre le titre de la fenêtre
*/
public CreationFlotte(String titre) {
super(new BorderLayout());
......@@ -83,15 +82,45 @@ public class CreationFlotte extends JPanel {// JPanel {
for (JLabel label : LISTE_BATEAUX_V_FR) {
setIconLabelBateau(label);
}
ready = new JButton("Prêt pour la bataille !");
ready.setPreferredSize(DIMENSION_READY);
reset = new JButton("Recommencer le placement");
ready.setPreferredSize(DIMENSION_RESET);
retour = new JButton("Déserter");
ready.setPreferredSize(DIMENSION_RETOUR);
refresh = new JButton(new ImageIcon("img/interface/bouton/BoutonRafraichirMap.png"));
refresh.setText("Raffraichir la carte");
refresh.setPreferredSize(DIMENSION_REFRESH);
try {
ready = new JButton(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonPret1.png")))
.getScaledInstance((int) DIMENSION_READY.getWidth(),(int) DIMENSION_READY.getHeight(), Image.SCALE_SMOOTH)));
ready.setRolloverIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonPret1Hover.png")))
.getScaledInstance((int) DIMENSION_READY.getWidth(),(int) DIMENSION_READY.getHeight(), Image.SCALE_SMOOTH)));
ready.setPressedIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonPret1Pressed.png")))
.getScaledInstance((int) DIMENSION_READY.getWidth(),(int) DIMENSION_READY.getHeight(), Image.SCALE_SMOOTH)));
ready.setPreferredSize(DIMENSION_READY);
reset = new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonReset1.png")))
.getScaledInstance((int) DIMENSION_RESET.getWidth(),(int) DIMENSION_RESET.getHeight(), Image.SCALE_SMOOTH)));
reset.setRolloverIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonReset1Hover.png")))
.getScaledInstance((int) DIMENSION_RESET.getWidth(),(int) DIMENSION_RESET.getHeight(), Image.SCALE_SMOOTH)));
reset.setPressedIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonReset1Pressed.png")))
.getScaledInstance((int) DIMENSION_RESET.getWidth(),(int) DIMENSION_RESET.getHeight(), Image.SCALE_SMOOTH)));
reset.setPreferredSize(DIMENSION_RESET);
retour = new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonRetour1.png")))
.getScaledInstance((int) DIMENSION_RETOUR.getWidth(),(int) DIMENSION_RETOUR.getHeight(), Image.SCALE_SMOOTH)));
retour.setRolloverIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonRetour1Hover.png")))
.getScaledInstance((int) DIMENSION_RETOUR.getWidth(),(int) DIMENSION_RETOUR.getHeight(), Image.SCALE_SMOOTH)));
retour.setPressedIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonRetour1Pressed.png")))
.getScaledInstance((int) DIMENSION_RETOUR.getWidth(),(int) DIMENSION_RETOUR.getHeight(), Image.SCALE_SMOOTH)));
retour.setPreferredSize(DIMENSION_RETOUR);
refresh = new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/creationFlotte/BoutonRafraichirMap.png")))));
} catch (IOException e) {
ready = new JButton("Prêt pour la bataille !");
ready.setPreferredSize(DIMENSION_READY);
reset = new JButton("Recommencer le placement");
ready.setPreferredSize(DIMENSION_RESET);
retour = new JButton("Déserter");
ready.setPreferredSize(DIMENSION_RETOUR);
refresh = new JButton(new ImageIcon("img/interface/bouton/BoutonRafraichirMap.png"));
refresh.setText("Raffraichir la carte");
refresh.setPreferredSize(DIMENSION_REFRESH);
System.out.println("erreur lors du chargement d'une image");
e.printStackTrace();
}
JPanel grille = new JPanel();
liste = new JPanel();
......@@ -174,29 +203,29 @@ public class CreationFlotte extends JPanel {// JPanel {
}
/**
* Retourne la cellule selectionnée sur la grille
*
* @return la cellule sélectionnée
*/
* Retourne la cellule selectionnée sur la grille
*
* @return la cellule sélectionnée
*/
public Object getSelectedCell() {
return selectedCell;
}
/**
* Ajoute le surlignement de sélection sur les cellules sélectionnées
* Ajoute le surlignement de sélection sur les cellules sélectionnées
*
* @param cell les coordonnées de la cellule sélectionnée
*/
*/
public void selectionCell(Coord cell) {
map.ajouterViseur(cell);
selectedCell = cell;
}
/**
* Permet d'ajouter un bateau sur les cellules sélectionnées
* Permet d'ajouter un bateau sur les cellules sélectionnées
*
* @param cell les coordonnées de la cellule sélectionnée
*/
*/
public void creerBateau(Coord cell) throws BadCoordException, CoordsBadShipException {
Ship newShip;
map.resetCell(selectedCell);
......@@ -220,16 +249,17 @@ public class CreationFlotte extends JPanel {// JPanel {
selectedCell = null;
throw new CoordsBadShipException();
}
selectedCell = null;
switch(appli.getFlotte().add(newShip)){
case 0 :
map.ajouterBateau(newShip);
break;
case -2 :
throw new CoordsBadShipException();
case -3 :
throw new CoordsBadShipException();
for (IShip flotteShip : appli.getFlotte().getShips()) {
for (ICoord c : newShip.getCoords()) {
if (flotteShip.getCoords().contains(c)) {
selectedCell = null;
throw new CoordsBadShipException();
}
}
}
selectedCell = null;
appli.getFlotte().add(newShip);
map.ajouterBateau(newShip);
}
private boolean isVertical(Coord cell) {
......@@ -337,12 +367,7 @@ public class CreationFlotte extends JPanel {// JPanel {
map.addMouseListener(l);
}
public void fixeListenerRefresh(ActionListener l){
public void fixeListenerRefresh(ActionListener l) {
refresh.addActionListener(l);
}
public void actualiserMap(){
map.resetGrille();
map.ajouterFlotte(appli.getFlotte());
}
}
package info1.Vue;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.*;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;
/**
* JDialog affichant les résultats de la partie
......@@ -27,11 +21,16 @@ public class Resultat extends JDialog {
private JPanel vide;
public static final int WIDTH = 600;
public static final int HEIGHT = 400;
public static final int HEIGHT = 400;
private Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
private static final int VGAP = 50;
private static final Dimension DIMENSION_REJOUER = new Dimension((WIDTH - 2 * VGAP) / 3, 100);
private static final Dimension DIMENSION_NOUVELLEFLOTTE = new Dimension((WIDTH - 2 * VGAP) / 3, 100);
private static final Dimension DIMENSION_QUITTER = new Dimension((WIDTH - 2 * VGAP) / 3, 100);
private int screenWidth = (int) screenSize.getWidth();
private int screenHeight = (int) screenSize.getHeight();
private int screenHeight = (int) screenSize.getHeight();
/**
* Créer la vue de la fenêtre
......@@ -85,6 +84,43 @@ public class Resultat extends JDialog {
this.setResizable(false);
}
try {
rejouer = new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
rejouer.setRolloverIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1Hover.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
rejouer.setPressedIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1Pressed.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
rejouer.setPreferredSize(DIMENSION_REJOUER);
nouvelleFlotte = new JButton(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRetourFlotte1.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
nouvelleFlotte.setRolloverIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRetourFlotte1Hover.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
nouvelleFlotte.setPressedIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRetourFlotte1Pressed.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
nouvelleFlotte.setPreferredSize(DIMENSION_NOUVELLEFLOTTE);
quitter = new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonQuitter1.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
quitter.setRolloverIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonQuitter1Hover.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
quitter.setPressedIcon(
new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonQuitter1Pressed.png")))
.getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
quitter.setPreferredSize(DIMENSION_QUITTER);
}catch(
IOException e)
{
System.out.println("erreur lors du chargement d'une image");
e.printStackTrace();
}
/**
* Gère le bouton "Quitter"
*
......@@ -111,16 +147,4 @@ public class Resultat extends JDialog {
public void fixeRejouerListener(ActionListener action) {
rejouer.addActionListener(action);
}
try {
rejouer= new JButton(new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1.png"))).getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
creerFlotte.setRolloverIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1Hover.png"))).getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
creerFlotte.setPressedIcon(new ImageIcon((ImageIO.read(new File("img/interface/bouton/resultat/BoutonRejouer1Pressed.png"))).getScaledInstance(175, 70, Image.SCALE_SMOOTH)));
creerFlotte.setPreferredSize(DIMENSION_BOUTTONS);
} catch (IOException e) {
System.out.println("erreur lors du chargement d'une image");
e.printStackTrace();
}
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment