CropImagePro constructor

const CropImagePro({
  1. Key? key,
  2. CropController? controller,
  3. required Image image,
  4. Color gridColor = Colors.white70,
  5. Color? gridInnerColor,
  6. Color? gridCornerColor,
  7. double paddingSize = 0,
  8. double touchSize = 50,
  9. double gridCornerSize = 25,
  10. double cornerOffset = 0,
  11. bool showCorners = true,
  12. double gridThinWidth = 2,
  13. double gridThickWidth = 5,
  14. Color scrimColor = Colors.black54,
  15. bool alwaysShowThirdLines = false,
  16. ValueChanged<Rect>? onCrop,
  17. double minimumImageSize = 100,
  18. double maximumImageSize = double.infinity,
  19. bool alwaysMove = false,
  20. CropInteractionMode interactionMode = CropInteractionMode.panZoomImage,
  21. double minImageScale = 1.0,
  22. double maxImageScale = 4.0,
  23. CustomPainter? overlayPainter,
  24. Widget? overlayWidget,
  25. Widget loadingPlaceholder = const CircularProgressIndicator.adaptive(),
})

Implementation

const CropImagePro({
  super.key,
  this.controller,
  required this.image,
  this.gridColor = Colors.white70,
  Color? gridInnerColor,
  Color? gridCornerColor,
  this.paddingSize = 0,
  this.touchSize = 50,
  this.gridCornerSize = 25,
  this.cornerOffset = 0,
  this.showCorners = true,
  this.gridThinWidth = 2,
  this.gridThickWidth = 5,
  this.scrimColor = Colors.black54,
  this.alwaysShowThirdLines = false,
  this.onCrop,
  this.minimumImageSize = 100,
  this.maximumImageSize = double.infinity,
  this.alwaysMove = false,
  this.interactionMode = CropInteractionMode.panZoomImage,
  this.minImageScale = 1.0,
  this.maxImageScale = 4.0,
  this.overlayPainter,
  this.overlayWidget,
  this.loadingPlaceholder = const CircularProgressIndicator.adaptive(),
})  : gridInnerColor = gridInnerColor ?? gridColor,
      gridCornerColor = gridCornerColor ?? gridColor,
      assert(gridCornerSize > 0, 'gridCornerSize cannot be zero'),
      assert(touchSize > 0, 'touchSize cannot be zero'),
      assert(gridThinWidth > 0, 'gridThinWidth cannot be zero'),
      assert(gridThickWidth > 0, 'gridThickWidth cannot be zero'),
      assert(minimumImageSize > 0, 'minimumImageSize cannot be zero'),
      assert(maximumImageSize >= minimumImageSize,
          'maximumImageSize cannot be less than minimumImageSize'),
      assert(cornerOffset >= 0, 'cornerOffset cannot be negative'),
      assert(minImageScale > 0, 'minImageScale must be positive'),
      assert(maxImageScale >= minImageScale,
          'maxImageScale cannot be less than minImageScale');