Пример #1
0
        //---------------------------------------------------------------
        protected override void MyCreateControle(
            CCreateur2iFormulaireV2 createur,
            C2iWnd wnd,
            Control parent,
            IFournisseurProprietesDynamiques fournisseurProprietes)
        {
            m_createur = createur;

            if (WndSnmp == null)
            {
                return;
            }

            CCreateur2iFormulaireV2.AffecteProprietesCommunes(WndSnmp, m_panel);
            parent.Controls.Add(m_panel);
            m_wndChamp = createur.CreateControle(WndSnmp.FieldZone, m_panel, fournisseurProprietes) as CWndFor2iWndVariable;
            m_wndChamp.OnValueChanged += new EventHandler(OnChampValueChanged);
            CChampCustom champCustom = null;

            if (WndSnmp.FieldZone.ChampCustom != null)
            {
                champCustom = WndSnmp.FieldZone.ChampCustom;
            }
            if (champCustom != null)
            {
                switch (champCustom.TypeDonneeChamp.TypeDonnee)
                {
                case TypeDonnee.tBool:
                    m_controleSnmp         = new CheckBox();
                    m_controleSnmp.Enabled = false;
                    break;

                case TypeDonnee.tDate:
                case TypeDonnee.tDouble:
                case TypeDonnee.tEntier:
                case TypeDonnee.tString:
                    m_controleSnmp = new C2iTextBox();
                    if (WndSnmp.FieldZone.MultiLine)
                    {
                        ((C2iTextBox)m_controleSnmp).Multiline = true;
                    }
                    ((C2iTextBox)m_controleSnmp).LockEdition          = true;
                    ((C2iTextBox)m_controleSnmp).OnChangeLockEdition += new EventHandler(CWndForWndChampSnmp_OnChangeLockEdition);
                    break;

                default:
                    break;
                }
                if (m_controleSnmp != null)
                {
                    m_panel.Controls.Add(m_controleSnmp);
                    m_controleSnmp.Location  = WndSnmp.SnmpZone.Position;
                    m_controleSnmp.Size      = WndSnmp.SnmpZone.Size;
                    m_controleSnmp.BackColor = WndSnmp.SnmpZone.BackColor;
                    m_controleSnmp.ForeColor = WndSnmp.SnmpZone.ForeColor;
                    switch (WndSnmp.SnmpZone.DockStyle)
                    {
                    case sc2i.formulaire.EDockStyle.Bottom:
                        m_controleSnmp.Dock = DockStyle.Bottom;
                        break;

                    case sc2i.formulaire.EDockStyle.Fill:
                        m_controleSnmp.Dock = DockStyle.Fill;
                        break;

                    case sc2i.formulaire.EDockStyle.Left:
                        m_controleSnmp.Dock = DockStyle.Left;
                        break;

                    case sc2i.formulaire.EDockStyle.None:
                        m_controleSnmp.Dock = DockStyle.None;
                        break;

                    case sc2i.formulaire.EDockStyle.Right:
                        m_controleSnmp.Dock = DockStyle.Right;
                        break;

                    case sc2i.formulaire.EDockStyle.Top:
                        m_controleSnmp.Dock = DockStyle.Top;
                        break;

                    default:
                        break;
                    }
                }
            }
            m_imageWarning = new PictureBox();
            m_panel.Controls.Add(m_imageWarning);
            if (m_controleSnmp != null)
            {
                m_imageWarning.Location = new Point(m_controleSnmp.Location.X + m_controleSnmp.Size.Width - 16,
                                                    m_controleSnmp.Location.Y);
            }
            if (m_controleSnmp != null)
            {
                m_imageWarning.Size = new Size(16, m_controleSnmp.Height);
            }
            m_imageWarning.BackColor = wnd.BackColor;
            m_imageWarning.SizeMode  = PictureBoxSizeMode.CenterImage;
            m_imageWarning.Image     = Properties.Resources.alerte;
            m_imageWarning.BringToFront();
            m_imageWarning.Visible = false;

            m_imageTools = new PictureBox();
            m_panel.Controls.Add(m_imageTools);
            m_imageTools.Dock      = DockStyle.Right;
            m_imageTools.BackColor = wnd.BackColor;
            if (m_controleSnmp != null)
            {
                m_imageTools.Size = new Size(16, m_controleSnmp.Height);
            }
            m_imageTools.SendToBack();
            m_imageTools.SizeMode = PictureBoxSizeMode.CenterImage;
            m_imageTools.Image    = Properties.Resources.tools;
            m_imageTools.Click   += new EventHandler(m_imageTools_Click);
            m_imageTools.Cursor   = Cursors.Hand;


            if (WndSnmp.IsHorizontal)
            {
                if (m_wndChamp != null && m_wndChamp.Control != null)
                {
                    m_wndChamp.Control.Dock = DockStyle.Fill;
                    m_wndChamp.Control.BringToFront();
                }
                if (m_controleSnmp != null)
                {
                    m_controleSnmp.Dock = DockStyle.Right;
                    if (parent is sc2i.formulaire.win32.datagrid.CControlEncapsuleWndControl)
                    {
                        m_controleSnmp.Width = parent.Width / 2;
                    }
                }
                m_imageWarning.Dock = DockStyle.Right;
                m_imageTools.Dock   = DockStyle.Right;
                m_imageWarning.SendToBack();
                m_imageTools.SendToBack();
            }
            else
            {
                if (m_wndChamp != null && m_wndChamp.Control != null)
                {
                    m_wndChamp.Control.Dock = DockStyle.Fill;
                    m_wndChamp.Control.BringToFront();
                }
                if (m_controleSnmp != null)
                {
                    m_controleSnmp.Dock = DockStyle.Bottom;
                }
                m_imageWarning.Dock = DockStyle.Right;
                m_imageTools.Dock   = DockStyle.Right;
                m_imageWarning.SendToBack();
                m_imageTools.SendToBack();
            }
            parent.SizeChanged += new EventHandler(parent_SizeChanged);
        }
Пример #2
0
        //---------------------------------------------------------------
        protected override void MyCreateControle(
            CCreateur2iFormulaireV2 createur,
            C2iWnd wnd,
            Control parent,
            IFournisseurProprietesDynamiques fournisseurProprietes)
        {
            if (WndOrange == null)
            {
                return;
            }

            CCreateur2iFormulaireV2.AffecteProprietesCommunes(WndOrange, m_panel);
            parent.Controls.Add(m_panel);
            m_wndForLabel = createur.CreateControle(WndOrange.LabelZone, m_panel, fournisseurProprietes) as CWndFor2iLabel;
            m_wndChamp    = createur.CreateControle(WndOrange.FieldZone, m_panel, fournisseurProprietes) as CWndFor2iWndVariable;
            CChampCustom champCustom = null;

            if (WndOrange.FieldZone.ChampCustom != null)
            {
                champCustom = WndOrange.FieldZone.ChampCustom;
            }
            //m_wndValeurOrange = createur.CreateControle(WndOrange.OrangeZone, m_panel, fournisseurProprietes) as CWndFor2iLabel;
            if (champCustom != null)
            {
                switch (champCustom.TypeDonneeChamp.TypeDonnee)
                {
                case TypeDonnee.tBool:
                    m_controleOrange         = new CheckBox();
                    m_controleOrange.Enabled = false;
                    break;

                case TypeDonnee.tDate:
                case TypeDonnee.tDouble:
                case TypeDonnee.tEntier:
                case TypeDonnee.tString:
                    m_controleOrange = new C2iTextBox();
                    if (WndOrange.FieldZone.MultiLine)
                    {
                        ((C2iTextBox)m_controleOrange).Multiline = true;
                    }
                    ((C2iTextBox)m_controleOrange).LockEdition          = true;
                    ((C2iTextBox)m_controleOrange).OnChangeLockEdition += new EventHandler(CWndForWndChampOrange_OnChangeLockEdition);
                    break;

                default:
                    break;
                }
                if (m_controleOrange != null)
                {
                    m_panel.Controls.Add(m_controleOrange);
                    m_controleOrange.Location  = WndOrange.OrangeZone.Position;
                    m_controleOrange.Size      = WndOrange.OrangeZone.Size;
                    m_controleOrange.BackColor = WndOrange.OrangeZone.BackColor;
                    m_controleOrange.ForeColor = WndOrange.OrangeZone.ForeColor;
                    switch (WndOrange.OrangeZone.DockStyle)
                    {
                    case sc2i.formulaire.EDockStyle.Bottom:
                        m_controleOrange.Dock = DockStyle.Bottom;
                        break;

                    case sc2i.formulaire.EDockStyle.Fill:
                        m_controleOrange.Dock = DockStyle.Fill;
                        break;

                    case sc2i.formulaire.EDockStyle.Left:
                        m_controleOrange.Dock = DockStyle.Left;
                        break;

                    case sc2i.formulaire.EDockStyle.None:
                        m_controleOrange.Dock = DockStyle.None;
                        break;

                    case sc2i.formulaire.EDockStyle.Right:
                        m_controleOrange.Dock = DockStyle.Right;
                        break;

                    case sc2i.formulaire.EDockStyle.Top:
                        m_controleOrange.Dock = DockStyle.Top;
                        break;

                    default:
                        break;
                    }
                }
            }
            m_imageWarning = new PictureBox();
            m_panel.Controls.Add(m_imageWarning);
            if (m_controleOrange != null)
            {
                m_imageWarning.Location = new Point(m_controleOrange.Location.X + m_controleOrange.Size.Width - 16,
                                                    m_controleOrange.Location.Y);
            }
            m_imageWarning.Size      = new Size(16, m_controleOrange.Height);
            m_imageWarning.BackColor = m_controleOrange.BackColor;
            m_imageWarning.SizeMode  = PictureBoxSizeMode.CenterImage;
            m_imageWarning.Image     = Properties.Resources.Warning;
            m_imageWarning.BringToFront();
            m_imageWarning.Visible = false;
        }