Practical Programming in Tcl & Tk, Third Edition
By Brent B. Welch
Publisher: Prentice Hall PTR
Pub Date: November 10, 1999
ISBN: 0-13-022028-0
Pages: 832
Supplier: Team FLY

   List of Examples
   List of Tables
     Why Tcl?
     Tcl and Tk Versions
     Who Should Read This Book
     How to Read This Book
     Other Tcl Books
     On-line Examples
     Ftp Archives
     World Wide Web
     Typographic Conventions
     Hot Tips
     Book Organization
     What's New in the Third Edition
     First Edition Thanks
     Second Edition Thanks
     Third Edition Thanks
     Contact the Author
   Part I.  Tcl Basics
     Chapter 1.  Tcl Fundamentals
     Tcl Commands
     Hello, World!
     Command Substitution
     Math Expressions
     Backslash Substitution
     Grouping with Braces and Double Quotes
     A Factorial Example
     More about Variables
     More about Math Expressions
     Substitution and Grouping Summary
     Fine Points
     Chapter 2.  Getting Started
     The source Command
     UNIX Tcl Scripts
     Windows 95 Start Menu
     The Macintosh and ResEdit
     The console Command
     Command-Line Arguments
     Predefined Variables
     Chapter 3.  The Guestbook CGI Application
     A Quick Introduction to HTML
     CGI for Dynamic Pages
     The guestbook.cgi Script
     Defining Forms and Processing Form Data
     The cgi.tcl Package
     Next Steps
     Chapter 4.  String Processing in Tcl
     The string Command
     The append Command
     The format Command
     The scan Command
     The binary Command
     Related Chapters
     Chapter 5.  Tcl Lists
     Tcl Lists
     Constructing Lists
     Getting List Elements: llength, lindex, and lrange
     Modifying Lists: linsert and lreplace
     Searching Lists: lsearch
     Sorting Lists: lsort
     The split Command
     The join Command
     Related Chapters
     Chapter 6.  Control Structure Commands
     If Then Else
     Break and Continue
     Chapter 7.  Procedures and Scope
     The proc Command
     Changing Command Names with rename
     The global Command
     Call by Name Using upvar
     Variable Aliases with upvar
     Chapter 8.  Tcl Arrays
     Array Syntax
     The array Command
     Building Data Structures with Arrays
     Chapter 9.  Working with Files and Programs
     Running Programs with exec
     The file Command
     Cross-Platform File Naming
     Manipulating Files and Directories
     File Attributes
     Input/Output Command Summary
     Opening Files for I/O
     Reading and Writing
     The Current Directory ?cd and pwd
     Matching File Names with glob
     The exit and pid Commands
     Environment Variables
     The registry Command
   Part II.  Advanced Tcl
     Chapter 10.  Quoting Issues and Eval
     Constructing Code with the list Command
     Exploiting the concat inside eval
     The uplevel Command
     The subst Command
     Chapter 11.  Regular Expressions
     When to Use Regular Expressions
     Regular Expression Syntax
     Advanced Regular Expressions
     Syntax Summary
     The regexp Command
     The regsub Command
     Transforming Data to Program with regsub
     Other Commands That Use Regular Expressions
     Chapter 12.  Script Libraries and Packages
     Locating Packages: The auto_path Variable
     Using Packages
     Summary of Package Loading
     The package Command
     Libraries Based on the tclIndex File
     The unknown Command
     Interactive Conveniences
     Tcl Shell Library Environment
     Coding Style
     Chapter 13.  Reflection and Debugging
     The clock Command
     The info Command
     Cross-Platform Support
     Tracing Variable Values
     Interactive Command History
     Scriptics' TclPro
     Other Tools
     Performance Tuning
     Chapter 14.  Namespaces
     Using Namespaces
     Namespace Variables
     Command Lookup
     Nested Namespaces
     Importing and Exporting Procedures
     Callbacks and Namespaces
     The namespace Command
     Converting Existing Packages to use Namespaces
     [incr Tcl] Object System
     Chapter 15.  Internationalization
     Character Sets and Encodings
     Message Catalogs
     Chapter 16.  Event-Driven Programming
     The Tcl Event Loop
     The after Command
     The fileevent Command
     The vwait Command
     The fconfigure Command
     Chapter 17.  Socket Programming
     Client Sockets
     Server Sockets
     The Echo Service
     Fetching a URL with HTTP
     The http Package
     Basic Authentication
     Chapter 18.  TclHttpd Web Server
     Integrating TclHttpd with your Application
     Domain Handlers
     Application Direct URLs
     Document Types
     HTML + Tcl Templates
     Form Handlers
     Programming Reference
     Standard Application-Direct URLs
     The TclHttpd Distribution
     Server Configuration
     Chapter 19.  Multiple Interpreters and Safe-Tcl
     The interp Command
     Creating Interpreters
     Safe Interpreters
     Command Aliases
     Hidden Commands
     I/O from Safe Interpreters
     The Safe Base
     Security Policies
     Chapter 20.  Safe-Tk and the Browser Plugin
     Tk in Child Interpreters
     The Browser Plugin
     Security Policies and Browser Plugin
     Configuring Security Policies
   Part III.  Tk Basics
     Chapter 21.  Tk Fundamentals
     Hello, World! in Tk
     Naming Tk Widgets
     Configuring Tk Widgets
     Tk Widget Attributes and the Resource Database
     Summary of the Tk Commands
     Chapter 22.  Tk by Example
     The Example Browser
     A Tcl Shell
     Chapter 23.  The Pack Geometry Manager
     Packing toward a Side
     Horizontal and Vertical Stacking
     The Cavity Model
     Packing Space and Display Space
     Resizing and -expand
     Packing Order
     Choosing the Parent for Packing
     Unpacking a Widget
     Packer Summary
     Window Stacking Order
     Chapter 24.  The Grid Geometry Manager
     A Basic Grid
     Spanning Rows and Columns
     Row and Column Constraints
     The grid Command
     Chapter 25.  The Place Geometry Managery
     place Basics
     The Pane Manager
     The place Command
     Chapter 26.  Binding Commands to Events
     The bind Command
     The bindtags Command
     Event Syntax
     Event Sequences
     Virtual Events
     Event Keywords
   Part IV.  Tk Widgets
     Chapter 27.  Buttons and Menus
     Button Commands and Scope Issues
     Buttons Associated with Tcl Variables
     Button Attributes
     Button Operations
     Menus and Menubuttons
     Keyboard Traversal
     Manipulating Menus and Menu Entries
     Menu Attributes
     A Menu by Name Package
     Chapter 28.  The Resource Database
     An Introduction to Resources
     Loading Option Database Files
     Adding Individual Database Entries
     Accessing the Database
     User-Defined Buttons
     User-Defined Menus
     Chapter 29.  Simple Tk Widgets
     Frames and Toplevel Windows
     The Label Widget
     The Message Widget
     The Scale Widget
     The bell Command
     Chapter 30.  Scrollbars
     Using Scrollbars
     The Scrollbar Protocol
     The Scrollbar Widget
     Chapter 31.  The Entry Widget
     Using Entry Widgets
     The Entry Widget
     Chapter 32.  The Listbox Widget
     Using Listboxes
     Listbox Bindings
     Listbox Attributes
     Chapter 33.  The Text Widget
     Text Indices
     Text Marks
     Text Tags
     The Selection
     Tag Bindings
     Searching Text
     Embedded Widgets
     Embedded Images
     Looking inside the Text Widget
     Text Bindings
     Text Operations
     Text Attributes
     Chapter 34.  The Canvas Widget
     Canvas Coordinates
     Hello, World!
     The Min Max Scale Example
     Canvas Objects
     Canvas Operations
     Generating Postscript
     Canvas Attributes
   Part V.  Tk Details
     Chapter 35.  Selections and the Clipboard
     The Selection Model
     The selection Command
     The clipboard Command
     Selection Handlers
     Chapter 36.  Focus, Grabs, and Dialogs
     Standard Dialogs
     Custom Dialogs
     Animation with the update Command
     Chapter 37.  Tk Widget Attributes
     Configuring Attributes
     Borders and Relief
     The Focus Highlight
     Padding and Anchors
     Chapter 38.  Color, Images, and Cursors
     Colormaps and Visuals
     Bitmaps and Images
     The Text Insert Cursor
     The Mouse Cursor
     Chapter 39.  Fonts and Text Attributes
     Naming a Font
     X Font Names
     Font Metrics
     The font Command
     Text Attributes
     Gridding, Resizing, and Geometry
     A Font Selection Application
     Chapter 40.  Send
     The send Command
     The Sender Script
     Communicating Processes
     Remote eval through Sockets
     Chapter 41.  Window Managers and Window Information
     The wm Command
     The winfo Command
     The tk Command
     Chapter 42.  Managing User Preferences
     App-Defaults Files
     Defining Preferences
     The Preferences User Interface
     Managing the Preferences File
     Tracing Changes to Preference Variables
     Improving the Package
     Chapter 43.  A User Interface to Bindings
     A Pair of Listboxes Working Together
     The Editing Interface
     Saving and Loading Bindings
   Part VI.  C Programming
     Chapter 44.  C Programming and Tcl
     Basic Concepts
     Creating a Loadable Package
     A C Command Procedure
     The blob Command Example
     Strings and Internationalization
     Tcl_Main and Tcl_AppInit
     The Event Loop
     Invoking Scripts from C
     Chapter 45.  Compiling Tcl and Extensions
     Standard Directory Structure
     Building Tcl from Source
     Using Stub Libraries
     Using autoconf
     The Sample Extension
     Chapter 46.  Writing a Tk Widget in C
     Initializing the Extension
     The Widget Data Structure
     The Widget Class Command
     The Widget Instance Command
     Configuring and Reconfiguring Attributes
     Specifying Widget Attributes
     Displaying the Clock
     The Window Event Procedure
     Final Cleanup
     Chapter 47.  C Library Overview
     An Overview of the Tcl C Library
     An Overview of the Tk C Library
   Part VII.  Changes
     Chapter 48.  Tcl 7.4/Tk 4.0
     Obsolete Features
     The cget Operation
     Input Focus Highlight
     Scrollbar Interface
     pack info
     The send Command
     Internal Button Padding
     Radiobutton Value
     Entry Widget
     No geometry Attribute
     Text Widget
     Color Attributes
     Color Allocation and tk colormodel
     Canvas scrollincrement
     The Selection
     The bell Command
     Chapter 49.  Tcl 7.5/Tk 4.1
     Cross-Platform Scripts
     The clock Command
     The load Command
     The package Command
     Multiple foreach loop variables
     Event Loop Moves from Tk to Tcl
     Network Sockets
     Multiple Interpreters and Safe-Tcl
     The grid Geometry Manager
     The Text Widget
     The Entry Widget
     Chapter 50.  Tcl 7.6/Tk 4.2
     More file Operations
     Virtual Events
     Standard Dialogs
     New grid Geometry Manager
     Macintosh unsupported1 Command
     Chapter 51.  Tcl/Tk 8.0
     The Tcl Compiler
     New lsort
     tcl_precision Variable
     Year 2000 Convention
     Http Package
     Serial Line I/O
     Platform-Independent Fonts
     The tk scaling Command
     Application Embedding
     Native Menus and Menubars
     CDE Border Width
     Native Buttons and Scrollbars
     Images in Text Widgets
     No Errors from destroy
     grid rowconfigure
     The Patch Releases
     Chapter 52.  Tcl/Tk 8.1
     Unicode and Internationalization
     Thread Safety
     Advanced Regular Expressions
     New String Commands
     The DDE Extension
     Chapter 53.  Tcl/Tk 8.2
     The Trf Patch
     Faster String Operations
     Empty Array Names
     Brower Plugin Compatiblity
     Chapter 54.  Tcl/Tk 8.3
     Proposed Tcl Changes
     Proposed Tk Changes
     Chapter 55.  About The CD-ROM
     Technical Support