Пример #1
0
        //----------------------------------------------------
        private void ShowObjetCourant()
        {
            m_listeObjetsAnalyses.Clear();
            m_listeObjetsAnalyses.Add(m_pileObjets.Peek());
            m_panelTitres.SuspendDrawing();
            m_panelTitres.ClearAndDisposeControls();
            int nHeight = 0;

            foreach (CObjetDonnee objet in m_pileObjets)
            {
                LinkLabel linkObjet = new LinkLabel();
                linkObjet.Text = DynamicClassAttribute.GetNomConvivial(objet.GetType()) + "-" + objet.DescriptionElement;
                if (nHeight == 0)
                {
                    linkObjet.BackColor = m_arbre.BackColor;
                }
                m_panelTitres.Controls.Add(linkObjet);
                linkObjet.Dock     = DockStyle.Top;
                linkObjet.Tag      = objet;
                linkObjet.AutoSize = true;
                nHeight           += linkObjet.Height;
                linkObjet.SendToBack();
                linkObjet.Click += linkObjet_Click;
            }
            m_panelTitres.Height = nHeight;
            m_panelTitres.ResumeDrawing();
            RemplirArbre();
        }
Пример #2
0
        //----------------------------------------------------------
        public void Init(IObjetDonneeAutoReferenceNavigable objet)
        {
            m_panelHierarchie.ClearAndDisposeControls();
            m_objetHierarchique = objet;
            IObjetDonneeAutoReferenceNavigable parent = objet != null ? objet.ObjetAutoRefParent as IObjetDonneeAutoReferenceNavigable: null;
            bool bDernier = true;

            m_panelHierarchie.SuspendDrawing();
            m_iconUp.Visible = parent != null;
            while (parent != null)
            {
                if (!bDernier)
                {
                    Label lbl = new Label();
                    lbl.Text      = "/";
                    lbl.AutoSize  = true;
                    lbl.ForeColor = Color.Blue;
                    m_panelHierarchie.Controls.Add(lbl);
                    lbl.Dock = DockStyle.Left;
                    lbl.SendToBack();
                }
                bDernier = false;
                LinkLabel link = new LinkLabel();
                link.Text = sc2i.common.CUtilTexte.TronqueLeMilieu(parent.Libelle, 32);
                m_toolTip.SetToolTip(link, parent.Libelle);
                link.Dock     = DockStyle.Left;
                link.Tag      = parent;
                link.AutoSize = true;
                m_panelHierarchie.Controls.Add(link);
                link.SendToBack();
                link.Click += new EventHandler(link_Click);
                parent      = parent.ObjetAutoRefParent as IObjetDonneeAutoReferenceNavigable;
            }
            m_iconModifier.Visible = m_objetHierarchique is CObjetHierarchique;
            m_panelHierarchie.ResumeDrawing();
            UpdateVisuLoupe();
        }