Subversion Repositories eFlore/Applications.cel

Rev

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

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