Difference between revisions of "love.filedropped"

m (Examples: Make sure to open file first.)
(Examples)
 
(3 intermediate revisions by 2 users not shown)
Line 19: Line 19:
 
print(data)
 
print(data)
 
print("End of file")
 
print("End of file")
 +
end
 +
</source>
 +
 +
If dropped file is a .png, use it to create a löve image using [[love.image]] and [[love.graphics]]
 +
<source lang="lua">
 +
function love.filedropped(file)
 +
filename = file:getFilename()
 +
ext = filename:match("%.%w+$")
 +
 +
if ext == ".png" then
 +
file:open("r")
 +
fileData = file:read("data")
 +
img = love.image.newImageData(fileData)
 +
img = love.graphics.newImage(img)
 +
end
 
end
 
end
 
</source>
 
</source>

Latest revision as of 04:54, 10 December 2022

Available since LÖVE 0.10.0
This function is not supported in earlier versions.

Callback function triggered when a file is dragged and dropped onto the window.

Function

Synopsis

love.filedropped( file )

Arguments

DroppedFile file
The unopened File object representing the file that was dropped.

Returns

Nothing.

Examples

Read and print the file, drag-and-dropped to love window using (File):read and (File):getFilename.

function love.filedropped(file)
	file:open("r")
	local data = file:read()
	print("Content of " .. file:getFilename() .. ' is')
	print(data)
	print("End of file")
end

If dropped file is a .png, use it to create a löve image using love.image and love.graphics

function love.filedropped(file)	
	filename = file:getFilename()
	ext = filename:match("%.%w+$")

	if ext == ".png" then
		file:open("r")
		fileData = file:read("data")
		img = love.image.newImageData(fileData)
		img = love.graphics.newImage(img)
	end
end

Notes

File:open must be called on the file before reading from or writing to it. File:getFilename will return the full platform-dependent path to the file.

See Also


Other Languages