Ejemplo n.º 1
0
        private void SetNode(ClassInfoTreeNode node)
        {
            #region
            if (node.JInfo is JClassInfo)
            {
                ClassCodeGenerator.GenerateClassCode((JClassInfo)node.JInfo, _declareOption, _formatString);
                node.ClassCode = ((JClassInfo)node.JInfo).ClassCode;

                foreach (JInfo item in ((JClassInfo)node.JInfo).Properties)
                {
                    if (item is JClassInfo || item is JArrayInfo)
                    {
                        ClassInfoTreeNode childNode = new ClassInfoTreeNode(item);

                        node.Nodes.Add(childNode);

                        SetNode(childNode);
                    }
                }
            }
            else if (node.JInfo is JArrayInfo)
            {
                foreach (JClassInfo item in ((JArrayInfo)node.JInfo).ClassTypes)
                {
                    ClassInfoTreeNode childNode = new ClassInfoTreeNode(item);
                    node.Nodes.Add(childNode);

                    SetNode(childNode);
                }
            }
            #endregion
        }
Ejemplo n.º 2
0
        private void usc_CodeViewer_RenameButtonClicked(object sender, RenameButtonClickedEventArgs e)
        {
            ClassInfoTreeNode node = e.SelectedNode;

            if (node.JInfo is JArrayInfo)
            {
                return;
            }

            ClassInfoTreeNode parent = (ClassInfoTreeNode)node.Parent;

            InputBox inputBox = new InputBox();

            if (inputBox.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            string inputString = inputBox.InputString;

            node.JInfo.Type = inputString;

            if (parent != null)
            {
                SetParentClassCode(parent, inputString);
            }

            node.Text = node.JInfo.ToString();
            ClassCodeGenerator.GenerateClassCode((JClassInfo)node.JInfo, _declareOption, _formatString);
            node.ClassCode = ((JClassInfo)node.JInfo).ClassCode;


            usc_CodeViewer.SetCodeText(node.ClassCode);
        }
Ejemplo n.º 3
0
        private void SetParentClassCode(ClassInfoTreeNode parent, string inputString)
        {
            JInfo parentInfo = parent.JInfo;

            if (parentInfo is JArrayInfo)
            {
                if (((JArrayInfo)parentInfo).GenericType != SharpType.Object)
                {
                    ((JArrayInfo)parentInfo).GenericType = inputString;
                    ((JArrayInfo)parentInfo).SetType();
                }

                parent.Text = parentInfo.ToString();
                ClassCodeGenerator.GenerateClassCode((JClassInfo)((ClassInfoTreeNode)parent.Parent).JInfo, _declareOption, _formatString);
                parent.ClassCode = ((JClassInfo)((ClassInfoTreeNode)parent.Parent).JInfo).ClassCode;
            }
            else
            {
                ClassCodeGenerator.GenerateClassCode((JClassInfo)parentInfo, _declareOption, _formatString);
                parent.ClassCode = ((JClassInfo)parentInfo).ClassCode;
            }
        }