Monday, November 08, 2010 at 12:03 AM.
system.verbs.builtins.Frontier.tools.windowTypes.findWindowWithMatchingAtts
on findWindowWithMatchingAtts (adratts, adradrwindow, adrwindows=nil) {
<<Changes:
<<9/6/01; 7:20:20 PM by JES
<<Fix item #1 errors.
<<10/11/01; 3:02:26 AM by JES
<<Dereference the address of the window's table when checking its type. Without this, the matching window would never be found.
if adrwindows == nil {
adrwindows = Frontier.tools.windowTypes.init ()};
local (adr);
for adr in adrwindows {
if typeOf (adr^) == tableType { //avoid item #1 errors
local (adrwindow = @adr^.window, t, flFoundIt = false);
if window.attributes.getAll (@t, adrwindow) {
local (adratt);
on checkAllAtts () {
for adratt in adratts {
local (name = nameOf (adratt^));
if not defined (t.[name]) {
return (false)};
if adratt^ != t.[name] {
return (false)}};
return (true)};
if checkAllAtts () {
adradrwindow^ = adrwindow;
return (true)}}}};
return (false)}
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.