private static Canvas Parse(TextReader text) { var parsers = new List <Parser <char, IPPMPart> >(new[] { FileType, ImageSize, Scale, PixelData }); string line; var index = 0; var current = parsers[index]; var builder = new CanvasBuilder(3); bool complete = false; while ((line = text.ReadLine()) != null) { if (complete) { break; } if (string.IsNullOrWhiteSpace(line)) { continue; } if (line.StartsWith('#')) { // Skip comment lines; continue; } var parsed = current.ParseOrThrow(line); var result = parsed.Process(builder); switch (result) { case ParseResult.NextParser: current = parsers[++index]; break; case ParseResult.Complete: complete = true; break; case ParseResult.Failure: var error = parsed.GetLastFailureMessage(); if (!string.IsNullOrEmpty(error)) { throw new FileLoadException(error); } throw new FileLoadException(); case ParseResult.Continue: continue; default: throw new ArgumentOutOfRangeException(); } } return(builder.GetCanvas()); }
public CanvasBuilder Create(string name, int level, Vector2 position) { ControllerFactory controllerFactory = new ControllerFactory(_registryManager, _basicTypeInvoker); ControllerResolver controllerResolver = new ControllerResolver(_registryManager.ControllerRegistry, controllerFactory); GameObject canvas = (new CanvasFactory()).Create(name, level, position); CanvasDimensionsTransformer canvasDimensionsTransformer = new CanvasDimensionsTransformer(canvas); CanvasBuilder canvasBuilder = new CanvasBuilder(canvas, controllerResolver, canvasDimensionsTransformer); return(canvasBuilder); }
private void SetCanvas() { var Instructions = new Dictionary <ConsoleCommand, string> { { ConsoleCommand.ObjectType, "C" }, { ConsoleCommand.X1, "20" }, { ConsoleCommand.Y1, "4" } }; Canvas = CanvasBuilder.GetCanvas <List <DataLine> >(Instructions); }
public GameUI() { //创建Canvas var canvasGameobj = new CanvasBuilder() .RenderMode(RenderMode.ScreenSpaceOverlay) .Build(); //创建 Text new TextBuilder() .AddToParent(canvasGameobj) .Text("10") .Build(); }
private void BuildCanvas(Transform homeMainTransform, ICamera homeUICamera) { // CanvasのPrefabのパスのリスト var canvasPaths = new List <string>() { UICommonDef.App0CanvasPrefabPath, UICommonDef.App1CanvasPrefabPath }; var canvasPathParams = new CanvasPathParams(UICommonDef.CanvasRootName, canvasPaths); var canvasRoot = EmptyObjectFactory.Create(canvasPathParams.CanvasRootName, homeMainTransform); _canvasContainer = CanvasBuilder.BuildCanvases(homeUICamera, canvasPathParams, UICommonDef.UITouchBlockWindow, canvasRoot.transform); }
public void GetCanvas() { var Instructions = new Dictionary <ConsoleCommand, string> { { ConsoleCommand.ObjectType, "C" }, { ConsoleCommand.X1, "20" }, { ConsoleCommand.Y1, "4" } }; List <DataLine> Actual = CanvasBuilder.GetCanvas <List <DataLine> >(Instructions); List <DataLine> Expected = new List <DataLine>() { new DataLine() { Line = new StringBuilder().Insert(0, "-", 22) }, new DataLine() { Line = new StringBuilder().Insert(0, "|").Insert(1, " ", 20).Insert(21, "|") }, new DataLine() { Line = new StringBuilder().Insert(0, "|").Insert(1, " ", 20).Insert(21, "|") }, new DataLine() { Line = new StringBuilder().Insert(0, "|").Insert(1, " ", 20).Insert(21, "|") }, new DataLine() { Line = new StringBuilder().Insert(0, "|").Insert(1, " ", 20).Insert(21, "|") }, new DataLine() { Line = new StringBuilder().Insert(0, "-", 22) }, }; Expected.ForEach(x => Assert.AreEqual(x.Line.ToString(), Actual[Expected.IndexOf(x)].Line.ToString())); }
public static CanvasBuilder parent (Transform obj) { CanvasBuilder b = new CanvasBuilder (); b._parent = obj; return b; }