From decwrl!henry.jpl.nasa.gov!elroy.jpl.nasa.gov!usc!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!rutgers!aramis.rutgers.edu!dartagnan.rutgers.edu!mcgrew Sat Sep 23 16:00:20 PDT 1989 Article 66 of comp.sources.sun: Path: decwrl!henry.jpl.nasa.gov!elroy.jpl.nasa.gov!usc!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!rutgers!aramis.rutgers.edu!dartagnan.rutgers.edu!mcgrew From: mcgrew@dartagnan.rutgers.edu (Charles Mcgrew) Newsgroups: comp.sources.sun Subject: v01i063: hype - a SunView object-oriented window builder, Part03/11 Message-ID: Date: 15 Sep 89 02:27:44 GMT Organization: Rutgers Univ., New Brunswick, N.J. Lines: 2916 Approved: mcgrew@aramis.rutgers.edu Submitted-by: apctrc!zmls04@uunet.uu.net (Martin L. Smith) Posting-number: Volume 1, Issue 63 Archive-name: hype/part03 #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create the files: # Guide # This archive created: Thu Sep 14 20:47:18 1989 export PATH; PATH=/bin:$PATH if test ! -d 'Guide' then echo shar: creating directory "'Guide'" mkdir 'Guide' fi echo shar: entering directory "'Guide'" cd 'Guide' echo shar: extracting "'content'" '(29 characters)' if test -f 'content' then echo shar: will not over-write existing file "'content'" else sed 's/^ X//' << \SHAR_EOF > 'content' X.ds RH X.ds LH X.bp X.ds CF X.PX SHAR_EOF if test 29 -ne "`wc -c < 'content'`" then echo shar: error transmitting "'content'" '(should have been 29 characters)' fi fi # end of overwriting check echo shar: extracting "'conventions'" '(1478 characters)' if test -f 'conventions' then echo shar: will not over-write existing file "'conventions'" else sed 's/^ X//' << \SHAR_EOF > 'conventions' X.ds RH Programming Conventions X.bp X.SH X.LG X.LG XProgramming Conventions X.Xs "Programming Conventions" X.SM X.SM X.PP X.B Hype Xprogramming is different in kind from conventional Xprocedural programming. XA \fBhype\fR application is a machine which changes Xits state by responding to external stimuli X(usually user actions) Xthrough the execution of message handler scripts. X.PP XAlthough \fBhype\fR allows a fair amount of wild abandon Xin accessing the contents of one object from another Xand emitting messages to remote entities, Xwe recommend that most of this flexibility Xbe eschewed. XCommunication between \fIobjects\fR should be conducted Xonly by messages and only at the object level. XOne object should never access another's internal Xentities directly. XAn object should only communicate Xwith its parent, Xits children, Xand (maybe) its siblings X(other children of the object's parent). XThe handlers for all messages sent to an object X(except, possibly, for a few generic functions) Xshould reside in that object's script. X.PP XAdhering to this discipline when building Xa \fBhype\fR machine results in a high degree Xof \fIencapsulation\fR. XAn object is completely defined in terms of Xthe messages it handles (and its returned value). XThis implies that the object's internal structure X(including its visual appearance and the nature of any of its children) Xcan be altered without introducing problems elsewhere Xso long as the definition of the object in terms of messages Xis not altered. SHAR_EOF if test 1478 -ne "`wc -c < 'conventions'`" then echo shar: error transmitting "'conventions'" '(should have been 1478 characters)' fi fi # end of overwriting check echo shar: extracting "'figure1.doc'" '(1100 characters)' if test -f 'figure1.doc' then echo shar: will not over-write existing file "'figure1.doc'" else sed 's/^ X//' << \SHAR_EOF > 'figure1.doc' XoEd4@EdHHT HH H %0 CfP C/@ Cf

every entity has an info entry+T?1p?V 0 . every entity may have a scriptWWM61~6M6XKAK OYKK K Zll lG[ flllTp +7F top of the treeqKw8K/Swr $&\ su 1 X an object can ownvs $1Y rtu 1 other object s andMt $; su pane su$&\!rt;vSp11S!p w 0%M xz a pane can ownbx 00 wz item syYV?YtVPz0%Mwx fHA X and so on... Z== X= b#b Xb \ <} info!$ < script!` X. 5.! . X ..!X . X SHAR_EOF echo shar: 21 control characters may be missing from "'figure1.doc'" if test 1100 -ne "`wc -c < 'figure1.doc'`" then echo shar: error transmitting "'figure1.doc'" '(should have been 1100 characters)' fi fi # end of overwriting check echo shar: extracting "'figure1.ps'" '(18162 characters)' if test -f 'figure1.ps' then echo shar: will not over-write existing file "'figure1.ps'" else sed 's/^ X//' << \SHAR_EOF > 'figure1.ps' X%! X%%Pages: (atend) X%%DocumentFonts: (atend) X%%EndComments X% X% Frame Maker PostScript Prolog 1.3, for use with Maker 1.3 X% Copyright (c) 1986-1988 by Frame Technology, Inc. All rights reserved. X% X% Known Problems: X% Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 X/FMversion (1.2) def X/FrameDict 123 dict def X% The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk XFrameDict /tmprangecheck errordict /rangecheck get put Xerrordict /rangecheck {FrameDict /bug true put} put XFrameDict /bug false put Xmark X% Some PS machines read past the CR, so keep the following 3 lines together! Xcurrentfile 5 string readline X00 X0000000000 Xcleartomark Xerrordict /rangecheck FrameDict /tmprangecheck get put XFrameDict /bug get { X /readline { X /gstring exch def X /gfile exch def X /gindex 0 def X { X gfile read pop X dup 10 eq {exit} if X dup 13 eq {exit} if X gstring exch gindex exch put X /gindex gindex 1 add def X } loop X pop X gstring 0 gindex getinterval true X } def X } if X/FMVERSION { X FMversion ne { X /Times-Roman findfont 18 scalefont setfont X 100 100 moveto X (Maker version does not match postscript_prolog!) X dup = X show showpage X } if X } def X/FMLOCAL { X FrameDict begin X 0 def X end X } def X /gstring FMLOCAL X /gfile FMLOCAL X /gindex FMLOCAL X /landscape FMLOCAL X /docheight FMLOCAL X /docwidth FMLOCAL X /yscale FMLOCAL X /xscale FMLOCAL X /orgxfer FMLOCAL X /orgproc FMLOCAL X /organgle FMLOCAL X /orgfreq FMLOCAL X/FMDOCUMENT { X array /FMfonts exch def X /#copies exch def X FrameDict begin X 0 ne /landscape exch def X /docheight exch def X /docwidth exch def X /yscale exch def X /xscale exch def X currenttransfer cvlit /orgxfer exch def X currentscreen cvlit /orgproc exch def X /organgle exch def /orgfreq exch def X end X } def X /pagesave FMLOCAL X /orgmatrix FMLOCAL X/FMBEGINPAGE { X FrameDict begin X /pagesave save def X X 2 setlinecap X xscale yscale scale X landscape { X 90 rotate X 0 docheight neg translate X /fillprocs /fillprocs90 load store X } X {/fillprocs /fillprocs0 load store} X ifelse X /orgmatrix matrix def X gsave X } def X/FMENDPAGE { X grestore X pagesave restore X end X showpage X } def X /fontname FMLOCAL X /fontscale FMLOCAL X /fontnum FMLOCAL X /fontdict FMLOCAL X/FMDEFINEFONT { X FrameDict begin X /fontname exch def X /fontscale exch def X /fontnum exch def X /fontdict fontname findfont fontscale scalefont def X fontdict /Encoding get StandardEncoding eq X { X fontdict DiacriticEncode X /fontdict exch def X } { X fontdict NonDiacriticEncode X /fontdict exch def X } ifelse X FMfonts fontnum X fontnum fontdict definefont X put X end X } def X/FMLINEWIDTHS { X FrameDict begin X dup array /FMlinewidths exch def X 1 sub -1 0 {exch FMlinewidths 3 1 roll lnormalize put} for X end X } def X/FMNORMALIZEGRAPHICS { X newpath X 0.0 0.0 moveto X 1 setlinewidth X 0 setlinecap X 0 setgray X } bind def X/FMBEGINEPSF { X end X /FMEPSF save def X /showpage {} def X FMNORMALIZEGRAPHICS X [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall X fx fy translate X fw urx llx sub div fh ury lly sub div scale X llx neg lly neg translate X } bind def X X/FMENDEPSF { X FMEPSF restore X FrameDict begin X } bind def X XFrameDict begin X/savematrix { X orgmatrix currentmatrix pop X } bind def X/restorematrix { X orgmatrix setmatrix X } bind def X/dmatrix matrix def X/dpi 72 0 dmatrix defaultmatrix dtransform X dup mul exch dup mul add sqrt Xdef X/max {2 copy lt {exch} if pop} bind def X/min {2 copy gt {exch} if pop} bind def X/DiacriticEncoding [ X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl X/numbersign /dollar /percent /ampersand /quotesingle /parenleft X/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one X/two /three /four /five /six /seven /eight /nine /colon /semicolon X/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K X/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash X/bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h X/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar X/braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute X/Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis X/atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis X/iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve X/ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex X/udieresis /dagger /.notdef /cent /sterling /section /bullet X/paragraph /germandbls /registered /copyright /trademark /acute X/dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef X/yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown X/exclamdown /logicalnot /.notdef /florin /.notdef /.notdef X/guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde X/Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright X/quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis X/fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl X/periodcentered /quotesinglbase /quotedblbase /perthousand X/Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute X/Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve X/Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron X/breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron X] def X /basefontdict FMLOCAL X /newfontdict FMLOCAL X/DiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {dup /Encoding eq X {exch pop DiacriticEncoding} X {exch} X ifelse X newfontdict 3 1 roll put X } X {pop pop} X ifelse X } forall X newfontdict X } bind def X/NonDiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {exch newfontdict 3 1 roll put} X {pop pop} X ifelse X } forall X newfontdict X } bind def X /freq FMLOCAL X /bwidth FMLOCAL X /bpside FMLOCAL X /bstring FMLOCAL X /onbits FMLOCAL X /offbits FMLOCAL X /xindex FMLOCAL X /yindex FMLOCAL X /x FMLOCAL X /y FMLOCAL X/setpattern { X /freq exch def X /bwidth exch def X /bpside exch def X /bstring exch def X /onbits 0 def /offbits 0 def X freq 0 {/y exch def X /x exch def X /xindex x 1 add 2 div bpside mul cvi def X /yindex y 1 add 2 div bpside mul cvi def X bstring yindex bwidth mul xindex 8 idiv add get X 1 7 xindex 8 mod sub bitshift and 0 ne X {/onbits onbits 1 add def 1} X {/offbits offbits 1 add def 0} X ifelse X } X setscreen X {} settransfer X offbits offbits onbits add div setgray X } bind def X/grayness { X setgray X orgxfer cvx settransfer X orgfreq organgle orgproc cvx setscreen X } bind def X/normalize { X transform cvi exch cvi exch itransform X } bind def X/dnormalize { X dtransform cvi exch cvi exch idtransform X } bind def X/lnormalize { X 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop X } bind def X/fillprocs0 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<0F1E3C78F0E1C387> 8 1 dpi 16 div setpattern} X {<0F87C3E1F0783C1E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<03060C183060C081> 8 1 dpi 16 div setpattern} X {<8040201008040201> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<0000FFFF0000FFFF> 8 1 dpi 16 div setpattern} X {<7EBDDBE7E7DBBD7E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<7FBFDFEFF7FBFDFE> 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs90 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<87c3e1f0783c1e0f> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<0000ffff0000ffff> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<81c06030180c0603> 8 1 dpi 16 div setpattern} X {<0102040810204080> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X {<783c1e0f87c3e1f0> 8 1 dpi 16 div setpattern} X {<0f1e3c78f0e1c387> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<7ebddbe7e7dbbd7e> 8 1 dpi 16 div setpattern} X {<7e3f9fcfe7f3f9fc> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs /fillprocs0 load def X/H { X FMlinewidths exch get setlinewidth X } bind def X/X { X fillprocs exch get exec X } bind def X/V { X gsave eofill grestore X } bind def X/N { X gsave stroke grestore X } bind def X/M {newpath moveto} bind def X/E {lineto} bind def X/D {curveto} bind def X/O {closepath} bind def X /n FMLOCAL X/L { X /n exch def X newpath X normalize X moveto X 2 1 n {pop normalize lineto} for X } bind def X/Y { X L X closepath X } bind def X/K { X /n exch def X newpath X moveto X 3 1 n {pop curveto} for X } bind def X/J { X /n exch def X newpath X moveto X 1 1 n {pop curveto} for X } bind def X /x1 FMLOCAL X /x2 FMLOCAL X /y1 FMLOCAL X /y2 FMLOCAL X/R { X /y2 exch def X /x2 exch def X /y1 exch def X /x1 exch def X x1 y1 X x2 y1 X x2 y2 X x1 y2 X 4 Y X } bind def X/C { X grestore X gsave X R X clip X } bind def X/U { X grestore X gsave X } bind def X/F { X FMfonts exch get X setfont X } bind def X/T { X moveto show X } bind def X/P { X moveto X 0 32 3 2 roll widthshow X } bind def X/S { X moveto X 0 exch ashow X } bind def X/B { X moveto X 0 32 4 2 roll 0 exch awidthshow X } bind def X/Q { X moveto X gsave show grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /dx FMLOCAL X /dy FMLOCAL X /dl FMLOCAL X /t FMLOCAL X /t2 FMLOCAL X /Cos FMLOCAL X /Sin FMLOCAL X /r FMLOCAL X/W { X dnormalize X /dy exch def X /dx exch def X normalize X /y exch def X /x exch def X /dl dx dx mul dy dy mul add sqrt def X dl 0.0 gt { X /t currentlinewidth def X savematrix X /Cos dx dl div def X /Sin dy dl div def X /r [Cos Sin Sin neg Cos 0.0 0.0] def X /t2 t 2.5 mul 3.5 max def X newpath X x y translate X r concat X 0.0 0.0 moveto X dl t 2.7 mul sub 0.0 rlineto X stroke X restorematrix X x dx add y dy add translate X r concat X t 0.67 mul setlinewidth X t 1.61 mul neg 0.0 translate X 0.0 0.0 moveto X t2 1.7 mul neg t2 2.0 div moveto X 0.0 0.0 lineto X t2 1.7 mul neg t2 2.0 div neg lineto X stroke X t setlinewidth X restorematrix X } if X } bind def X/G { X gsave X newpath X normalize translate 0.0 0.0 moveto X dnormalize scale X 0.0 0.0 1.0 5 3 roll arc X closepath eofill X grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /w FMLOCAL X /h FMLOCAL X /xx FMLOCAL X /yy FMLOCAL X /ww FMLOCAL X /hh FMLOCAL X/A { X /y exch def X /x exch def X /h exch def X /w exch def X x y normalize /yy exch def /xx exch def X w h dnormalize /hh exch def /ww exch def X ww abs hh abs xx ww add yy hh sub X gsave X savematrix X newpath X translate X scale X 0.0 0.0 1.0 5 3 roll arc X 0 setlinecap X restorematrix X stroke X grestore X } bind def X /FMsaveobject FMLOCAL X /FMoptop FMLOCAL X /FMdicttop FMLOCAL X/BEGINPRINTCODE { X /FMdicttop countdictstack 1 add def X /FMoptop count 6 sub def X /FMsaveobject save def X userdict begin X /showpage {} def X translate X FMNORMALIZEGRAPHICS X } bind def X/ENDPRINTCODE { X count -1 FMoptop {pop pop} for X countdictstack -1 FMdicttop {pop end} for X FMsaveobject restore X } bind def X/gn { X 0 X { 46 mul X cf read pop X 32 sub X dup 46 lt {exit} if X 46 sub add X } loop X add X } bind def X /str FMLOCAL X/cfs { X /str sl string def X 0 1 sl 1 sub {str exch val put} for X str def X } bind def X/ic [ X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 X {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} X {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} X {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} X {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} X {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} X {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} X {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} X {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} X {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} X ] def X /sl FMLOCAL X /val FMLOCAL X /ws FMLOCAL X /im FMLOCAL X /bs FMLOCAL X /cs FMLOCAL X /len FMLOCAL X /pos FMLOCAL X/ms { X /sl exch def X /val 255 def X /ws cfs X /im cfs X /val 0 def X /bs cfs X /cs cfs X } bind def X400 ms X/ip { X is X 0 X cf cs readline pop X { ic exch get exec X add X } forall X pop X X } bind def X/wh { X /len exch def X /pos exch def X ws 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/bl { X /len exch def X /pos exch def X bs 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/s1 1 string def X/fl { X /len exch def X /pos exch def X /val cf s1 readhexstring pop 0 get def X pos 1 pos len add 1 sub {im exch val put} for X pos len X } bind def X/hx { X 3 copy getinterval X cf exch readhexstring pop pop X } bind def X /h FMLOCAL X /w FMLOCAL X /lb FMLOCAL X /bitmapsave FMLOCAL X /is FMLOCAL X /cf FMLOCAL X/BEGINBITMAP { X gsave X translate scale /h exch def /w exch def X /lb w 7 add 8 idiv def X sl lb lt {lb ms} if X /bitmapsave save def X /is im 0 lb getinterval def X ws 0 lb getinterval is copy pop X /cf currentfile def X w h 1 [w 0 0 h neg 0 h] X {ip} image X bitmapsave restore X grestore X } bind def X/ENDBITMAP { X } bind def Xend X%%EndProlog X%%BeginSetup X(1.2) FMVERSION X1. 1. 612. 792. 0 1 6 FMDOCUMENT X0 12. /Times-Roman FMDEFINEFONT X1 14. /Times-Bold FMDEFINEFONT X2 12. /Times-BoldItalic FMDEFINEFONT X3 18. /Times-Bold FMDEFINEFONT X4 12. /Times-Bold FMDEFINEFONT X5 14. /Times-Italic FMDEFINEFONT X0.5 1. 3. 4. 4 FMLINEWIDTHS X%%EndSetup X%%Page: "7" 1 XFMBEGINPAGE X0 F X0 X X(Hype Programmer\325s Guide \321 Version 1.2) 72. 747. T X(-7-) 299. 36. T X(Objects, Panes, and Items) 416.35 747. T X1 F X(RootObject) 59. 552. T X(AChildObject) 164. 169. T X(AGrandchildObject) 295. 136. T X(AnotherChildObject) 164. 96. T X2 F X(info) 295. 199. T X(script) 295. 167. T X1 F X(APane) 164. 526. T X2 F X(info) 272. 586. T X(script) 272. 567. T X1 F X(AButtonItem) 269. 540. T X(AnotherButtonItem) 269. 506. T X(ASliderBarItem) 269. 471. T X(ATextItem) 269. 435. T X2 F X(info) 164. 639. T X(script) 164. 607. T X(info) 420. 443. T X(script) 420. 424. T X413. 448. 405. 448. 2 L X1 H XN X405. 447. 405. 428. 2 L XN X405. 428. 413. 428. 2 L XN X405. 438. 342. 438. 2 L XN X(info) 421. 480. T X(script) 421. 461. T X414. 485. 405. 485. 2 L XN X405. 484. 405. 465. 2 L XN X405. 465. 414. 465. 2 L XN X405. 475. 372. 475. 2 L XN X(info) 420. 515. T X(script) 420. 497. T X413. 520. 405. 520. 2 L XN X405. 519. 405. 500. 2 L XN X405. 500. 413. 500. 2 L XN X405. 510. 397. 510. 2 L XN X(info) 421. 550. T X(script) 421. 531. T X413. 554. 405. 554. 2 L XN X405. 553. 405. 534. 2 L XN X405. 534. 413. 534. 2 L XN X405. 544. 354. 544. 2 L XN X258. 588. 258. 438. 2 L XN X210. 531. 257. 531. 2 L XN X258. 588. 266. 588. 2 L XN X258. 572. 266. 572. 2 L XN X258. 545. 266. 545. 2 L XN X258. 511. 266. 511. 2 L XN X258. 475. 266. 475. 2 L XN X1 F X(AnotherPane) 164. 346. T X2 F X(info) 272. 404. T X(script) 272. 388. T X1 F X(OneMoreButtonItem) 272. 354. T X(YetAnotherButtonItem) 272. 319. T X(ASecondSliderBarItem) 272. 283. T X(ATextItem) 272. 249. T X2 F X(info) 447. 258. T X(script) 447. 239. T X440. 262. 433. 262. 2 L XN X433. 261. 433. 242. 2 L XN X433. 242. 440. 242. 2 L XN X432. 252. 348. 252. 2 L XN X(info) 447. 293. T X(script) 447. 274. T X440. 298. 433. 298. 2 L XN X433. 297. 433. 278. 2 L XN X433. 278. 440. 278. 2 L XN X433. 288. 425. 288. 2 L XN X258. 407. 258. 253. 2 L XN X249. 350. 257. 350. 2 L XN X258. 407. 266. 407. 2 L XN X258. 391. 266. 391. 2 L XN X258. 359. 266. 359. 2 L XN X258. 324. 266. 324. 2 L XN X258. 288. 266. 288. 2 L XN X3 F X0.8 (Fig. 1 A Hype Tree) 223. 706. P X140. 643. 140. 100. 2 L XN X140. 643. 156. 643. 2 L XN X140. 610. 156. 610. 2 L XN X140. 532. 156. 532. 2 L XN X140. 351. 156. 351. 2 L XN X140. 173. 156. 173. 2 L XN X140. 100. 156. 100. 2 L XN X132. 558. 140. 558. 2 L XN X259. 253. 267. 253. 2 L XN X0 F X1.4 (every entity has an ) 247. 639. P X4 F X1.4 (info) 345.93 639. P X0 F X1.4 ( entry) 365.93 639. P X0 H X240. 643. -49. 0. W X1.21 (every entity may have a ) 262. 607. P X4 F X1.21 (script) 385.67 607. P X254. 610. -49. 0. W X281. 205. 281. 140. 2 L X1 H XN X281. 205. 288. 205. 2 L XN X281. 172. 288. 172. 2 L XN X281. 140. 288. 140. 2 L XN X256. 172. 281. 172. 2 L XN X0 F X1.01 (top of the tree) 43. 472. P X0 H X75. 489. 8. 56. W X1.01 (an ) 36. 361. P X4 F X1.01 (object) 51.34 361. P X0 F X1.01 ( can own) 82.66 361. P X2.51 (other ) 36. 350. P X4 F X2.51 (object) 66.17 350. P X0 F X2.51 (s and) 97.49 350. P X4 F X(pane) 36. 340. T X0 F X(s) 60.67 340. T X83. 375. 49. 49. W X0.9 (a pane can own) 176. 234. P X4 F X(item) 176. 223. T X0 F X(s) 198.66 223. T X217. 259. 27. 63. W X5 F X(and so on...) 486. 70. T X258. 475. 266. 475. 2 L X1 H XN X258. 438. 266. 438. 2 L XN X2 F X(info) 444. 146. T X(script) 444. 127. T X437. 150. 430. 150. 2 L XN X430. 149. 430. 130. 2 L XN X430. 130. 437. 130. 2 L XN X430. 140. 423. 140. 2 L XN X(info) 319. 106. T X(script) 319. 87. T X312. 110. 305. 110. 2 L XN X305. 109. 305. 90. 2 L XN X305. 90. 312. 90. 2 L XN X305. 100. 298. 100. 2 L XN X(info) 447. 329. T X(script) 447. 310. T X440. 334. 433. 334. 2 L XN X433. 333. 433. 314. 2 L XN X433. 314. 440. 314. 2 L XN X433. 324. 425. 324. 2 L XN X(info) 447. 364. T X(script) 447. 345. T X440. 369. 433. 369. 2 L XN X433. 368. 433. 349. 2 L XN X433. 349. 440. 349. 2 L XN X433. 359. 408. 359. 2 L XN XFMENDPAGE X%%Trailer X%%Pages: 1 1 X%%DocumentFonts: Times-Roman X%%+ Times-Bold X%%+ Times-BoldItalic X%%+ Times-Italic SHAR_EOF if test 18162 -ne "`wc -c < 'figure1.ps'`" then echo shar: error transmitting "'figure1.ps'" '(should have been 18162 characters)' fi fi # end of overwriting check echo shar: extracting "'figure2.doc'" '(2505 characters)' if test -f 'figure2.doc' then echo shar: will not over-write existing file "'figure2.doc'" else sed 's/^ X//' << \SHAR_EOF > 'figure2.doc' XoEd4@EdHHT HH H %0 D>$P 3P| Cr|P 3P( D;P CS\H$TP d3R|3PPHype ProgrammerUs Guide Q Version 1.2-#-Menus and Navigation~/BlankPortrait.pscomplpzdzd,ad,ad5{ &c X3QD"4CN CT,CT, Paragraph XCN CSCS8CRDt Paragraph XCfPCPdCPlD D Paragraph Copy Object to CB X XCfPC>XC>`C=DC=D ParagraphP Test Script X XC>|C?C? C>pC>p Paragraph` Quit ObjectkRTu5R&&|R|7 XR`u 1R22 XCA4CA=H>==J">O*>OhO $hOHhOh B%hh ~' X X :(AEA v)A6ALA!2. X%0 X%:%!n/:%E:%:j!*0:j:jLj!f2 X4 X4(4""3(4=(4(q"^4(q$(qLq"6 XF XFF"V7FsF9#8969L9#D Z$l 5 XD+XD+`D+hD+LD+L Paragraph X XD+ D,D, D+xD+x Paragraph XD-D-D-D,|D,| Paragraph X XD- 'figure2.ps' X%! X%%Pages: (atend) X%%DocumentFonts: (atend) X%%EndComments X% X% Frame Maker PostScript Prolog 1.3, for use with Maker 1.3 X% Copyright (c) 1986-1988 by Frame Technology, Inc. All rights reserved. X% X% Known Problems: X% Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 X/FMversion (1.2) def X/FrameDict 123 dict def X% The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk XFrameDict /tmprangecheck errordict /rangecheck get put Xerrordict /rangecheck {FrameDict /bug true put} put XFrameDict /bug false put Xmark X% Some PS machines read past the CR, so keep the following 3 lines together! Xcurrentfile 5 string readline X00 X0000000000 Xcleartomark Xerrordict /rangecheck FrameDict /tmprangecheck get put XFrameDict /bug get { X /readline { X /gstring exch def X /gfile exch def X /gindex 0 def X { X gfile read pop X dup 10 eq {exit} if X dup 13 eq {exit} if X gstring exch gindex exch put X /gindex gindex 1 add def X } loop X pop X gstring 0 gindex getinterval true X } def X } if X/FMVERSION { X FMversion ne { X /Times-Roman findfont 18 scalefont setfont X 100 100 moveto X (Maker version does not match postscript_prolog!) X dup = X show showpage X } if X } def X/FMLOCAL { X FrameDict begin X 0 def X end X } def X /gstring FMLOCAL X /gfile FMLOCAL X /gindex FMLOCAL X /landscape FMLOCAL X /docheight FMLOCAL X /docwidth FMLOCAL X /yscale FMLOCAL X /xscale FMLOCAL X /orgxfer FMLOCAL X /orgproc FMLOCAL X /organgle FMLOCAL X /orgfreq FMLOCAL X/FMDOCUMENT { X array /FMfonts exch def X /#copies exch def X FrameDict begin X 0 ne /landscape exch def X /docheight exch def X /docwidth exch def X /yscale exch def X /xscale exch def X currenttransfer cvlit /orgxfer exch def X currentscreen cvlit /orgproc exch def X /organgle exch def /orgfreq exch def X end X } def X /pagesave FMLOCAL X /orgmatrix FMLOCAL X/FMBEGINPAGE { X FrameDict begin X /pagesave save def X X 2 setlinecap X xscale yscale scale X landscape { X 90 rotate X 0 docheight neg translate X /fillprocs /fillprocs90 load store X } X {/fillprocs /fillprocs0 load store} X ifelse X /orgmatrix matrix def X gsave X } def X/FMENDPAGE { X grestore X pagesave restore X end X showpage X } def X /fontname FMLOCAL X /fontscale FMLOCAL X /fontnum FMLOCAL X /fontdict FMLOCAL X/FMDEFINEFONT { X FrameDict begin X /fontname exch def X /fontscale exch def X /fontnum exch def X /fontdict fontname findfont fontscale scalefont def X fontdict /Encoding get StandardEncoding eq X { X fontdict DiacriticEncode X /fontdict exch def X } { X fontdict NonDiacriticEncode X /fontdict exch def X } ifelse X FMfonts fontnum X fontnum fontdict definefont X put X end X } def X/FMLINEWIDTHS { X FrameDict begin X dup array /FMlinewidths exch def X 1 sub -1 0 {exch FMlinewidths 3 1 roll lnormalize put} for X end X } def X/FMNORMALIZEGRAPHICS { X newpath X 0.0 0.0 moveto X 1 setlinewidth X 0 setlinecap X 0 setgray X } bind def X/FMBEGINEPSF { X end X /FMEPSF save def X /showpage {} def X FMNORMALIZEGRAPHICS X [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall X fx fy translate X fw urx llx sub div fh ury lly sub div scale X llx neg lly neg translate X } bind def X X/FMENDEPSF { X FMEPSF restore X FrameDict begin X } bind def X XFrameDict begin X/savematrix { X orgmatrix currentmatrix pop X } bind def X/restorematrix { X orgmatrix setmatrix X } bind def X/dmatrix matrix def X/dpi 72 0 dmatrix defaultmatrix dtransform X dup mul exch dup mul add sqrt Xdef X/max {2 copy lt {exch} if pop} bind def X/min {2 copy gt {exch} if pop} bind def X/DiacriticEncoding [ X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl X/numbersign /dollar /percent /ampersand /quotesingle /parenleft X/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one X/two /three /four /five /six /seven /eight /nine /colon /semicolon X/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K X/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash X/bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h X/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar X/braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute X/Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis X/atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis X/iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve X/ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex X/udieresis /dagger /.notdef /cent /sterling /section /bullet X/paragraph /germandbls /registered /copyright /trademark /acute X/dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef X/yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown X/exclamdown /logicalnot /.notdef /florin /.notdef /.notdef X/guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde X/Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright X/quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis X/fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl X/periodcentered /quotesinglbase /quotedblbase /perthousand X/Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute X/Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve X/Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron X/breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron X] def X /basefontdict FMLOCAL X /newfontdict FMLOCAL X/DiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {dup /Encoding eq X {exch pop DiacriticEncoding} X {exch} X ifelse X newfontdict 3 1 roll put X } X {pop pop} X ifelse X } forall X newfontdict X } bind def X/NonDiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {exch newfontdict 3 1 roll put} X {pop pop} X ifelse X } forall X newfontdict X } bind def X /freq FMLOCAL X /bwidth FMLOCAL X /bpside FMLOCAL X /bstring FMLOCAL X /onbits FMLOCAL X /offbits FMLOCAL X /xindex FMLOCAL X /yindex FMLOCAL X /x FMLOCAL X /y FMLOCAL X/setpattern { X /freq exch def X /bwidth exch def X /bpside exch def X /bstring exch def X /onbits 0 def /offbits 0 def X freq 0 {/y exch def X /x exch def X /xindex x 1 add 2 div bpside mul cvi def X /yindex y 1 add 2 div bpside mul cvi def X bstring yindex bwidth mul xindex 8 idiv add get X 1 7 xindex 8 mod sub bitshift and 0 ne X {/onbits onbits 1 add def 1} X {/offbits offbits 1 add def 0} X ifelse X } X setscreen X {} settransfer X offbits offbits onbits add div setgray X } bind def X/grayness { X setgray X orgxfer cvx settransfer X orgfreq organgle orgproc cvx setscreen X } bind def X/normalize { X transform cvi exch cvi exch itransform X } bind def X/dnormalize { X dtransform cvi exch cvi exch idtransform X } bind def X/lnormalize { X 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop X } bind def X/fillprocs0 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<0F1E3C78F0E1C387> 8 1 dpi 16 div setpattern} X {<0F87C3E1F0783C1E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<03060C183060C081> 8 1 dpi 16 div setpattern} X {<8040201008040201> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<0000FFFF0000FFFF> 8 1 dpi 16 div setpattern} X {<7EBDDBE7E7DBBD7E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<7FBFDFEFF7FBFDFE> 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs90 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<87c3e1f0783c1e0f> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<0000ffff0000ffff> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<81c06030180c0603> 8 1 dpi 16 div setpattern} X {<0102040810204080> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X {<783c1e0f87c3e1f0> 8 1 dpi 16 div setpattern} X {<0f1e3c78f0e1c387> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<7ebddbe7e7dbbd7e> 8 1 dpi 16 div setpattern} X {<7e3f9fcfe7f3f9fc> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs /fillprocs0 load def X/H { X FMlinewidths exch get setlinewidth X } bind def X/X { X fillprocs exch get exec X } bind def X/V { X gsave eofill grestore X } bind def X/N { X gsave stroke grestore X } bind def X/M {newpath moveto} bind def X/E {lineto} bind def X/D {curveto} bind def X/O {closepath} bind def X /n FMLOCAL X/L { X /n exch def X newpath X normalize X moveto X 2 1 n {pop normalize lineto} for X } bind def X/Y { X L X closepath X } bind def X/K { X /n exch def X newpath X moveto X 3 1 n {pop curveto} for X } bind def X/J { X /n exch def X newpath X moveto X 1 1 n {pop curveto} for X } bind def X /x1 FMLOCAL X /x2 FMLOCAL X /y1 FMLOCAL X /y2 FMLOCAL X/R { X /y2 exch def X /x2 exch def X /y1 exch def X /x1 exch def X x1 y1 X x2 y1 X x2 y2 X x1 y2 X 4 Y X } bind def X/C { X grestore X gsave X R X clip X } bind def X/U { X grestore X gsave X } bind def X/F { X FMfonts exch get X setfont X } bind def X/T { X moveto show X } bind def X/P { X moveto X 0 32 3 2 roll widthshow X } bind def X/S { X moveto X 0 exch ashow X } bind def X/B { X moveto X 0 32 4 2 roll 0 exch awidthshow X } bind def X/Q { X moveto X gsave show grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /dx FMLOCAL X /dy FMLOCAL X /dl FMLOCAL X /t FMLOCAL X /t2 FMLOCAL X /Cos FMLOCAL X /Sin FMLOCAL X /r FMLOCAL X/W { X dnormalize X /dy exch def X /dx exch def X normalize X /y exch def X /x exch def X /dl dx dx mul dy dy mul add sqrt def X dl 0.0 gt { X /t currentlinewidth def X savematrix X /Cos dx dl div def X /Sin dy dl div def X /r [Cos Sin Sin neg Cos 0.0 0.0] def X /t2 t 2.5 mul 3.5 max def X newpath X x y translate X r concat X 0.0 0.0 moveto X dl t 2.7 mul sub 0.0 rlineto X stroke X restorematrix X x dx add y dy add translate X r concat X t 0.67 mul setlinewidth X t 1.61 mul neg 0.0 translate X 0.0 0.0 moveto X t2 1.7 mul neg t2 2.0 div moveto X 0.0 0.0 lineto X t2 1.7 mul neg t2 2.0 div neg lineto X stroke X t setlinewidth X restorematrix X } if X } bind def X/G { X gsave X newpath X normalize translate 0.0 0.0 moveto X dnormalize scale X 0.0 0.0 1.0 5 3 roll arc X closepath eofill X grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /w FMLOCAL X /h FMLOCAL X /xx FMLOCAL X /yy FMLOCAL X /ww FMLOCAL X /hh FMLOCAL X/A { X /y exch def X /x exch def X /h exch def X /w exch def X x y normalize /yy exch def /xx exch def X w h dnormalize /hh exch def /ww exch def X ww abs hh abs xx ww add yy hh sub X gsave X savematrix X newpath X translate X scale X 0.0 0.0 1.0 5 3 roll arc X 0 setlinecap X restorematrix X stroke X grestore X } bind def X /FMsaveobject FMLOCAL X /FMoptop FMLOCAL X /FMdicttop FMLOCAL X/BEGINPRINTCODE { X /FMdicttop countdictstack 1 add def X /FMoptop count 6 sub def X /FMsaveobject save def X userdict begin X /showpage {} def X translate X FMNORMALIZEGRAPHICS X } bind def X/ENDPRINTCODE { X count -1 FMoptop {pop pop} for X countdictstack -1 FMdicttop {pop end} for X FMsaveobject restore X } bind def X/gn { X 0 X { 46 mul X cf read pop X 32 sub X dup 46 lt {exit} if X 46 sub add X } loop X add X } bind def X /str FMLOCAL X/cfs { X /str sl string def X 0 1 sl 1 sub {str exch val put} for X str def X } bind def X/ic [ X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 X {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} X {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} X {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} X {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} X {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} X {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} X {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} X {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} X {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} X ] def X /sl FMLOCAL X /val FMLOCAL X /ws FMLOCAL X /im FMLOCAL X /bs FMLOCAL X /cs FMLOCAL X /len FMLOCAL X /pos FMLOCAL X/ms { X /sl exch def X /val 255 def X /ws cfs X /im cfs X /val 0 def X /bs cfs X /cs cfs X } bind def X400 ms X/ip { X is X 0 X cf cs readline pop X { ic exch get exec X add X } forall X pop X X } bind def X/wh { X /len exch def X /pos exch def X ws 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/bl { X /len exch def X /pos exch def X bs 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/s1 1 string def X/fl { X /len exch def X /pos exch def X /val cf s1 readhexstring pop 0 get def X pos 1 pos len add 1 sub {im exch val put} for X pos len X } bind def X/hx { X 3 copy getinterval X cf exch readhexstring pop pop X } bind def X /h FMLOCAL X /w FMLOCAL X /lb FMLOCAL X /bitmapsave FMLOCAL X /is FMLOCAL X /cf FMLOCAL X/BEGINBITMAP { X gsave X translate scale /h exch def /w exch def X /lb w 7 add 8 idiv def X sl lb lt {lb ms} if X /bitmapsave save def X /is im 0 lb getinterval def X ws 0 lb getinterval is copy pop X /cf currentfile def X w h 1 [w 0 0 h neg 0 h] X {ip} image X bitmapsave restore X grestore X } bind def X/ENDBITMAP { X } bind def Xend X%%EndProlog X%%BeginSetup X(1.2) FMVERSION X1. 1. 612. 792. 0 1 4 FMDOCUMENT X0 12. /Times-Roman FMDEFINEFONT X1 14. /Symbol FMDEFINEFONT X2 14. /Times-Bold FMDEFINEFONT X3 18. /Times-Bold FMDEFINEFONT X0.5 1. 3. 4. 4 FMLINEWIDTHS X%%EndSetup X%%Page: "11" 1 XFMBEGINPAGE X0 F X0 X X(Hype Programmer\325s Guide \321 Version 1.2) 72. 747. T X(-11-) 296. 36. T X(Menus and Navigation) 430.68 747. T X1 F X(\336) 294. 296. T X(\336) 294. 343. T X(\336) 294. 327. T X2 F X(Copy Object to CB) 400. 271. T X(Add CB Object as Child) 400. 255. T X(Add CB Obj Tree as Child) 400. 239. T X(Clipboard Holds ...) 400. 223. T X(Add Template From CB) 402. 180. T X(Clipboard Holds ...) 402. 164. T X1 F X(\336) 290. 99. T X(\336) 290. 83. T X2 F X(Add Pane) 214. 99. T X(Delete Pane) 214. 83. T X(Object Info) 216. 359. T X(Obj Script) 216. 343. T X(Clipboard) 216. 327. T X(Create Child) 216. 311. T X(Open Child) 216. 295. T X(Open Parent) 216. 279. T X(Delete Obj) 216. 263. T X(Close Tree) 216. 247. T X(Quit Object) 216. 231. T X(Save State) 215. 496. T X(Save & Quit) 215. 480. T X(File State) 215. 464. T X(File Subtree) 215. 448. T X(Load Subtree) 215. 432. T X(Quit, No Save) 215. 416. T X(Pretty Print) 215. 400. T X(Close/Open) 215. 642. T X(Move) 215. 626. T X(Resize) 215. 610. T X(Front) 215. 594. T X(Back) 215. 578. T X(Refresh) 215. 562. T X(Fit Window) 215. 546. T X(Window) 54. 399. T X(File) 54. 383. T X(Object) 54. 367. T X(Template) 54. 351. T X(Pane) 54. 335. T X(Test Script) 54. 319. T X(Quit Object) 54. 303. T X210. 540. 294. 657. R X1 H XN X210. 395. 306. 512. R XN X210. 223. 312. 376. R XN X(Edit Script) 400. 380. T X(Append TB to Script) 400. 364. T X(Prepend TB to Script) 400. 348. T X(Copy Script to TB) 400. 332. T X(Edit Textboard) 400. 316. T X396. 306. 540. 396. R XN X396. 215. 567. 287. R XN X396. 156. 558. 192. R XN X210. 77. 306. 113. R XN X336. 175. 54. 0. W X2 H X375. 284. 0. 0. W X3 F X1.26 (Fig. 2 Object Border Menu Hierarchy) 154. 706. P X1 H X318. 347. 72. 0. W X318. 329. 360. 329. 2 L XN X360. 329. 360. 257. 2 L XN X360. 257. 30. 0. W X138. 402. 150. 402. 2 L XN X150. 402. 150. 599. 2 L XN X150. 599. 54. 0. W X138. 371. 186. 371. 2 L XN X186. 371. 186. 302. 2 L XN X186. 302. 18. 0. W X138. 356. 168. 356. 2 L XN X168. 356. 168. 167. 2 L XN X168. 167. 36. 0. W X138. 338. 150. 338. 2 L XN X150. 338. 150. 95. 2 L XN X150. 95. 54. 0. W X273. 609. 291. 639. R X7 X XV X1 F X0 X X(\336) 273. 626. T X(\336) 273. 610. T X117. 329. 135. 413. R X7 X XV X0 X X(\336) 117. 400. T X(\336) 117. 384. T X(\336) 117. 368. T X(\336) 117. 352. T X(\336) 117. 336. T X49. 294. 132. 414. R XN X2 F X(Open Template) 213. 187. T X(Clipboard) 213. 171. T X(Create Template) 213. 155. T X(Close All) 213. 139. T X313. 164. 331. 200. R X7 X XV X1 F X0 X X(\336) 313. 187. T X(\336) 313. 171. T X210. 132. 330. 203. R XN X168. 448. 36. 0. W X168. 448. 168. 388. 2 L XN X168. 388. 138. 388. 2 L XN XFMENDPAGE X%%Trailer X%%Pages: 1 1 X%%DocumentFonts: Times-Roman X%%+ Symbol X%%+ Times-Bold SHAR_EOF if test 16926 -ne "`wc -c < 'figure2.ps'`" then echo shar: error transmitting "'figure2.ps'" '(should have been 16926 characters)' fi fi # end of overwriting check echo shar: extracting "'figure3.doc'" '(2679 characters)' if test -f 'figure3.doc' then echo shar: will not over-write existing file "'figure3.doc'" else sed 's/^ X//' << \SHAR_EOF > 'figure3.doc' XoEd4@EdHHT HH H %0 Cy0P Cy D:dP D: Ct\P D;8H$TPd3,\JtHype ProgrammerUs Guide Q Version 1.2-#-Menus and Navigation~/BlankPortrait.pscomplpzdzd.Yd.Y:d8 C>C>C>C> Paragraph Edit Script X XC?8C?@C?HC>,C>, Paragraph XTextBoard X XC?dC?lC?tC?XC?X Paragraph0 XClipboard X XC@C@C@ C@C@ Paragraph@ Create Item X XCA\.$ *p\_w%KL*"\EH Xr*T\"3t+H|"<=- @B XCE(CE0CE8CDCD Paragraph X XCD\CETCE\CEHCEH Paragraph X XCECFxCFCElCEl Paragraph X XCF,CGCG$CFCF Paragraph0 SHAR_EOF echo shar: 14 control characters may be missing from "'figure3.doc'" if test 2679 -ne "`wc -c < 'figure3.doc'`" then echo shar: error transmitting "'figure3.doc'" '(should have been 2679 characters)' fi fi # end of overwriting check echo shar: extracting "'figure3.ps'" '(17017 characters)' if test -f 'figure3.ps' then echo shar: will not over-write existing file "'figure3.ps'" else sed 's/^ X//' << \SHAR_EOF > 'figure3.ps' X%! X%%Pages: (atend) X%%DocumentFonts: (atend) X%%EndComments X% X% Frame Maker PostScript Prolog 1.3, for use with Maker 1.3 X% Copyright (c) 1986-1988 by Frame Technology, Inc. All rights reserved. X% X% Known Problems: X% Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 X/FMversion (1.2) def X/FrameDict 123 dict def X% The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk XFrameDict /tmprangecheck errordict /rangecheck get put Xerrordict /rangecheck {FrameDict /bug true put} put XFrameDict /bug false put Xmark X% Some PS machines read past the CR, so keep the following 3 lines together! Xcurrentfile 5 string readline X00 X0000000000 Xcleartomark Xerrordict /rangecheck FrameDict /tmprangecheck get put XFrameDict /bug get { X /readline { X /gstring exch def X /gfile exch def X /gindex 0 def X { X gfile read pop X dup 10 eq {exit} if X dup 13 eq {exit} if X gstring exch gindex exch put X /gindex gindex 1 add def X } loop X pop X gstring 0 gindex getinterval true X } def X } if X/FMVERSION { X FMversion ne { X /Times-Roman findfont 18 scalefont setfont X 100 100 moveto X (Maker version does not match postscript_prolog!) X dup = X show showpage X } if X } def X/FMLOCAL { X FrameDict begin X 0 def X end X } def X /gstring FMLOCAL X /gfile FMLOCAL X /gindex FMLOCAL X /landscape FMLOCAL X /docheight FMLOCAL X /docwidth FMLOCAL X /yscale FMLOCAL X /xscale FMLOCAL X /orgxfer FMLOCAL X /orgproc FMLOCAL X /organgle FMLOCAL X /orgfreq FMLOCAL X/FMDOCUMENT { X array /FMfonts exch def X /#copies exch def X FrameDict begin X 0 ne /landscape exch def X /docheight exch def X /docwidth exch def X /yscale exch def X /xscale exch def X currenttransfer cvlit /orgxfer exch def X currentscreen cvlit /orgproc exch def X /organgle exch def /orgfreq exch def X end X } def X /pagesave FMLOCAL X /orgmatrix FMLOCAL X/FMBEGINPAGE { X FrameDict begin X /pagesave save def X X 2 setlinecap X xscale yscale scale X landscape { X 90 rotate X 0 docheight neg translate X /fillprocs /fillprocs90 load store X } X {/fillprocs /fillprocs0 load store} X ifelse X /orgmatrix matrix def X gsave X } def X/FMENDPAGE { X grestore X pagesave restore X end X showpage X } def X /fontname FMLOCAL X /fontscale FMLOCAL X /fontnum FMLOCAL X /fontdict FMLOCAL X/FMDEFINEFONT { X FrameDict begin X /fontname exch def X /fontscale exch def X /fontnum exch def X /fontdict fontname findfont fontscale scalefont def X fontdict /Encoding get StandardEncoding eq X { X fontdict DiacriticEncode X /fontdict exch def X } { X fontdict NonDiacriticEncode X /fontdict exch def X } ifelse X FMfonts fontnum X fontnum fontdict definefont X put X end X } def X/FMLINEWIDTHS { X FrameDict begin X dup array /FMlinewidths exch def X 1 sub -1 0 {exch FMlinewidths 3 1 roll lnormalize put} for X end X } def X/FMNORMALIZEGRAPHICS { X newpath X 0.0 0.0 moveto X 1 setlinewidth X 0 setlinecap X 0 setgray X } bind def X/FMBEGINEPSF { X end X /FMEPSF save def X /showpage {} def X FMNORMALIZEGRAPHICS X [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall X fx fy translate X fw urx llx sub div fh ury lly sub div scale X llx neg lly neg translate X } bind def X X/FMENDEPSF { X FMEPSF restore X FrameDict begin X } bind def X XFrameDict begin X/savematrix { X orgmatrix currentmatrix pop X } bind def X/restorematrix { X orgmatrix setmatrix X } bind def X/dmatrix matrix def X/dpi 72 0 dmatrix defaultmatrix dtransform X dup mul exch dup mul add sqrt Xdef X/max {2 copy lt {exch} if pop} bind def X/min {2 copy gt {exch} if pop} bind def X/DiacriticEncoding [ X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl X/numbersign /dollar /percent /ampersand /quotesingle /parenleft X/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one X/two /three /four /five /six /seven /eight /nine /colon /semicolon X/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K X/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash X/bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h X/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar X/braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute X/Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis X/atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis X/iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve X/ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex X/udieresis /dagger /.notdef /cent /sterling /section /bullet X/paragraph /germandbls /registered /copyright /trademark /acute X/dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef X/yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef X/ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown X/exclamdown /logicalnot /.notdef /florin /.notdef /.notdef X/guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde X/Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright X/quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis X/fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl X/periodcentered /quotesinglbase /quotedblbase /perthousand X/Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute X/Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve X/Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron X/breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron X] def X /basefontdict FMLOCAL X /newfontdict FMLOCAL X/DiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {dup /Encoding eq X {exch pop DiacriticEncoding} X {exch} X ifelse X newfontdict 3 1 roll put X } X {pop pop} X ifelse X } forall X newfontdict X } bind def X/NonDiacriticEncode { X /basefontdict exch def X /newfontdict basefontdict maxlength dict def X basefontdict X {exch dup /FID ne X {exch newfontdict 3 1 roll put} X {pop pop} X ifelse X } forall X newfontdict X } bind def X /freq FMLOCAL X /bwidth FMLOCAL X /bpside FMLOCAL X /bstring FMLOCAL X /onbits FMLOCAL X /offbits FMLOCAL X /xindex FMLOCAL X /yindex FMLOCAL X /x FMLOCAL X /y FMLOCAL X/setpattern { X /freq exch def X /bwidth exch def X /bpside exch def X /bstring exch def X /onbits 0 def /offbits 0 def X freq 0 {/y exch def X /x exch def X /xindex x 1 add 2 div bpside mul cvi def X /yindex y 1 add 2 div bpside mul cvi def X bstring yindex bwidth mul xindex 8 idiv add get X 1 7 xindex 8 mod sub bitshift and 0 ne X {/onbits onbits 1 add def 1} X {/offbits offbits 1 add def 0} X ifelse X } X setscreen X {} settransfer X offbits offbits onbits add div setgray X } bind def X/grayness { X setgray X orgxfer cvx settransfer X orgfreq organgle orgproc cvx setscreen X } bind def X/normalize { X transform cvi exch cvi exch itransform X } bind def X/dnormalize { X dtransform cvi exch cvi exch idtransform X } bind def X/lnormalize { X 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop X } bind def X/fillprocs0 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<0F1E3C78F0E1C387> 8 1 dpi 16 div setpattern} X {<0F87C3E1F0783C1E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<03060C183060C081> 8 1 dpi 16 div setpattern} X {<8040201008040201> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X { 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<0000FFFF0000FFFF> 8 1 dpi 16 div setpattern} X {<7EBDDBE7E7DBBD7E> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<7FBFDFEFF7FBFDFE> 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs90 X [{0.00 grayness} X {0.10 grayness} X {0.30 grayness} X {0.50 grayness} X {0.70 grayness} X {0.90 grayness} X {0.97 grayness} X {1.00 grayness} X {<87c3e1f0783c1e0f> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<0000ffff0000ffff> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<8142241818244281> 8 1 dpi 16 div setpattern} X {<81c06030180c0603> 8 1 dpi 16 div setpattern} X {<0102040810204080> 8 1 dpi 16 div setpattern} X {} X {1.00 grayness} X {0.90 grayness} X {0.70 grayness} X {0.50 grayness} X {0.30 grayness} X {0.10 grayness} X {0.03 grayness} X {0.00 grayness} X {<783c1e0f87c3e1f0> 8 1 dpi 16 div setpattern} X {<0f1e3c78f0e1c387> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {<3333333333333333> 8 1 dpi 16 div setpattern} X {<7ebddbe7e7dbbd7e> 8 1 dpi 16 div setpattern} X {<7e3f9fcfe7f3f9fc> 8 1 dpi 16 div setpattern} X { 8 1 dpi 16 div setpattern} X {} X ] def X/fillprocs /fillprocs0 load def X/H { X FMlinewidths exch get setlinewidth X } bind def X/X { X fillprocs exch get exec X } bind def X/V { X gsave eofill grestore X } bind def X/N { X gsave stroke grestore X } bind def X/M {newpath moveto} bind def X/E {lineto} bind def X/D {curveto} bind def X/O {closepath} bind def X /n FMLOCAL X/L { X /n exch def X newpath X normalize X moveto X 2 1 n {pop normalize lineto} for X } bind def X/Y { X L X closepath X } bind def X/K { X /n exch def X newpath X moveto X 3 1 n {pop curveto} for X } bind def X/J { X /n exch def X newpath X moveto X 1 1 n {pop curveto} for X } bind def X /x1 FMLOCAL X /x2 FMLOCAL X /y1 FMLOCAL X /y2 FMLOCAL X/R { X /y2 exch def X /x2 exch def X /y1 exch def X /x1 exch def X x1 y1 X x2 y1 X x2 y2 X x1 y2 X 4 Y X } bind def X/C { X grestore X gsave X R X clip X } bind def X/U { X grestore X gsave X } bind def X/F { X FMfonts exch get X setfont X } bind def X/T { X moveto show X } bind def X/P { X moveto X 0 32 3 2 roll widthshow X } bind def X/S { X moveto X 0 exch ashow X } bind def X/B { X moveto X 0 32 4 2 roll 0 exch awidthshow X } bind def X/Q { X moveto X gsave show grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /dx FMLOCAL X /dy FMLOCAL X /dl FMLOCAL X /t FMLOCAL X /t2 FMLOCAL X /Cos FMLOCAL X /Sin FMLOCAL X /r FMLOCAL X/W { X dnormalize X /dy exch def X /dx exch def X normalize X /y exch def X /x exch def X /dl dx dx mul dy dy mul add sqrt def X dl 0.0 gt { X /t currentlinewidth def X savematrix X /Cos dx dl div def X /Sin dy dl div def X /r [Cos Sin Sin neg Cos 0.0 0.0] def X /t2 t 2.5 mul 3.5 max def X newpath X x y translate X r concat X 0.0 0.0 moveto X dl t 2.7 mul sub 0.0 rlineto X stroke X restorematrix X x dx add y dy add translate X r concat X t 0.67 mul setlinewidth X t 1.61 mul neg 0.0 translate X 0.0 0.0 moveto X t2 1.7 mul neg t2 2.0 div moveto X 0.0 0.0 lineto X t2 1.7 mul neg t2 2.0 div neg lineto X stroke X t setlinewidth X restorematrix X } if X } bind def X/G { X gsave X newpath X normalize translate 0.0 0.0 moveto X dnormalize scale X 0.0 0.0 1.0 5 3 roll arc X closepath eofill X grestore X } bind def X /x FMLOCAL X /y FMLOCAL X /w FMLOCAL X /h FMLOCAL X /xx FMLOCAL X /yy FMLOCAL X /ww FMLOCAL X /hh FMLOCAL X/A { X /y exch def X /x exch def X /h exch def X /w exch def X x y normalize /yy exch def /xx exch def X w h dnormalize /hh exch def /ww exch def X ww abs hh abs xx ww add yy hh sub X gsave X savematrix X newpath X translate X scale X 0.0 0.0 1.0 5 3 roll arc X 0 setlinecap X restorematrix X stroke X grestore X } bind def X /FMsaveobject FMLOCAL X /FMoptop FMLOCAL X /FMdicttop FMLOCAL X/BEGINPRINTCODE { X /FMdicttop countdictstack 1 add def X /FMoptop count 6 sub def X /FMsaveobject save def X userdict begin X /showpage {} def X translate X FMNORMALIZEGRAPHICS X } bind def X/ENDPRINTCODE { X count -1 FMoptop {pop pop} for X countdictstack -1 FMdicttop {pop end} for X FMsaveobject restore X } bind def X/gn { X 0 X { 46 mul X cf read pop X 32 sub X dup 46 lt {exit} if X 46 sub add X } loop X add X } bind def X /str FMLOCAL X/cfs { X /str sl string def X 0 1 sl 1 sub {str exch val put} for X str def X } bind def X/ic [ X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 X 0 X {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} X {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} X {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} X {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} X {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} X {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} X {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} X {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} X {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} X ] def X /sl FMLOCAL X /val FMLOCAL X /ws FMLOCAL X /im FMLOCAL X /bs FMLOCAL X /cs FMLOCAL X /len FMLOCAL X /pos FMLOCAL X/ms { X /sl exch def X /val 255 def X /ws cfs X /im cfs X /val 0 def X /bs cfs X /cs cfs X } bind def X400 ms X/ip { X is X 0 X cf cs readline pop X { ic exch get exec X add X } forall X pop X X } bind def X/wh { X /len exch def X /pos exch def X ws 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/bl { X /len exch def X /pos exch def X bs 0 len getinterval im pos len getinterval copy pop X pos len X } bind def X/s1 1 string def X/fl { X /len exch def X /pos exch def X /val cf s1 readhexstring pop 0 get def X pos 1 pos len add 1 sub {im exch val put} for X pos len X } bind def X/hx { X 3 copy getinterval X cf exch readhexstring pop pop X } bind def X /h FMLOCAL X /w FMLOCAL X /lb FMLOCAL X /bitmapsave FMLOCAL X /is FMLOCAL X /cf FMLOCAL X/BEGINBITMAP { X gsave X translate scale /h exch def /w exch def X /lb w 7 add 8 idiv def X sl lb lt {lb ms} if X /bitmapsave save def X /is im 0 lb getinterval def X ws 0 lb getinterval is copy pop X /cf currentfile def X w h 1 [w 0 0 h neg 0 h] X {ip} image X bitmapsave restore X grestore X } bind def X/ENDBITMAP { X } bind def Xend X%%EndProlog X%%BeginSetup X(1.2) FMVERSION X1. 1. 612. 792. 0 1 4 FMDOCUMENT X0 12. /Times-Roman FMDEFINEFONT X1 14. /Times-Bold FMDEFINEFONT X2 14. /Symbol FMDEFINEFONT X3 18. /Times-Bold FMDEFINEFONT X0.5 1. 3. 4. 4 FMLINEWIDTHS X%%EndSetup X%%Page: "15" 1 XFMBEGINPAGE X0 F X0 X X(Hype Programmer\325s Guide \321 Version 1.2) 72. 747. T X(-15-) 296. 36. T X(Menus and Navigation) 430.68 747. T X1 F X(Close/Open) 350. 665. T X(Move) 350. 649. T X(Resize) 350. 633. T X(Front) 350. 617. T X(Back) 350. 601. T X(Refresh) 350. 585. T X(Fit Window) 350. 569. T X2 F X(\336) 486. 195. T X(\336) 486. 179. T X(\336) 486. 163. T X1 F X(Window ) 74. 527. T X(Template Info) 74. 511. T X(Template Script ) 74. 495. T X(Background Text ) 74. 479. T X(Clipboard ) 74. 463. T X(Scroll Bars ) 74. 447. T X(Alter Grid Size) 74. 431. T X(Delete Template) 74. 415. T X(Open Owner Obj) 74. 399. T X(Quit Template) 74. 383. T X406. 626. 424. 662. R X7 X XV X2 F X0 X X(\336) 406. 649. T X(\336) 406. 633. T X1 F X(Copy Template to CB) 352. 347. T X(Clipboard Holds \311) 352. 331. T X182. 438. 200. 540. R X7 X XV X2 F X0 X X(\336) 182. 527. T X(\336) 182. 495. T X(\336) 182. 479. T X(\336) 182. 463. T X(\336) 182. 447. T X(\336) 457. 104. T X3 F X2.01 (Fig. 3 Template Menu Hierarchies) 171. 706. P X348. 562. 425. 680. R X1 H XN X1 F X(Edit Script) 352. 536. T X(Append TB to Script) 352. 520. T X(Prepend TB to Script) 352. 504. T X(Copy Script to TB) 352. 488. T X(Edit Textboard) 352. 472. T X348. 466. 491. 552. R XN X(Edit BG Text) 351. 435. T X(Append TB to BG Text) 351. 419. T X(Prepend TB to BG Text) 351. 403. T X(Copy BG Text to TB) 351. 387. T X348. 378. 503. 450. R XN X(Toggle Vert Bar) 351. 299. T X(Toggle Horiz Bar) 351. 283. T X348. 276. 467. 313. R XN X204. 531. 239. 531. 2 L XN X239. 531. 239. 621. 2 L XN X239. 621. 102. 0. W X204. 498. 137. 0. W X204. 483. 299. 483. 2 L XN X299. 483. 299. 417. 2 L XN X204. 465. 281. 465. 2 L XN X281. 465. 281. 344. 2 L XN X204. 452. 263. 452. 2 L XN X263. 452. 263. 295. 2 L XN X299. 416. 42. 0. W X281. 344. 60. 0. W X263. 295. 78. 0. W X(Copy Item to CB) 351. 103. T X(Add Item From CB) 351. 87. T X(Clipboard Holds ...) 351. 71. T X(Append TB to Script) 353. 195. T X(Prepend TB to Script) 353. 179. T X(Copy Script to TB) 353. 163. T X(Edit Textboard) 353. 147. T X348. 139. 503. 211. R XN X348. 67. 474. 118. R XN X269. 158. 269. 93. 2 L XN X269. 93. 72. 0. W X269. 159. 174. 159. 2 L XN X174. 175. 167. 0. W X(Template Border Menu) 72. 649. T X(Template Contents Menu) 72. 247. T X72. 264. 516. 264. 2 L X0 H XN X72. 378. 198. 540. R X1 H XN X348. 326. 492. 362. R XN X(Item Info) 75. 203. T X(Edit Script) 75. 187. T X(TextBoard) 75. 171. T X(Clipboard) 75. 155. T X(Create Item) 75. 139. T X(Delete item) 75. 123. T X150. 150. 168. 216. R X7 X XV X2 F X0 X X(\336) 150. 203. T X(\336) 150. 187. T X(\336) 150. 171. T X(\336) 150. 155. T X150. 124. 168. 136. R X7 X XV X0 X X(\336) 150. 123. T X72. 117. 168. 218. R XN XFMENDPAGE X%%Trailer X%%Pages: 1 1 X%%DocumentFonts: Times-Roman X%%+ Times-Bold X%%+ Symbol SHAR_EOF if test 17017 -ne "`wc -c < 'figure3.ps'`" then echo shar: error transmitting "'figure3.ps'" '(should have been 17017 characters)' fi fi # end of overwriting check echo shar: done with directory "'Guide'" cd .. # End of shell archive exit 0