Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 134 → Rev 135

/trunk/src/org/tela_botanica/client/vues/ArbreMotsClesFiltreVue.java
10,7 → 10,10
import com.gwtext.client.data.NodeTraversalCallback;
import com.gwtext.client.data.Tree;
import com.gwtext.client.widgets.Component;
import com.gwtext.client.widgets.Container;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.event.ContainerListener;
import com.gwtext.client.widgets.event.ContainerListenerAdapter;
import com.gwtext.client.widgets.event.PanelListenerAdapter;
import com.gwtext.client.widgets.tree.TreeNode;
import com.gwtext.client.widgets.tree.TreePanel;
131,12 → 134,6
// on ajoute les listeners d'évenements
ajouterListeners();
 
// et on demande l'arbre des mots clés
getIMediateur()
.obtenirArbreMotsCles(
getIMediateur().getPanneauFiltres()
.getMotsClesFiltre());
 
// enfin on considère le composant comme instancié
estInstancie = true;
 
149,7 → 146,7
* ajoute les listeners pour les boutons et le cochage des mots clés
*/
private void ajouterListeners() {
 
}
 
/**
162,17 → 159,13
if (nouvelleDonnees instanceof Tree) {
Tree nouvelArbre = (Tree) nouvelleDonnees;
 
// on vide tous les noeuds
arbreMotsCles.getRootNode().eachChild(new NodeTraversalCallback() {
// on vide tous les noeuds de l'ancien arbre
Node[] rootChild = arbreMotsCles.getRootNode().getChildNodes();
for (int i = 0; i < rootChild.length; i++) {
rootChild[i].remove();
}
 
public boolean execute(Node node) {
 
node.remove();
return true;
}
 
});
 
// et on recopie le nouvel arbre
copierFilsNoeud(nouvelArbre.getRootNode(), arbreMotsCles
.getRootNode());
182,6 → 175,8
// on signale que oui
estInstancie = true;
}
arbreMotsCles.setRootNode(arbreMotsCles.getRootNode());
 
// l'état du filtre est réinitialisé
filtreModifie = false;
202,8 → 197,10
.remove();
}
 
// on cherche le père du nouveau noeud
// on chercher le père du nouveau noeud
Node ndPereOriginal = nd.getParentNode();
 
String idPereFiltre = ndPereOriginal.getId() + "_filtre";
 
String[] usObj = (String[]) nd.getUserObject();
283,7 → 280,7
private void copierFilsNoeud(Node ndPereOriginal, TreeNode ndPereCopie) {
if (ndPereCopie != null && ndPereOriginal != null) {
Node[] ndNodeFils = ndPereOriginal.getChildNodes();
 
for (int i = 0; i < ndNodeFils.length; i++) {
 
String[] usObj = (String[]) ndNodeFils[i].getUserObject();
/trunk/src/org/tela_botanica/client/vues/ArbreMotsClesVue.java
9,13 → 9,16
import com.gwtext.client.data.NodeTraversalCallback;
import com.gwtext.client.data.Tree;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.Container;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
import com.gwtext.client.widgets.event.PanelListenerAdapter;
import com.gwtext.client.widgets.form.TextField;
import com.gwtext.client.widgets.layout.VerticalLayout;
import com.gwtext.client.widgets.tree.TreeEditor;
import com.gwtext.client.widgets.tree.TreeNode;
import com.gwtext.client.widgets.tree.TreePanel;
import com.gwtext.client.widgets.tree.event.TreeNodeListenerAdapter;
import com.gwtext.client.widgets.tree.event.TreePanelListenerAdapter;
 
/**
72,7 → 75,7
/**
* Booléen d'instanciation du conteneur
*/
private boolean estInstancie = false;
private boolean arbreCharge = false;
/**
* Booléen d'évènement qui sert à savoir si les mots clés ont bien été reçu
*/
128,7 → 131,7
this.setBorder(false);
this.setCollapsible(true);
this.setTitleCollapse(true);
 
// on ajoute les listeners
ajouterListeners();
 
139,7 → 142,7
*
* @return le médiateur associé à la vue
*/
private ImageMediateur GetIMediateur() {
private ImageMediateur getIMediateur() {
 
return iMediateur;
 
189,7 → 192,7
public void onContextMenu(TreeNode node, EventObject e) {
 
e.stopEvent();
GetIMediateur().montrerContextMenuArbre(node, e, getTe());
getIMediateur().montrerContextMenuArbre(node, e, getTe());
 
}
 
216,7 → 219,7
if (ajoutNoeud) {
// on notifie le médiateur de l'ajout et on lui passe
// l'arbre
GetIMediateur().ajouterMotCleDansArbre(nd,
getIMediateur().ajouterMotCleDansArbre(nd,
getArbreMotsCles().getTree());
// et considère l'ajout achevé
ajoutNoeud = false;
226,7 → 229,7
if (modifNoeud) {
// on notifie le médiateur de la modification et on lui
// passe l'arbre
GetIMediateur().modifierMotCleDansArbre(nd,
getIMediateur().modifierMotCleDansArbre(nd,
getArbreMotsCles().getTree());
// et on considère la modification achevée
modifNoeud = false;
239,7 → 242,7
public void onMoveNode(Tree tree, TreeNode node,
TreeNode oldParent, TreeNode newParent, int index) {
// on notifie le médiateur et on lui passe l'arbre
GetIMediateur().deplacerMotCleDansArbre(node,
getIMediateur().deplacerMotCleDansArbre(node,
getArbreMotsCles().getTree());
}
 
267,7 → 270,7
 
String[] usObject = (String[]) tn
.getUserObject();
GetIMediateur().mettreAjourMotsClesId(
getIMediateur().mettreAjourMotsClesId(
usObject[0], usObject[1]);
 
if (tn.getUI().isChecked()) {
283,10 → 286,19
 
// enfin on notifie le médiateur et on lui passe l'arbre et la
// liste des mots clés ainsi obtenue
GetIMediateur().mettreAjourMotsCles(motsClesEnCours,
getIMediateur().mettreAjourMotsCles(motsClesEnCours,
arbreMotsCles.getTree());
}
});
/*this.addListener(new PanelListenerAdapter() {
public void onAfterLayout(Container c) {
if(!arbreCharge) {
//obtenirArbreMotsCles();
}
}
});*/
 
}
 
295,7 → 307,7
*/
public void obtenirArbreMotsCles() {
 
GetIMediateur().obtenirArbreMotsCles(this);
getIMediateur().obtenirArbreMotsCles(this);
 
}
 
313,7 → 325,7
n.destroy();
// puis on en notifie le médiateur en lui passant le noeud supprimé
// et l'arbre
GetIMediateur()
getIMediateur()
.supprimerMotCleDansArbre(n, arbreMotsCles.getTree());
} else {
// si l'utilisateur tente de supprimer la racine, on l'avertit de
436,7 → 448,7
// on prend sa racine et on l'attache à l'arbre des mots clés
Node[] rootChild = getArbreMotsCles().getRootNode().getChildNodes();
for (int i = 0; i < rootChild.length; i++) {
 
rootChild[i].remove();
}
461,9 → 473,9
}) ;
 
// si l'arbre n'était pas encore considéré comme instancié
if (!estInstancie) {
if (!arbreCharge) {
// on signale que oui
estInstancie = true;
arbreCharge = true;
}
 
// s'il y a des mots clés en attente (lors du premier rendering)
478,7 → 490,7
// nouvelle image)
if (nouvelleDonnees instanceof String[]) {
// et que l'arbre est instancié
if (estInstancie) {
if (arbreCharge) {
// le tableau de String contient les id des mots clés associés à
// l'image
// on coche les mots clés contenu dans le tableau