diff --git a/ProjetJava/src/main/java/views/AdminPanel.java b/ProjetJava/src/main/java/views/AdminPanel.java new file mode 100644 index 0000000000000000000000000000000000000000..b20e650e091f7bcda7eebe25a0ff7da66d288ed7 --- /dev/null +++ b/ProjetJava/src/main/java/views/AdminPanel.java @@ -0,0 +1,126 @@ +package views; + +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.GridLayout; +import javax.swing.ButtonGroup; +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.JTextField; + +/** + * + * @author Axel L. + */ +public class AdminPanel extends JPanel { + + // Initialisation + private final JComboBox comboQuestions; + private final JRadioButton radioLvl1, radioLvl2; + private final JTextField textQuestion, textAnswer; + private final JButton btnSave, btnModify; + + public AdminPanel() { + + // DESIGN \\ + setLayout(new BorderLayout()); + + Font globalFont = new Font("Arial", Font.PLAIN, 18); + + JPanel container = new JPanel(new GridLayout(4, 1, 0, 30)); + + // JCombo (Liste déroulante) + JPanel panelCombo = new JPanel(new FlowLayout(FlowLayout.CENTER)); + JLabel labelCombo = new JLabel("Sélection : "); + labelCombo.setFont(globalFont); + comboQuestions = new JComboBox<>(); + comboQuestions.addItem("Provisoire "); + comboQuestions.setFont(globalFont); + + panelCombo.add(labelCombo); + panelCombo.add(comboQuestions); + + // JRadioButton + JPanel panelLevel = new JPanel(new FlowLayout(FlowLayout.CENTER)); + JLabel labelLevel = new JLabel("Niveau :"); + labelLevel.setFont(globalFont); + + // True sur le niveau 1 pour l'avoir par défaut + radioLvl1 = new JRadioButton("Niveau 1", true); + radioLvl2 = new JRadioButton("Niveau 2"); + radioLvl1.setFont(globalFont); + radioLvl2.setFont(globalFont); + + // Pour grouper les boutons radio (pour qu'un seul soit coché) + ButtonGroup groupLevel = new ButtonGroup(); + groupLevel.add(radioLvl1); + groupLevel.add(radioLvl2); + + // AJout au panel + panelLevel.add(labelLevel); + panelLevel.add(radioLvl1); + panelLevel.add(radioLvl2); + + // Enoncé question + JPanel panelQ = new JPanel(new FlowLayout(FlowLayout.CENTER)); + JLabel labelQ = new JLabel("Enoncé : "); + labelQ.setFont(globalFont); + + textQuestion = new JTextField(20); + textQuestion.setFont(globalFont); + + panelQ.add(labelQ); + panelQ.add(textQuestion); + + // Réponse de la question + JPanel panelAnswer = new JPanel(new FlowLayout(FlowLayout.CENTER)); + JLabel labelAnswer = new JLabel("Réponse : "); + labelAnswer.setFont(globalFont); + + textAnswer = new JTextField(20); + textAnswer.setFont(globalFont); + + panelAnswer.add(labelAnswer); + panelAnswer.add(textAnswer); + // Ajout total + container.add(panelCombo); + container.add(panelLevel); + container.add(panelQ); + container.add(panelAnswer); + + JPanel containerCenter = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 50)); + containerCenter.add(container); + + add(containerCenter, BorderLayout.CENTER); + + // BOUTONS \\ + JPanel panelButtons = new JPanel(new FlowLayout(FlowLayout.CENTER, 15, 20)); + btnSave = new JButton("Enregistrer"); + btnModify = new JButton("Modifier"); + + panelButtons.add(btnSave); + panelButtons.add(btnModify); + + // Ajout au sud + add(panelButtons, BorderLayout.SOUTH); + + // EVENT \\ + comboQuestions.addActionListener(e -> { + int index = comboQuestions.getSelectedIndex(); + + if (index == 0) { + textQuestion.setText(""); + textAnswer.setText(""); + radioLvl1.setSelected(true); + btnSave.setText("Enregistrer"); + } else { + btnModify.setText("Modifier"); + } + }); + + } +} diff --git a/ProjetJava/src/main/java/views/PrimaryWindow.java b/ProjetJava/src/main/java/views/PrimaryWindow.java index e6ecc43d128b408ccca79846398b35644b4ad189..fe9d4fa1582d94a7a571240d28e7cee0c4ed776f 100644 --- a/ProjetJava/src/main/java/views/PrimaryWindow.java +++ b/ProjetJava/src/main/java/views/PrimaryWindow.java @@ -78,9 +78,7 @@ public class PrimaryWindow extends JFrame { // Vérification si l'onglet est déjà ouvert if (tabbedPane.indexOfTab("Administration") == -1) { // Création du panel Administration [PROVISOIRE TANT QUE LA PAGE ADMIN N'EXISTE PAS ENCORE !] - JPanel panelAdmin = new JPanel(); - panelAdmin.setBackground(Color.LIGHT_GRAY); - panelAdmin.add(new JLabel("Zone Administrateur")); + AdminPanel panelAdmin = new AdminPanel(); // Ajout et focus sur l'onglet Administration tabbedPane.addTab("Administration", panelAdmin);