/// /////////////////////////////////////// public override bool Equals(object obj) { if (!(obj is CReferenceObjetDonnee)) { return(false); } CReferenceObjetDonnee objRef = (CReferenceObjetDonnee)obj; if (objRef.m_typeObjet != m_typeObjet) { return(false); } if (m_keyObjet != null && objRef.DbKeyObjet != null) { return(m_keyObjet.Equals(objRef.DbKeyObjet)); } if ((m_keyObjet == null) != (objRef.DbKeyObjet == null)) { return(false); } if (objRef.m_cles.Length != m_cles.Length) { return(false); } for (int nCle = 0; nCle < m_cles.Length; nCle++) { if (!objRef.m_cles[nCle].Equals(m_cles[nCle])) { return(false); } } return(true); }
/// /// /////////////////////////////////////// public CReferenceObjetDonnee GetCloneReferenceObjetDonnee() { CReferenceObjetDonnee r = new CReferenceObjetDonnee(); r.m_cles = m_cles; r.m_keyObjet = m_keyObjet; r.m_typeObjet = m_typeObjet; return(r); }
//------------------------------------------------------ public CReferenceObjetDonneeDragDropData(CReferenceObjetDonnee reference) { if (reference != null) { m_objets = new CReferenceObjetDonnee[] { reference } } ; else { m_objets = null; } }
public bool RemoveObjet(CReferenceObjetDonnee objet) { foreach (CReferenceObjetDonneeAvecLibelle refe in m_listeObjets) { if (refe.ReferenceObjet != null && refe.ReferenceObjet.Equals(objet)) { m_listeObjets.Remove(refe); return(true); } } return(false); }
public bool AddObjet(CReferenceObjetDonnee objet) { bool bExiste = false; foreach (CReferenceObjetDonneeAvecLibelle refe in m_listeObjets) { if (((CReferenceObjetDonnee)refe).Equals(objet)) { bExiste = true; break; } } if (!bExiste) { m_listeObjets.Add(new CReferenceObjetDonneeAvecLibelle(objet)); return(true); } return(false); }
/// /////////////////////////////////////////////// public void AddObjetDonneeOption(CObjetDonnee objet) { CReferenceObjetDonnee refobj = new CReferenceObjetDonnee(objet); m_tableIdObjets[refobj] = true; }
public CReferenceObjetDonneeAvecLibelle(CReferenceObjetDonnee reference) { m_reference = reference; }
//---------------------------------------------------------------------------- public static List <CObjetDonnee> GetObjets( IEnumerable <CReferenceObjetDonnee> lstReferences, CContexteDonnee contexte ) { List <CObjetDonnee> lstObjets = new List <CObjetDonnee>(); //Trie les références par type Dictionary <Type, List <CReferenceObjetDonnee> > dicTypeToDbKey = new Dictionary <Type, List <CReferenceObjetDonnee> >(); foreach (CReferenceObjetDonnee reference in lstReferences) { if (reference.TypeObjet != null) { if (reference.DbKeyObjet != null) { List <CReferenceObjetDonnee> lst = null; if (!dicTypeToDbKey.TryGetValue(reference.TypeObjet, out lst)) { lst = new List <CReferenceObjetDonnee>(); dicTypeToDbKey[reference.TypeObjet] = lst; } lst.Add(reference); } else { lstObjets.Add(reference.GetObjet(contexte)); } } } foreach (KeyValuePair <Type, List <CReferenceObjetDonnee> > kv in dicTypeToDbKey) { //Lecture par paquets de 200 éléments int nIndex = 0; int nNb = kv.Value.Count; int nNbParPaquet = 200; for (nIndex = 0; nIndex < nNb; nIndex += nNbParPaquet) { StringBuilder bl = new StringBuilder(); int nMax = Math.Min(nIndex + nNbParPaquet, nNb); for (int nRead = nIndex; nRead < nMax; nRead++) { CReferenceObjetDonnee rf = kv.Value[nRead]; { bl.Append(rf.DbKeyObjet.GetValeurStringFiltre()); bl.Append(","); } } if (bl.Length > 0) { bl.Remove(bl.Length - 1, 1); CListeObjetsDonnees lst = new CListeObjetsDonnees(contexte, kv.Key); lst.Filtre = new CFiltreData(CObjetDonnee.c_champIdUniversel + " in (" + bl.ToString() + ")"); foreach (CObjetDonnee objet in lst) { lstObjets.Add(objet); } } } } return(lstObjets); }