Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 301 → Rev 318

/trunk/src/org/tela_botanica/client/vues/observation/ListeObservationVue.java
24,6 → 24,10
import com.gwtext.client.data.RecordDef;
import com.gwtext.client.data.Store;
import com.gwtext.client.data.StringFieldDef;
import com.gwtext.client.dd.DragData;
import com.gwtext.client.dd.DragSource;
import com.gwtext.client.dd.DropTarget;
import com.gwtext.client.dd.DropTargetConfig;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.Component;
import com.gwtext.client.widgets.Panel;
36,6 → 40,7
import com.gwtext.client.widgets.grid.CellMetadata;
import com.gwtext.client.widgets.grid.ColumnConfig;
import com.gwtext.client.widgets.grid.ColumnModel;
import com.gwtext.client.widgets.grid.GridDragData;
import com.gwtext.client.widgets.grid.GridPanel;
import com.gwtext.client.widgets.grid.Renderer;
import com.gwtext.client.widgets.grid.event.GridListenerAdapter;
142,6 → 147,8
this.observationMediateur = obs;
setId("x-list-obs");
setHeader(true);
297,6 → 304,11
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");
303,7 → 315,8
// on ajoute les listeners
ajouterListeners();
configDragAndDrop();
 
}
 
 
374,11 → 387,54
this.addListener(new PanelListenerAdapter() {
public void onBodyResize(Panel panel, java.lang.String width, java.lang.String height) {
setHeight("50%");
doLayout();
}
});
}
/**
* Configure le drag 'n drop pour la liste
*/
private void configDragAndDrop()
{
 
// 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");
 
//La drop target permet de gérer l'évenement onDrop sur l'élement courant
@SuppressWarnings("unused")
DropTarget tg = new DropTarget(this, dtc)
{
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 ;
}
public String notifyOver(DragSource source, EventObject e, DragData data){
return "x-dd-drop-ok";
}
};
}
 
/**
* Méthode héritée de l'interface VueListable
* Sélectionne les observations dans la liste suivant les identifiants donnés en paramètres