Exemplo n.º 1
0
        private void PopulateCategory(TreeNode current)
        {
            ModelCategory curModel = (ModelCategory)current.Tag;

            foreach (ModelCategory childModel in curModel.Childs)
            {
                TreeNode childNode = new TreeNodeCategory(childModel);
                current.Nodes.Add(childNode);
                PopulateCategory(childNode);
            }
        }
Exemplo n.º 2
0
 void Category_OnCategoryAdded(ModelCategory model)
 {
     if (this.InvokeRequired)
     {
         this.Invoke(new MgrCategory.OnCategorySingleModelHandler(Category_OnCategoryAdded), model);
     }
     else if (model != null && model.Parent != null)
     {
         string           sPath      = model.Parent.FullPath;
         TreeNodeCategory parentNode = m_rootNode.FindNode(sPath);
         if (parentNode != null)
         {
             TreeNode node = new TreeNodeCategory(model);
             parentNode.Nodes.Add(node);
             SelectedNodeChange(node);
         }
     }
 }
Exemplo n.º 3
0
        void Category_OnCategoryDeleted(ModelCategory model)
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new MgrCategory.OnCategorySingleModelHandler(Category_OnCategoryDeleted), model);
            }
            else if (model != null)
            {
                string           sPath      = model.FullPath;
                TreeNodeCategory node       = m_rootNode.FindNode(sPath);
                TreeNode         parentNode = node.Parent;

                if (parentNode != null)
                {
                    parentNode.Nodes.Remove(node);
                    SelectedNodeChange(parentNode);
                }
            }
        }
Exemplo n.º 4
0
        public CtrlCategoryNavigator()
        {
            InitializeComponent();
            if (DataManager.Current != null)
            {
                m_rootNode = null;
                ModelCategory modelRoot = DataManager.Current.Category.Root;
                if (modelRoot != null)
                {
                    m_rootNode     = new TreeNodeCategory(modelRoot);
                    m_rootNode.Tag = modelRoot;
                    treeCategory.Nodes.Add(m_rootNode);

                    PopulateCategory(m_rootNode);

                    m_rootNode.ExpandAll();
                    treeCategory.SelectedNode = m_rootNode;
                }
                DataManager.Current.Category.OnCategoryAdded   += Category_OnCategoryAdded;
                DataManager.Current.Category.OnCategoryDeleted += Category_OnCategoryDeleted;
            }
        }
Exemplo n.º 5
0
        private void treeCategory_DragDrop(object sender, DragEventArgs e)
        {
            log.Debug(sender);
            Point pos = treeCategory.PointToClient(new Point(e.X, e.Y));

            pos.Offset(this.Padding.Left * -1, this.Padding.Top * -1);
            TreeNode selectedNode = treeCategory.GetNodeAt(pos);

            if (selectedNode != null)
            {
                ModelCategory      targetModel     = (ModelCategory)selectedNode.Tag;
                List <ModelReqmnt> aryRequirements = e.Data.GetData(typeof(List <ModelReqmnt>)) as List <ModelReqmnt>;
                TreeNodeCategory   sourceNode      = e.Data.GetData(typeof(TreeNodeCategory)) as TreeNodeCategory;
                if (aryRequirements != null && aryRequirements.Count > 0)
                {
                    string sItem = Convert.ToString(e.Data);
                    if (aryRequirements != null && aryRequirements.Count > 0)
                    {
                        DataManager.Current.Requirement.ChangeCategory(targetModel, aryRequirements);
                    }
                }
                else if (sourceNode != null)
                {
                    ModelCategory sourceModel = sourceNode.Tag as ModelCategory;
                    string        sMessage    = string.Format("Really move '{0}[{1}]' to '{2}[{3}]'?"
                                                              , sourceModel.DisplayName, sourceModel.Code
                                                              , targetModel.DisplayName, targetModel.Code);
                    if (MessageBox.Show(sMessage, "CONFIRM", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                    {
                        sourceModel.ParentId = targetModel.Id;
                        DacFactory.Current.Category.UpdateCategory(sourceModel);
                        sourceNode.Parent.Nodes.Remove(sourceNode);
                        selectedNode.Nodes.Add(sourceNode);
                        selectedNode.ExpandAll();
                    }
                }
            }
        }
Exemplo n.º 6
0
        // ******************************************************************************** //

        public TreeNodeTrivia(bool isLeading, SyntaxTrivia syntaxTrivia, [CanBeNull] TreeNode parentTreeNode) : base(parentTreeNode)
        {
            _treeNodeCategory = isLeading ? Models.TreeNodeCategory.LeadingTrivia : Models.TreeNodeCategory.TrailingTrivia;
            SyntaxTrivia      = syntaxTrivia;
        }