public void Init(
            CRepresentationExpressionGraphique expressionGraphique,
            int nNumeroParametre,
            IFournisseurProprietesDynamiques fournisseur,
            CObjetPourSousProprietes objetAnalyse)
        {
            m_fournisseur          = fournisseur;
            m_bIsInitializing      = true;
            m_lblNomParametre.Text = I.T("Parametre @1|20000)", (nNumeroParametre + 1).ToString());
            C2iExpressionAnalysable expAn = expressionGraphique.Formule as C2iExpressionAnalysable;

            if (expAn != null)
            {
                CInfo2iExpression info = expAn.GetInfos();
                m_lblNomParametre.Text = info.GetNomParametre(nNumeroParametre);
                m_toolTip.SetToolTip(m_lblNomParametre, m_lblNomParametre.Text);
            }
            m_expressionGraphique = expressionGraphique;
            m_nNumParametre       = nNumeroParametre;
            m_txtFormule.Init(fournisseur, objetAnalyse);
            CRepresentationExpressionGraphique graf = expressionGraphique.GetExterne(m_nNumParametre);

            if (graf != null)
            {
                m_chkVisible.Checked = true;
            }
            else
            {
                m_chkVisible.Checked = false;
            }
            UpdateWindow();
            m_bIsInitializing = false;
        }
示例#2
0
        private void ShowInterfaceLienParametre(
            CRepresentationExpressionGraphique source,
            CRepresentationExpressionGraphique dest)
        {
            Dictionary <int, CMenuNumero> dicMenus = new Dictionary <int, CMenuNumero>();

            if (source == null || dest == null)
            {
                return;
            }
            if (m_menuNumeroParametre.Items.Count == 0)
            {
                //Création initiale des sous menus
                for (int n = 0; n < 20; n++)
                {
                    CMenuNumero menu = new CMenuNumero(n.ToString(), n);
                    m_menuNumeroParametre.Items.Add(menu);
                    menu.Click += new EventHandler(menuNumero_Click);
                }
            }
            foreach (ToolStripMenuItem item in m_menuNumeroParametre.Items)
            {
                CMenuNumero num = item as CMenuNumero;
                if (num != null)
                {
                    dicMenus[num.Numero] = num;
                }
            }

            C2iExpressionAnalysable expAn = dest.Formule == null ? null : dest.Formule as C2iExpressionAnalysable;

            if (expAn != null)
            {
                CInfo2iExpression info = null;
                info = expAn.GetInfos();
                CInfo2iDefinitionParametres[] infosParams = info.InfosParametres;
                for (int n = 0; n < 20; n++)
                {
                    string strNom = info.GetNomParametre(n);
                    if (strNom.Trim() == "")
                    {
                        dicMenus[n].Visible = false;
                    }
                    else
                    {
                        dicMenus[n].Visible = true;
                        dicMenus[n].Text    = strNom;
                    }
                }

                sc2i.expression.C2iExpression[] parametres = dest.Formule.Parametres2i;
                foreach (ToolStripMenuItem item in m_menuNumeroParametre.Items)
                {
                    int nPos = item.Text.IndexOf('(');
                    if (nPos > 0)
                    {
                        item.Text = item.Text.Substring(0, nPos).Trim();
                    }
                    CMenuNumero numero = item as CMenuNumero;
                    if (numero != null)
                    {
                        if (numero.Numero < parametres.Length)
                        {
                            sc2i.expression.C2iExpression exp = parametres[numero.Numero];
                            if (exp != null)
                            {
                                item.Text += " (" + exp.GetString() + ")";
                            }
                        }
                    }
                }
                m_sourceLienParametre = source;
                m_destLienParametre   = dest;
                m_menuNumeroParametre.Show(Cursor.Position);
            }
        }