RailroadDiagramBlock
ChartForgeX.VisualBlocks
A generic grammar diagram with symbolic references and native recursive railroad geometry.
Inheritance
- VisualBlock<RailroadDiagramBlock>
- RailroadDiagramBlock
Remarks
Native layout accepts up to 512 rules, 32768 expression occurrences and 128 nesting levels. References and repetition counts remain symbolic. Measure or call WithNaturalSize after changing rules, padding or typography; a smaller explicit frame is rejected instead of clipping grammar.
Usage
Explore 16 API references to this type
This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.
Returned or exposed by 16
- Extension method MermaidRailroadDocument.ToRailroadDiagramBlock
- Method MermaidRailroadRendering.ToRailroadDiagramBlock
- Method RailroadDiagramBlock.AddRule
- Method RailroadDiagramBlock.ConfigureTheme
- Method RailroadDiagramBlock.Create
- Method RailroadDiagramBlock.WithCard
- Method RailroadDiagramBlock.WithHostFrame
- Method RailroadDiagramBlock.WithNaturalSize
- Method RailroadDiagramBlock.WithPadding
- Method RailroadDiagramBlock.WithPngOutputScale
- Method RailroadDiagramBlock.WithSize
- Method RailroadDiagramBlock.WithSubtitle
- Method RailroadDiagramBlock.WithTheme
- Method RailroadDiagramBlock.WithThemeMode
- Method RailroadDiagramBlock.WithTitle
- Method RailroadDiagramBlock.WithTransparentBackground
Constructors
Methods
public RailroadDiagramBlock AddRule(string id, RailroadExpression expression, string? label = null) #Adds a rule without expanding references or repeat counts.
Parameters
- id string
- expression ChartForgeX.VisualBlocks.RailroadExpression
- label string? = null
Returns
RailroadDiagramBlockpublic static RailroadDiagramBlock Create() #Creates an empty grammar diagram.
Returns
RailroadDiagramBlockpublic ChartSize MeasureNaturalSize() #Measures the complete natural frame before any raster allocation.
Returns
ChartSizepublic RailroadDiagramBlock WithNaturalSize(int minimumWidth = 0, int minimumHeight = 0) #Sets the complete natural frame, retaining optional minimum dimensions.
Parameters
- minimumWidth int = 0
- minimumHeight int = 0
Returns
RailroadDiagramBlockInherited Methods
public RailroadDiagramBlock ConfigureTheme(Action<VisualThemeBuilder> configure) #Parameters
- configure Action<VisualThemeBuilder>
Returns
RailroadDiagramBlockpublic virtual RgbaImage RenderRgba() #Returns
RgbaImagepublic virtual string RenderSvg(string idScope) #Parameters
- idScope string
Returns
stringpublic RailroadDiagramBlock WithCard(bool enabled = true) #Parameters
- enabled bool = true
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithHostFrame(bool hostOwnsFrame = true) #Parameters
- hostOwnsFrame bool = true
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithPadding(double padding) #Parameters
- padding double
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithPadding(double left, double top, double right, double bottom) #Parameters
- left double
- top double
- right double
- bottom double
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithPngOutputScale(int scale) #Parameters
- scale int
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithSize(int width, int height) #Parameters
- width int
- height int
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithSubtitle(string subtitle) #Parameters
- subtitle string
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithTheme(VisualTheme theme, VisualThemeMode? mode = null) #Parameters
- theme VisualTheme
- mode VisualThemeMode? = null
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithThemeMode(VisualThemeMode mode) #Parameters
- mode VisualThemeMode
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithTitle(string title) #Parameters
- title string
Returns
RailroadDiagramBlockpublic RailroadDiagramBlock WithTransparentBackground(bool enabled = true) #Parameters
- enabled bool = true
Returns
RailroadDiagramBlockProperties
public IReadOnlyList<RailroadRule> Rules { get; } #Gets rules in authored order.
public RailroadRuleComparison RuleComparison { get; set; } #Gets or sets rule-identity comparison without changing displayed rule IDs.
public override string AccessibleName { get; } #Gets a concise accessible grammar name.
Inherited Properties
public string Title { get; set; } #public string Subtitle { get; set; } #public VisualBlockOptions Options { get; } #