FluentGanttChartDelegate class
Renders Gantt spans into the shared cartesian shell.
Ports GanttChart.tsx (620 lines). useGanttChartStyles is inert upstream
— every class name resolves to the empty string — so no visual property is
inherited from it.
points arrive with their colours already assigned: upstream's _points
memo (GanttChart.tsx:72-100) walks the data once, mints one palette colour
per legend, and rewrites every point's color before the chart ever
draws. The widget owns that pass, so this delegate only falls back to the
palette for a point that still has no colour.
- Inheritance
-
- Object
- FluentCartesianSeriesDelegate
- FluentGanttChartDelegate
Constructors
-
FluentGanttChartDelegate({required List<
FluentGanttChartDataPoint> points, required FluentGanttChartStyle style, required FluentChartColors colors, required FluentChartTextMeasurer measurer, required List<String> selectedLegends, String? hoveredLegend, double? barHeightProp, double maxBarHeight = kGanttDefaultBarHeight, double yAxisPadding = 0.5, bool enableGradient = false, bool roundCorners = false, bool useUtc = true, String? culture, FluentAxisCategoryOrder? yAxisCategoryOrder}) -
Creates a delegate.
const
Properties
- barHeightProp → double?
-
Explicit bar height, overriding the auto solve (
GanttChart.tsx:336).final - barWidth → double?
-
The bar width the x domain solve is given (
CartesianChart.tsx:200).no setterinherited - chartTitle → String?
-
The narration prefix. Upstream uses
props.chartTitleonly for the SVGaria-label(CartesianChart.tsx:554) and never draws it; charts compose it themselves, e.g.LineChart.tsx:1843-1846.no setterinherited - chartType → FluentChartType
-
Which of the nine shell consumers this is (
ChartTypes,utilities.ts:98-108). Selects the gridline and band-width special cases.no setteroverride - colors → FluentChartColors
-
Resolved chart colours.
final
- culture → String?
-
BCP-47 locale for date formatting.
final
-
datasetForXAxisDomain
→ List<
String> ? -
The band domain for a categorical x axis (
CartesianChart.tsx:264).no setterinherited - dateFormatLevels → (int, int)
-
The
(min, max)date-format levels across every start and end.no setter - enableGradient → bool
-
Whether each legend paints a left-to-right gradient.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- hoveredLegend → String?
-
Legend title currently hovered.
final
- isIntegralDataset → bool
-
Whether every y value is a whole number.
no setterinherited
- maxBarHeight → double
-
Bar height ceiling — 24 (
GanttChart.tsx:45).final - maxOfYVal → double?
-
AreaChart's precomputed y ceiling (
CartesianChart.tsx:305).no setterinherited - measurer → FluentChartTextMeasurer
-
The chart subtree's single text measurer.
final
-
orderedYAxisLabels
→ List<
String> -
The y-axis labels in band order — bottom of the plot first.
no setter
-
points
→ List<
FluentGanttChartDataPoint> -
The spans, in author order, with colours already assigned.
final
- roundCorners → bool
-
Whether bars get a 3px corner radius.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
selectedLegends
→ List<
String> -
Legend titles selected by the user.
final
-
stringDatasetForYAxisDomain
→ List<
String> ? -
The band domain for a categorical y axis (
CartesianChart.tsx:324).no setteroverride - style → FluentGanttChartStyle
-
The resolved style.
final
- tickParams → FluentTickParams
-
Explicit tick values and format handed to the x builders
(
CartesianChart.tsx:239-267).no setterinherited - useUtc → bool
-
Whether dates are formatted in UTC — default true (
GanttChart.tsx:45).final - xAxisInnerPadding → double?
-
Inner band padding for the x axis (
CartesianChart.tsx:217).no setterinherited - xAxisOuterPadding → double?
-
Outer band padding for the x axis (
CartesianChart.tsx:218).no setterinherited - xAxisPadding → double?
-
Shorthand band padding for the x axis (
CartesianChart.tsx:216).no setterinherited - xAxisTickLayout → FluentTickLayout
-
Fallback for
props.xAxis?.tickLayout(CartesianChart.tsx:220,:282,:385).no setterinherited - xAxisType → FluentChartAxisType
-
The x-axis kind, which selects the x builder
(
CartesianChart.tsx:237-278).no setteroverride - yAxisCategoryOrder → FluentAxisCategoryOrder?
-
Ordering applied to a category y axis, or null when the caller named none.
final
- yAxisPadding → double
-
Band padding, already resolved by
getScalePadding(GanttChart.tsx:116-118).final - yAxisType → FluentChartAxisType
-
The y-axis kind. FluentChartAxisType.category routes to
createStringYAxis (
CartesianChart.tsx:321).no setteroverride
Methods
-
barHeightFor(
double adjustedValue) → double -
Ports
_getBarHeight(GanttChart.tsx:333-348). -
barsFor(
FluentCartesianChildContext context, FluentCartesianLayout layout) → List< FluentGanttBar> - Resolves every bar, in draw order.
-
buildHitRegions(
FluentCartesianChildContext context, FluentCartesianLayout layout) → List< FluentChartHitRegion> -
The interactive areas over the plot, in paint order.
override
-
createStringYAxis(
FluentYAxisParams params, List< String> dataPoints, FluentAxisData axisData, {required bool isRtl}) → FluentAxisSpec -
createStringYAxis(CartesianChart.tsx:322-329).override -
createYAxis(
FluentYAxisParams params, FluentAxisData axisData, {required bool isRtl, required bool isIntegralDataset, bool useSecondaryYScale = false}) → FluentAxisSpec -
createYAxis(CartesianChart.tsx:351,:363).override -
domainMargins(
double containerWidth, FluentChartMargins margins) → FluentChartMargins? -
Adjusted margins for the x domain solve, or null to use the shell's
(
CartesianChart.tsx:195).inherited -
formattedSpan(
FluentGanttChartDataPoint point) → String -
"<start> - <end>"(GanttChart.tsx:196-224). -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paintSeries(
Canvas canvas, FluentCartesianChildContext context, FluentCartesianLayout layout, FluentChartColors colors) → void -
Paints the marks.
override
-
resolveXDomainRange(
{required FluentChartMargins margins, required double containerWidth, required bool isRtl, required double? barWidth, required List< Object> ? tickValues}) → FluentChartDomainRange -
getDomainNRangeValues(CartesianChart.tsx:193-202).override -
resolveYMinMax(
{bool useSecondaryYScale = false}) → FluentChartMinMax -
getMinMaxOfYAxis(CartesianChart.tsx:306,:347).override -
toString(
) → String -
A string representation of this object.
inherited
-
yDomainMargins(
double containerHeight) → FluentChartMargins? -
Adjusted margins for the primary y solve, or null to use the shell's
(
CartesianChart.tsx:296). The secondary axis never gets these (:338); that asymmetry is upstream's and is reproduced.override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited