<P>When trying to run the frame fact example in section 3.3.1 of the PLT Framework: GUI Application Framework manual I am receiving an error message: reference to undefined identifier: test:get-active-frame. I have the <FONT face="Courier New">(<SPAN class=keyword>require</SPAN> (<SPAN class=keyword>lib</SPAN> <SPAN class=selfeval>"framework.ss"</SPAN> <SPAN class=selfeval>"framework"</SPAN>))</FONT>statement, in fact if I remove that statement I then fail on the test:new-window statement, so it appears the require is functioning correctly.. I have looked at test.ss and it appears to me that the get-active-frame define is in there and should be OK (but I am a newbie to DrScheme so that may mean little). I have searched the list archive with no hits.</P>
<P>Here is my code:</P>
<P>(require (lib "framework.ss" "framework")) <BR>(define go<BR> (lambda ()<BR> (sleep 3)<BR> (test:new-window (get-panel '(0 0 0 1))) ; definitions canvas<BR> (test:menu-select "Edit" "Select All")<BR> (test:menu-select "Edit" "Delete")<BR> (type-line "(define fact")<BR> (type-line "(lambda (n)")<BR> (type-line "(if (zero? n)")<BR> (type-line "1")<BR> (type-line "(* n (fact (sub1 n))))))")<BR> (test:button-push (get-panel '(0 0 0 0 5 0))) ; check-syntax button<BR> (test:button-push (get-panel '(0 0 0 0 5 3))) ; execute button<BR> (sleep 3)<BR> (type-line "(fact 4)")<BR> (sleep 1)<BR> (printf "Test complete. Pending actions: ~s~n" <BR> (test:number-pending-actions))))</P>
<P> (define type-line<BR> (lambda (str)<BR> (for-each test:keystroke (string->list str))<BR> (test:keystroke #\return)))</P>
<P> (define get-panel<BR> (lambda (path)<BR> (let loop ([path path] <BR> [panel (send (test:get-active-frame) get-top-panel)])<BR> (if (null? path)<BR> panel<BR> (loop (cdr path) <BR> (list-ref (ivar panel children) (car path)))))))<BR></P>
<P>I am running language Pretty Big (includes MrEd and Advanced) at version 203.</P>
<P>Any help would be appreciated.</P><BR><BR>Shawn Legrand <br>Carpe Noctem! Carpe Diem! Hieros Gamos!<br>splegrand@yahoo.com