Subversion Repositories eFlore/Applications.coel

Rev

Rev 1196 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1196 Rev 1212
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.ComposantId;
4
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.Mediateur;
5
import org.tela_botanica.client.RegistreId;
5
import org.tela_botanica.client.RegistreId;
-
 
6
import org.tela_botanica.client.composants.InfoLogger;
6
import org.tela_botanica.client.i18n.Constantes;
7
import org.tela_botanica.client.i18n.Constantes;
7
import org.tela_botanica.client.i18n.ErrorMessages;
8
import org.tela_botanica.client.i18n.ErrorMessages;
8
import org.tela_botanica.client.images.Images;
9
import org.tela_botanica.client.images.Images;
9
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.modeles.Information;
11
import org.tela_botanica.client.modeles.Information;
11
import org.tela_botanica.client.modeles.Utilisateur;
12
import org.tela_botanica.client.modeles.Utilisateur;
12
import org.tela_botanica.client.util.Debug;
13
import org.tela_botanica.client.util.Debug;
13
 
14
 
14
import com.extjs.gxt.ui.client.Registry;
15
import com.extjs.gxt.ui.client.Registry;
15
import com.extjs.gxt.ui.client.Style;
16
import com.extjs.gxt.ui.client.Style;
-
 
17
import com.extjs.gxt.ui.client.Style.Direction;
16
import com.extjs.gxt.ui.client.Style.Orientation;
18
import com.extjs.gxt.ui.client.Style.Orientation;
17
import com.extjs.gxt.ui.client.event.ButtonEvent;
19
import com.extjs.gxt.ui.client.event.ButtonEvent;
18
import com.extjs.gxt.ui.client.event.MenuEvent;
20
import com.extjs.gxt.ui.client.event.MenuEvent;
19
import com.extjs.gxt.ui.client.event.SelectionListener;
21
import com.extjs.gxt.ui.client.event.SelectionListener;
-
 
22
import com.extjs.gxt.ui.client.fx.FxConfig;
20
import com.extjs.gxt.ui.client.util.Format;
23
import com.extjs.gxt.ui.client.util.Format;
21
import com.extjs.gxt.ui.client.util.Params;
24
import com.extjs.gxt.ui.client.util.Params;
-
 
25
import com.extjs.gxt.ui.client.widget.ContentPanel;
22
import com.extjs.gxt.ui.client.widget.HtmlContainer;
26
import com.extjs.gxt.ui.client.widget.HtmlContainer;
23
import com.extjs.gxt.ui.client.widget.Info;
27
import com.extjs.gxt.ui.client.widget.Info;
24
import com.extjs.gxt.ui.client.widget.LayoutContainer;
28
import com.extjs.gxt.ui.client.widget.LayoutContainer;
25
import com.extjs.gxt.ui.client.widget.button.Button;
29
import com.extjs.gxt.ui.client.widget.button.Button;
26
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
30
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
27
import com.extjs.gxt.ui.client.widget.button.SplitButton;
31
import com.extjs.gxt.ui.client.widget.button.SplitButton;
28
import com.extjs.gxt.ui.client.widget.layout.RowData;
32
import com.extjs.gxt.ui.client.widget.layout.RowData;
29
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
33
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
30
import com.extjs.gxt.ui.client.widget.menu.Menu;
34
import com.extjs.gxt.ui.client.widget.menu.Menu;
31
import com.extjs.gxt.ui.client.widget.menu.MenuItem;
35
import com.extjs.gxt.ui.client.widget.menu.MenuItem;
-
 
36
import com.google.gwt.user.client.ui.ListBox;
32
 
37
 
33
public class EnteteVue extends LayoutContainer implements Rafraichissable {
38
public class EnteteVue extends LayoutContainer implements Rafraichissable {
34
 
39
 
35
	private Mediateur mediateur = null;
40
	private Mediateur mediateur = null;
36
	private Constantes i18nC = null;
41
	private Constantes i18nC = null;
37
	private ErrorMessages i18nM = null;
42
	private ErrorMessages i18nM = null;
38
 
43
 
39
	private String identificationInfoTpl = null;
44
	private String identificationInfoTpl = null;
40
	private String titreTpl = null;
45
	private String titreTpl = null;
41
	
46
	
42
	private HtmlContainer conteneurHtml = null;
47
	private HtmlContainer conteneurHtml = null;
43
	private SelectionListener<ButtonEvent> boutonEcouteur = null;
48
	private SelectionListener<ButtonEvent> boutonEcouteur = null;
44
	private ButtonBar barreBoutons = null;
49
	private ButtonBar barreBoutons = null;
45
	private Button identificationBouton = null;
50
	private Button identificationBouton = null;
46
	private SplitButton feedbackBouton = null;
51
	private SplitButton feedbackBouton = null;
47
	private SplitButton aideBouton = null;
52
	private SplitButton aideBouton = null;
48
	private SplitButton applisBouton = null;
53
	private SplitButton applisBouton = null;
-
 
54
	
-
 
55
	
49
	
56
	
50
	public EnteteVue(Mediateur mediateurCourant) {
57
	public EnteteVue(Mediateur mediateurCourant) {
51
		mediateur = mediateurCourant;
58
		mediateur = mediateurCourant;
52
		i18nC = Mediateur.i18nC;
59
		i18nC = Mediateur.i18nC;
53
		i18nM = Mediateur.i18nM;
60
		i18nM = Mediateur.i18nM;
54
		
61
		
55
		setId(ComposantId.PANNEAU_ENTETE);
62
		setId(ComposantId.PANNEAU_ENTETE);
56
		setLayout(new RowLayout(Orientation.HORIZONTAL));
63
		setLayout(new RowLayout(Orientation.HORIZONTAL));
57
		
-
 
58
		initialiserSquelettes();
64
		initialiserSquelettes();
59
		boutonEcouteur = getEcouteurDesBoutons();
65
		boutonEcouteur = getEcouteurDesBoutons();
60
		conteneurHtml = getIdentification();
66
		conteneurHtml = getIdentification();
61
		identificationBouton = getBoutonIdentification();
67
		identificationBouton = getBoutonIdentification();
62
		feedbackBouton = getBoutonAFeedback();
68
		feedbackBouton = getBoutonAFeedback();
63
		aideBouton = getBoutonAide();
69
		aideBouton = getBoutonAide();
64
		applisBouton = getBoutonApplications();
70
		applisBouton = getBoutonApplications();
65
		
71
		
66
		barreBoutons = new ButtonBar();
72
		barreBoutons = new ButtonBar();
67
		barreBoutons.setAlignment(Style.HorizontalAlignment.RIGHT);
73
		barreBoutons.setAlignment(Style.HorizontalAlignment.RIGHT);
68
		barreBoutons.add(conteneurHtml);
74
		barreBoutons.add(conteneurHtml);
69
		barreBoutons.add(identificationBouton);
75
		barreBoutons.add(identificationBouton);
70
		barreBoutons.add(aideBouton);
76
		barreBoutons.add(aideBouton);
71
		barreBoutons.add(feedbackBouton);
77
		barreBoutons.add(feedbackBouton);
72
		barreBoutons.add(applisBouton);
78
		barreBoutons.add(applisBouton);
73
		
79
		
74
		add(getTitre(), new RowData(.20, 1));
80
		add(getTitre(), new RowData(.20, 1));
75
		add(barreBoutons, new RowData(.8, 1)); 
81
		add(barreBoutons, new RowData(.8, 1));
-
 
82
		
76
	}
83
	}
77
	
84
	
78
	private void initialiserSquelettes() {
85
	private void initialiserSquelettes() {
79
		identificationInfoTpl = "<div id='"+ComposantId.DIV_IDENTIFICATION+"'>{0}</div>";
86
		identificationInfoTpl = "<div id='"+ComposantId.DIV_IDENTIFICATION+"'>{0}</div>";
80
		titreTpl = "<div id='"+ComposantId.DIV_TITRE+"'>{0}</div>";
87
		titreTpl = "<div id='"+ComposantId.DIV_TITRE+"'>{0}</div>";
81
	}
88
	}
82
	
89
	
83
	private HtmlContainer getTitre() {
90
	private HtmlContainer getTitre() {
84
		HtmlContainer titreConteneurHtml = new HtmlContainer();
91
		HtmlContainer titreConteneurHtml = new HtmlContainer();
85
		titreConteneurHtml.setHtml(Format.substitute(titreTpl, Registry.get(RegistreId.APPLI_NOM)));
92
		titreConteneurHtml.setHtml(Format.substitute(titreTpl, Registry.get(RegistreId.APPLI_NOM)));
86
		return titreConteneurHtml;
93
		return titreConteneurHtml;
87
	}
94
	}
88
	
95
	
89
	private HtmlContainer getIdentification() {
96
	private HtmlContainer getIdentification() {
90
		HtmlContainer conteneurHtml = new HtmlContainer();
97
		HtmlContainer conteneurHtml = new HtmlContainer();
91
		
98
		
92
		conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme())));
99
		conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme())));
93
		return conteneurHtml;
100
		return conteneurHtml;
94
	}
101
	}
95
	
102
	
96
	private SelectionListener<ButtonEvent> getEcouteurDesBoutons() {
103
	private SelectionListener<ButtonEvent> getEcouteurDesBoutons() {
97
		SelectionListener<ButtonEvent> boutonEcouteur = new SelectionListener<ButtonEvent>() {  
104
		SelectionListener<ButtonEvent> boutonEcouteur = new SelectionListener<ButtonEvent>() {  
98
			public void componentSelected(ButtonEvent be) {  
105
			public void componentSelected(ButtonEvent be) {  
99
				Button btn = (Button) be.getComponent();
106
				Button btn = (Button) be.getComponent();
100
				String id = btn.getId();
107
				String id = btn.getId();
101
				String message = "";
108
				String message = "";
102
				
109
				
103
				if (id.equals(ComposantId.BTN_AIDE)
110
				if (id.equals(ComposantId.BTN_AIDE)
104
						|| id.equals(ComposantId.BTN_FEEDBACK)
111
						|| id.equals(ComposantId.BTN_FEEDBACK)
105
						|| id.equals(ComposantId.BTN_APPLIS)) {
112
						|| id.equals(ComposantId.BTN_APPLIS)) {
106
					btn.showMenu();
113
					btn.showMenu();
107
				} else if (id.equals(ComposantId.BTN_CONNEXION)) {
114
				} else if (id.equals(ComposantId.BTN_CONNEXION)) {
108
					mediateur.ouvrirIdentification();
115
					mediateur.ouvrirIdentification();
109
					message = i18nM.chargementFenetre(btn.getText());
116
					message = i18nM.chargementFenetre(btn.getText());
110
				} else if (id.equals(ComposantId.BTN_DECONNEXION)) {
117
				} else if (id.equals(ComposantId.BTN_DECONNEXION)) {
111
					mediateur.deconnecterUtilisateur();
118
					mediateur.deconnecterUtilisateur();
112
					Utilisateur utilisateurCourant = mediateur.getUtilisateur();
119
					Utilisateur utilisateurCourant = mediateur.getUtilisateur();
113
					message = i18nM.deconnexion(utilisateurCourant.getNomComplet());
120
					message = i18nM.deconnexion(utilisateurCourant.getNomComplet());
114
				} else if (id.equals(ComposantId.BTN_APPLIS)) {
121
				} else if (id.equals(ComposantId.BTN_APPLIS)) {
115
					btn.getMenu().show(btn);
122
					btn.getMenu().show(btn);
116
				}
123
				}
117
				
124
				
118
				if (!message.equals("")) {
125
				if (!message.equals("")) {
119
					Info.display(i18nC.chargement(), message);
126
					InfoLogger.display(i18nC.chargement(), message);
120
				}
127
				}
121
			}  
128
			}  
122
		};
129
		};
123
		return boutonEcouteur;
130
		return boutonEcouteur;
124
	}
131
	}
125
	
132
	
126
	private Button getBoutonIdentification() {
133
	private Button getBoutonIdentification() {
127
		Button bouton = new Button(i18nC.identification(), boutonEcouteur);
134
		Button bouton = new Button(i18nC.identification(), boutonEcouteur);
128
		bouton.setId(ComposantId.BTN_CONNEXION);
135
		bouton.setId(ComposantId.BTN_CONNEXION);
129
		return bouton;
136
		return bouton;
130
	}
137
	}
131
	
138
	
132
	private SplitButton getBoutonAide() {
139
	private SplitButton getBoutonAide() {
133
		MenuItem menuDoc = new MenuItem(i18nC.doc());
140
		MenuItem menuDoc = new MenuItem(i18nC.doc());
134
		menuDoc.addSelectionListener(new SelectionListener<MenuEvent>() {  
141
		menuDoc.addSelectionListener(new SelectionListener<MenuEvent>() {  
135
			@Override
142
			@Override
136
			public void componentSelected(MenuEvent mEvent) {  
143
			public void componentSelected(MenuEvent mEvent) {  
137
				mediateur.ouvrirAide();
144
				mediateur.ouvrirAide();
138
			}  
145
			}  
139
		});
146
		});
140
		menuDoc.setId(ComposantId.MENU_DOC);
147
		menuDoc.setId(ComposantId.MENU_DOC);
141
		menuDoc.setIcon(Images.ICONES.aide());
148
		menuDoc.setIcon(Images.ICONES.aide());
142
		
149
		
143
		
150
		
144
		MenuItem menuApropos = new MenuItem(i18nC.apropos());
151
		MenuItem menuApropos = new MenuItem(i18nC.apropos());
145
		menuApropos.addSelectionListener(new SelectionListener<MenuEvent>() {  
152
		menuApropos.addSelectionListener(new SelectionListener<MenuEvent>() {  
146
			@Override
153
			@Override
147
			public void componentSelected(MenuEvent mEvent) {  
154
			public void componentSelected(MenuEvent mEvent) {  
148
				mediateur.ouvrirParametres();
155
				mediateur.ouvrirParametres();
149
			}  
156
			}  
150
		});
157
		});
151
		menuApropos.setId(ComposantId.MENU_APROPOS);
158
		menuApropos.setId(ComposantId.MENU_APROPOS);
152
		menuApropos.setIcon(Images.ICONES.engrenages());
159
		menuApropos.setIcon(Images.ICONES.engrenages());
153
		
160
		
154
		Menu menuAide = new Menu();
161
		Menu menuAide = new Menu();
155
		menuAide.add(menuDoc);
162
		menuAide.add(menuDoc);
156
		menuAide.add(menuApropos);
163
		menuAide.add(menuApropos);
157
		
164
		
158
		SplitButton boutonAvecMenus = new SplitButton(i18nC.aide());
165
		SplitButton boutonAvecMenus = new SplitButton(i18nC.aide());
159
		boutonAvecMenus.setId(ComposantId.BTN_AIDE);
166
		boutonAvecMenus.setId(ComposantId.BTN_AIDE);
160
		boutonAvecMenus.setIcon(Images.ICONES.aide());
167
		boutonAvecMenus.setIcon(Images.ICONES.aide());
161
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
168
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
162
		boutonAvecMenus.setMenu(menuAide);
169
		boutonAvecMenus.setMenu(menuAide);
163
		return boutonAvecMenus;
170
		return boutonAvecMenus;
164
	}
171
	}
165
	
172
	
166
	private SplitButton getBoutonAFeedback() {
173
	private SplitButton getBoutonAFeedback() {
167
		MenuItem menuBogue = new MenuItem(i18nC.bogue());
174
		MenuItem menuBogue = new MenuItem(i18nC.bogue());
168
		menuBogue.addSelectionListener(new SelectionListener<MenuEvent>() {  
175
		menuBogue.addSelectionListener(new SelectionListener<MenuEvent>() {  
169
			@Override
176
			@Override
170
			public void componentSelected(MenuEvent mEvent) {  
177
			public void componentSelected(MenuEvent mEvent) {  
171
				Menu me = (Menu) mEvent.getComponent();
178
				Menu me = (Menu) mEvent.getComponent();
172
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BOGUE);
179
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BOGUE);
173
				Info.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText()));
180
				InfoLogger.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText()));
174
				mediateur.ouvrirUrlExterne(ComposantId.MENU_BOGUE);
181
				mediateur.ouvrirUrlExterne(ComposantId.MENU_BOGUE);
175
			}  
182
			}  
176
		});
183
		});
177
		menuBogue.setId(ComposantId.MENU_BOGUE);
184
		menuBogue.setId(ComposantId.MENU_BOGUE);
178
		menuBogue.setIcon(Images.ICONES.bogue());
185
		menuBogue.setIcon(Images.ICONES.bogue());
179
		
186
 
180
		MenuItem menuCommentaire = new MenuItem(i18nC.remarques());
187
		MenuItem menuCommentaire = new MenuItem(i18nC.remarques());
181
		menuCommentaire.addSelectionListener(new SelectionListener<MenuEvent>() {  
188
		menuCommentaire.addSelectionListener(new SelectionListener<MenuEvent>() {  
182
			@Override
189
			@Override
183
			public void componentSelected(MenuEvent mEvent) {  
190
			public void componentSelected(MenuEvent mEvent) {  
184
				Menu me = (Menu) mEvent.getComponent();
191
				Menu me = (Menu) mEvent.getComponent();
185
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_COMMENTAIRE);
192
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_COMMENTAIRE);
186
				Info.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText()));
193
				InfoLogger.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText()));
187
				mediateur.ouvrirUrlExterne(ComposantId.MENU_COMMENTAIRE);
194
				mediateur.ouvrirUrlExterne(ComposantId.MENU_COMMENTAIRE);
188
			}  
195
			}  
189
		});
196
		});
190
		menuCommentaire.setId(ComposantId.MENU_COMMENTAIRE);
197
		menuCommentaire.setId(ComposantId.MENU_COMMENTAIRE);
191
		menuCommentaire.setIcon(Images.ICONES.commentaire());
198
		menuCommentaire.setIcon(Images.ICONES.commentaire());
-
 
199
 
-
 
200
		MenuItem fenetreJournal = new MenuItem("Journal de l'application");
-
 
201
		fenetreJournal.addSelectionListener(new SelectionListener<MenuEvent>() {  
-
 
202
			@Override
-
 
203
			public void componentSelected(MenuEvent mEvent) {  
-
 
204
				Menu me = (Menu) mEvent.getComponent();
-
 
205
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_COMMENTAIRE);
-
 
206
				//InfoLogger.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText()));
-
 
207
				mediateur.ouvrirFenetreJournal();
-
 
208
			}
-
 
209
		});
-
 
210
		
-
 
211
		fenetreJournal.setIcon(Images.ICONES.newspaper());
192
		
212
		
193
		Menu menuFeedback = new Menu();
213
		Menu menuFeedback = new Menu();
194
		menuFeedback.add(menuBogue);
214
		menuFeedback.add(menuBogue);
195
		menuFeedback.add(menuCommentaire);
215
		menuFeedback.add(menuCommentaire);
-
 
216
		menuFeedback.add(fenetreJournal);
196
		
217
		
197
		SplitButton boutonAvecMenus = new SplitButton(i18nC.feedback());
218
		SplitButton boutonAvecMenus = new SplitButton(i18nC.feedback());
198
		boutonAvecMenus.setId(ComposantId.BTN_FEEDBACK);
219
		boutonAvecMenus.setId(ComposantId.BTN_FEEDBACK);
199
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
220
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
200
		boutonAvecMenus.setMenu(menuFeedback);
221
		boutonAvecMenus.setMenu(menuFeedback);
201
		boutonAvecMenus.setIcon(Images.ICONES.flecheDedansDehors());
222
		boutonAvecMenus.setIcon(Images.ICONES.flecheDedansDehors());
202
		return boutonAvecMenus;
223
		return boutonAvecMenus;
203
	}
224
	}
204
	
225
	
205
	private SplitButton getBoutonApplications() {
226
	private SplitButton getBoutonApplications() {
206
		MenuItem menuCel = new MenuItem(i18nC.cel());
227
		MenuItem menuCel = new MenuItem(i18nC.cel());
207
		menuCel.addSelectionListener(new SelectionListener<MenuEvent>() {  
228
		menuCel.addSelectionListener(new SelectionListener<MenuEvent>() {  
208
			@Override
229
			@Override
209
			public void componentSelected(MenuEvent mEvent) {  
230
			public void componentSelected(MenuEvent mEvent) {  
210
				Menu me = (Menu) mEvent.getComponent();
231
				Menu me = (Menu) mEvent.getComponent();
211
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_CEL);
232
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_CEL);
212
				Info.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText()));
233
				InfoLogger.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText()));
213
				mediateur.ouvrirUrlExterne(ComposantId.MENU_CEL);
234
				mediateur.ouvrirUrlExterne(ComposantId.MENU_CEL);
214
			}  
235
			}  
215
		});
236
		});
216
		menuCel.setId(ComposantId.MENU_CEL);
237
		menuCel.setId(ComposantId.MENU_CEL);
217
		menuCel.setIcon(Images.ICONES.images());
238
		menuCel.setIcon(Images.ICONES.images());
218
		
239
		
219
		MenuItem menuBel = new MenuItem(i18nC.bel());
240
		MenuItem menuBel = new MenuItem(i18nC.bel());
220
		menuBel.addSelectionListener(new SelectionListener<MenuEvent>() {  
241
		menuBel.addSelectionListener(new SelectionListener<MenuEvent>() {  
221
			@Override
242
			@Override
222
			public void componentSelected(MenuEvent mEvent) {  
243
			public void componentSelected(MenuEvent mEvent) {  
223
				Menu me = (Menu) mEvent.getComponent();
244
				Menu me = (Menu) mEvent.getComponent();
224
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BEL);
245
				MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BEL);
225
				Info.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText()));
246
				InfoLogger.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText()));
226
				mediateur.ouvrirUrlExterne(ComposantId.MENU_BEL);
247
				mediateur.ouvrirUrlExterne(ComposantId.MENU_BEL);
227
			}  
248
			}  
228
		});
249
		});
229
		menuBel.setId(ComposantId.MENU_BEL);
250
		menuBel.setId(ComposantId.MENU_BEL);
230
		menuBel.setIcon(Images.ICONES.livreOuvert());
251
		menuBel.setIcon(Images.ICONES.livreOuvert());
231
		
252
		
232
		Menu menu = new Menu();
253
		Menu menu = new Menu();
233
		menu.add(menuCel);
254
		menu.add(menuCel);
234
		menu.add(menuBel);
255
		menu.add(menuBel);
235
		
256
		
236
		SplitButton boutonAvecMenus = new SplitButton(i18nC.applicationExterne());
257
		SplitButton boutonAvecMenus = new SplitButton(i18nC.applicationExterne());
237
		boutonAvecMenus.setId(ComposantId.BTN_APPLIS);
258
		boutonAvecMenus.setId(ComposantId.BTN_APPLIS);
238
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
259
		boutonAvecMenus.addSelectionListener(boutonEcouteur);
239
		boutonAvecMenus.setMenu(menu);
260
		boutonAvecMenus.setMenu(menu);
240
		boutonAvecMenus.setIcon(Images.ICONES.flecheBascule());
261
		boutonAvecMenus.setIcon(Images.ICONES.flecheBascule());
241
		
262
		
242
		return boutonAvecMenus;
263
		return boutonAvecMenus;
243
	}
264
	}
244
	
265
	
245
	public void rafraichir(Object nouvellesDonnees) {
266
	public void rafraichir(Object nouvellesDonnees) {
246
		if (nouvellesDonnees instanceof Information) {
267
		if (nouvellesDonnees instanceof Information) {
247
			Information info = (Information) nouvellesDonnees;
268
			Information info = (Information) nouvellesDonnees;
248
			if (info.getType().equals("maj_utilisateur")) {
269
			if (info.getType().equals("maj_utilisateur")) {
249
				Utilisateur utilisateur = mediateur.getUtilisateur();
270
				Utilisateur utilisateur = mediateur.getUtilisateur();
250
				if (utilisateur.isIdentifie()) {
271
				if (utilisateur.isIdentifie()) {
251
					conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.bienvenue()+utilisateur.getNomComplet())));
272
					conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.bienvenue()+utilisateur.getNomComplet())));
252
					identificationBouton.setText(i18nC.deconnexion());
273
					identificationBouton.setText(i18nC.deconnexion());
253
					identificationBouton.setIcon(Images.ICONES.deconnexion());
274
					identificationBouton.setIcon(Images.ICONES.deconnexion());
254
					identificationBouton.setId(ComposantId.BTN_DECONNEXION);
275
					identificationBouton.setId(ComposantId.BTN_DECONNEXION);
255
				} else {
276
				} else {
256
					conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme())));
277
					conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme())));
257
					identificationBouton.setText(i18nC.identification());
278
					identificationBouton.setText(i18nC.identification());
258
					identificationBouton.setIcon(Images.ICONES.connexion());
279
					identificationBouton.setIcon(Images.ICONES.connexion());
259
					identificationBouton.setId(ComposantId.BTN_CONNEXION);
280
					identificationBouton.setId(ComposantId.BTN_CONNEXION);
260
				}
281
				}
261
			}
282
			}
262
		} else  {	
283
		} else  {	
263
			Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
284
			Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
264
		}
285
		}
265
		layout();
286
		layout();
266
	}
287
	}
267
}
288
}