With covers and two-level bookmarks
Author(s): Clif Flynt
Edition: 3
Publisher: Elsevier
Year: 2012
Language: English
Pages: 792
City: Waltham
Tags: Tcl, Tcl/Tk
Foreword
Preface
1 - Tcl/Tk Features
1.1 - Tcl Overview
1.2 - Tcl as a Glue Language
1.3 - Tcl as a General Purpose Interpreter
1.4 - Tcl as an Extensible Interpreter
1.5 - Tcl as an Embeddable Interpreter
1.6 - Tcl as a Rapid Development Tool
1.7 - GUI-Based Programming
1.8 - Shipping Products
1.9 - Bottom Line
1.10 - Problems
2 - The Mechanics of Using the Tcl and Tk Interpreters
2.1 - The tclsh and wish Interpreters
2.2 - Using tclsh/wish Interactively
2.3 - Evaluating Tcl Script Files
2.4 - Bottom Line
2.5 - Problems
3 - Introduction to the Tcl Language
3.1 - Overview of the Basics
3.2 - Command Evaluation and Substitutions
3.3 - Data Types
3.4 - Arithmetic and Boolean Operations
3.5 - Modularization
3.6 - Bottom Line
3.7 - Problems
4 - Navigating the File System, Basic I/O and Sockets
4.1 - Navigating the File System
4.2 - Properties of File System Items
4.3 - Removing Files
4.4 - Input/Output in Tcl
4.5 - Sockets
4.6 - Bottom Line
4.7 - Problems
5 - Using Strings and Lists
5.1 - Converting a String into a List
5.2 - Examining the List with a for Loop
5.3 - Using the foreach Command
5.4 - Using string match Instead of string first
5.5 - Using lsearch
5.6 - The regexp Command
5.7 - Creating a Procedure
5.8 - Making a Script
5.9 - Speed
5.10 - Bottom Line
5.11 - Problems
6 - Complex Data Structures with Lists, Arrays and Dicts
6.1 - Using the Tcl List
6.2 - Using the dict
6.3 - Using the Associative Array
6.4 - Trees in Tcl
6.5 - Tcl and SQL
6.6 - Performance
6.7 - Bottom Line
6.8 - Problems
7 - Procedure Techniques
7.1 - Arguments to Procedures
7.2 - Renaming or Deleting Commands
7.3 - Getting Information About Procedures
7.4 - Substitution and Evaluation of Strings
7.5 - Working with Global and Local Scopes
7.6 - Making a Tcl Object
7.7 - Bottom Line
7.8 - Problems
8 - Namespaces, Packages and Modules
8.1 - Namespaces and Scoping Rules
8.2 - Packages
8.3 - Tcl Modules
8.4 - Namespaces and Packages
8.5 - Hanoi with a Stack Namespace and Package
8.6 - Conventions and Caveats
8.7 - Bottom Line
8.8 - Problems
9 - Basic Object-Oriented Programming in Tcl
9.1 - Creating a TclOO Class and Object
9.2 - Bottom Line
9.3 - Problems
10 - Advanced Object-Oriented Programming in Tcl
10.1 - Modifying Classes and Objects
10.2 - Modifying Objects
10.3 - Examining Classes and Objects
10.4 - Examining Objects
10.5 - Using TclOO with Callbacks
10.6 - Adding New Functionality to TclOO
10.7 - Bottom Line
10.8 - Problems
11 - Introduction to Tk Graphics
11.1 - Creating a Widget
11.2 - Conventions
11.3 - Common Options
11.4 - Determining and Setting Options
11.5 - The Basic Widgets
11.6 - Introducing Widgets: label, button, entry
11.7 - Application Layout: Geometry Managers and Container Widgets
11.8 - Selection Widgets: radiobutton, checkbutton, menu, listbox
11.9 - Scrollbar
11.10 - The scale Widget
11.11 - New Windows
11.12 - Interacting with the Event Loop
11.13 - Scheduling the Future: after
11.14 - Bottom Line
11.15 - Problems
12 - Using the canvas Widget
12.1 - Overview of the canvas Widget
12.2 - Creating a canvas Widget
12.3 - Creating Displayable canvas Items
12.4 - More canvas Widget Subcommands
12.5 - The bind and focus Commands
12.6 - Creating a Widget
12.7 - A Help Balloon: Interacting with the Window Manager
12.8 - The image Object
12.9 - Bottom Line
12.10 - Problems
13 - The text Widget and htmllib
13.1 - Overview of the text Widget
13.2 - Creating a text Widget
13.3 - text Widget Subcommands
13.4 - HTML Display Package
13.5 - Bottom Line
13.6 - Problems
14 - Tk Megawidgets
14.1 - Standard Dialog Widgets
14.2 - Megawidget Building Philosophy
14.3 - Functionality that Makes Megawidgets Possible
14.4 - Building a Megawidget
14.5 - A Scrolling listbox Megawidget
14.6 - Namespaces and Tk Widgets
14.7 - Incorporating a Megawidget Into a Larger Megawidget
14.8 - Making a Modal Megawidget: the grab and tkwait Commands
14.9 - Automating Megawidget Construction
14.10 - Building Megawidgets with TclOO
14.11 - Bottom Line
14.12 - Problems
15 - Extending Tcl
15.1 - Functional View of a Tcl Extension
15.2 - Building an Extension
15.3 - An Example
15.4 - Complex Data
15.5 - Embedding the Tcl Interpreter
15.6 - Building Tcl and Tk From Sources
15.7 - Bottom Line
15.8 - Problems
16 - Applications with Multiple Environments
16.1 - Event Loop
16.2 - Threads
16.3 - Embedded Tcl interp and Threading
16.4 - Bottom Line
16.5 - Problems
17 - Extensions and Packages
17.1 - [incr Tcl]
17.2 - expect
17.3 - TclX
17.4 - tdbc
17.5 - Rivet
17.6 - BWidgets
17.7 - Graphics Extensions: img
17.8 - Bottom Line
18 - Programming Tools
18.1 - Code Formatter
18.2 - Code Checkers
18.3 - Debuggers
18.4 - Exercising and Regression Testing
18.5 - Packaging Tools
18.6 - Tcl Extension Generators
18.7 - Integrated Development Environments
18.8 - Bottom Line
19 - Tips and Techniques
19.1 - Debugging Techniques
19.2 - Tcl as a Glue Language: the exec Command
19.3 - Common Mistakes
19.4 - Coding Tips and Techniques
19.5 - Optimization
19.6 - Techniques for Improving Performance
19.7 - Bottom Line
Index