1------------------------------------------------------------------------------ 2 [incr Widgets] - version 4.0.2 3------------------------------------------------------------------------------ 4Please send general comments, suggestions, and questions to chad_smith@adc.com 5or itclguy@yahoo.com. Much of this file was written by Mark Ulferts, the 6original [incr Widgets] guy, several years ago when the Iwidgets were first 7released. Chad has assumed responsibilities for updates and maintenance. 8 9============================================================================== 10 Copyright (c) 1995 DSC Technologies Corporation 11============================================================================== 12 This software is copyrighted by DSC Technologies and private individual 13 contributors. The copyright holder is specifically listed in the header 14 of each file. The following terms apply to all files associated with the 15 software unless explicitly disclaimed in individual files by private 16 contributors. 17 18 Permission to use, copy, modify, distribute and license this software and 19 its documentation for any purpose, and without fee or written agreement 20 with DSC, is hereby granted, provided that the above copyright notice 21 appears in all copies and that both the copyright notice and warranty 22 disclaimer below appear in supporting documentation, and that the names of 23 DSC Technologies Corporation or DSC Communications Corporation not be used 24 in advertising or publicity pertaining to the software without specific, 25 written prior permission. 26 27 DSC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 28 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, AND NON-INFRINGEMENT. 29 THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND 30 DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, 31 ENHANCEMENTS, OR MODIFICATIONS. IN NO EVENT SHALL DSC BE LIABLE FOR ANY 32 SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER 33 RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF 34 CONTRACT, NEGLIGENCE OR OTHER TORTUOUS ACTION, ARISING OUT OF OR IN 35 CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 36 37 RESTRICTED RIGHTS: Use, duplication or disclosure by the government 38 is subject to the restrictions as set forth in subparagraph (c) (1) (ii) 39 of the Rights in Technical Data and Computer Software Clause as DFARS 40 252.227-7013 and FAR 52.227-19. 41============================================================================== 42 43 OVERVIEW 44------------------------------------------------------------------------------ 45 - Introduction 46 - Distribution 47 - Web site 48 - Getting started 49 - Contributions 50 - Acknowledgements 51------------------------------------------------------------------------------ 52 53 54 Introduction 55------------------------------------------------------------------------------ 56 [incr Widgets] is an object-oriented mega-widget set which extends 57 Tcl/Tk and is based on [incr Tcl] and [incr Tk]. This set of mega-widgets 58 delivers many new, general purpose widgets like option menus, comboboxes, 59 selection boxes, and various dialogs whose couterparts are found in Motif 60 and Windows. Since [incr Widgets] is based on the [incr Tk] extension, the 61 Tk framework of configuration options, widget commands, and default bindings 62 is maintained. In other words, each [incr Widgets] mega-widget seamlessly 63 blends with the standard Tk widgets. They look, act and feel like Tk 64 widgets. In addition, all [incr Widgets] mega-widgets are object oriented and 65 may themselves be extended, using either inheritance or composition. 66 67 [incr Widgets] offers a strong object-oriented foundation which addresses 68 the need for a flexible and extensible mega-widget set. Its usage replaces 69 common widget combinations with higher level abstractions, simplifying code, 70 reducing errors, increasing readability, adding productivity, and promoting 71 a singular look-and-feel. The ability to extend [incr Widgets] enables 72 developers to create new mega-widgets based on previous work. 73 74 In short, [incr Widgets] is a library of reusable mega-widgets that can 75 be easily extended using composition or inheritance, allowing quicker 76 development of large scale applications. Usage drastically reduces 77 development time. New dialogs can be created in hours. Whole applications 78 in a few days. Reuse becomes a reality. Many projects are benefitting frm 79 the intergration of this mega-widget set into their development strategy. 80 [incr Widgets] is an [incr Tcl] and [incr Tk] success story. Good products 81 come from good foundations. 82 83 84 Distribution 85------------------------------------------------------------------------------ 86 The [incr Widgets] distribution may be downloaded at SourceForge: 87 www.sourceforge.net/projects/incrtcl. The current distribution is 88 version 4.0.2. 89 90 91 Web site 92------------------------------------------------------------------------------ 93 For the most current news regarding [incr Widgets] please consult the web 94 site - http://incrtcl.sourceforge.net/iwidgets. Many thanks to Brett Schwarz 95 who has done an incredible job overhauling this site. Take a look! 96 97 98 Getting started 99------------------------------------------------------------------------------ 100 The "doc" directory contains man pages and a technical paper. The man 101 pages are installed under the man directory off your --prefix, and as of 102 version 4.0.1 are prepended with the text "iwidgets_" to easily differentiate 103 [incr Widgets] man pages from those of other extensions. 104 105 doc/iwidgets.ps ... Updated paper presented at Tcl Workshop 95. 106 107 doc/*.n ........... Man pages 108 109 The "demos" directory contains demo scripts for each mega-widget as 110 well as html versions of all the [incr Widgets] man pages. The 111 demos are also installed under the lib directory off your --prefix. 112 113 demos/catalog ..... Comprehensive demo package which illustrates 114 [incr Widgets] usage additionally displaying the 115 source. 116 117 demos/html ..... HTML version of the [incr Widgets] man pages. 118 119 The "tests" directory contains a set of test scripts for [incr Widgets]. 120 They also make for a great demo of the flexiblity of the mega-widgets. 121 122 123 Installation 124------------------------------------------------------------------------------ 125 NOTE: Having the itcl distribution is a prerequsite to using iwidgets. 126 Thus, if you don't have itcl you need to visit Source Forge to download 127 and install it first. Once you have downloaded and installed [incr Tcl] 128 and [incr Tk], you can proceed with [incr Widgets] installation as follows: 129 130 1) Copy the iwidgets4.0.2.tar.gz file to your toplevel [incr Tcl] 131 directory. For example, if you have the itcl3.2.1 distribution in 132 a directory named /usr/local/tcl/itcl3.2.1, then you should copy 133 the iwidgets file to this directory. 134 135 Note, if you don't copy the iwidgets archive to this directory, 136 then you will need to specify the --with-itcl flag when you run 137 the configure script. 138 139 2) Untar/unzip the archive: 140 141 gunzip -c iwidgets4.0.2.tar.gz |tar xvf - 142 143 3) Run the configuration script: 144 145 cd iwidgets4.0.0 146 ./configure 147 148 By default, the configuration script will set things up to be 149 installed in "/usr/local". You can change this by specifying a 150 different "prefix" in the "configure" command. You'll want to 151 use the same value you used for the prefix in the configuration 152 of your [incr Tcl/Tk] distribution. 153 154 ./configure --prefix=/your/install/path 155 156 The "configure" script generates a Makefile from the Makefile.in 157 template. 158 159 Also, as mentioned eariler, you may need to tell the [incr Widgets] 160 where the [incr Tcl] source is located. For example, if your toplevel 161 [incr Tcl] directory is located in /opt/tools/tcl/itcl3.2.1 and you 162 are building the [incr Widgets] in a directory other than this, then 163 you will need to use the following: 164 165 ./configure --prefix=/your/install/path \ 166 --with-itcl=/opt/tools/tcl/itcl3.2.1 167 168 4) Run the test suite: 169 170 make test 171 172 7) Install the [incr Widgets] man pages, demos, and script files. 173 174 make install 175 176 177 Acknowledgements 178------------------------------------------------------------------------------ 179 Thanks to Brett Schwarz for a ton of work done on the new [incr Widgets] 180 web site, http://incrtcl.sourceforge.net/iwidgets. 181 182 Thanks to the original develment team, comprised of Mark Ulferts, Sue 183 Yockey, Bret Schuhmacher, Alfredo Jahn, John Sigler, and Bill Scott. Also 184 thanks to Mark Harrison for his influence, confidence, and ideas. 185 186 Thanks also to the new set of contributors which include John Tucker, 187 Mitch Gorman, John Reekie, Alfredo Jahn, Ken Copeland, Tako Schotanus, 188 Tony Parent and Michael McLennan 189 190 Thanks to Michael McLennan, creator of [incr Tcl] and [incr Tk], for the 191 beta copies, training, assistance, and his infectious enthusiasm. 192 193 Thanks to DSC Communications for picking up the copyright and supporting 194 the public release of this software. 195 196 Thanks to John P. Davis for creating the [incr Widgets] "Flaming Toaster" 197 logo which can be seen at http://www.tcltk.com/iwidgets 198 199 Thanks to WebNet Technologies for their assistance is designing the [incr 200 Widgets] web site, as well as hosting it. 201 202 Special thanks to my wife Karen for supporting this effort and to our two 203 girls, Katelyn and Bailey, who occasionally shared the PC with me. Also 204 thanks to my Discman and its relentless power supply as well as my rock 205 and roll CD collection. No music, no software. 206 207-- 208 ____________________________________________________________________________ 209 _/_/ _/_/ _/ _/ _/ Mark L. Ulferts 210 _/ _/ _/ _/ _/ _/ _/ ulferts@swbell.net 211 _/ _/_/ _/ _/ _/ _/ mulferts@austin.dsccc.com 212 _/ _/ _/ _/ _/_/_/ _/ _/_/_/_/ _/ DSC Communications Corp, Austin Texas 213