------------------------------------------------------- Open Motif 2.2.1 Release Notes The Open Group and Integrated Computer Solutions This document provides Release notes for Open Motif 2.2.1. This contains information on what is new in Open Motif 2.2.1 Please see the COPYRIGHT.MOTIF file included with this release. Introduction This document and accompanying text files contain important information. Please read them carefully before starting the build and installation procedures. There are two ways to build OpenMotif: (Imake and AutoTools) IF you are using Imake please read INSTALL.imake for notes on how to build and install this product using Imake. Please see the file INSTALL.configure on how to build and install this product using the autoconf tools. This method is not yet supported and doesn't always work. The recommended build method is still using Imake. 1 What is Open Motif 2.2 Open Motif is the freely available source code distribution for a user interface component toolkit. Open Motif is built on top of the standard X Toolkit(Xt) and X11 libraries. 1.1 Overview of Open Motif Open Motif 2.2 is an updated version of 2.1. Any applications built against a previous 2.X release of Open Motif will be compatible with this release. This is a source code release. After downloading the distribution, it will need to be unpacked and compiled. The distribution contains the following items: libXm source code and include files Open Motif reference documentation (man pages) Utility libraries Demo programs 2 What is unchanged in Open Motif 2.2 This is an update release, with alls of the existing functional- ity (widgets, convenience functions, resources, etc) unchanged. There have been no widgets removed from the set, and several have been added. 3 What is new in Open Motif 2.2 The major new functionality in 2.2 is the addition of ten new widgets to the existing toolkit. These widgets expand Motif's capabilities in several areas, including geometry management, resource specification, and user interaction. Open Motif 2.2 also adds in user-defined "ToolTips" to all widgets that are a subclass of XmPrimitive. Any widget that is a child of a VendorShell gains this functionality. All libraries used in this release are compatible with previous Motif 2.X releases. However, applications or widgets that access internal Motif structures may require a recompile. See Section 7 for details. 3.1 ToolTips All widgets in Open Motif that are subclassed from XmPrimitive or XmGadget support the ability to display user-defined "ToolTips", small labels that appear in their own shell over the designated widget. By setting the XmtoolTipEnable resource on the main application shell (or any subclass of VendorShell), each child widget gains the ability to show a ToolTip. The text for each widget's tooltip is contained in the XmtoolTipString resource for that widget. 3.2 New Widgets Open Motif 2.2 adds ten new widgets to the toolkit. 3.2.1 XmButtonBox The XmRowColumn widget is often used as a general layout manager, when in actuality it was designed for menu support. As a result, application programmers often end up fighting with the widget to make it behave as they want. To rectify this, the XmButtonBox was created to manage children (usually buttons) specifically in a single row or column layout. 3.2.2 XmColorSelector This widget lets an end user choose a color using RGB sliders or by specifying a color name taken from the RBG database. The selected color is displayed dynamically. 3.2.3 XmColumn The XmColumn widget displays its children stacked in a column, each with an optional associated label. The labels appear in one column and the children in another. This greatly simplifies the creation of entry forms. 3.2.4 XmDataField A subclass of XmTextField, the XmDataField widget handles display and entry of data as text. In addition to the normal functionality of XmTextField, it adds regular expression parsing and input validity checking. 3.2.5 XmExt18List The Extended Internationalized (I18N) List widget supports multiple columns, colored text, internationalized string, and pixmap display. The list can be scrolled horizontally or vertically. Additionally, it provides hooks for adding user-defined searching and sorting functionality. 3.2.6 XmFontSelector The XmFontSelector widget introduces a widget-based method for end users to dynamically specify an X Logical Font Description (XLFD) interactively. Font family, size, scaling, and encoding are all selectable, and the resulting font set is displayed. Non-XLFD fonts are also displayable through this widget. Wildcarding is also supported. 3.2.7 XmIconBox This widget lays out its children on a grid, forcing each child to be the same size. New cells are automatically added when it is resized. The location of each child widget is specified as an X and Y location on the grid. 3.2.8 XmIconButton Similar to the existing XmPushButton, the XmIconButton provides a selectable object that can simultaneously display both a label and a pixmap. It supports the same set of callbacks as PushButton does. 3.2.9 XmTabStack Designed to be a light-weight solution, the XmTabStack manages a group of widgets but only allows one child to be visible at a time. Children are selected by selected the associated tab field. Tabs can be configured to display on any side of the TabStack. 3.2.10 XmTree The XmTree widget, another new container, displays its children in a tree-like format, showing a virtual parent-child relationship. Portions of this hierarchy can be opened and closed dynamically by the user. 3.3 Autotool Build Process It is now possible to build Open Motif using the Autotools. Please see the file INSTALL.configure on how to build and install this product using the autoconf tools. The Autotools are distributed under the GPL (see http://www.gnu.org). In providing this alternative build process, several configurations files were pre-generated that are covered by the GPL. In addition, during the build process itself, several files may be generated that are also covered by the GPL. None of these files are linked into Open Motif itself. They are exclusively used in controlling the building of Open Motif. Consequently, their inclusion with this distribution does not effect the license under which Open Motif is distributed. The GPL Licensing FAQ: http://www.gnu.org/licenses/gpl-faq.html provides more details on this type of use. 4. Motif Distribution 4.1 Motif Source Tree The general layout of Open Motif is this: bitmaps/ Various XMB files clients/ mwm, uil, xmbind config/ configuration, make, and imake files demos/ various supported (and unsupported) demos doc/ man pages include/ included files for building and using Open Motif lib/ source files for the Open Motif libraries localized/ localization support tools/ WML support BUGREPORT template file for submitting bugs RELNOTES This file REAMDE.configure building/installation instructions using configure REAMDE.imake building/installation instructions using imake 4.2 Build Systems Open Motif 2.2 was built and tested on the following systems: Darwin (MacOS X) 1.3.7 FreeBSD 4.4 Linux 2.4 (Redhat 7.2) In all cases the vendor's supplied compiler was used. 4.3 OS Support The following platforms are supported operating systems: Darwin (MacOS X) 1.3.7 FreeBSD 4.4 Linux 2.4 Redhat 7.2 5 Filing Bug Reports If you find a reproducible bug in any of the Open Motif libraries or code, or an error in the documentation, please reference the BUGREPORT file and/or submit a bug report online at the Open Motif Development zone: http://bugs.motifzone.net The listing for the status of submitted bugs is maintained there. 6. Documentation For postscript and pdf documentation (users guides and reference manuals), see URL http://www.opengroup.org/openmotif/docs/ 7. User Widget Compatibility Note Some structures in existing widgets have been changed in OpenMotif 2.2. This can cause compatibility problems that require a recompile if your application accesses any of the internal data structures of Motif Widgets and does not use the correct XmField Macros. The most common situation for this problem is when your application uses internally developed widgets or widgets acquired from a third party. In this situation, please confirm that the widgets use the XmField widgets. See the Motif 2.1 Widget Writer's Guide (Section 14.2) for details. 8. Change Log 2.2.1 January 29, 2002 a. The Test directory that contained the automated tests was mentioned in the Release Notes but absent from source distribution. The reference in the Release Notes was removed. The Tests are still available from the CVS tree. b. Due to an oversight, imake support was not included in distribution. It was added back in this update. c. If an older version of Open Motif was installed, the Autoconf build would pick up the older #include files and fail. The Autoconf configuration files were updated to use the proper #include files. d. Formating errors in doc/man/man3/Makefile.am were corrected. e. The directory demos/unsupported/motifshell contained no source code but was mentioned in configure.in. The proper source code was placed in this directory. f. ToolTip.c and SlideC.c were included in config.h twice. The extra reference was removed. g. The demos for the new widgets were originally placed in the directory demos/programs/newwidgets. To maintain consistency, they were moved to demos/programs. h. The Releases Notes specified the incorrect resource names for enabling tooltips and specifying the string. These typos were corrected. i. Compatibility note for user developed widgets was added to Release Notes. 2.2.0 January 28, 2002 Initial Release