public AlignedTextRenderer( string text, IBoxContentRenderer probeRender, BoxContentsRenderer.AlignToRect xAlignFn, BoxContentsRenderer.AlignToRect yAlignFn, Font fontToUse ) : this(text, probeRender, xAlignFn, yAlignFn, fontToUse, Hardcoded.StandardFontColour) { }
public AlignedTextRenderer( string text, IBoxContentRenderer probeRender, BoxContentsRenderer.AlignToRect xAlignFn, BoxContentsRenderer.AlignToRect yAlignFn, Font fontToUse, Brush textColour ) { textToRender = text; probeRenderer = probeRender; xAligner = xAlignFn; yAligner = yAlignFn; font = fontToUse; textSize = new SizeF(); brush = textColour; typeFormat = StringFormat.GenericTypographic; }
public ProbeDataRenderer(GMFile.InfoBoxAttributes infoAttrs, GMFile.QueryAttributes queryAttrs, Font font) { bool bigText = (infoAttrs & GMFile.InfoBoxAttributes.UseBigFont) != 0; BoxContentsRenderer.AlignToRect bottomAligner = bigText ? new BoxContentsRenderer.AlignToRect(BoxContentsRenderer.AlignYBottomBig) : new BoxContentsRenderer.AlignToRect(BoxContentsRenderer.AlignYBottom); #if DEBUG hasDisposed = false; #endif childRenderers = new List <IBoxContentRenderer>(); if ((infoAttrs & GMFile.InfoBoxAttributes.RaceMode) != 0) { int attr; NullRenderer nullRender = new NullRenderer(); if ((attr = (int)(queryAttrs & GMFile.QueryAttributes.PowerRestriction)) != 0) { string text = BoxContentsRenderer.textsToRender[BoxContentsRenderer.ATTRIBUTE_TEXT_OFFSET + attr]; // bottom left BoxContentsRenderer.AlignToRect left = new BoxContentsRenderer.AlignToRect(BoxContentsRenderer.AlignXLeft); childRenderers.Add(new AlignedTextRenderer(text, nullRender, left, bottomAligner, font)); } if ((attr = (int)(queryAttrs & GMFile.QueryAttributes.PrizeMoney)) != 0) { // bottom right BoxContentsRenderer.AlignToRect right = new BoxContentsRenderer.AlignToRect(BoxContentsRenderer.AlignXRight); string text = BoxContentsRenderer.textsToRender[BoxContentsRenderer.ATTRIBUTE_TEXT_OFFSET + attr]; childRenderers.Add(new AlignedTextRenderer(text, nullRender, right, bottomAligner, font)); } if ((attr = (int)(queryAttrs & GMFile.QueryAttributes.RaceResult)) != 0) { // bottom right BoxContentsRenderer.AlignToRect right = new BoxContentsRenderer.AlignToRect(BoxContentsRenderer.AlignXRight); string text = BoxContentsRenderer.textsToRender[BoxContentsRenderer.ATTRIBUTE_TEXT_OFFSET + attr]; childRenderers.Add(new AlignedTextRenderer(text, nullRender, right, bottomAligner, font)); } } }