loadSegmentImages function

Future<List<WheelSegment>> loadSegmentImages(
  1. List<WheelSegment> segments
)

Iterates through a list of WheelSegments and loads icons for those with a valid path.

Implementation

Future<List<WheelSegment>> loadSegmentImages(
    List<WheelSegment> segments) async {
  List<WheelSegment> processedSegments = [];

  for (var segment in segments) {
    if ((segment.path ?? '').isNotEmpty) {
      try {
        final ui.Image loadedImage = await loadImage(segment.path!);
        processedSegments.add(WheelSegment(
          segment.label,
          segment.value,
          color: segment.color,
          path: segment.path,
          image: loadedImage,
          probability: segment.probability,
        ));
      } catch (e) {
        debugPrint('Error loading image for segment ${segment.label}: $e');
        processedSegments.add(segment);
      }
    } else {
      processedSegments.add(segment);
    }
  }

  return processedSegments;
}