Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
321 aurelien 1
package org.tela_botanica.del.client.vues.plateformedetermination.forum;
2
 
3
import java.util.Date;
4
import java.util.List;
5
 
6
import org.tela_botanica.del.client.modeles.Commentaire;
7
import org.tela_botanica.del.client.modeles.PossesseurDeCommentaires;
8
 
9
import com.google.gwt.i18n.client.DateTimeFormat;
10
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
11
import com.google.gwt.user.client.ui.HTML;
12
import com.google.gwt.user.client.ui.HorizontalPanel;
13
import com.google.gwt.user.client.ui.Tree;
14
import com.google.gwt.user.client.ui.TreeItem;
15
 
16
public class ArbreCommentaireVue extends Tree implements ArbreCommentairePresenteur.Vue {
17
 
18
	public ArbreCommentaireVue() {
19
		super();
20
	}
21
 
22
	public void creerArbreCommentaire(PossesseurDeCommentaires possesseurDeCommentaires) {
23
		TreeItem racineArbreCommentaires = new TreeItem();
24
		addItem(racineArbreCommentaires);
25
		creerListeCommentaireRecursive(racineArbreCommentaires, possesseurDeCommentaires.getListeCommentaires());
26
	}
27
 
28
	private void creerListeCommentaireRecursive(TreeItem parentTreeItem, List<Commentaire> commentaires) {
29
 
30
		for (Commentaire commentaire : commentaires) {
31
			HorizontalPanel p = new HorizontalPanel();
32
			String commentaireHTML = commentaire.getCommentaire() +" "+ commentaire.getAuteur() + "-"+formaterDatePourForum(commentaire.getDate());
33
			HTML commentaireWidget = new HTML(commentaireHTML);
34
			parentTreeItem.setWidget(commentaireWidget);
35
			if (commentaire.getListeCommentaires().size() != 0) {
36
				TreeItem childTreeItem = new TreeItem();
37
				parentTreeItem.addItem(childTreeItem);
38
				creerListeCommentaireRecursive(childTreeItem, commentaire.getListeCommentaires());
39
			}
40
		}
41
		parentTreeItem.setState(true);
42
 
43
	}
44
 
45
	private String formaterDatePourForum(Date date) {
46
		return DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(date);
47
	}
48
}