Beispiel #1
0
        public object _info;                                //其他信息

        public NodeInfo()
        {
            _formFlag = false;
            _form     = null;
            _nodeType = string.Empty;
            _info     = null;
            _formType = 0;
        }
Beispiel #2
0
        /// <summary>
        /// 给一个TreeView的节点添加一个子节点
        /// </summary>
        /// <param name="fatherNode"></param>
        /// <param name="nodeName"></param>
        /// <param name="type"></param>
        public static void AddChildrenNode(TreeNode fatherNode, string nodeName, Princeple.FormType type)
        {
            var node = new TreeNode(nodeName);

            node.Tag = new NodeInfo();
            ((NodeInfo)(node.Tag))._formType = type;
            ((NodeInfo)(node.Tag))._nodeType = type.ToString();
            ((NodeInfo)(node.Tag))._xmlPath  = GetXmlPath(type, nodeName);
            fatherNode.Nodes.Add(node);
        }
        //获取相关类型节点的名称集合
        public string[] GetEqSetNames(Princeple.FormType type)
        {
            List <string> nameInfos = new List <string>();
            TreeNode      rootNode  = null; //相关类型的根节点

            switch (type)
            {
            case Princeple.FormType.PPC:
                rootNode = _eqTreeView.Nodes[0].Nodes[0];       //_eqTreeView的节点0的节点0就是ppc库的根节点
                break;

            case Princeple.FormType.FPGA:
                rootNode = _eqTreeView.Nodes[0].Nodes[1];       //_eqTreeView的节点0的节点1就是fpga库的根节点
                break;

            case Princeple.FormType.ZYNQ:
                rootNode = _eqTreeView.Nodes[0].Nodes[2];       //_eqTreeView的节点0的节点2就是zynq库的根节点
                break;

            case Princeple.FormType.BOARD:
                rootNode = _eqTreeView.Nodes[1];                //_eqTreeView的节点1就是板卡库的根节点
                break;

            case Princeple.FormType.BACKPLANE:
                rootNode = _eqTreeView.Nodes[2];                //_eqTreeView的节点2就是背板库的根节点
                break;

            case Princeple.FormType.CONTIANER:
                rootNode = _eqTreeView.Nodes[3];                //_eqTreeView的节点3就是机箱库的根节点
                break;

            case Princeple.FormType.SYSTEM:
                rootNode = _eqTreeView.Nodes[4];                //_eqTreeView的节点4就是系统库的根节点
                break;

            case Princeple.FormType.COMPONENT:
                rootNode = _cpTreeView.Nodes[0];                //_cpTreeView的节点0就是构件库的根节点
                break;

            default:
                MessageBox.Show("GetInfos:未指定正确的节点类型");
                return(null);
            }
            //遍历目标根节点的子节点获取节点名
            nameInfos.Add("无");
            foreach (TreeNode node in rootNode.Nodes)
            {
                nameInfos.Add(node.Text);
            }
            return(nameInfos.ToArray());
        }
Beispiel #4
0
            /// <summary>
            /// 通过名字来判断对应的窗体种类
            /// </summary>
            /// <param name="nodeInfo"></param>
            /// <returns></returns>
            private static Princeple.FormType GetFormType(string name)
            {
                Princeple.FormType type = Princeple.FormType.None;
                switch (name)
                {
                case "PPC":
                    type = Princeple.FormType.PPC;
                    break;

                case "FPGA":
                    type = Princeple.FormType.FPGA;
                    break;

                case "ZYNQ":
                    type = Princeple.FormType.ZYNQ;
                    break;

                case "Board":
                    type = Princeple.FormType.BOARD;
                    break;

                case "BackPlane":
                    type = Princeple.FormType.BACKPLANE;
                    break;

                case "Container":
                    type = Princeple.FormType.CONTIANER;
                    break;

                case "Component":
                    type = Princeple.FormType.COMPONENT;
                    break;

                case "Application":
                    type = Princeple.FormType.APP;
                    break;

                default:
                    break;
                }
                return(type);
            }
Beispiel #5
0
        private static string GetXmlPath(Princeple.FormType type, string fileName)
        {
            string resultDir;

            switch (type)
            {
            case FormType.PPC:
                resultDir = XMLManager.PathManager.GetPPCPath();
                break;

            case FormType.FPGA:
                resultDir = XMLManager.PathManager.GetFPGAPath();
                break;

            case FormType.ZYNQ:
                resultDir = XMLManager.PathManager.GetZYNQPath();
                break;

            case FormType.BOARD:
                resultDir = XMLManager.PathManager.GetBoardPath();
                break;

            case FormType.BACKPLANE:
                resultDir = XMLManager.PathManager.GetBackPlanePath();
                break;

            case FormType.CONTIANER:
                resultDir = XMLManager.PathManager.GetContainerPath();
                break;

            case FormType.COMPONENT:
                resultDir = XMLManager.PathManager.GetComponentPath();
                break;

            default:    //FormType.APPLICATION
                resultDir = XMLManager.PathManager.GetApplicationsPath();
                break;
            }
            return(string.Format(@"{0}\{1}.xml", resultDir, fileName));
        }
Beispiel #6
0
        //通过Node对应的窗体类型,返回Node的类型
        private static string GetNodeType(Princeple.FormType type)
        {
            string result;

            switch (type)
            {
            case FormType.PPC:
                result = "PPC";
                break;

            case FormType.FPGA:
                result = "FPGA";
                break;

            case FormType.ZYNQ:
                result = "ZYNQ";
                break;

            case FormType.BOARD:
                result = "Board";
                break;

            case FormType.BACKPLANE:
                result = "BackPlane";
                break;

            case FormType.CONTIANER:
                result = "Container";
                break;

            case FormType.COMPONENT:
                result = "Component";
                break;

            default:    //FormType.APPLICATION
                result = "Application";
                break;
            }
            return(result);
        }