935 |
jpm |
1 |
package org.tela_botanica.client.vues.structure;
|
60 |
jpm |
2 |
|
373 |
jp_milcent |
3 |
import org.tela_botanica.client.Mediateur;
|
60 |
jpm |
4 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
379 |
jp_milcent |
5 |
import org.tela_botanica.client.modeles.Information;
|
1613 |
aurelien |
6 |
import org.tela_botanica.client.modeles.MenuApplicationId;
|
935 |
jpm |
7 |
import org.tela_botanica.client.modeles.structure.Structure;
|
|
|
8 |
import org.tela_botanica.client.modeles.structure.StructureListe;
|
1322 |
gduche |
9 |
import org.tela_botanica.client.synchronisation.Sequenceur;
|
60 |
jpm |
10 |
|
|
|
11 |
import com.extjs.gxt.ui.client.Style.LayoutRegion;
|
|
|
12 |
import com.extjs.gxt.ui.client.util.Margins;
|
|
|
13 |
import com.extjs.gxt.ui.client.widget.LayoutContainer;
|
|
|
14 |
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
|
|
|
15 |
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
|
156 |
jp_milcent |
16 |
import com.google.gwt.core.client.GWT;
|
60 |
jpm |
17 |
|
|
|
18 |
public class StructureVue extends LayoutContainer implements Rafraichissable {
|
|
|
19 |
|
373 |
jp_milcent |
20 |
private Mediateur mediateur = null;
|
442 |
jp_milcent |
21 |
private StructureListeVue panneauInstitutionListe = null;
|
441 |
jp_milcent |
22 |
private StructureDetailVue panneauInstitutionDetail = null;
|
60 |
jpm |
23 |
|
1322 |
gduche |
24 |
private Sequenceur sequenceur = new Sequenceur();
|
|
|
25 |
|
373 |
jp_milcent |
26 |
public StructureVue(Mediateur mediateurCourant) {
|
|
|
27 |
mediateur = mediateurCourant;
|
|
|
28 |
|
60 |
jpm |
29 |
BorderLayout layout = new BorderLayout();
|
|
|
30 |
layout.setEnableState(false);
|
|
|
31 |
setLayout(layout);
|
|
|
32 |
|
442 |
jp_milcent |
33 |
panneauInstitutionListe = new StructureListeVue(mediateur);
|
373 |
jp_milcent |
34 |
add(panneauInstitutionListe, new BorderLayoutData(LayoutRegion.CENTER));
|
60 |
jpm |
35 |
|
1322 |
gduche |
36 |
panneauInstitutionDetail = new StructureDetailVue(mediateur, sequenceur);
|
373 |
jp_milcent |
37 |
BorderLayoutData dispositionSud = new BorderLayoutData(LayoutRegion.SOUTH, .5f, 200, 1000);
|
|
|
38 |
dispositionSud.setSplit(true);
|
|
|
39 |
dispositionSud.setMargins(new Margins(5, 0, 0, 0));
|
|
|
40 |
add(panneauInstitutionDetail, dispositionSud);
|
60 |
jpm |
41 |
}
|
|
|
42 |
|
851 |
gduche |
43 |
public void rafraichir(Object nouvellesDonnees) {
|
156 |
jp_milcent |
44 |
// Nous passons l'objet aux méthodes rafraichir des panneaux composant le panneau principal Structure
|
851 |
gduche |
45 |
if (nouvellesDonnees instanceof Structure) {
|
|
|
46 |
panneauInstitutionDetail.rafraichir(nouvellesDonnees);
|
|
|
47 |
} else if (nouvellesDonnees instanceof StructureListe) {
|
|
|
48 |
panneauInstitutionListe.rafraichir(nouvellesDonnees);
|
|
|
49 |
} else if (nouvellesDonnees instanceof Information) {
|
|
|
50 |
Information info = (Information) nouvellesDonnees;
|
379 |
jp_milcent |
51 |
if (info.getType().equals("liste_structure_a_personne")) {
|
851 |
gduche |
52 |
panneauInstitutionDetail.rafraichir(nouvellesDonnees);
|
1802 |
aurelien |
53 |
} else if(info.getType().equals("structure_ajoutee")) {
|
|
|
54 |
mediateur.clicMenu(MenuApplicationId.STRUCTURE);
|
|
|
55 |
} else if (info.getType().equals("liste_collection_a_structure")) {
|
|
|
56 |
panneauInstitutionDetail.rafraichir(nouvellesDonnees);
|
1613 |
aurelien |
57 |
} else {
|
1802 |
aurelien |
58 |
panneauInstitutionListe.rafraichir(nouvellesDonnees);
|
379 |
jp_milcent |
59 |
}
|
373 |
jp_milcent |
60 |
} else {
|
851 |
gduche |
61 |
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
|
373 |
jp_milcent |
62 |
}
|
60 |
jpm |
63 |
}
|
|
|
64 |
|
|
|
65 |
}
|