17db96d56Sopenharmony_ci:mod:`tkinter.tix` --- Extension widgets for Tk
27db96d56Sopenharmony_ci===============================================
37db96d56Sopenharmony_ci
47db96d56Sopenharmony_ci.. module:: tkinter.tix
57db96d56Sopenharmony_ci   :synopsis: Tk Extension Widgets for Tkinter
67db96d56Sopenharmony_ci
77db96d56Sopenharmony_ci.. sectionauthor:: Mike Clarkson <mikeclarkson@users.sourceforge.net>
87db96d56Sopenharmony_ci
97db96d56Sopenharmony_ci**Source code:** :source:`Lib/tkinter/tix.py`
107db96d56Sopenharmony_ci
117db96d56Sopenharmony_ci.. index:: single: Tix
127db96d56Sopenharmony_ci
137db96d56Sopenharmony_ci.. deprecated:: 3.6
147db96d56Sopenharmony_ci   This Tk extension is unmaintained and should not be used in new code.  Use
157db96d56Sopenharmony_ci   :mod:`tkinter.ttk` instead.
167db96d56Sopenharmony_ci
177db96d56Sopenharmony_ci--------------
187db96d56Sopenharmony_ci
197db96d56Sopenharmony_ciThe :mod:`tkinter.tix` (Tk Interface Extension) module provides an additional
207db96d56Sopenharmony_cirich set of widgets. Although the standard Tk library has many useful widgets,
217db96d56Sopenharmony_cithey are far from complete. The :mod:`tkinter.tix` library provides most of the
227db96d56Sopenharmony_cicommonly needed widgets that are missing from standard Tk: :class:`HList`,
237db96d56Sopenharmony_ci:class:`ComboBox`, :class:`Control` (a.k.a. SpinBox) and an assortment of
247db96d56Sopenharmony_ciscrollable widgets.
257db96d56Sopenharmony_ci:mod:`tkinter.tix` also includes many more widgets that are generally useful in
267db96d56Sopenharmony_cia wide range of applications: :class:`NoteBook`, :class:`FileEntry`,
277db96d56Sopenharmony_ci:class:`PanedWindow`, etc; there are more than 40 of them.
287db96d56Sopenharmony_ci
297db96d56Sopenharmony_ciWith all these new widgets, you can introduce new interaction techniques into
307db96d56Sopenharmony_ciapplications, creating more useful and more intuitive user interfaces. You can
317db96d56Sopenharmony_cidesign your application by choosing the most appropriate widgets to match the
327db96d56Sopenharmony_cispecial needs of your application and users.
337db96d56Sopenharmony_ci
347db96d56Sopenharmony_ci.. seealso::
357db96d56Sopenharmony_ci
367db96d56Sopenharmony_ci   `Tix Homepage <https://tix.sourceforge.net/>`_
377db96d56Sopenharmony_ci      The home page for :mod:`Tix`.  This includes links to additional documentation
387db96d56Sopenharmony_ci      and downloads.
397db96d56Sopenharmony_ci
407db96d56Sopenharmony_ci   `Tix Man Pages <https://tix.sourceforge.net/dist/current/man/>`_
417db96d56Sopenharmony_ci      On-line version of the man pages and reference material.
427db96d56Sopenharmony_ci
437db96d56Sopenharmony_ci   `Tix Programming Guide <https://tix.sourceforge.net/dist/current/docs/tix-book/tix.book.html>`_
447db96d56Sopenharmony_ci      On-line version of the programmer's reference material.
457db96d56Sopenharmony_ci
467db96d56Sopenharmony_ci   `Tix Development Applications <https://tix.sourceforge.net/Tixapps/src/Tide.html>`_
477db96d56Sopenharmony_ci      Tix applications for development of Tix and Tkinter programs. Tide applications
487db96d56Sopenharmony_ci      work under Tk or Tkinter, and include :program:`TixInspect`, an inspector to
497db96d56Sopenharmony_ci      remotely modify and debug Tix/Tk/Tkinter applications.
507db96d56Sopenharmony_ci
517db96d56Sopenharmony_ci
527db96d56Sopenharmony_ciUsing Tix
537db96d56Sopenharmony_ci---------
547db96d56Sopenharmony_ci
557db96d56Sopenharmony_ci
567db96d56Sopenharmony_ci.. class:: Tk(screenName=None, baseName=None, className='Tix')
577db96d56Sopenharmony_ci
587db96d56Sopenharmony_ci   Toplevel widget of Tix which represents mostly the main window of an
597db96d56Sopenharmony_ci   application. It has an associated Tcl interpreter.
607db96d56Sopenharmony_ci
617db96d56Sopenharmony_ci   Classes in the :mod:`tkinter.tix` module subclasses the classes in the
627db96d56Sopenharmony_ci   :mod:`tkinter`. The former imports the latter, so to use :mod:`tkinter.tix`
637db96d56Sopenharmony_ci   with Tkinter, all you need to do is to import one module. In general, you
647db96d56Sopenharmony_ci   can just import :mod:`tkinter.tix`, and replace the toplevel call to
657db96d56Sopenharmony_ci   :class:`tkinter.Tk` with :class:`tix.Tk`::
667db96d56Sopenharmony_ci
677db96d56Sopenharmony_ci      from tkinter import tix
687db96d56Sopenharmony_ci      from tkinter.constants import *
697db96d56Sopenharmony_ci      root = tix.Tk()
707db96d56Sopenharmony_ci
717db96d56Sopenharmony_ciTo use :mod:`tkinter.tix`, you must have the Tix widgets installed, usually
727db96d56Sopenharmony_cialongside your installation of the Tk widgets. To test your installation, try
737db96d56Sopenharmony_cithe following::
747db96d56Sopenharmony_ci
757db96d56Sopenharmony_ci   from tkinter import tix
767db96d56Sopenharmony_ci   root = tix.Tk()
777db96d56Sopenharmony_ci   root.tk.eval('package require Tix')
787db96d56Sopenharmony_ci
797db96d56Sopenharmony_ci
807db96d56Sopenharmony_ciTix Widgets
817db96d56Sopenharmony_ci-----------
827db96d56Sopenharmony_ci
837db96d56Sopenharmony_ci`Tix <https://tix.sourceforge.net/dist/current/man/html/TixCmd/TixIntro.htm>`_
847db96d56Sopenharmony_ciintroduces over 40 widget classes to the :mod:`tkinter` repertoire.
857db96d56Sopenharmony_ci
867db96d56Sopenharmony_ci
877db96d56Sopenharmony_ciBasic Widgets
887db96d56Sopenharmony_ci^^^^^^^^^^^^^
897db96d56Sopenharmony_ci
907db96d56Sopenharmony_ci
917db96d56Sopenharmony_ci.. class:: Balloon()
927db96d56Sopenharmony_ci
937db96d56Sopenharmony_ci   A `Balloon
947db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixBalloon.htm>`_ that
957db96d56Sopenharmony_ci   pops up over a widget to provide help.  When the user moves the cursor inside a
967db96d56Sopenharmony_ci   widget to which a Balloon widget has been bound, a small pop-up window with a
977db96d56Sopenharmony_ci   descriptive message will be shown on the screen.
987db96d56Sopenharmony_ci
997db96d56Sopenharmony_ci.. Python Demo of:
1007db96d56Sopenharmony_ci.. \ulink{Balloon}{https://tix.sourceforge.net/dist/current/demos/samples/Balloon.tcl}
1017db96d56Sopenharmony_ci
1027db96d56Sopenharmony_ci
1037db96d56Sopenharmony_ci.. class:: ButtonBox()
1047db96d56Sopenharmony_ci
1057db96d56Sopenharmony_ci   The `ButtonBox
1067db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixButtonBox.htm>`_
1077db96d56Sopenharmony_ci   widget creates a box of buttons, such as is commonly used for ``Ok Cancel``.
1087db96d56Sopenharmony_ci
1097db96d56Sopenharmony_ci.. Python Demo of:
1107db96d56Sopenharmony_ci.. \ulink{ButtonBox}{https://tix.sourceforge.net/dist/current/demos/samples/BtnBox.tcl}
1117db96d56Sopenharmony_ci
1127db96d56Sopenharmony_ci
1137db96d56Sopenharmony_ci.. class:: ComboBox()
1147db96d56Sopenharmony_ci
1157db96d56Sopenharmony_ci   The `ComboBox
1167db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixComboBox.htm>`_
1177db96d56Sopenharmony_ci   widget is similar to the combo box control in MS Windows. The user can select a
1187db96d56Sopenharmony_ci   choice by either typing in the entry subwidget or selecting from the listbox
1197db96d56Sopenharmony_ci   subwidget.
1207db96d56Sopenharmony_ci
1217db96d56Sopenharmony_ci.. Python Demo of:
1227db96d56Sopenharmony_ci.. \ulink{ComboBox}{https://tix.sourceforge.net/dist/current/demos/samples/ComboBox.tcl}
1237db96d56Sopenharmony_ci
1247db96d56Sopenharmony_ci
1257db96d56Sopenharmony_ci.. class:: Control()
1267db96d56Sopenharmony_ci
1277db96d56Sopenharmony_ci   The `Control
1287db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixControl.htm>`_
1297db96d56Sopenharmony_ci   widget is also known as the :class:`SpinBox` widget. The user can adjust the
1307db96d56Sopenharmony_ci   value by pressing the two arrow buttons or by entering the value directly into
1317db96d56Sopenharmony_ci   the entry. The new value will be checked against the user-defined upper and
1327db96d56Sopenharmony_ci   lower limits.
1337db96d56Sopenharmony_ci
1347db96d56Sopenharmony_ci.. Python Demo of:
1357db96d56Sopenharmony_ci.. \ulink{Control}{https://tix.sourceforge.net/dist/current/demos/samples/Control.tcl}
1367db96d56Sopenharmony_ci
1377db96d56Sopenharmony_ci
1387db96d56Sopenharmony_ci.. class:: LabelEntry()
1397db96d56Sopenharmony_ci
1407db96d56Sopenharmony_ci   The `LabelEntry
1417db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelEntry.htm>`_
1427db96d56Sopenharmony_ci   widget packages an entry widget and a label into one mega widget. It can
1437db96d56Sopenharmony_ci   be used to simplify the creation of "entry-form" type of interface.
1447db96d56Sopenharmony_ci
1457db96d56Sopenharmony_ci.. Python Demo of:
1467db96d56Sopenharmony_ci.. \ulink{LabelEntry}{https://tix.sourceforge.net/dist/current/demos/samples/LabEntry.tcl}
1477db96d56Sopenharmony_ci
1487db96d56Sopenharmony_ci
1497db96d56Sopenharmony_ci.. class:: LabelFrame()
1507db96d56Sopenharmony_ci
1517db96d56Sopenharmony_ci   The `LabelFrame
1527db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixLabelFrame.htm>`_
1537db96d56Sopenharmony_ci   widget packages a frame widget and a label into one mega widget.  To create
1547db96d56Sopenharmony_ci   widgets inside a LabelFrame widget, one creates the new widgets relative to the
1557db96d56Sopenharmony_ci   :attr:`frame` subwidget and manage them inside the :attr:`frame` subwidget.
1567db96d56Sopenharmony_ci
1577db96d56Sopenharmony_ci.. Python Demo of:
1587db96d56Sopenharmony_ci.. \ulink{LabelFrame}{https://tix.sourceforge.net/dist/current/demos/samples/LabFrame.tcl}
1597db96d56Sopenharmony_ci
1607db96d56Sopenharmony_ci
1617db96d56Sopenharmony_ci.. class:: Meter()
1627db96d56Sopenharmony_ci
1637db96d56Sopenharmony_ci   The `Meter
1647db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixMeter.htm>`_ widget
1657db96d56Sopenharmony_ci   can be used to show the progress of a background job which may take a long time
1667db96d56Sopenharmony_ci   to execute.
1677db96d56Sopenharmony_ci
1687db96d56Sopenharmony_ci.. Python Demo of:
1697db96d56Sopenharmony_ci.. \ulink{Meter}{https://tix.sourceforge.net/dist/current/demos/samples/Meter.tcl}
1707db96d56Sopenharmony_ci
1717db96d56Sopenharmony_ci
1727db96d56Sopenharmony_ci.. class:: OptionMenu()
1737db96d56Sopenharmony_ci
1747db96d56Sopenharmony_ci   The `OptionMenu
1757db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixOptionMenu.htm>`_
1767db96d56Sopenharmony_ci   creates a menu button of options.
1777db96d56Sopenharmony_ci
1787db96d56Sopenharmony_ci.. Python Demo of:
1797db96d56Sopenharmony_ci.. \ulink{OptionMenu}{https://tix.sourceforge.net/dist/current/demos/samples/OptMenu.tcl}
1807db96d56Sopenharmony_ci
1817db96d56Sopenharmony_ci
1827db96d56Sopenharmony_ci.. class:: PopupMenu()
1837db96d56Sopenharmony_ci
1847db96d56Sopenharmony_ci   The `PopupMenu
1857db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPopupMenu.htm>`_
1867db96d56Sopenharmony_ci   widget can be used as a replacement of the ``tk_popup`` command. The advantage
1877db96d56Sopenharmony_ci   of the :mod:`Tix` :class:`PopupMenu` widget is it requires less application code
1887db96d56Sopenharmony_ci   to manipulate.
1897db96d56Sopenharmony_ci
1907db96d56Sopenharmony_ci.. Python Demo of:
1917db96d56Sopenharmony_ci.. \ulink{PopupMenu}{https://tix.sourceforge.net/dist/current/demos/samples/PopMenu.tcl}
1927db96d56Sopenharmony_ci
1937db96d56Sopenharmony_ci
1947db96d56Sopenharmony_ci.. class:: Select()
1957db96d56Sopenharmony_ci
1967db96d56Sopenharmony_ci   The `Select
1977db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixSelect.htm>`_ widget
1987db96d56Sopenharmony_ci   is a container of button subwidgets. It can be used to provide radio-box or
1997db96d56Sopenharmony_ci   check-box style of selection options for the user.
2007db96d56Sopenharmony_ci
2017db96d56Sopenharmony_ci.. Python Demo of:
2027db96d56Sopenharmony_ci.. \ulink{Select}{https://tix.sourceforge.net/dist/current/demos/samples/Select.tcl}
2037db96d56Sopenharmony_ci
2047db96d56Sopenharmony_ci
2057db96d56Sopenharmony_ci.. class:: StdButtonBox()
2067db96d56Sopenharmony_ci
2077db96d56Sopenharmony_ci   The `StdButtonBox
2087db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixStdButtonBox.htm>`_
2097db96d56Sopenharmony_ci   widget is a group of standard buttons for Motif-like dialog boxes.
2107db96d56Sopenharmony_ci
2117db96d56Sopenharmony_ci.. Python Demo of:
2127db96d56Sopenharmony_ci.. \ulink{StdButtonBox}{https://tix.sourceforge.net/dist/current/demos/samples/StdBBox.tcl}
2137db96d56Sopenharmony_ci
2147db96d56Sopenharmony_ci
2157db96d56Sopenharmony_ciFile Selectors
2167db96d56Sopenharmony_ci^^^^^^^^^^^^^^
2177db96d56Sopenharmony_ci
2187db96d56Sopenharmony_ci
2197db96d56Sopenharmony_ci.. class:: DirList()
2207db96d56Sopenharmony_ci
2217db96d56Sopenharmony_ci   The `DirList
2227db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirList.htm>`_
2237db96d56Sopenharmony_ci   widget displays a list view of a directory, its previous directories and its
2247db96d56Sopenharmony_ci   sub-directories. The user can choose one of the directories displayed in the
2257db96d56Sopenharmony_ci   list or change to another directory.
2267db96d56Sopenharmony_ci
2277db96d56Sopenharmony_ci.. Python Demo of:
2287db96d56Sopenharmony_ci.. \ulink{DirList}{https://tix.sourceforge.net/dist/current/demos/samples/DirList.tcl}
2297db96d56Sopenharmony_ci
2307db96d56Sopenharmony_ci
2317db96d56Sopenharmony_ci.. class:: DirTree()
2327db96d56Sopenharmony_ci
2337db96d56Sopenharmony_ci   The `DirTree
2347db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirTree.htm>`_
2357db96d56Sopenharmony_ci   widget displays a tree view of a directory, its previous directories and its
2367db96d56Sopenharmony_ci   sub-directories. The user can choose one of the directories displayed in the
2377db96d56Sopenharmony_ci   list or change to another directory.
2387db96d56Sopenharmony_ci
2397db96d56Sopenharmony_ci.. Python Demo of:
2407db96d56Sopenharmony_ci.. \ulink{DirTree}{https://tix.sourceforge.net/dist/current/demos/samples/DirTree.tcl}
2417db96d56Sopenharmony_ci
2427db96d56Sopenharmony_ci
2437db96d56Sopenharmony_ci.. class:: DirSelectDialog()
2447db96d56Sopenharmony_ci
2457db96d56Sopenharmony_ci   The `DirSelectDialog
2467db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixDirSelectDialog.htm>`_
2477db96d56Sopenharmony_ci   widget presents the directories in the file system in a dialog window.  The user
2487db96d56Sopenharmony_ci   can use this dialog window to navigate through the file system to select the
2497db96d56Sopenharmony_ci   desired directory.
2507db96d56Sopenharmony_ci
2517db96d56Sopenharmony_ci.. Python Demo of:
2527db96d56Sopenharmony_ci.. \ulink{DirSelectDialog}{https://tix.sourceforge.net/dist/current/demos/samples/DirDlg.tcl}
2537db96d56Sopenharmony_ci
2547db96d56Sopenharmony_ci
2557db96d56Sopenharmony_ci.. class:: DirSelectBox()
2567db96d56Sopenharmony_ci
2577db96d56Sopenharmony_ci   The :class:`DirSelectBox` is similar to the standard Motif(TM)
2587db96d56Sopenharmony_ci   directory-selection box. It is generally used for the user to choose a
2597db96d56Sopenharmony_ci   directory.  DirSelectBox stores the directories mostly recently selected into
2607db96d56Sopenharmony_ci   a ComboBox widget so that they can be quickly selected again.
2617db96d56Sopenharmony_ci
2627db96d56Sopenharmony_ci
2637db96d56Sopenharmony_ci.. class:: ExFileSelectBox()
2647db96d56Sopenharmony_ci
2657db96d56Sopenharmony_ci   The `ExFileSelectBox
2667db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixExFileSelectBox.htm>`_
2677db96d56Sopenharmony_ci   widget is usually embedded in a tixExFileSelectDialog widget. It provides a
2687db96d56Sopenharmony_ci   convenient method for the user to select files. The style of the
2697db96d56Sopenharmony_ci   :class:`ExFileSelectBox` widget is very similar to the standard file dialog on
2707db96d56Sopenharmony_ci   MS Windows 3.1.
2717db96d56Sopenharmony_ci
2727db96d56Sopenharmony_ci.. Python Demo of:
2737db96d56Sopenharmony_ci.. \ulink{ExFileSelectDialog}{https://tix.sourceforge.net/dist/current/demos/samples/EFileDlg.tcl}
2747db96d56Sopenharmony_ci
2757db96d56Sopenharmony_ci
2767db96d56Sopenharmony_ci.. class:: FileSelectBox()
2777db96d56Sopenharmony_ci
2787db96d56Sopenharmony_ci   The `FileSelectBox
2797db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileSelectBox.htm>`_
2807db96d56Sopenharmony_ci   is similar to the standard Motif(TM) file-selection box. It is generally used
2817db96d56Sopenharmony_ci   for the user to choose a file. FileSelectBox stores the files mostly recently
2827db96d56Sopenharmony_ci   selected into a :class:`ComboBox` widget so that they can be quickly selected
2837db96d56Sopenharmony_ci   again.
2847db96d56Sopenharmony_ci
2857db96d56Sopenharmony_ci.. Python Demo of:
2867db96d56Sopenharmony_ci.. \ulink{FileSelectDialog}{https://tix.sourceforge.net/dist/current/demos/samples/FileDlg.tcl}
2877db96d56Sopenharmony_ci
2887db96d56Sopenharmony_ci
2897db96d56Sopenharmony_ci.. class:: FileEntry()
2907db96d56Sopenharmony_ci
2917db96d56Sopenharmony_ci   The `FileEntry
2927db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixFileEntry.htm>`_
2937db96d56Sopenharmony_ci   widget can be used to input a filename. The user can type in the filename
2947db96d56Sopenharmony_ci   manually. Alternatively, the user can press the button widget that sits next to
2957db96d56Sopenharmony_ci   the entry, which will bring up a file selection dialog.
2967db96d56Sopenharmony_ci
2977db96d56Sopenharmony_ci.. Python Demo of:
2987db96d56Sopenharmony_ci.. \ulink{FileEntry}{https://tix.sourceforge.net/dist/current/demos/samples/FileEnt.tcl}
2997db96d56Sopenharmony_ci
3007db96d56Sopenharmony_ci
3017db96d56Sopenharmony_ciHierarchical ListBox
3027db96d56Sopenharmony_ci^^^^^^^^^^^^^^^^^^^^
3037db96d56Sopenharmony_ci
3047db96d56Sopenharmony_ci
3057db96d56Sopenharmony_ci.. class:: HList()
3067db96d56Sopenharmony_ci
3077db96d56Sopenharmony_ci   The `HList
3087db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixHList.htm>`_ widget
3097db96d56Sopenharmony_ci   can be used to display any data that have a hierarchical structure, for example,
3107db96d56Sopenharmony_ci   file system directory trees. The list entries are indented and connected by
3117db96d56Sopenharmony_ci   branch lines according to their places in the hierarchy.
3127db96d56Sopenharmony_ci
3137db96d56Sopenharmony_ci.. Python Demo of:
3147db96d56Sopenharmony_ci.. \ulink{HList}{https://tix.sourceforge.net/dist/current/demos/samples/HList1.tcl}
3157db96d56Sopenharmony_ci
3167db96d56Sopenharmony_ci
3177db96d56Sopenharmony_ci.. class:: CheckList()
3187db96d56Sopenharmony_ci
3197db96d56Sopenharmony_ci   The `CheckList
3207db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixCheckList.htm>`_
3217db96d56Sopenharmony_ci   widget displays a list of items to be selected by the user. CheckList acts
3227db96d56Sopenharmony_ci   similarly to the Tk checkbutton or radiobutton widgets, except it is capable of
3237db96d56Sopenharmony_ci   handling many more items than checkbuttons or radiobuttons.
3247db96d56Sopenharmony_ci
3257db96d56Sopenharmony_ci.. Python Demo of:
3267db96d56Sopenharmony_ci.. \ulink{ CheckList}{https://tix.sourceforge.net/dist/current/demos/samples/ChkList.tcl}
3277db96d56Sopenharmony_ci.. Python Demo of:
3287db96d56Sopenharmony_ci.. \ulink{ScrolledHList (1)}{https://tix.sourceforge.net/dist/current/demos/samples/SHList.tcl}
3297db96d56Sopenharmony_ci.. Python Demo of:
3307db96d56Sopenharmony_ci.. \ulink{ScrolledHList (2)}{https://tix.sourceforge.net/dist/current/demos/samples/SHList2.tcl}
3317db96d56Sopenharmony_ci
3327db96d56Sopenharmony_ci
3337db96d56Sopenharmony_ci.. class:: Tree()
3347db96d56Sopenharmony_ci
3357db96d56Sopenharmony_ci   The `Tree
3367db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTree.htm>`_ widget
3377db96d56Sopenharmony_ci   can be used to display hierarchical data in a tree form. The user can adjust the
3387db96d56Sopenharmony_ci   view of the tree by opening or closing parts of the tree.
3397db96d56Sopenharmony_ci
3407db96d56Sopenharmony_ci.. Python Demo of:
3417db96d56Sopenharmony_ci.. \ulink{Tree}{https://tix.sourceforge.net/dist/current/demos/samples/Tree.tcl}
3427db96d56Sopenharmony_ci.. Python Demo of:
3437db96d56Sopenharmony_ci.. \ulink{Tree (Dynamic)}{https://tix.sourceforge.net/dist/current/demos/samples/DynTree.tcl}
3447db96d56Sopenharmony_ci
3457db96d56Sopenharmony_ci
3467db96d56Sopenharmony_ciTabular ListBox
3477db96d56Sopenharmony_ci^^^^^^^^^^^^^^^
3487db96d56Sopenharmony_ci
3497db96d56Sopenharmony_ci
3507db96d56Sopenharmony_ci.. class:: TList()
3517db96d56Sopenharmony_ci
3527db96d56Sopenharmony_ci   The `TList
3537db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixTList.htm>`_ widget
3547db96d56Sopenharmony_ci   can be used to display data in a tabular format. The list entries of a
3557db96d56Sopenharmony_ci   :class:`TList` widget are similar to the entries in the Tk listbox widget.  The
3567db96d56Sopenharmony_ci   main differences are (1) the :class:`TList` widget can display the list entries
3577db96d56Sopenharmony_ci   in a two dimensional format and (2) you can use graphical images as well as
3587db96d56Sopenharmony_ci   multiple colors and fonts for the list entries.
3597db96d56Sopenharmony_ci
3607db96d56Sopenharmony_ci.. Python Demo of:
3617db96d56Sopenharmony_ci.. \ulink{ScrolledTList (1)}{https://tix.sourceforge.net/dist/current/demos/samples/STList1.tcl}
3627db96d56Sopenharmony_ci.. Python Demo of:
3637db96d56Sopenharmony_ci.. \ulink{ScrolledTList (2)}{https://tix.sourceforge.net/dist/current/demos/samples/STList2.tcl}
3647db96d56Sopenharmony_ci.. Grid has yet to be added to Python
3657db96d56Sopenharmony_ci.. \subsubsection{Grid Widget}
3667db96d56Sopenharmony_ci.. Python Demo of:
3677db96d56Sopenharmony_ci.. \ulink{Simple Grid}{https://tix.sourceforge.net/dist/current/demos/samples/SGrid0.tcl}
3687db96d56Sopenharmony_ci.. Python Demo of:
3697db96d56Sopenharmony_ci.. \ulink{ScrolledGrid}{https://tix.sourceforge.net/dist/current/demos/samples/SGrid1.tcl}
3707db96d56Sopenharmony_ci.. Python Demo of:
3717db96d56Sopenharmony_ci.. \ulink{Editable Grid}{https://tix.sourceforge.net/dist/current/demos/samples/EditGrid.tcl}
3727db96d56Sopenharmony_ci
3737db96d56Sopenharmony_ci
3747db96d56Sopenharmony_ciManager Widgets
3757db96d56Sopenharmony_ci^^^^^^^^^^^^^^^
3767db96d56Sopenharmony_ci
3777db96d56Sopenharmony_ci
3787db96d56Sopenharmony_ci.. class:: PanedWindow()
3797db96d56Sopenharmony_ci
3807db96d56Sopenharmony_ci   The `PanedWindow
3817db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixPanedWindow.htm>`_
3827db96d56Sopenharmony_ci   widget allows the user to interactively manipulate the sizes of several panes.
3837db96d56Sopenharmony_ci   The panes can be arranged either vertically or horizontally.  The user changes
3847db96d56Sopenharmony_ci   the sizes of the panes by dragging the resize handle between two panes.
3857db96d56Sopenharmony_ci
3867db96d56Sopenharmony_ci.. Python Demo of:
3877db96d56Sopenharmony_ci.. \ulink{PanedWindow}{https://tix.sourceforge.net/dist/current/demos/samples/PanedWin.tcl}
3887db96d56Sopenharmony_ci
3897db96d56Sopenharmony_ci
3907db96d56Sopenharmony_ci.. class:: ListNoteBook()
3917db96d56Sopenharmony_ci
3927db96d56Sopenharmony_ci   The `ListNoteBook
3937db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixListNoteBook.htm>`_
3947db96d56Sopenharmony_ci   widget is very similar to the :class:`TixNoteBook` widget: it can be used to
3957db96d56Sopenharmony_ci   display many windows in a limited space using a notebook metaphor. The notebook
3967db96d56Sopenharmony_ci   is divided into a stack of pages (windows). At one time only one of these pages
3977db96d56Sopenharmony_ci   can be shown. The user can navigate through these pages by choosing the name of
3987db96d56Sopenharmony_ci   the desired page in the :attr:`hlist` subwidget.
3997db96d56Sopenharmony_ci
4007db96d56Sopenharmony_ci.. Python Demo of:
4017db96d56Sopenharmony_ci.. \ulink{ListNoteBook}{https://tix.sourceforge.net/dist/current/demos/samples/ListNBK.tcl}
4027db96d56Sopenharmony_ci
4037db96d56Sopenharmony_ci
4047db96d56Sopenharmony_ci.. class:: NoteBook()
4057db96d56Sopenharmony_ci
4067db96d56Sopenharmony_ci   The `NoteBook
4077db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixNoteBook.htm>`_
4087db96d56Sopenharmony_ci   widget can be used to display many windows in a limited space using a notebook
4097db96d56Sopenharmony_ci   metaphor. The notebook is divided into a stack of pages. At one time only one of
4107db96d56Sopenharmony_ci   these pages can be shown. The user can navigate through these pages by choosing
4117db96d56Sopenharmony_ci   the visual "tabs" at the top of the NoteBook widget.
4127db96d56Sopenharmony_ci
4137db96d56Sopenharmony_ci.. Python Demo of:
4147db96d56Sopenharmony_ci.. \ulink{NoteBook}{https://tix.sourceforge.net/dist/current/demos/samples/NoteBook.tcl}
4157db96d56Sopenharmony_ci
4167db96d56Sopenharmony_ci.. \subsubsection{Scrolled Widgets}
4177db96d56Sopenharmony_ci.. Python Demo of:
4187db96d56Sopenharmony_ci.. \ulink{ScrolledListBox}{https://tix.sourceforge.net/dist/current/demos/samples/SListBox.tcl}
4197db96d56Sopenharmony_ci.. Python Demo of:
4207db96d56Sopenharmony_ci.. \ulink{ScrolledText}{https://tix.sourceforge.net/dist/current/demos/samples/SText.tcl}
4217db96d56Sopenharmony_ci.. Python Demo of:
4227db96d56Sopenharmony_ci.. \ulink{ScrolledWindow}{https://tix.sourceforge.net/dist/current/demos/samples/SWindow.tcl}
4237db96d56Sopenharmony_ci.. Python Demo of:
4247db96d56Sopenharmony_ci.. \ulink{Canvas Object View}{https://tix.sourceforge.net/dist/current/demos/samples/CObjView.tcl}
4257db96d56Sopenharmony_ci
4267db96d56Sopenharmony_ci
4277db96d56Sopenharmony_ciImage Types
4287db96d56Sopenharmony_ci^^^^^^^^^^^
4297db96d56Sopenharmony_ci
4307db96d56Sopenharmony_ciThe :mod:`tkinter.tix` module adds:
4317db96d56Sopenharmony_ci
4327db96d56Sopenharmony_ci* `pixmap <https://tix.sourceforge.net/dist/current/man/html/TixCmd/pixmap.htm>`_
4337db96d56Sopenharmony_ci  capabilities to all :mod:`tkinter.tix` and :mod:`tkinter` widgets to create
4347db96d56Sopenharmony_ci  color images from XPM files.
4357db96d56Sopenharmony_ci
4367db96d56Sopenharmony_ci  .. Python Demo of:
4377db96d56Sopenharmony_ci  .. \ulink{XPM Image In Button}{https://tix.sourceforge.net/dist/current/demos/samples/Xpm.tcl}
4387db96d56Sopenharmony_ci  .. Python Demo of:
4397db96d56Sopenharmony_ci  .. \ulink{XPM Image In Menu}{https://tix.sourceforge.net/dist/current/demos/samples/Xpm1.tcl}
4407db96d56Sopenharmony_ci
4417db96d56Sopenharmony_ci* `Compound
4427db96d56Sopenharmony_ci  <https://tix.sourceforge.net/dist/current/man/html/TixCmd/compound.htm>`_ image
4437db96d56Sopenharmony_ci  types can be used to create images that consists of multiple horizontal lines;
4447db96d56Sopenharmony_ci  each line is composed of a series of items (texts, bitmaps, images or spaces)
4457db96d56Sopenharmony_ci  arranged from left to right. For example, a compound image can be used to
4467db96d56Sopenharmony_ci  display a bitmap and a text string simultaneously in a Tk :class:`Button`
4477db96d56Sopenharmony_ci  widget.
4487db96d56Sopenharmony_ci
4497db96d56Sopenharmony_ci  .. Python Demo of:
4507db96d56Sopenharmony_ci  .. \ulink{Compound Image In Buttons}{https://tix.sourceforge.net/dist/current/demos/samples/CmpImg.tcl}
4517db96d56Sopenharmony_ci  .. Python Demo of:
4527db96d56Sopenharmony_ci  .. \ulink{Compound Image In NoteBook}{https://tix.sourceforge.net/dist/current/demos/samples/CmpImg2.tcl}
4537db96d56Sopenharmony_ci  .. Python Demo of:
4547db96d56Sopenharmony_ci  .. \ulink{Compound Image Notebook Color Tabs}{https://tix.sourceforge.net/dist/current/demos/samples/CmpImg4.tcl}
4557db96d56Sopenharmony_ci  .. Python Demo of:
4567db96d56Sopenharmony_ci  .. \ulink{Compound Image Icons}{https://tix.sourceforge.net/dist/current/demos/samples/CmpImg3.tcl}
4577db96d56Sopenharmony_ci
4587db96d56Sopenharmony_ci
4597db96d56Sopenharmony_ciMiscellaneous Widgets
4607db96d56Sopenharmony_ci^^^^^^^^^^^^^^^^^^^^^
4617db96d56Sopenharmony_ci
4627db96d56Sopenharmony_ci
4637db96d56Sopenharmony_ci.. class:: InputOnly()
4647db96d56Sopenharmony_ci
4657db96d56Sopenharmony_ci   The `InputOnly
4667db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixInputOnly.htm>`_
4677db96d56Sopenharmony_ci   widgets are to accept inputs from the user, which can be done with the ``bind``
4687db96d56Sopenharmony_ci   command (Unix only).
4697db96d56Sopenharmony_ci
4707db96d56Sopenharmony_ci
4717db96d56Sopenharmony_ciForm Geometry Manager
4727db96d56Sopenharmony_ci^^^^^^^^^^^^^^^^^^^^^
4737db96d56Sopenharmony_ci
4747db96d56Sopenharmony_ciIn addition, :mod:`tkinter.tix` augments :mod:`tkinter` by providing:
4757db96d56Sopenharmony_ci
4767db96d56Sopenharmony_ci
4777db96d56Sopenharmony_ci.. class:: Form()
4787db96d56Sopenharmony_ci
4797db96d56Sopenharmony_ci   The `Form
4807db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tixForm.htm>`_ geometry
4817db96d56Sopenharmony_ci   manager based on attachment rules for all Tk widgets.
4827db96d56Sopenharmony_ci
4837db96d56Sopenharmony_ci
4847db96d56Sopenharmony_ciTix Commands
4857db96d56Sopenharmony_ci------------
4867db96d56Sopenharmony_ci
4877db96d56Sopenharmony_ci
4887db96d56Sopenharmony_ci.. class:: tixCommand()
4897db96d56Sopenharmony_ci
4907db96d56Sopenharmony_ci   The `tix commands
4917db96d56Sopenharmony_ci   <https://tix.sourceforge.net/dist/current/man/html/TixCmd/tix.htm>`_ provide
4927db96d56Sopenharmony_ci   access to miscellaneous elements of :mod:`Tix`'s internal state and the
4937db96d56Sopenharmony_ci   :mod:`Tix` application context.  Most of the information manipulated by these
4947db96d56Sopenharmony_ci   methods pertains to the application as a whole, or to a screen or display,
4957db96d56Sopenharmony_ci   rather than to a particular window.
4967db96d56Sopenharmony_ci
4977db96d56Sopenharmony_ci   To view the current settings, the common usage is::
4987db96d56Sopenharmony_ci
4997db96d56Sopenharmony_ci      from tkinter import tix
5007db96d56Sopenharmony_ci      root = tix.Tk()
5017db96d56Sopenharmony_ci      print(root.tix_configure())
5027db96d56Sopenharmony_ci
5037db96d56Sopenharmony_ci
5047db96d56Sopenharmony_ci.. method:: tixCommand.tix_configure(cnf=None, **kw)
5057db96d56Sopenharmony_ci
5067db96d56Sopenharmony_ci   Query or modify the configuration options of the Tix application context. If no
5077db96d56Sopenharmony_ci   option is specified, returns a dictionary all of the available options.  If
5087db96d56Sopenharmony_ci   option is specified with no value, then the method returns a list describing the
5097db96d56Sopenharmony_ci   one named option (this list will be identical to the corresponding sublist of
5107db96d56Sopenharmony_ci   the value returned if no option is specified).  If one or more option-value
5117db96d56Sopenharmony_ci   pairs are specified, then the method modifies the given option(s) to have the
5127db96d56Sopenharmony_ci   given value(s); in this case the method returns an empty string. Option may be
5137db96d56Sopenharmony_ci   any of the configuration options.
5147db96d56Sopenharmony_ci
5157db96d56Sopenharmony_ci
5167db96d56Sopenharmony_ci.. method:: tixCommand.tix_cget(option)
5177db96d56Sopenharmony_ci
5187db96d56Sopenharmony_ci   Returns the current value of the configuration option given by *option*. Option
5197db96d56Sopenharmony_ci   may be any of the configuration options.
5207db96d56Sopenharmony_ci
5217db96d56Sopenharmony_ci
5227db96d56Sopenharmony_ci.. method:: tixCommand.tix_getbitmap(name)
5237db96d56Sopenharmony_ci
5247db96d56Sopenharmony_ci   Locates a bitmap file of the name ``name.xpm`` or ``name`` in one of the bitmap
5257db96d56Sopenharmony_ci   directories (see the :meth:`tix_addbitmapdir` method).  By using
5267db96d56Sopenharmony_ci   :meth:`tix_getbitmap`, you can avoid hard coding the pathnames of the bitmap
5277db96d56Sopenharmony_ci   files in your application. When successful, it returns the complete pathname of
5287db96d56Sopenharmony_ci   the bitmap file, prefixed with the character ``@``.  The returned value can be
5297db96d56Sopenharmony_ci   used to configure the ``bitmap`` option of the Tk and Tix widgets.
5307db96d56Sopenharmony_ci
5317db96d56Sopenharmony_ci
5327db96d56Sopenharmony_ci.. method:: tixCommand.tix_addbitmapdir(directory)
5337db96d56Sopenharmony_ci
5347db96d56Sopenharmony_ci   Tix maintains a list of directories under which the :meth:`tix_getimage` and
5357db96d56Sopenharmony_ci   :meth:`tix_getbitmap` methods will search for image files.  The standard bitmap
5367db96d56Sopenharmony_ci   directory is :file:`$TIX_LIBRARY/bitmaps`. The :meth:`tix_addbitmapdir` method
5377db96d56Sopenharmony_ci   adds *directory* into this list. By using this method, the image files of an
5387db96d56Sopenharmony_ci   applications can also be located using the :meth:`tix_getimage` or
5397db96d56Sopenharmony_ci   :meth:`tix_getbitmap` method.
5407db96d56Sopenharmony_ci
5417db96d56Sopenharmony_ci
5427db96d56Sopenharmony_ci.. method:: tixCommand.tix_filedialog([dlgclass])
5437db96d56Sopenharmony_ci
5447db96d56Sopenharmony_ci   Returns the file selection dialog that may be shared among different calls from
5457db96d56Sopenharmony_ci   this application.  This method will create a file selection dialog widget when
5467db96d56Sopenharmony_ci   it is called the first time. This dialog will be returned by all subsequent
5477db96d56Sopenharmony_ci   calls to :meth:`tix_filedialog`.  An optional dlgclass parameter can be passed
5487db96d56Sopenharmony_ci   as a string to specified what type of file selection dialog widget is desired.
5497db96d56Sopenharmony_ci   Possible options are ``tix``, ``FileSelectDialog`` or ``tixExFileSelectDialog``.
5507db96d56Sopenharmony_ci
5517db96d56Sopenharmony_ci
5527db96d56Sopenharmony_ci.. method:: tixCommand.tix_getimage(self, name)
5537db96d56Sopenharmony_ci
5547db96d56Sopenharmony_ci   Locates an image file of the name :file:`name.xpm`, :file:`name.xbm` or
5557db96d56Sopenharmony_ci   :file:`name.ppm` in one of the bitmap directories (see the
5567db96d56Sopenharmony_ci   :meth:`tix_addbitmapdir` method above). If more than one file with the same name
5577db96d56Sopenharmony_ci   (but different extensions) exist, then the image type is chosen according to the
5587db96d56Sopenharmony_ci   depth of the X display: xbm images are chosen on monochrome displays and color
5597db96d56Sopenharmony_ci   images are chosen on color displays. By using :meth:`tix_getimage`, you can
5607db96d56Sopenharmony_ci   avoid hard coding the pathnames of the image files in your application. When
5617db96d56Sopenharmony_ci   successful, this method returns the name of the newly created image, which can
5627db96d56Sopenharmony_ci   be used to configure the ``image`` option of the Tk and Tix widgets.
5637db96d56Sopenharmony_ci
5647db96d56Sopenharmony_ci
5657db96d56Sopenharmony_ci.. method:: tixCommand.tix_option_get(name)
5667db96d56Sopenharmony_ci
5677db96d56Sopenharmony_ci   Gets the options maintained by the Tix scheme mechanism.
5687db96d56Sopenharmony_ci
5697db96d56Sopenharmony_ci
5707db96d56Sopenharmony_ci.. method:: tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio])
5717db96d56Sopenharmony_ci
5727db96d56Sopenharmony_ci   Resets the scheme and fontset of the Tix application to *newScheme* and
5737db96d56Sopenharmony_ci   *newFontSet*, respectively.  This affects only those widgets created after this
5747db96d56Sopenharmony_ci   call.  Therefore, it is best to call the resetoptions method before the creation
5757db96d56Sopenharmony_ci   of any widgets in a Tix application.
5767db96d56Sopenharmony_ci
5777db96d56Sopenharmony_ci   The optional parameter *newScmPrio* can be given to reset the priority level of
5787db96d56Sopenharmony_ci   the Tk options set by the Tix schemes.
5797db96d56Sopenharmony_ci
5807db96d56Sopenharmony_ci   Because of the way Tk handles the X option database, after Tix has been has
5817db96d56Sopenharmony_ci   imported and inited, it is not possible to reset the color schemes and font sets
5827db96d56Sopenharmony_ci   using the :meth:`tix_config` method. Instead, the :meth:`tix_resetoptions`
5837db96d56Sopenharmony_ci   method must be used.
584