Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1784 Rev 1790
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
-
 
2
 
2
 
3
import org.tela_botanica.client.ComposantId;
3
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.i18n.Constantes;
5
import org.tela_botanica.client.i18n.Constantes;
5
import org.tela_botanica.client.modeles.Menu;
6
import org.tela_botanica.client.modeles.Menu;
6
import org.tela_botanica.client.modeles.MenuApplicationId;
7
import org.tela_botanica.client.modeles.MenuApplicationId;
7
 
8
 
8
import com.extjs.gxt.ui.client.Style.HideMode;
9
import com.extjs.gxt.ui.client.Style.HideMode;
9
import com.extjs.gxt.ui.client.event.Events;
10
import com.extjs.gxt.ui.client.event.Events;
10
import com.extjs.gxt.ui.client.event.Listener;
11
import com.extjs.gxt.ui.client.event.Listener;
11
import com.extjs.gxt.ui.client.event.TabPanelEvent;
12
import com.extjs.gxt.ui.client.event.TabPanelEvent;
12
import com.extjs.gxt.ui.client.event.TreePanelEvent;
13
import com.extjs.gxt.ui.client.event.TreePanelEvent;
13
import com.extjs.gxt.ui.client.widget.ContentPanel;
14
import com.extjs.gxt.ui.client.widget.ContentPanel;
14
import com.extjs.gxt.ui.client.widget.Document;
15
import com.extjs.gxt.ui.client.widget.Document;
15
import com.extjs.gxt.ui.client.widget.TabItem;
16
import com.extjs.gxt.ui.client.widget.TabItem;
16
import com.extjs.gxt.ui.client.widget.TabPanel;
17
import com.extjs.gxt.ui.client.widget.TabPanel;
17
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
18
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
18
import com.google.gwt.dom.client.NativeEvent;
19
import com.google.gwt.dom.client.NativeEvent;
19
import com.google.gwt.user.client.DOM;
20
import com.google.gwt.user.client.DOM;
20
import com.google.gwt.user.client.Event;
21
import com.google.gwt.user.client.Event;
21
import com.google.gwt.user.client.Window;
22
import com.google.gwt.user.client.Window;
22
 
23
 
23
 
24
 
24
public class MenuHorizontalVue extends ContentPanel  {
25
public class MenuHorizontalVue extends ContentPanel  {
25
	
26
	
26
	private Mediateur mediateur = null;
27
	private Mediateur mediateur = null;
27
	private Constantes i18nC = null;
28
	private Constantes i18nC = null;
28
	
29
	
29
	private TabPanel tbp = null;
30
	private TabPanel tbp = null;
30
	
31
	
31
	public MenuHorizontalVue(Mediateur mediateurCourant) {
32
	public MenuHorizontalVue(Mediateur mediateurCourant) {
-
 
33
		
-
 
34
		setId(ComposantId.PANNEAU_NAVIGATION);
32
		
35
		
33
		mediateur = mediateurCourant;
36
		mediateur = mediateurCourant;
34
		i18nC = Mediateur.i18nC;
37
		i18nC = Mediateur.i18nC;
35
		
38
		
36
		setHeaderVisible(false);
39
		setHeaderVisible(false);
37
		
40
		
38
		// Ce tab Panel est un peu spécial car chaque onglet ne contient rien du tout
41
		// Ce tab Panel est un peu spécial car chaque onglet ne contient rien du tout
39
		// ils ne servent qu'a être cliqués afin de déclencher une action de la part du médiateur
42
		// ils ne servent qu'a être cliqués afin de déclencher une action de la part du médiateur
40
		// ceci afin de pouvoir facilement changer d'avis si jamais on prend une autre forme de navigation
43
		// ceci afin de pouvoir facilement changer d'avis si jamais on prend une autre forme de navigation
41
		tbp = new TabPanel();
44
		tbp = new TabPanel();
-
 
45
		tbp.setId("ListeOngletsNavigation");
-
 
46
		tbp.setWidth("100%");
42
		
47
		
43
		TabItem tbAcc = new TabItem(i18nC.menuAccueil());
48
		TabItem tbAcc = new TabItem(i18nC.menuAccueil());
44
		tbAcc.setBorders(false);
49
		tbAcc.setBorders(false);
45
		tbAcc.setId(MenuApplicationId.ACCUEIL);
50
		tbAcc.setId(MenuApplicationId.ACCUEIL);
46
		tbAcc.setHeight(0);
51
		tbAcc.setHeight(0);
47
		
52
		
48
		TabItem tbIns = new TabItem(i18nC.menuStructure());
53
		TabItem tbIns = new TabItem(i18nC.menuStructure());
49
		tbIns.setBorders(false);
54
		tbIns.setBorders(false);
50
		tbIns.setId(MenuApplicationId.STRUCTURE);
55
		tbIns.setId(MenuApplicationId.STRUCTURE);
51
		tbIns.setHeight(0);
56
		tbIns.setHeight(0);
52
		
57
		
53
		TabItem tbCol = new TabItem(i18nC.menuCollection());
58
		TabItem tbCol = new TabItem(i18nC.menuCollection());
54
		tbCol.setBorders(false);
59
		tbCol.setBorders(false);
55
		tbCol.setId(MenuApplicationId.COLLECTION);
60
		tbCol.setId(MenuApplicationId.COLLECTION);
56
		tbCol.setHeight(0);
61
		tbCol.setHeight(0);
57
		
62
		
58
		TabItem tbPer = new TabItem(i18nC.menuPersonne());
63
		TabItem tbPer = new TabItem(i18nC.menuPersonne());
59
		tbPer.setBorders(false);
64
		tbPer.setBorders(false);
60
		tbPer.setId(MenuApplicationId.PERSONNE);
65
		tbPer.setId(MenuApplicationId.PERSONNE);
61
		tbPer.setHeight(0);
66
		tbPer.setHeight(0);
62
		
67
		
63
		TabItem tbPub = new TabItem(i18nC.menuPublication());
68
		TabItem tbPub = new TabItem(i18nC.menuPublication());
64
		tbPub.setBorders(false);
69
		tbPub.setBorders(false);
65
		tbPub.setId(MenuApplicationId.PUBLICATION);
70
		tbPub.setId(MenuApplicationId.PUBLICATION);
66
		tbPub.setHeight(0);
71
		tbPub.setHeight(0);
67
		
72
		
68
		TabItem tbCom = new TabItem(i18nC.menuCommentaire());
73
		TabItem tbCom = new TabItem(i18nC.menuCommentaire());
69
		tbCom.setBorders(false);
74
		tbCom.setBorders(false);
70
		tbCom.setId(MenuApplicationId.COMMENTAIRE);
75
		tbCom.setId(MenuApplicationId.COMMENTAIRE);
71
		tbCom.setHeight(0);
76
		tbCom.setHeight(0);
-
 
77
		
-
 
78
		TabItem tbStats = new TabItem(i18nC.menuStats());
-
 
79
		tbStats.setBorders(false);
-
 
80
		tbStats.setId(MenuApplicationId.STATS);
-
 
81
		tbStats.setStyleAttribute("float", "right");
-
 
82
		tbStats.setHeight(0);
72
		
83
		
73
		tbp.add(tbAcc);
84
		tbp.add(tbAcc);
74
		tbp.add(tbIns);
85
		tbp.add(tbIns);
75
		tbp.add(tbCol);
86
		tbp.add(tbCol);
76
		tbp.add(tbPer);
87
		tbp.add(tbPer);
77
		tbp.add(tbPub);
88
		tbp.add(tbPub);
78
		tbp.add(tbCom);
89
		tbp.add(tbCom);
-
 
90
		tbp.add(tbStats);
79
		
91
		
80
		// Supression du conteneur vide de l'onglet (pour éviter un décalage de l'interface)
92
		// Supression du conteneur vide de l'onglet (pour éviter un décalage de l'interface)
81
		tbp.addListener(Events.BeforeSelect, new Listener<TabPanelEvent>() {
93
		tbp.addListener(Events.BeforeSelect, new Listener<TabPanelEvent>() {
82
			public void handleEvent(TabPanelEvent be) {
94
			public void handleEvent(TabPanelEvent be) {
83
				be.getItem().getElement().removeFromParent();
95
				be.getItem().getElement().removeFromParent();
84
			}
96
			}
85
	    });
97
	    });
86
		
98
		
87
		// interception de la selection afin de prévenir le médiateur pour qu'il charge 
99
		// interception de la selection afin de prévenir le médiateur pour qu'il charge 
88
		// le panneau central correspondant
100
		// le panneau central correspondant
89
		tbp.addListener(Events.Select, new Listener<TabPanelEvent>() {
101
		tbp.addListener(Events.Select, new Listener<TabPanelEvent>() {
90
			public void handleEvent(TabPanelEvent be) {
102
			public void handleEvent(TabPanelEvent be) {
91
				mediateur.clicMenu(be.getItem().getId());
103
				mediateur.clicMenu(be.getItem().getId());
92
			}
104
			}
-
 
105
	    });
-
 
106
		
-
 
107
		// interception de la selection afin de prévenir le médiateur pour qu'il charge 
-
 
108
		// le panneau central correspondant
-
 
109
		tbp.addListener(Events.Resize, new Listener<TabPanelEvent>() {
-
 
110
			public void handleEvent(TabPanelEvent be) {
-
 
111
				tbp.setWidth("100%");
-
 
112
			}
93
	    });
113
	    });
94
		
114
		
95
		this.add(tbp);
115
		this.add(tbp);
96
	}
116
	}
97
 
117
 
98
	public void selectionMenu(String codeMenuClique) {
118
	public void selectionMenu(String codeMenuClique) {
99
		int nbTab = tbp.getItemCount();
119
		int nbTab = tbp.getItemCount();
100
		for(int i = 0; i < nbTab; i++) {
120
		for(int i = 0; i < nbTab; i++) {
101
			if(tbp.getItem(i).getId().equals(codeMenuClique)) {
121
			if(tbp.getItem(i).getId().equals(codeMenuClique)) {
102
				tbp.setSelection(tbp.getItem(i));
122
				tbp.setSelection(tbp.getItem(i));
103
			}
123
			}
104
		}
124
		}
105
	}
125
	}
106
}
126
}