From 335d66bccbd6234bc543de89e6c56f19d564f98c Mon Sep 17 00:00:00 2001 From: piquerez <corentin.piquerez1@etu.univ-lorraine.fr> Date: Fri, 19 May 2023 15:08:42 +0200 Subject: [PATCH] =?UTF-8?q?boutons=20save=20et=20export=20fonctionnels,=20?= =?UTF-8?q?param=C3=A8tres=20en=20cours?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/2223_S2/version.txt | 4 +- shukan/ShukanController.java | 13 ++- shukan/ShukanParameters.java | 108 ++++++++++++++++++ 3 files changed, 119 insertions(+), 6 deletions(-) create mode 100644 shukan/ShukanParameters.java diff --git a/out/production/sae2.01-developpement-application/data/2223_S2/version.txt b/out/production/sae2.01-developpement-application/data/2223_S2/version.txt index a53f5f1..b644791 100644 --- a/out/production/sae2.01-developpement-application/data/2223_S2/version.txt +++ b/out/production/sae2.01-developpement-application/data/2223_S2/version.txt @@ -1,2 +1,2 @@ -1 -220708 +10 +230519 diff --git a/shukan/ShukanController.java b/shukan/ShukanController.java index 89b6ec0..21df055 100644 --- a/shukan/ShukanController.java +++ b/shukan/ShukanController.java @@ -1,4 +1,6 @@ package shukan; +import javax.swing.*; +import java.awt.*; import java.awt.event.*; @@ -16,7 +18,6 @@ public class ShukanController /** Constructs a event handler. * @param canvas display area. - * @param myView OpenGL context. */ public ShukanController (ShukanView canvas, ShukanViewBar bar, ShukanData data) { @@ -218,10 +219,14 @@ public class ShukanController //if (data.followRight ()) canvas.repaint (); else if (e.getSource()==bar.buttons[6]) new ShukanTex (data); - else if (e.getSource()==bar.buttons[7]) - System.out.println("parameter"); + else if (e.getSource()==bar.buttons[7]){ + EventQueue.invokeLater(() -> { + ShukanParameters myParameters = new ShukanParameters("Changer de thème"); + myParameters.setSize(300, 300); + myParameters.setVisible(true); + }); + } canvas.requestFocusInWindow(); - } } diff --git a/shukan/ShukanParameters.java b/shukan/ShukanParameters.java new file mode 100644 index 0000000..955a9f1 --- /dev/null +++ b/shukan/ShukanParameters.java @@ -0,0 +1,108 @@ +package shukan; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + + +class ShukanParameters extends JFrame { + private JPanel pPrincipal,p, p1; + private JButton changerdetheme, theme1, theme2, theme3, retour, changertouches, changercouleurs; + + public ShukanParameters(String titre) { + super(titre); + p = new JPanel(); + + p1 = new JPanel(new GridBagLayout()); + GridBagConstraints gbc = new GridBagConstraints(); + + changerdetheme = new JButton("Changer de thème"); + changerdetheme.setPreferredSize(new Dimension(170, 25)); + changertouches = new JButton("Changer les "); + changertouches.setPreferredSize(new Dimension(170, 25)); + changercouleurs = new JButton("Changer de thème"); + changercouleurs.setPreferredSize(new Dimension(170, 25)); + changerdetheme.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + remove(pPrincipal); + validate(); + repaint(); + + gbc.insets = new Insets(10, 10, 10, 10); + + theme1 = new JButton("Thème sombre"); + theme1.setPreferredSize(new Dimension(150, 25)); + /*theme1.addActionListener(new ActionListener() { + public void actionPerformed(ActionEVent e) { + getContentPane().setBackground(Color.BLACK); + } + });*/ + + theme2 = new JButton("Thème clair"); + theme2.setPreferredSize(new Dimension(150, 25)); + /*theme2.addActionListener(new ActionListener() { + public void actionPerformed(ActionEVent e) { + getContentPane().setBackground(Color.WHITE); + } + });*/ + + theme3 = new JButton("Thème modéré"); + theme3.setPreferredSize(new Dimension(150, 25)); + /*theme3.addActionListener(new ActionListener() { + public void actionPerformed(ActionEVent e) { + getContentPane().setBackground(Color.GRIS); + } + });*/ + + retour = new JButton("Retour"); + retour.setPreferredSize(new Dimension(150, 25)); + retour.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + remove(pPrincipal); + validate(); + repaint(); + + p.removeAll(); + p.add(changerdetheme); + pPrincipal = p; + + add(pPrincipal); + validate(); + repaint(); + } + }); + + + gbc.gridx = 0; + gbc.gridy = 0; + gbc.fill = GridBagConstraints.HORIZONTAL; + p1.add(theme1, gbc); + + gbc.gridx = 0; + gbc.gridy = 1; + p1.add(theme2, gbc); + + gbc.gridx = 0; + gbc.gridy = 2; + p1.add(theme3, gbc); + + gbc.gridx = 0; + gbc.gridy = 3; + p1.add(retour, gbc); + + add(p1); + pPrincipal = p1; + validate(); + repaint(); + } + }); + + p.add(changerdetheme); + pPrincipal = p; + add(pPrincipal); + } +} + + + -- GitLab