debut affichage arborescence
This commit is contained in:
parent
5c4413a6fb
commit
6c05981b8d
@ -144,6 +144,9 @@ ${BUILD}/Graphic/Controller/SelecteurEtudiant.class : ${SRC}/Graphic/Controller/
|
||||
|
||||
${BUILD}/Graphic/Controller/ActionListenerNouveauEtu.class : ${SRC}/Graphic/Controller/ActionListenerNouveauEtu.java
|
||||
${JAVAC} ${JAVAC_OPTIONS} ${SRC}/Graphic/Controller/ActionListenerNouveauEtu.java
|
||||
|
||||
${BUILD}/Graphic/Controller/TreeSelectionListenerGroupe.class : ${SRC}/Graphic/Controller/TreeSelectionListenerGroupe.java
|
||||
${JAVAC} ${JAVAC_OPTIONS} ${SRC}/Graphic/Controller/TreeSelectionListenerGroupe.java
|
||||
##....
|
||||
|
||||
|
||||
@ -153,7 +156,8 @@ ${BUILD}/Graphic/Model/Model.class : ${SRC}/Graphic/Model/Model.java \
|
||||
${BUILD}/Graphic/View/FenetreGroupe.class \
|
||||
${BUILD}/Graphic/View/FenetreEtudiant.class \
|
||||
${BUILD}/Graphic/View/Chargement.class \
|
||||
${BUILD}/Graphic/Util/BD.class
|
||||
${BUILD}/Graphic/Util/BD.class \
|
||||
${BUILD}/Graphic/Controller/TreeSelectionListenerGroupe.class
|
||||
${JAVAC} ${JAVAC_OPTIONS} ${SRC}/Graphic/Model/Model.java
|
||||
|
||||
|
||||
|
@ -0,0 +1,20 @@
|
||||
package fr.iutfbleau.projetIHM2022FI2.Graphic.Controller;
|
||||
|
||||
import javax.swing.event.TreeSelectionEvent;
|
||||
import javax.swing.event.TreeSelectionListener;
|
||||
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.Groupe;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.Model.Model;
|
||||
|
||||
public class TreeSelectionListenerGroupe implements TreeSelectionListener{
|
||||
private Model m;
|
||||
public TreeSelectionListenerGroupe(Model m){
|
||||
this.m=m;
|
||||
}
|
||||
@Override
|
||||
public void valueChanged(TreeSelectionEvent e) {
|
||||
Groupe g=(Groupe)e.getSource();
|
||||
m.showGroupe(g);
|
||||
}
|
||||
|
||||
}
|
@ -1,19 +1,20 @@
|
||||
package fr.iutfbleau.projetIHM2022FI2.Graphic.Model;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.SQLException;
|
||||
import java.util.LinkedList;
|
||||
import java.util.Set;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import javax.swing.JFrame;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
|
||||
import javax.swing.tree.*;
|
||||
import javax.swing.event.*;
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.AbstractGroupeFactory;
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.Etudiant;
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.Groupe;
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.TypeGroupe;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.Controller.ObservateurFenetre;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.Controller.TreeSelectionListenerGroupe;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.Util.BD;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.View.Chargement;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.View.FenetreEtudiant;
|
||||
@ -35,6 +36,7 @@ public class Model{
|
||||
Chargement ch=new Chargement();
|
||||
this.promo=this.getPromo(ch);
|
||||
ch.dispose();
|
||||
JTree tree=new JTree();
|
||||
if(this.promo==null){
|
||||
this.fenGr=new FenetreGroupe(null, this);
|
||||
this.fenEtu=new FenetreEtudiant(null);
|
||||
@ -51,7 +53,7 @@ public class Model{
|
||||
this.fenetre.setLayout(new GridLayout(1,2));
|
||||
this.fenetre.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
|
||||
this.fenetre.setMinimumSize(this.fenetre.getSize());
|
||||
this.fenetre.add(this.fenGr);
|
||||
this.fenetre.add(tree.add(this.fenGr));
|
||||
JScrollPane scroll=new JScrollPane(this.fenEtu);
|
||||
scroll.getVerticalScrollBar().setUnitIncrement(15);
|
||||
this.fenetre.add(scroll);
|
||||
@ -60,7 +62,9 @@ public class Model{
|
||||
this.showGroupe(this.promo.getPromotion());
|
||||
}
|
||||
|
||||
|
||||
private void nouvelleCible(TreePath e){
|
||||
System.out.println(e.getLastPathComponent().toString());
|
||||
}
|
||||
/**
|
||||
* Fonction pour refresh/changer de groupe d'affichage
|
||||
* @param g le groupe a afficher
|
||||
@ -68,10 +72,19 @@ public class Model{
|
||||
public void showGroupe(Groupe g){
|
||||
if(g!=null)
|
||||
g=this.bd.refreshALL(g);
|
||||
DefaultMutableTreeNode mut=new DefaultMutableTreeNode(g);
|
||||
JTree arbre = new JTree(mut);
|
||||
arbre.setEditable(true);
|
||||
arbre.setShowsRootHandles(true);
|
||||
arbre.getSelectionModel().setSelectionMode(
|
||||
TreeSelectionModel.SINGLE_TREE_SELECTION);
|
||||
|
||||
arbre.addTreeSelectionListener(new TreeSelectionListenerGroupe(this));
|
||||
|
||||
this.fenGr=new FenetreGroupe(g, this);
|
||||
this.fenEtu=new FenetreEtudiant(g);
|
||||
this.fenetre.getContentPane().removeAll();
|
||||
this.fenetre.add(this.fenGr);
|
||||
this.fenetre.add(arbre);
|
||||
JScrollPane scroll=new JScrollPane(this.fenEtu);
|
||||
scroll.getVerticalScrollBar().setUnitIncrement(15);
|
||||
this.fenetre.add(scroll);
|
||||
|
@ -0,0 +1,19 @@
|
||||
package fr.iutfbleau.projetIHM2022FI2.Graphic.View;
|
||||
|
||||
import javax.swing.JTree;
|
||||
import javax.swing.event.TreeSelectionEvent;
|
||||
import javax.swing.event.TreeSelectionListener;
|
||||
|
||||
import fr.iutfbleau.projetIHM2022FI2.API.Groupe;
|
||||
import fr.iutfbleau.projetIHM2022FI2.Graphic.Model.Model;
|
||||
|
||||
public class JTreeGroupe extends JTree{
|
||||
private Groupe groupe;
|
||||
private Model model;
|
||||
@Override
|
||||
protected void fireValueChanged(TreeSelectionEvent e) {
|
||||
TreeSelectionListener[] list=this.getTreeSelectionListeners();
|
||||
list[0].valueChanged(e, g);
|
||||
|
||||
}
|
||||
}
|
@ -38,7 +38,7 @@ public class AbstractChangementFactoryNP implements AbstractChangementFactory {
|
||||
// la méthode value() d'un hashmap retourne la collection des valeurs.
|
||||
// Il faut transformer la collection en Set.
|
||||
// Un constructeur de HashSet permet de faire cette opération.
|
||||
Set<Changement> out = new HashSet(this.brain.values());
|
||||
Set<Changement> out = new HashSet<Changement>(this.brain.values());
|
||||
return out;
|
||||
}
|
||||
|
||||
@ -96,7 +96,7 @@ public class AbstractChangementFactoryNP implements AbstractChangementFactory {
|
||||
Objects.requireNonNull(A,"Le groupe d'origine ne peut pas être null");
|
||||
Objects.requireNonNull(B,"Le groupe d'arrivée ne peut pas être null");
|
||||
Objects.requireNonNull(e,"L'étudiant ne peut pas être null");
|
||||
|
||||
|
||||
Changement c = new ChangementNP(A,e,B);
|
||||
this.brain.put(Integer.valueOf(c.getId()),c);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user