buildFileIcon static method

Widget buildFileIcon(
  1. String? extension
)

Implementation

static Widget buildFileIcon(String? extension) {
  IconData iconData;
  Color iconColor;

  if (extension == null) {
    iconData = Icons.insert_drive_file;
    iconColor = Colors.grey;
  } else {
    switch (extension.toLowerCase()) {
      case 'jpg':
      case 'jpeg':
      case 'png':
      case 'gif':
        iconData = Icons.image;
        iconColor = Colors.blue;
        break;
      case 'pdf':
        iconData = Icons.picture_as_pdf;
        iconColor = Colors.red;
        break;
      case 'doc':
      case 'docx':
        iconData = Icons.description;
        iconColor = Colors.blueAccent;
        break;
      case 'xls':
      case 'xlsx':
        iconData = Icons.table_chart;
        iconColor = Colors.green;
        break;
      case 'ppt':
      case 'pptx':
        iconData = Icons.slideshow;
        iconColor = Colors.orange;
        break;
      case 'zip':
      case 'rar':
        iconData = Icons.folder_zip;
        iconColor = Colors.purple;
        break;
      case 'mp3':
      case 'wav':
        iconData = Icons.audio_file;
        iconColor = Colors.brown;
        break;
      case 'mp4':
      case 'mov':
        iconData = Icons.video_file;
        iconColor = Colors.teal;
        break;
      default:
        iconData = Icons.insert_drive_file;
        iconColor = Colors.grey;
    }
  }
  return Icon(iconData, size: 30, color: iconColor);
}