/// <summary>
        /// 代码解析
        /// </summary>
        /// <param name="pic">PicTabPage 对象</param>
        public override string XPicCodeEditor(MyPicTabPage.PicTabPage pic)
        {
            ///判断该要解析的类是否是主类
            bool isMainClass = false;

            string CodeString = "using System;" + LineBreaks +
                                "namespace " + ProjectName.Split('.')[0] + LineBreaks
                                + "{" + LineBreaks
                                + "public class " + pic.Title.Split('.')[0] + LineBreaks
                                + "{" + LineBreaks;

            ///解析确定是函数入口
            foreach (CodeBox box in pic.ListCodeBoxChild.Values)
            {
                if (box.CodeBoxType == CodeBox.XAType.XMain)
                {
                    CodeString += AnalyticalMain(box);
                    ///确认正在解析主类
                    isMainClass = true;
                }
                else if (box.CodeBoxType == CodeBox.XAType.XEvent)
                {
                }
            }
            ///解析具体函数实现
            foreach (MyPicTabPage.PicFunctionTabPage functionpage in pic.ListFunction)
            {
                CodeString += AnalyticalFunction(functionpage);
            }
            ///解析具体属性实现
            foreach (XAribute bute in pic.ListXAributes)
            {
                CodeString += AnalyticalXAribute(bute, isMainClass);
            }
            ///结尾代码
            string endCode = LineBreaks + "}" + LineBreaks
                             + "}" + LineBreaks;

            ///整合最后的代码
            CodeString += endCode;

            return(CodeString);
        }
Exemple #2
0
        /// <summary>
        /// 代码解析
        /// </summary>
        /// <param name="pic">PicTabPage 对象</param>
        public override string XPicCodeEditor(MyPicTabPage.PicTabPage pic)
        {
            ///判断该要解析的类是否是主类
            bool isMainClass = false;

            string CodeString =
                "#include <stdio.h>" + LineBreaks +
                "#include <conio.h>" + LineBreaks +
                "#include <limits.h>" + LineBreaks +
                //"#include <math.h>" + LineBreaks;
                "#include <stdbool.h>" + LineBreaks;

            ///解析具体属性实现
            foreach (XAribute bute in pic.ListXAributes)
            {
                CodeString += AnalyticalXAribute(bute, isMainClass);
            }
            ///解析具体函数实现
            foreach (MyPicTabPage.PicFunctionTabPage functionpage in pic.ListFunction)
            {
                CodeString += AnalyticalFunction(functionpage);
            }
            ///解析确定是函数入口
            foreach (CodeBox box in pic.ListCodeBoxChild.Values)
            {
                if (box.CodeBoxType == CodeBox.XAType.XMain)
                {
                    CodeString += AnalyticalMain(box);
                    ///确认正在解析主类
                    isMainClass = true;
                }
                else if (box.CodeBoxType == CodeBox.XAType.XEvent)
                {
                }
            }
            return(CodeString);
        }
 /// <summary>
 /// 代码转换
 /// </summary>
 /// <returns></returns>
 public virtual string XPicCodeEditor(MyPicTabPage.PicTabPage pic)
 {
     return("");
 }