decodeSeriesLegend<D> static method
Decodes the object from a Map-like dynamic structure. This expects the JSON format to be of the following structure:
{
"cellPadding": <EdgeInsets>,
"defaultHiddenSeries": <List<String>>,
"desiredMaxColumns": <int>,
"desiredMaxRows": <int>,
"horizontalFirst": <bool>,
"entryTextStyle": <common.TextStyleSpec>,
"insideJustification": <charts.InsideJustification>,
"legendDefaultMeasure": <charts.LegendDefaultMeasure>,
"measureFormatter": <common.MeasureFormatter>,
"outsideJustification": <charts.OutsideJustification>,
"position": <BehaviorPosition>,
"secondaryMeasureFormatter": <common.MeasureFormatter>,
"showMeasures": <bool>,
"type": "series_legend"
}
See also
- decodeBehaviorPosition
- decodeInsideJustification
- decodeLegendDefaultMeasure
- decodeOutsideJustification
- decodeTextStyleSpec
ThemeDecoder.decodeEdgeInsetsGeometry
Implementation
static charts.SeriesLegend<D>? decodeSeriesLegend<D>(
dynamic map, {
bool validate = true,
}) {
charts.SeriesLegend<D>? result;
if (map is charts.SeriesLegend<D>) {
result = map;
} else if (map != null) {
result = charts.SeriesLegend<D>(
cellPadding: ThemeDecoder.decodeEdgeInsetsGeometry(
map['cellPadding'],
validate: false,
) as EdgeInsets?,
defaultHiddenSeries: map['defaultHiddenSeries'] == null
? null
: List<String>.from(map['defaultHiddenSeries']),
desiredMaxColumns: JsonClass.parseInt(map['desiredMaxColumns']),
desiredMaxRows: JsonClass.parseInt(map['desiredMaxRows']),
horizontalFirst: map['horizontalFirst'] == null
? null
: JsonClass.parseBool(map['horizontalFirst']),
entryTextStyle: decodeTextStyleSpec(
map['entryTextStyle'],
validate: false,
),
insideJustification: decodeInsideJustification(
map['insideJustification'],
validate: false,
),
legendDefaultMeasure: decodeLegendDefaultMeasure(
map['legendDefaultMeasure'],
validate: false,
),
measureFormatter: map['measureFormatter'],
outsideJustification: decodeOutsideJustification(
map['outsideJustification'],
validate: false,
),
position: decodeBehaviorPosition(
map['position'],
validate: false,
),
secondaryMeasureFormatter: map['secondaryMeasureFormatter'],
showMeasures: map['showMeasures'] == null
? null
: JsonClass.parseBool(map['showMeasures']),
);
}
return result;
}