Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 199 → Rev 200

/src/org/tela_botanica/del/client/vues/rechercheobservations/detailImage.css
New file
0,0 → 1,0
.detailImage {z-index:1500; padding:50px; background:white; width:50%; width:600px; margin:0 auto; margin-top:5%;}
/src/org/tela_botanica/del/client/vues/rechercheobservations/DetailImageVue.ui.xml
New file
0,0 → 1,11
<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:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator" ui:generateLocales="default">
<ui:with field='res' type='org.tela_botanica.del.client.Ressources'/>
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary"/>
 
<ui:style src="detailImage.css" />
<g:HTMLPanel styleName="{style.detailImage}">
<g:Image ui:field="photoPrincipale" />
<g:Label ui:field="texteAlternatif"/>
</g:HTMLPanel>
</ui:UiBinder>
/src/org/tela_botanica/del/client/vues/rechercheobservations/DetailImagePresenteur.java
New file
0,0 → 1,24
package org.tela_botanica.del.client.vues.rechercheobservations;
 
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
 
import com.google.gwt.user.client.ui.HasWidgets;
 
public class DetailImagePresenteur extends Presenteur {
 
public DetailImagePresenteur(String urlImage, String texteAlternatif) {
super(new DetailImageVue(urlImage, texteAlternatif));
}
 
@Override
public void go(HasWidgets composite) {
composite.add(this.getVue());
}
 
@Override
protected void handleEvents() {
// TODO Auto-generated method stub
 
}
 
}
/src/org/tela_botanica/del/client/vues/rechercheobservations/observation.css
1,3 → 1,6
.description {border:solid 1px #AAA; border-width:0 1px 1px 0; width:30%; float:left; -moz-border-radius: 10px 0 0 10px; padding : 10px; -moz-box-shadow: 5px 5px 5px #DDD; margin:0 1px 5px 0; height:200px}
.photos {border:solid 1px #AAA; border-width:0 1px 1px 0px; width:30%; float:left; -moz-border-radius: 0px; padding : 10px; -moz-box-shadow: 5px 5px 5px #DDD; margin:0 1px 5px 0; height:200px}
.determination {border:solid 1px #AAA; border-width:0 0 1px 0px ;width:30%; float:left; -moz-border-radius: 0 10px 10px 0; padding : 10px; -moz-box-shadow: 5px 5px 5px #DDD; margin:0 1px 5px 0; height:200px}
.ligneObservation {-moz-box-shadow: 5px 0px 5px #DDD; -moz-border-radius:10px; margin-bottom:10px; border:solid 1px #DDD}
.description {border:solid 1px #EEE; border-width:0 1px 0 0; width:25%; float:left;padding : 10px; margin:0 1px 5px 0; height:150px}
.photos {border:solid 1px #EEE; border-width:0 1px 0 0; width:33%; float:left; -moz-border-radius: 0px; padding : 10px; margin:0 1px 5px 0; height:170px}
.determination {width:37%; float:left; padding : 10px; margin:0 1px 5px 0; height:150px}
.photos img {float:left; padding:2px; -moz-box-shadow:2px 2px 2px #DDD; cursor:pointer}
.photoPrincipale {height:130px; width:140px; float:left; padding:5px; cursor:pointer}
/src/org/tela_botanica/del/client/vues/rechercheobservations/RechercheObservationsPresenteur.java
140,6 → 140,7
public void afficherObservations() {
RechercheObservationsVue vue = (RechercheObservationsVue) getVue();
 
vue.zoneObservations.clear();
for (Observation observation : observations) {
ObservationPresenteur presenteur = new ObservationPresenteur(observation);
presenteur.go(vue.zoneObservations);
/src/org/tela_botanica/del/client/vues/rechercheobservations/DetailImageVue.java
New file
0,0 → 1,30
package org.tela_botanica.del.client.vues.rechercheobservations;
 
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.Image;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
 
public class DetailImageVue extends Composite {
 
// Gestion d'UiBinder
interface Binder extends UiBinder<Widget, DetailImageVue> {
}
 
private static Binder binder = GWT.create(Binder.class);
 
@UiField
protected Image photoPrincipale;
 
@UiField
protected Label texteAlternatif;
 
public DetailImageVue(String urlImage, String texteAlternatif) {
initWidget(binder.createAndBindUi(this));
photoPrincipale.setUrl(urlImage);
this.texteAlternatif.setText(texteAlternatif);
}
}
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationVue.ui.xml
4,7 → 4,7
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary"/>
 
<ui:style src="observation.css" />
<g:HTMLPanel>
<g:HTMLPanel styleName="{style.ligneObservation}">
<g:HTMLPanel styleName="{style.description}">
<g:Label ui:field="nomRetenu" styleName="sousTitre"/>
<g:Label ui:field="famille" />
16,9 → 16,10
<g:Label ui:field="numNomenclatural" />
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.photos}">
<g:Image ui:field="photoPrincipale" />
</g:HTMLPanel>
<g:HorizontalPanel styleName="{style.photos}">
<g:Image ui:field="photoPrincipale" styleName="{style.photoPrincipale}"/>
<g:HTMLPanel ui:field="photos"></g:HTMLPanel>
</g:HorizontalPanel>
<g:FlexTable styleName="{style.determination}" ui:field="tableauPropositions" />
<g:HTMLPanel styleName="nettoyage" />
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationPresenteur.java
7,7 → 7,10
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
 
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Image;
 
public class ObservationPresenteur extends Presenteur {
 
40,8 → 43,33
vue.nomRetenu.setText(observation.getNomRetenu());
vue.numNomenclatural.setText(observation.getNumNomenclatural());
 
vue.photoPrincipale.setUrl((observation.getImages()).get(0).getUrl());
List<org.tela_botanica.del.client.modeles.Image> images = observation.getImages();
 
org.tela_botanica.del.client.modeles.Image imagePrincipale = images.get(0);
vue.photoPrincipale.setUrl(imagePrincipale.getUrl());
vue.photoPrincipale.setTitle(imagePrincipale.getUrlFormat("L"));
vue.photoPrincipale.setAltText(observation.getAuteur() + " - " + observation.getNomRetenu());
images.remove(0);
 
int nbImagesAffichees = 0;
for (org.tela_botanica.del.client.modeles.Image imageCourante : images) {
nbImagesAffichees++;
if (nbImagesAffichees < 5) {
Image photo = new Image();
photo.setUrl(imageCourante.getUrlFormat("CRX2S"));
photo.setTitle(imageCourante.getUrlFormat("L"));
photo.setAltText(observation.getAuteur() + " - " + observation.getNomRetenu());
photo.addClickHandler(new ClickHandler() {
 
public void onClick(ClickEvent event) {
Image photo = (Image) event.getSource();
ouvrirFenetreModale(new DetailImagePresenteur(photo.getTitle(), photo.getAltText()));
}
});
vue.photos.add(photo);
}
}
 
List<PropositionDetermination> propositions = observation.getPropositionsDetermination();
 
vue.tableauPropositions.setText(0, 0, "Certitude");
53,11 → 81,16
for (PropositionDetermination proposition : propositions) {
i++;
vue.tableauPropositions.setText(i, 0, String.valueOf(proposition.getVotesDeterminations().size()));
/*
* List<VoteDetermination> votes =
* proposition.getVotesDeterminations(); for (VoteDetermination vote
* : votes) { vote.getVote(); }
*/
vue.tableauPropositions.setText(i, 1, String.valueOf(proposition.getCommentaires().size()));
vue.tableauPropositions.setText(i, 2, proposition.getEspece());
 
}
 
handleEvents();
// vue.propositions.setText(ch);
}
 
66,8 → 99,14
}
 
protected void handleEvents() {
// TODO Auto-generated method stub
ObservationVue vue = (ObservationVue) this.getVue();
vue.photoPrincipale.addClickHandler(new ClickHandler() {
 
public void onClick(ClickEvent event) {
Image photoPrincipale = (Image) event.getSource();
ouvrirFenetreModale(new DetailImagePresenteur(photoPrincipale.getTitle(), photoPrincipale.getAltText()));
}
});
 
}
 
}
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationVue.java
7,6 → 7,7
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
 
public class ObservationVue extends Composite {
26,6 → 27,9
@UiField
protected Image photoPrincipale;
 
@UiField
protected Panel photos;
 
public ObservationVue() {
initWidget(binder.createAndBindUi(this));
}