コード例 #1
0
        //------------------------------------------------------------------
        public CDefinitionProprieteDynamique[] GetDefinitionsChamps(CObjetPourSousProprietes objet, CDefinitionProprieteDynamique defParente)
        {
            List <CDefinitionProprieteDynamique> lst = new List <CDefinitionProprieteDynamique>();

            CDefinitionMultiSourceForExpression multi = objet.ElementAVariableInstance as CDefinitionMultiSourceForExpression;

            if (multi != null)
            {
                lst.AddRange(GetDefinitionsChamps(multi.DefinitionObjetPrincipal));
            }
            foreach (IFournisseurProprieteDynamiquesSimplifie fournisseur in m_listeSousFournisseurs)
            {
                lst.AddRange(fournisseur.GetDefinitionsChamps(objet, defParente));
            }
            foreach (CObjetPourSousProprietes objetSecondaire in m_associationsObjetsSupplementaires.GetObjetsAssocies(objet))
            {
                foreach (IFournisseurProprieteDynamiquesSimplifie fournisseur in m_listeSousFournisseurs)
                {
                    lst.AddRange(fournisseur.GetDefinitionsChamps(objetSecondaire, defParente));
                }
            }
            NettoieListe(lst);
            lst.Sort();
            return(lst.ToArray());
        }
コード例 #2
0
        //----------------------------------------------------------------
        public CResultAErreur GetValue(object objet, string strPropriete)
        {
            CResultAErreur result = CResultAErreur.True;
            CDefinitionMultiSourceForExpression defMultiSource = objet as CDefinitionMultiSourceForExpression;

            if (defMultiSource != null)
            {
                result.Data = defMultiSource.GetSource(strPropriete);
                return(result);
            }
            return(result);
        }
コード例 #3
0
 //----------------------------------------------------------
 public static CResultAErreur GetValue(object objet, CDefinitionProprieteDynamique defProp, CCacheValeursProprietes cache)
 {
     if (defProp != null)
     {
         CDefinitionMultiSourceForExpression source = objet as CDefinitionMultiSourceForExpression;
         if (source != null && !(defProp is CDefinitionProprieteDynamiqueSourceSupplementaire))
         {
             return(GetValue(source.ObjetPrincipal, defProp));
         }
         string strNomProp = defProp.NomPropriete;
         if (strNomProp.Length > 0 && strNomProp[0] != CDefinitionProprieteDynamique.c_strCaractereStartCleType &&
             m_oldInterpreteur != null)
         {
             CResultAErreur result = CResultAErreur.True;
             result.Data = m_oldInterpreteur.GetValue(objet, defProp);
             return(result);
         }
         return(GetValue(objet, strNomProp, cache));
     }
     return(CResultAErreur.True);
 }