Subversion Repositories eFlore/Applications.del

Rev

Rev 210 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 210 Rev 277
Line 12... Line 12...
12
 
12
 
13
import com.google.gwt.event.dom.client.ChangeEvent;
13
import com.google.gwt.event.dom.client.ChangeEvent;
14
import com.google.gwt.event.dom.client.ChangeHandler;
14
import com.google.gwt.event.dom.client.ChangeHandler;
15
import com.google.gwt.event.dom.client.ClickEvent;
15
import com.google.gwt.event.dom.client.ClickEvent;
-
 
16
import com.google.gwt.event.dom.client.ClickHandler;
-
 
17
import com.google.gwt.event.dom.client.HasChangeHandlers;
-
 
18
import com.google.gwt.event.dom.client.HasClickHandlers;
16
import com.google.gwt.event.dom.client.ClickHandler;
19
import com.google.gwt.event.dom.client.HasKeyPressHandlers;
17
import com.google.gwt.event.dom.client.KeyCodes;
20
import com.google.gwt.event.dom.client.KeyCodes;
18
import com.google.gwt.event.dom.client.KeyPressEvent;
21
import com.google.gwt.event.dom.client.KeyPressEvent;
19
import com.google.gwt.event.dom.client.KeyPressHandler;
22
import com.google.gwt.event.dom.client.KeyPressHandler;
-
 
23
import com.google.gwt.user.client.ui.HasWidgets;
Line 20... Line 24...
20
import com.google.gwt.user.client.ui.HasWidgets;
24
import com.google.gwt.user.client.ui.IsWidget;
Line -... Line 25...
-
 
25
 
-
 
26
public class RechercheImagePresenteur {
-
 
27
 
-
 
28
	public interface Vue extends IsWidget {
-
 
29
		
-
 
30
		public abstract void ajouterProtocole(String protocole);
-
 
31
		public abstract void selectionnerProtocole(int index);
-
 
32
		public abstract HasClickHandlers getBoutonChercher();
-
 
33
		public abstract HasKeyPressHandlers getChampEspece();
-
 
34
		public abstract HasChangeHandlers getListeProtocoles();
-
 
35
		public abstract HasWidgets getPanneauResultats();
-
 
36
	}
21
 
37
	
22
public class RechercheImagePresenteur {
-
 
23
 
38
	private Vue vue;
24
	private final MockDatasource dataSource = MockDatasource.getInstance();
39
	
Line -... Line 40...
-
 
40
	private final MockDatasource dataSource = MockDatasource.getInstance();
-
 
41
	private String protocoleParDefaut = Protocole.IDENTIFICATION_AUTOMATIQUE;
-
 
42
	private List<Protocole> protocoles;
25
	private final RechercheImageVue vue = new RechercheImageVue();
43
 
-
 
44
	/**
26
	private String protocoleParDefaut = Protocole.IDENTIFICATION_AUTOMATIQUE;
45
	 * Constructeur
27
	private List<Protocole> protocoles;
46
	 * */
28
 
47
	public RechercheImagePresenteur(Vue vue) {
29
	public RechercheImagePresenteur() {
48
		this.vue = vue;
30
 
49
		
Line 31... Line 50...
31
		if (CacheClient.getInstance().getProtocoleCourant() == null) {
50
		if (CacheClient.getInstance().getProtocoleCourant() == null) {
32
			CacheClient.getInstance().setProtocoleCourant(dataSource.getProtocole(protocoleParDefaut));
51
			CacheClient.getInstance().setProtocoleCourant(dataSource.getProtocole(protocoleParDefaut));
33
		}
52
		}
34
	}
53
	}
35
 
54
 
Line 36... Line 55...
36
	public void go(HasWidgets composite) {
55
	public void go(HasWidgets composite) {
37
		composite.add(vue);
56
		composite.add(vue.asWidget());
38
		gererEvenements();
57
		gererEvenements();
39
		chargerProtocoles();
58
		chargerProtocoles();
40
	}
59
	}
41
 
60
 
42
	private void chargerProtocoles() {
61
	private void chargerProtocoles() {
Line 43... Line 62...
43
		protocoles = dataSource.getProtocoles();
62
		protocoles = dataSource.getProtocoles();
Line 44... Line 63...
44
		for (Protocole protocole : protocoles) {
63
		for (Protocole protocole : protocoles) {
Line 45... Line 64...
45
			vue.listeProtocoles.addItem(protocole.getNom());
64
			vue.ajouterProtocole(protocole.getNom());
46
		}
65
		}
47
		vue.listeProtocoles.setSelectedIndex(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
66
		vue.selectionnerProtocole(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
48
	}
67
	}
49
 
68
 
Line 50... Line 69...
50
	public void gererEvenements() {
69
	public void gererEvenements() {
Line 51... Line 70...
51
 
70
 
52
		vue.boutonChercher.addClickHandler(new ClickHandler() {
71
		vue.getBoutonChercher().addClickHandler(new ClickHandler() {
53
 
72
 
54
			@Override
73
			@Override
55
			public void onClick(ClickEvent event) {
74
			public void onClick(ClickEvent event) {
56
				chargerImages();
75
				chargerImages();
Line 57... Line 76...
57
			}
76
			}
Line 58... Line 77...
58
		});
77
		});
59
 
78
 
-
 
79
		vue.getChampEspece().addKeyPressHandler(new KeyPressHandler() {
60
		vue.nomEspece.addKeyPressHandler(new KeyPressHandler() {
80
 
61
 
81
			public void onKeyPress(KeyPressEvent event) {
62
			public void onKeyPress(KeyPressEvent event) {
82
				if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER) {
63
				if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER) {
83
					chargerImages();
64
					chargerImages();
84
				}
65
				}
85
			}
Line 80... Line 100...
80
	private void chargerImages() {
100
	private void chargerImages() {
81
		List<Image> imagesFromDatabase = dataSource.getImages();
101
		List<Image> imagesFromDatabase = dataSource.getImages();
82
		EvenementRechercheImage evenementRechercheImage = new EvenementRechercheImage(imagesFromDatabase);
102
		EvenementRechercheImage evenementRechercheImage = new EvenementRechercheImage(imagesFromDatabase);
83
		BusEvenementiel.getInstance().fireEvent(evenementRechercheImage);
103
		BusEvenementiel.getInstance().fireEvent(evenementRechercheImage);
84
	}
104
	}
85
 
105
	
86
	public RechercheImageVue getVue() {
106
	public HasWidgets getPanneauResultats() {
87
		return vue;
107
		return vue.getPanneauResultats();
88
	}
108
	}
89
 
-
 
90
}
109
}