From c66ff203bb02a56f813399403445730a14d8c045 Mon Sep 17 00:00:00 2001
From: Fred Drake <fdrake@acm.org>
Date: Fri, 16 Nov 2001 01:05:27 +0000
Subject: Switched a couple of sections around. Cleaned up some markup nits.
 Add a few more of the Tk-related modules to the list of modules.

---
 Doc/lib/tkinter.tex | 524 ++++++++++++++++++++++++++++------------------------
 1 file changed, 279 insertions(+), 245 deletions(-)

diff --git a/Doc/lib/tkinter.tex b/Doc/lib/tkinter.tex
index 78c359d..edc971a 100644
--- a/Doc/lib/tkinter.tex
+++ b/Doc/lib/tkinter.tex
@@ -30,11 +30,8 @@ other GUI toolkits for Python.
 \localmoduletable
 
 
-\section{Tkinter \label{tkinter}}
-\index{Tkinter}
-\sectionauthor{Fredrik Lundh}{fredrik@effbot.org}
-
-\index{Tkinter}
+\section{\module{Tkinter} ---
+         Python interface to Tcl/Tk}
 
 \declaremodule{standard}{Tkinter}
 \modulesynopsis{Interface to Tcl/Tk for graphical user interfaces}
@@ -109,6 +106,23 @@ Other modules that provide Tk support include:
 % \modulesynopsis{Constants used by Tkinter}
 % FIXME 
 
+\item[\module{tkColorChooser}]
+Dialog to let the user choose a color.
+
+\item[\module{tkCommonDialog}]
+
+\item[\module{tkFileDialog}]
+Common dialogs to allow the user to specify a file to open or save.
+
+\item[\module{tkFont}]
+Utilities to help work with fonts.
+
+\item[\module{tkMessageBox}]
+Access to standard Tk dialog boxes.
+
+\item[\module{tkSimpleDialog}]
+Basic dialogs and convenience functions.
+
 \item[\module{Tkdnd}]
 Drag-and-drop support for \refmodule{Tkinter}.
 This is experimental and should become deprecated when it is replaced 
@@ -120,7 +134,8 @@ Turtle graphics in a Tk window.
 \end{description}
 
 \subsection{Tkinter Life Preserver}
-\index{Tkinter}
+\sectionauthor{Matt Conway}{}
+% Converted to LaTeX by Mike Clarkson.
 
 This section is not designed to be an exhaustive tutorial on either
 Tk or Tkinter.  Rather, it is intended as a stop gap, providing some
@@ -280,7 +295,7 @@ an application. Application programmers need not instantiate one
 explicitly, the system creates one whenever any of the other classes
 are instantiated.
 \item    The Widget class is not meant to be instantiated, it
-is meant only for subclassing to make ``real'' widgets. (in C++, this
+is meant only for subclassing to make ``real'' widgets. (in \Cpp, this
 is called an `abstract class')
 \end{itemize}
 \fi
@@ -337,7 +352,7 @@ For example:
 Once created, the pathname to the widget becomes a new command.  This
 new \var{widget command} is the programmer's handle for getting the new
 widget to perform some \var{action}.  In C, you'd express this as
-someAction(fred, someOptions), in C++, you would express this as
+someAction(fred, someOptions), in \Cpp, you would express this as
 fred.someAction(someOptions), and in Tk, you say: 
 
 \begin{verbatim}
@@ -888,14 +903,15 @@ that matches for menu items labelled \code{last}, \code{active}, or
 \end{description}
 
 
-\section{Tix \label{tix-widgets}}
-
-\index{Tix}
+\section{\module{Tix} ---
+         Extension widgets for Tk}
 
 \declaremodule{standard}{Tix}
 \modulesynopsis{Tk Extension Widgets for Tkinter}
 \sectionauthor{Mike Clarkson}{mikeclarkson@users.sourceforge.net}
 
+\index{Tix}
+
 The \module{Tix} (Tk Interface Extension) module provides an
 additional rich set of widgets. Although the standard Tk library has
 many useful widgets, they are far from complete. The \module{Tix}
@@ -986,66 +1002,67 @@ repertoire.  There is a demo of all the \refmodule{Tix} widgets in the
 
 \subsubsection{Basic Widgets}
 
-\index{Balloon widget}
 \begin{classdesc}{Balloon}{}
 A \ulink{Balloon}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixBalloon.htm} that pops
-up over a widget to provide help.  When the user moves the cursor
-inside a widget to which a Balloon widget has been bound, a small
-pop-up window with a descriptive message will be shown on the screen.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixBalloon.htm}
+that pops up over a widget to provide help.  When the user moves the
+cursor inside a widget to which a Balloon widget has been bound, a
+small pop-up window with a descriptive message will be shown on the
+screen.
 \end{classdesc}
 
-% Python Demo of: \ulink{ Balloon}{http://tix.sourceforge.net/dist/current/demos/samples/Balloon.tcl}
+% Python Demo of:
+% \ulink{Balloon}{http://tix.sourceforge.net/dist/current/demos/samples/Balloon.tcl}
 
-\index{ButtonBox widget}
 \begin{classdesc}{ButtonBox}{}
 The \ulink{ButtonBox}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixButtonBox.htm} widget
-creates a box of buttons, such as is commonly used for \code{Ok Cancel}.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixButtonBox.htm}
+widget creates a box of buttons, such as is commonly used for \code{Ok
+Cancel}.
 \end{classdesc}
 
-% Python Demo of: \ulink{ ButtonBox}{http://tix.sourceforge.net/dist/current/demos/samples/BtnBox.tcl}
+% Python Demo of:
+% \ulink{ButtonBox}{http://tix.sourceforge.net/dist/current/demos/samples/BtnBox.tcl}
 
-\index{ComboBox widget}
 \begin{classdesc}{ComboBox}{}
 The \ulink{ComboBox}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixComboBox.htm} widget is
-similar to the combo box control in MS Windows. The user can select a
-choice by either typing in the entry subwdget or selecting from the
-listbox subwidget.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixComboBox.htm}
+widget is similar to the combo box control in MS Windows. The user can
+select a choice by either typing in the entry subwdget or selecting
+from the listbox subwidget.
 \end{classdesc}
 
-% Python Demo of: \ulink{ ComboBox}{http://tix.sourceforge.net/dist/current/demos/samples/ComboBox.tcl}
+% Python Demo of:
+% \ulink{ComboBox}{http://tix.sourceforge.net/dist/current/demos/samples/ComboBox.tcl}
 
-\index{Control widget}
 \begin{classdesc}{Control}{}
 The \ulink{Control}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixControl.htm} widget is
-also known as the \class{SpinBox} widget. The user can adjust the value
-by pressing the two arrow buttons or by entering the value directly
-into the entry. The new value will be checked against the user-defined
-upper and lower limits.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixControl.htm}
+widget is also known as the \class{SpinBox} widget. The user can
+adjust the value by pressing the two arrow buttons or by entering the
+value directly into the entry. The new value will be checked against
+the user-defined upper and lower limits.
 \end{classdesc}
 
-% Python Demo of: \ulink{ Control}{http://tix.sourceforge.net/dist/current/demos/samples/Control.tcl}
+% Python Demo of:
+% \ulink{Control}{http://tix.sourceforge.net/dist/current/demos/samples/Control.tcl}
 
-\index{LabelEntry widget}
 \begin{classdesc}{LabelEntry}{}
 The \ulink{LabelEntry}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelEntry.htm} widget
-packages an entry widget and a label into one mega widget. It can be
-used be used to simplify the creation of ``entry-form'' type of interface.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelEntry.htm}
+widget packages an entry widget and a label into one mega widget. It
+can be used be used to simplify the creation of ``entry-form'' type of
+interface.
 \end{classdesc}
 
 % Python Demo of:
 % \ulink{LabelEntry}{http://tix.sourceforge.net/dist/current/demos/samples/LabEntry.tcl}
 
-\index{LabelFrame widget}
 \begin{classdesc}{LabelFrame}{}
 The \ulink{LabelFrame}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelFrame.htm} widget
-packages a frame widget and a label into one mega widget. To create
-widgets inside a LabelFrame widget, one creates the new widgets
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelFrame.htm}
+widget packages a frame widget and a label into one mega widget.  To
+create widgets inside a LabelFrame widget, one creates the new widgets
 relative to the \member{frame} subwidget and manage them inside the
 \member{frame} subwidget.
 \end{classdesc}
@@ -1053,60 +1070,58 @@ relative to the \member{frame} subwidget and manage them inside the
 % Python Demo of:
 % \ulink{LabelFrame}{http://tix.sourceforge.net/dist/current/demos/samples/LabFrame.tcl}
 
-\index{Meter widget}
 \begin{classdesc}{Meter}{}
 The \ulink{Meter}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixMeter.htm} widget can
-be used to show the progress of a background job which may take a long
-time to execute.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixMeter.htm}
+widget can be used to show the progress of a background job which may
+take a long time to execute.
 \end{classdesc}
 
 % Python Demo of:
 % \ulink{Meter}{http://tix.sourceforge.net/dist/current/demos/samples/Meter.tcl}
 
-\index{OptionMenu widget}
 \begin{classdesc}{OptionMenu}{}
 The \ulink{OptionMenu}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixOptionMenu.htm} creates a
-menu button of options.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixOptionMenu.htm}
+creates a menu button of options.
 \end{classdesc}
 
-% Python Demo of: \ulink{ OptionMenu}{http://tix.sourceforge.net/dist/current/demos/samples/OptMenu.tcl}
+% Python Demo of:
+% \ulink{OptionMenu}{http://tix.sourceforge.net/dist/current/demos/samples/OptMenu.tcl}
 
-\index{PopupMenu widget}
 \begin{classdesc}{PopupMenu}{}
 The \ulink{PopupMenu}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPopupMenu.htm} widget can
-be used as a replacement of the \code{tk_popup} command. The advantage
-of the \refmodule{Tix} PopupMenu widget is it requires less application
-code to manipulate.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPopupMenu.htm}
+widget can be used as a replacement of the \code{tk_popup}
+command. The advantage of the \refmodule{Tix} \class{PopupMenu} widget
+is it requires less application code to manipulate.
 \end{classdesc}
 
-% Python Demo of: \ulink{ PopupMenu}{http://tix.sourceforge.net/dist/current/demos/samples/PopMenu.tcl}
+% Python Demo of:
+% \ulink{PopupMenu}{http://tix.sourceforge.net/dist/current/demos/samples/PopMenu.tcl}
 
-\index{Select widget}
 \begin{classdesc}{Select}{}
 The \ulink{Select}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixSelect.htm} widget is a
-container of button subwidgets. It can be used to provide radio-box or
-check-box style of selection options for the user.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixSelect.htm}
+widget is a container of button subwidgets. It can be used to provide
+radio-box or check-box style of selection options for the user.
 \end{classdesc}
 
-% Python Demo of: \ulink{ Select}{http://tix.sourceforge.net/dist/current/demos/samples/Select.tcl}
+% Python Demo of:
+% \ulink{Select}{http://tix.sourceforge.net/dist/current/demos/samples/Select.tcl}
 
-\index{StdButtonBox widget}
 \begin{classdesc}{StdButtonBox}{}
 The \ulink{StdButtonBox}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixStdButtonBox.htm} widget is a
-group of Standard buttons for Motif-like dialog boxes.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixStdButtonBox.htm}
+widget is a group of standard buttons for Motif-like dialog boxes.
 \end{classdesc}
 
-% Python Demo of: \ulink{ StdButtonBox}{http://tix.sourceforge.net/dist/current/demos/samples/StdBBox.tcl}
+% Python Demo of:
+% \ulink{StdButtonBox}{http://tix.sourceforge.net/dist/current/demos/samples/StdBBox.tcl}
 
 
 \subsubsection{File Selectors}
 
-\index{DirList widget}
 \begin{classdesc}{DirList}{}
 The \ulink{DirList}
 {http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirList.htm} widget
@@ -1115,31 +1130,31 @@ sub-directories. The user can choose one of the directories displayed
 in the list or change to another directory.
 \end{classdesc}
 
-% Python Demo of: \ulink{ DirList}{http://tix.sourceforge.net/dist/current/demos/samples/DirList.tcl}
+% Python Demo of:
+% \ulink{DirList}{http://tix.sourceforge.net/dist/current/demos/samples/DirList.tcl}
 
-\index{DirTree widget}
 \begin{classdesc}{DirTree}{}
 The \ulink{DirTree}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirTree.htm} widget
-displays a tree view of a directory, its previous directories and its
-sub-directories. The user can choose one of the directories displayed
-in the list or change to another directory.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirTree.htm}
+widget displays a tree view of a directory, its previous directories
+and its sub-directories. The user can choose one of the directories
+displayed in the list or change to another directory.
 \end{classdesc}
 
-% Python Demo of: \ulink{ DirTree}{http://tix.sourceforge.net/dist/current/demos/samples/DirTree.tcl}
+% Python Demo of:
+% \ulink{DirTree}{http://tix.sourceforge.net/dist/current/demos/samples/DirTree.tcl}
 
-\index{DirSelectDialog widget}
 \begin{classdesc}{DirSelectDialog}{}
 The \ulink{DirSelectDialog}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirSelectDialog.htm} widget
-presents the directories in the file system in a dialog window. The
-user can use this dialog window to navigate through the file system to
-select the desired directory.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirSelectDialog.htm}
+widget presents the directories in the file system in a dialog
+window.  The user can use this dialog window to navigate through the
+file system to select the desired directory.
 \end{classdesc}
 
-% Python Demo of: \ulink{ DirSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/DirDlg.tcl}
+% Python Demo of:
+% \ulink{DirSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/DirDlg.tcl}
 
-\index{DirSelectBox widget}
 \begin{classdesc}{DirSelectBox}{}
 The \class{DirSelectBox} is similar
 to the standard Motif(TM) directory-selection box. It is generally used for
@@ -1148,151 +1163,167 @@ recently selected into a ComboBox widget so that they can be quickly
 selected again.
 \end{classdesc}
 
-\index{ExFileSelectBox widget}
 \begin{classdesc}{ExFileSelectBox}{}
 The \ulink{ExFileSelectBox}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixExFileSelectBox.htm} widget is
-usually embedded in a tixExFileSelectDialog widget. It provides an
-convenient method for the user to select files. The style of the
-ExFileSelectBox widget is very similar to the standard file dialog in
-MS Windows 3.1.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixExFileSelectBox.htm}
+widget is usually embedded in a tixExFileSelectDialog widget. It
+provides an convenient method for the user to select files. The style
+of the \class{ExFileSelectBox} widget is very similar to the standard
+file dialog on MS Windows 3.1.
 \end{classdesc}
 
-% Python Demo of: \ulink{ ExFileSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/EFileDlg.tcl}
+% Python Demo of:
+%\ulink{ExFileSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/EFileDlg.tcl}
 
-\index{FileSelectBox widget}
 \begin{classdesc}{FileSelectBox}{}
 The \ulink{FileSelectBox}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileSelectBox.htm} is similar
-to the standard Motif(TM) file-selection box. It is generally used for
-the user to choose a file. FileSelectBox stores the files mostly
-recently selected into a ComboBox widget so that they can be quickly
-selected again.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileSelectBox.htm}
+is similar to the standard Motif(TM) file-selection box. It is
+generally used for the user to choose a file. FileSelectBox stores the
+files mostly recently selected into a \class{ComboBox} widget so that
+they can be quickly selected again.
 \end{classdesc}
 
-% Python Demo of: \ulink{ FileSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/FileDlg.tcl}
+% Python Demo of:
+% \ulink{FileSelectDialog}{http://tix.sourceforge.net/dist/current/demos/samples/FileDlg.tcl}
 
-\index{FileEntry widget}
 \begin{classdesc}{FileEntry}{}
 The \ulink{FileEntry}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileEntry.htm} widget can
-be used to input a filename. The user can type in the filename
-manually. Alternatively, the user can press the button widget that
-sits next to the entry, which will bring up a file selection dialog.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileEntry.htm}
+widget can be used to input a filename. The user can type in the
+filename manually. Alternatively, the user can press the button widget
+that sits next to the entry, which will bring up a file selection
+dialog.
 \end{classdesc}
 
-% Python Demo of: \ulink{ FileEntry}{http://tix.sourceforge.net/dist/current/demos/samples/FileEnt.tcl}
+% Python Demo of:
+% \ulink{FileEntry}{http://tix.sourceforge.net/dist/current/demos/samples/FileEnt.tcl}
 
 
 \subsubsection{Hierachical ListBox}
 
-\index{HList widget}
 \begin{classdesc}{HList}{}
 The \ulink{HList}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixHList.htm} widget can be
-used to display any data that have a hierarchical structure, for
-example, file system directory trees. The list entries are indented
-and connected by branch lines according to their places in the hierachy.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixHList.htm}
+widget can be used to display any data that have a hierarchical
+structure, for example, file system directory trees. The list entries
+are indented and connected by branch lines according to their places
+in the hierachy.
 \end{classdesc}
 
-% Python Demo of: \ulink{ HList}{http://tix.sourceforge.net/dist/current/demos/samples/HList1.tcl}
+% Python Demo of:
+% \ulink{HList}{http://tix.sourceforge.net/dist/current/demos/samples/HList1.tcl}
 
-\index{CheckList widget}
 \begin{classdesc}{CheckList}{}
 The \ulink{CheckList}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixCheckList.htm} widget
-displays a list of items to be selected by the user. CheckList acts
-similarly to the Tk checkbutton or radiobutton widgets, except it is
-capable of handling many more items than checkbuttons or radiobuttons.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixCheckList.htm}
+widget displays a list of items to be selected by the user. CheckList
+acts similarly to the Tk checkbutton or radiobutton widgets, except it
+is capable of handling many more items than checkbuttons or
+radiobuttons.
 \end{classdesc}
 
-% Python Demo of: \ulink{ CheckList}{http://tix.sourceforge.net/dist/current/demos/samples/ChkList.tcl}
-% Python Demo of: \ulink{ScrolledHList (1)}{http://tix.sourceforge.net/dist/current/demos/samples/SHList.tcl}
-% Python Demo of: \ulink{ScrolledHList (2)}{http://tix.sourceforge.net/dist/current/demos/samples/SHList2.tcl}
-
+% Python Demo of:
+% \ulink{ CheckList}{http://tix.sourceforge.net/dist/current/demos/samples/ChkList.tcl}
+% Python Demo of:
+% \ulink{ScrolledHList (1)}{http://tix.sourceforge.net/dist/current/demos/samples/SHList.tcl}
+% Python Demo of:
+% \ulink{ScrolledHList (2)}{http://tix.sourceforge.net/dist/current/demos/samples/SHList2.tcl}
 
-\index{Tree widget}
 \begin{classdesc}{Tree}{}
 The \ulink{Tree}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTree.htm} widget can be
-used to display hierachical data in a tree form. The user can adjust
-the view of the tree by opening or closing parts of the tree.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTree.htm}
+widget can be used to display hierachical data in a tree form. The
+user can adjust the view of the tree by opening or closing parts of
+the tree.
 \end{classdesc}
 
-% Python Demo of: \ulink{ Tree}{http://tix.sourceforge.net/dist/current/demos/samples/Tree.tcl}
+% Python Demo of:
+% \ulink{Tree}{http://tix.sourceforge.net/dist/current/demos/samples/Tree.tcl}
 
-% Python Demo of: \ulink{Tree (Dynamic)}{http://tix.sourceforge.net/dist/current/demos/samples/DynTree.tcl}
+% Python Demo of:
+% \ulink{Tree (Dynamic)}{http://tix.sourceforge.net/dist/current/demos/samples/DynTree.tcl}
 
 
 \subsubsection{Tabular ListBox}
 
-\index{TList widget}
 \begin{classdesc}{TList}{}
 The \ulink{TList}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTList.htm} widget can be
-used to display data in a tabular format. The list entries of a TList
-widget are similar to the entries in the Tk listbox widget. The main
-differences are (1) the TList widget can display the list entries in a
-two dimensional format and (2) you can use graphical images as well as
-multiple colors and fonts for the list entries.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTList.htm}
+widget can be used to display data in a tabular format. The list
+entries of a \class{TList} widget are similar to the entries in the Tk
+listbox widget.  The main differences are (1) the \class{TList} widget
+can display the list entries in a two dimensional format and (2) you
+can use graphical images as well as multiple colors and fonts for the
+list entries.
 \end{classdesc}
 
-% Python Demo of: \ulink{ScrolledTList (1)}{http://tix.sourceforge.net/dist/current/demos/samples/STList1.tcl}
-% Python Demo of: \ulink{ScrolledTList (2)}{http://tix.sourceforge.net/dist/current/demos/samples/STList2.tcl}
+% Python Demo of:
+% \ulink{ScrolledTList (1)}{http://tix.sourceforge.net/dist/current/demos/samples/STList1.tcl}
+% Python Demo of:
+% \ulink{ScrolledTList (2)}{http://tix.sourceforge.net/dist/current/demos/samples/STList2.tcl}
 
 % Grid has yet to be added to Python
 % \subsubsection{Grid Widget}
-% % Python Demo of: \ulink{Simple Grid}{http://tix.sourceforge.net/dist/current/demos/samples/SGrid0.tcl}
-% % Python Demo of: \ulink{ScrolledGrid}{http://tix.sourceforge.net/dist/current/demos/samples/SGrid1.tcl}
-% % Python Demo of: \ulink{Editable Grid}{http://tix.sourceforge.net/dist/current/demos/samples/EditGrid.tcl}
+% Python Demo of:
+% \ulink{Simple Grid}{http://tix.sourceforge.net/dist/current/demos/samples/SGrid0.tcl}
+% Python Demo of:
+% \ulink{ScrolledGrid}{http://tix.sourceforge.net/dist/current/demos/samples/SGrid1.tcl}
+% Python Demo of:
+% \ulink{Editable Grid}{http://tix.sourceforge.net/dist/current/demos/samples/EditGrid.tcl}
 
 
 \subsubsection{Manager Widgets}
 
-\index{PanedWindow widget}
 \begin{classdesc}{PanedWindow}{}
 The \ulink{PanedWindow}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPanedWindow.htm} widget
-allows the user to interactively manipulate the sizes of several
-panes. The panes can be arranged either vertically or horizontally.The
-user changes the sizes of the panes by dragging the resize handle
-between two panes.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPanedWindow.htm}
+widget allows the user to interactively manipulate the sizes of
+several panes.  The panes can be arranged either vertically or
+horizontally.  The user changes the sizes of the panes by dragging the
+resize handle between two panes.
 \end{classdesc}
 
-% Python Demo of: \ulink{ PanedWindow}{http://tix.sourceforge.net/dist/current/demos/samples/PanedWin.tcl}
+% Python Demo of:
+% \ulink{PanedWindow}{http://tix.sourceforge.net/dist/current/demos/samples/PanedWin.tcl}
 
-\index{ListNoteBook widget}
 \begin{classdesc}{ListNoteBook}{}
 The \ulink{ListNoteBook}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixListNoteBook.htm} widget is
-very similar to the TixNoteBook widget: it can be used to display many
-windows in a limited space using a notebook metaphor. The notebook is
-divided into a stack of pages (windows). At one time only one of these
-pages can be shown. The user can navigate through these pages by
-choosing the name of the desired page in the \member{hlist} subwidget.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixListNoteBook.htm}
+widget is very similar to the \class{TixNoteBook} widget: it can be
+used to display many windows in a limited space using a notebook
+metaphor. The notebook is divided into a stack of pages (windows). At
+one time only one of these pages can be shown. The user can navigate
+through these pages by choosing the name of the desired page in the
+\member{hlist} subwidget.
 \end{classdesc}
 
-% Python Demo of: \ulink{ ListNoteBook}{http://tix.sourceforge.net/dist/current/demos/samples/ListNBK.tcl}
-
+% Python Demo of:
+% \ulink{ListNoteBook}{http://tix.sourceforge.net/dist/current/demos/samples/ListNBK.tcl}
 
-\index{NoteBook widget}
 \begin{classdesc}{NoteBook}{}
 The \ulink{NoteBook}
-{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixNoteBook.htm} widget can
-be used to display many windows in a limited space using a notebook
-metaphor. The notebook is divided into a stack of pages. At one time
-only one of these pages can be shown. The user can navigate through
-these pages by choosing the visual ``tabs'' at the top of the NoteBook widget.
+{http://tix.sourceforge.net/dist/current/man/html/TixCmd/tixNoteBook.htm}
+widget can be used to display many windows in a limited space using a
+notebook metaphor. The notebook is divided into a stack of pages. At
+one time only one of these pages can be shown. The user can navigate
+through these pages by choosing the visual ``tabs'' at the top of the
+NoteBook widget.
 \end{classdesc}
 
-% Python Demo of: \ulink{ NoteBook}{http://tix.sourceforge.net/dist/current/demos/samples/NoteBook.tcl}
+% Python Demo of:
+% \ulink{NoteBook}{http://tix.sourceforge.net/dist/current/demos/samples/NoteBook.tcl}
 
 
 % \subsubsection{Scrolled Widgets}
-% Python Demo of: \ulink{ ScrolledListBox}{http://tix.sourceforge.net/dist/current/demos/samples/SListBox.tcl}
-% Python Demo of: \ulink{ ScrolledText}{http://tix.sourceforge.net/dist/current/demos/samples/SText.tcl}
-% Python Demo of: \ulink{ ScrolledWindow}{http://tix.sourceforge.net/dist/current/demos/samples/SWindow.tcl}
-% Python Demo of: \ulink{Canvas Object View}{http://tix.sourceforge.net/dist/current/demos/samples/CObjView.tcl}
+% Python Demo of:
+% \ulink{ScrolledListBox}{http://tix.sourceforge.net/dist/current/demos/samples/SListBox.tcl}
+% Python Demo of:
+% \ulink{ScrolledText}{http://tix.sourceforge.net/dist/current/demos/samples/SText.tcl}
+% Python Demo of:
+% \ulink{ScrolledWindow}{http://tix.sourceforge.net/dist/current/demos/samples/SWindow.tcl}
+% Python Demo of:
+% \ulink{Canvas Object View}{http://tix.sourceforge.net/dist/current/demos/samples/CObjView.tcl}
 
 
 \subsubsection{Image Types}
@@ -1360,91 +1391,7 @@ manager based on attachment rules for all Tk widgets.
 %end{latexonly}
 
 
-\section{Other User Interface Modules and Packages
-         \label{other-gui-modules}}
-
-
-There are an number of extension widget sets to \refmodule{Tkinter}.
-
-\begin{seealso}
-\seetitle[http://pmw.sourceforge.net/]{Python megawidgets}{is a
-toolkit for building high-level compound widgets in Python using the
-\refmodule{Tkinter} module.  It consists of a set of base classes and
-a library of flexible and extensible megawidgets built on this
-foundation. These megawidgets include notebooks, comboboxes, selection
-widgets, paned widgets, scrolled widgets, dialog windows, etc.  Also,
-with the Pmw.Blt interface to BLT, the busy, graph, stripchart, tabset
-and vector commands are be available.
-
-The initial ideas for Pmw were taken from the Tk \code{itcl}
-extensions \code{[incr Tk]} by Michael McLennan and \code{[incr
-Widgets]} by Mark Ulferts. Several of the megawidgets are direct
-translations from the itcl to Python. It offers most of the range of
-widgets that \code{[incr Widgets]} does, and is almost as complete as
-Tix, lacking however Tix's fast \class{HList} widget for drawing trees.
-}
-\seetitle[http://tkinter.effbot.org]{Tkinter3000}{
-is a Widget Construction Kit that allows you to write new Tkinter
-widgets in Python using Mixins. It is built on top of Tkinter,
-and does not offer the extended range of widgets that \refmodule{Tix} does,
-but does allow a form of  building mega-widgets. The project is
-still in the early stages.
-}
-\end{seealso}
-
-
-\refmodule{Tkinter} is not the only GUI for Python, but is however the
-most commonly used one.
-
-\begin{seealso}
-\seetitle[http://www.wxwindows.org]{wxWindows}{
-is a GUI toolkit that combines the most attractive attributes of Qt,
-Tk, Motif, and GTK+ in one powerful and efficient package. It is
-implemented in C++. wxWindows supports two flavors of Unix
-implementation: GTK+ and Motif, and under Windows, it has a standard
-Microsoft Foundation Classes (MFC) appearance, because it uses Win32
-widgets.  There is a Python class wrapper, independent of Tkinter.
-
-wxWindows is much richer in widgets than \refmodule{Tkinter}, with its
-help system, sophisticated HTML and image viewers, and other
-specialized widgets, extensive documentation, and printing capabilities.
-}
-\seetitle[http://www.thekompany.com]{PyKDE}{
-PyKDE is a SIP wrapped interface to the Qt toolkit.
-The Qt C++ toolkit lies at the heart of the KDE desktop, and the
-Qt toolkit allows very tight integration with KDE, and also Windows
-portability. SIP is a tool for generating bindings for \Cpp{} libraries
-as Python classes, and is specifically designed for Python.
-}
-\seetitle[http://fxpy.sourceforge.net/]{FXPy}{
-is a Python extension module which provides an interface to the 
-\citetitle[http://www.cfdrc.com/FOX/fox.html]{FOX} GUI.
-FOX is a C++ based Toolkit for developing Graphical User Interfaces
-easily and effectively. It offers a wide, and growing, collection of
-Controls, and provides state of the art facilities such as drag and
-drop, selection, as well as OpenGL widgets for 3D graphical
-manipulation.  FOX also implements icons, images, and user-convenience
-features such as status line help, and tooltips.  
-
-Even though FOX offers a large collection of Controls already, FOX
-leverages C++ to allow programmers to easily build additional Controls
-and GUI elements, simply by taking existing controls, and creating a
-derived class which simply adds or redefines the desired behavior.
-}
-\seetitle[http://www.daa.com.au/\~james/pygtk/]{PyGTK}{
-is a set of bindings for the \ulink{GTK}{http://www.gtk.org/} widget set.
-It provides an object oriented interface that is slightly higher
-level than the C one. It automatically does all the type casting and
-reference counting that you would have to do normally with the C
-API. There are also \ulink{bindings}{http://www.daa.com.au/\~james/gnome/}
-to  \ulink{GNOME}{http://www.gnome.org}, and a 
-\ulink{tutorial}
-{http://laguna.fmedic.unam.mx/\~daniel/pygtutorial/pygtutorial/index.html}
-is available.
-}
-\end{seealso}
-
-% XXX Reference URLs that compare the different UI packages
+\input{libturtle}
 
 
 \section{Idle \label{idle}}
@@ -1672,3 +1619,90 @@ If there are arguments:
         session is started; the arguments are still available in
         \code{sys.argv}.
 \end{enumerate}
+
+
+\section{Other Graphical User Interface Packages
+         \label{other-gui-packages}}
+
+
+There are an number of extension widget sets to \refmodule{Tkinter}.
+
+\begin{seealso}
+\seetitle[http://pmw.sourceforge.net/]{Python megawidgets}{is a
+toolkit for building high-level compound widgets in Python using the
+\refmodule{Tkinter} module.  It consists of a set of base classes and
+a library of flexible and extensible megawidgets built on this
+foundation. These megawidgets include notebooks, comboboxes, selection
+widgets, paned widgets, scrolled widgets, dialog windows, etc.  Also,
+with the Pmw.Blt interface to BLT, the busy, graph, stripchart, tabset
+and vector commands are be available.
+
+The initial ideas for Pmw were taken from the Tk \code{itcl}
+extensions \code{[incr Tk]} by Michael McLennan and \code{[incr
+Widgets]} by Mark Ulferts. Several of the megawidgets are direct
+translations from the itcl to Python. It offers most of the range of
+widgets that \code{[incr Widgets]} does, and is almost as complete as
+Tix, lacking however Tix's fast \class{HList} widget for drawing trees.
+}
+\seetitle[http://tkinter.effbot.org]{Tkinter3000}{
+is a Widget Construction Kit that allows you to write new Tkinter
+widgets in Python using Mixins. It is built on top of Tkinter,
+and does not offer the extended range of widgets that \refmodule{Tix} does,
+but does allow a form of  building mega-widgets. The project is
+still in the early stages.
+}
+\end{seealso}
+
+
+\refmodule{Tkinter} is not the only GUI for Python, but is however the
+most commonly used one.
+
+\begin{seealso}
+\seetitle[http://www.wxwindows.org]{wxWindows}{
+is a GUI toolkit that combines the most attractive attributes of Qt,
+Tk, Motif, and GTK+ in one powerful and efficient package. It is
+implemented in \Cpp. wxWindows supports two flavors of Unix
+implementation: GTK+ and Motif, and under Windows, it has a standard
+Microsoft Foundation Classes (MFC) appearance, because it uses Win32
+widgets.  There is a Python class wrapper, independent of Tkinter.
+
+wxWindows is much richer in widgets than \refmodule{Tkinter}, with its
+help system, sophisticated HTML and image viewers, and other
+specialized widgets, extensive documentation, and printing capabilities.
+}
+\seetitle[http://www.thekompany.com]{PyKDE}{
+PyKDE is a SIP wrapped interface to the Qt toolkit.
+The Qt \Cpp{} toolkit lies at the heart of the KDE desktop, and the
+Qt toolkit allows very tight integration with KDE, and also Windows
+portability. SIP is a tool for generating bindings for \Cpp{} libraries
+as Python classes, and is specifically designed for Python.
+}
+\seetitle[http://fxpy.sourceforge.net/]{FXPy}{
+is a Python extension module which provides an interface to the 
+\citetitle[http://www.cfdrc.com/FOX/fox.html]{FOX} GUI.
+FOX is a \Cpp{} based Toolkit for developing Graphical User Interfaces
+easily and effectively. It offers a wide, and growing, collection of
+Controls, and provides state of the art facilities such as drag and
+drop, selection, as well as OpenGL widgets for 3D graphical
+manipulation.  FOX also implements icons, images, and user-convenience
+features such as status line help, and tooltips.  
+
+Even though FOX offers a large collection of controls already, FOX
+leverages \Cpp{} to allow programmers to easily build additional Controls
+and GUI elements, simply by taking existing controls, and creating a
+derived class which simply adds or redefines the desired behavior.
+}
+\seetitle[http://www.daa.com.au/\~james/pygtk/]{PyGTK}{
+is a set of bindings for the \ulink{GTK}{http://www.gtk.org/} widget set.
+It provides an object oriented interface that is slightly higher
+level than the C one. It automatically does all the type casting and
+reference counting that you would have to do normally with the C
+API. There are also \ulink{bindings}{http://www.daa.com.au/\~james/gnome/}
+to  \ulink{GNOME}{http://www.gnome.org}, and a 
+\ulink{tutorial}
+{http://laguna.fmedic.unam.mx/\~daniel/pygtutorial/pygtutorial/index.html}
+is available.
+}
+\end{seealso}
+
+% XXX Reference URLs that compare the different UI packages
-- 
cgit v0.12

