fromDynamic static method

JsonScrollbarBuilder? fromDynamic(
  1. dynamic map, {
  2. JsonWidgetRegistry? registry,
})

Builds the builder from a Map-like dynamic structure. This expects the JSON format to be of the following structure:

{
  "controller": "<ScrollController>",
  "interactive": "<bool>",
  "notificationPredicate": "<ScrollNotificationPredicate>",
  "radius": "<Radius>",
  "scrollbarOrientation": "<ScrollbarOrientation>",
  "thickness": "<double>",
  "trackVisibility": "<bool>",
  "thumbVisibility": "<bool>"
}

See also:

  • ThemeDecoder.decodeRadius
  • ThemeDecoder.decodeScrollbarOrientation

Implementation

static JsonScrollbarBuilder? fromDynamic(
  dynamic map, {
  JsonWidgetRegistry? registry,
}) {
  JsonScrollbarBuilder? result;
  if (map != null) {
    result = JsonScrollbarBuilder(
      controller: map['controller'],
      interactive: map['interactive'] == null
          ? null
          : JsonClass.parseBool(
              map['interactive'],
            ),
      notificationPredicate: map['notificationPredicate'],
      radius: ThemeDecoder.decodeRadius(
        map['radius'],
        validate: false,
      ),
      scrollbarOrientation: ThemeDecoder.decodeScrollbarOrientation(
        map['scrollbarOrientation'],
        validate: false,
      ),
      thickness: JsonClass.maybeParseDouble(map['thickness']),
      thumbVisibility: map['thumbVisibility'] == null
          ? null
          : JsonClass.parseBool(
              map['thumbVisibility'],
            ),
    );
  }

  return result;
}