| 935 | jpm | 1 | package org.tela_botanica.client.vues.projet;
 | 
        
           | 834 | aurelien | 2 |   | 
        
           |  |  | 3 | import org.tela_botanica.client.Mediateur;
 | 
        
           |  |  | 4 | import org.tela_botanica.client.interfaces.Rafraichissable;
 | 
        
           |  |  | 5 | import org.tela_botanica.client.modeles.Information;
 | 
        
           | 908 | aurelien | 6 | import org.tela_botanica.client.modeles.ValeurListe;
 | 
        
           | 935 | jpm | 7 | import org.tela_botanica.client.modeles.projet.Projet;
 | 
        
           |  |  | 8 | import org.tela_botanica.client.modeles.projet.ProjetListe;
 | 
        
           | 1322 | gduche | 9 | import org.tela_botanica.client.synchronisation.Sequenceur;
 | 
        
           | 928 | jpm | 10 | import org.tela_botanica.client.util.Debug;
 | 
        
           | 834 | aurelien | 11 |   | 
        
           |  |  | 12 | import com.extjs.gxt.ui.client.Style.LayoutRegion;
 | 
        
           |  |  | 13 | import com.extjs.gxt.ui.client.util.Margins;
 | 
        
           |  |  | 14 | import com.extjs.gxt.ui.client.widget.LayoutContainer;
 | 
        
           |  |  | 15 | import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
 | 
        
           |  |  | 16 | import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
 | 
        
           |  |  | 17 | import com.google.gwt.core.client.GWT;
 | 
        
           |  |  | 18 |   | 
        
           |  |  | 19 | public class ProjetVue extends LayoutContainer implements Rafraichissable {
 | 
        
           |  |  | 20 |   | 
        
           |  |  | 21 | 	private ProjetListeVue panneauProjetListe;
 | 
        
           |  |  | 22 | 	private ProjetDetailVue panneauProjetDetail;
 | 
        
           |  |  | 23 | 	private Mediateur mediateur = null;
 | 
        
           | 1322 | gduche | 24 | 	private Sequenceur sequenceur = new Sequenceur();
 | 
        
           | 834 | aurelien | 25 |   | 
        
           | 924 | jpm | 26 | 	public ProjetVue(Mediateur mediateurCourant) {
 | 
        
           | 834 | aurelien | 27 | 		super();
 | 
        
           | 924 | jpm | 28 | 		mediateur = mediateurCourant;
 | 
        
           | 834 | aurelien | 29 |   | 
        
           |  |  | 30 | 		BorderLayout layout = new BorderLayout();
 | 
        
           |  |  | 31 | 		layout.setEnableState(false);
 | 
        
           |  |  | 32 | 		setLayout(layout);
 | 
        
           |  |  | 33 |   | 
        
           |  |  | 34 | 		panneauProjetListe = new ProjetListeVue(mediateur);
 | 
        
           |  |  | 35 | 		this.add(panneauProjetListe, new BorderLayoutData(LayoutRegion.CENTER));
 | 
        
           |  |  | 36 |   | 
        
           | 1322 | gduche | 37 | 		panneauProjetDetail = new ProjetDetailVue(mediateur, sequenceur);
 | 
        
           | 834 | aurelien | 38 | 		BorderLayoutData southData = new BorderLayoutData(LayoutRegion.SOUTH, .5f, 200, 1000);
 | 
        
           |  |  | 39 | 		southData.setSplit(true);
 | 
        
           |  |  | 40 | 		southData.setMargins(new Margins(5, 0, 0, 0));
 | 
        
           |  |  | 41 | 		this.add(panneauProjetDetail, southData);
 | 
        
           |  |  | 42 | 	}
 | 
        
           |  |  | 43 |   | 
        
           |  |  | 44 | 	public void rafraichir(Object nouvellesDonnees) {
 | 
        
           |  |  | 45 | 		if (nouvellesDonnees instanceof Projet) {
 | 
        
           | 1322 | gduche | 46 | 			//panneauProjetDetail.rafraichir((Projet) nouvellesDonnees);
 | 
        
           | 1373 | cyprien | 47 | 			sequenceur.enfilerRafraichissement(panneauProjetDetail, (Projet) nouvellesDonnees);
 | 
        
           | 834 | aurelien | 48 | 		} else if (nouvellesDonnees instanceof ProjetListe) {
 | 
        
           |  |  | 49 | 			panneauProjetListe.rafraichir((ProjetListe) nouvellesDonnees);
 | 
        
           |  |  | 50 | 		} else if (nouvellesDonnees instanceof Information)	{
 | 
        
           |  |  | 51 | 			Information info = (Information) nouvellesDonnees;
 | 
        
           |  |  | 52 | 			// Affichage des éventuels messages de déboguage ou d'alerte
 | 
        
           |  |  | 53 | 			if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
 | 
        
           |  |  | 54 | 				GWT.log(info.getMessages().toString(), null);
 | 
        
           |  |  | 55 | 			}
 | 
        
           |  |  | 56 | 			// Traitement en fonction des types d'information
 | 
        
           |  |  | 57 | 			if (info.getType().equals("liste_projet")) {
 | 
        
           | 877 | aurelien | 58 | 				GWT.log("Une liste de projets a été reçue", null);
 | 
        
           | 834 | aurelien | 59 | 				panneauProjetListe.rafraichir((ProjetListe) info.getDonnee(0));
 | 
        
           |  |  | 60 | 			} else {
 | 
        
           |  |  | 61 | 				panneauProjetListe.rafraichir(info);
 | 
        
           |  |  | 62 | 			}
 | 
        
           | 908 | aurelien | 63 | 		} else if (nouvellesDonnees instanceof ValeurListe) {
 | 
        
           |  |  | 64 | 			panneauProjetDetail.rafraichir(nouvellesDonnees);
 | 
        
           | 834 | aurelien | 65 | 		} else {
 | 
        
           | 928 | jpm | 66 | 			if (nouvellesDonnees != null) {
 | 
        
           |  |  | 67 | 				GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
 | 
        
           |  |  | 68 | 			}
 | 
        
           | 834 | aurelien | 69 | 		}
 | 
        
           | 928 | jpm | 70 | 		layout();
 | 
        
           | 834 | aurelien | 71 | 	}
 | 
        
           |  |  | 72 |   | 
        
           |  |  | 73 | }
 |