value__ntID__ntName  __ntTemplate viewBounds viewJustify stepChildren viewFlagsviewSetupDoneScriptInstallMeScriptRemoveMeScript declareSelf viewFormat  __ntDatatype __ntFlagsÿ( CLAS@    RECTlefttoprightbottomÿÿÿÿðDÿˆÿ¼   @ NUMB    ARAY     text  viewFont    ÿh PROT@    TEXTÿ¬© 1994-1995, J. Keith Wood All Rights Reserved Version 2.5 keith@cognisense.com Cognisense: offering Object-Oriented and Client/Server Software Development since 1989. Newton Consulting Services Available.     RECT 0ø     NUMB   simpleFont9 EVAL    ARAY    __ntExternFile  __ntDeclare     ntLinkedSubview PROT@   RECT Hpˆ LinkedSubview ÒFSSpecÒ Athenaeum«5xÚBD Uinfo.t ^«'mFLFMNTP1newNote UÓAthenaeum:NTK:newNote:info.tÿÿinfoFloater ÿprotoStaticTextcopyright      ÿ˜ PROT@ protoClosebox     icon      ÿ0 CLAS@   NUMB    PICT __ntResID__ntCreateMask __ntPictName 4ÿlogoPictØ ?Ø Athenaeum«5xÚBD U newPage.rsrc Y©Ì‘ÏrsrcRSEDnewNote UÓ"Athenaeum:NTK:newNote:newPage.rsrcÿÿ   NUMB     RECT  ™   @ NUMB clPictureView logo     !   "   ÿh PROT@    TEXTnewPage    RECT    ÿÿÿþdÿdÿÿÿþ¤   ÿX NUMB   &fancyFont12+tsBold EVAL A title    5  ! buttonClickScript   ÿˆ PROT@    TEXTInstall   RECT    hÿÿ8ÿ8   Öfunc() begin if (StrCompare(text, "Install") = 0) then :InstallMeScript(); else :RemoveMeScript(); end SCPTprotoTextButtoninstallButton     5  r !    ÿˆ PROT@    SCPTLfunc() begin infoFloater:Open(); end    TEXTThanks!   RECT    ÿhÿÿ8ÿ8 ~infoButton ÿ    NUMB   ÿ¶func() begin local installedNow := nil; local status := GetRoot().KeyboardChicken:Parent(); if not(HasSlot(status, 'stepChildren)) then status.stepChildren := []; foreach kid in status.stepChildren do begin if HasSlot(kid, 'tag) and kid.tag = kAppSymbol then begin installedNow := TRUE; end; end; if installedNow then begin SetValue(installButton, 'text, "Remove"); end else begin SetValue(installButton, 'text, "Install"); end end  SCPT   ÿ func() begin local statusBar := GetRoot().KeyboardChicken:Parent(); if (NOT HasSlot(statusBar, 'stepChildren)) then statusBar.(EnsureInternal('stepChildren)) := Clone(statusBar.viewChildren); local tTemplate := EnsureInternal({_proto: nil, tag: kAppSymbol}); tTemplate._proto := kpartData; AddArraySlot(statusBar.stepChildren, tTemplate); if (Visible(statusBar)) then statusBar:RedoChildren(); SetValue(installButton, 'text, "Remove"); end EVAL   ÿBfunc() begin local statusBar := GetRoot().KeyboardChicken:Parent(); if (NOT HasSlot(statusBar, 'stepChildren)) then return; foreach stepChild in statusBar.stepChildren do begin if HasSlot(stepChild, 'tag) then if (stepChild.tag = kAppSymbol) then begin local tCompareFunction := func(sTag, stepChildFrame) if (stepChildFrame.tag = sTag) then TRUE; local tPos := ArrayPos(statusBar.stepChildren, kAppSymbol, 0, tCompareFunction); if (tPos) then RemoveSlot(statusBar.stepchildren, tPos); break; end; end; if Visible(statusBar) then statusBar:RedoChildren(); SetValue(installButton, 'text, "Install"); end EVAL    'base EVAL   ÿ@ NUMBclViewbaseView