Subversion Repositories eFlore/Archives.cel-v2

Rev

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

package org.tela_botanica.client.vues;


import org.tela_botanica.client.image.ImageMediateur;
import org.tela_botanica.client.interfaces.Rafraichissable;


import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Widget;
import com.gwtext.client.core.RegionPosition;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.layout.BorderLayout;
import com.gwtext.client.widgets.layout.BorderLayoutData;

public class ZoomImageVue extends Panel implements Rafraichissable {
        
        private ImageMediateur iMediateur = null ;
        private Image image = null ;
        private final com.google.gwt.user.client.ui.Button prev = new com.google.gwt.user.client.ui.Button("<");
        private final com.google.gwt.user.client.ui.Button suiv = new com.google.gwt.user.client.ui.Button(">");
        
        public ZoomImageVue(ImageMediateur im)
        {
                super("Zoom");
                
                iMediateur = im ;
                image = new Image() {
                        public void onBrowserEvent(Event event) {
                                if (Event.ONDBLCLICK == DOM.eventGetType(event)) {

                                        getIMediateur().doubleClicZoomImage();
                                }
                        }
                };

                image.sinkEvents(Event.ONDBLCLICK);
                
                image.setUrl("image/vide.jpg");
                
                this.setLayout(new BorderLayout());
                
                prev.setWidth("5%");
                suiv.setWidth("5%");
                
                this.add(prev,new BorderLayoutData(RegionPosition.WEST));
                this.add(image,new BorderLayoutData(RegionPosition.CENTER));
                this.add(suiv,new BorderLayoutData(RegionPosition.EAST));
                
                ajouterListenersBoutons();
        }

        
        public void rafraichir(Object nouvelleDonnees) {
                
                if(nouvelleDonnees instanceof String)
                {
                        getImage().setUrl((String)nouvelleDonnees);
                }
                
                
        }
        
        public void ajouterListenersBoutons()
        {
                prev.addClickListener(new ClickListener() {

                        public void onClick(Widget sender) {
                                
                                getIMediateur().clicBoutonZoomImage("prev");
                        }
                        
                });
                
                suiv.addClickListener(new ClickListener() {

                        public void onClick(Widget sender) {
                                
                                
                                getIMediateur().clicBoutonZoomImage("suiv");
                        }
                        
                });
        }


        public ImageMediateur getIMediateur() {
                return iMediateur;
        }


        public Image getImage() {
                return image;
        }


        public com.google.gwt.user.client.ui.Button getPrev() {
                return prev;
        }


        public com.google.gwt.user.client.ui.Button getSuiv() {
                return suiv;
        }

}