/trunk/src/org/tela_botanica/del/client/vues/pictoflora/resultats/ResultatPictofloraVue.java |
---|
53,8 → 53,7 |
@UiField |
Label labelVote, labelDate, labelTag; |
@UiField |
ListBox listeProtocoles; |
// Constructeur |
public ResultatPictofloraVue() { |
initWidget(uiBinder.createAndBindUi(this)); |
150,33 → 149,8 |
return triParDateDescendant; |
} |
public void setListeProtocoles(ListBox listeProtocoles) { |
this.listeProtocoles = listeProtocoles; |
} |
public HasChangeHandlers getListeProtocoles() { |
return listeProtocoles; |
} |
public void ajouterProtocole(String NomProtocole, String idProtocole) { |
listeProtocoles.addItem(NomProtocole, idProtocole); |
} |
public void selectionnerProtocole(int index) { |
listeProtocoles.setSelectedIndex(index); |
} |
@Override |
public String getNomProtocoleSelectionne() { |
return listeProtocoles.getItemText((listeProtocoles.getSelectedIndex())); |
} |
@Override |
public int getIdProtocoleSelectionne() { |
return Integer.parseInt(listeProtocoles.getValue((listeProtocoles.getSelectedIndex()))); |
} |
@Override |
public Label getLabelVote() { |
return labelVote; |
} |
262,19 → 236,4 |
triParNbTagsDescendant.setVisible(false); |
} |
@Override |
public void ajouterProtocoles(List<Protocole> protocoles) { |
SelectElement selectElement = SelectElement.as(listeProtocoles.getElement()); |
NodeList<OptionElement> options = selectElement.getOptions(); |
for (int i = 0; i < protocoles.size(); i++) { |
listeProtocoles.addItem(protocoles.get(i).getNom(), protocoles.get(i).getId()+""); |
options.getItem(i).setTitle(protocoles.get(i).getDescription()); |
} |
} |
@Override |
public void mettreAJourDescriptionProtocoleCourant( |
Protocole protocoleCourant) { |
listeProtocoles.setTitle(protocoleCourant.getDescription()); |
} |
} |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/resultats/ResultatPictofloraVue.ui.xml |
---|
8,11 → 8,10 |
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" /> |
<g:HTMLPanel styleName="{style.contenuResultat}"> |
<g:HTMLPanel styleName="{style.barreNavigation} limiteMax limiteMin"> |
<g:VerticalPanel ui:field="panneauPaginationHaut" styleName="gauche {style.paginationHaut}" /> |
<g:HTMLPanel styleName="gauche {style.protocoles}"> |
<g:ListBox ui:field="listeProtocoles" /> |
</g:HTMLPanel> |
<g:HTMLPanel ui:field="zoneTri" styleName="gauche {style.zoneTri} petit"> |
<g:Label text="{constants.tri}" styleName="gauche {style.labeltri}"/> |
<g:HTMLPanel ui:field="triParNbVotes" styleName="gauche"> |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/resultats/ResultatPictofloraPresenteur.java |
---|
21,6 → 21,9 |
import org.tela_botanica.del.client.vues.pictoflora.resultats.images.ImagePresenteur; |
import org.tela_botanica.del.client.vues.pictoflora.resultats.images.ImageVue; |
import com.google.gwt.dom.client.NodeList; |
import com.google.gwt.dom.client.OptionElement; |
import com.google.gwt.dom.client.SelectElement; |
import com.google.gwt.event.dom.client.ChangeEvent; |
import com.google.gwt.event.dom.client.ChangeHandler; |
import com.google.gwt.event.dom.client.ClickEvent; |
35,6 → 38,8 |
public class ResultatPictofloraPresenteur { |
public interface Vue extends IsWidget { |
public void startChargement(); |
public void nettoyer(); |
67,18 → 72,6 |
public HTMLPanel getImageTable(); |
public String getNomProtocoleSelectionne(); |
public int getIdProtocoleSelectionne(); |
public void setListeProtocoles(ListBox listeProtocoles); |
public HasChangeHandlers getListeProtocoles(); |
public void ajouterProtocoles(List<Protocole> protocoles); |
public void selectionnerProtocole(int index); |
public HasClickHandlers getLabelVote(); |
public void masquerVoteAscendant(); |
109,14 → 102,11 |
public void afficherTagAscendant(); |
public void mettreAJourDescriptionProtocoleCourant( |
Protocole protocoleCourant); |
} |
private Vue vue; |
private ImageService imageService; |
private final ProtocoleService protocoleService; |
private List<Protocole> protocoles; |
private ModeTri triCourantVote = ModeTri.TRI_ASCENDANT; |
private ModeTri triCourantDate = ModeTri.TRI_DESCENDANT; |
private ModeTri triCourantTag = ModeTri.TRI_DESCENDANT; |
132,7 → 122,6 |
vue.startChargement(); |
rechercherImagesEtCreerWidgetPagination(); |
gererEvenements(); |
chargerProtocoles(); |
vue.masquerVoteDescendant(); |
vue.masquerVoteAscendant(); |
// vue.masquerDateDescendant(); |
142,13 → 131,6 |
} |
public void gererEvenements() { |
vue.getListeProtocoles().addChangeHandler(new ChangeHandler() { |
@Override |
public void onChange(ChangeEvent event) { |
surChangementProtocole(); |
} |
}); |
ClickHandler surClicTriVote = new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
257,48 → 239,6 |
chargerEtAfficherImagesPageEnCours(); |
} |
public void surChangementProtocole() { |
Protocole protocoleCourant = null; |
for (Protocole protocole : protocoles) { |
if (protocole.getId() == vue.getIdProtocoleSelectionne()) { |
protocoleCourant = protocole; |
} |
} |
vue.mettreAJourDescriptionProtocoleCourant(protocoleCourant); |
CacheClient.getInstance().setProtocoleCourant(protocoleCourant); |
EvenementChangementProtocole evenement = new EvenementChangementProtocole(protocoleCourant); |
BusEvenementiel.getInstance().fireEvent(evenement); |
} |
private void chargerProtocoles() { |
// test pour ne pas charger les protocoles déjà chargés |
// TODO: faire un systeme de cache gérés par les web service eux même |
if (CacheClient.getInstance().getListeProtocoles() == null) { |
protocoleService.getProtocoles(new ProtocolesCallback() { |
@Override |
public void surRetour(ProtocoleServiceResultat protocolesRecus) { |
protocoles = protocolesRecus.getProtocoles(); |
remplirListeProtocole(protocoles); |
} |
}); |
} else { |
protocoles = CacheClient.getInstance().getListeProtocoles(); |
remplirListeProtocole(CacheClient.getInstance().getListeProtocoles()); |
} |
} |
private void remplirListeProtocole(List<Protocole> protocoles) { |
vue.ajouterProtocoles(protocoles); |
if (CacheClient.getInstance().getProtocoleCourant() == null) { |
vue.selectionnerProtocole(0); |
vue.mettreAJourDescriptionProtocoleCourant(protocoles.get(0)); |
} else { |
vue.mettreAJourDescriptionProtocoleCourant(CacheClient.getInstance().getProtocoleCourant()); |
} |
} |
public void rechercherImagesEtCreerWidgetPagination() { |
// appel du service d'image pour avoir le nb total d'elements pour la |
// pagination |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraVue.ui.xml |
---|
13,6 → 13,10 |
<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}" /> |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraPresenteur.java |
---|
1,5 → 1,7 |
package org.tela_botanica.del.client.vues.pictoflora.moteur; |
import java.util.List; |
import javax.validation.Configuration; |
import org.tela_botanica.del.client.cache.CacheClient; |
9,7 → 11,10 |
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue; |
import org.tela_botanica.del.client.config.Config; |
import org.tela_botanica.del.client.modeles.ModeRecherche; |
import org.tela_botanica.del.client.modeles.Protocole; |
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat; |
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel; |
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole; |
import org.tela_botanica.del.client.services.rest.ImageServiceConcret; |
import org.tela_botanica.del.client.services.rest.ProtocoleService; |
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret; |
17,12 → 22,16 |
import org.tela_botanica.del.client.vues.pictoflora.resultats.ResultatPictofloraPresenteur; |
import org.tela_botanica.del.client.vues.pictoflora.resultats.ResultatPictofloraVue; |
import com.google.gwt.event.dom.client.ChangeEvent; |
import com.google.gwt.event.dom.client.ChangeHandler; |
import com.google.gwt.event.dom.client.ClickEvent; |
import com.google.gwt.event.dom.client.ClickHandler; |
import com.google.gwt.event.dom.client.HasChangeHandlers; |
import com.google.gwt.event.dom.client.HasClickHandlers; |
import com.google.gwt.user.client.Window; |
import com.google.gwt.user.client.ui.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
import com.google.gwt.user.client.ui.ListBox; |
import com.google.gwt.user.client.ui.Panel; |
public class MoteurPictofloraPresenteur { |
37,10 → 46,28 |
public Panel getZonePartageUrl(); |
HasClickHandlers getLienAjoutObservation(); |
public void setListeProtocoles(ListBox listeProtocoles); |
public HasChangeHandlers getListeProtocoles(); |
public void ajouterProtocole(String NomProtocole, String idProtocole); |
public void selectionnerProtocole(int index); |
public String getNomProtocoleSelectionne(); |
public int getIdProtocoleSelectionne(); |
public void ajouterProtocoles(List<Protocole> protocoles); |
public void mettreAJourDescriptionProtocoleCourant(Protocole protocoleCourant); |
} |
private Vue vue; |
private ProtocoleService protocoleService; |
private List<Protocole> protocoles; |
/** |
* Constructeur |
48,7 → 75,7 |
public MoteurPictofloraPresenteur(Vue vue, ProtocoleService protocoleService) { |
this.vue = vue; |
this.protocoleService = protocoleService; |
chargerProtocoles(); |
PartageUrlPresenteur presenteurPartageUrl = new PartageUrlPresenteur(new PartageUrlVue()); |
presenteurPartageUrl.go(vue.getZonePartageUrl()); |
77,6 → 104,14 |
} |
private void gererEvenements() { |
vue.getListeProtocoles().addChangeHandler(new ChangeHandler() { |
@Override |
public void onChange(ChangeEvent event) { |
surChangementProtocole(); |
} |
}); |
vue.getLienAjoutObservation().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
85,7 → 120,49 |
} |
}); |
} |
private void chargerProtocoles() { |
// test pour ne pas charger les protocoles déjà chargés |
// TODO: faire un systeme de cache gérés par les web service eux même |
if (CacheClient.getInstance().getListeProtocoles() == null) { |
protocoleService.getProtocoles(new ProtocolesCallback() { |
@Override |
public void surRetour(ProtocoleServiceResultat protocolesRecus) { |
protocoles = protocolesRecus.getProtocoles(); |
remplirListeProtocole(protocoles); |
} |
}); |
} else { |
protocoles = CacheClient.getInstance().getListeProtocoles(); |
remplirListeProtocole(CacheClient.getInstance().getListeProtocoles()); |
} |
} |
public void surChangementProtocole() { |
Protocole protocoleCourant = null; |
for (Protocole protocole : protocoles) { |
if (protocole.getId() == vue.getIdProtocoleSelectionne()) { |
protocoleCourant = protocole; |
} |
} |
vue.mettreAJourDescriptionProtocoleCourant(protocoleCourant); |
CacheClient.getInstance().setProtocoleCourant(protocoleCourant); |
EvenementChangementProtocole evenement = new EvenementChangementProtocole(protocoleCourant); |
BusEvenementiel.getInstance().fireEvent(evenement); |
} |
private void remplirListeProtocole(List<Protocole> protocoles) { |
vue.ajouterProtocoles(protocoles); |
if (CacheClient.getInstance().getProtocoleCourant() == null) { |
vue.selectionnerProtocole(0); |
vue.mettreAJourDescriptionProtocoleCourant(protocoles.get(0)); |
} else { |
vue.mettreAJourDescriptionProtocoleCourant(CacheClient.getInstance().getProtocoleCourant()); |
} |
} |
public void go(HasWidgets composite) { |
vue.ajouterVue(composite); |
chargerMoteurRechercheAvancee(); |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/MoteurPictofloraVue.java |
---|
1,6 → 1,13 |
package org.tela_botanica.del.client.vues.pictoflora.moteur; |
import java.util.List; |
import org.tela_botanica.del.client.modeles.Protocole; |
import com.google.gwt.core.client.GWT; |
import com.google.gwt.dom.client.NodeList; |
import com.google.gwt.dom.client.OptionElement; |
import com.google.gwt.dom.client.SelectElement; |
import com.google.gwt.event.dom.client.HasChangeHandlers; |
import com.google.gwt.event.dom.client.HasClickHandlers; |
import com.google.gwt.uibinder.client.UiBinder; |
28,6 → 35,9 |
@UiField |
Label ajouterObservation; |
@UiField |
ListBox listeProtocoles; |
// Constructeur |
public MoteurPictofloraVue() { |
initWidget(uiBinder.createAndBindUi(this)); |
63,5 → 73,46 |
public void ajouterVue(HasWidgets composite) { |
composite.add(this.asWidget()); |
} |
public void setListeProtocoles(ListBox listeProtocoles) { |
this.listeProtocoles = listeProtocoles; |
} |
public HasChangeHandlers getListeProtocoles() { |
return listeProtocoles; |
} |
public void ajouterProtocole(String NomProtocole, String idProtocole) { |
listeProtocoles.addItem(NomProtocole, idProtocole); |
} |
public void selectionnerProtocole(int index) { |
listeProtocoles.setSelectedIndex(index); |
} |
@Override |
public String getNomProtocoleSelectionne() { |
return listeProtocoles.getItemText((listeProtocoles.getSelectedIndex())); |
} |
@Override |
public int getIdProtocoleSelectionne() { |
return Integer.parseInt(listeProtocoles.getValue((listeProtocoles.getSelectedIndex()))); |
} |
@Override |
public void ajouterProtocoles(List<Protocole> protocoles) { |
SelectElement selectElement = SelectElement.as(listeProtocoles.getElement()); |
NodeList<OptionElement> options = selectElement.getOptions(); |
for (int i = 0; i < protocoles.size(); i++) { |
listeProtocoles.addItem(protocoles.get(i).getNom(), protocoles.get(i).getId()+""); |
options.getItem(i).setTitle(protocoles.get(i).getDescription()); |
} |
} |
@Override |
public void mettreAJourDescriptionProtocoleCourant( |
Protocole protocoleCourant) { |
listeProtocoles.setTitle(protocoleCourant.getDescription()); |
} |
} |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/moteur/rechercheImage.css |
---|
2,6 → 2,12 |
width: 100% |
} |
.protocoles { |
margin-top:-30px; |
margin-left:350px; |
position:absolute; |
} |
.moteurRecherche { |
margin-bottom: 10px; |
} |