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 shortAxisMinDisplaySize = 300,
  8. double paddingSize = 0,
  9. double touchSize = 50,
  10. double gridCornerSize = 25,
  11. double cornerOffset = 0,
  12. bool showCorners = true,
  13. double gridThinWidth = 2,
  14. double gridThickWidth = 5,
  15. Color scrimColor = Colors.black54,
  16. bool alwaysShowThirdLines = false,
  17. ValueChanged<Rect>? onCrop,
  18. double minimumImageSize = 100,
  19. double maximumImageSize = double.infinity,
  20. bool alwaysMove = false,
  21. CropInteractionMode interactionMode = CropInteractionMode.panZoomImage,
  22. double minImageScale = 1.0,
  23. double maxImageScale = 4.0,
  24. CustomPainter? overlayPainter,
  25. Widget? overlayWidget,
  26. Widget loadingPlaceholder = const CircularProgressIndicator.adaptive(),
})

Implementation

const CropImagePro({
  super.key,
  this.controller,
  required this.image,
  this.gridColor = Colors.white70,
  Color? gridInnerColor,
  Color? gridCornerColor,
  this.shortAxisMinDisplaySize = 300,
  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(shortAxisMinDisplaySize >= 0,
          'shortAxisMinDisplaySize cannot be negative'),
      assert(minImageScale > 0, 'minImageScale must be positive'),
      assert(maxImageScale >= minImageScale,
          'maxImageScale cannot be less than minImageScale');