Import Tix 8.4.3.5 (as of svn r86089)

This commit is contained in:
Zachary Ware
2017-05-22 16:16:49 -05:00
parent d239d63057
commit 80ba28babb
769 changed files with 136423 additions and 0 deletions

39
tools/README.html Normal file
View File

@@ -0,0 +1,39 @@
<HTML>
<!-- $Id: README.html,v 1.2 2002/01/25 08:47:52 idiscovery Exp $ -->
<HEAD>
<TITLE>Tix Tools</TITLE>
</HEAD>
<BODY>
<Center><H2>Tix Tools</H2></Center>
<h3><a href="tix-man2html.tcl">tix-man2html.tcl</a> -- Man pages to HTML</A>
Convert Ousterhout format man pages into highly crosslinked hypertext.
<h3><a href="hanno.tcl">hanno.tcl</a> -- An HTML Annotation Program</h3>
<code>hanno.tcl</code> automatically generates a "Last Modified"
tag for HTML files. It recursively traverses all sub-directories
and generates a "Last Modified" tag for each HTML file according
to the file's last modification date. Please read the file for
available options.
<h3><a href="tcltrim">tcltrim</a></h3>
<code>tcltrim</code> trims all comments and white spaces from TCL
files.
<h3><a href="tixindex">tixindex</a></h3>
<code>tixindex</code> builds the tclIndex file for the Tix widget
implementation files. You must use this program to index the Tix
librarys instead of the normal TCL <code>auto_mkindex</code>
command.
<h3><a href="color.tcl">color.tcl</a></h3>
<code>color.tcl</code> displays all the available colors in your X
display. This program requires <code>tixwish</code>.
</BODY>
</HTML>

35
tools/README.txt Normal file
View File

@@ -0,0 +1,35 @@
Tix Tools
[1]tix-man2html.tcl -- Man pages to HTML Convert Ousterhout format man pages
into highly crosslinked hypertext.
[2]hanno.tcl -- An HTML Annotation Program
hanno.tcl automatically generates a "Last Modified" tag for HTML
files. It recursively traverses all sub-directories and generates a
"Last Modified" tag for each HTML file according to the file's last
modification date. Please read the file for available options.
[3]tcltrim
tcltrim trims all comments and white spaces from TCL files.
[4]tixindex
tixindex builds the tclIndex file for the Tix widget implementation
files. You must use this program to index the Tix librarys instead of
the normal TCL auto_mkindex command.
[5]color.tcl
color.tcl displays all the available colors in your X display. This
program requires tixwish.
References
1. file://localhost/path/to/tix/tools/tix-man2html.tcl
2. file://localhost/path/to/tix/tools/hanno.tcl
3. file://localhost/path/to/tix/tools/tcltrim
4. file://localhost/path/to/tix/tools/tixindex
5. file://localhost/path/to/tix/tools/color.tcl

69
tools/hanno.tcl Normal file
View File

@@ -0,0 +1,69 @@
#
# $Id: hanno.tcl,v 1.1.1.1 2000/05/17 11:08:53 idiscovery Exp $
#
#!/bin/sh
# the next line restarts using tixwish \
exec tclsh7.6 "$0" "$@"
# Options
#
# -v : Verbose mode. Print out what hanno is doing.
#
set verbose 0
if {[info exists env(TIX_VERBOSE)] && $env(TIX_VERBOSE) == 1} {
set verbose 1
}
if {[lsearch -glob $argv -v*] != -1} {
set verbose 1
}
set files [exec find . -name *.html -print]
foreach file $files {
if {$verbose} {
puts "\[html anno]: checking $file"
}
set output {}
set src [open $file RDONLY]
set changed 1
while {![eof $src]} {
set line [gets $src]
if {[regexp -nocase {[ \t]*\<hr>\<i>Last modified.*} $line]} {
# Do nothing
} elseif {[regexp -nocase {[ \t]*\<i>Serial.*\</i>} $line]} {
if {[scan $line "<i>Serial %d</i>" lastmtime] == 1} {
if {[expr [file mtime $file] - $lastmtime] >= 10} {
set changed 1
} else {
set changed 0
}
}
} else {
append output $line\n
}
}
close $src
if {$changed == 1} {
if {$verbose} {
puts "\[html anno]: modifying tag of $file"
}
set date [clock format [file mtime $file]]
set des [open $file {WRONLY TRUNC}]
puts -nonewline $des $output
# Somehow the "seek" is necessary
#
seek $des -1 current
puts $des "<hr><i>Last modified $date </i> --- "
puts $des "<i>Serial [file mtime $file]</i>"
close $des
}
}

133
tools/man2html-fixindex.tcl Normal file
View File

@@ -0,0 +1,133 @@
# man2html-fixindex.tcl
#
# Updates the index file generated by tix-man2html.tcl
# in a format more suitable for Tix
#
# This program is dependent on the specific HTML format
# generated by ./tix-man2html.tcl.
#
# $Id: man2html-fixindex.tcl,v 1.1 2001/01/22 08:18:35 ioilam Exp $
set root [lindex $argv 0]
set file [file join $root contents.htm]
set fd [open $file RDONLY]
set data [read $fd]
close $fd
#
# Remove the link about Tix Commands
#
regsub "<DT><A HREF=\"TixCmd\[^\n\]*\n" $data "" data
set std {
tixGrid
tixHList
tixInputOnly
tixNBFrame
tixTList
}
set mega {
tixBalloon
tixButtonBox
tixCheckList
tixComboBox
tixControl
tixDirList
tixDirSelectDialog
tixDirTree
tixExFileSelectBox
tixExFileSelectDialog
tixFileEntry
tixFileSelectBox
tixFileSelectDialog
tixLabelEntry
tixLabelFrame
tixListNoteBook
tixMeter
tixNoteBook
tixOptionMenu
tixPanedWindow
tixPopupMenu
tixScrolledHList
tixScrolledListBox
tixScrolledText
tixScrolledWindow
tixSelect
tixStdButtonBox
tixTree
}
set img {
compound
pixmap
}
set other {
tixDestroy
tixDisplayStyle
tixForm
tixMwm
tix
tixGetBoolean
tixGetInt
tixUtils
}
set progs {
tixwish
}
#
# returns the links to the list of man pages in an HTML table.
#
proc section {name dir list} {
set tab_width 4
append html <b>$name</b>\n
append html <blockquote>\n
append html {<TABLE>}
set tab_height [expr ([llength $list] + $tab_width - 1) / $tab_width]
for {set i 0} {$i < $tab_height} {incr i} {
append html {<TR>}
for {set j 0} {$j < $tab_width} {incr j} {
set idx [expr ($j * $tab_height) + $i]
append html <TD>
if {$idx < [llength $list]} {
set page [lindex $list $idx]
append html "<A HREF=$dir/$page.htm>$page</A>"
} else {
append html ""
}
append html </TD>
}
append html </TR>
}
append html </TABLE>
append html </blockquote>\n
append html \n
return $html
}
#
# Add Tix commands to the page with better categorization.
#
append tixdata {
<blockquote>
<b><a href=TixCmd/TixIntro.htm#M3>
Introduction to the Tix Library</a></b>
</blockquote>
}
append tixdata [section {Tix Standard Widgets} TixCmd $std]
append tixdata [section {Tix Mega Widgets} TixCmd $mega]
append tixdata [section {Tix Image Types} TixCmd $img]
append tixdata [section {Tix Core Commands} TixCmd $other]
append tixdata [section {Tix User Programs} UserCmd $progs]
regsub </H3> $data </H3>$tixdata data
set fd [open $file {WRONLY TRUNC CREAT}]
puts -nonewline $fd $data
close $fd

24
tools/tcltrim Normal file
View File

@@ -0,0 +1,24 @@
#!/usr/local/bin/tclsh
foreach source $argv {
set target [file rootname $source].tt
set src [open $source RDONLY]
set tgt [open $target {RDWR CREAT TRUNC}]
while {[eof $src] == 0} {
set line [string trim [gets $src]]
if {$line == ""} {
continue
}
if {[string index $line 0] == "#"} {
continue
}
puts $tgt $line
}
close $src
close $tgt
}

1813
tools/tix-man2html.tcl Normal file

File diff suppressed because it is too large Load Diff

66
tools/tixindex Normal file
View File

@@ -0,0 +1,66 @@
#!/bin/sh
# the next line restarts using tclsh \
exec tclsh "$0" "$@"
proc tixAutoMkIndex {dir args} {
global errorCode errorInfo
set oldDir [pwd]
cd $dir
set dir [pwd]
append index "# Tcl autoload index file, version 2.0\n"
append index "# This file is generated by the \"tixindex\" program,\n"
append index "# *NOT* by the \"auto_mkindex\" command,\n"
append index "# and sourced to set up indexing information for one or\n"
append index "# more commands. Typically each line is a command that\n"
append index "# sets an element in the auto_index array, where the\n"
append index "# element name is the name of a command and the value is\n"
append index "# a script that loads the command.\n\n"
foreach file [eval glob $args] {
set f ""
set error [catch {
set f [open $file]
while {[gets $f line] >= 0} {
if [regexp {^tixClass[ ]+([^ ]*)} $line match className] {
append index "set [list auto_index($className)]"
append index " \"source {\$dir/$file}\"\n"
append index "set [list auto_index($className:AutoLoad)]"
append index " \"source {\$dir/$file}\"\n"
set isClass($className) 1
}
if [regexp {^tixWidgetClass[ ]+([^ ]*)} $line match className] {
append index "set [list auto_index($className)]"
append index " \"source {\$dir/$file}\"\n"
append index "set [list auto_index($className:AutoLoad)]"
append index " \"source {\$dir/$file}\"\n"
set isClass($className) 1
}
if [regexp {^proc[ ]+([^ ]*)} $line match procName] {
set prefix [lindex [split $procName :] 0]
if {![info exists isClass($prefix)]} {
append index "set [list auto_index($procName)]"
append index " \"source {\$dir/$file}\"\n"
}
}
}
close $f
} msg]
if $error {
set code $errorCode
set info $errorInfo
catch {close $f}
cd $oldDir
error $msg $info $code
}
}
set f [open tclIndex w]
puts $f $index nonewline
close $f
cd $oldDir
}
if {$argv == {}} {
eval tixAutoMkIndex . *.tcl
} else {
eval tixAutoMkIndex . $argv
}

103
tools/winsetup.iss Normal file
View File

@@ -0,0 +1,103 @@
; -*- mode: text; fill-column: 75; tab-width: 8; coding: iso-latin-1-dos -*-
;
; $Id: winsetup.iss,v 1.1 2002/01/31 21:35:19 idiscovery Exp $
;
; winsetup.iss --
;
; Inno Setup Script for creating Win32 installer program for
; the Tix library.
;
; Copyright (c) 2000-2001 Tix Project Group.
;
; See the file "license.terms" for information on usage and redistribution
; of this file, and for a DISCLAIMER OF ALL WARRANTIES.
[Messages]
[Setup]
MinVersion=4.0.950,4.0.1381
AppCopyright=Copyright <20> 2001, Tix Project Group
AppName=Tix Widgets 8.2.0
AppVerName=Tix Widgets 8.2.0
AppVersion=8.2.0
EnableDirDoesntExistWarning=true
InfoBeforeFile=WinBin.txt
OutputDir=.
OutputBaseFilename=tix-8.2.0b3
LicenseFile=..\license.terms
AppPublisherURL=http://tix.sourceforge.net
AppSupportURL=http://tix.sourceforge.net
AppUpdatesURL=http://tix.sourceforge.net
DefaultGroupName=Tix 8.2.0
DefaultDirName={pf}\Tcl
UsePreviousAppDir=yes
DirExistsWarning=no
AllowRootDirectory=true
AlwaysShowGroupOnReadyPage=yes
BackSolid=yes
BackColor=$0000FF
[Types]
Name: "full"; Description: "Full installation"
Name: "compact"; Description: "Compact installation"
Name: "custom"; Description: "Custom installation"; Flags: iscustom
[Components]
Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed
Name: "demos"; Description: "Tix Demo Files"; Types: full
;;Name: "html"; Description: "Tix Manual Pages"; Types: full
Name: "pdf"; Description: "Tix User Guide"; Types: full
[Icons]
Name: {group}\tixwish; Filename: {app}\bin\tixwish82.exe; WorkingDir: {app}
Name: {group}\Tix Demo; Filename: "{app}\bin\tixwish82.exe"; Parameters: """{app}\lib\tix8.2\demos\tixwidgets.tcl"""; WorkingDir: {app}\bin; Components: demos
Name: {group}\Tix User Manual;Filename: {app}\docs\pdf\TixUser.pdf; Components: pdf
Name: {group}\Tix Programming Guide; Filename: {app}\docs\pguide-tix4.0.pdf; Components: pdf
Name: {group}\Release Notes; Filename: {app}\lib\tix8.2\Release-8.2.0.txt
[Run]
Filename: "{app}\lib\tix8.2\Release-8.2.0.txt"; Description: "View the Release notes"; Flags: postinstall shellexec skipifsilent unchecked
Filename: "{app}\bin\tixwish82.exe"; Description: "Launch Demos"; Parameters: """{app}\lib\tix8.2\demos\tixwidgets.tcl"""; WorkingDir: {app}\bin; Flags: postinstall nowait skipifsilent; Components: demos
[LangOptions]
LanguageName=English
LanguageID=$0409
DialogFontName=MS Shell Dlg
DialogFontSize=8
DialogFontStandardHeight=13
TitleFontName=Arial
TitleFontSize=29
WelcomeFontName=Verdana
WelcomeFontSize=12
CopyrightFontName=Arial
CopyrightFontSize=8
[Files]
Source: ..\win\Release\tixwish82.exe; DestDir: {app}\bin
Source: ..\win\Release\tixwishc82.exe; DestDir: {app}\bin
Source: ..\win\Release\tix82.dll; DestDir: {app}\bin
Source: ..\win\Release\tix82.lib; DestDir: {app}\lib
Source: ..\library\*.tcl; DestDir: {app}\lib\tix8.2
Source: ..\library\tclIndex; DestDir: {app}\lib\tix8.2
Source: ..\license.terms; DestDir: {app}\lib\tix8.2
Source: ..\docs\Release-8.2.0.txt; DestDir: {app}\lib\tix8.2
;
; This must appear below the line above. We are overridding the
; file ..\library\pkgIndex.tcl with ..\win\Release\pkgIndex.tcl.src
;
Source: ..\win\Release\pkgIndex.tcl.src; DestDir: {app}\lib\tix8.2; DestName: "pkgIndex.tcl"
Source: ..\library\pref\*.*; DestDir: {app}\lib\tix8.2\pref
Source: ..\library\bitmaps\*.*; DestDir: {app}\lib\tix8.2\bitmaps
Source: ..\demos\*.*; DestDir: {app}\lib\tix8.2\demos; Components: demos
Source: ..\demos\bitmaps\*.*; DestDir: {app}\lib\tix8.2\demos\bitmaps; Components: demos
Source: ..\demos\samples\*.*; DestDir: {app}\lib\tix8.2\demos\samples; Components: demos
;
; Docs
;
Source: ..\docs\pdf\TixUser.pdf; DestDir: {app}\doc; Components: pdf
Source: ..\docs\pdf\pguide-tix4.0.pdf; DestDir: {app}\doc; Components: pdf
[Dirs]