Subversion Repositories eFlore/Applications.del

Rev

Rev 1545 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package org.tela_botanica.del.client.vues.identiplante.moteur;

import org.tela_botanica.del.client.cache.CacheClient;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasClickHandlers;
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.HasWidgets;
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 MoteurIdentiplanteVue extends Composite implements MoteurIdentiplantePresenteur.Vue {

        // Gestion d'UiBinder
        interface Binder extends UiBinder<Widget, MoteurIdentiplanteVue> {
        }

        private static Binder binder = GWT.create(Binder.class);

        @UiField
        Panel zoneRecherche, zoneResultats;

        @UiField
        Label ongletTout, ongletADeterminer, ongletEnDiscussion, ongletValidees;

        public HasWidgets getZoneRecherche() {
                return zoneRecherche;
        }
        
        // Constructeur de la vue
        public MoteurIdentiplanteVue() {
                initWidget(binder.createAndBindUi(this));
                mettreAJourOngletEnFonctionDuCache();
        }

        public Panel getZoneResultats() {
                return zoneResultats;
        }
        
        @Override
        public HasClickHandlers getOngletEnDiscussion() {
                return ongletEnDiscussion;
        }

        @Override
        public HasClickHandlers getOngletADeterminer() {
                return ongletADeterminer;
        }

        @Override       
        public HasClickHandlers getOngletTout() {
                return ongletTout;
        }

        @Override
        public HasClickHandlers getOngletValidees() {
                return ongletValidees;
        }

        @Override
        public void setOngletADeterminerActif() {
                nettoyerOngletsActifs();
                ongletADeterminer.addStyleName("onglet-actif");
        }

        @Override
        public void setOngletToutActif() {
                nettoyerOngletsActifs();
                ongletTout.addStyleName("onglet-actif");
        }

        @Override
        public void setOngletEnDiscussionActif() {
                nettoyerOngletsActifs();
                ongletEnDiscussion.addStyleName("onglet-actif");                
        }

        @Override
        public void setOngletValideesActif() {
                nettoyerOngletsActifs();
                ongletValidees.addStyleName("onglet-actif");            
        }
        
        public void nettoyerOngletsActifs() {
                ongletTout.removeStyleName("onglet-actif");
                ongletADeterminer.removeStyleName("onglet-actif");
                ongletEnDiscussion.removeStyleName("onglet-actif");
                ongletValidees.removeStyleName("onglet-actif");
        }
        
        public void mettreAJourOngletEnFonctionDuCache() {
                String statut = CacheClient.getInstance().getFiltreStatut();
                if (statut == null) {
                        setOngletToutActif();
                } else if (statut.equals("adeterminer")) {
                        setOngletADeterminerActif();
                } else if (statut.equals("endiscussion")) {
                        setOngletEnDiscussionActif();
                } else if (statut.equals("validees")) {
                        setOngletValideesActif();
                }
        }

}