1,9 → 1,20 |
package org.tela_botanica.client.composants.pagination; |
|
import java.util.Iterator; |
import java.util.List; |
import java.util.Map; |
import java.util.Set; |
|
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.modeles.collection.CollectionAPersonne; |
import org.tela_botanica.client.modeles.personne.Personne; |
import org.tela_botanica.client.util.Debug; |
import org.tela_botanica.client.util.UtilString; |
|
import com.extjs.gxt.ui.client.data.BaseListLoadResult; |
import com.extjs.gxt.ui.client.data.BaseModelData; |
import com.extjs.gxt.ui.client.data.BasePagingLoadResult; |
import com.extjs.gxt.ui.client.data.BasePagingLoader; |
import com.extjs.gxt.ui.client.data.LoadEvent; |
import com.extjs.gxt.ui.client.data.PagingLoadResult; |
12,9 → 23,8 |
public class ChargeurListe<D extends PagingLoadResult<?>> extends BasePagingLoader<D> { |
|
private String recherche = ""; |
private Integer id = null; |
private Rafraichissable vueARafraichir = null; |
private boolean rafraichir = false; |
private boolean doRafraichir = false; |
|
@SuppressWarnings("unchecked") |
public ChargeurListe(Proxy proxy, TransformateurJSONaModelData reader, Rafraichissable vueARafraichir) { |
22,8 → 32,8 |
this.vueARafraichir = vueARafraichir; |
} |
|
public boolean load(Object loadConfig, String recherche, boolean rafraichir) { |
this.rafraichir = rafraichir; |
public boolean load(Object loadConfig, String recherche, boolean doRafraichir) { |
this.doRafraichir = doRafraichir; |
if (fireEvent(BeforeLoad, new LoadEvent(this, loadConfig))) { |
lastConfig = loadConfig; |
|
62,12 → 72,43 |
|
public void onFailure(Throwable caught) { |
onLoadFailure(config, caught); |
if (!UtilString.isEmpty(caught.getMessage())) Debug.log("[FAILURE] ChargeurListe : message="+caught.getMessage()); |
else Debug.log("[FAILURE] ChargeurListe : message=NULL. Peut-être le modelType est-il mal paramétré ?"); |
} |
|
public void onSuccess(D result) { |
onLoadSuccess(config, result); |
|
if (rafraichir) { |
|
/* |
// SUPPRIMER LES PREFIXES |
if (result instanceof BasePagingLoadResult) { |
BasePagingLoadResult retourPaging = (BasePagingLoadResult)result; |
List retourListe = retourPaging.getData(); |
|
for(int i=0; i< retourListe.size(); i++) { |
if (retourListe.get(i) instanceof BaseModelData) { |
BaseModelData model = (BaseModelData)retourListe.get(i); |
|
Map<String, Object> a = model.getProperties(); |
Set<String> cles = a.keySet(); |
Iterator<String> it = cles.iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
if (a.get(cle) != null) { |
String cleObjet = ""; |
cleObjet = cle.replaceFirst("^[A-Za-z]+_", ""); |
model.set(cleObjet, a.get(cle)); |
model.remove(cle); |
} |
} |
} |
} |
}*/ |
|
|
// Cas où il faut rafraichir le combo manuellement |
// (cela sert pour charger la valeur initiale du combo au chargement d'un formulaire) |
if (doRafraichir) { |
Information info = new Information("selectionnerValeurCombo"); |
info.setDonnee(result); |
info.setMessage(""); |