Subversion Repositories eFlore/Applications.del

Rev

Rev 1151 | Rev 1162 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1151 Rev 1152
1
package org.tela_botanica.del.client.composants.motsclesimages;
1
package org.tela_botanica.del.client.composants.motsclesimages;
-
 
2
import java.util.Iterator;
2
import java.util.List;
3
import java.util.List;
3
 
4
 
4
import org.tela_botanica.del.client.cache.CacheClient;
5
import org.tela_botanica.del.client.cache.CacheClient;
5
import org.tela_botanica.del.client.composants.motsclesimages.formulairesaisiemotclesimages.FormulaireSaisieMotsClesImagePresenteur;
6
import org.tela_botanica.del.client.composants.motsclesimages.formulairesaisiemotclesimages.FormulaireSaisieMotsClesImagePresenteur;
6
import org.tela_botanica.del.client.modeles.InformationsRecherche;
7
import org.tela_botanica.del.client.modeles.InformationsRecherche;
7
import org.tela_botanica.del.client.modeles.ModeTri;
8
import org.tela_botanica.del.client.modeles.ModeTri;
8
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
9
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
9
import org.tela_botanica.del.client.navigation.evenement.ajoutmotcleimage.EvenementAjoutMotCleImage;
10
import org.tela_botanica.del.client.navigation.evenement.ajoutmotcleimage.EvenementAjoutMotCleImage;
10
import org.tela_botanica.del.client.navigation.evenement.ajoutmotcleimage.GestionnaireEvenementAjoutMotCleImage;
11
import org.tela_botanica.del.client.navigation.evenement.ajoutmotcleimage.GestionnaireEvenementAjoutMotCleImage;
11
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
12
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
12
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
13
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
13
import org.tela_botanica.del.client.services.rest.MotsClesService;
14
import org.tela_botanica.del.client.services.rest.MotsClesService;
14
import org.tela_botanica.del.client.services.rest.MotsClesServiceConcret;
15
import org.tela_botanica.del.client.services.rest.MotsClesServiceConcret;
15
import org.tela_botanica.del.client.services.rest.async.ListeMotsClesImageCallBack;
16
import org.tela_botanica.del.client.services.rest.async.ListeMotsClesImageCallBack;
16
 
17
 
17
import com.google.gwt.user.client.Window;
18
import com.google.gwt.user.client.Window;
18
import com.google.gwt.user.client.ui.HasWidgets;
19
import com.google.gwt.user.client.ui.HasWidgets;
19
import com.google.gwt.user.client.ui.IsWidget;
20
import com.google.gwt.user.client.ui.IsWidget;
20
 
21
 
21
public class MotsClesImagePresenteur {
22
public class MotsClesImagePresenteur {
22
	
23
	
23
	List<String> motsCles;
24
	List<String> motsCles;
24
	FormulaireSaisieMotsClesImagePresenteur formulaireSaisieMotsClesPresenteur;
25
	FormulaireSaisieMotsClesImagePresenteur formulaireSaisieMotsClesPresenteur;
25
	MotsClesService motsClesService;
26
	MotsClesService motsClesService;
26
	String idImage;
27
	String idImage;
27
	
28
	
28
	public interface Vue extends IsWidget {
29
	public interface Vue extends IsWidget {
29
		public void afficherMotsCles(List<String> listeMotsCles);
30
		public void afficherMotsCles(List<String> listeMotsCles);
30
		HasWidgets getZoneSaisieMotsCles();
31
		HasWidgets getZoneSaisieMotsCles();
31
	}
32
	}
32
 
33
 
33
	private Vue vue;
34
	private Vue vue;
34
	
35
	
35
	public MotsClesImagePresenteur(MotsClesService motsClesService, FormulaireSaisieMotsClesImagePresenteur formulaireSaisieMotsClesPresenteur, Vue vue) {
36
	public MotsClesImagePresenteur(MotsClesService motsClesService, FormulaireSaisieMotsClesImagePresenteur formulaireSaisieMotsClesPresenteur, Vue vue) {
36
		this.formulaireSaisieMotsClesPresenteur = formulaireSaisieMotsClesPresenteur;
37
		this.formulaireSaisieMotsClesPresenteur = formulaireSaisieMotsClesPresenteur;
37
		this.vue = vue;
38
		this.vue = vue;
38
		this.motsClesService = motsClesService;
39
		this.motsClesService = motsClesService;
39
		gererEvemenements();
40
		gererEvemenements();
40
	}
41
	}
41
	
42
	
42
	public void go(HasWidgets composite) {
43
	public void go(HasWidgets composite) {
43
		formulaireSaisieMotsClesPresenteur.go(vue.getZoneSaisieMotsCles());
44
		formulaireSaisieMotsClesPresenteur.go(vue.getZoneSaisieMotsCles());
44
		composite.add(vue.asWidget());
45
		composite.add(vue.asWidget());
45
	}
46
	}
46
 
47
 
47
	public void chargerMotsCles(String idImage) {
48
	public void chargerMotsCles(String idImage) {
48
		this.idImage = idImage;
49
		this.idImage = idImage;
49
		if(motsCles == null) {
50
		if(motsCles == null) {
50
			MotsClesService motsClesService = new MotsClesServiceConcret();
51
			MotsClesService motsClesService = new MotsClesServiceConcret();
51
			motsClesService.getMotsClesImage(idImage, new ListeMotsClesImageCallBack() {				
52
			motsClesService.getMotsClesImage(idImage, new ListeMotsClesImageCallBack() {				
52
				@Override
53
				@Override
53
				public void surRetour(List<String> objetRetour) {
54
				public void surRetour(List<String> objetRetour) {
54
					motsCles = objetRetour;
55
					motsCles = objetRetour;
55
					vue.afficherMotsCles(motsCles);
56
					vue.afficherMotsCles(motsCles);
56
				}
57
				}
57
			});
58
			});
58
		}
59
		}
59
	}
60
	}
60
	
61
	
61
	public void gererEvemenements() {
62
	public void gererEvemenements() {
62
		BusEvenementiel.getInstance().addHandler(EvenementAjoutMotCleImage.TYPE, new GestionnaireEvenementAjoutMotCleImage() {
63
		BusEvenementiel.getInstance().addHandler(EvenementAjoutMotCleImage.TYPE, new GestionnaireEvenementAjoutMotCleImage() {
63
			@Override
64
			@Override
64
			public void onAjoutMotCleImage(EvenementAjoutMotCleImage event) {
65
			public void onAjoutMotCleImage(EvenementAjoutMotCleImage event) {
65
				if(idImage != null && idImage.equals(event.getIdImage())) {
66
				if(idImage != null && idImage.equals(event.getIdImage())) {
-
 
67
					List<String> motsClesAjoutes = event.getMotsCles();
-
 
68
					for (Iterator iterator = motsClesAjoutes.iterator(); iterator
-
 
69
							.hasNext();) {
-
 
70
						String string = (String) iterator.next();
66
					motsCles.add(event.getMotCle());
71
						motsCles.add(string);
-
 
72
					}
67
					vue.afficherMotsCles(motsCles);
73
					vue.afficherMotsCles(motsCles);
68
					formulaireSaisieMotsClesPresenteur.viderChampSaisie();
74
					formulaireSaisieMotsClesPresenteur.viderChampSaisie();
69
				}
75
				}
70
			}
76
			}
71
		});
77
		});
72
	}
78
	}
-
 
79
 
-
 
80
	public void focuserChampsSaisie() {
-
 
81
		formulaireSaisieMotsClesPresenteur.focuserChampSaisie();
-
 
82
	}
73
}
83
}