FluentChartTable class
A Fluent 2 chart table: tabular data with the same title treatment and contrast guarantees as the painted charts.
This is the one member of the family with no painter, and the grid lines
are laid out rather than drawn over the top. border-collapse: collapse
(useChartTableStyles.styles.ts:29) merges the two adjacent 2px cell edges
into ONE 2px line, and that line still occupies space: the capture's
six-column, five-row grid is 700x172, of which 14x12 is grid line — seven
verticals and six horizontals — on top of the padding and the text. So
every cell owns the line along its top and left edge as a real Border,
and the grid owns the right and bottom edges that no cell covers.
TableBorder cannot express that. RenderTable's border is paint-only —
it appears in neither _computeColumnWidths nor performLayout — so it
strokes each line centred on a boundary that reserved nothing, and every
boundary falls short by one line width for each row or column before it.
That was this widget's bug: a 32px row pitch against upstream's 34, and a
grid 160 tall against 172.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- FluentChartTable
Constructors
-
FluentChartTable({Key? key, required List<
FluentChartTableCell> headers, List<List< ? rows, double? width, double? height, double? columnWidth, String? chartTitle, FluentChartTableStyle? style})FluentChartTableCell> > -
Creates a chart table.
const
Properties
- chartTitle → String?
-
Optional title above the grid. Reserves the style's
titleHeightof 30 out of the total (ChartTable.tsx:93).final - columnWidth → double?
-
Fixed width of every column's own box, exclusive of the grid line it
shares with its neighbour — so the pitch from one column to the next is
this plus one border width, exactly as
border-collapsegives in CSS. Null lets each column size to its content, which is what atablewith no width does.final - hashCode → int
-
The hash code for this object.
no setterinherited
-
headers
→ List<
FluentChartTableCell> -
Header cells, left to right.
final
- height → double?
-
Hard height. Null uses the style's
defaultHeightof 650 (ChartTable.tsx:94).final - key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
-
rows
→ List<
List< ?FluentChartTableCell> > -
Body rows. A null or empty list renders the header alone
(
ChartTable.tsx:154).final - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- style → FluentChartTableStyle?
-
Style layered over the derived defaults and the nearest
FluentChartTableTheme.
final
- width → double?
-
Hard width. Null honours the incoming BoxConstraints, which is the
project rule; upstream's
'100%'default (ChartTable.tsx:96) is the same intent.final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement to manage this widget's location in the tree.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited