Пример #1
0
        void itemMenuFiltre_Click(object sender, EventArgs e)
        {
            CMenuItemFiltre menuFiltre = sender as CMenuItemFiltre;

            if (menuFiltre != null)
            {
                CFiltreDynamiqueInDb filtreInDb = menuFiltre.Filtre;
                CFiltreDynamique     filtre     = filtreInDb.Filtre;

                if (m_lastFiltreDynamique != null)
                {
                    foreach (IVariableDynamique variable in m_lastFiltreDynamique.ListeVariables)
                    {
                        object             val  = m_lastFiltreDynamique.GetValeurChamp(variable.IdVariable);
                        IVariableDynamique var2 = filtre.GetVariable(variable.IdVariable);
                        if (var2 != null && var2.Nom == variable.Nom)
                        {
                            filtre.SetValeurChamp(var2, val);
                        }
                    }
                }
                m_lastFiltreDynamique = filtre;

                if (filtre.FormulaireEdition.Childs.Count() > 0)
                {
                    if (!CFormFormulairePopup.EditeElement(
                            filtre.FormulaireEdition, filtre, "Filter|20175"))
                    {
                        return;
                    }
                }
                ApplyFiltre(filtre);
            }
        }
Пример #2
0
        /// //////////////////////////////////////////////////////////
        private void m_lnkAjoutParFiltre_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
        {
            m_menuPopup.MenuItems.Clear();
            CListeObjetsDonnees liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(CFiltreDynamiqueInDb));

            liste.Filtre = new CFiltreData(CFiltreDynamiqueInDb.c_champTypeElements + "=@1",
                                           m_typElements.ToString());
            foreach (CFiltreDynamiqueInDb filtre in liste)
            {
                MenuItem item = new CMenuItemFiltre(filtre);
                item.Click += new EventHandler(ItemFiltreClick);
                m_menuPopup.MenuItems.Add(item);
            }
            m_menuPopup.Show(m_lnkAjoutParFiltre, new Point(0, m_lnkAjoutParFiltre.Height));
        }
Пример #3
0
 private void m_menuFiltres_Opening(object sender, CancelEventArgs e)
 {
     if (sender == m_menuFiltres)
     {
         foreach (IDisposable obj in new ArrayList(m_menuFiltres.Items))
         {
             obj.Dispose();
         }
         CListeObjetDonneeGenerique <CFiltreDynamiqueInDb> lst = new CListeObjetDonneeGenerique <CFiltreDynamiqueInDb>(m_contexteDonnee);
         lst.Filtre = new CFiltreData(CFiltreDynamiqueInDb.c_champTypeElements + "=@1",
                                      typeof(CProjet).ToString());
         foreach (CFiltreDynamiqueInDb filtre in lst)
         {
             CMenuItemFiltre itemMenuFiltre = new CMenuItemFiltre(filtre);
             itemMenuFiltre.Click += new EventHandler(itemMenuFiltre_Click);
             m_menuFiltres.Items.Add(itemMenuFiltre);
         }
     }
 }