home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 1993-02-01 | 59.4 KB | 1,455 lines
# ppres data_file # This file contains a presentation prepared by # Perspecta Presents 1.09 dictdefine itemlook Drawing -fg Black -lp Solid -bg White -fp Solid -width 1.00 -dash solid -arrow none -feather White -dir 0 dictdefine itemlook Arrows -fg Black -lp Solid -bg White -fp Solid -width 1.00 -dash solid -arrow head -feather White -dir 0 dictdefine itemlook TextBox -fg None -lp Solid -bg None -fp Solid -width 1.00 -dash solid -arrow none -feather Black -dir 0 dictdefine paralook Title -family Times -color Blue -pointsize 36 -bold 1 -italic 0 -underline 0 -left 0.00 -indent 0.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.20 -linespacetype 1 -paraspace 1.20 -paraspacetype 1 -justify left -tabs {} -powertext None dictdefine paralook Text -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 0.00 -indent 0.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.00 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext None dictdefine paralook Heading -family Times -color Black -pointsize 24 -bold 1 -italic 0 -underline 0 -left 0.00 -indent 0.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext None dictdefine paralook Subheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 36.00 -indent 0.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext None dictdefine paralook BHeading -family Times -color Black -pointsize 24 -bold 1 -italic 0 -underline 0 -left 18.00 -indent -18.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 18 54 90 126 162 198 234 270 306 342 378} -powertext Bullets dictdefine paralook BSubheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 54.00 -indent -18.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.20 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 54 90 90 90 126 162 198 234 270 306 342 378 414} -powertext Bullets dictdefine paralook I.Heading -family Times -color Black -pointsize 24 -bold 1 -italic 0 -underline 0 -left 36.00 -indent -36.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext Roman dictdefine paralook 1.Heading -family Times -color Black -pointsize 24 -bold 1 -italic 0 -underline 0 -left 36.00 -indent -36.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext Numbers dictdefine paralook A.Subheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 63.00 -indent -27.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 72 108 144 180 216 252 288 324 360 396} -powertext Letters dictdefine paralook 1.Subheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 90.00 -indent -27.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 108 144 180 216 252 288 324 360 396} -powertext Numbers dictdefine paralook (a)Subheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 126.00 -indent -36.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 144 180 216 252 288 324 360 396} -powertext Letters(lc) dictdefine paralook i.Subheading -family Times -color Black -pointsize 24 -bold 0 -italic 0 -underline 0 -left 162.00 -indent -36.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.50 -paraspacetype 1 -justify left -tabs { 180 216 252 288 324 360 396} -powertext Roman(lc) dictdefine paralook Code -family Courier -color Green -pointsize 24 -bold 1 -italic 0 -underline 0 -left 36.00 -indent 0.00 -right 0.00 -top 0.00 -bottom 0.00 -linespace 1.00 -linespacetype 1 -paraspace 1.20 -paraspacetype 1 -justify left -tabs { 36 72 108 144 180 216 252 288 324 360 396} -powertext None dictdefine color Black #000000 dictdefine color White #ffffff dictdefine color Red #ff0000 dictdefine color Orange #ffa500 dictdefine color Yellow #ffff00 dictdefine color Green #00ff00 dictdefine color Blue #00beff dictdefine color Purple #ca00e1 dictdefine color Grey #c0c0c0 talk itemconfig -look Drawing -fg Green -bg None -width 1.00 -arrow head -feather White -dir 90 talk textconfig -look TextBox talk paraconfig -look BHeading set talk(textUnits) i set talk(featherSwatches) 16 set talk(noteOrientation) v set talk(backgOrientation) v set talk(featherPrint) 1 set talk(gridGridi) 8 set talk(windowZoom) 1 set talk(pointsize) {8 10 12 14 16 17 18 24 36} set talk(grid) 9 set talk(textGridc) 5 set talk(pagesize) {612 792} set talk(gridUnits) i set talk(textGridi) 8 set talk(featherBlend) color set talk(spacing) {0.00 0.50 1.00 1.2 1.50 1.75 2.00 2.5 3.00 4.0} set talk(featherDisplay) 1 set talk(printLevel) 2 set talk(customUnits) i set talk(gridGridc) 5 view active 1backg orientation - v set ti [new - title "54 95 558 140.956" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title -justify center; insert $ti shift -revert 1; insert $ti shift -color Blue; insert $ti shift -string "Title" -color Blue; tiformat $ti 0 5 0 6 -color Blue; set ti; view active 2backg orientation - v set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Title" ; set ti; new - rectangle "27 108 585 114.75" -look Drawing -fg None -bg Blue -fp Blend -width 0.50 -feather White -dir 90 set ti [new - textitem "387 702 585 718.004" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text -justify right; insert $ti shift -revert 1; insert $ti shift -family Helvetica -pointsize 12; insert $ti shift -string "Tcl/Tk overview, slide " -family Helvetica -pointsize 12; set id [PowerCreate 1 $ti cursor {Page Number} Numbers { -family Helvetica -pointsize 12} -1 { 21 }]; insert $ti shift -string "." -family Helvetica -pointsize 12; tiformat $ti 0 28 0 29 -pointsize 12; set ti; view active 3backg orientation - v set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Title" ; set ti; new - rectangle "27 108 585 114.75" -look Drawing -fg None -bg Blue -fp Blend -width 0.50 -feather White -dir 90 set ti [new - textitem "387 702 585 717.428" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -pointsize 12; insert $ti shift -string "WRL update talk, 10/27/92, slide " -pointsize 12; set id [PowerCreate 1 $ti cursor {Page Number} Numbers { -pointsize 12} -1 { 3 }]; insert $ti shift -string "." -pointsize 12; tiformat $ti 0 37 0 38 -pointsize 12; set ti; view active 1slide backg - 1 set ti [new - title "27 140 585 296.1016" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title -justify center; insert $ti shift -revert 1; insert $ti shift -string "Tcl and Tk:" ; insertPara $ti shift ; insert $ti shift -string "A Programming System" ; insertPara $ti shift ; insert $ti shift -string "for X11 User Interfaces" ; set ti; set ti [new - textitem "27 423 585 636.824" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading -paraspace 1.00 -justify center; insert $ti shift -revert 1; insert $ti shift -color Red -bold 0 -italic 0 -underline 0; insert $ti shift -string "John Ousterhout" -color Red -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insertPara $ti shift -color -1; insertPara $ti shift ; insert $ti shift -string "Computer Science Division" -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "Department of EECS" -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insertPara $ti shift ; insert $ti shift -string "University of California at Berkeley" -bold 0 -italic 0 -underline 0; tiformat $ti 6 36 6 37 -bold 0 -italic 0 -underline 0; set ti; set ti [new - textitem "81 270 126 301.304" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; set ti; view active 1note orientation - v icon - 100.45455 40 0.67171717 view active 2slide backg - 2 set ti [new - textitem "45 144 585 683.01536" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "What I've built:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Tcl: embeddable command language." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Tk: X11 toolkit and widgets based on Tcl." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading; insert $ti shift -string "The principle: " ; insert $ti shift -color Green -bold 0 -italic 0 -underline 0; insert $ti shift -string "single interpretive language controls all aspects of all interactive applications." -color Green -bold 0 -italic 0 -underline 0; insertPara $ti shift -color -1 -bold -1 -italic -1 -underline -1; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Function of application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Interface of application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Composing pieces of application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Communication between applications." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading; insert $ti shift -string "Results:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Raise the level of X programming (simpler, 5-10x faster application development)." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Greater power (more things programmable, program applications to work together)." ; set ti; set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "O" ; insert $ti shift -color Blue; insert $ti shift -string "ver" -color Blue; insert $ti shift -color -1; insert $ti shift -string "view" ; set ti; view active 2note orientation - v icon - 143.99955 40 0.56216652 set ti [new - textitem "45 549 585 582.272" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Distributed shell language." ; set ti; view active 3slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Outline" ; set ti; set ti [new - textitem "45 180 585 541.592" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -plook { -color Red} -look 1.Heading -paraspace 3.00; insert $ti shift -revert 1; insert $ti shift -string "The Tcl language." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "The Tk toolkit." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Tk applications." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Composing applications: " ; insert $ti shift -color Red; insert $ti shift -string "hypertools" -color Red; insert $ti shift -color -1; insert $ti shift -string "." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Status and conclusions." ; set ti; view active 3note orientation - v icon - 163.45455 40 0.50631313 view active 4slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Tcl: Tool Command Language" ; set ti; set ti [new - textitem "45 162 585 650.56028" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading -paraspace 1.75; insert $ti shift -revert 1; insert $ti shift -string "Problem:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "Interactive programs need command languages." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Traditionally redone for each application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Result: weak, quirky." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Emacs and csh nice, but can't reuse." ; insertPara $ti shift ; tlconfig $ti cursor -look Subheading; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 1.75; insert $ti shift -string "Solution: Tcl" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "Command language = " ; insert $ti shift -color Red; insert $ti shift -string "embeddable" -color Red; insert $ti shift -color -1; insert $ti shift -string " C library." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Powerful features: procedures, variables, lists, expressions, loops, etc." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Extensible by applications." ; set ti; view active 4note orientation - v icon - 154.45455 40 0.49494949 set ti [new - textitem "45 504 576 672.122" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Create reusable command language." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading; insertPara $ti shift ; tlconfig $ti cursor -look BHeading; insert $ti shift -string "Application = primitives" ; insertPara $ti shift ; insert $ti shift -string "Tcl = glue, composition" ; set ti; view active 5slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Language Philosophy" ; set ti; set ti [new - textitem "45 153 477 674.97776" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Classes of language:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Large application implementation (structure, performance important)." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Scripting, extensions." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Interactive commands (structure bad, performance not critical)." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -string "One language can't meet all three needs?" ; insertPara $ti shift ; insert $ti shift -string "Tcl goals:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Simple syntax (for humans)." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Programmable." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Easy to interpret." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Simple interface to C procedures." ; set ti; set ti [new - textitem "531 210.572 603 239.428" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -color Red; insert $ti shift -string "C" -color Red; tiformat $ti 0 1 0 2 -color Red; set ti; set ti [new - textitem "531 294.848 594 326.152" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -color Red; insert $ti shift -string "Tcl" -color Red; tiformat $ti 0 3 0 4 -color Red; set ti; new - arc "495 198 508.5 216 0 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "508.5 207 522 225 11520 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "508.5 225 522 243 5760 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "495 234 508.5 252 17280 5760" -look Drawing -fg Red -bg None -width 1.00 new - line "508.5 207 508.5 216" -look Drawing -fg Red -width 1.00 -arrow none new - line "508.5 234 508.5 243" -look Drawing -fg Red -width 1.00 -arrow none new - arc "495 265.5 508.5 283.5 0 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "508.5 310.5 522 328.5 5760 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "508.5 292.5 522 310.5 11520 5760" -look Drawing -fg Red -bg None -width 1.00 new - arc "495 337.5 508.5 355.5 17280 5760" -look Drawing -fg Red -bg None -width 1.00 new - line "508.5 274.5 508.5 301.5" -look Drawing -fg Red -width 1.00 -arrow none new - line "508.5 319.5 508.5 346.5" -look Drawing -fg Red -width 1.00 -arrow none view active 5note orientation - v icon - 163.45455 40 0.48358586 set ti [new - textitem "36 477 576 555.518" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Postscript: not human readable." ; insertPara $ti shift ; insert $ti shift -string "Lisp: doesn't work well with C." ; set ti; view active 6slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Tcl Syntax" ; set ti; set ti [new - textitem "45 144 585 700.4" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Basic syntax like shells:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Words separated by spaces:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code; insert $ti shift -string " cmd arg arg arg ..." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Commands separated by newlines, semi-colons." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Commands return string results." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.00; insert $ti shift -string "Simple substitution rules:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Variables:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code; insert $ti shift -string " set a \$b" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Command results:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code; insert $ti shift -string " set a \[expr \$b+2\]" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Complex arguments:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code; insert $ti shift -string " if \$a<0 \{" ; insertPara $ti shift ; insert $ti shift -string " puts stdout \"a is negative\"" ; insertPara $ti shift ; insert $ti shift -string " \}" ; set ti; view active 6note orientation - v icon - 163.45455 40 0.49494949 set ti [new - textitem "36 495 576 598.106" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Tcl = cross between sh, Lisp, and C." ; insertPara $ti shift ; insert $ti shift -string "Control structures implemented with commands, not special syntax." ; set ti; view active 7slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "More on the Tcl Language" ; set ti; set ti [new - textitem "45 162 585 614.8664" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Rich set of built-in commands:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "Variables, associative arrays, lists." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Arithmetic expressions." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Conditionals, looping." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Procedures." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Access to UNIX files, commands." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string " Only datatype is strings:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "Easy access from C." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Programs and data interchangeable." ; set ti; view active 7note orientation - v icon - 154.45455 40 0.49494949 view active 8slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Factorial Procedure" ; set ti; set ti [new - textitem "45 198 585 441.8384" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Code; insert $ti shift -revert 1; insert $ti shift -string "proc fac x \{" ; insertPara $ti shift ; insert $ti shift -string " if \$x==1 \{return 1\}" ; insertPara $ti shift ; insert $ti shift -string " expr \$x*\[fac \[expr \$x-1\]\]" ; insertPara $ti shift ; insert $ti shift -string "\}" ; insertPara $ti shift ; insertPara $ti shift ; insertPara $ti shift ; insert $ti shift -color Red; insert $ti shift -string "fac 4" -color Red; insert $ti shift -color -1; insert $ti shift -string " " ; insert $ti shift -family Times -color Black; insert $ti shift -string "returns" -family Times -color Black; insert $ti shift -family -1 -color -1; insert $ti shift -string " " ; insert $ti shift -color Red; insert $ti shift -string "24" -color Red; set ti; view active 8note orientation - v icon - 151.06818 40 0.50631313 set ti [new - textitem "45 486 576 519.272" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Proc is a " ; insert $ti shift -underline 1; insert $ti shift -string "command" -underline 1; set ti; view active 9slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Embedding Tcl in Applications" ; set ti; new - rectangle "27 189 297 468" -look Drawing -fg Green -bg None -width 1.00 -feather White -dir 90 new - rectangle "315 189 585 468" -look Drawing -fg Red -bg None -width 1.00 -feather White -dir 90 new - rectangle "180 414 198 432" -look Drawing -fg Black -bg Green -width 1.00 -feather White -dir 90 new - rectangle "144 414 162 432" -look Drawing -fg Black -bg Green -width 1.00 -feather White -dir 90 new - rectangle "216 414 234 432" -look Drawing -fg Black -bg Green -width 1.00 -feather White -dir 90 new - rectangle "252 414 270 432" -look Drawing -fg Black -bg Green -width 1.00 -feather White -dir 90 set ti [new - textitem "36 400.1018 126 447.7342" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -pointsize 18 -bold 1; insert $ti shift -string "Built-in Commands" -pointsize 18 -bold 1; tiformat $ti 0 17 0 18 -pointsize 18; set ti; set ti [new - textitem "477 391.1018 576 462.3886" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -pointsize 18 -bold 1; insert $ti shift -string "Application-Specific Commands" -pointsize 18 -bold 1; tiformat $ti 0 29 0 30 -pointsize 18; set ti; new - rectangle "342 414 360 432" -look Drawing -fg Black -bg Red -width 1.00 -feather White -dir 90 new - rectangle "378 414 396 432" -look Drawing -fg Black -bg Red -width 1.00 -feather White -dir 90 new - rectangle "414 414 432 432" -look Drawing -fg Black -bg Red -width 1.00 -feather White -dir 90 set ti [new - textitem "429.75 210.572 470.25 239.428" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text -justify center; insert $ti shift -revert 1; insert $ti shift -string "Init" ; set ti;; new - rectangle "423 207 477 243" -look Drawing -fg Black -bg None -width 1.00 -feather White -dir 90; group - 2 set ti [new - textitem "175.5 282.572 238.5 311.428" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text -justify center; insert $ti shift -revert 1; insert $ti shift -string "Parser" ; set ti;; new - rectangle "171 279 243 315" -look Drawing -fg Black -bg None -width 1.00 -feather White -dir 90; group - 2 set ti [new - textitem "396.25962 270.7448 503.74038 323.2552" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text -justify center; insert $ti shift -revert 1; insert $ti shift -string "Command Loop" ; set ti;; new - rectangle "387 270 513 324" -look Drawing -fg Black -bg None -width 1.00 -feather White -dir 90; group - 2 new - line "387 297 243 297" -look Drawing -fg Black -width 0.50 -arrow head new - line "450 243 450 270" -look Drawing -fg Black -width 0.50 -arrow head new - line "234 315 234 351 423 351 423 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "225 315 225 360 387 360 387 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "216 315 216 369 351 369 351 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "207 315 207 378 261 378 261 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "180 315 180 351 153 351 153 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "189 315 189 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "198 315 198 387 225 387 225 414" -look Drawing -fg Black -width 0.50 -arrow head new - line "423 225 207 225 207 279" -look Drawing -fg Black -width 0.50 -arrow head set ti [new - textitem "27 153 126 181.856" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -color Green; insert $ti shift -string "Tcl" -color Green; tiformat $ti 0 3 0 4 -color Green; set ti; set ti [new - textitem "423 153 585 181.856" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text -justify right; insert $ti shift -revert 1; insert $ti shift -color Red; insert $ti shift -string "Application" -color Red; set ti; set ti [new - textitem "9 513 585 658.00448" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -revert 1; insert $ti shift -string "Application generates Tcl scripts." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Tcl parses, substitutes, passes argc/argv to command procedures." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Application extends built-in command set." ; set ti; view active 9note orientation - v icon - 154.54545 40 0.49494949 set ti [new - textitem "45 477 576 600.764" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Shell: scripts read from command line." ; insertPara $ti shift ; insert $ti shift -string "Tk: scripts associated with X events." ; insertPara $ti shift ; insert $ti shift -string "Can create new commands dynamically." ; set ti; view active 10slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "The Tk Toolkit" ; set ti; set ti [new - textitem "45 162 585 624.42656" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "The problem:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Too hard to build applications with nice user interfaces." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string "The wrong solution:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "C++, object-oriented toolkits." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Only small improvement (10-20%?): must still program at a low level." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string "The right solution:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Raise the level of programming." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Create interfaces by writing Tcl scripts." ; set ti; view active 10note orientation - v icon - 154.54545 40 0.49494949 view active 11slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Creating Interfaces with Tk" ; set ti; set ti [new - textitem "45 198 585 621.5384" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Widgets/windows have " ; insert $ti shift -color Red; insert $ti shift -string "path names" -color Red; insert $ti shift -color -1; insert $ti shift -string ":" ; insertPara $ti shift ; tlconfig $ti cursor -look Code -paraspace 2.00; insert $ti shift -string ".dlg.quit" ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string "Create widget with command named after class:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code -paraspace 2.00; insert $ti shift -string "button .dlg.quit -text Quit \\" ; insertPara $ti shift ; tlconfig $ti cursor -paraspace 1.00; insert $ti shift -string " -foreground red -command exit" ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string "Tell geometry manager where to display widget:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code -paraspace 2.00; insert $ti shift -string "place .dlg.quit -x 0 -y 0" ; insertPara $ti shift ; tlconfig $ti cursor -paraspace -1; insert $ti shift -string "pack .dlg.quit -side bottom" ; set ti; view active 11note orientation - v icon - 140.63636 40 0.54040404 view active 12slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Other Tk Features" ; set ti; set ti [new - textitem "45 153 585 656.798" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Manipulate widgets with " ; insert $ti shift -color Red; insert $ti shift -string "widget commands" -color Red; insert $ti shift -color -1; insert $ti shift -string ":" ; insertPara $ti shift ; tlconfig $ti cursor -look Code -paraspace 1.50; insert $ti shift -string ".dlg.quit flash" ; insertPara $ti shift ; tlconfig $ti cursor -paraspace -1; insert $ti shift -string ".dlg.quit configure -relief sunken" ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -string "Use Tcl for interconnection:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Buttons, menu entries invoke Tcl commands." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Scrollbars and listboxes communicate with Tcl." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Can define new event bindings in Tcl." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Selection, focus accessible via Tcl." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -string "Tk also provides C interfaces:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Create new widget classes." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Create new geometry managers." ; set ti; view active 12note orientation - v icon - 151.06818 40 0.50631313 set ti [new - textitem "45 495 576 552.86" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Mention Tk widgets have 4x less code than Motif widgets?" ; set ti; view active 13slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "What's a Tk-based application?" ; set ti; set ti [new - textitem "45 153 585 590.56568" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look 1.Heading; insert $ti shift -revert 1; insert $ti shift -string "The Tcl interpreter." ; insertPara $ti shift ; tlconfig $ti cursor -paraspace 2.50; insert $ti shift -string "The Tk toolkit." ; insertPara $ti shift ; insert $ti shift -string "Application-specific C code:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "New object types." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "New widgets." ; insertPara $ti shift ; tlconfig $ti cursor -look 1.Heading -paraspace 2.50; insert $ti shift -string "Tcl scripts:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Build user interface." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Compose application primitives into useful functions." ; set ti; new - arc "360 333 373.5 346.5 0 5760" -look Drawing -fg Red -bg None -width 1.00; new - arc "373.5 373.5 387 387 5760 5760" -look Drawing -fg Red -bg None -width 1.00; new - arc "373.5 360 387 373.5 11520 5760" -look Drawing -fg Red -bg None -width 1.00; new - arc "360 400.5 373.5 414 17280 5760" -look Drawing -fg Red -bg None -width 1.00; new - line "373.5 339.75 373.5 366.75" -look Drawing -fg Red -width 1.00 -arrow none; new - line "373.5 380.25 373.5 407.25" -look Drawing -fg Red -width 1.00 -arrow none; group - 6 set ti [new - textitem "396 359.072 594 387.928" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -color Red; insert $ti shift -string "Tcl commands" -color Red; tiformat $ti 0 12 0 13 -color Red; set ti; view active 13note orientation - v icon - 147.59091 40 0.51767677 set ti [new - textitem "45 504 576 537.272" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "No need for special user-interface language." ; set ti; view active 14slide backg - 2 set ti [new - title "45 63.5 594 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "The Simplest Tk Application: Wish" ; set ti; set ti [new - textitem "45 135 594 339.9596" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading -justify left; insert $ti shift -revert 1; insert $ti shift -string "No C code except command-line reader." ; insertPara $ti shift ; tlconfig $ti cursor -paraspace 2.00; insert $ti shift -string "Can build many applications as " ; insert $ti shift -family Courier -bold 0 -italic 0 -underline 0; insert $ti shift -string "wish" -family Courier -bold 0 -italic 0 -underline 0; insert $ti shift -family -1 -bold -1 -italic -1 -underline -1; insert $ti shift -string " scripts:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.50; insert $ti shift -string "Hello, world:" ; insertPara $ti shift ; tlconfig $ti cursor -look Code -paraspace 1.50; insert $ti shift -string " label .hello -text \"Hello, world\"" ; insertPara $ti shift ; tlconfig $ti cursor -paraspace 1.00; insert $ti shift -string " pack .hello" ; set ti; Image - image "396 333 568.74934 685" eps/browse.eps eps ref set ti [new - textitem "45 468 378 527.97728" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -plook { -color Red} -look BSubheading -linespace 1.20; insert $ti shift -revert 1; insert $ti shift -string "Simple directory browser: 30 lines." ; set ti; Image - image "144 351 240 408" eps/hello.eps eps ref view active 14note orientation - v icon - 151.06818 40 0.50631313 set ti [new - textitem "45 495 585 573.518" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Hello = 25 lines with Xt/Motif." ; insertPara $ti shift ; insert $ti shift -string "Lead-in for next slide: 2 widgets in browser." ; set ti; view active 15slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Browser Wish Script" ; set ti; set ti [new - textitem "9 126 594 733.43" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Code -paraspace 0.50; insert $ti shift -revert 1; insert $ti shift -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insert $ti shift -string "listbox .list -yscroll \".scroll set\" \\" -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " -relief raised -geometry 20x20" -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "pack .list -side left" -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "scrollbar .scroll -command \".list yview\"" -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "pack .scroll -side right -fill y" -color Black -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -color Green; insert $ti shift -string "if \{\$argc > 0\} \{" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " set dir \[lindex \$argv 0\]" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "\} else \{" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " set dir \".\"" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "\}" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "foreach i \[exec ls -a \$dir\] \{" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " .list insert end \$i" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "\}" -color Green -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -color Red; insert $ti shift -string "bind .list <Double-Button-1> \{" -color Red -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " browse \$dir \[selection get\]" -color Red -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "\}" -color Red -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "bind .list <Control-c> \{destroy .\}" -color Red -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "focus .list" -color Red -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -color Blue; insert $ti shift -string "proc browse \{dir file\} \{" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " global env" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " if \{\$dir != \".\"\} \{set file \$dir/\$file\}" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " if \[file isdirectory \$file\] \{" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " exec browse \$file &" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " \} else \{" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " if \[file isfile \$file\] \{" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " exec xedit \$file &" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " \} else \{" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " puts stdout \"can't browse \$file\"" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " \}" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string " \}" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; insertPara $ti shift ; insert $ti shift -string "\}" -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; tiformat $ti 30 1 30 2 -color Blue -pointsize 18 -bold 0 -italic 0 -underline 0; set ti; set ti [new - textitem "-774 -1476 -718.9999 -1442.728" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; set ti; view active 15note orientation - v icon - 158.02273 40 0.48358586 set ti [new - textitem "45 468 558 669.3584" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Groups of commands:" ; insertPara $ti shift ; tlconfig $ti cursor -look BSubheading; insert $ti shift -string "Create widgets." ; insertPara $ti shift ; insert $ti shift -string "Initialize directory and listbox." ; insertPara $ti shift ; insert $ti shift -string "Create bindings." ; insertPara $ti shift ; insert $ti shift -string "Browser procedure." ; set ti; view active 16slide backg - 2 set ti [new - textitem "45 162 585 648.83408" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Commercial presentation package:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Presentation = sequence of slides." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Text, graphics, images." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Backgrounds, slides, notes." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Postscript output, on-line slide shows." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading; insertPara $ti shift ; insert $ti shift -string "Implemented using Tcl and Tk:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "29000 lines of new C code." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "1 new widget for displaying slides." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "~30 other Tcl commands for manipulating presentations." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "11000 lines of Tcl scripts." ; set ti; set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Perspecta Presents!" ; set ti; view active 16note orientation - v icon - 151.06818 40 0.50631313 set ti [new - textitem "45 486 576 564.518" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Talk was made with ppres." ; insertPara $ti shift ; insert $ti shift -string "Mention brochure availability." ; set ti; view active 17slide backg - 2 set ti [new - textitem "45 144 585 684.2456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -plook { -color Red} -look 1.Heading; insert $ti shift -revert 1; insert $ti shift -string "Powertext: text created by Tcl script, not typed by user." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Slide numbers." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Bullet numbers." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Update values from database?" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look 1.Heading; insert $ti shift -string "File format = Tcl script. To load, just execute file." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Selection exchanged as Tcl script (selectively copy backgrounds, looks, etc.)" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Undo/redo:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Undo/redo script pairs saved in log file." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Infinite-level undo/redo." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Recovery after crashes." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look 1.Heading; insert $ti shift -string "Slide shows, etc. etc." ; set ti; new - line "72 270 54 270 54 180" -look Drawing -fg Green -width 1.00 -arrow head new - line "270 225 576 225 576 675 576 693" -look Drawing -fg Green -width 1.00 -arrow head set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Uses of Tcl in Perspecta Presents!" ; set ti; view active 17note orientation - v icon - 154.54545 40 0.49494949 view active 18slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Composing Applications" ; set ti; set ti [new - textitem "45 171 585 632.47376" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "The problem:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "Only communication between applications is via selection." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Result: monolithic applications." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 3.00; insert $ti shift -string "The solution: " ; insert $ti shift -family Courier -color Red -bold 1 -italic 0 -underline 0; insert $ti shift -string "send" -family Courier -color Red -bold 1 -italic 0 -underline 0; insert $ti shift -family -1 -color -1 -bold -1 -italic -1 -underline -1; insert $ti shift -string " command" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading -paraspace 1.75; insert $ti shift -string "send appName command" -family Courier -color Green -bold 1; insertPara $ti shift -family -1; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Implemented using X11 properties." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Any Tk application can invoke anything in any other Tk application: interface or actions." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Result: powerful communication." ; set ti; view active 18note orientation - v icon - 154.54545 40 0.49494949 set ti [new - textitem "36 477 585 600.764" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Selection requires manual intervention." ; insertPara $ti shift ; insert $ti shift -string "Editor/debugger as bad example." ; insertPara $ti shift ; insert $ti shift -string "Send = RPC." ; set ti; view active 19slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Composing Applications, cont'd" ; set ti; set ti [new - textitem "45 153 585 669.45128" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Examples:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Debugger sends command to editor: highlight line of execution." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "User-interface editor sends commands to modify interface of live application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Multi-media: send " ; insert $ti shift -family Courier; insert $ti shift -string "record" -family Courier; insert $ti shift -family -1; insert $ti shift -string ", " ; insert $ti shift -family Courier; insert $ti shift -string "play" -family Courier; insert $ti shift -family -1; insert $ti shift -string " commands to audio and video applications." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Spreadsheets: cell sends commands to database to fetch current value." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -string "Revolutionary results:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Build complex systems as collections of specialized but reusable " ; insert $ti shift -color Red; insert $ti shift -string "hypertools" -color Red; insert $ti shift -color -1; insert $ti shift -string "." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Easy to create " ; insert $ti shift -color Red; insert $ti shift -string "active objects" -color Red; insert $ti shift -color -1; insert $ti shift -string ": embedded Tcl commands. Hypertext, hypermedia easy." ; set ti; view active 19note orientation - v icon - 158.02273 40 0.48358586 set ti [new - textitem "45 495 585 528.272" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Revolutionary ideas not new, just much easier." ; set ti; view active 20slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Status" ; set ti; set ti [new - textitem "45 144 585 443.288" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Tcl:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "20000 lines C code." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "First released January 1990." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.00; insert $ti shift -string "Tk:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Intrinsics: 21500 lines C code." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Motif-like widgets: 34000 lines C code." ; insertPara $ti shift ; tlconfig $ti cursor -look Subheading; set ti; set ti [new - textitem "144 405 261 520.8752" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -string "Buttons" ; insertPara $ti shift ; insert $ti shift -color Red; insert $ti shift -string "Canvases" -color Red; insertPara $ti shift ; insert $ti shift -color -1; insert $ti shift -string "Entries" ; insertPara $ti shift ; insert $ti shift -string "Frames" ; set ti; set ti [new - textitem "270 405 387 520.8752" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -string "Labels" ; insertPara $ti shift ; insert $ti shift -string "Listboxes" ; insertPara $ti shift ; insert $ti shift -string "Menus" ; insertPara $ti shift ; insert $ti shift -string "Messages" ; set ti; set ti [new - textitem "396 405 522 491.8688" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Text; insert $ti shift -revert 1; insert $ti shift -string "Scales" ; insertPara $ti shift ; insert $ti shift -string "Scrollbars" ; insertPara $ti shift ; insert $ti shift -color Red; insert $ti shift -string "Texts" -color Red; set ti; set ti [new - textitem "45 531 576 663.8816" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -revert 1; insert $ti shift -string "First released March 1991." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.00; insert $ti shift -string "User community:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "5000-10000 (as of January 1993)." ; set ti; view active 20note orientation - v icon - 154.54545 40 0.49494949 set ti [new - textitem "36 486 585 602.3312" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Fancy widgets:" ; insertPara $ti shift ; tlconfig $ti cursor -look BSubheading; insert $ti shift -string "Structured graphics (canvases)." ; insertPara $ti shift ; insert $ti shift -string "Hypertext (text)." ; set ti; view active 21slide backg - 2 set ti [new - title "45 63.5 567 109.456" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Title; insert $ti shift -revert 1; insert $ti shift -string "Conclusions" ; set ti; set ti [new - textitem "45 162 585 615.374" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look Heading; insert $ti shift -revert 1; insert $ti shift -string "Power from programming:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "High-level programming for power, flexibility." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Extensibility." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "One language for many things." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -string "Power from composition:" ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red} -look BSubheading; insert $ti shift -string "Widgets within an application." ; insertPara $ti shift ; tlconfig $ti cursor -plook { -color Red}; insert $ti shift -string "Send between applications." ; insertPara $ti shift ; tlconfig $ti cursor -look Heading -paraspace 2.50; insert $ti shift -color Red; insert $ti shift -string "Tcl + Tk = shell of 1990's?" -color Red; insertPara $ti shift -color -1; insert $ti shift -string "Wanted: application developers." ; set ti; view active 21note orientation - v icon - 151.06818 40 0.50631313 set ti [new - textitem "45 486 585 634.352" -look TextBox]; tiformat $ti 0 0 0 1 -revert 1; insert $ti shift -revert 1; tlconfig $ti cursor -look BHeading; insert $ti shift -revert 1; insert $ti shift -string "Can recast any application by writing a Tcl script as its front-end." ; insertPara $ti shift ; insert $ti shift -string "1st-level benefit: within application." ; insertPara $ti shift ; insert $ti shift -string "2nd-level benefit: hypertools." ; set ti; MakeWindow slide 21 0 .views.1 683x842+3+1 SpotConfig .views.1 0 2 1 on UpdateTitles; set generateName 2