Monday, November 08, 2010 at 12:02 AM.
system.verbs.builtins.Frontier.clickers.typersrc
on typersrc (path) { local (foundAtLeastOne = false); on loadFrom (path) { if file.isFolder (path) { local (f); fileloop (f in path) { if not loadFrom (f) { return (false)}}} else { msg (file.fileFromPath (path)); on loadType (f, resType) { local (ct, i, resName, resData); ct = rez.countResources (f, resType); for i = 1 to ct { if rez.getNthResource (f, resType, i, @resName, @resData) { foundAtLeastOne = true; local (adrTable = @system.extensions); if not defined (adrTable^) { new (tableType, adrTable)}; adrTable = @adrTable^.[resName]; if not defined (adrTable^) { new (tableType, adrTable)}; local (adrObject = @adrTable^.code); if not dialog.ask ("Address for new " + resType + "?", @adrObject) { return (false)}; if defined (adrObject^) { if not dialog.yesNo ("Replace the existing " + resType + " with new code?") { continue}}; adrObject^ = resData; table.gotoAddress (adrObject)}}; return (true)}; if not loadType (path, 'UCMD') { return (false)}; if not loadType (path, 'XCMD') { return (false)}; if not loadType (path, 'XFCN') { return (false)}}}; Frontier.finderToFront = false; loadFrom (path); if not foundAtLeastOne { scriptError ("There are no UCMDs, XCMDs or XFCNs in file \"" + file.fileFromPath (path) + "\".")}}
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.