The Motif VT Widget system and applications VERSION 1.3 April 14th, 1997 Author: Bruce M. Corwin This is the third publicly available distribution of the VT Motif widget. The VT widget is approximately a VT320 level emulation minus REGIS and soft character loading but having ANSI color escape sequences some VT241 color control and many unique additional features. It is a composite widget with the ability to generate child widgets that scroll and output like characters. Graphics display in the form of XBM (Motif 1.2 and greater) or XPM (Motif 2.0 and greater). These graphics can be sent to the VT widget over a normal terminal communications link (such as telnet) as well. The blinking attribute IS supported as well as the double width and double height line attributes (Unlike many other X emulators). The support for double width and double height is not as complete as it could be but should be sufficent for most applications. There is also support for dragging strings to the widget from drag and drop type widgets like lists and labels. There is full copying and pasting of text to and from the Motif clipboard. Graphics copying and pasting is not supported in this release. There is support for a fully configurable menu system similar to the .mwmrc or .twmrc type format. This menu system can be used to launch applications on the host you are logged into. For release 1.2 there are several improvements in how the Vt Widget is written. It now conforms to more standard methods of widget behavior and coding. Future movement in this direction is also expected. New features with Version 1.2 include keyboard scrolling of the screen data and hopefuly faster layout. Release 1.3 introduced more correct behavior for XmGadgets and for creating children programaticaly. Now programaticaly created children are managed the same way as children created by escape sequences. Escape sequences now exist to raise popup dialogs for errors, warnings, info, waiting and file selection. Finaly, there is new support for a color background pixmap being defined. In Motif 2.0 this allows color XPM to be placed behind the text of the display. Sadly, all these features come at a price. That price is performance. This issue is still being worked. A small sample API is provided for applications that run on the bterm application. This API accesses several of the unique capabilities such as child widget creation and control. This distribution currently runs on both the HPUX and Linux operating systems and will probably compile to one extent or the other for other operating systems with Motif 1.2 or above including Motif 2.0. To begin run xmkmf -a on the base directory and then type make. Then if every thing compiles correctly check the bin directory for two applications that use the VT widget and some other applications meant to run on a bterm. Here is a brief description of what all of the directories in this directory are: bin - Binary directory after full make has been performed. bterm - UIMX Xt application that is the full demonstration of the Vt Widget. This should be a very useful terminal emulation application. Check the doc directory for how to use bterm. config - Some useful configuration files for applications. design_ref - This is freely available design information that I found on the internet. You might find some of it interesting. doc - Documentation in HTML format. Please read this stuff. ftpterm - UIMX Xt application that is another demonstration of the Vt Widget. It is focussed upon providing a slightly automated interface to the ftp application. genesc - This is a simple application used to generate the screen.h source code file in the widget directory from a provided screen.dat file. include - Includes generated for the use of the Vt widget for applications. lib - The main libVt.a library resides here along with the libprc.a used in the bterm and ftpterm applications. man - Man pages for bterm, ftpterm and the XmVt widget. Please read these. misc - Various unsupported files. Rummage through here if you are interested in running bterm on a Sun or creating a communications application with the Vt widget. prc - This is a process control library. The mit.c and mit.h files were originaly part of xterm pty processing code. rtf - Documentation in RTF format. scripts - Various UNIX scripts that demonstrate various features of the Vt Widget. tests - Many files that show how many of the escape sequences are used. vls - This is the hyper-link ls command. Described as creepy by a co-worker. :-) vtclib - Feeble attempt at an API for utilizing the incomplete child Widget features of the Vt Widget. More a Proof of Concept than anything else. uimx - Within this directory you will find almost all of the customization changes that are needed to customize UIMX Version 2.9. The very important exceptions are the addition of the Vt class to the menu structure of the application and the changing of the Makefiles. You will need to review the method provided with the UIMX product for adding a new widget to the creation menus. These files are the hardest part in adding a widget to UIMX. widget - This is where the actual Vt Widget code resides. This one directory contains close to 18000 lines of code. Much of which is useful internal API flower boxes. Have fun, and be sure to read the documentation in the doc directory. Also, the source code has each function documented so check that out for details on how this thing works. There is a very extensive man page on the Widget itself in the man directory. Bruce Corwin April 14th, 1997 bmcorwin@unixmail.delcoelect.com