Monday, November 08, 2010 at 12:02 AM.
system.verbs.builtins.fatPages.confirmAddress
on confirmAddress (adr) { <<Changes <<3/31/2004; 1:37:38 PM by JES <<Use string.popFileFromAddress to shorten the address in the replace confirmation dialog. loop { //get destination address from the user, confirmation on popPath (s) { local (i, flbrackets = false, ch); local (flquotes = false); for i = sizeof (s) downto 2 { ch = s [i]; if ch == '"' { if s [i - 1] != '\\' { if flquotes { flquotes = false} else { flquotes = true}}}; if ch == ']' { if not flquotes { flbrackets = true}}; if ch == '[' { if not flquotes { flbrackets = false}}; if ch == '.' { if not flquotes and not flbrackets { s = string.mid (s, 1, i - 1); return (s)}}}; return (s)}; if not dialog.ask ("Name for imported object?", @adr) { return (false)}; local (objname = nameOf (adr^)); if objname == "" { // objname isn't interpretable as an address if not dialog.confirm ("Can't import to " + popPath (adr) + " because the table doesn't exist.") { return (false)}; continue}; //try again if objname == adr { //avoid importing into a local adr = @root.[adr]} else { adr = address (adr)}; if defined (adr^) { //confirm, we're going to over-write it if not dialog.yesNo ("Replace existing object named " + string.popFileFromAddress (adr) + "?") { continue}}; break}; return (adr)}
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.