deserializeTools method

void deserializeTools(
  1. List<Map<String, dynamic>> data
)

Implementation

void deserializeTools(List<Map<String, dynamic>> data) {
  _tools.clear();
  _selectedTool = null;
  _currentDrawingTool = null;

  for (final json in data) {
    DrawingTool? tool;
    final type = DrawingToolType.values[json['type']];

    switch (type) {
      case DrawingToolType.trendLine:
        tool = TrendLineTool.fromJson(json);
        break;
      case DrawingToolType.trendAngle:
        tool = TrendAngleTool.fromJson(json);
        break;
      case DrawingToolType.arrow:
        tool = ArrowTool.fromJson(json);
        break;
      case DrawingToolType.verticalLine:
        tool = VerticalLineTool.fromJson(json);
        break;
      case DrawingToolType.horizontalLine:
        tool = HorizontalLineTool.fromJson(json);
        break;
      case DrawingToolType.horizontalRay:
        tool = HorizontalRayTool.fromJson(json);
        break;
      case DrawingToolType.ray:
        tool = RayTool.fromJson(json);
        break;
      case DrawingToolType.crossLine:
        tool = CrossLineTool.fromJson(json);
        break;
    }

    _tools.add(tool);
  }

  _notifyToolsChanged();
}