Subversion Repositories eFlore/Applications.cel

Rev

Rev 1007 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1007 Rev 1009
Line 51... Line 51...
51
	/**
51
	/**
52
	 * Une string permettant connaitre les mots clés cochés en cours séparés par
52
	 * Une string permettant connaitre les mots clés cochés en cours séparés par
53
	 * des virgules
53
	 * des virgules
54
	 */
54
	 */
55
	private String motsClesEnCours = "";
55
	private String motsClesEnCours = "";
-
 
56
	
-
 
57
	private String[] tableauMotsClesEnCours = new String[0];
56
	/**
58
	/**
57
	 * Tableau contenant les mots clés qui n'ont pas encore été jaouté à l'arbre
59
	 * Tableau contenant les mots clés qui n'ont pas encore été jaouté à l'arbre
58
	 * (sert au lazy rendering quand on reçoit des mots clés avant que le rendu
60
	 * (sert au lazy rendering quand on reçoit des mots clés avant que le rendu
59
	 * du conteneur n'ai été effectué)
61
	 * du conteneur n'ai été effectué)
60
	 */
62
	 */
Line 176... Line 178...
176
	 * Ajoute les listeners nécessaires pour la gestion des évènements
178
	 * Ajoute les listeners nécessaires pour la gestion des évènements
177
	 */
179
	 */
178
	private void ajouterListeners() {
180
	private void ajouterListeners() {
179
		arbreMotsCles.addListener(new TreePanelListenerAdapter() {
181
		arbreMotsCles.addListener(new TreePanelListenerAdapter() {
Line -... Line 182...
-
 
182
 
-
 
183
			public void onExpandNode(TreeNode node) {		
-
 
184
				cocherMotsCles(tableauMotsClesEnCours);
-
 
185
			}
180
 
186
			
181
			// gestion du clic sur un noeud
187
			// gestion du clic sur un noeud
Line 182... Line 188...
182
			public void onClick(TreeNode node, EventObject e) {
188
			public void onClick(TreeNode node, EventObject e) {
183
 
189
 
Line 194... Line 200...
194
			}
200
			}
Line 195... Line 201...
195
 
201
 
196
			// gestion du double clic sur un noeud
202
			// gestion du double clic sur un noeud
Line -... Line 203...
-
 
203
			public void onDblClick(TreeNode node, EventObject e) {
197
			public void onDblClick(TreeNode node, EventObject e) {
204
 
198
 
205
				modifNoeud = true;
199
				if (!node.getId().equals("racine")) {
206
				if (!node.getId().equals("racine")) {
200
					te.startEdit(node);
207
					te.startEdit(node);
Line 211... Line 218...
211
				usObject[1] = ((String[]) nd.getUserObject())[1];
218
				usObject[1] = ((String[]) nd.getUserObject())[1];
212
				nd.setUserObject(usObject);
219
				nd.setUserObject(usObject);
Line 213... Line 220...
213
 
220
 
214
				// si c'est un nouveau noeud
221
				// si c'est un nouveau noeud
215
				if (ajoutNoeud) {
222
				if (ajoutNoeud) {
216
					// et considère l'ajout achevé
223
					// on considère l'ajout achevé
217
					ajoutNoeud = false;
224
					ajoutNoeud = false;
218
					// on notifie le médiateur de l'ajout et on lui passe
225
					// et on notifie le médiateur de l'ajout et on lui passe
219
					// l'arbre
226
					// l'arbre
220
					getIMediateur().ajouterMotCleDansArbre(nd,
227
					getIMediateur().ajouterMotCleDansArbre(nd,
221
							getArbreMotsCles().getTree());
228
							getArbreMotsCles().getTree());
222
				}
229
				}
Line 282... Line 289...
282
				// liste des mots clés ainsi obtenue
289
				// liste des mots clés ainsi obtenue
283
				getIMediateur().mettreAjourMotsCles(motsClesEnCours,
290
				getIMediateur().mettreAjourMotsCles(motsClesEnCours,
284
						arbreMotsCles.getTree());
291
						arbreMotsCles.getTree());
285
			}
292
			}
286
		});
293
		});
287
		
-
 
288
		/*this.addListener(new PanelListenerAdapter() {
-
 
289
			
-
 
290
			public void onAfterLayout(Container c) {
-
 
291
				if(!arbreCharge) {
-
 
292
					//obtenirArbreMotsCles();
-
 
293
				}
-
 
294
			}
-
 
295
		});*/
-
 
296
 
-
 
297
	}
294
	}
Line 298... Line 295...
298
 
295
 
299
	/**
296
	/**
300
	 * Envoie une demande au médiateur pour obtenir l'arbre des mots clés
297
	 * Envoie une demande au médiateur pour obtenir l'arbre des mots clés
Line 443... Line 440...
443
			// si l'arbre n'était pas encore considéré comme instancié
440
			// si l'arbre n'était pas encore considéré comme instancié
444
			if (!arbreCharge) {
441
			if (!arbreCharge) {
445
				// on signale que oui
442
				// on signale que oui
446
				arbreCharge = true;
443
				arbreCharge = true;
447
			}
444
			}
448
 
-
 
449
			// s'il y a des mots clés en attente (lors du premier rendering)
-
 
450
			if (motsCleInitialises == false && motsClesEnAttente != null) {
-
 
451
				// on les coche
-
 
452
				// cocherMotsCles(motsClesEnAttente) ;
-
 
453
				motsCleInitialises = true;
-
 
454
			}
-
 
455
			
-
 
456
			if(motsClesEnAttente.length > 0) {
-
 
457
						cocherMotsCles(motsClesEnAttente);
-
 
458
			}
-
 
459
		}
445
		}
Line 460... Line 446...
460
 
446
 
461
		// Si on reçoit un tableau de String (cas ou l'on séléectionne une
447
		// Si on reçoit un tableau de String (cas ou l'on séléectionne une
462
		// nouvelle image)
448
		// nouvelle image)
463
		if (nouvelleDonnees instanceof String[]) {
-
 
464
			// et que l'arbre est instancié
-
 
-
 
449
		if (nouvelleDonnees instanceof String[]) {
465
			if (arbreCharge) {
450
 
466
				// le tableau de String contient les id des mots clés associés à
451
				// le tableau de String contient les id des mots clés associés à
467
				// l'image
452
				// l'image
468
				// on coche les mots clés contenu dans le tableau
453
				// on coche les mots clés contenu dans le tableau
469
				String[] motsClesIds = (String[]) nouvelleDonnees;
454
				tableauMotsClesEnCours = (String[]) nouvelleDonnees;
470
				cocherMotsCles(motsClesIds);
-
 
471
				
-
 
472
			}
-
 
473
			// si l'arbre n'est pas encore instancié on met les mots clés en
-
 
474
			// attente
-
 
475
			else {
-
 
476
				motsClesEnAttente = (String[]) nouvelleDonnees;
-
 
477
				
-
 
478
				//Window.alert("des mots clés en attente : "+motsClesEnAttente[0]);
-
 
479
			}
455
				cocherMotsCles(tableauMotsClesEnCours);
480
		}
456
		}
Line 481... Line 457...
481
	}
457
	}
482
 
458