예제 #1
0
 public static void Autoexec()
 {
     if (!m_bReferenceAupresDuPanelFormulaireSurElement)
     {
         m_bReferenceAupresDuPanelFormulaireSurElement = true;
         CPanelFormulaireSurElement.AddGetCreateur(new CPanelFormulaireSurElement.GetCreateurForObjectDelegate(GetCreateurForObject));
     }
 }
예제 #2
0
        //---------------------------------------------------------------
        private void FillEntities(HashSet <string> indexsOuverts)
        {
            if (m_typeEntites != null && m_typeEntites.ModeFormulaire.Code == EModeFormulairePourTypeEntite.FormulaireSurAgent)
            {
                if (m_typeEntites.FormulaireUnique != null)
                {
                    CPanelFormulaireSurElement panel = new CPanelFormulaireSurElement();
                    panel.InitPanel(m_typeEntites.FormulaireUnique.Formulaire, m_conteneur);
                    m_panelEntites.Controls.Add(panel);
                    panel.Dock        = DockStyle.Fill;
                    panel.LockEdition = !m_extModeEdition.ModeEdition;
                    m_extModeEdition.SetModeEdition(panel, TypeModeEdition.EnableSurEdition);
                }
                return;
            }
            CListeObjetsDonnees lst = m_conteneur.EntitesRacines;

            lst.Filtre = new CFiltreData(CTypeEntiteSnmp.c_champId + "=@1",
                                         m_typeEntites.Id);
            lst.Tri = CEntiteSnmp.c_champIndex;

            /*if (lst.Count == 1)
             * {
             *  CEntiteSnmp entite = lst[0] as CEntiteSnmp;
             *  CPanelChampsCustom panel = new CPanelChampsCustom();
             *  m_panelEntites.Controls.Add(panel);
             *  panel.Dock = DockStyle.Fill;
             *  panel.LockEdition = !m_extModeEdition.ModeEdition;
             *  m_extModeEdition.SetModeEdition(panel, TypeModeEdition.EnableSurEdition);
             *  panel.ElementEdite = entite;
             * }
             * else*/
            {
                foreach (CEntiteSnmp entite in lst)
                {
                    CPanelEditeEntiteSnmp panel = new CPanelEditeEntiteSnmp();
                    m_panelEntites.Controls.Add(panel);
                    panel.Dock = DockStyle.Top;
                    panel.Init(entite);
                    panel.BringToFront();
                    panel.LockEdition = !m_extModeEdition.ModeEdition;
                    m_extModeEdition.SetModeEdition(panel, TypeModeEdition.EnableSurEdition);
                    if (indexsOuverts != null && indexsOuverts.Contains(entite.Index))
                    {
                        panel.Extend();
                    }
                    if (lst.Count == 1)
                    {
                        panel.Extend();
                        panel.TitleHeight = 0;
                    }
                }
            }
        }
예제 #3
0
        //---------------------------------------------------------------
        public CResultAErreur MajChamps()
        {
            CResultAErreur result = CResultAErreur.True;

            foreach (Control ctrl in m_panelEntites.Controls)
            {
                CPanelChampsCustom panelChamps = ctrl as CPanelChampsCustom;
                if (panelChamps != null)
                {
                    result = panelChamps.MAJ_Champs();
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Erreur on entity @1|20312", panelChamps.ElementEdite.DescriptionElement));
                        return(result);
                    }
                }
                CPanelEditeEntiteSnmp panelSlide = ctrl as CPanelEditeEntiteSnmp;
                if (panelSlide != null)
                {
                    result = panelSlide.MajChamps();
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Erreur on entity @1|20312", panelSlide.ElementEdite.DescriptionElement));
                        return(result);
                    }
                }
                CPanelFormulaireSurElement panelFormulaire = ctrl as CPanelFormulaireSurElement;
                if (panelFormulaire != null)
                {
                    result = panelFormulaire.AffecteValeursToElement();
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Erreur on entity @1|20312", panelSlide.ElementEdite.DescriptionElement));
                        return(result);
                    }
                }
            }
            return(result);
        }
예제 #4
0
        //--------------------------------------------
        private void InitFormulaire(CFormulaire formulaire)
        {
            m_panelFormulaire.SuspendDrawing();
            int nIdFormulaire = formulaire != null?formulaire.Id:-1;

            foreach (KeyValuePair <int, CPanelFormulaireSurElement> kv in m_dicFormulaireToPanelControles)
            {
                if (kv.Key != nIdFormulaire)
                {
                    kv.Value.Visible = false;
                }
            }
            m_panelFormulaireEnCours = null;
            if (formulaire != null)
            {
                CPanelFormulaireSurElement panel = null;
                if (!m_dicFormulaireToPanelControles.TryGetValue(nIdFormulaire, out panel))
                {
                    panel = new CPanelFormulaireSurElement();
                    m_panelFormulaire.Controls.Add(panel);
                    panel.Dock = DockStyle.Fill;
                    m_dicFormulaireToPanelControles[nIdFormulaire] = panel;
                }
                if (panel.ElementEdite != Operation)
                {
                    panel.InitPanel(formulaire.Formulaire, Operation);
                }
                panel.Visible            = true;
                panel.LockEdition        = LockEdition;
                panel.Size               = formulaire.Formulaire.Size;
                panel.AutoSize           = formulaire.Formulaire.AutoSize;
                panel.AutoScroll         = !formulaire.Formulaire.AutoSize;
                m_panelFormulaire.Height = panel.Height + 3;
                m_panelFormulaireEnCours = panel;
            }
            m_panelFormulaire.ResumeDrawing();
        }