Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 1205 → Rev 1206

/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/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
--- chapeaux/ChapeauVue.ui.xml (revision 0)
+++ chapeaux/ChapeauVue.ui.xml (revision 1206)
@@ -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/EnteteVue.ui.xml
New file
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>