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 |