Subversion Repositories eFlore/Applications.coel

Rev

Rev 69 | Rev 277 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 69 Rev 156
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
2
 
2
 
3
import org.tela_botanica.client.RegistreId;
3
import org.tela_botanica.client.RegistreId;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
5
import org.tela_botanica.client.modeles.StructureListe;
5
import org.tela_botanica.client.modeles.StructureListe;
6
 
6
 
7
import com.extjs.gxt.ui.client.Registry;
7
import com.extjs.gxt.ui.client.Registry;
8
import com.extjs.gxt.ui.client.Style.LayoutRegion;
8
import com.extjs.gxt.ui.client.Style.LayoutRegion;
9
import com.extjs.gxt.ui.client.util.Margins;
9
import com.extjs.gxt.ui.client.util.Margins;
10
import com.extjs.gxt.ui.client.widget.LayoutContainer;
10
import com.extjs.gxt.ui.client.widget.LayoutContainer;
11
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
11
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
12
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
12
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
-
 
13
import com.google.gwt.core.client.GWT;
13
import com.google.gwt.user.client.Window;
14
import com.google.gwt.user.client.Window;
14
 
15
 
15
public class StructureVue extends LayoutContainer implements Rafraichissable {
16
public class StructureVue extends LayoutContainer implements Rafraichissable {
16
 
17
 
17
	private StructureListePanneauVue panneauInstitutionListe;
18
	private StructureListePanneauVue panneauInstitutionListe;
18
	private StructureDetailPanneauVue panneauInstitutionDetail;
19
	private StructureDetailPanneauVue panneauInstitutionDetail;
19
 
20
 
20
	public StructureVue() {
21
	public StructureVue() {
21
		BorderLayout layout = new BorderLayout();
22
		BorderLayout layout = new BorderLayout();
22
		layout.setEnableState(false);
23
		layout.setEnableState(false);
23
		setLayout(layout);
24
		setLayout(layout);
24
 
25
 
25
		panneauInstitutionListe = new StructureListePanneauVue();
26
		panneauInstitutionListe = new StructureListePanneauVue();
26
		this.add(panneauInstitutionListe, new BorderLayoutData(LayoutRegion.CENTER));
27
		this.add(panneauInstitutionListe, new BorderLayoutData(LayoutRegion.CENTER));
27
 
28
 
28
		panneauInstitutionDetail = new StructureDetailPanneauVue();
29
		panneauInstitutionDetail = new StructureDetailPanneauVue();
29
		BorderLayoutData southData = new BorderLayoutData(LayoutRegion.SOUTH, .5f, 200, 1000);
30
		BorderLayoutData southData = new BorderLayoutData(LayoutRegion.SOUTH, .5f, 200, 1000);
30
		southData.setSplit(true);
31
		southData.setSplit(true);
31
		southData.setMargins(new Margins(5, 0, 0, 0));
32
		southData.setMargins(new Margins(5, 0, 0, 0));
32
		this.add(panneauInstitutionDetail, southData);
33
		this.add(panneauInstitutionDetail, southData);
33
	}
34
	}
34
 
35
 
35
	public void rafraichir(Object nouvelleDonnees) {
36
	public void rafraichir(Object nouvelleDonnees) {
-
 
37
		// Nous passons l'objet aux méthodes rafraichir des panneaux composant le panneau principal Structure
36
		if (nouvelleDonnees instanceof StructureListe) {
38
		panneauInstitutionListe.rafraichir(nouvelleDonnees);
37
			remplirListe((StructureListe) nouvelleDonnees);
39
		panneauInstitutionDetail.rafraichir(nouvelleDonnees);
38
		} else {
40
		// Mise à jour du panneau central
39
			Window.alert("Problème!");
41
		((LayoutContainer) Registry.get(RegistreId.PANNEAU_CENTRE)).layout();
40
		}
-
 
41
	}
42
	}
42
	
-
 
43
	private void remplirListe(StructureListe listeInstitutions) {
-
 
44
		LayoutContainer panneauCentre = (LayoutContainer) Registry.get(RegistreId.PANNEAU_CENTRE);
-
 
45
		panneauInstitutionListe.rafraichir(listeInstitutions);
-
 
46
		panneauInstitutionDetail.rafraichir(listeInstitutions);
-
 
47
		panneauCentre.layout();
-
 
48
	}
-
 
49
 
43
	
50
}
44
}