ImageUtils class
Manages image handling: resizing, clipboard access, storage, and validation.
- Inheritance
-
- Object
- Listenable
- ListNotifier
- SintController
- ImageUtils
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialized → bool
-
Checks whether the controller has already been initialized.
no setterinherited
- isClosed → bool
-
Checks whether the controller has already been closed.
no setterinherited
- isDisposed → bool
-
no setterinherited
- listenersLength → int
-
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addListener(
SintStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, SintStateUpdate listener) → Disposer -
inherited
-
cacheImagePath(
{required int id, required String type, String mediaType = 'image/png'}) → String? - Cache the image path immediately (fast, no file I/O).
-
cleanupOldImageCaches(
) → Future< void> - Clean up old image cache directories from previous sessions.
-
clearStoredImagePaths(
) → void - Clear the in-memory cache of stored image paths.
-
compressImageBuffer(
Uint8List imageBuffer, {int maxBytes = imageTargetRawSize, String? originalMediaType}) → Future< CompressedImageResult> - Compresses an image buffer to fit within a maximum byte size.
-
compressImageBufferWithTokenLimit(
Uint8List imageBuffer, int maxTokens, {String? originalMediaType}) → Future< CompressedImageResult> - Compresses an image buffer to fit within a token limit.
-
configure(
{String getImageStoreDir()?, String getSessionId()?, Future< Uint8List> imageProcessor(Uint8List buffer, {int? colors, int? compressionLevel, String? format, int? height, bool? palette, int? quality, int? width})?, Future<({String? format, int? height, int? width})> getImageMetadata(Uint8List buffer)?, void logForDebugging(String, {String? level})?, void logError(Object)?, void logEvent(String, Map<String, dynamic> )?}) → void -
containsListener(
SintStateUpdate listener) → bool -
inherited
-
debounce<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(milliseconds: 400)}) → void -
Calls
callbackafterrxstops changing forduration. Useful for search-as-you-type, form validation, etc.inherited -
dispose(
) → void -
inherited
-
ever<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackevery timerxchanges. Auto-cancels on controller disposal.inherited -
getImageFromClipboard(
) → Future< ImageWithDimensions?> - Get image data from the clipboard.
-
getImagePathFromClipboard(
) → Future< String?> - Try to get an image file path from the clipboard.
-
getStoredImagePath(
int imageId) → String? - Get the file path for a stored image by ID.
-
hasImageInClipboard(
) → Future< bool> - Check if clipboard contains an image without retrieving it.
-
interval<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(seconds: 1)}) → void -
Calls
callbackat most once perduration, ignoring intermediate changes. Useful for rate-limiting UI updates.inherited -
maybeResizeAndDownsampleImageBlock(
Map< String, dynamic> imageBlock) → Future<ImageBlockWithDimensions> - Resizes an image content block if needed.
-
maybeResizeAndDownsampleImageBuffer(
Uint8List imageBuffer, int originalSize, String ext) → Future< ResizeResult> - Resizes image buffer to meet size and dimension constraints.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
once<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackonly the first timerxchanges, then cancels.inherited -
onClose(
) → void -
Called before onDelete method. onClose might be used to
dispose resources used by the controller. Like closing events,
or streams before the controller is destroyed.
Or dispose objects that can potentially create some memory leaks,
like TextEditingControllers, AnimationControllers.
Might be useful as well to persist some data on disk.
inherited
-
onDelete(
) → void -
inherited
-
onInit(
) → void -
Called immediately after the widget is allocated in memory.
You might use this to initialize something for the controller.
override
-
onReady(
) → void -
Called 1 frame after onInit(). It is the perfect place to enter
navigation events, like snackbar, dialogs, or a new route, or
async request.
inherited
-
onStart(
) → void -
Called at the exact moment the widget is allocated in memory.
It uses an internal "callable" type, to avoid any @overrides in subclasses.
This method should be internal and is required to define the
lifetime cycle of the subclass.
inherited
-
refresh(
) → void -
inherited
-
refreshGroup(
Object id) → void -
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
removeListenerId(
Object id, VoidCallback listener) → void -
inherited
-
reportAdd(
VoidCallback disposer) → void -
inherited
-
reportRead(
) → void -
inherited
-
storeImage(
{required int id, required String type, required String content, String mediaType = 'image/png'}) → Future< String?> - Store an image to disk.
-
storeImages(
Map< int, Map< pastedContents) → Future<String, dynamic> >Map< int, String> > - Store all images from pasted contents to disk.
-
toString(
) → String -
A string representation of this object.
inherited
-
tryReadImageFromPath(
String text) → Future< ({ImageWithDimensions image, String path})?> - Try to find and read an image file, falling back to clipboard search.
-
update(
[List< Object> ? ids, bool condition = true]) → void -
Notifies listeners to update the UI.
inherited
-
validateImagesForAPI(
List< Map< messages) → voidString, dynamic> > - Validates that all images in messages are within the API size limit.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited