// Tom Monin et Clément Martins // paintChoix V1 // class pour l'affichage de la selection des lignes, collonnes et nombre de mines import java.awt.*; import javax.swing.*; import javax.swing.JComponent; public class paintChoix extends JComponent{ private boolean selectionner; private paintChoix pinceau; private boolean clique; private int x; private int fonction; public paintChoix(int x0, int fonction0){ this.clique=false; this.pinceau=null; this.selectionner=false; this.x=30-x0; this.fonction=fonction0; //de base ce n'est pas selectionner } public void selectionner(boolean verif){ this.selectionner=verif; if(this.pinceau!=null){ this.pinceau.selectionner(verif); } this.repaint(); } public void setPaintChoix(paintChoix pinceau0){ this.pinceau=pinceau0; } public void setClique(boolean verif){ this.clique=verif; if(this.pinceau!=null){ this.pinceau.setClique(verif); } this.repaint(); } public int getFonction(){ return this.fonction; } public int getN(){ return this.x; } @Override protected void paintComponent(Graphics pinceau) { // obligatoire : on crée un nouveau pinceau pour pouvoir le modifier plus tard Graphics secondPinceau = pinceau.create(); // obligatoire : si le composant n'est pas censé être transparent if (this.isOpaque()) { // obligatoire : on repeint toute la surface avec la couleur de fond secondPinceau.setColor(this.getBackground()); secondPinceau.fillRect(0, 0, this.getWidth(), this.getHeight()); } if(this.clique==true){ secondPinceau.setColor(new Color(0, 127, 255)); secondPinceau.fillRect(0, 0, this.getWidth(), this.getHeight()); } if(selectionner==true){ secondPinceau.setColor(new Color(255, 127, 0)); secondPinceau.fillRect(0, 0, this.getWidth(), this.getHeight()); } secondPinceau.setColor(new Color(0,0,0)); secondPinceau.drawRect(0, 0, this.getWidth(), this.getHeight()); } }