Tcl/Tk A Developer's Guide

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

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