Subversion Repositories eFlore/Applications.cel

Rev

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

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