Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 1205 → Rev 1206

/trunk/src/org/tela_botanica/del/client/composants/formulaires/identification/identification.css
1,13 → 1,13
.zoneIdentification {
background: url("./img/carre_orange.png") no-repeat scroll 0 0 transparent;
height:24px;
margin-top:5px;
font-size:11px;
margin-left:80px;
width:280px;
padding:15px;
padding-top:30px;
padding:30px 15px 22px 15px;
height:70px;
background: none repeat scroll 0 0 white;
border: 1px solid #99C242;
border-radius: 0 10px 10px 10px;
text-align: left;
text-decoration: none;
width: 350px;
}
 
.connecter {
37,16 → 37,7
}
 
.zoneFormulaire {
background: none repeat scroll 0 0 white;
border: 1px solid #99C242;
border-radius: 0 10px 10px 10px;
position:absolute;
top:68px;
z-index:0;
text-align: left;
text-decoration: none;
width: 350px;
padding-bottom:22px;
}
 
.login {
/trunk/src/org/tela_botanica/del/client/composants/partageurl/partagerUrl.css
1,10 → 1,11
.zonePartageUrl {
display:inline-block;
}
.zonePartage {
background: none repeat scroll 0 0 white;
border: 2px solid #8EB533;
left: 930px;
margin-top: 0;
padding: 10px 50px 10px 10px;
position: absolute;
position:absolute;
}
 
.titre {
17,13 → 18,10
border-radius: 10px 10px 10px 10px;
color: white;
cursor: pointer;
display: inline-block;
font-size: 14px;
margin-left: 705px;
margin-top: -35px;
padding: 5px 10px;
position: absolute;
padding: 4px 10px;
text-decoration: none;
width:130px;
}
 
.url {
/trunk/src/org/tela_botanica/del/client/i18n/Vocabulary.properties
5,7 → 5,8
# monLabelPerso = Ma définition #
###########################################################################################
 
# COMMUN
# COMMUN
lienAppliSaisie = http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer
oui = oui
non = non
accepter = Valider
53,7 → 54,7
voteModifie = Vote modifié
ajouterObservation = Proposez une image à déterminer
ajouterImage = Ajouter une image
legendeAjouterObservation = Soumettez au réseau une image à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet "Adeterminer"
legendeAjouterObservation = Soumettez au réseau une image à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet "aDeterminer"
voirCommentaires = Voir tous les commentaires
titrePlateformeDetermination = Synthèse de l'observation et des images associées
imageNumero = Image n°
/trunk/src/org/tela_botanica/del/client/i18n/Vocabulary.java
574,11 → 574,11
String labelProtocole();
 
/**
* Translated "Soumettez au réseau une image à déterminer".
* Translated "Soumettez au réseau une image à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet \"Adeterminer\"".
*
* @return translated "Soumettez au réseau une image à déterminer"
* @return translated "Soumettez au réseau une image à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet \"Adeterminer\""
*/
@DefaultStringValue("Soumettez au réseau une image à déterminer")
@DefaultStringValue("Soumettez au réseau une image à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet \"Adeterminer\"")
@Key("legendeAjouterObservation")
String legendeAjouterObservation();
 
601,15 → 601,24
String lienAideIdentiplante();
 
/**
* Translated "http://www.tela-botanica.org/page:liste_projets?id_projet=95&act=wikini ".
* Translated "http://www.tela-botanica.org/page:liste_projets?id_projet=112&act=wikini ".
*
* @return translated "http://www.tela-botanica.org/page:liste_projets?id_projet=95&act=wikini "
* @return translated "http://www.tela-botanica.org/page:liste_projets?id_projet=112&act=wikini "
*/
@DefaultStringValue("http://www.tela-botanica.org/page:liste_projets?id_projet=95&act=wikini ")
@DefaultStringValue("http://www.tela-botanica.org/page:liste_projets?id_projet=112&act=wikini ")
@Key("lienAidePictoflora")
String lienAidePictoflora();
 
/**
* Translated "http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer ".
*
* @return translated "http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer "
*/
@DefaultStringValue("http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer ")
@Key("lienAppliSaisie")
String lienAppliSaisie();
 
/**
* Translated "Lieu-dit".
*
* @return translated "Lieu-dit"
/trunk/src/org/tela_botanica/del/client/vues/identiplante/moteur/MoteurIdentiplanteVueBinderImplGenMessages.properties
File deleted
/trunk/src/org/tela_botanica/del/client/vues/identiplante/moteur/MoteurIdentiplanteVue.java
26,10 → 26,8
private static Binder binder = GWT.create(Binder.class);
 
@UiField
Panel zoneRecherche, zoneResultats, zonePartageUrl;
Panel zoneRecherche, zoneResultats;
 
@UiField
Label ajouterObservation;
 
@UiField
CheckBox radioTout, radioDeterminer, radioDiscussion;
38,10 → 36,6
return zoneRecherche;
}
public Panel getZonePartageUrl() {
return zonePartageUrl;
}
// Constructeur de la vue
public MoteurIdentiplanteVue() {
initWidget(binder.createAndBindUi(this));
51,11 → 45,6
return zoneResultats;
}
@Override
public HasClickHandlers getLienAjoutObservation() {
return ajouterObservation;
}
public String getValeurRadioStatut() {
String valeurStatut = "";
if (radioDeterminer.getValue()) {
/trunk/src/org/tela_botanica/del/client/vues/identiplante/moteur/MoteurIdentiplante.css
8,10 → 8,6
margin-top:10px;
margin-bottom:10px;
}
.chapeau {
min-height:70px;
}
 
.zoneStatut {
margin-top:;
}
/trunk/src/org/tela_botanica/del/client/vues/identiplante/moteur/MoteurIdentiplanteVue.ui.xml
9,14 → 9,6
<ui:style src="MoteurIdentiplante.css" />
<g:HTMLPanel styleName="limiteMax">
<g:HTMLPanel>
<g:HTML styleName="{style.chapeau}"><ui:msg key="chapeauObservation">Cet espace vous permet d'échanger sur la détermination d'espèces.
Vous ne parvenez pas à déterminer une plante ? Soumettez-la aux membres du réseau.
Vous avez relevé des erreurs dans les images soumises par le réseau ? Postez un commentaire ou proposez une nouvelle détermination.</ui:msg></g:HTML>
<g:Label ui:field="ajouterObservation" text="{constants.ajouterObservation}" title="{constants.legendeAjouterObservation}" styleName="acceder-outil {style.lienProposerObservation}"/>
<g:Anchor target="_blank" href="{constants.lienAideIdentiplante}" ui:field="aide" text="{constants.accesAide}" title="{constants.legendeAjouterObservation}" styleName="acceder-aide {style.lienAide}"/>
<g:HTMLPanel ui:field="zonePartageUrl"></g:HTMLPanel>
</g:HTMLPanel>
<g:HTMLPanel styleName="limiteMax importance1">
<g:Label text="{constants.rechercherObservation}" styleName="titre {style.titreRechercheObs}" />
/trunk/src/org/tela_botanica/del/client/vues/identiplante/moteur/MoteurIdentiplantePresenteur.java
27,8 → 27,6
 
public HasWidgets getZoneResultats();
 
HasClickHandlers getLienAjoutObservation();
public String getValeurRadioStatut();
public HasClickHandlers getRadioADeterminer();
36,8 → 34,6
public HasClickHandlers getRadioEnDiscussion();
public void decocherRadioTout();
public Panel getZonePartageUrl();
 
}
 
51,8 → 47,6
 
composite.add(vue.asWidget());
ajouterMoteurRechercheAvancee();
PartageUrlPresenteur presenteurPartageUrl = new PartageUrlPresenteur(new PartageUrlVue());
presenteurPartageUrl.go(vue.getZonePartageUrl());
gererEvenements();
}
75,15 → 69,7
}
 
protected void gererEvenements() {
vue.getLienAjoutObservation().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Config config = new Config();
Window.open(config.getUrl("applisaisie"), "Saisie d'une nouvelle observation", null);
}
});
vue.getRadioADeterminer().addClickHandler(new ClickHandler() {
@Override
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraVueMyUiBinderImplGenMessages.properties
File deleted
\ No newline at end of file
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraVue.java
30,12 → 30,9
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
 
@UiField
Panel panneauResultats, zoneRecherche, zonePartageUrl;
Panel panneauResultats, zoneRecherche;
@UiField
Label ajouterObservation;
 
@UiField
ListBox listeProtocoles;
// Constructeur
47,10 → 44,6
return panneauChargement;
}
 
public Panel getZonePartageUrl() {
return zonePartageUrl;
}
// Cette méthode est public car appelé dans GestionnaireHistorique
public Panel getZoneResultats() {
return panneauResultats;
63,11 → 56,6
public HasWidgets getZoneRecherche() {
return zoneRecherche;
}
@Override
public HasClickHandlers getLienAjoutObservation() {
return ajouterObservation;
}
 
@Override
public void ajouterVue(HasWidgets composite) {
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/rechercheImage.css
3,8 → 3,8
}
 
.protocoles {
margin-top:-30px;
margin-left:350px;
margin-top:-61px;
margin-left:415px;
position:absolute;
}
 
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraVue.ui.xml
10,14 → 10,10
<g:HTMLPanel>
<g:HTMLPanel styleName="limiteMax">
<g:HTML styleName="{style.chapeau}"><ui:msg key="chapeauImages">Cette galerie vous permet de rechercher les illustrations des membres du réseau issues du Carnet en ligne... et de voter pour la qualité des images selon un protocole défini.</ui:msg></g:HTML>
<g:Label ui:field="ajouterObservation" text="{constants.ajouterImage}" title="{constants.legendeAjouterObservation}" styleName="acceder-outil {style.lienProposerImage}"/>
<g:Anchor target="_blank" href="{constants.lienAidePictoflora}" ui:field="aide" text="{constants.accesAide}" title="{constants.legendeAjouterObservation}" styleName="acceder-aide {style.lienAide}"/>
<g:HorizontalPanel styleName="gauche {style.protocoles}">
<g:Label>Choisir un protocole : </g:Label>
<g:ListBox ui:field="listeProtocoles" />
</g:HorizontalPanel>
<g:HTMLPanel ui:field="zonePartageUrl"></g:HTMLPanel>
<g:HTMLPanel styleName="importance1">
<g:Label text="{constants.rechercherImage}" styleName="titre {style.titreRecherche}" />
<g:Label text="{constants.entrerMotClef}" styleName="gris {style.entrerMotClef}" />
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraPresenteur.java
42,11 → 42,7
public HasWidgets getZoneRecherche();
 
public void ajouterVue(HasWidgets composite);
public Panel getZonePartageUrl();
 
HasClickHandlers getLienAjoutObservation();
public void setListeProtocoles(ListBox listeProtocoles);
public HasChangeHandlers getListeProtocoles();
76,8 → 72,6
this.vue = vue;
this.protocoleService = protocoleService;
chargerProtocoles();
PartageUrlPresenteur presenteurPartageUrl = new PartageUrlPresenteur(new PartageUrlVue());
presenteurPartageUrl.go(vue.getZonePartageUrl());
// TODO: le code ci dessous sert à ne pas recharger les protocoles
// à chaque fois, voir si on peut le factoriser quelque part
112,13 → 106,6
}
});
vue.getLienAjoutObservation().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Config config = new Config();
Window.open(config.getUrl("applisaisie"), "Saisie d'une nouvelle observation", null);
}
});
}
private void chargerProtocoles() {
/trunk/src/org/tela_botanica/del/client/vues/entete/chapeaux/ChapeauVue.ui.xml
New file
0,0 → 1,18
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' xmlns:g='urn:import:com.google.gwt.user.client.ui'
ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
ui:generateLocales="default">
<ui:with field='res'
type='org.tela_botanica.del.client.resources.Ressources' />
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
<ui:style src="chapeau.css" />
<g:HTMLPanel>
<g:HTMLPanel ui:field="chapeauIdentiplante"><ui:msg key="chapeauObservation">Cet espace vous permet d'échanger sur la détermination d'espèces.
Vous ne parvenez pas à déterminer une plante ? Soumettez-la aux membres du réseau.
Vous avez relevé des erreurs dans les images soumises par le réseau ? Postez un commentaire ou proposez une nouvelle détermination.</ui:msg></g:HTMLPanel>
<g:HTMLPanel ui:field="chapeauPictoflora"><ui:msg key="chapeauImages">Cette galerie vous permet de rechercher les illustrations des membres du réseau issues du
Carnet en ligne... et de voter pour la qualité des images selon un protocole défini?
Postez un commentaire ou proposez une nouvelle détermination.</ui:msg></g:HTMLPanel>
</g:HTMLPanel>
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/vues/entete/chapeaux/ChapeauPresenteur.java
New file
0,0 → 1,30
package org.tela_botanica.del.client.vues.entete.chapeaux;
 
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
 
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
public class ChapeauPresenteur extends Presenteur {
public interface Vue extends IsWidget {
}
private Vue vue;
public ChapeauPresenteur(Vue vue) {
this.vue = vue;
}
 
@Override
public void go(HasWidgets composite) {
composite.add(vue.asWidget());
}
 
@Override
protected void gererEvenements() {
// TODO Auto-generated method stub
}
}
/trunk/src/org/tela_botanica/del/client/vues/entete/chapeaux/ChapeauVue.java
New file
0,0 → 1,41
package org.tela_botanica.del.client.vues.entete.chapeaux;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
 
public class ChapeauVue extends Composite implements ChapeauPresenteur.Vue {
 
// Gestion d'UiBinder
interface Binder extends UiBinder<Widget, ChapeauVue> {
}
private static Binder binder = GWT.create(Binder.class);
@UiField
Panel chapeauIdentiplante, chapeauPictoflora;
public ChapeauVue() {
initWidget(binder.createAndBindUi(this));
gererAffichageEnFonctionDeLaNavigation();
}
public void gererAffichageEnFonctionDeLaNavigation() {
CacheClient cache = CacheClient.getInstance();
String pageCourante = cache.getPageCourante();
if (pageCourante.equals(ConstantesNavigation.PICTOFLORA) || pageCourante.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)
|| pageCourante.equals(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
chapeauIdentiplante.setVisible(false);
chapeauPictoflora.setVisible(true);
} else {
chapeauIdentiplante.setVisible(true);
chapeauPictoflora.setVisible(false);
}
}
}
/trunk/src/org/tela_botanica/del/client/vues/entete/chapeaux/ChapeauVueBinderImplGenMessages.properties
New file
0,0 → 1,11
# Generated from org.tela_botanica.del.client.vues.rechercheobservations.moteur.MoteurRechercheObservationsVueBinderImplGenMessages
# for locale fr
 
chapeauObservation=<ul class="traitTela">\
<li>Cet espace vous permet d''échanger sur la détermination d''espèces.</li> \
<li>Vous ne parvenez pas à déterminer une plante ? <br />Soumettez-la aux membres du réseau.</li> \
<li>Vous avez relevé des erreurs dans les images soumises par le réseau ? <br />Postez un commentaire ou proposez une nouvelle détermination.</li> \
</ul>
 
chapeauImages=<ul class="traitTela"><li>Cette galerie vous permet de rechercher les illustrations des membres du réseau issues du <br /> \
Carnet en ligne... et de voter pour la qualité des images selon un protocole défini.</li></ul>
/trunk/src/org/tela_botanica/del/client/vues/entete/chapeaux/chapeau.css
--- trunk/src/org/tela_botanica/del/client/vues/entete/EnteteVue.ui.xml (revision 0)
+++ trunk/src/org/tela_botanica/del/client/vues/entete/EnteteVue.ui.xml (revision 1206)
@@ -0,0 +1,20 @@
+<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' xmlns:g='urn:import:com.google.gwt.user.client.ui'
+ ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
+ ui:generateLocales="default">
+ <ui:with field='res'
+ type='org.tela_botanica.del.client.resources.Ressources' />
+ <ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
+
+ <ui:style src="entete.css" />
+ <g:HTMLPanel styleName="limiteMax">
+ <g:HTMLPanel ui:field="zoneTitre" styleName="{style.zoneTitre}"></g:HTMLPanel>
+ <g:HTMLPanel ui:field="zoneLogos" styleName="{style.zoneLogos}">
+ <a class="logo_tela" href="http://www.tela-botanica.org" target="_blank"></a>
+ <a class="logo_pn" href="http://www.plantnet-project.org/papyrus.php?langue=fr" target="_blank"></a>
+ </g:HTMLPanel>
+ <g:HTMLPanel ui:field="zoneChapeau" styleName="{style.zoneChapeau}"></g:HTMLPanel>
+ <g:HTMLPanel ui:field="zoneIdentification" styleName="{style.zoneIdentification}"></g:HTMLPanel>
+ <g:HTMLPanel ui:field="zoneLiens" styleName="{style.zoneLiens}"></g:HTMLPanel>
+
+ </g:HTMLPanel>
+</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/vues/entete/EntetePresenteur.java
New file
0,0 → 1,63
package org.tela_botanica.del.client.vues.entete;
 
import org.tela_botanica.del.client.composants.formulaires.identification.FormulaireIdentificationPresenteur;
import org.tela_botanica.del.client.composants.formulaires.identification.FormulaireIdentificationVue;
import org.tela_botanica.del.client.composants.partageurl.PartageUrlPresenteur;
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue;
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret;
import org.tela_botanica.del.client.vues.entete.chapeaux.ChapeauPresenteur;
import org.tela_botanica.del.client.vues.entete.chapeaux.ChapeauVue;
import org.tela_botanica.del.client.vues.entete.liens.LiensPresenteur;
import org.tela_botanica.del.client.vues.entete.liens.LiensVue;
 
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.Widget;
 
/**
* Classe pour le header de l'application affichant le formulaire de connexion, le titre, les logos
* */
public class EntetePresenteur extends Presenteur {
 
/**
* La vue du header
* */
public interface Vue extends IsWidget {
public HasWidgets getZoneIdentification();
public HasWidgets getZoneLiens();
public HasWidgets getZoneChapeau();
}
private Vue vue;
 
public EntetePresenteur(Vue vue) {
this.vue = vue;
}
 
@Override
public void go(HasWidgets composite) {
composite.add(vue.asWidget());
//Ajout de la zone identification
FormulaireIdentificationPresenteur identification = new FormulaireIdentificationPresenteur(new FormulaireIdentificationVue(), new UtilisateurServiceConcret());
identification.go(vue.getZoneIdentification());
ChapeauPresenteur chapeau = new ChapeauPresenteur(new ChapeauVue());
chapeau.go(vue.getZoneChapeau());
LiensPresenteur liens = new LiensPresenteur(new LiensVue());
liens.go(vue.getZoneLiens());
}
 
@Override
protected void gererEvenements() {
// TODO Auto-generated method stub
}
public void ajouterLien(Widget lien) {
this.vue.getZoneLiens().add(lien);
}
}
/trunk/src/org/tela_botanica/del/client/vues/entete/EnteteVue.java
New file
0,0 → 1,56
package org.tela_botanica.del.client.vues.entete;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
 
import org.tela_botanica.del.client.vues.entete.EntetePresenteur;
 
public class EnteteVue extends Composite implements EntetePresenteur.Vue {
 
// Gestion d'UiBinder
interface Binder extends UiBinder<Widget, EnteteVue> {
}
 
private static Binder binder = GWT.create(Binder.class);
@UiField
Panel zoneTitre, zoneIdentification, zoneLiens, zoneChapeau;
public EnteteVue(String titre) {
initWidget(binder.createAndBindUi(this));
zoneTitre.clear();
HTML html = new HTML("<h1>" + titre + "</h1>");
zoneTitre.add(html);
}
 
@Override
public HasWidgets getZoneIdentification() {
return zoneIdentification;
}
 
@Override
public HasWidgets getZoneLiens() {
return zoneLiens;
}
 
@Override
public HasWidgets getZoneChapeau() {
return zoneChapeau;
}
}
 
 
 
 
/trunk/src/org/tela_botanica/del/client/vues/entete/liens/LiensPresenteur.java
New file
0,0 → 1,76
package org.tela_botanica.del.client.vues.entete.liens;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.composants.partageurl.PartageUrlPresenteur;
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue;
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
import org.tela_botanica.del.client.config.Config;
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat;
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret;
import org.tela_botanica.del.client.services.rest.async.ProtocolesCallback;
 
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
public class LiensPresenteur extends Presenteur {
 
public interface Vue extends IsWidget {
public HasWidgets getZonePartageUrl();
}
private Vue vue;
public LiensPresenteur(Vue vue) {
this.vue = vue;
}
public void go(HasWidgets composite) {
composite.add(vue.asWidget());
 
PartageUrlPresenteur partageUrl = new PartageUrlPresenteur(new PartageUrlVue());
partageUrl.go(vue.getZonePartageUrl());
gererProtocoles();
}
protected void gererProtocoles() {
//FIXME : ne doit pas etre concret ici ?
ProtocoleServiceConcret protocoleService = new ProtocoleServiceConcret();
if (CacheClient.getInstance().getProtocoleCourant() == null) {
if (CacheClient.getInstance().getListeProtocoles() == null) {
protocoleService.getProtocoles(new ProtocolesCallback() {
 
@Override
public void surRetour(ProtocoleServiceResultat protocolesRecus) {
CacheClient.getInstance().setListeProtocoles(protocolesRecus.getProtocoles());
if (protocolesRecus.getProtocoles().size() > 0) {
CacheClient.getInstance().setProtocoleCourant(protocolesRecus.getProtocoles().get(0));
} else {
// TODO afficher message indiquant que la liste des
// protocoles de votes n'est pas fourni
}
}
});
} else {
CacheClient.getInstance().setProtocoleCourant(CacheClient.getInstance().getListeProtocoles().get(0));
}
}
}
 
@Override
protected void gererEvenements() {
// TODO Auto-generated method stub
/*
* vue.getLienAjoutObservation().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Config config = new Config();
Window.open(config.getUrl("applisaisie"), "Saisie d'une nouvelle observation", null);
}
});
*/
}
}
/trunk/src/org/tela_botanica/del/client/vues/entete/liens/LiensVue.java
New file
0,0 → 1,56
package org.tela_botanica.del.client.vues.entete.liens;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Anchor;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
 
public class LiensVue extends Composite implements LiensPresenteur.Vue {
// Gestion d'UiBinder
interface Binder extends UiBinder<Widget, LiensVue> {}
 
private static Binder binder = GWT.create(Binder.class);
@UiField Panel zonePartageUrl;
@UiField Anchor ajouterObservation, aidePictoflora, aide, ajouterImage, participerProjet;
public LiensVue() {
initWidget(binder.createAndBindUi(this));
gererAffichageEnFonctionDeLaNavigation();
}
public HasWidgets getZonePartageUrl() {
return zonePartageUrl;
}
public void gererAffichageEnFonctionDeLaNavigation() {
CacheClient cache = CacheClient.getInstance();
String pageCourante = cache.getPageCourante();
if (pageCourante.equals(ConstantesNavigation.PICTOFLORA) || pageCourante.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)
|| pageCourante.equals(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
//SI PICTO
ajouterObservation.setVisible(false);
aide.setVisible(false);
} else {
aidePictoflora.setVisible(false);
ajouterImage.setVisible(false);
participerProjet.setVisible(false);
}
}
}
 
 
 
 
/trunk/src/org/tela_botanica/del/client/vues/entete/liens/liens.css
New file
0,0 → 1,10
.zonePartageUrl {
display:inline-block;
width:150px;
float:right;
}
 
.aide {
float:right;
margin-left:5px;
}
/trunk/src/org/tela_botanica/del/client/vues/entete/liens/LiensVue.ui.xml
New file
0,0 → 1,27
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' xmlns:g='urn:import:com.google.gwt.user.client.ui'
ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
ui:generateLocales="default">
<ui:with field='res'
type='org.tela_botanica.del.client.resources.Ressources' />
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
<ui:style src="liens.css" />
<g:HTMLPanel>
<!-- Liens identiplante -->
<g:HTMLPanel styleName="limiteMax">
<!-- picto -->
<g:Anchor ui:field="ajouterImage" text="Ajouter une image" title="{constants.legendeAjouterObservation}" styleName="acceder-outil" href="{constants.lienAppliSaisie}" target="_blank"/>
<g:Anchor ui:field="participerProjet" text="Participer au projet" title="{constants.legendeAjouterObservation}" styleName="acceder-outil" href="{constants.lienAppliSaisie}" target="_blank"/>
<g:Anchor target="_blank" href="{constants.lienAidePictoflora}" ui:field="aidePictoflora" text="{constants.accesAide}" title="{constants.legendeAjouterObservation}" styleName="acceder-aide {style.aide}"/>
<!-- identiplante -->
<g:Anchor ui:field="ajouterObservation" text="{constants.ajouterObservation}" title="{constants.legendeAjouterObservation}" styleName="acceder-outil" href="{constants.lienAppliSaisie}" target="_blank"/>
<g:Anchor target="_blank" href="{constants.lienAideIdentiplante}" ui:field="aide" text="{constants.accesAide}" title="{constants.legendeAjouterObservation}" styleName="acceder-aide {style.aide}"/>
<!-- Commun -->
<g:HTMLPanel ui:field="zonePartageUrl" styleName="{style.zonePartageUrl}"></g:HTMLPanel>
</g:HTMLPanel>
</g:HTMLPanel>
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/vues/entete/entete.css
New file
0,0 → 1,36
.zoneTitre {
float: left;
height: 50px;
width: 50%;
margin:10px 0;
font-size:20px
}
 
.zoneLogos {
float: right;
height: 50px;
width: 50%;
text-align:center;
margin:10px 0;
}
 
.zoneIdentification {
float: right;
height: 129px;
width: 45%;
background: url("./img/carre_orange.png") no-repeat scroll -0px -8px transparent;
text-align:right;
padding-left:27px;
}
 
.zoneChapeau {
float: left;
height: 130px;
width: 52%;
}
 
.zoneLiens {
clear: both;
height: 40px;
padding:10px 65px;
}
/trunk/src/org/tela_botanica/del/client/gestionhistorique/GestionnaireHistorique.java
9,6 → 9,8
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret;
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEflorePresenteur;
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEfloreVue;
import org.tela_botanica.del.client.vues.entete.EntetePresenteur;
import org.tela_botanica.del.client.vues.entete.EnteteVue;
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplantePresenteur;
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplanteVue;
import org.tela_botanica.del.client.vues.identiplante.plateformedetermination.IdentiplanteDeterminationPresenteur;
42,44 → 44,45
//1. définition des variables
String eventValue = event.getValue();
Panel contenu = RootPanel.get("contenu");
Panel zoneIdentification = RootPanel.get("zoneIdentification");
Panel zoneEntete = RootPanel.get("zoneEntete");
CacheClient cache = CacheClient.getInstance();
cache.setPageCourante(eventValue);
//2. nettoyer le contenu
contenu.clear();
zoneIdentification.clear();
zoneEntete.clear();
FormulaireIdentificationPresenteur presenteurIdentification = new FormulaireIdentificationPresenteur(new FormulaireIdentificationVue(), new UtilisateurServiceConcret());
presenteurIdentification.go(zoneIdentification);
//3. Gérer le titre
Panel titre = RootPanel.get("zoneTitre");
String titre = "IdentiPlante";
if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
afficherTitrePictoFlora(titre);
titre = "PictoFlora";
}
if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_OBSERVATIONS) || eventValue.equals("")) {
afficherTitreIdp(titre);
}
if (eventValue.equals(ConstantesNavigation.HOME)) {
String home = cache.getHome();
if (home.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
afficherTitrePictoFlora(titre);
} else {
afficherTitreIdp(titre);
}
titre = "PictoFlora";
}
}
if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
titre = "PictoFlora";
}
//3. gérer l'entete
EntetePresenteur entetePresenteur = new EntetePresenteur(new EnteteVue(titre));
entetePresenteur.go(zoneEntete);
//Actions en fonction de la valeur de l'évènement
if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
cache.setHome(ConstantesNavigation.PAGE_RECHERCHE_IMAGES);
lancerMoteurRechercheImages(contenu);
} else if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION)) {
afficherTitreIdp(titre);
IdentiplanteDeterminationPresenteur presenteur = new IdentiplanteDeterminationPresenteur(new IdentiplanteDeterminationVue(), new ObservationServiceConcret());
presenteur.go(contenu);
} else if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
afficherTitrePictoFlora(titre);
PictofloraDeterminationPresenteur presenteur = new PictofloraDeterminationPresenteur(new PictofloraDeterminationVue(), new ObservationServiceConcret(), new ProtocoleServiceConcret());
presenteur.go(contenu);
} else if (eventValue.equals(ConstantesNavigation.PAGE_COMPARAISON_EFLORE)) {
/trunk/war/del.html
23,14 → 23,11
Veuillez l'activer pour utiliser cette application.
</p>
</noscript>
<nav role="navigation" id="navigation"></nav>
<div id="zoneEntete">
</div>
<div id="main">
<div id="zoneLogos">
<a class="logo_tela" href="http://www.tela-botanica.org" target="_blank"></a>
<a class="logo_pn" href="http://www.plantnet-project.org/papyrus.php?langue=fr" target="_blank"></a>
</div>
<div id="zoneIdentification"></div>
<div id="zoneTitre"></div>
<div id="zoneLiens"></div>
</div>
/trunk/war/del.css
1,4 → 1,4
/* La ligne suivante ne sert qu'à régler le bug d'affichage des listes déroulantes */
/* La ligne suivante ne sert qu'à régler le bug d'affichage des listes déroulantes */
select {
background: #FFF;
}
53,27 → 53,6
width:45%;
margin-top:13px;
}
#zoneIdentification {
background: url("./img/carre_orange.png") no-repeat scroll 83px 10px transparent;
float: right;
padding-bottom: 35px;
padding-left: 26px;
margin-top:50px;
margin-right:80px;
width: 40%;
}
#zoneLogos {
position: absolute;
width:400px;
height:50px;
margin-left:620px;
padding-top:5px;
}
 
#zoneLogos span {
margin-right:12px;
}
 
#zoneLiens {
clear:both;
}
687,8 → 666,16
font-family:arial;
font-size:11px;
font-weight:bold;
margin-top:30px;
}
 
#zoneFooter a {
margin-right:30px;
}
 
#zoneEntete {
width:1000px;
margin:0 auto;
min-height:230px;
}