//-------------------------------------------------------------------------------
 internal void Expand(CCustomizableListItem item)
 {
     using (CWaitCursor waiter = new CWaitCursor())
     {
         CSetupSmartImportItem si = item as CSetupSmartImportItem;
         if (si != null && si.ChildItems.Count() == 0)
         {
             CSetupSmartImportChampEntiteItem root = si as CSetupSmartImportChampEntiteItem;
             if (root != null)
             {
                 CreateChilds(si, root.ValeursExemples, root.ConfigMappage);
             }
             CSetupSmartImportEntiteParentItem itemParent = si as CSetupSmartImportEntiteParentItem;
             if (itemParent != null)
             {
                 CreateChilds(
                     si,
                     itemParent.ValeursParent,
                     itemParent.MappageEntiteParente != null ? itemParent.MappageEntiteParente.ConfigEntiteParente : null);
             }
             CSetupSmartImportEntiteFilleItem itemFille = si as CSetupSmartImportEntiteFilleItem;
             if (itemFille != null)
             {
                 CreateChilds(itemFille);
             }
         }
         if (si != null)
         {
             si.Expand();
         }
         Refresh();
     }
 }
Example #2
0
 //-------------------------------------------------------------------
 public CSetupSmartImportItem(
     CSetupSmartImportItem parentItem,
     CDefinitionProprieteDynamique def,
     int nColorIndex)
     : base(parentItem)
 {
     m_propriete   = def;
     m_nColorIndex = nColorIndex;
 }
        //-------------------------------------------------------------------------------
        internal void Collapse(CCustomizableListItem item)
        {
            CSetupSmartImportItem si = item as CSetupSmartImportItem;

            if (si != null)
            {
                si.Collapse();
            }
            Refresh();
        }
Example #4
0
        //-----------------------------------------------------------
        void itemKey_Click(object sender, EventArgs e)
        {
            CSetupSmartImportItem si   = CurrentItem as CSetupSmartImportItem;
            ToolStripMenuItem     item = sender as ToolStripMenuItem;

            if (item != null && item.Tag is bool && si != null)
            {
                si.UseAsKey = (bool)item.Tag;
                UpdateVisuelKey();
                HasChange = true;
            }
        }
Example #5
0
        //--------------------------------------------------------------------
        protected override CResultAErreur MyMajChamps()
        {
            CResultAErreur        result = base.MyMajChamps();
            CSetupSmartImportItem si     = CurrentItem as CSetupSmartImportItem;

            if (result && si != null)
            {
                si.OptionCreation = m_wndOptionCreation.Option;
                si.Source         = m_controleSource.Source;
            }
            return(result);
        }
Example #6
0
        //-------------------------------------------------------------------------------
        protected void FillChemins(List <CDefinitionProprieteDynamique> lstChemins)
        {
            CSetupSmartImportItem parent = ItemParent as CSetupSmartImportItem;

            if (parent != null)
            {
                parent.FillChemins(lstChemins);
            }
            if (Propriete != null)
            {
                lstChemins.Add(Propriete);
            }
        }
Example #7
0
        //--------------------------------------------------------------------
        private void m_btnExpand_Click(object sender, EventArgs e)
        {
            CSetupSmartImportItem item = CurrentItem as CSetupSmartImportItem;

            if (item != null && item.IsCollapse)
            {
                ((CControleSetupSmartImport)AssociatedListControl).Expand(CurrentItem);
            }
            else if (item != null && !item.IsCollapse)
            {
                ((CControleSetupSmartImport)AssociatedListControl).Collapse(CurrentItem);
            }
            m_btnExpand.Text = item.IsCollapse ? "+" : "-";
        }
 //-------------------------------------------------------------------
 public CSetupSmartImportEntiteFilleItem(
     CSetupSmartImportItem parentItem,
     CDefinitionProprieteDynamique def,
     CValeursProprietes valeursDuParent,
     CMappageEntitesFilles mappageFille,
     int nColorIndex)
     : base(parentItem, def, nColorIndex)
 {
     m_valeursDuParent = valeursDuParent;
     m_mappageFilles   = mappageFille;
     if (m_mappageFilles == null)
     {
         m_mappageFilles           = new CMappageEntitesFilles();
         m_mappageFilles.Propriete = def;
     }
 }
Example #9
0
 //-------------------------------------------------------------------
 public CSetupSmartImportChampSimpleItem(
     CSetupSmartImportItem parentItem,
     CDefinitionProprieteDynamique def,
     object valeurExemple,
     CMappageChampSimple mappageSimple,
     int nColorIndex)
     : base(parentItem, def, nColorIndex)
 {
     m_valeurExemple = valeurExemple;
     m_mappageSimple = mappageSimple;
     if (m_mappageSimple == null)
     {
         m_mappageSimple           = new CMappageChampSimple();
         m_mappageSimple.Propriete = def;
     }
 }
Example #10
0
        //-----------------------------------------------------------
        private void UpdateVisuelKey()
        {
            CSetupSmartImportItem si = CurrentItem as CSetupSmartImportItem;

            if (si != null)
            {
                if (si.CanBeUsedAsKey)
                {
                    m_imageSearchKey.Visible = true;
                    m_imageSearchKey.Image   = si.UseAsKey ? Properties.Resources.SearchKey_Yes : Properties.Resources.SearchKey_No;
                }
                else
                {
                    m_imageSearchKey.Visible = false;
                }
            }
        }
Example #11
0
 //-------------------------------------------------------------------
 public CSetupSmartImportChampEntiteItem(
     CSetupSmartImportItem itempParent,
     CValeursProprietes valeursExemple,
     CSourceSmartImport source,
     CConfigMappagesSmartImport config,
     int nColorIndex)
     : base(itempParent, null, nColorIndex)
 {
     m_valeursExemple = valeursExemple;
     m_config         = config;
     m_source         = source;
     if (m_config == null && valeursExemple != null)
     {
         m_config            = new CConfigMappagesSmartImport();
         m_config.KeyEntite  = valeursExemple.DbKeyObjet;
         m_config.TypeEntite = valeursExemple.TypeObjet;
     }
 }
Example #12
0
 //-------------------------------------------------------------------
 public CSetupSmartImportEntiteParentItem(
     CSetupSmartImportItem parentItem,
     CDefinitionProprieteDynamique def,
     CValeursProprietes valeursParent,
     CMappageEntiteParente mappageParent,
     int nColorIndex)
     : base(parentItem, def, nColorIndex)
 {
     m_valeursParent = valeursParent;
     m_mappageParent = mappageParent;
     if (m_mappageParent == null && m_valeursParent != null)
     {
         m_mappageParent                                = new CMappageEntiteParente();
         m_mappageParent.Propriete                      = def;
         m_mappageParent.ConfigEntiteParente            = new CConfigMappagesSmartImport();
         m_mappageParent.ConfigEntiteParente.TypeEntite = def.TypeDonnee.TypeDotNetNatif;
         m_mappageParent.ConfigEntiteParente.KeyEntite  = m_valeursParent.DbKeyObjet;
     }
 }
 //-------------------------------------------------------------------------------
 private void ExpandItemsWithData(CSetupSmartImportItem item)
 {
     if (item == null)
     {
         return;
     }
     if (item.HasConfigData())
     {
         if (!(item.Source is CSourceSmartImportReference) &&
             !(item.Source is CSourceSmartImportFixedValue) ||
             item.ItemParent == null)
         {
             Expand(item);
             foreach (CSetupSmartImportItem child in item.ChildItems)
             {
                 ExpandItemsWithData(child);
             }
         }
     }
 }
Example #14
0
        //---------------------------------------------------------------
        private void m_imageSearchKey_Click(object sender, EventArgs e)
        {
            CSetupSmartImportItem si      = CurrentItem as CSetupSmartImportItem;
            ToolStripDropDown     menu    = new ToolStripDropDown();
            ToolStripMenuItem     itemKey = new ToolStripMenuItem(I.T("don't use this field to search entity|20117"));

            itemKey.Image        = Properties.Resources.SearchKey_No;
            itemKey.Checked      = si != null && !si.UseAsKey;
            itemKey.CheckOnClick = true;
            itemKey.Tag          = false;
            itemKey.Click       += itemKey_Click;
            menu.Items.Add(itemKey);
            itemKey              = new ToolStripMenuItem(I.T("Use this field to search entity|20118"));
            itemKey.Image        = Properties.Resources.SearchKey_Yes;
            itemKey.CheckOnClick = true;
            itemKey.Checked      = si != null && !si.UseAsKey;
            itemKey.Tag          = true;
            itemKey.Click       += itemKey_Click;
            menu.Items.Add(itemKey);
            menu.Show(m_imageSearchKey, new Point(0, Height));
        }
 //-------------------------------------------------------------------------------
 private bool HighLight(string strIdsMappage, string strChampEnCours)
 {
     //Pas terminé, trucs plus urgents à faire
     foreach (CCustomizableListItem item in Items)
     {
         CSetupSmartImportItem si = item as CSetupSmartImportItem;
         if (si != null)
         {
             if (si.Highlight)
             {
                 RefreshItem(si);
             }
             si.Highlight = false;
         }
     }
     try
     {
         if (Items.Count() == 0)
         {
             return(false);
         }
         string[] strIds = strIdsMappage.Split('.');
         if (strIds.Length == 0)
         {
             return(false);
         }
         CSetupSmartImportChampEntiteItem root = Items[0] as CSetupSmartImportChampEntiteItem;
         if (root == null || root.ConfigMappage == null || root.ConfigMappage.IdMappage != strIds[0])
         {
             return(false);
         }
     }
     finally
     {
     }
     return(false);
 }
Example #16
0
        private void m_ctrlSetup_SelectionChanged(object sender, EventArgs e)
        {
            CSetupSmartImportItem item = m_ctrlSetup.CurrentSetupItem;

            if (item == null)
            {
                m_lblChemin.Text = "";
            }
            else
            {
                IEnumerable <CDefinitionProprieteDynamique> defs = item.Chemin;
                StringBuilder bl = new StringBuilder();
                foreach (CDefinitionProprieteDynamique def in defs)
                {
                    bl.Append(def.Nom);
                    bl.Append(".");
                }
                if (bl.Length > 0)
                {
                    bl.Remove(bl.Length - 1, 1);
                }
                m_lblChemin.Text = bl.ToString();
            }
        }
        //-------------------------------------------------------------------------------
        private void CreateChilds(CSetupSmartImportEntiteFilleItem itemFille)
        {
            int nIndex                = itemFille.Index;
            int nColIndex             = itemFille.ColorIndex;
            HashSet <CDbKey> keysDone = new HashSet <CDbKey>();

            if (itemFille.ValeursDeFilles != null)
            {
                foreach (CValeursProprietes val in itemFille.ValeursDeFilles)
                {
                    CMappageEntiteFille mappage = itemFille.MappageEntitesFilles != null?
                                                  itemFille.MappageEntitesFilles.GetMappageForEntite(val.DbKeyObjet) :
                                                      null;

                    bool bCreate = true;
                    if (HideNullSources)
                    {
                        bCreate = mappage != null && mappage.Source != null;
                    }
                    if (bCreate)
                    {
                        nColIndex++;
                        if (CSetupSmartImportItem.GetCouleur(nColIndex) == itemFille.BackColor)
                        {
                            nColIndex++;
                        }
                        CSetupSmartImportChampEntiteItem item = new CSetupSmartImportChampEntiteItem(
                            itemFille,
                            val,
                            mappage != null ? mappage.Source : null,
                            mappage != null ? mappage.ConfigMappage : null,
                            nColIndex);
                        InsertItem(++nIndex, item, false);
                        if (val.DbKeyObjet != null)
                        {
                            keysDone.Add(val.DbKeyObjet);
                        }
                    }
                }
            }
            if (itemFille.MappageEntitesFilles != null)
            {
                IEnumerable <CMappageEntiteFille> mapsFilles = itemFille.MappageEntitesFilles.MappagesEntitesFilles;
                foreach (CMappageEntiteFille mapFille in mapsFilles)
                {
                    if (mapFille.Source != null && mapFille.ConfigMappage != null)
                    {
                        CConfigMappagesSmartImport conf = mapFille.ConfigMappage;
                        if (conf.KeyEntite == null || !keysDone.Contains(conf.KeyEntite))
                        {
                            nColIndex++;
                            if (CSetupSmartImportItem.GetCouleur(nColIndex) == itemFille.BackColor)
                            {
                                nColIndex++;
                            }
                            CSetupSmartImportChampEntiteItem item = new CSetupSmartImportChampEntiteItem(
                                itemFille,
                                null,
                                mapFille.Source,
                                conf,
                                nColIndex);
                            InsertItem(++nIndex, item, false);
                            if (conf.KeyEntite != null)
                            {
                                keysDone.Add(conf.KeyEntite);
                            }
                        }
                    }
                }
            }
        }
        //-------------------------------------------------------------------------------
        private void CreateChilds(CSetupSmartImportItem si, CValeursProprietes valeurs, CConfigMappagesSmartImport configMappage)
        {
            //Champs simples
            HashSet <CDefinitionProprieteDynamique> set = new HashSet <CDefinitionProprieteDynamique>();

            if (valeurs != null)
            {
                foreach (CDefinitionProprieteDynamique prop in valeurs.GetDefinitionsSimples())
                {
                    if (prop != null)
                    {
                        set.Add(prop);
                    }
                }
            }
            if (configMappage != null)
            {
                foreach (CMappageChampSimple mappage in configMappage.MappagesChampsSimples)
                {
                    if (mappage.Propriete != null)
                    {
                        set.Add(mappage.Propriete);
                    }
                }
            }
            List <CDefinitionProprieteDynamique> lst = new List <CDefinitionProprieteDynamique>(set.ToArray());

            lst.Sort((x, y) => x.Nom.CompareTo(y.Nom));
            int nIndex = si.Index;

            foreach (CDefinitionProprieteDynamique def in lst)
            {
                CMappageChampSimple mappageSimple = configMappage != null?
                                                    configMappage.GetMappageSimpleFor(def) :
                                                        null;

                bool bCreate = true;
                if (HideNullSources)
                {
                    bCreate = mappageSimple != null && mappageSimple.Source != null;
                }
                if (bCreate)
                {
                    CSetupSmartImportChampSimpleItem item = new CSetupSmartImportChampSimpleItem(
                        si,
                        def,
                        valeurs != null ? valeurs.GetValeurSimple(def) : null,
                        mappageSimple,
                        si.ColorIndex);
                    InsertItem(++nIndex, item, false);
                }
            }


            //Champs parents
            int nColorIndex = si.ColorIndex;

            set.Clear();
            if (valeurs != null)
            {
                foreach (CDefinitionProprieteDynamique def in valeurs.GetDefinitionsParentes())
                {
                    if (def != null)
                    {
                        set.Add(def);
                    }
                }
            }
            if (configMappage != null)
            {
                foreach (CMappageEntiteParente map in configMappage.MappagesEntitesParentes)
                {
                    if (map.Propriete != null)
                    {
                        set.Add(map.Propriete);
                    }
                }
            }
            lst = new List <CDefinitionProprieteDynamique>(set.ToArray());
            lst.Sort((x, y) => x.Nom.CompareTo(y.Nom));
            foreach (CDefinitionProprieteDynamique def in lst)
            {
                CMappageEntiteParente mappageParent = configMappage != null?configMappage.GetMappageParentFor(def) : null;

                bool bCreate = true;
                if (HideNullSources)
                {
                    bCreate = mappageParent != null && mappageParent.Source != null;
                }
                if (bCreate)
                {
                    nColorIndex++;
                    if (CSetupSmartImportItem.GetCouleur(nColorIndex) == si.BackColor)
                    {
                        nColorIndex++;
                    }

                    CSetupSmartImportEntiteParentItem item = new CSetupSmartImportEntiteParentItem(
                        si,
                        def,
                        valeurs != null ? valeurs.GetValeurParente(def) : null,
                        mappageParent,
                        nColorIndex);
                    InsertItem(++nIndex, item, false);
                }
            }

            set.Clear();
            if (valeurs != null)
            {
                foreach (CDefinitionProprieteDynamique def in valeurs.GetDefinitionsFilles())
                {
                    if (def != null)
                    {
                        set.Add(def);
                    }
                }
            }
            if (configMappage != null)
            {
                foreach (CMappageEntitesFilles map in configMappage.MappagesEntitesFilles)
                {
                    if (map.Propriete != null)
                    {
                        set.Add(map.Propriete);
                    }
                }
            }
            lst = new List <CDefinitionProprieteDynamique>(set.ToArray());
            lst.Sort((x, y) => x.Nom.CompareTo(y.Nom));
            foreach (CDefinitionProprieteDynamique def in lst)
            {
                CMappageEntitesFilles mappageFilles = configMappage != null?configMappage.GetMappageFilleFor(def) : null;

                bool bCreate = true;
                if (HideNullSources)
                {
                    bCreate = mappageFilles != null && mappageFilles.MappagesEntitesFilles.Count() > 0;
                }
                if (bCreate)
                {
                    CSetupSmartImportEntiteFilleItem item = new CSetupSmartImportEntiteFilleItem(
                        si,
                        def,
                        valeurs,
                        mappageFilles,
                        si.ColorIndex
                        );
                    InsertItem(++nIndex, item, false);
                }
            }
        }
Example #19
0
        //--------------------------------------------------------------------
        protected override CResultAErreur MyInitChamps(CCustomizableListItem item)
        {
            CResultAErreur result = base.MyInitChamps(item);

            if (!result)
            {
                return(result);
            }
            CSetupSmartImportItem si = item as CSetupSmartImportItem;

            if (si != null)
            {
                m_lblChamp.BackColor = si.BackColor;
                m_lblMarge.BackColor = si.BackColor;
                if (si.Niveau > 0)
                {
                    m_lblMarge.Width   = si.Niveau * 10;
                    m_lblMarge.Visible = true;
                }
                else
                {
                    m_lblMarge.Visible = false;
                }

                if (si.Propriete != null)
                {
                    m_lblChamp.Text = si.Propriete.Nom;
                }
                else
                {
                    m_lblChamp.Text = "";
                }

                if (si.ItemParent == null)
                {
                    si.Source = new CSourceSmartImportObjet();
                }
                BackColor     = Color.White;
                ColorInactive = Parent.BackColor;
                m_wndOptionCreation.IsApplicable = false;

                m_lblValeur.Text = si.LibelleValeur;

                m_btnExpand.Visible = si.IsExpandable;
                m_btnExpand.Text    = si.IsCollapse ? "+" : "-";

                if (si.IsEntite)
                {
                    if (si.Index != this.AssociatedListControl.CurrentItemIndex)
                    {
                        BackColor = si.BackColor;
                    }
                    ColorInactive = si.BackColor;
                }
                m_wndOptionCreation.IsApplicable = si.CanHaveOptionCreation;
                m_wndOptionCreation.Option       = si.OptionCreation;

                IEnumerable <Type> sourcesPossibles = si.SourcesPossibles;
                if (sourcesPossibles.Count() > 0)
                {
                    m_controleSource.Visible             = true;
                    m_controleSource.TypesSourcesValides = sourcesPossibles;
                    m_controleSource.Init(si.Source, si);
                    m_controleSource.DefaultValue = si.ValeurParDefaut;
                    m_controleSource.SetIsDrawingImage(IsCreatingImage);
                    m_imageSearchKey.Visible = true;
                }
                else
                {
                    m_controleSource.Visible = false;
                }


                UpdateVisuelKey();
            }
            else
            {
                m_btnExpand.Visible = false;
            }
            return(result);
        }