/branches/v1.5-cisaille/src/org/tela_botanica/client/image/ImageMediateur.java |
---|
1048,8 → 1048,10 |
public void onItemClick(BaseItem item, EventObject e) { |
if (item.equals(suppN)) { |
getMetadonneesIptcExif().getPanneauMotsCles() |
.supprimerNoeud(n); |
if(Window.confirm("Êtes vous sur de vouloir supprimer ce mot clé ?")) { |
getMetadonneesIptcExif().getPanneauMotsCles() |
.supprimerNoeud(n); |
} |
} |
if (item.equals(ajoutN)) { |
getMetadonneesIptcExif().getPanneauMotsCles().ajouterNoeud( |
/branches/v1.5-cisaille/src/org/tela_botanica/client/image/ImageModele.java |
---|
567,6 → 567,20 |
System.out.println("clé : " + key + " valeur : " + valeur); |
} |
} |
/** |
* Construit une chaine contenant le texte des mots clés séparés par des virgules |
*/ |
public String renvoyerChaineMotClesTexte(ImageCarnet ic) { |
String chaineMotsCles = ic.getMotsCles(); |
String[] tabMotsCles = chaineMotsCles.split(","); |
String chaineMotsClesTexte = ""; |
for (int i = 0; i < tabMotsCles.length; i++) { |
chaineMotsClesTexte += motsCles.get(tabMotsCles[i]); |
chaineMotsClesTexte += (i != tabMotsCles.length - 1) ? "," : ""; |
} |
return chaineMotsClesTexte; |
} |
/** |
* Met à jour les mots clés associés à une image et appelle le DAO pour |
/branches/v1.5-cisaille/src/org/tela_botanica/client/vues/ArbreMotsClesVue.java |
---|
53,6 → 53,8 |
* des virgules |
*/ |
private String motsClesEnCours = ""; |
private String[] tableauMotsClesEnCours = new String[0]; |
/** |
* Tableau contenant les mots clés qui n'ont pas encore été jaouté à l'arbre |
* (sert au lazy rendering quand on reçoit des mots clés avant que le rendu |
176,7 → 178,12 |
* Ajoute les listeners nécessaires pour la gestion des évènements |
*/ |
private void ajouterListeners() { |
arbreMotsCles.addListener(new TreePanelListenerAdapter() { |
public void onExpandNode(TreeNode node) { |
cocherMotsCles(tableauMotsClesEnCours); |
} |
// gestion du clic sur un noeud |
public void onClick(TreeNode node, EventObject e) { |
225,10 → 232,13 |
else { |
// on considère la modification achevée |
modifNoeud = false; |
// et on notifie le médiateur de la modification et on lui |
// passe l'arbre |
getIMediateur().modifierMotCleDansArbre(nd, |
getArbreMotsCles().getTree()); |
if(!text.equals(oldText)) { |
// et on notifie le médiateur de la modification et on lui |
// passe l'arbre |
getIMediateur().modifierMotCleDansArbre(nd, |
getArbreMotsCles().getTree()); |
} |
} |
} |
285,16 → 295,6 |
arbreMotsCles.getTree()); |
} |
}); |
/*this.addListener(new PanelListenerAdapter() { |
public void onAfterLayout(Container c) { |
if(!arbreCharge) { |
//obtenirArbreMotsCles(); |
} |
} |
});*/ |
} |
/** |
446,38 → 446,17 |
// on signale que oui |
arbreCharge = true; |
} |
// s'il y a des mots clés en attente (lors du premier rendering) |
if (motsCleInitialises == false && motsClesEnAttente != null) { |
// on les coche |
// cocherMotsCles(motsClesEnAttente) ; |
motsCleInitialises = true; |
} |
if(motsClesEnAttente.length > 0) { |
cocherMotsCles(motsClesEnAttente); |
} |
} |
// Si on reçoit un tableau de String (cas ou l'on séléectionne une |
// nouvelle image) |
if (nouvelleDonnees instanceof String[]) { |
// et que l'arbre est instancié |
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 |
String[] motsClesIds = (String[]) nouvelleDonnees; |
cocherMotsCles(motsClesIds); |
} |
// si l'arbre n'est pas encore instancié on met les mots clés en |
// attente |
else { |
motsClesEnAttente = (String[]) nouvelleDonnees; |
//Window.alert("des mots clés en attente : "+motsClesEnAttente[0]); |
} |
tableauMotsClesEnCours = (String[]) nouvelleDonnees; |
cocherMotsCles(tableauMotsClesEnCours); |
} |
} |
/branches/v1.5-cisaille/src/org/tela_botanica/client/modeles/ImageAsynchroneDAO.java |
---|
108,11 → 108,15 |
public void onResponseReceived(Request request, |
Response response) { |
// TODO: les messages ne devraient pas être affichés ici |
// mais l'architecture par très malléable complique les choses |
if (response.getText().equals("OK")) { |
com.google.gwt.user.client.Window |
.alert("Les mots clés suivants ont bien été appliqués : "+iModele.renvoyerChaineMotClesTexte(ic)); |
return; |
} else { |
com.google.gwt.user.client.Window |
.alert("Problème lors de la mise à jour des données"); |
.alert("Problème lors de la mise à jour des données, le serveur a répondu "+response.getText()); |
} |
} |
/branches/v1.5-cisaille/src/org/tela_botanica/client/modeles/MotsClesAsynchroneDAO.java |
---|
126,15 → 126,17 |
public void onResponseReceived(Request request, |
Response response) { |
// si on reçoit une erreur d'ajout, on affiche un |
// message d'erreur |
if (response.getText().equals("ERROR")) { |
Window |
.alert("Attention, la base de données des mots clés n'est plus synchronisée avec l'application," |
+ "nous vous invitons à recharger la page. "); |
// TODO: les messages ne devraient pas être affichés ici |
// mais l'architecture par très malléable complique les choses |
if (response.getText().equals("OK")) { |
com.google.gwt.user.client.Window |
.alert("Le mot clé a été ajouté"); |
return; |
} else { |
com.google.gwt.user.client.Window |
.alert("Problème lors de la mise à jour des données, le serveur a répondu "+response.getText()); |
} |
} |
}); |
173,10 → 175,15 |
public void onResponseReceived(Request request, |
Response response) { |
if (response.equals("ERROR")) { |
Window |
.alert("Attention, la base de données des mots clés n'est plus synchronisée avec l'application," |
+ "nous vous invitons à recharger la page. "); |
// TODO: les messages ne devraient pas être affichés ici |
// mais l'architecture par très malléable complique les choses |
if (response.getText().equals("OK")) { |
com.google.gwt.user.client.Window |
.alert("Le mot clé a été supprimé"); |
return; |
} else { |
com.google.gwt.user.client.Window |
.alert("Problème lors de la mise à jour des données, le serveur a répondu "+response.getText()); |
} |
} |
}); |
213,8 → 220,16 |
public void onResponseReceived(Request request, |
Response response) { |
// TODO Auto-generated method stub |
// TODO: les messages ne devraient pas être affichés ici |
// mais l'architecture par très malléable complique les choses |
if (response.getText().equals("OK")) { |
com.google.gwt.user.client.Window |
.alert("Le mot clé a été renommé"); |
return; |
} else { |
com.google.gwt.user.client.Window |
.alert("Problème lors de la mise à jour des données, le serveur a répondu "+response.getText()); |
} |
} |
}); |
/branches/v1.5-cisaille/src/org/tela_botanica/client/modeles/NombreObservationAsynchroneDAO.java |
---|
14,7 → 14,6 |
import com.google.gwt.json.client.JSONParser; |
import com.google.gwt.json.client.JSONString; |
import com.google.gwt.json.client.JSONValue; |
import com.google.gwt.user.client.HTTPRequest; |
import com.google.gwt.user.client.ResponseTextHandler; |
import com.google.gwt.user.client.Window; |