/trunk/src/org/tela_botanica/client/vues/CollectionDetailVue.java |
---|
New file |
0,0 → 1,156 |
package org.tela_botanica.client.vues; |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.ComposantId; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Collection; |
import org.tela_botanica.client.modeles.ProjetListe; |
import org.tela_botanica.client.modeles.Structure; |
import org.tela_botanica.client.modeles.StructureListe; |
import org.tela_botanica.client.modeles.ValeurListe; |
import com.extjs.gxt.ui.client.Style.Scroll; |
import com.extjs.gxt.ui.client.util.Format; |
import com.extjs.gxt.ui.client.util.Params; |
import com.extjs.gxt.ui.client.widget.ContentPanel; |
import com.extjs.gxt.ui.client.widget.Html; |
import com.extjs.gxt.ui.client.widget.TabItem; |
import com.extjs.gxt.ui.client.widget.TabPanel; |
import com.extjs.gxt.ui.client.widget.layout.AnchorLayout; |
import com.extjs.gxt.ui.client.widget.layout.FlowLayout; |
import com.google.gwt.core.client.GWT; |
public class CollectionDetailVue extends DetailVue implements Rafraichissable { |
private StructureListe structures = null; |
private String enteteTpl = null; |
private String generalTpl = null; |
private Collection collection = null; |
private ContentPanel panneauPrincipal = null; |
private Html entete = null; |
private TabPanel onglets = null; |
private TabItem generalOnglet = null; |
public CollectionDetailVue(Mediateur mediateurCourant) { |
super(mediateurCourant); |
initialiserTousLesTpl(); |
chargerOntologie(); |
panneauPrincipal = new ContentPanel(); |
panneauPrincipal.setLayout(new FlowLayout()); |
panneauPrincipal.setHeaderVisible(false); |
panneauPrincipal.setBodyBorder(false); |
entete = new Html(); |
entete.setId(ComposantId.ZONE_DETAIL_ENTETE); |
panneauPrincipal.setTopComponent(entete); |
onglets = new TabPanel(); |
onglets.setId(ComposantId.ZONE_DETAIL_CORPS); |
onglets.setHeight("100%"); |
onglets.setBodyBorder(false); |
generalOnglet = new TabItem(i18nC.structureInfoGeneral()); |
generalOnglet.setLayout(new AnchorLayout()); |
generalOnglet.setScrollMode(Scroll.AUTO); |
onglets.add(generalOnglet); |
panneauPrincipal.add(onglets); |
add(panneauPrincipal); |
} |
private void initialiserTousLesTpl() { |
initialiserEnteteHtmlTpl(); |
initialiserGeneralTpl(); |
} |
private void initialiserEnteteHtmlTpl() { |
enteteTpl = |
"<div id='{css_id}'>"+ |
" <h1>{nom}</h1>"+ |
" <h2>{structure}<span class='{css_meta}'>{projet} - {id} - {guid}</span></h2>" + |
" " + |
"</div>"; |
} |
private void initialiserGeneralTpl() { |
generalTpl = |
"<div class='{css_corps}'>"+ |
" <div class='{css_fieldset}'>"+ |
" <h2>{i18n_titre_identification}</h2>"+ |
" <span class='{css_label}'>{i18n_sigle} :</span> {sigle}<br />"+ |
" </div>"+ |
"</div>"; |
} |
private void chargerOntologie() { |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof Collection) { |
collection = (Collection) nouvelleDonnees; |
afficherDetail(); |
} else if (nouvelleDonnees instanceof ProjetListe) { |
projets = (ProjetListe) nouvelleDonnees; |
} else if (nouvelleDonnees instanceof ValeurListe) { |
ValeurListe ontologieReceptionnee = (ValeurListe) nouvelleDonnees; |
ajouterListeValeursAOntologie(ontologieReceptionnee); |
} else { |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null); |
} |
} |
private void afficherDetail() { |
if (collection != null) { |
afficherEntete(); |
afficherIdentification(); |
} |
layout(); |
} |
private void afficherEntete() { |
Params enteteParams = new Params(); |
enteteParams.set("css_id", ComposantId.ZONE_DETAIL_ENTETE); |
enteteParams.set("css_meta", ComposantClass.META); |
enteteParams.set("nom", collection.getNom()); |
enteteParams.set("structure", construireTxtStructure(collection.getIdStructure())); |
enteteParams.set("id", collection.getId()); |
enteteParams.set("guid", collection.getGuid()); |
enteteParams.set("projet", construireTxtProjet(collection.getIdProjet())); |
String eHtml = Format.substitute(enteteTpl, enteteParams); |
entete.getElement().setInnerHTML(eHtml); |
} |
private void afficherIdentification() { |
Params generalParams = new Params(); |
generalParams.set("i18n_titre_identification", i18nC.titreAdministratif()); |
generalParams.set("i18n_acronyme", i18nC.acronyme()); |
String acronyme = construireTxtTruck(collection.getIdAlternatif()); |
generalParams.set("acronyme", acronyme); |
afficherOnglet(generalTpl, generalParams, generalOnglet); |
} |
protected String construireTxtStructure(String idStructure) { |
String chaineARetourner = idStructure; |
if (structures != null) { |
Structure structure = structures.get(idStructure); |
String nomStructure = structure.getNom(); |
if (!nomStructure.equals("")) { |
chaineARetourner = nomStructure; |
} |
} |
return chaineARetourner; |
} |
} |
/trunk/src/org/tela_botanica/client/vues/StructureDetailVue.java |
---|
34,13 → 34,8 |
import com.extjs.gxt.ui.client.widget.layout.FlowLayout; |
import com.google.gwt.core.client.GWT; |
public class StructureDetailVue extends LayoutContainer implements Rafraichissable { |
public class StructureDetailVue extends DetailVue implements Rafraichissable { |
private Mediateur mediateur = null; |
private Constantes i18nC = null; |
private HashMap<String, Valeur> ontologie = null; |
private ProjetListe projets = null; |
private String enteteTpl = null; |
private String identificationTpl = null; |
private String personnelTpl = null; |
49,7 → 44,6 |
private String conservationTpl = null; |
private String traitementConservationTpl = null; |
private String valorisationTpl = null; |
private String sautLigneTpl = null; |
private String typeTraitementConservationTpl = null; |
private String rechercheValorisationTpl = null; |
67,16 → 61,11 |
private TabItem valorisationOnglet = null; |
public StructureDetailVue(Mediateur mediateurCourant) { |
mediateur = mediateurCourant; |
i18nC = mediateur.i18nC; |
super(mediateurCourant); |
initialiserTousLesTpl(); |
ontologie = new HashMap<String, Valeur>(); |
chargerOntologie(); |
setLayout(new FitLayout()); |
setBorders(false); |
setScrollMode(Scroll.AUTO); |
panneauPrincipal = new ContentPanel(); |
panneauPrincipal.setLayout(new FlowLayout()); |
panneauPrincipal.setHeaderVisible(false); |
116,7 → 105,6 |
} |
private void chargerOntologie() { |
mediateur.selectionnerProjets(this); |
mediateur.obtenirListeValeurEtRafraichir(this, "stpr"); |
mediateur.obtenirListeValeurEtRafraichir(this, "stpu"); |
mediateur.obtenirListeValeurEtRafraichir(this, "statut"); |
445,22 → 433,6 |
return cHtml; |
} |
private void afficherOnglet(String template, Params parametres, TabItem onglet) { |
String cHtml = Format.substitute(template, parametres); |
Params cssParams = new Params(); |
cssParams.set("css_corps", ComposantClass.DETAIL_CORPS_CONTENU); |
cssParams.set("css_label", ComposantClass.LABEL); |
cssParams.set("css_indentation", ComposantClass.INDENTATION); |
cssParams.set("css_fieldset", ComposantClass.FIELDSET); |
cssParams.set("css_clear", ComposantClass.CLEAR); |
cHtml = Format.substitute(cHtml, cssParams); |
HtmlContainer corpsConteneurDuHtml = new HtmlContainer(cHtml); |
onglet.removeAll(); |
onglet.add(corpsConteneurDuHtml); |
} |
private void initialiserTousLesTpl() { |
initialiserEnteteHtmlTpl(); |
initialiserIdentificationTpl(); |
472,7 → 444,6 |
initialiserTypeTraitementConservationTpl(); |
initialiserValorisationTpl(); |
initialiserRechercheValorisationTpl(); |
initialiserSautLigneTpl(); |
} |
private void initialiserEnteteHtmlTpl() { |
644,10 → 615,6 |
"<span class='{css_indentation} {css_label}'>{i18n_recherche_type} :</span> {recherche_type}<br />"; |
} |
private void initialiserSautLigneTpl() { |
sautLigneTpl = "<br />\n"; |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof Structure) { |
structure = (Structure) nouvelleDonnees; |
667,17 → 634,6 |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null); |
} |
} |
private void ajouterListeValeursAOntologie(ValeurListe ontologieReceptionnee) { |
Iterator<String> it = ontologieReceptionnee.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
Valeur valeur = ontologieReceptionnee.get(cle); |
if (valeur != null) { |
ontologie.put(cle, valeur); |
} |
} |
} |
protected void allouerPersonnelAStructure(StructureAPersonneListe personnel) { |
structure.setPersonnel(personnel); |
730,90 → 686,4 |
return chaineARetourner; |
} |
protected String construireTxtTruck(String chaineAAnalyser) { |
ArrayList<String> termes = new ArrayList<String>(); |
if ((chaineAAnalyser != null) && (!chaineAAnalyser.trim().equals(""))) { |
String[] valeurs = chaineAAnalyser.split(";;"); |
int nbreValeurs = valeurs.length; |
if (nbreValeurs > 0) { |
for (int i = 0; i < nbreValeurs; i++) { |
String valeur = valeurs[i]; |
String valeurFormatee = formaterValeurTruck(valeur); |
termes.add(valeurFormatee); |
} |
} |
} |
String chaineARetourner = formaterTableauDeTxt(termes); |
return chaineARetourner; |
} |
private String formaterParenthese(String chaineAAfficher) { |
if (!chaineAAfficher.equals("")) { |
chaineAAfficher = "("+chaineAAfficher+")"; |
} |
return chaineAAfficher; |
} |
private String formaterAutre(String chaineAAfficher) { |
if (!chaineAAfficher.equals("")) { |
chaineAAfficher = " ["+i18nC.autres()+" : "+chaineAAfficher+"]"; |
} |
return chaineAAfficher; |
} |
private String formaterTableauDeTxt(ArrayList<String> tableauDeTxt) { |
String chaineAAfficher = ""; |
int tailleDuTableau = tableauDeTxt.size(); |
if (tailleDuTableau > 0) { |
int indexAvtDernier = tailleDuTableau - 1; |
for (int i = 0; i < tailleDuTableau; i++) { |
String mot = tableauDeTxt.get(i); |
if (i != indexAvtDernier) { |
chaineAAfficher += mot+", "; |
} else { |
chaineAAfficher += nettoyerPointFinal(mot)+"."; |
} |
} |
} |
return chaineAAfficher; |
} |
private String formaterOuiNon(String chaineAFormater) { |
String txtARetourner = ""; |
if (chaineAFormater.equals("0")) { |
txtARetourner = i18nC.non(); |
} else if (chaineAFormater.equals("1")) { |
txtARetourner = i18nC.oui(); |
} |
return txtARetourner; |
} |
private String formaterSautDeLigne(String chaineAFormater) { |
String txtARetourner = chaineAFormater.replaceAll("\n", sautLigneTpl); |
return txtARetourner; |
} |
private String formaterValeurTruck(String valeur) { |
String chaineARetourner = ""; |
if (valeur.matches("^[^#]+##[^$]+$")) { |
String[] cleValeur = valeur.split("##"); |
chaineARetourner = cleValeur[1]+" "+formaterParenthese(cleValeur[0]); |
} else if (!valeur.equals("")) { |
chaineARetourner = valeur; |
} else { |
GWT.log("Valeur truck posant problèlme :"+valeur, null); |
} |
return chaineARetourner; |
} |
private String nettoyerPointFinal(String mot) { |
mot = mot.replaceAll("[.]$", ""); |
return mot; |
} |
} |
/trunk/src/org/tela_botanica/client/vues/PersonneVue.java |
---|
4,6 → 4,7 |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.modeles.Personne; |
import org.tela_botanica.client.modeles.PersonneListe; |
import com.extjs.gxt.ui.client.Registry; |
36,7 → 37,9 |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof PersonneListe) { |
if (nouvelleDonnees instanceof Personne) { |
panneauPersonneDetail.rafraichir((Personne) nouvelleDonnees); |
} else if (nouvelleDonnees instanceof PersonneListe) { |
panneauPersonneListe.rafraichir((PersonneListe) nouvelleDonnees); |
} else if (nouvelleDonnees instanceof Information) { |
Information info = (Information) nouvelleDonnees; |
/trunk/src/org/tela_botanica/client/vues/CollectionVue.java |
---|
New file |
0,0 → 1,49 |
package org.tela_botanica.client.vues; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Collection; |
import org.tela_botanica.client.modeles.CollectionListe; |
import com.extjs.gxt.ui.client.Style.LayoutRegion; |
import com.extjs.gxt.ui.client.util.Margins; |
import com.extjs.gxt.ui.client.widget.LayoutContainer; |
import com.extjs.gxt.ui.client.widget.layout.BorderLayout; |
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData; |
import com.google.gwt.core.client.GWT; |
public class CollectionVue extends LayoutContainer implements Rafraichissable { |
private Mediateur mediateur = null; |
private CollectionListeVue listeCollectionPanneau = null; |
private CollectionDetailVue detailCollectionPanneau = null; |
public CollectionVue(Mediateur mediateurCourant) { |
mediateur = mediateurCourant; |
BorderLayout layout = new BorderLayout(); |
layout.setEnableState(false); |
setLayout(layout); |
listeCollectionPanneau = new CollectionListeVue(mediateur); |
add(listeCollectionPanneau, new BorderLayoutData(LayoutRegion.CENTER)); |
detailCollectionPanneau = new CollectionDetailVue(mediateur); |
BorderLayoutData dispositionSud = new BorderLayoutData(LayoutRegion.SOUTH, .5f, 200, 1000); |
dispositionSud.setSplit(true); |
dispositionSud.setMargins(new Margins(5, 0, 0, 0)); |
add(detailCollectionPanneau, dispositionSud); |
} |
public void rafraichir(Object nouvelleDonnees) { |
// Nous passons l'objet aux méthodes rafraichir des panneaux composant le panneau principal Structure |
if (nouvelleDonnees instanceof Collection) { |
detailCollectionPanneau.rafraichir(nouvelleDonnees); |
} else if (nouvelleDonnees instanceof CollectionListe) { |
listeCollectionPanneau.rafraichir(nouvelleDonnees); |
} else { |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null); |
} |
} |
} |
/trunk/src/org/tela_botanica/client/vues/CollectionListeVue.java |
---|
New file |
0,0 → 1,177 |
package org.tela_botanica.client.vues; |
import java.util.ArrayList; |
import java.util.List; |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.i18n.Constantes; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Collection; |
import org.tela_botanica.client.modeles.CollectionListe; |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.modeles.Structure; |
import org.tela_botanica.client.modeles.StructureListe; |
import org.tela_botanica.client.modeles.Utilisateur; |
import com.extjs.gxt.ui.client.Registry; |
import com.extjs.gxt.ui.client.Style.SelectionMode; |
import com.extjs.gxt.ui.client.Style.SortDir; |
import com.extjs.gxt.ui.client.binder.TableBinder; |
import com.extjs.gxt.ui.client.event.ComponentEvent; |
import com.extjs.gxt.ui.client.event.SelectionChangedEvent; |
import com.extjs.gxt.ui.client.event.SelectionChangedListener; |
import com.extjs.gxt.ui.client.event.SelectionListener; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.widget.ContentPanel; |
import com.extjs.gxt.ui.client.widget.Info; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
import com.extjs.gxt.ui.client.widget.table.Table; |
import com.extjs.gxt.ui.client.widget.table.TableColumn; |
import com.extjs.gxt.ui.client.widget.table.TableColumnModel; |
import com.extjs.gxt.ui.client.widget.table.TableItem; |
import com.extjs.gxt.ui.client.widget.toolbar.TextToolItem; |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar; |
import com.google.gwt.core.client.GWT; |
public class CollectionListeVue extends ContentPanel implements Rafraichissable { |
private Mediateur mediateur = null ; |
private Constantes i18nC = null ; |
private Table table = null; |
private ListStore<Collection> store = null; |
private TableBinder<Collection> binder = null; |
private TextToolItem modifier; |
private TextToolItem supprimer; |
private TextToolItem ajouter; |
public CollectionListeVue(Mediateur mediateurCourant) { |
mediateur = mediateurCourant; |
i18nC = mediateur.i18nC; |
Utilisateur utilisateur = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT); |
ToolBar toolBar = new ToolBar(); |
ajouter = new TextToolItem(i18nC.ajouter()); |
ajouter.setIconStyle(ComposantClass.ICONE_AJOUTER); |
ajouter.addSelectionListener(new SelectionListener<ComponentEvent>() { |
public void componentSelected(ComponentEvent ce) { |
mediateur.clicAjouterCollection(); |
} |
}); |
toolBar.add(ajouter); |
modifier = new TextToolItem(i18nC.modifier()); |
modifier.setIconStyle(ComposantClass.ICONE_MODIFIER); |
modifier.addSelectionListener(new SelectionListener<ComponentEvent>() { |
public void componentSelected(ComponentEvent ce) { |
mediateur.clicModifierCollection(binder.getSelection()); |
} |
}); |
toolBar.add(modifier); |
supprimer = new TextToolItem(i18nC.supprimer()); |
supprimer.setIconStyle(ComposantClass.ICONE_SUPPRIMER); |
supprimer.addSelectionListener(new SelectionListener<ComponentEvent>() { |
public void componentSelected(ComponentEvent ce) { |
clicSupprimerCollection(binder.getSelection()); |
} |
}); |
if (!utilisateur.isIdentifie()) { |
supprimer.disable(); |
} |
toolBar.add(supprimer); |
setTopComponent(toolBar); |
List<TableColumn> columns = new ArrayList<TableColumn>(); |
// ATTENTION : les noms des colonnes doivent correspondrent aux noms variables de la classe utilisée dans la liste |
columns.add(new TableColumn("structure", i18nC.structure(), .3f)); |
columns.add(new TableColumn("nom", i18nC.nom(), .7f)); |
TableColumnModel cm = new TableColumnModel(columns); |
table = new Table(cm); |
table.setSelectionMode(SelectionMode.MULTI); |
table.setBorders(false); |
table.setStripeRows(true); |
add(table); |
store = new ListStore<Collection>(); |
store.sort("nom", SortDir.ASC); |
binder = new TableBinder<Collection>(table, store); |
binder.addSelectionChangedListener(new SelectionChangedListener<Structure>() { |
public void selectionChanged(SelectionChangedEvent<Structure> event) { |
Structure m = (Structure) event.getSelectedItem(); |
clicListe(m); |
} |
}); |
setLayout(new FitLayout()); |
} |
private void clicListe(Structure structure) { |
if (store.getCount() > 0) { |
mediateur.clicListeStructure(structure); |
} |
} |
private void clicSupprimerCollection(List<Collection> collectionsASupprimer) { |
if (store.getCount() > 0) { |
mediateur.clicSupprimerCollection(this, collectionsASupprimer); |
} |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof CollectionListe) { |
CollectionListe collections = (CollectionListe) nouvelleDonnees; |
setHeading(i18nC.collectionListeTitre()); |
List<Collection> liste = (List<Collection>) collections.toList(); |
store.removeAll(); |
store.add(liste); |
mediateur.actualiserPanneauCentral(); |
if (store.getCount() > 0) { |
table.getSelectionModel().select(0); |
} |
} else if (nouvelleDonnees instanceof Information) { |
Information info = (Information) nouvelleDonnees; |
if (info.getType().equals("suppression_collection")) { |
// Affichage d'un message d'information |
//GWT.log(info.toString(), null); |
Info.display(i18nC.suppressionCollection(), info.toString().replaceAll("\n", "<br />")); |
// Suppression des structures sélectionnées |
List<TableItem> selectionCollection = table.getSelectedItems(); |
final int taille = selectionCollection.size(); |
for (int i = 0; i < taille; i++) { |
//GWT.log("INDEX :"+table.indexOf(selectionStructure.get(i)), null); |
table.remove(selectionCollection.get(i)); |
} |
// Désactivation des boutons si la liste est vide |
if (table.getItemCount() == 0) { |
supprimer.disable(); |
modifier.disable(); |
} |
} else if (info.getType().equals("maj_utilisateur")) { |
if (((Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT)).isIdentifie()) { |
if (table.getItemCount() != 0) { |
supprimer.enable(); |
} |
} else { |
supprimer.disable(); |
} |
} |
} else { |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null); |
} |
layout(); |
} |
} |
/trunk/src/org/tela_botanica/client/vues/DetailVue.java |
---|
New file |
0,0 → 1,182 |
package org.tela_botanica.client.vues; |
import java.util.ArrayList; |
import java.util.HashMap; |
import java.util.Iterator; |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.i18n.Constantes; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Projet; |
import org.tela_botanica.client.modeles.ProjetListe; |
import org.tela_botanica.client.modeles.Valeur; |
import org.tela_botanica.client.modeles.ValeurListe; |
import com.extjs.gxt.ui.client.Style.Scroll; |
import com.extjs.gxt.ui.client.util.Format; |
import com.extjs.gxt.ui.client.util.Params; |
import com.extjs.gxt.ui.client.widget.HtmlContainer; |
import com.extjs.gxt.ui.client.widget.LayoutContainer; |
import com.extjs.gxt.ui.client.widget.TabItem; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
import com.google.gwt.core.client.GWT; |
public abstract class DetailVue extends LayoutContainer implements Rafraichissable { |
protected Mediateur mediateur = null; |
protected Constantes i18nC = null; |
protected HashMap<String, Valeur> ontologie = null; |
protected ProjetListe projets = null; |
protected String sautLigneTpl = null; |
public DetailVue(Mediateur mediateurCourant) { |
mediateur = mediateurCourant; |
i18nC = mediateur.i18nC; |
initialiserSautLigneTpl(); |
ontologie = new HashMap<String, Valeur>(); |
chargerOntologie(); |
setLayout(new FitLayout()); |
setBorders(false); |
setScrollMode(Scroll.AUTO); |
} |
private void initialiserSautLigneTpl() { |
sautLigneTpl = "<br />\n"; |
} |
private void chargerOntologie() { |
mediateur.selectionnerProjets(this); |
} |
protected String construireTxtProjet(String idProjet) { |
String chaineARetourner = idProjet; |
if (projets != null) { |
Projet projet = projets.get(idProjet); |
String nomDuProjet = projet.getNom(); |
if (!nomDuProjet.equals("")) { |
chaineARetourner = nomDuProjet; |
} |
} |
return chaineARetourner; |
} |
protected String construireTxtTruck(String chaineAAnalyser) { |
ArrayList<String> termes = new ArrayList<String>(); |
if ((chaineAAnalyser != null) && (!chaineAAnalyser.trim().equals(""))) { |
String[] valeurs = chaineAAnalyser.split(";;"); |
int nbreValeurs = valeurs.length; |
if (nbreValeurs > 0) { |
for (int i = 0; i < nbreValeurs; i++) { |
String valeur = valeurs[i]; |
String valeurFormatee = formaterValeurTruck(valeur); |
termes.add(valeurFormatee); |
} |
} |
} |
String chaineARetourner = formaterTableauDeTxt(termes); |
return chaineARetourner; |
} |
private String formaterValeurTruck(String valeur) { |
String chaineARetourner = ""; |
if (valeur.matches("^[^#]+##[^$]+$")) { |
String[] cleValeur = valeur.split("##"); |
chaineARetourner = cleValeur[1]+" "+formaterParenthese(cleValeur[0]); |
} else if (!valeur.equals("")) { |
chaineARetourner = valeur; |
} else { |
GWT.log("Valeur truck posant problèlme :"+valeur, null); |
} |
return chaineARetourner; |
} |
protected String formaterParenthese(String chaineAAfficher) { |
if (!chaineAAfficher.equals("")) { |
chaineAAfficher = "("+chaineAAfficher+")"; |
} |
return chaineAAfficher; |
} |
protected String formaterTableauDeTxt(ArrayList<String> tableauDeTxt) { |
String chaineAAfficher = ""; |
int tailleDuTableau = tableauDeTxt.size(); |
if (tailleDuTableau > 0) { |
int indexAvtDernier = tailleDuTableau - 1; |
for (int i = 0; i < tailleDuTableau; i++) { |
String mot = tableauDeTxt.get(i); |
if (i != indexAvtDernier) { |
chaineAAfficher += mot+", "; |
} else { |
chaineAAfficher += nettoyerPointFinal(mot)+"."; |
} |
} |
} |
return chaineAAfficher; |
} |
protected String nettoyerPointFinal(String mot) { |
mot = mot.replaceAll("[.]$", ""); |
return mot; |
} |
protected void afficherOnglet(String template, Params parametres, TabItem onglet) { |
String cHtml = Format.substitute(template, parametres); |
Params cssParams = new Params(); |
cssParams.set("css_corps", ComposantClass.DETAIL_CORPS_CONTENU); |
cssParams.set("css_label", ComposantClass.LABEL); |
cssParams.set("css_indentation", ComposantClass.INDENTATION); |
cssParams.set("css_fieldset", ComposantClass.FIELDSET); |
cssParams.set("css_clear", ComposantClass.CLEAR); |
cHtml = Format.substitute(cHtml, cssParams); |
HtmlContainer corpsConteneurDuHtml = new HtmlContainer(cHtml); |
onglet.removeAll(); |
onglet.add(corpsConteneurDuHtml); |
} |
protected String formaterAutre(String chaineAAfficher) { |
if (!chaineAAfficher.equals("")) { |
chaineAAfficher = " ["+i18nC.autres()+" : "+chaineAAfficher+"]"; |
} |
return chaineAAfficher; |
} |
protected String formaterOuiNon(String chaineAFormater) { |
String txtARetourner = ""; |
if (chaineAFormater.equals("0")) { |
txtARetourner = i18nC.non(); |
} else if (chaineAFormater.equals("1")) { |
txtARetourner = i18nC.oui(); |
} |
return txtARetourner; |
} |
protected String formaterSautDeLigne(String chaineAFormater) { |
String txtARetourner = chaineAFormater.replaceAll("\n", sautLigneTpl); |
return txtARetourner; |
} |
protected void ajouterListeValeursAOntologie(ValeurListe ontologieReceptionnee) { |
Iterator<String> it = ontologieReceptionnee.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
Valeur valeur = ontologieReceptionnee.get(cle); |
if (valeur != null) { |
ontologie.put(cle, valeur); |
} |
} |
} |
} |