Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 62 Rev 77
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
import org.tela_botanica.client.interfaces.Rafraichissable;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
-
 
5
 
5
 
6
import com.google.gwt.user.client.Window;
6
import com.google.gwt.user.client.ui.Label;
7
import com.google.gwt.user.client.ui.Label;
7
import com.gwtext.client.core.EventObject;
8
import com.gwtext.client.core.EventObject;
8
import com.gwtext.client.core.NameValuePair;
9
import com.gwtext.client.core.NameValuePair;
9
import com.gwtext.client.widgets.Button;
10
import com.gwtext.client.widgets.Button;
10
import com.gwtext.client.widgets.Panel;
11
import com.gwtext.client.widgets.Panel;
11
import com.gwtext.client.widgets.TabPanel;
12
import com.gwtext.client.widgets.TabPanel;
12
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
13
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
13
import com.gwtext.client.widgets.form.DateField;
14
import com.gwtext.client.widgets.form.DateField;
14
import com.gwtext.client.widgets.form.TextArea;
15
import com.gwtext.client.widgets.form.TextArea;
15
import com.gwtext.client.widgets.form.TextField;
16
import com.gwtext.client.widgets.form.TextField;
16
import com.gwtext.client.widgets.grid.GridPanel;
17
import com.gwtext.client.widgets.grid.GridPanel;
17
import com.gwtext.client.widgets.grid.GridView;
18
import com.gwtext.client.widgets.grid.GridView;
18
import com.gwtext.client.widgets.grid.PropertyGridPanel;
19
import com.gwtext.client.widgets.grid.PropertyGridPanel;
19
import com.gwtext.client.widgets.grid.event.GridCellListenerAdapter;
20
import com.gwtext.client.widgets.grid.event.GridCellListenerAdapter;
20
import com.gwtext.client.widgets.layout.FitLayout;
21
import com.gwtext.client.widgets.layout.FitLayout;
21
import com.gwtext.client.widgets.layout.VerticalLayout;
22
import com.gwtext.client.widgets.layout.VerticalLayout;
22
 
23
 
23
/**
24
/**
24
 * Panneau contenant les infos, les métadonnées et l'arbre des mots clés, il
25
 * Panneau contenant les infos, les métadonnées et l'arbre des mots clés, il
25
 * implémente l'interface rafraichissable
26
 * implémente l'interface rafraichissable
26
 * 
27
 * 
27
 * @author aurelien
28
 * @author aurelien
28
 * 
29
 * 
29
 */
30
 */
30
public class PanneauMetadonneesVue extends TabPanel implements Rafraichissable {
31
public class PanneauMetadonneesVue extends TabPanel implements Rafraichissable {
31
 
32
 
32
	/**
33
	/**
33
	 * Le médiateur associé à la vue
34
	 * Le médiateur associé à la vue
34
	 */
35
	 */
35
	private ImageMediateur imediateur = null;
36
	private ImageMediateur imediateur = null;
36
	/**
37
	/**
37
	 * Le panneau des Exifs
38
	 * Le panneau des Exifs
38
	 */
39
	 */
39
	private PropertyGridPanel ExifGrid = null;
40
	private PropertyGridPanel ExifGrid = null;
40
	/**
41
	/**
41
	 * Le panneau des Iptc
42
	 * Le panneau des Iptc
42
	 */
43
	 */
43
	private PropertyGridPanel IptcGrid = null;
44
	private PropertyGridPanel IptcGrid = null;
44
 
45
 
45
	/**
46
	/**
46
	 * La grille pour le panneau des Exifs
47
	 * La grille pour le panneau des Exifs
47
	 */
48
	 */
48
	private GridView gViewExif = null;
49
	private GridView gViewExif = null;
49
	/**
50
	/**
50
	 * La grille pour le panneau de Iptc
51
	 * La grille pour le panneau de Iptc
51
	 */
52
	 */
52
	private GridView gViewIptc = null;
53
	private GridView gViewIptc = null;
53
 
54
 
54
	/**
55
	/**
55
	 * L'onglet des Exifs
56
	 * L'onglet des Exifs
56
	 */
57
	 */
57
	private Panel panneauExifGrid = null;
58
	private Panel panneauExifGrid = null;
58
	/**
59
	/**
59
	 * L'onglet des Iptc
60
	 * L'onglet des Iptc
60
	 */
61
	 */
61
	private Panel panneauIptcGrid = null;
62
	private Panel panneauIptcGrid = null;
62
	/**
63
	/**
63
	 * L'onglet des infos
64
	 * L'onglet des infos
64
	 */
65
	 */
65
	private Panel panneauInfoGrid = null;
66
	private Panel panneauInfoGrid = null;
66
	/**
67
	/**
67
	 * L'onglet des mots clés
68
	 * L'onglet des mots clés
68
	 */
69
	 */
69
	private ArbreMotsClesVue panneauMotsCles = null;
70
	private ArbreMotsClesVue panneauMotsCles = null;
70
 
71
 
71
	/**
72
	/**
72
	 * Le champ commentaire
73
	 * Le champ commentaire
73
	 */
74
	 */
74
	private TextField commentaireGeneral = null;
75
	private TextField commentaireGeneral = null;
75
	/**
76
	/**
76
	 * Le champ date
77
	 * Le champ date
77
	 */
78
	 */
78
	private DateField dateImage = null;
79
	private DateField dateImage = null;
79
	
80
	
80
	/**
81
	/**
81
	 * La mini liste des observations
82
	 * La mini liste des observations
82
	 */
83
	 */
83
	private MiniListeObservationVue miniListeObservation = null ;
84
	private MiniListeObservationVue miniListeObservation = null ;
84
	/**
85
	/**
85
	 * Le bouton de validation
86
	 * Le bouton de validation
86
	 */
87
	 */
87
	Button validerInfo = null;
88
	Button validerInfo = null;
88
 
89
 
89
	/**
90
	/**
90
	 * Barre de notation
91
	 * Barre de notation
91
	 */
92
	 */
92
	BarreNotationVue noteVue = null;
93
	BarreNotationVue noteVue = null;
93
 
94
 
94
	/**
95
	/**
95
	 * Booleen d'instanciation
96
	 * Booleen d'instanciation
96
	 */
97
	 */
97
	boolean estInstancie = false;
98
	boolean estInstancie = false;
98
 
99
 
99
	/**
100
	/**
100
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
101
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
101
	 */
102
	 */
102
	@SuppressWarnings("unused")
103
	@SuppressWarnings("unused")
103
	private PanneauMetadonneesVue() {
104
	private PanneauMetadonneesVue() {
104
		super();
105
		super();
105
	}
106
	}
106
 
107
 
107
	/**
108
	/**
108
	 * Constructeur avec argument
109
	 * Constructeur avec argument
109
	 * 
110
	 * 
110
	 * @param im
111
	 * @param im
111
	 */
112
	 */
112
	public PanneauMetadonneesVue(ImageMediateur im) {
113
	public PanneauMetadonneesVue(ImageMediateur im) {
113
		super();
114
		super();
114
 
115
 
115
		// on associe le médiateur
116
		// on associe le médiateur
116
		imediateur = im;
117
		imediateur = im;
117
 
118
 
118
		// on crée et dispose les panneaux et les champs
119
		// on crée et dispose les panneaux et les champs
119
		panneauExifGrid = new Panel("Exif");
120
		panneauExifGrid = new Panel("Exif");
120
		panneauIptcGrid = new Panel("Iptc");
121
		panneauIptcGrid = new Panel("Iptc");
121
		panneauInfoGrid = new Panel("info");
122
		panneauInfoGrid = new Panel("info");
122
		panneauMotsCles = new ArbreMotsClesVue(im);
123
		panneauMotsCles = new ArbreMotsClesVue(im);
123
		panneauMotsCles.setHeight("500px");
124
		panneauMotsCles.setHeight("500px");
124
 
125
 
125
		Panel sousPanneauInfosGenerales = new Panel("Infos Générales");
126
		Panel sousPanneauInfosGenerales = new Panel("Infos Générales");
126
		sousPanneauInfosGenerales.setLayout(new VerticalLayout());
127
		sousPanneauInfosGenerales.setLayout(new VerticalLayout());
127
		sousPanneauInfosGenerales.setBorder(false);
128
		sousPanneauInfosGenerales.setBorder(false);
128
		sousPanneauInfosGenerales.setHeight(200);
129
		sousPanneauInfosGenerales.setHeight(200);
129
		sousPanneauInfosGenerales.setAutoWidth(true);
130
		sousPanneauInfosGenerales.setAutoWidth(true);
130
		sousPanneauInfosGenerales.setMargins(5);
131
		sousPanneauInfosGenerales.setMargins(5);
131
		sousPanneauInfosGenerales.setPaddings(5);
132
		sousPanneauInfosGenerales.setPaddings(5);
132
		sousPanneauInfosGenerales.setCollapsible(true);
133
		sousPanneauInfosGenerales.setCollapsible(true);
133
 
134
 
134
		Label labelComm = new Label("Commentaires :");
135
		Label labelComm = new Label("Commentaires :");
135
		labelComm.setHeight("20px");
136
		labelComm.setHeight("20px");
136
		commentaireGeneral = new TextArea();
137
		commentaireGeneral = new TextArea();
137
		commentaireGeneral.setWidth("90%");
138
		commentaireGeneral.setWidth("90%");
138
		Label labelDate = new Label("Date :");
139
		Label labelDate = new Label("Date :");
139
		Label labelNote = new Label("Note :");
140
		Label labelNote = new Label("Note :");
140
 
141
 
141
		panneauMotsCles.setBorder(false);
142
		panneauMotsCles.setBorder(false);
142
 
143
 
143
		labelDate.setHeight("20px");
144
		labelDate.setHeight("20px");
144
 
145
 
145
		dateImage = new DateField();
146
		dateImage = new DateField();
146
		dateImage.setAutoWidth(true);
147
		dateImage.setAutoWidth(true);
147
		dateImage.setFormat("d/m/Y");
148
		dateImage.setFormat("d/m/Y");
148
 
149
 
149
		validerInfo = new Button("OK");
150
		validerInfo = new Button("OK");
150
 
151
 
151
		noteVue = new BarreNotationVue(im, 5);
152
		noteVue = new BarreNotationVue(im, 5);
152
		
153
		
153
		Panel panneauMiniListeObservation = new Panel("Observations") ;
154
		Panel panneauMiniListeObservation = new Panel("Observations") ;
154
		panneauMiniListeObservation.setLayout(new FitLayout()) ;
155
		panneauMiniListeObservation.setLayout(new FitLayout()) ;
155
		panneauMiniListeObservation.setHeight(800) ;
156
		panneauMiniListeObservation.setHeight(800) ;
156
		panneauMiniListeObservation.setAutoWidth(true) ;
157
		panneauMiniListeObservation.setAutoWidth(true) ;
157
		miniListeObservation = new MiniListeObservationVue(im) ;
158
		miniListeObservation = new MiniListeObservationVue(im) ;
158
		panneauMiniListeObservation.add(miniListeObservation) ;
159
		panneauMiniListeObservation.add(miniListeObservation) ;
159
 
160
 
160
		sousPanneauInfosGenerales.add(labelComm);
161
		sousPanneauInfosGenerales.add(labelComm);
161
		sousPanneauInfosGenerales.add(commentaireGeneral);
162
		sousPanneauInfosGenerales.add(commentaireGeneral);
162
		sousPanneauInfosGenerales.add(labelDate);
163
		sousPanneauInfosGenerales.add(labelDate);
163
		sousPanneauInfosGenerales.add(dateImage);
164
		sousPanneauInfosGenerales.add(dateImage);
164
		sousPanneauInfosGenerales.add(labelNote);
165
		sousPanneauInfosGenerales.add(labelNote);
165
		sousPanneauInfosGenerales.add(noteVue);
166
		sousPanneauInfosGenerales.add(noteVue);
166
		sousPanneauInfosGenerales.add(validerInfo);
167
		sousPanneauInfosGenerales.add(validerInfo);
167
		sousPanneauInfosGenerales.setAutoHeight(true);
168
		sousPanneauInfosGenerales.setAutoHeight(true);
168
		panneauMotsCles.setAutoHeight(true);
169
		panneauMotsCles.setAutoHeight(true);
169
 
170
 
170
		panneauInfoGrid.setBorder(false);
171
		panneauInfoGrid.setBorder(false);
171
		panneauInfoGrid.setAutoHeight(true);
172
		panneauInfoGrid.setAutoHeight(true);
172
 
173
 
173
		panneauInfoGrid.add(sousPanneauInfosGenerales);
174
		panneauInfoGrid.add(sousPanneauInfosGenerales);
174
		panneauInfoGrid.add(panneauMotsCles);
175
		panneauInfoGrid.add(panneauMotsCles);
175
 
176
 
176
		this.add(panneauInfoGrid);
177
		this.add(panneauInfoGrid);
177
		this.add(panneauExifGrid);
178
		this.add(panneauExifGrid);
178
		this.add(panneauIptcGrid);
179
		this.add(panneauIptcGrid);
179
		this.add(panneauMiniListeObservation) ;
180
		this.add(panneauMiniListeObservation) ;
180
 
181
 
181
		gViewExif = new GridView();
182
		gViewExif = new GridView();
182
		gViewExif.setForceFit(true);
183
		gViewExif.setForceFit(true);
183
 
184
 
184
		ExifGrid = new PropertyGridPanel();
185
		ExifGrid = new PropertyGridPanel();
185
		ExifGrid.setId("meta_exif");
186
		ExifGrid.setId("meta_exif");
186
		ExifGrid.setView(gViewExif);
187
		ExifGrid.setView(gViewExif);
187
		ExifGrid.setNameText("Métadonnées Exif");
188
		ExifGrid.setNameText("Métadonnées Exif");
188
		ExifGrid.setAutoWidth(true);
189
		ExifGrid.setAutoWidth(true);
189
		ExifGrid.setAutoHeight(true);
190
		ExifGrid.setAutoHeight(true);
190
		ExifGrid.setSorted(false);
191
		ExifGrid.setSorted(false);
191
 
192
 
192
		gViewIptc = new GridView();
193
		gViewIptc = new GridView();
193
		gViewIptc.setForceFit(true);
194
		gViewIptc.setForceFit(true);
194
 
195
 
195
		IptcGrid = new PropertyGridPanel();
196
		IptcGrid = new PropertyGridPanel();
196
		IptcGrid.setId("meta_iptc");
197
		IptcGrid.setId("meta_iptc");
197
		IptcGrid.setView(gViewIptc);
198
		IptcGrid.setView(gViewIptc);
198
 
199
 
199
		IptcGrid.setNameText("Métadonnées IPTC");
200
		IptcGrid.setNameText("Métadonnées IPTC");
200
		IptcGrid.setAutoWidth(true);
201
		IptcGrid.setAutoWidth(true);
201
		IptcGrid.setAutoHeight(true);
202
		IptcGrid.setAutoHeight(true);
202
		IptcGrid.setSorted(false);
203
		IptcGrid.setSorted(false);
203
 
204
 
204
		panneauExifGrid.add(ExifGrid);
205
		panneauExifGrid.add(ExifGrid);
205
		panneauIptcGrid.add(IptcGrid);
206
		panneauIptcGrid.add(IptcGrid);
206
 
207
 
207
		// on ajoute les listeners
208
		// on ajoute les listeners
208
		ajouterListeners();
209
		ajouterListeners();
209
 
210
 
210
		// on effectue le rendu
211
		// on effectue le rendu
211
		this.doLayout(true);
212
		this.doLayout(true);
212
 
213
 
213
	}
214
	}
214
 
215
 
215
	private void ajouterListeners() {
216
	private void ajouterListeners() {
216
		// on ajoute un écouteur
217
		// on ajoute un écouteur
217
		validerInfo.addListener(new ButtonListenerAdapter() {
218
		validerInfo.addListener(new ButtonListenerAdapter() {
218
 
219
 
219
			// gestion du clic
220
			// gestion du clic
220
 
221
 
221
			public void onClick(Button button, EventObject e) {
222
			public void onClick(Button button, EventObject e) {
222
 
223
 
223
				button.focus();
224
				button.focus();
224
				// lors du clic sur le bouton valider on met à jour les
225
				// lors du clic sur le bouton valider on met à jour les
225
				// commentaires et la date
226
				// commentaires et la date
226
				getIMediateur().mettreAJourInfo(commentaireGeneral.getText(),
227
				getIMediateur().mettreAJourInfo(commentaireGeneral.getText(),
227
						dateImage.getRawValue(), noteVue.getNote());
228
						dateImage.getRawValue(), noteVue.getNote());
228
 
229
 
229
			}
230
			}
230
		});
231
		});
231
 
232
 
232
		// gestion des clics dans la grille
233
		// gestion des clics dans la grille
233
		ExifGrid.addGridCellListener(new GridCellListenerAdapter() {
234
		ExifGrid.addGridCellListener(new GridCellListenerAdapter() {
234
 
235
 
235
			// lors d'un clic d'une cellule
236
			// lors d'un clic d'une cellule
236
 
237
 
237
			public void onCellClick(GridPanel grid, int rowIndex, int colIndex,
238
			public void onCellClick(GridPanel grid, int rowIndex, int colIndex,
238
					EventObject e) {
239
					EventObject e) {
239
 
240
 
240
				// on empeche l'édition
241
				// on empeche l'édition
241
				e.stopEvent();
242
				e.stopEvent();
242
				ExifGrid.stopEditing();
243
				ExifGrid.stopEditing();
243
 
244
 
244
			}
245
			}
245
 
246
 
246
			// lors du double clic sur une cellule
247
			// lors du double clic sur une cellule
247
 
248
 
248
			public void onCellDblClick(GridPanel grid, int rowIndex,
249
			public void onCellDblClick(GridPanel grid, int rowIndex,
249
					int colIndex, EventObject e) {
250
					int colIndex, EventObject e) {
250
 
251
 
251
				// on empêche l'édition
252
				// on empêche l'édition
252
				e.stopEvent();
253
				e.stopEvent();
253
				ExifGrid.stopEditing();
254
				ExifGrid.stopEditing();
254
 
255
 
255
			}
256
			}
256
 
257
 
257
		});
258
		});
258
 
259
 
259
		IptcGrid.addGridCellListener(new GridCellListenerAdapter() {
260
		IptcGrid.addGridCellListener(new GridCellListenerAdapter() {
260
 
261
 
261
			// lors d'un clic d'une cellule
262
			// lors d'un clic d'une cellule
262
 
263
 
263
			public void onCellClick(GridPanel grid, int rowIndex, int colIndex,
264
			public void onCellClick(GridPanel grid, int rowIndex, int colIndex,
264
					EventObject e) {
265
					EventObject e) {
265
				// on empeche l'édition
266
				// on empeche l'édition
266
				e.stopEvent();
267
				e.stopEvent();
267
				ExifGrid.stopEditing();
268
				ExifGrid.stopEditing();
268
 
269
 
269
			}
270
			}
270
 
271
 
271
			// lors d'un double clic d'une cellule
272
			// lors d'un double clic d'une cellule
272
 
273
 
273
			public void onCellDblClick(GridPanel grid, int rowIndex,
274
			public void onCellDblClick(GridPanel grid, int rowIndex,
274
					int colIndex, EventObject e) {
275
					int colIndex, EventObject e) {
275
				// on empeche l'édition
276
				// on empeche l'édition
276
				e.stopEvent();
277
				e.stopEvent();
277
				ExifGrid.stopEditing();
278
				ExifGrid.stopEditing();
278
 
279
 
279
			}
280
			}
280
 
281
 
281
		});
282
		});
282
	}
283
	}
283
 
284
 
284
	/**
285
	/**
285
	 * Desactive visuellement ce panneau
286
	 * Desactive visuellement ce panneau
286
	 */
287
	 */
287
	public void desactiverPanneau() {
288
	public void desactiverPanneau() {
288
		this.setDisabled(true);
289
		this.setDisabled(true);
289
	}
290
	}
290
 
291
 
291
	/**
292
	/**
292
	 * Active visuellement ce panneau
293
	 * Active visuellement ce panneau
293
	 */
294
	 */
294
	public void activerPanneau() {
295
	public void activerPanneau() {
295
		this.setDisabled(false);
296
		this.setDisabled(false);
296
	}
297
	}
297
 
298
 
298
	/**
299
	/**
299
	 * Accesseur pour le médiateur
300
	 * Accesseur pour le médiateur
300
	 * 
301
	 * 
301
	 * @return le médiateur associé à la vue
302
	 * @return le médiateur associé à la vue
302
	 */
303
	 */
303
	public ImageMediateur getIMediateur() {
304
	public ImageMediateur getIMediateur() {
304
		return imediateur;
305
		return imediateur;
305
	}
306
	}
306
 
307
 
307
	/**
308
	/**
308
	 * Méthode héritée de l'interface rafraichissable
309
	 * Méthode héritée de l'interface rafraichissable
309
	 * 
310
	 * 
310
	 * @param nouvelleDonnees
311
	 * @param nouvelleDonnees
311
	 *            les nouvelles données
312
	 *            les nouvelles données
312
	 * @param repandreRafraichissement
313
	 * @param repandreRafraichissement
313
	 *            le booleen de notification de mise à jour
314
	 *            le booleen de notification de mise à jour
314
	 */
315
	 */
315
	public void rafraichir(Object nouvelleDonnees,
316
	public void rafraichir(Object nouvelleDonnees,
316
			boolean repandreRafraichissement) {
317
			boolean repandreRafraichissement) {
317
 
318
 
318
		// si on reçoit un tableau d'objets
319
		// si on reçoit un tableau d'objets
319
		if (nouvelleDonnees instanceof Object[]) {
320
		if (nouvelleDonnees instanceof Object[]) {
320
			// extrait infos, exifs et iptc
321
			// extrait infos, exifs et iptc
321
			Object meta[] = (Object[]) nouvelleDonnees;
322
			Object meta[] = (Object[]) nouvelleDonnees;
322
			String[][] exif = (String[][]) meta[0];
323
			String[][] exif = (String[][]) meta[0];
323
			String[][] iptc = (String[][]) meta[1];
324
			String[][] iptc = (String[][]) meta[1];
324
			String[][] gen = (String[][]) meta[2];
325
			String[][] gen = (String[][]) meta[2];
325
 
326
 
326
			NameValuePair[] exifSource = new NameValuePair[exif.length];
327
			NameValuePair[] exifSource = new NameValuePair[exif.length];
327
			NameValuePair[] iptcSource = new NameValuePair[iptc.length];
328
			NameValuePair[] iptcSource = new NameValuePair[iptc.length];
328
 
329
 
329
			int maxLength;
330
			int maxLength;
330
			if (exif.length <= iptc.length) {
331
			if (exif.length <= iptc.length) {
331
				maxLength = iptc.length;
332
				maxLength = iptc.length;
332
			} else {
333
			} else {
333
				maxLength = exif.length;
334
				maxLength = exif.length;
334
			}
335
			}
335
 
336
 
336
			for (int i = 0; i < maxLength; i++) {
337
			for (int i = 0; i < maxLength; i++) {
337
				if (i < exif.length && !exif[i][0].equals("null")) {
338
				if (i < exif.length && !exif[i][0].equals("null")) {
338
					exifSource[i] = new NameValuePair(exif[i][0], exif[i][1]);
339
					exifSource[i] = new NameValuePair(exif[i][0], exif[i][1]);
339
				}
340
				}
340
 
341
 
341
				if (i < iptc.length && !iptc[i][0].equals("null")) {
342
				if (i < iptc.length && !iptc[i][0].equals("null")) {
342
					iptcSource[i] = new NameValuePair(iptc[i][0], iptc[i][1]);
343
					iptcSource[i] = new NameValuePair(iptc[i][0], iptc[i][1]);
343
				}
344
				}
344
			}
345
			}
345
 
346
 
346
			// on met à jour les champs avec la bonne valeur
347
			// on met à jour les champs avec la bonne valeur
347
			commentaireGeneral.setValue(gen[0][1]);
348
			commentaireGeneral.setValue(gen[0][1]);
348
			dateImage.setRawValue(gen[1][1]);
349
			dateImage.setRawValue(gen[1][1]);
349
 
350
 
350
			// et on met à jour les données pour l'affichage
351
			// et on met à jour les données pour l'affichage
351
			ExifGrid.setSource(exifSource);
352
			ExifGrid.setSource(exifSource);
352
			IptcGrid.setSource(iptcSource);
353
			IptcGrid.setSource(iptcSource);
353
 
354
 
354
		}
355
		}
355
	}
356
	}
356
 
357
 
357
	/**
358
	/**
358
	 * Accesseur pour le panneau des mots clés
359
	 * Accesseur pour le panneau des mots clés
359
	 * 
360
	 * 
360
	 * @return the panneauMotsCles
361
	 * @return the panneauMotsCles
361
	 */
362
	 */
362
	public ArbreMotsClesVue getPanneauMotsCles() {
363
	public ArbreMotsClesVue getPanneauMotsCles() {
363
		return panneauMotsCles;
364
		return panneauMotsCles;
364
	}
365
	}
365
 
366
 
366
	public BarreNotationVue getNoteVue() {
367
	public BarreNotationVue getNoteVue() {
367
		return noteVue;
368
		return noteVue;
368
	}
369
	}
369
	
370
	
370
	public MiniListeObservationVue getMiniListeObservation()
371
	public MiniListeObservationVue getMiniListeObservation()
371
	{
372
	{
372
		return miniListeObservation ;
373
		return miniListeObservation ;
373
	}
374
	}
374
}
375
}