/// <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); }
/// <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(""); }