Subversion Repositories eFlore/Applications.cel

Rev

Rev 99 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 99 Rev 100
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
2
 
2
 
3
import org.tela_botanica.client.image.ImageMediateur;
3
import org.tela_botanica.client.image.ImageMediateur;
4
 
4
 
5
import com.gwtext.client.core.EventObject;
5
import com.gwtext.client.core.EventObject;
6
import com.gwtext.client.widgets.menu.BaseItem;
6
import com.gwtext.client.widgets.menu.BaseItem;
7
import com.gwtext.client.widgets.menu.Item;
7
import com.gwtext.client.widgets.menu.Item;
8
import com.gwtext.client.widgets.menu.Menu;
8
import com.gwtext.client.widgets.menu.Menu;
9
import com.gwtext.client.widgets.menu.event.MenuListenerAdapter;
9
import com.gwtext.client.widgets.menu.event.MenuListenerAdapter;
10
 
10
 
11
/**
11
/**
12
 * Menu de gestion des images
12
 * Menu de gestion des images
13
 * 
13
 * 
14
 * @author aurelien
14
 * @author aurelien
15
 * 
15
 * 
16
 */
16
 */
17
public class MenuImageVue extends Menu {
17
public class MenuImageVue extends Menu {
18
 
18
 
19
	/**
19
	/**
20
	 * Le médiateur associé à la vue
20
	 * Le médiateur associé à la vue
21
	 */
21
	 */
22
	private ImageMediateur iMediateur;
22
	private ImageMediateur iMediateur;
23
 
23
 
24
	/**
24
	/**
25
	 * Item pour l'upload
25
	 * Item pour l'upload
26
	 */
26
	 */
27
	private Item uploaderImage = null;
27
	private Item uploaderImage = null;
28
	/**
28
	/**
29
	 * Item pour la suppression
29
	 * Item pour la suppression
30
	 */
30
	 */
31
	private Item supprimerImage = null;
31
	private Item supprimerImage = null;
32
 
32
 
33
	/**
33
	/**
34
	 * Item pour l'ajout d'images à la selection
34
	 * Item pour l'ajout d'images à la selection
35
	 */
35
	 */
36
	private Item ajouterImageSelection = null;
36
	private Item ajouterImageSelection = null;
37
 
37
 
38
	/**
38
	/**
39
	 * Item pour vider la selection d'images
39
	 * Item pour vider la selection d'images
40
	 */
40
	 */
41
	private Item viderSelection = null;
41
	private Item viderSelection = null;
42
 
42
 
43
	/**
43
	/**
44
	 * Item pour lier la selection d'images
44
	 * Item pour lier la selection d'images
45
	 */
45
	 */
46
	private Item afficherSelection = null;
46
	private Item afficherSelection = null;
47
	
-
 
48
	/**
-
 
49
	 * Item pour lier les observations associées
-
 
50
	 */
-
 
51
	private Item voirObs = null;
-
 
52
 
47
 
53
	/**
48
	/**
54
	 * Constructeur sans argument (privé car ne doit être utilisé)
49
	 * Constructeur sans argument (privé car ne doit être utilisé)
55
	 */
50
	 */
56
	@SuppressWarnings("unused")
51
	@SuppressWarnings("unused")
57
	private MenuImageVue() {
52
	private MenuImageVue() {
58
		super();
53
		super();
59
	}
54
	}
60
 
55
 
61
	/**
56
	/**
62
	 * Constructeur avec paramètre
57
	 * Constructeur avec paramètre
63
	 * 
58
	 * 
64
	 * @param im
59
	 * @param im
65
	 *            le médiateur à associer
60
	 *            le médiateur à associer
66
	 */
61
	 */
67
	public MenuImageVue(ImageMediateur im) {
62
	public MenuImageVue(ImageMediateur im) {
68
		super();
63
		super();
69
 
64
 
70
		iMediateur = im;
65
		iMediateur = im;
71
 
66
 
72
		// on construit le menu
67
		// on construit le menu
73
		uploaderImage = new Item("Uploader des images");
68
		uploaderImage = new Item("Uploader des images");
74
		supprimerImage = new Item("Supprimer les images selectionnées");
69
		supprimerImage = new Item("Supprimer les images selectionnées");
75
		ajouterImageSelection = new Item(
70
		ajouterImageSelection = new Item(
76
				"Ajouter les images sélectionnées au tampon");
71
				"Ajouter les images sélectionnées au tampon");
77
		viderSelection = new Item("Vider le tampon");
72
		viderSelection = new Item("Vider le tampon");
78
		afficherSelection = new Item("Afficher le tampon");
73
		afficherSelection = new Item("Afficher le tampon");
79
		voirObs = new Item("Voir les observations associées à cette image") ;
-
 
80
		addItem(uploaderImage);
74
		addItem(uploaderImage);
81
		addItem(supprimerImage);
75
		addItem(supprimerImage);
82
		addSeparator() ;
76
		addSeparator() ;
83
		addItem(ajouterImageSelection);
77
		addItem(ajouterImageSelection);
84
		addItem(viderSelection);
78
		addItem(viderSelection);
85
		addItem(afficherSelection);
79
		addItem(afficherSelection);
86
		addItem(voirObs) ;
-
 
87
 
80
 
88
		// on ajoute les listeners
81
		// on ajoute les listeners
89
		ajouterListeners();
82
		ajouterListeners();
90
	}
83
	}
91
 
84
 
92
	/**
85
	/**
93
	 * Ajoute les listeners pour la gestions des évènements
86
	 * Ajoute les listeners pour la gestions des évènements
94
	 */
87
	 */
95
	private void ajouterListeners() {
88
	private void ajouterListeners() {
96
		this.addListener(new MenuListenerAdapter() {
89
		this.addListener(new MenuListenerAdapter() {
97
 
90
 
98
			// gestion du clic sur un item
91
			// gestion du clic sur un item
99
 
92
 
100
			public void onItemClick(BaseItem item, EventObject e) {
93
			public void onItemClick(BaseItem item, EventObject e) {
101
 
94
 
102
				// si c'est l'upload
95
				// si c'est l'upload
103
				if (item.equals(uploaderImage)) {
96
				if (item.equals(uploaderImage)) {
104
					// on notifie le médiateur
97
					// on notifie le médiateur
105
					getIMediateur().uploaderImages();
98
					getIMediateur().uploaderImages();
106
				}
99
				}
107
 
100
 
108
				// si c'est la suppression
101
				// si c'est la suppression
109
				if (item.equals(supprimerImage)) {
102
				if (item.equals(supprimerImage)) {
110
					// on notifie le médiateur
103
					// on notifie le médiateur
111
					getIMediateur().supprimerImages();
104
					getIMediateur().supprimerImages();
112
				}
105
				}
113
 
106
 
114
				// si c'est l'ajout à la sélection
107
				// si c'est l'ajout à la sélection
115
				if (item.equals(ajouterImageSelection)) {
108
				if (item.equals(ajouterImageSelection)) {
116
					getIMediateur().ajouterImagesSelection();
109
					getIMediateur().ajouterImagesSelection();
117
				}
110
				}
118
 
111
 
119
				// si c'est le vidage de la sélection
112
				// si c'est le vidage de la sélection
120
				if (item.equals(viderSelection)) {
113
				if (item.equals(viderSelection)) {
121
					getIMediateur().viderSelection();
114
					getIMediateur().viderSelection();
122
				}
115
				}
123
 
116
 
124
				// si c'est l'affichage de la selection
117
				// si c'est l'affichage de la selection
125
				if (item.equals(afficherSelection)) {
118
				if (item.equals(afficherSelection)) {
126
					getIMediateur().afficherIdSelectionImages();
119
					getIMediateur().afficherIdSelectionImages();
127
				}
120
				}
128
				
-
 
129
				if (item.equals(voirObs)) {
-
 
130
					getIMediateur().obtenirObservationsAssociees() ;
-
 
131
				}
-
 
132
 
121
				
133
				// enfin, on cache le menu
122
				// enfin, on cache le menu
134
				hide();
123
				hide();
135
 
124
 
136
			}
125
			}
137
 
126
 
138
		});
127
		});
139
	}
128
	}
140
 
129
 
141
	/**
130
	/**
142
	 * Accesseur pour le médiateur
131
	 * Accesseur pour le médiateur
143
	 * 
132
	 * 
144
	 * @return le médiateur associé à la vue
133
	 * @return le médiateur associé à la vue
145
	 */
134
	 */
146
	public ImageMediateur getIMediateur() {
135
	public ImageMediateur getIMediateur() {
147
		return iMediateur;
136
		return iMediateur;
148
	}
137
	}
149
 
138
 
150
}
139
}