BarChartPainter class
Custom painter for rendering the bar chart on a canvas.
This painter handles all drawing operations including:
- Bars with colors
- Title text
- Sector labels with background
- Legend entries
- Connecting lines
- Touch detection for interactive elements
- Inheritance
-
- Object
- Listenable
- CustomPainter
- BarChartPainter
Constructors
-
BarChartPainter(List<
DataItem> dataset, BuildContext context, {String title = '', bool showTitle = true, bool showLabels = true, bool showLegend = true, bool showLines = true, required Function onTap}) - Creates a BarChartPainter.
Properties
- context → BuildContext
-
The build context used for theme and text styling.
final
-
dataset
→ List<
DataItem> -
The data items to render.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- onTap → Function
-
Callback for sector tap events.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- semanticsBuilder → SemanticsBuilderCallback?
-
Returns a function that builds semantic information for the picture drawn
by this painter.
no setterinherited
- showLabels → bool
-
Whether to show sector labels.
final
- showLegend → bool
-
Whether to show the legend.
final
- showLines → bool
-
Whether to show connecting lines.
final
- showTitle → bool
-
Whether to show the title.
final
- title → String
-
The chart title.
final
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be notified when it is time to repaint.
inherited
-
drawBars(
TouchyCanvas touchyCanvas, Paint paint, Size size, double barWidth, double maxHeight, List< DataItem> dataset, DataItem greaterDataset) → void - Draws a single bar of the chart.
-
drawLabel(
Canvas canvas, Size size, double barWidth, double maxHeight, List< DataItem> dataset, DataItem greaterDataset) → void - Draws a label for a bar with a rounded background box.
-
drawLegend(
Canvas canvas, Size size, List< DataItem> dataset) → void - Draws a legend entry showing the item name, value, and percentage.
-
drawLines(
Canvas canvas, Size size, double maxHeight) → void - Draw lines in X scale
-
drawTitle(
Canvas canvas, Size size) → void - Draws the chart title at the top.
-
hitTest(
Offset position) → bool? -
Called whenever a hit test is being performed on an object that is using
this custom paint delegate.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paint(
Canvas canvas, Size size) → void -
Called whenever the object needs to paint. The given Canvas has its
coordinate space configured such that the origin is at the top left of the
box. The area of the box is the size of the
sizeargument.override -
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies when it is time to repaint.
inherited
-
shouldRebuildSemantics(
covariant CustomPainter oldDelegate) → bool -
Called whenever a new instance of the custom painter delegate class is
provided to the RenderCustomPaint object, or any time that a new
CustomPaint object is created with a new instance of the custom painter
delegate class (which amounts to the same thing, because the latter is
implemented in terms of the former).
inherited
-
shouldRepaint(
covariant CustomPainter oldDelegate) → bool -
Called whenever a new instance of the custom painter delegate class is
provided to the RenderCustomPaint object, or any time that a new
CustomPaint object is created with a new instance of the custom painter
delegate class (which amounts to the same thing, because the latter is
implemented in terms of the former).
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited