Example #1
0
 //-----------------------------------------------------------------------
 public static CDefinitionProprieteDynamique[] SelectProprietes(
     Type tp,
     TypeSelectionAttendue typeSelection,
     CDefinitionProprieteDynamique defParente)
 {
     return(SelectProprietes(tp, typeSelection, defParente, null));
 }
Example #2
0
        //-----------------------------------------------------------------------
        public static CDefinitionProprieteDynamique[] SelectProprietes(
            Type tp,
            TypeSelectionAttendue typeSelection,
            CDefinitionProprieteDynamique defParente,
            IFournisseurProprietesDynamiques fournisseur)
        {
            CFormSelectChampPourStructure form = new CFormSelectChampPourStructure();

            if (fournisseur != null)
            {
                form.m_fournisseur = fournisseur;
            }
            form.m_typePrincipal = tp;
            form.m_typeSelection = typeSelection;
            form.m_lblTable.Text = DynamicClassAttribute.GetNomConvivial(form.m_typePrincipal);

            TreeNodeCollection nodes = form.m_arbre.Nodes;

            if ((typeSelection & TypeSelectionAttendue.AllowThis) == TypeSelectionAttendue.AllowThis)
            {
                TreeNode nodeThis = new TreeNode(DynamicClassAttribute.GetNomConvivial(tp));
                nodeThis.Tag = new CDefinitionProprieteDynamiqueThis(new CTypeResultatExpression(tp, false), true, true);
                form.m_arbre.Nodes.Add(nodeThis);
                nodes = nodeThis.Nodes;
            }

            form.FillTree(tp, nodes, defParente);
            if (form.m_arbre.Nodes.Count == 1)
            {
                form.m_arbre.Nodes[0].Expand();
            }
            if (form.ShowDialog() == DialogResult.OK)
            {
                ArrayList lst = new ArrayList();
                form.GetSelectedFields(lst, form.m_arbre.Nodes, null);
                return(( CDefinitionProprieteDynamique[] )lst.ToArray(typeof(CDefinitionProprieteDynamique)));
            }
            return(new CDefinitionProprieteDynamique[0]);
        }