2,14 → 2,14 |
|
import org.tela_botanica.client.ComposantId; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.i18n.Constantes; |
import org.tela_botanica.client.i18n.ErrorMessages; |
import org.tela_botanica.client.images.Images; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.modeles.Utilisateur; |
import org.tela_botanica.client.util.Debug; |
|
import com.extjs.gxt.ui.client.Registry; |
import com.extjs.gxt.ui.client.Style; |
import com.extjs.gxt.ui.client.Style.Orientation; |
import com.extjs.gxt.ui.client.event.ButtonEvent; |
27,18 → 27,15 |
import com.extjs.gxt.ui.client.widget.layout.RowLayout; |
import com.extjs.gxt.ui.client.widget.menu.Menu; |
import com.extjs.gxt.ui.client.widget.menu.MenuItem; |
import com.google.gwt.core.client.GWT; |
|
public class EnteteVue extends LayoutContainer implements Rafraichissable { |
|
private Mediateur mediateur = null; |
private Constantes i18nC = null; |
private ErrorMessages i18nM = null; |
|
private String identificationInfoTpl = null; |
private String titreTpl = null; |
private String generalMessageTpl = null; |
private String deconnexionMessageTpl = null; |
private String lienExterneMessageTpl = null; |
|
private HtmlContainer conteneurHtml = null; |
private SelectionListener<ButtonEvent> boutonEcouteur = null; |
51,6 → 48,7 |
public EnteteVue(Mediateur mediateurCourant) { |
mediateur = mediateurCourant; |
i18nC = Mediateur.i18nC; |
i18nM = Mediateur.i18nM; |
|
setId(ComposantId.PANNEAU_ENTETE); |
setLayout(new RowLayout(Orientation.HORIZONTAL)); |
78,9 → 76,6 |
private void initialiserSquelettes() { |
identificationInfoTpl = "<div id='"+ComposantId.DIV_IDENTIFICATION+"'>{0}</div>"; |
titreTpl = "<div id='"+ComposantId.DIV_TITRE+"'>{0}</div>"; |
generalMessageTpl = "Chargement de la fenêtre «{0}» en cours..."; |
deconnexionMessageTpl = "Déconnexion de l'utilisateur «{0}» en cours..."; |
lienExterneMessageTpl = "Ouverture du lien externe «{0}» en cours..."; |
} |
|
private HtmlContainer getTitre() { |
92,7 → 87,7 |
private HtmlContainer getIdentification() { |
HtmlContainer conteneurHtml = new HtmlContainer(); |
|
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add("Mode anonyme"))); |
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme()))); |
return conteneurHtml; |
} |
|
109,11 → 104,11 |
btn.showMenu(); |
} else if (id.equals(ComposantId.BTN_CONNEXION)) { |
mediateur.ouvrirIdentification(); |
message = Format.substitute(generalMessageTpl, btn.getText()); |
message = i18nM.chargementFenetre(btn.getText()); |
} else if (id.equals(ComposantId.BTN_DECONNEXION)) { |
mediateur.deconnecterUtilisateur(); |
Utilisateur utilisateurCourant = mediateur.getUtilisateur(); |
message = Format.substitute(deconnexionMessageTpl, utilisateurCourant.getNomComplet()); |
message = i18nM.deconnexion(utilisateurCourant.getNomComplet()); |
} else if (id.equals(ComposantId.BTN_APPLIS)) { |
btn.getMenu().show(btn); |
} |
137,7 → 132,7 |
menuDoc.addSelectionListener(new SelectionListener<MenuEvent>() { |
@Override |
public void componentSelected(MenuEvent mEvent) { |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirAide(); |
mediateur.ouvrirAide(); |
} |
}); |
menuDoc.setId(ComposantId.MENU_DOC); |
148,7 → 143,7 |
menuApropos.addSelectionListener(new SelectionListener<MenuEvent>() { |
@Override |
public void componentSelected(MenuEvent mEvent) { |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirParametres(); |
mediateur.ouvrirParametres(); |
} |
}); |
menuApropos.setId(ComposantId.MENU_APROPOS); |
173,8 → 168,8 |
public void componentSelected(MenuEvent mEvent) { |
Menu me = (Menu) mEvent.getComponent(); |
MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BOGUE); |
Info.display(Mediateur.i18nC.chargement(), lienExterneMessageTpl, mi.getText()); |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirUrlExterne(ComposantId.MENU_BOGUE); |
Info.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText())); |
mediateur.ouvrirUrlExterne(ComposantId.MENU_BOGUE); |
} |
}); |
menuBogue.setId(ComposantId.MENU_BOGUE); |
186,8 → 181,8 |
public void componentSelected(MenuEvent mEvent) { |
Menu me = (Menu) mEvent.getComponent(); |
MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_COMMENTAIRE); |
Info.display(Mediateur.i18nC.chargement(), lienExterneMessageTpl, mi.getText()); |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirUrlExterne(ComposantId.MENU_COMMENTAIRE); |
Info.display(Mediateur.i18nC.chargement(), i18nM.ouvertureLienExterne(mi.getText())); |
mediateur.ouvrirUrlExterne(ComposantId.MENU_COMMENTAIRE); |
} |
}); |
menuCommentaire.setId(ComposantId.MENU_COMMENTAIRE); |
206,27 → 201,27 |
} |
|
private SplitButton getBoutonApplications() { |
MenuItem menuCel = new MenuItem("Carnet en ligne"); |
MenuItem menuCel = new MenuItem(i18nC.cel()); |
menuCel.addSelectionListener(new SelectionListener<MenuEvent>() { |
@Override |
public void componentSelected(MenuEvent mEvent) { |
Menu me = (Menu) mEvent.getComponent(); |
MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_CEL); |
Info.display(Mediateur.i18nC.chargement(), "Ouverture de l'application «{0}» en cours...", mi.getText()); |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirUrlExterne(ComposantId.MENU_CEL); |
Info.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText())); |
mediateur.ouvrirUrlExterne(ComposantId.MENU_CEL); |
} |
}); |
menuCel.setId(ComposantId.MENU_CEL); |
menuCel.setIcon(Images.ICONES.images()); |
|
MenuItem menuBel = new MenuItem("Biblio en ligne"); |
MenuItem menuBel = new MenuItem(i18nC.bel()); |
menuBel.addSelectionListener(new SelectionListener<MenuEvent>() { |
@Override |
public void componentSelected(MenuEvent mEvent) { |
Menu me = (Menu) mEvent.getComponent(); |
MenuItem mi = (MenuItem) me.getItemByItemId(ComposantId.MENU_BEL); |
Info.display(Mediateur.i18nC.chargement(), "Ouverture de l'application «{0}» en cours...", mi.getText()); |
((Mediateur) Registry.get(RegistreId.MEDIATEUR)).ouvrirUrlExterne(ComposantId.MENU_BEL); |
Info.display(i18nC.chargement(), i18nM.ouvertureAppliExterne(mi.getText())); |
mediateur.ouvrirUrlExterne(ComposantId.MENU_BEL); |
} |
}); |
menuBel.setId(ComposantId.MENU_BEL); |
236,7 → 231,7 |
menu.add(menuCel); |
menu.add(menuBel); |
|
SplitButton boutonAvecMenus = new SplitButton("Changez d'application..."); |
SplitButton boutonAvecMenus = new SplitButton(i18nC.applicationExterne()); |
boutonAvecMenus.setId(ComposantId.BTN_APPLIS); |
boutonAvecMenus.addSelectionListener(boutonEcouteur); |
boutonAvecMenus.setMenu(menu); |
249,26 → 244,24 |
if (nouvellesDonnees instanceof Information) { |
Information info = (Information) nouvellesDonnees; |
if (info.getType().equals("maj_utilisateur")) { |
Utilisateur utilisateur = ((Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT)); |
Utilisateur utilisateur = mediateur.getUtilisateur(); |
if (utilisateur.isIdentifie()) { |
if (utilisateur.existeDansAnnuaire()) { |
utilisateur.majUtilisateurInfoAnnuaire(); |
} |
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add("Bienvenue : "+utilisateur.getNomComplet()))); |
identificationBouton.setText("Deconnexion"); |
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.bienvenue()+utilisateur.getNomComplet()))); |
identificationBouton.setText(i18nC.deconnexion()); |
identificationBouton.setIcon(Images.ICONES.deconnexion()); |
identificationBouton.setId(ComposantId.BTN_DECONNEXION); |
} else { |
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add("Mode anonyme"))); |
identificationBouton.setText("Identifiez vous..."); |
conteneurHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add(i18nC.modeAnonyme()))); |
identificationBouton.setText(i18nC.identification()); |
identificationBouton.setIcon(Images.ICONES.connexion()); |
identificationBouton.setId(ComposantId.BTN_CONNEXION); |
} |
} |
} else if (nouvellesDonnees instanceof Utilisateur ) { |
|
} else { |
GWT.log("Ce type d'objet n'est pas pris en compte par la méthode rafraichir de la classe "+getClass(), null); |
} else { |
Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass())); |
} |
layout(); |
} |