Sunday, April 10, 2011 at 1:05 AM.
beautSuite.viewMenu
on viewMenu () { <<Changes <<4/9/11; 4:58:46 PM by DW <<The product name at the beginning of the menu is Blork, not "beaut." <<4/5/11; 3:14:41 PM by DW <<Update the Docs command link to http://docs.blorker.com/. <<3/20/11; 2:05:12 PM by DW <<Created. local (pta = html.getpagetableaddress (), adrradiodata = radio2suite.init (), productName = beautSuite.data.strings.menuProductName); local (pagename = nameof (pta^.adrobject^), htmltext = "", indentlevel = 0, paramstring = "", editorIcon); scratchpad.viewmenuparams = pta^; bundle { //set flhascookie flhascookie = opmlEditor.member.checkCookie ("", @username, false)}; on add (s) { htmltext = htmltext + string.filledstring ("\t", indentlevel) + s}; on additem (title, thispagename, url=nil, fllast=false) { add (""); if pagename == thispagename { add ("<span class=\"navMenuCurrentPage\">" + string.upper (title) + "</span>")} else { if url == nil { url = thispagename + paramstring}; add ("<a href=\"" + url + "\"><span class=\"navMenuLink\">" + title + "</span></a>")}; if not fllast { add (" <span class=\"navMenuSeparator\">|</span> ")}}; if flhascookie { additem ("Home", "index"); <<if pta^.beaut.flEditorInPage <<additem ("Edit", "javascript:toggle('tweetBox')") additem ("Feeds", "feeds"); additem ("Podcasts", "podcasts"); additem ("Photos", "photos"); additem ("Prefs", "prefs"); <<additem ("Counts", "counts") //2/23/11 by DW additem ("Links", "links"); //3/3/11 by DW <<additem ("Bookmarklet", "bookmarklet") <<additem ("Feed", "prefs?page=1.3") <<additem ("Bucket", "prefs?page=1.1") <<additem ("URLs", "prefs?page=1.2") additem ("Log", "log"); //2/17/11 by DW additem ("Docs", "http://docs.blorker.com/"); //4/5/11 by DW <<additem ("River", "river") //3/6/11 by DW bundle { //New User command, 3/15/11 by DW if string.lower (username) == string.lower (adrradiodata^.prefs.userWhoCanCreateNewAccounts) { additem ("New User", "newUser")}}; additem ("Sign-out", "signout", fllast:true); //3/7/11 by DW bundle { //set editorIcon if pta^.beaut.flEditorInPage { editorIcon = "<a href=\"javascript:toggle('tweetBox')\">" + string (beautSuite.data.html.blackDownArrow) + "</a>"} else { editorIcon = ""}}} <<add (" -- " + username) //experiment else { additem ("Sign-in", "signin", fllast:true)}; //3/7/11 by DW if htmltext endswith "|\r" { //3/16/10 by DW htmltext = string.delete (htmltext, sizeof (htmltext)-1, 2)}; return ("<table cellspacing=\"0\" cellpadding=\"0\"><tr><td><a href=\"index\"><span class=\"navMenuLabel\">" + productName + " v" + beautInfo.version + "</span></a>: " + htmltext + "</td><td> " + editorIcon + "</td></tr></table>")}; <<return ("<font size=\"-1\"><b><a href=\"index\">" + beautInfo.name + " v" + beautInfo.version + "</a></b>: " + htmltext + "</font><br>") <<return ("<div class=\"navMenu\"><b>" + beautInfo.name + " v" + beautInfo.version + "</b>: " + htmltext + "</div>") bundle { //test code html.setpagetableaddress (@scratchpad.viewmenuparams); webbrowser.displaytext (viewMenu ())}
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.