Monday, November 08, 2010 at 12:03 AM.
system.verbs.builtins.html.loadImageFile
on loadImageFile (f, adrtable, name=nil) { <<load a file of any type as a cell in the indicated table <<It can be a GIF, JPEG, Shockwave movie, whatever type you like. <<It's loaded into user.html.images. You can move it anywhere you like. <<The gifRef macro will understand if the 1st param is an address. <<12/30/98 Added name as an optional parameter for custom naming <<local (name = file.fileFromPath (f)) if name == nil { name = file.fileFromPath (f); name = string.popSuffix (name)}; if name contains " " { //only convert to innercase if there are spaces name = string.innerCaseName (name)}; if not defined (adrtable^) { new (tabletype, adrtable)}; local (type = file.type (f)); local (flTextFile); bundle { //cross-platform way of determining if it's a text file case sys.os () { "MacOS" { flTextFile = type == 'TEXT'}} else { flTextFile = {"html", "htm", "txt"} contains string.lower (type)}}; if flTextFile { wp.newTextObject (file.readWholeFile (f), @adrtable^.[name])} else { adrtable^.[name] = file.readWholeFile (f); setBinaryType (@adrtable^.[name], type)}; return (@adrtable^.[name])}; bundle { <<test code loadimagefile ("D:\\Program Files\\OPML\\harrySmaller.gif", @workspace)}
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.