gauge_indicator 0.6.0 copy "gauge_indicator: ^0.6.0" to clipboard
gauge_indicator: ^0.6.0 copied to clipboard

An animated, highly customizable, open source, Flutter gauge widget.

0.6.0 #

Removed #

  • Deprecated aliases from 0.5.0: GaugeSegment, GaugeAxis.segments/zero/degrees, and GaugeAxisStyle.segmentSpacing. Use GaugeZone, zones, origin, sweepDegrees, and zoneSpacing.
  • equatable dependency. Configuration classes now implement == and hashCode directly, dropping a transitive dependency and removing per-frame list allocations during gauge animation.
  • collection dependency. The single internal use of firstWhereOrNull was inlined.

Changed #

  • Minimum Flutter version is now 3.35.0 (Dart 3.9.0) to stay on currently supported framework APIs.

0.5.0 #

Added #

  • GaugeZone.shadow (BoxShadow) for per-zone drop shadows or colored glows. offset and blurRadius are honored; spreadRadius is not (#10).
  • GaugeZone.thickness for a per-zone band width that overrides GaugeAxisStyle.thickness (#10).
  • GaugeZone.label (GaugeZoneLabel) for rendering a text and/or icon label inside the band, laid out along the arc and clipped to the zone (#12).
  • GaugeAxisStyle.zoneSpacingMode (uniform or local) for choosing whether a narrow zone tightens every gap uniformly or only the gaps next to it.
  • repaint parameter on RadialGauge / AnimatedRadialGauge for paint-only updates driven by an external listenable (e.g. shaders).
  • onAnimationFrame callback on AnimatedRadialGauge for reading the interpolated value each frame.

Changed #

  • GaugeAxis.origin now defaults to min instead of 0.0, so progress bars on axes that don't include zero render correctly out of the box. An assertion catches origins outside [min, max].
  • Renamed GaugeAxis.degrees to sweepDegrees and GaugeAxis.zero to origin for clearer intent. Old names remain as deprecated aliases and will be removed in 0.6.0.
  • Renamed GaugeSegment to GaugeZone, GaugeAxis.segments to zones, and GaugeAxisStyle.segmentSpacing to zoneSpacing so the API uses gauge-native vocabulary. Old names remain as deprecated aliases and will be removed in 0.6.0.
  • Zones now reach the axis ends instead of leaving a half-spacing gap at the boundaries; their outer caps inherit GaugeAxisStyle.cornerRadius so they trace the axis background (#6).
  • GaugeAxisTransformer.progress now inherits the underlying zones' cornerRadius (and other properties) when recoloring, so the masked portion keeps the same shape as the zones it covers.
  • On 360° axes, the rounded cap radius now tapers as progress approaches a full revolution, so the end and start caps no longer collide at the seam.
  • GaugeProgressBar with inside placement now renders without explicit zones and respects the axis corner radius.
  • Spacing is now applied symmetrically to every zone, so relative zone widths are preserved across different axis spans and spacings.
  • Narrowed the public API to widgets and their configuration classes; internal utilities are no longer exported.
  • Documented all public classes, fields, and constructors.
  • Reorganized the README around the examples gallery and trimmed Usage to a minimal install + setup snippet.
  • Reworked the example application with a redesigned configuration panel: collapsible sections, interactive zone range editor with add/remove, and animation curve & duration controls.

Fixed #

  • Fixed RadialGauge zones painting at the parent canvas origin instead of the gauge's position when used without a RepaintBoundary (e.g. directly inside a Padding, Row, or any layout with a non-zero offset) (#17).
  • Fixed pointer shadow ignoring Shadow.offset; the shadow is now drawn at the configured offset relative to the pointer (#14).
  • Fixed rounded progress bar artifact at zero and near-zero values (#13).
  • Fixed GaugeAxisStyle.cornerRadius changes not triggering a repaint, so the surface now updates when the radius is changed.
  • Fixed zone corner radius producing distorted shapes when a zone is too small to fit the requested radius.
  • Fixed inverted zone rendering when the axis is too narrow to fit the requested spacing; spacing now shrinks proportionally to fit.
  • Reserved a 1px minimum rendered width per zone so middle zones no longer vanish before edges when the axis is small.
  • Fixed flickering during animations with overshooting curves (e.g. elastic).
  • Fixed AnimatedRadialGauge.child being silently ignored when no builder was provided (#21).

0.4.3 #

  • Support negative values #7 by dino-keskic
  • Added gauge segments border.
  • Corrected the readme example. Added radius parameter that is required for parent widgets that do not have a constrained size.
  • Fixed segment color changes in the example application

0.4.2 #

  • Updated package thumbnail image

0.4.1 #

  • Fixed the gauge indicator not responding to the progress bar change.

0.4.0 #

  • Added factory constructors GaugeProgressBar and GaugePointer classes.
  • Fixed the radius property of RadialGauge and AnimatedRadialGauge widgets.
  • Added implicit radius animation for the AnimatedRadialGauge widget.
  • Added cornerRadius argument for GaugeAxisStyle and GaugeSegment classes.
  • Fixed invalid segment spacing.
  • Fixed the basic progress bar for the 360-degree axis.
  • Fixed errors that occur when using the AnimatedRadialGauge widget without the radius property provided.
  • Added default style for RadialGauge and AnimatedRadialGauge widgets to make it easier to get started with the widget.
  • Moved progressBar property from the widget to the GaugeAxis class.
  • Made GaugeProgressBar constructors constant.
  • Minor bug fixes.

0.3.3 #

  • Fixed readme file.

0.3.0 #

  • Initial release.
207
likes
160
points
16.6k
downloads
screenshot

Documentation

API reference

Publisher

verified publisherklyta.it

Weekly Downloads

An animated, highly customizable, open source, Flutter gauge widget.

Repository (GitHub)
View/report issues

Topics

#widget #animation #gauge #gauge-indicator #gauges

Funding

Consider supporting this project:

www.paypal.com
www.buymeacoffee.com

License

MIT (license)

Dependencies

flutter

More

Packages that depend on gauge_indicator