Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 589 → Rev 590

/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/moteur/MoteurRechercheImageVue.ui.xml
17,10 → 17,6
<g:HorizontalPanel ui:field="zoneRecherche" />
</g:HorizontalPanel>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneProtocoles}">
<g:ListBox ui:field="listeProtocoles" />
</g:HTMLPanel>
 
<g:HTMLPanel ui:field="panneauResultats" />
</g:HTMLPanel>
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/moteur/rechercheImage.css
22,10 → 22,4
 
.entrerMotClef {
margin-bottom: 10px;
}
 
.zoneProtocoles {
margin-left: 25%;
position: absolute;
}
 
}
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/moteur/MoteurRechercheImagePresenteur.java
25,20 → 25,10
 
public interface Vue extends IsWidget {
 
public void ajouterProtocole(String protocole);
 
public void selectionnerProtocole(int index);
 
public HasChangeHandlers getListeProtocoles();
 
public HasWidgets getZoneResultats();
 
public HasWidgets getZoneRecherche();
 
public String getNomProtocolSelectionne();
 
public int getIdProtocoleSelectionne();
 
public void ajouterVue(HasWidgets composite);
 
}
46,11 → 36,10
private Vue vue;
 
private final ProtocoleService protocoleService = MockDatasource.getInstance();
private List<Protocole> protocoles;
 
// TODO : passer ça en cache
private String protocoleParDefaut = Protocole.ESTHETISME;
 
/**
* Constructeur
* */
59,8 → 48,6
if (CacheClient.getInstance().getProtocoleCourant() == null) {
CacheClient.getInstance().setProtocoleCourant(protocoleService.getProtocole(protocoleParDefaut));
}
gererEvenements();
chargerProtocoles();
}
 
public void go(HasWidgets composite) {
67,40 → 54,8
vue.ajouterVue(composite);
chargerMoteurRechercheAvancee();
}
 
private void chargerProtocoles() {
protocoles = protocoleService.getProtocoles();
for (Protocole protocole : protocoles) {
vue.ajouterProtocole(protocole.getNom());
}
vue.selectionnerProtocole(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
}
 
public void gererEvenements() {
 
vue.getListeProtocoles().addChangeHandler(new ChangeHandler() {
 
@Override
public void onChange(ChangeEvent event) {
surChangementProtocole();
}
});
 
}
 
public void surChangementProtocole() {
Protocole protocoleCourant = null;
for (Protocole protocole : protocoles) {
if (protocole.getId() == vue.getIdProtocoleSelectionne()) {
protocoleCourant = protocole;
}
}
 
CacheClient.getInstance().setProtocoleCourant(protocoleCourant);
EvenementChangementProtocole evenement = new EvenementChangementProtocole(protocoleCourant);
BusEvenementiel.getInstance().fireEvent(evenement);
}
 
public void chargerMoteurRechercheAvancee() {
MoteurRecherchePresenteur presenteurRecherche = new MoteurRecherchePresenteur(new MoteurRechercheVue(""), ModeRecherche.MODE_IMAGE) {
public void lancerRecherche() {
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/moteur/MoteurRechercheImageVue.java
23,9 → 23,6
@UiField
Panel panneauResultats, zoneRecherche;
 
@UiField
ListBox listeProtocoles;
 
// Constructeur
public MoteurRechercheImageVue() {
initWidget(uiBinder.createAndBindUi(this));
35,10 → 32,6
return panneauChargement;
}
 
public void setListeProtocoles(ListBox listeProtocoles) {
this.listeProtocoles = listeProtocoles;
}
 
// Cette méthode est public car appelé dans GestionnaireHistorique
public Panel getZoneResultats() {
return panneauResultats;
48,34 → 41,11
this.panneauResultats = panneauResultats;
}
 
public HasChangeHandlers getListeProtocoles() {
return listeProtocoles;
}
 
public void ajouterProtocole(String protocole) {
listeProtocoles.addItem(protocole);
}
 
public void selectionnerProtocole(int index) {
listeProtocoles.setSelectedIndex(index);
 
}
 
public HasWidgets getZoneRecherche() {
return zoneRecherche;
}
 
@Override
public String getNomProtocolSelectionne() {
return listeProtocoles.getValue(listeProtocoles.getSelectedIndex());
}
 
@Override
public int getIdProtocoleSelectionne() {
return listeProtocoles.getSelectedIndex();
}
 
@Override
public void ajouterVue(HasWidgets composite) {
composite.add(this.asWidget());
}
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImagePresenteur.java
9,20 → 9,27
import org.tela_botanica.del.client.modeles.ImageServiceResultat;
import org.tela_botanica.del.client.modeles.InformationsRecherche;
import org.tela_botanica.del.client.modeles.ModeTri;
import org.tela_botanica.del.client.modeles.Protocole;
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.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
import org.tela_botanica.del.client.services.rest.ImageService;
import org.tela_botanica.del.client.services.rest.ProtocoleService;
import org.tela_botanica.del.client.services.rest.async.ImagesParTaxonCallback;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.images.ImagePresenteur;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.images.ImageVue;
 
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.ui.HTMLPanel;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.ListBox;
 
public class ResultatRechercheImagePresenteur {
 
54,12 → 61,31
public void afficherElementsResultatsTrouve();
 
public HTMLPanel getImageTable();
public String getNomProtocolSelectionne();
 
public int getIdProtocoleSelectionne();
public void setListeProtocoles(ListBox listeProtocoles);
public HasChangeHandlers getListeProtocoles();
public void ajouterProtocole(String protocole);
 
public void selectionnerProtocole(int index);
}
 
// new ResultatRechercheImageVue();
private Vue vue;
private ImageService imageService;
private final ProtocoleService protocoleService = MockDatasource.getInstance();
private List<Protocole> protocoles;
 
// TODO : passer ça en cache
private String protocoleParDefaut = Protocole.ESTHETISME;
public ResultatRechercheImagePresenteur(ImageService imageService, Vue vue) {
this.vue = vue;
this.imageService = imageService;
70,10 → 96,19
vue.startChargement();
rechercherImagesEtCreerWidgetPagination();
gererEvenements();
chargerProtocoles();
}
 
public void gererEvenements() {
 
vue.getListeProtocoles().addChangeHandler(new ChangeHandler() {
 
@Override
public void onChange(ChangeEvent event) {
surChangementProtocole();
}
});
vue.getTriParNbVotesAscendant().addClickHandler(new ClickHandler() {
 
@Override
134,6 → 169,27
});
}
 
public void surChangementProtocole() {
Protocole protocoleCourant = null;
for (Protocole protocole : protocoles) {
if (protocole.getId() == vue.getIdProtocoleSelectionne()) {
protocoleCourant = protocole;
}
}
 
CacheClient.getInstance().setProtocoleCourant(protocoleCourant);
EvenementChangementProtocole evenement = new EvenementChangementProtocole(protocoleCourant);
BusEvenementiel.getInstance().fireEvent(evenement);
}
private void chargerProtocoles() {
protocoles = protocoleService.getProtocoles();
for (Protocole protocole : protocoles) {
vue.ajouterProtocole(protocole.getNom());
}
vue.selectionnerProtocole(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
}
public void rechercherImagesEtCreerWidgetPagination() {
 
// appel du service d'image pour avoir le nb total d'elements pour la
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImageVue.java
4,6 → 4,7
import java.util.List;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasChangeHandlers;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Button;
11,6 → 12,7
import com.google.gwt.user.client.ui.HTMLPanel;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
 
40,7 → 42,9
 
@UiField
Label aucunResultat;
 
@UiField
ListBox listeProtocoles;
// Constructeur
public ResultatRechercheImageVue() {
initWidget(uiBinder.createAndBindUi(this));
135,5 → 139,31
public Button getTriParDateDescendant() {
return triParDateDescendant;
}
public void setListeProtocoles(ListBox listeProtocoles) {
this.listeProtocoles = listeProtocoles;
}
public HasChangeHandlers getListeProtocoles() {
return listeProtocoles;
}
public void ajouterProtocole(String protocole) {
listeProtocoles.addItem(protocole);
}
 
public void selectionnerProtocole(int index) {
listeProtocoles.setSelectedIndex(index);
}
@Override
public String getNomProtocolSelectionne() {
return listeProtocoles.getValue(listeProtocoles.getSelectedIndex());
}
 
@Override
public int getIdProtocoleSelectionne() {
return listeProtocoles.getSelectedIndex();
}
 
}
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImage.css
2,6 → 2,21
text-align: center;
}
 
.barreNavigation {
max-width:810px;
margin-top:-15px;
padding-bottom:20px
}
.zoneTri {
padding-left:10px;
}
.protocoles {
padding-left:10px;
}
.paginationHaut {
}
 
.images {
width: 100%;
clear: left;
13,9 → 28,6
margin: 0 20px 40px 0px
}
 
.zoneTri {
float: right
}
 
.boutonTriAsc,.boutonTriDesc {
border: none;
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImageVue.ui.xml
8,8 → 8,12
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
 
<g:HTMLPanel styleName="{style.contenuResultat}">
<g:HTMLPanel>
<g:HTMLPanel ui:field="zoneTri" styleName="{style.zoneTri}">
<g:HTMLPanel styleName="{style.barreNavigation}">
<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}">
<g:HTMLPanel ui:field="triParNbVotes" styleName="gauche">
<g:Label text="{constants.triParNbVotes}" styleName="gauche"/>
<g:Button title="{constants.triParNbVotesAscendant}" ui:field="triParNbVotesAscendant" styleName="{style.boutonTriAsc} gauche" />
20,9 → 24,9
<g:Button title="{constants.triParDateAscendant}" ui:field="triParDateAscendant" styleName="{style.boutonTriAsc} gauche" />
<g:Button title="{constants.triParDateDescendant}" ui:field="triParDateDescendant" styleName="{style.boutonTriDesc} gauche" />
</g:HTMLPanel>
</g:HTMLPanel>
</g:HTMLPanel>
</g:HTMLPanel>
<g:VerticalPanel ui:field="panneauPaginationHaut" />
<g:VerticalPanel ui:field="panneauChargement">
<g:Image url="./img/wait.gif"></g:Image>
</g:VerticalPanel>