$
This commit is contained in:
parent
16a83ebdbd
commit
8a858b2153
@ -1,8 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/out/production/FIProjetIHM2022" />
|
||||
<output-test url="file://$MODULE_DIR$/out/test/FIProjetIHM2022" />
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
@ -10,7 +8,7 @@
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="mariadb-connector" level="project" />
|
||||
<orderEntry type="library" name="FI_PRJ" level="project" />
|
||||
<orderEntry type="library" name="mariadb-connector2" level="project" />
|
||||
<orderEntry type="library" name="mariadb-connector1" level="project" />
|
||||
</component>
|
||||
</module>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -2,6 +2,8 @@ package Test;
|
||||
|
||||
import API.Etudiant;
|
||||
import API.Groupe;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.ArrayList;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JLabel;
|
||||
@ -15,6 +17,8 @@ public class AdminView extends JPanel {
|
||||
public AdminView(ArrayList<Etudiant> e, ArrayList<Groupe> g, Controller listener) {
|
||||
super();
|
||||
|
||||
this.setLayout(new GridBagLayout());
|
||||
|
||||
this.listener = listener;
|
||||
this.g = g;
|
||||
this.e = e;
|
||||
|
@ -219,6 +219,19 @@ public class BDatabase {
|
||||
return listGroupe;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Recuperer le nombre de membre d'un groupe
|
||||
*
|
||||
* @param groupe_id le groupes
|
||||
* @return le nombre de membre
|
||||
* */
|
||||
public int getMemberCount(int groupe_id) {
|
||||
ArrayList<String> forCount = this.fetchAll(
|
||||
"SELECT nom FROM fi_eleves WHERE groupe=" + groupe_id);
|
||||
|
||||
return forCount.size();
|
||||
}
|
||||
|
||||
/**
|
||||
* Recuperer l'hote courant.
|
||||
@ -251,20 +264,4 @@ public class BDatabase {
|
||||
public String toString() {
|
||||
return this.db_host + "\n" + this.db_name + "\n" + this.db_user + "\n";
|
||||
}
|
||||
/***
|
||||
* Recupere le nombre d'etudiant par groupe
|
||||
* @return
|
||||
*/
|
||||
/**
|
||||
* Recuperer le nombre de membre d'un groupe
|
||||
*
|
||||
* @param groupe_id le groupes
|
||||
* @return le nombre de membre
|
||||
* */
|
||||
public int getMemberCount(int groupe_id) {
|
||||
ArrayList<String> forCount = this.fetchAll(
|
||||
"SELECT nom FROM fi_eleves WHERE groupe=" + groupe_id);
|
||||
|
||||
return forCount.size();
|
||||
}
|
||||
}
|
@ -108,7 +108,7 @@ public class BFrame extends JFrame {
|
||||
* @param daron La fenetre qui va etre bloquer
|
||||
* @param content Contenu de la fenetre
|
||||
* */
|
||||
public BFrame(String title, int loca_x, int loca_y, int size_x, int size_y, BFrame daron, JPanel content) {
|
||||
public BFrame(String title, int loca_x, int loca_y, int size_x, int size_y, JFrame daron, JPanel content) {
|
||||
JDialog frame = new JDialog(daron, title, true);
|
||||
frame.setLocation(loca_x, loca_y);
|
||||
frame.setSize(size_x, size_y);
|
||||
|
@ -18,11 +18,11 @@ import java.util.Objects;
|
||||
public class Controller implements ActionListener, ListSelectionListener {
|
||||
private final BDatabase db;
|
||||
|
||||
private ProfView pv = null;
|
||||
private AdminView av = null;
|
||||
private ProfView pv;
|
||||
private AdminView av;
|
||||
private StudentView sv;
|
||||
private BFrame currentModal;
|
||||
|
||||
private MainMenu parent;
|
||||
private JFrame parent;
|
||||
|
||||
private ArrayList<Etudiant> e;
|
||||
private ArrayList<Groupe> g;
|
||||
@ -32,17 +32,15 @@ public class Controller implements ActionListener, ListSelectionListener {
|
||||
|
||||
private ArrayList<String> tmpStud;
|
||||
|
||||
public Controller(BDatabase db, MainMenu frame) {
|
||||
public Controller(BDatabase db) {
|
||||
this.db = db;
|
||||
this.e = this.db.getEtuList();
|
||||
this.g = this.db.getGroupeList();
|
||||
parent = frame;
|
||||
|
||||
// Les 3 fenetres s'ouvriront en meme temps (Pour le contexte du projet)
|
||||
//this.pv = new ProfView(this.e, this.g, this);
|
||||
//System.out.println("[+] Demarrage de la vue professeur -> " + this.pv);
|
||||
//this.av = new AdminView(this.e, this.g, this);
|
||||
//System.out.println("[+] Demarrage de la vue Administrateur -> " + this.av);
|
||||
this.sv = new StudentView(this.e, this.g, this);
|
||||
this.pv = new ProfView(this.e, this.g, this);
|
||||
this.av = new AdminView(this.e, this.g, this);
|
||||
this.parent = new MainMenu(this);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -58,11 +56,9 @@ public class Controller implements ActionListener, ListSelectionListener {
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Pour afficher une JTable sans listener
|
||||
*
|
||||
* @param parent La fenetre qui sera bloque
|
||||
* @param frameTitle Le titre de la fenetre
|
||||
* @param size_x Taille en x
|
||||
* @param size_y Taille en y
|
||||
@ -81,13 +77,12 @@ public class Controller implements ActionListener, ListSelectionListener {
|
||||
|
||||
forModal.add(liste);
|
||||
|
||||
BFrame frame = new BFrame(frameTitle, loca_x, loca_y, size_x, size_y, parent, forModal);
|
||||
BFrame frame = new BFrame(frameTitle, loca_x, loca_y, size_x, size_y, this.parent, forModal);
|
||||
}
|
||||
|
||||
/**
|
||||
* Pour afficher une JTable contenant un listener
|
||||
*
|
||||
* @param parent La fenetre qui sera bloque
|
||||
* @param frameTitle Le titre de la fenetre
|
||||
* @param size_x Taille en x
|
||||
* @param size_y Taille en y
|
||||
@ -113,7 +108,6 @@ public class Controller implements ActionListener, ListSelectionListener {
|
||||
/**
|
||||
* Pour afficher une modale classique pour plus de liberte (panel a creer au prealable)
|
||||
*
|
||||
* @param parent La fenetre qui sera bloque
|
||||
* @param frameTitle Le titre de la fenetre
|
||||
* @param size_x Taille en x
|
||||
* @param size_y Taille en y
|
||||
@ -436,18 +430,16 @@ public class Controller implements ActionListener, ListSelectionListener {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void setAv (AdminView av) {
|
||||
if (this.av == null) {
|
||||
this.av = av;
|
||||
}
|
||||
public ProfView getProfView() {
|
||||
return this.pv;
|
||||
}
|
||||
|
||||
public StudentView getStudentView() {
|
||||
return this.sv;
|
||||
}
|
||||
|
||||
public void setPv (ProfView pv) {
|
||||
if (this.pv == null) {
|
||||
this.pv = pv;
|
||||
}
|
||||
public AdminView getAdminView() {
|
||||
return this.av;
|
||||
}
|
||||
|
||||
|
||||
|
@ -6,50 +6,58 @@ import java.awt.event.ActionEvent;
|
||||
|
||||
public class MainMenu extends JFrame {
|
||||
private final static Dimension MINIMUM_SIZE = new Dimension(960, 540);
|
||||
private CardLayout cards = new CardLayout();
|
||||
private CardLayout cards;
|
||||
|
||||
private AdminView av;
|
||||
private StudentView sv;
|
||||
private ProfView pv;
|
||||
|
||||
private BLayout settings;
|
||||
|
||||
private JButton[] buttonTab = {
|
||||
new JButton("Admin"),
|
||||
new JButton("Prof"),
|
||||
new JButton("Student")
|
||||
};
|
||||
private final Controller listener;
|
||||
|
||||
private JButton[] buttonTab;
|
||||
|
||||
public MainMenu() {
|
||||
public MainMenu(Controller listener) {
|
||||
super();
|
||||
|
||||
this.av = listener.getAdminView();
|
||||
this.pv = listener.getProfView();
|
||||
this.sv = listener.getStudentView();
|
||||
|
||||
this.cards = new CardLayout();
|
||||
|
||||
this.listener = listener;
|
||||
|
||||
this.buttonTab = new JButton[] {
|
||||
new JButton("Admin"),
|
||||
new JButton("Prof"),
|
||||
new JButton("Student")
|
||||
};
|
||||
|
||||
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
|
||||
this.setExtendedState(MAXIMIZED_BOTH);
|
||||
this.setMinimumSize(MINIMUM_SIZE);
|
||||
init();
|
||||
this.init();
|
||||
this.setVisible(true);
|
||||
}
|
||||
|
||||
|
||||
private void init() {
|
||||
BDatabase db = new BDatabase();
|
||||
Controller listener = new Controller(db, this);
|
||||
|
||||
av = new AdminView(listener.getEtudiants(), listener.getGroupes(), listener);
|
||||
pv = new ProfView(listener.getEtudiants(), listener.getGroupes(), listener);
|
||||
|
||||
listener.setAv(av);
|
||||
listener.setPv(pv);
|
||||
|
||||
this.setLayout(cards);
|
||||
this.setLayout(this.cards);
|
||||
|
||||
this.add(first());
|
||||
this.add(adminView());
|
||||
this.add(profView());
|
||||
this.add(studentView());
|
||||
|
||||
cards.first(this.getContentPane());
|
||||
this.cards.first(this.getContentPane());
|
||||
}
|
||||
|
||||
|
||||
private JPanel first() {
|
||||
JPanel mainPanel = new JPanel(), centerPanel = new JPanel();
|
||||
JPanel mainPanel = new JPanel();
|
||||
JPanel centerPanel = new JPanel();
|
||||
Dimension buttonDimension = new Dimension(300, 50);
|
||||
|
||||
mainPanel.setLayout(new BorderLayout());
|
||||
@ -75,18 +83,22 @@ public class MainMenu extends JFrame {
|
||||
|
||||
|
||||
private JPanel adminView() {
|
||||
JPanel mainPanel = new JPanel();
|
||||
mainPanel.add(av);
|
||||
JPanel mainPanel = new JPanel(new GridBagLayout());
|
||||
mainPanel.add(this.av, this.settings);
|
||||
return mainPanel;
|
||||
}
|
||||
|
||||
|
||||
private JPanel profView() {
|
||||
JPanel mainPanel = new JPanel();
|
||||
mainPanel.add(pv);
|
||||
JPanel mainPanel = new JPanel(new GridBagLayout());
|
||||
mainPanel.add(this.pv, this.settings);
|
||||
return mainPanel;
|
||||
}
|
||||
|
||||
private JPanel studentView() {
|
||||
JPanel mainPanel = new JPanel(new GridBagLayout());
|
||||
mainPanel.add(this.sv, this.settings);
|
||||
return mainPanel;
|
||||
}
|
||||
|
||||
private void action(ActionEvent e) {
|
||||
JButton origin = (JButton) e.getSource();
|
||||
@ -98,8 +110,13 @@ public class MainMenu extends JFrame {
|
||||
} else if (origin.getText() == "Prof") {
|
||||
cards.next(this.getContentPane());
|
||||
cards.next(this.getContentPane());
|
||||
} else if (origin.getText() == "Student") {
|
||||
cards.next(this.getContentPane());
|
||||
cards.next(this.getContentPane());
|
||||
cards.next(this.getContentPane());
|
||||
}
|
||||
|
||||
} else {
|
||||
else {
|
||||
JOptionPane.showMessageDialog(null, "En travaux");
|
||||
}
|
||||
}
|
||||
|
@ -8,9 +8,7 @@ import javax.swing.JButton;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Insets;
|
||||
import java.awt.GridBagConstraints;
|
||||
import java.awt.*;
|
||||
import java.awt.event.KeyAdapter;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.util.ArrayList;
|
||||
@ -25,6 +23,8 @@ public class ProfView extends JPanel {
|
||||
public ProfView(ArrayList<Etudiant> e, ArrayList<Groupe> g, Controller listener) {
|
||||
super();
|
||||
|
||||
this.setLayout(new GridBagLayout());
|
||||
|
||||
this.listener = listener;
|
||||
this.e = e;
|
||||
this.g = g;
|
||||
|
@ -8,23 +8,23 @@ import javax.swing.JButton;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Insets;
|
||||
import java.awt.GridBagConstraints;
|
||||
import java.awt.*;
|
||||
import java.awt.event.KeyAdapter;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class ProfView extends JPanel {
|
||||
public class StudentView extends JPanel {
|
||||
private final ArrayList<Etudiant> e;
|
||||
private final ArrayList<Groupe> g;
|
||||
private final Controller listener;
|
||||
private JComboBox<String> groupeOption;
|
||||
private JTextField text;
|
||||
|
||||
public ProfView(ArrayList<Etudiant> e, ArrayList<Groupe> g, Controller listener) {
|
||||
public StudentView(ArrayList<Etudiant> e, ArrayList<Groupe> g, Controller listener) {
|
||||
super();
|
||||
|
||||
this.setLayout(new GridBagLayout());
|
||||
|
||||
this.listener = listener;
|
||||
this.e = e;
|
||||
this.g = g;
|
||||
@ -110,20 +110,16 @@ public class ProfView extends JPanel {
|
||||
searchTLetters.addActionListener(this.listener);
|
||||
searchTLetters.setActionCommand("pv::SearchStudentPer3Letters");
|
||||
this.add(searchTLetters, settings);
|
||||
settings.setAnchor(GridBagConstraints.CENTER);
|
||||
|
||||
settings.setPositionY(7);
|
||||
this.add(new JLabel(" "), settings);
|
||||
|
||||
settings.setPositionY(8);
|
||||
JButton changGrp = new JButton("Changer de groupe");
|
||||
changGrp.addActionListener(this.listener);
|
||||
this.add(changGrp, settings);
|
||||
|
||||
if(this.db.insertRow(la_table, new String[]{"nom"}, new String[]{"felix"})) {
|
||||
Affiche "OUHRAA"
|
||||
} else {
|
||||
Affiche "Marche ap"
|
||||
}
|
||||
|
||||
this.repaint();
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user