/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationVue.java |
---|
14,6 → 14,7 |
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.VerticalPanel; |
import com.google.gwt.user.client.ui.Widget; |
public class ObservationVue extends Composite { |
24,13 → 25,18 |
} |
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); |
@UiField |
Label nomEspece, nomAuteur, nomObservateur, nomRetenu, dateObservation, famille, localite; |
@UiField |
protected VerticalPanel zoneCache; |
@UiField |
Image imagePrincipale; |
@UiField |
Label enSavoirPlus; |
public ObservationVue() { |
// sets listBox |
initWidget(uiBinder.createAndBindUi(this)); |
37,7 → 43,8 |
} |
protected void loadImage(Observation observation) { |
enSavoirPlus.setStyleName("boutonPlus"); |
zoneCache.setVisible(false); |
nomEspece.setText(observation.getSpecies()); |
nomAuteur.setText(observation.getAuteur()); |
imagePrincipale.setUrl(observation.getUrl()); |
47,15 → 54,6 |
famille.setText(observation.getFamille()); |
localite.setText(observation.getLocalite()); |
/* |
* flowPanel.clear(); flowPanel.add(new HTML(observation.getSpecies())); |
* flowPanel.add(new HTML(observation.getAuteur())); flowPanel.add(new |
* HTML("<a href='http://www.tela-botanica.org/eflore/BDNFF/4.02/nn/" + |
* observation.getNumNomenclatural() + "' target='_blank'><img src='" + |
* observation.getUrl() + "' /img></a>")); |
* flowPanel.add(moreDetailsHtml); flowPanel.add(detailsPanel); |
* flowPanel.add(ratePanel); |
*/ |
} |
protected void showValidationData(List<ObservationValidation> validationDatas) { |
103,4 → 101,12 |
// return ratePanel; |
return new FlowPanel(); |
} |
public VerticalPanel getZoneCache() { |
return zoneCache; |
} |
public Label getEnSavoirPlus() { |
return enSavoirPlus; |
} |
} |
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationRecherchePresenteur.java |
---|
30,7 → 30,7 |
@SuppressWarnings("deprecation") |
public void gererEvenements() { |
// FIXME : temporaire, juste pour débug |
// chargerObservations(); |
chargerObservations(); |
vue.getLabelChercher().addClickHandler(new ClickHandler() { |
/src/org/tela_botanica/del/client/vues/rechercheobservations/observation.css |
---|
New file |
0,0 → 1,4 |
.observations {border: solid 1px #DDD; padding:10px; -moz-border-radius:10px} |
.observations img {width:150px} |
.zoneCache {position:absolute; padding:15px; border:solid 1px #CCC; background:white; -moz-border-radius:5px; -moz-box-shadow:2px 2px 2px 2px #AAA} |
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationVue.ui.xml |
---|
3,15 → 3,16 |
<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="observation.css" /> |
<g:HTMLPanel> |
<g:HTMLPanel styleName="{style.observations}"> |
<g:VerticalPanel> |
<g:Label ui:field="nomEspece">Nom</g:Label> |
<g:Label ui:field="nomAuteur">Auteur</g:Label> |
<g:Image ui:field="imagePrincipale" resource='{res.logo}'/> |
<g:Image ui:field="imagePrincipale" resource='{res.logo}' /> |
</g:VerticalPanel> |
<g:DisclosurePanel> |
<g:header>Plus</g:header> |
<g:Label ui:field="enSavoirPlus" text="Plus"/> |
<g:VerticalPanel styleName="{style.zoneCache}" ui:field="zoneCache"> |
<g:VerticalPanel> |
<g:HorizontalPanel> |
<g:Label text="{constants.observateur} : "/> |
34,6 → 35,6 |
<g:Label ui:field="localite">Localite</g:Label> |
</g:HorizontalPanel> |
</g:VerticalPanel> |
</g:DisclosurePanel> |
</g:VerticalPanel> |
</g:HTMLPanel> |
</ui:UiBinder> |
/src/org/tela_botanica/del/client/vues/rechercheobservations/ObservationPresenteur.java |
---|
4,15 → 4,14 |
import org.tela_botanica.del.client.modeles.Observation; |
import org.tela_botanica.del.client.modeles.ObservationValidation; |
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel; |
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation; |
import org.tela_botanica.del.client.utils.MockDatasource; |
import org.tela_botanica.del.client.vues.rechercheobservations.detail.ObservationDetailPresenteur; |
import org.tela_botanica.del.client.vues.rechercheobservations.vote.MoyenneVotePresenteur; |
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.Label; |
import com.google.gwt.user.client.ui.VerticalPanel; |
public class ObservationPresenteur { |
29,7 → 28,7 |
composite.add(vue); |
vue.loadImage(observation); |
// loadValidationData(); |
// handleEvents(); |
handleEvents(); |
} |
44,27 → 43,21 |
} |
private void handleEvents() { |
vue.getMoreDetailsHtml().addClickHandler(new ClickHandler() { |
vue.getEnSavoirPlus().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
VerticalPanel zoneCache = vue.getZoneCache(); |
Label enSavoirPlus = vue.getEnSavoirPlus(); |
zoneCache.setVisible(!zoneCache.isVisible()); |
if (detailsOpen) { |
vue.clearDetails(); |
if (!zoneCache.isVisible()) { |
enSavoirPlus.setStyleName("boutonPlus"); |
} else { |
new ObservationDetailPresenteur(observation).go(vue.getDetailsPanel()); |
vue.getMoreDetailsHtml().setHTML("<img src='img/icon_minus.png' />"); |
enSavoirPlus.setStyleName("boutonMoins"); |
} |
detailsOpen = !detailsOpen; |
} |
}); |
vue.getProposeValidationDataHtml().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
BusEvenementiel.getInstance().fireEvent(new EvenementValidation(observation)); |
} |
}); |
} |
} |