Subversion Repositories eFlore/Applications.del

Rev

Rev 391 | Rev 488 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package org.tela_botanica.del.client.composants.pagination;

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.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasText;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.Widget;

public class PaginationVue extends Composite implements PaginationPresenteur.Vue {

        @UiField
        HorizontalPanel zoneLiens;

        @UiField
        ListBox selecteurPas;
        
        @UiField 
        Button boutonPrecedent, boutonSuivant, boutonPremierePage, boutonDernierePage;

        interface MyUiBinder extends UiBinder<Widget, PaginationVue> {
        }

        private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);

        public PaginationVue() {
                initWidget(uiBinder.createAndBindUi(this));
        }

        public void masquerBoutonPrecedent() {
                boutonPremierePage.setVisible(false);
                boutonPrecedent.setVisible(false);
        }
        
        public void afficherBoutonPrecedent() {
                boutonPremierePage.setVisible(true);
                boutonPrecedent.setVisible(true);
        }
        

        public void masquerBoutonSuivant() {
                boutonDernierePage.setVisible(false);
                boutonSuivant.setVisible(false);
        }
        
        public void afficherBoutonSuivant() {
                boutonDernierePage.setVisible(true);
                boutonSuivant.setVisible(true);
        }

        public ListBox getSelecteurPas() {
                return selecteurPas;
        }

        @Override
        public HasWidgets getZoneLiens() {
                return zoneLiens;
        }

        @Override
        public HasClickHandlers getBoutonSuivant() {
                return boutonSuivant;
        }

        @Override
        public HasClickHandlers getBoutonPrecedent() {
                return boutonPrecedent;
        }
        
        @Override
        public HasClickHandlers getBoutonPremierePage() {
                return boutonPremierePage;
        }

        @Override
        public HasClickHandlers getBoutonDernierePage() {
                return boutonDernierePage;
        }

        @Override
        public void changerSelecteurPas(int index) {
                selecteurPas.setSelectedIndex(index);
        }

        @Override
        public int getNbWidgetsZoneLiens() {
                return zoneLiens.getWidgetCount();
        }

        @Override
        public HasClickHandlers getWidgetZoneLiensHasClickHandlers(int index) {
                return (Button)zoneLiens.getWidget(index);
        }

        @Override
        public HasText getWidgetZoneLiensAsText(int index) {
                return (Button)zoneLiens.getWidget(index);
        }

        @Override
        public void changerStyleBoutonZoneLiens(int index, String style) {
                zoneLiens.getWidget(index).setStyleName(style);
        }

        @Override
        public void ajouterBoutonZoneLiens(String label) {
                Button bouton = new Button(label);
                zoneLiens.add(bouton);
        }

        @Override
        public int getPasSelectionne() {
                int index = selecteurPas.getSelectedIndex();
                return Integer.parseInt(selecteurPas.getValue(index));
        }

        @Override
        public boolean boutonPrecedentEstAffiche() {
                return boutonPrecedent.isVisible() && boutonPremierePage.isVisible();
        }

        @Override
        public boolean boutonSuivantEstAffiche() {
                return boutonSuivant.isVisible() && boutonDernierePage.isVisible();
        }

}