uploadedMultiple
Will only return a non-null value for a single frame
This function does nothing in non-wasm builds
Parameters
- id:dvui.Id
- dvui.Id
Source
Implementation
pub fn uploadedMultiple(id: dvui.Id) ?[]File {
if (comptime dvui.backend.kind != .web) return null;
const num_files = dvui.backend.getNumberOfFilesAvailable(id);
if (num_files == 0) return null;
const files = dvui.currentWindow().arena().alloc(File, num_files) catch |err| {
dvui.log.err("File upload skipped, failed to allocate space for file handles: {any}", .{err});
return null;
};
for (0.., files) |i, *file| {
const name = dvui.backend.getFileName(id, i);
const size = dvui.backend.getFileSize(id, i);
if (name == null or size == null) {
dvui.log.err("Could not get file metadata for id {d} file number {d}. Got size: {?d} and name: {?s}", .{ id, i, size, name });
return null;
}
file.* = .{
.id = id,
.index = i,
.size = size.?,
.name = name.?,
};
}
return files;
}