Commit 654c7640 authored by Léo DUBOIS--JULIENNE's avatar Léo DUBOIS--JULIENNE
Browse files

background color pour les pop-up

parent 0f6757e8
......@@ -2,9 +2,7 @@ package info1.Vue;
import javax.swing.*;
import javax.swing.text.*;
import info1.application.appli;
import java.awt.*;
import java.awt.event.*;
......
package info1.Vue;
import javax.swing.*;
import javax.swing.text.*;
import info1.application.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.*;
public class Regles extends JDialog {
public static final int WIDTH = 600;
public static final int HEIGHT = 700;
private JTextArea regles = new JTextArea();
private JTextPane regles = new JTextPane();
private Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
......@@ -25,7 +26,7 @@ public class Regles extends JDialog {
JPanel panelPrincipal = new JPanel(new BorderLayout());
if(appli.getVersion()) {
regles.setText("REGLES DE LA BATAILLE NAVALE (FORMATION FRANCAISE)\n" + "\n" +
appendToPane(regles,"REGLES DE LA BATAILLE NAVALE (FORMATION FRANCAISE)\n" + "\n" +
"La bataille navale, appelée aussi touché-coulé, est un jeu de société dans lequel deux joueurs\n" +
"doivent placer des « navires » sur une grille tenue secrète et tenter de « toucher » les navires\n" +
"adverses. Le gagnant est celui qui parvient à couler (c'est à dire toucher toutes les cases)\n" +
......@@ -58,10 +59,10 @@ public class Regles extends JDialog {
"\n" +
"\nPS : la flotte Belge ne dispose pas des mêmes nombre de bateaux que cette version.\" +\n" +
"\nChangez la langue dans les options pour voir la disposition Belge \n\n " +
"sources : https://fr.wikipedia.org/wiki/Bataille_navale_(jeu)");
"sources : https://fr.wikipedia.org/wiki/Bataille_navale_(jeu)", Color.WHITE);
}
else {
regles.setText(" REGLES DE LA BATAILLE NAVALE BELGE\n" +
appendToPane(regles," REGLES DE LA BATAILLE NAVALE BELGE\n" +
"\n" +
" La bataille navale, appelée aussi touché-coulé, est un jeu de société dans lequel deux joueurs\n" +
" doivent placer des « navires » sur une grille tenue secrète et tenter de « toucher » les navires\n" +
......@@ -94,10 +95,11 @@ public class Regles extends JDialog {
" Chaque joueur dispose d'un cuirassé (4 cases de long), de deux croiseurs (3 cases de long), de\n" +
" trois destroyers (2 cases de long) et de quatre sous-marin (1 case de long).\n" +
"\n" +
" sources : https://fr.wikipedia.org/wiki/Bataille_navale_(jeu)\n");
" sources : https://fr.wikipedia.org/wiki/Bataille_navale_(jeu)\n", Color.WHITE);
}
regles.setEditable(false);
regles.setMargin(new Insets(5, 5, 5, 5));
regles.setBackground(appli.BACKGROUND_COLOR);
JScrollPane principal = new JScrollPane(regles);
panelPrincipal.setPreferredSize(new Dimension(WIDTH, HEIGHT));
......@@ -110,4 +112,17 @@ public class Regles extends JDialog {
this.setResizable(false);
this.setAlwaysOnTop(true);
}
private void appendToPane(JTextPane tp, String msg, Color c) {
StyleContext sc = StyleContext.getDefaultStyleContext();
AttributeSet aset = sc.addAttribute(SimpleAttributeSet.EMPTY, StyleConstants.Foreground, c);
aset = sc.addAttribute(aset, StyleConstants.FontFamily, "Lucida Console");
aset = sc.addAttribute(aset, StyleConstants.Alignment, StyleConstants.ALIGN_JUSTIFIED);
int len = tp.getDocument().getLength();
tp.setCaretPosition(len);
tp.setCharacterAttributes(aset, false);
tp.replaceSelection(msg);
}
}
package info1.application;
import java.awt.*;
import javax.swing.*;
import com.mashape.unirest.http.exceptions.UnirestException;
import info1.Vue.*;
import info1.Vue.Menu;
import info1.Vue.*;
......@@ -13,8 +10,6 @@ import info1.network.*;
import info1.ships.*;
import info1.controlleur.*;
import java.awt.*;
public class appli {
private static Game game;
......@@ -163,12 +158,12 @@ public class appli {
return serverUrl;
}
public static void setBgColorComponents(JPanel component) {
for(Component component1:component.getComponents())
public static void setBgColorComponents(JPanel jPanel) {
for(Component component1:jPanel.getComponents())
{
if(component1 instanceof JPanel) setBgColorComponents( (JPanel) component1);
component1.setBackground(appli.BACKGROUND_COLOR);
}
component.setBackground(appli.BACKGROUND_COLOR);
jPanel.setBackground(appli.BACKGROUND_COLOR);
}
}
\ No newline at end of file
package info1.controlleur;
import info1.Vue.Options;
import info1.application.appli;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
......@@ -16,6 +17,7 @@ public OuvrirOptionsControleur() {
public void actionPerformed(ActionEvent e) {
Options option = new Options("Selection de la version.");
option.fixeListenerFermerOptions(new FermerOptionsControleur(option));
appli.setBgColorComponents((JPanel) option.getContentPane());
option.setVisible(true);
}
}
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