コード例 #1
0
        private void DisplayItemProperties(TreeNode node)
        {
            if (m_bIsFillingTree)
            {
                return;
            }
            object item = node != null?node.Tag:null;

            if (m_editeurEnCours != null)
            {
                ((Control)m_editeurEnCours).Visible = false;
                m_panelPropriétés.Controls.Remove((Control)m_editeurEnCours);
            }
            m_editeurEnCours = null;
            m_nodeEdite      = null;
            if (item != null)
            {
                m_dicEditeursAlloues.TryGetValue(item.GetType(), out m_editeurEnCours);
            }
            if (m_editeurEnCours == null && item != null)
            {
                Type tpEditeur = CGestionnaireEditionItemCarte.GetTypeEditeur(item.GetType());
                if (tpEditeur != null)
                {
                    m_editeurEnCours = Activator.CreateInstance(tpEditeur) as IEditeurItemCarte;
                    CWin32Traducteur.Translate(m_editeurEnCours);
                    m_editeurEnCours.OnModification += m_editeurEnCours_OnModification;
                    if (m_editeurEnCours != null)
                    {
                        m_dicEditeursAlloues[item.GetType()] = m_editeurEnCours;
                    }
                }
            }
            if (m_editeurEnCours != null)
            {
                Control ctrl = m_editeurEnCours as Control;
                ctrl.Dock    = DockStyle.Fill;
                ctrl.Parent  = m_panelPropriétés;
                ctrl.Visible = true;
                m_editeurEnCours.Init(item);
                m_nodeEdite = node;
                m_editeurEnCours.LockEdition = !m_gestionnaireModeEdition.ModeEdition;
            }

            TreeNode nodeWithElementDeGpsCarte = GetNodeIElementDeGpsCarte(node);;

            if (nodeWithElementDeGpsCarte != null)
            {
                ShowMovePoints(nodeWithElementDeGpsCarte.Tag as IElementDeGPSCarte);
            }
        }
コード例 #2
0
 //---------------------------------------------------------
 public static void Autoexec()
 {
     CGestionnaireEditionItemCarte.RegisterEditeur(typeof(CGPSLineSegment), typeof(CControleEditeGpsSegment));
 }