Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 336 → Rev 337

/trunk/src/org/tela_botanica/client/vues/observation/ListeObservationVue.java
11,6 → 11,7
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.interfaces.VueListable;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
import com.gwtext.client.core.EventCallback;
import com.gwtext.client.core.EventObject;
25,6 → 26,7
import com.gwtext.client.data.Store;
import com.gwtext.client.data.StringFieldDef;
import com.gwtext.client.dd.DragData;
import com.gwtext.client.dd.DragDropConfig;
import com.gwtext.client.dd.DragSource;
import com.gwtext.client.dd.DropTarget;
import com.gwtext.client.dd.DropTargetConfig;
44,7 → 46,10
import com.gwtext.client.widgets.grid.GridPanel;
import com.gwtext.client.widgets.grid.Renderer;
import com.gwtext.client.widgets.grid.event.GridListenerAdapter;
import com.gwtext.client.widgets.grid.event.GridRowListener;
import com.gwtext.client.widgets.grid.event.GridRowListenerAdapter;
import com.gwtext.client.widgets.tree.TreeDragData;
import com.gwtext.client.widgets.tree.TreeNode;
 
/**
* Liste d'observation composée de ligne d'observation
303,12 → 308,7
this.setStore(st);
this.getView().setAutoFill(true);
this.getView().setForceFit(true) ;
//Enable drag and drop
this.setEnableDragDrop(true);
//You need to set the same group for both grids
this.setDdGroup("ObsMotsClesGroup");
// on crée un masque de chargement qui s'affichera lors des mises à jour
this.setLoadMask("Chargement");
398,11 → 398,16
private void configDragAndDrop()
{
 
setDdGroup("ObsMotsClesGroup");
setEnableDragDrop(true);
setDragDropText("Glissez les observations sélectionnées sur un projet pour les lier");
// on fabrique la nouvelle configuration
// les éléments sur lesquels on fait du drag 'n drop doivent tous avoir le même ddGroup
this.setDdGroup("ObsMotsClesGroup");
DropTargetConfig dtc = new DropTargetConfig();
dtc.setdDdGroup("ObsMotsClesGroup");
dtc.setTarget(true);
DragDropConfig ddc = new DragDropConfig();
 
//La drop target permet de gérer l'évenement onDrop sur l'élement courant
@SuppressWarnings("unused")
410,29 → 415,54
{
public boolean notifyDrop(DragSource source, EventObject e, DragData data){
// si on reçoit des données provenant d'une grille
if(data instanceof GridDragData)
{
// on la convertit
GridDragData gdd = (GridDragData)data ;
// et on vérifie que les données ne viennent pas de l'élément courant
if(gdd.getGrid().getId().equals("x-list-obs"))
{
Window.alert("on a recu du grid : "+data.toString());
return true ;
// on appelle le médiateur
//return iMediateur.lierImagesDD(source, e, data) ;
}
}
return true ;
// si on reçoit des données provenant d'un arbre
// on les convertit
if(data instanceof TreeDragData) {
TreeDragData tdd = (TreeDragData)data ;
TreeNode treeNode = tdd.getTreeNode();
String idMc = treeNode.getId();
int index = getView().findRowIndex(e);
Record obsRd = getStore().getRecordAt(index);
String ordreObs = obsRd.getAsString("ordre_observation");
if(ordreObs != null) {
observationMediateur.gererDDMotCleSurObs(ordreObs, idMc);
return true ;
} else {
return true;
}
}
return true;
}
public String notifyOver(DragSource source, EventObject e, DragData data){
return "x-dd-drop-ok";
if(data instanceof TreeDragData) {
TreeDragData tdd = (TreeDragData)data ;
TreeNode treeNode = tdd.getTreeNode();
String idMc = treeNode.getId();
int index = getView().findRowIndex(e);
if(index < 0) {
return "x-dd-drop-nodrop";
}
Record obsRd = getStore().getRecordAt(index);
String ordreObs = obsRd.getAsString("ordre_observation");
if(ordreObs != null) {
return observationMediateur.gererOverDDMotCleSurObs(ordreObs, idMc);
}
}
return "x-dd-drop-nodrop";
}
};
}
 
/**