1,9 → 1,5 |
package org.tela_botanica.client.image; |
|
|
import java.util.Iterator; |
import java.util.List; |
|
import org.tela_botanica.client.CarnetEnLigneMediateur; |
import org.tela_botanica.client.interfaces.IdVue; |
import org.tela_botanica.client.interfaces.ListePaginable; |
11,8 → 7,7 |
import org.tela_botanica.client.interfaces.VueListable; |
import org.tela_botanica.client.modeles.Configuration; |
import org.tela_botanica.client.modeles.ListeObservation; |
import org.tela_botanica.client.observation.ObservationMediateur; |
import org.tela_botanica.client.vues.ArbreMotsClesVue; |
import org.tela_botanica.client.vues.FenetreGestionMotsCles; |
import org.tela_botanica.client.vues.image.BarreOutilsVue; |
import org.tela_botanica.client.vues.image.GalerieImageVue; |
import org.tela_botanica.client.vues.image.ListeImageVue; |
29,7 → 24,6 |
import com.google.gwt.user.client.Element; |
import com.google.gwt.user.client.Event; |
import com.google.gwt.user.client.Window; |
import com.google.gwt.user.client.ui.HTML; |
import com.gwtext.client.core.EventObject; |
import com.gwtext.client.core.Ext; |
import com.gwtext.client.core.ExtElement; |
41,21 → 35,15 |
import com.gwtext.client.dd.DragSource; |
import com.gwtext.client.widgets.BoxComponent; |
import com.gwtext.client.widgets.Component; |
import com.gwtext.client.widgets.Container; |
import com.gwtext.client.widgets.DataView; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.TabPanel; |
import com.gwtext.client.widgets.MessageBox.AlertCallback; |
import com.gwtext.client.widgets.event.ComponentListenerAdapter; |
import com.gwtext.client.widgets.event.ContainerListener; |
import com.gwtext.client.widgets.event.ContainerListenerAdapter; |
import com.gwtext.client.widgets.event.PanelListener; |
import com.gwtext.client.widgets.event.PanelListenerAdapter; |
import com.gwtext.client.widgets.event.TabPanelListenerAdapter; |
import com.gwtext.client.widgets.event.WindowListenerAdapter; |
import com.gwtext.client.widgets.grid.GridDragData; |
import com.gwtext.client.widgets.layout.BorderLayout; |
import com.gwtext.client.widgets.layout.BorderLayoutData; |
import com.gwtext.client.widgets.layout.FitLayout; |
import com.gwtext.client.widgets.menu.BaseItem; |
import com.gwtext.client.widgets.menu.Item; |
import com.gwtext.client.widgets.menu.Menu; |
169,6 → 157,11 |
private BarreRechercheFiltreVue filtreCommentaires = null; |
|
/** |
* Fenetre modale de gestion des mots clés |
*/ |
private FenetreGestionMotsCles fnMc = null; |
|
/** |
* Boolean indiquand si le médiateur a seulement été crée ou bien si tous |
* les composants ont été crées |
*/ |
343,6 → 336,8 |
} |
}); |
|
creerPanneauGestionMotsCles(); |
|
// filtres.setCollapsed(false) ; |
thisMediateur = this ; |
|
633,8 → 628,14 |
public void obtenirMotsClesId(Rafraichissable r, String id) { |
getIModele().obtenirMotsClesId(r, id); |
} |
|
public void obtenirMotsClesTexte(Rafraichissable r, String id) { |
String[] texteMotsCles = getTexteMotsCles(getIModele().getMotsClesId(id)); |
r.rafraichir(texteMotsCles, false); |
} |
|
public String[] obtenirTexteMotsCles(String idsMotsCles[]) { |
//TODO: devrait être dans le modèle |
public String[] getTexteMotsCles(String idsMotsCles[]) { |
|
String[] tableauMotsClesTexte = new String[idsMotsCles.length]; |
|
681,6 → 682,9 |
public void rafraichirArbreMotsCles(Tree arbreMC) { |
metadonneesIptcExif.getPanneauMotsCles().rafraichir(arbreMC, false); |
filtres.getMotsClesFiltre().rafraichir(arbreMC, false); |
if(fnMc != null) { |
fnMc.rafraichir(arbreMC, false); |
} |
} |
|
/** |
724,7 → 728,8 |
obtenirObservationsAssociees() ; |
} |
obtenirMetadonnees(metadonneesIptcExif, imgNum); |
obtenirMotsClesId(metadonneesIptcExif.getPanneauMotsCles(), imgNum); |
obtenirMotsClesId(fnMc, imgNum); |
obtenirMotsClesTexte(metadonneesIptcExif.getPanneauMotsCles(), imgNum); |
obtenirNote(metadonneesIptcExif.getNoteVue(), imgNum); |
} |
|
1049,12 → 1054,11 |
public void onItemClick(BaseItem item, EventObject e) { |
if (item.equals(suppN)) { |
if(Window.confirm("Êtes vous sur de vouloir supprimer ce mot clé ?")) { |
getMetadonneesIptcExif().getPanneauMotsCles() |
.supprimerNoeud(n); |
fnMc.supprimerNoeud(n); |
} |
} |
if (item.equals(ajoutN)) { |
getMetadonneesIptcExif().getPanneauMotsCles().ajouterNoeud( |
fnMc.ajouterNoeud( |
n); |
} |
} |
1092,7 → 1096,10 |
public void mettreAjourMotsCles(String motsClesEnCours, Tree arbreMC) { |
|
String[] ids = getGalerieImage().getIdSelectionnees(); |
getIModele().mettreAjourMotsCles(ids, motsClesEnCours, arbreMC); |
if(ids.length > 0) { |
getIModele().mettreAjourMotsCles(ids, motsClesEnCours, arbreMC); |
obtenirMotsClesTexte(metadonneesIptcExif.getPanneauMotsCles(), ids[ids.length - 1]); |
} |
|
} |
|
1107,8 → 1114,8 |
*/ |
public void ajouterMotCleDansArbre(TreeNode n, Tree arbreMC) { |
getIModele().ajouterMotCleDansArbre(n, arbreMC); |
filtres.getMotsClesFiltre().rafraichir(n, false); |
|
filtres.getMotsClesFiltre().rafraichir(arbreMC, false); |
mettreAJourListeMotsClesAffiches(); |
} |
|
/** |
1121,10 → 1128,9 |
* le nouvel arbre de mots clés à mettre à jour |
*/ |
public void supprimerMotCleDansArbre(TreeNode n, Tree arbreMC) { |
|
getIModele().supprimerMotCleDansArbre(n, arbreMC); |
filtres.getMotsClesFiltre().rafraichir(n.getId(), false); |
|
filtres.getMotsClesFiltre().rafraichir(arbreMC, false); |
mettreAJourListeMotsClesAffiches(); |
} |
|
/** |
1137,10 → 1143,10 |
* le nouvel arbre de mots clés à mettre à jour |
*/ |
public void modifierMotCleDansArbre(TreeNode n, Tree arbreMC) { |
|
getIModele().modifierMotCleDansArbre(n, arbreMC); |
filtres.getMotsClesFiltre().rafraichir(n, false); |
|
getIModele().mettreAjourMotsClesId(n.getText(), n.getId()); |
filtres.getMotsClesFiltre().rafraichir(arbreMC, false); |
mettreAJourListeMotsClesAffiches(); |
} |
|
/** |
1153,18 → 1159,23 |
* le nouvel arbre de mots clés à mettre à jour |
*/ |
public void deplacerMotCleDansArbre(TreeNode n, Tree arbreMC) { |
|
getIModele().deplacerMotCleDansArbre(n, arbreMC); |
filtres.getMotsClesFiltre().rafraichir(n, false); |
filtres.getMotsClesFiltre().rafraichir(arbreMC, false); |
mettreAJourListeMotsClesAffiches(); |
} |
|
public void mettreAJourListeMotsClesAffiches() { |
String[] ids = getGalerieImage().getIdSelectionnees(); |
if(ids.length > 0) { |
obtenirMotsClesTexte(metadonneesIptcExif.getPanneauMotsCles(), ids[ids.length - 1]); |
} |
} |
|
/** |
* initialise les mots clés cochés par rapport aux images sélectionnées |
*/ |
public void initialiserMotsCleCoches() { |
|
obtenirMotsClesId(metadonneesIptcExif.getPanneauMotsCles(), |
getGalerieImage().getIdSelectionnees()[0]); |
obtenirMotsClesId(metadonneesIptcExif.getPanneauMotsCles(),getGalerieImage().getIdSelectionnees()[0]); |
} |
|
/** |
1647,8 → 1658,7 |
filtres.getArbreDateRecherche().initialiser(); |
obtenirPhotoGalerie(getGalerieImage()); |
panneauPrincipalImage.purgeListeners() ; |
} |
|
} |
}) ; |
} |
} |
1741,5 → 1751,63 |
public void obtenirDatesImages(Rafraichissable r) { |
iModele.obtenirDatesImages(r); |
} |
|
public void creerPanneauGestionMotsCles() { |
fnMc = new FenetreGestionMotsCles() { |
|
@Override |
protected void surSuppressionMotCle(TreeNode node, Tree arbre) { |
supprimerMotCleDansArbre(node, arbre); |
} |
|
@Override |
protected void surDeplacementMotCle(TreeNode node, Tree arbre) { |
deplacerMotCleDansArbre(node, arbre); |
} |
|
@Override |
protected void surClicValider(String chaineMotsCles, Tree arbre) { |
mettreAjourMotsCles(chaineMotsCles, arbre); |
} |
|
@Override |
protected void surChangementTexte(TreeNode node, Tree arbre) { |
modifierMotCleDansArbre(node, arbre); |
} |
|
@Override |
protected void surAjoutMotCle(TreeNode node, Tree arbre) { |
ajouterMotCleDansArbre(node, arbre); |
} |
|
@Override |
protected void surAffichageMenuContextuel(TreeNode node, EventObject e, |
TreeEditor te) { |
montrerContextMenuArbre(node, e, te); |
} |
|
@Override |
protected void demanderArbreMotsCles(Rafraichissable r) { |
ImageMediateur.this.obtenirArbreMotsCles(r); |
} |
}; |
|
fnMc.setModal(true); |
fnMc.setHeight(400); |
fnMc.setWidth(200); |
fnMc.addListener(new WindowListenerAdapter() { |
|
public void onClose(Panel panel) { |
|
} |
|
}); |
|
//fnMc.activerBoutonValider(selection); |
} |
|
public void afficherFenetreGestionMotsCles() { |
fnMc.show(); |
} |
|
} |