X-Designer Widget Integrations

X-Designer is pre-configured with the Motif widget set and can be extended
to support widgets from any other Xt toolkit in addition to the default set.
Widgets added to X-Designer are called user-defined widgets.
They appear in the X-Designer widget palette and users can create them,
set their resources and generate code for designs that include them.

We would particularly recommend Quest's XRT Widgets and the INT Widget sets.
For more information about them, see the
Quest's web site and
INT's web site.

Starting with X-Designer 5 you get full access to composite user-defined widgets, and
you can configure which abstract children of a widget are made
available to users.

X-Designer 7 requires that you have the Motif 2 version of a widget set before
you try and integrate it into X-Designer. Earlier versions of X-Designer require that you
use the Motif 1.2 version of the widgets. However you use the same version of the
integration files regardless of the version of Motif you are using.

X-Designer comes with a utility, xdconfig, which helps you provide the information X-Designer needs to support user-defined widgets. You specify which widgets you want to use and provide information about any nonstandard resource types defined by the widgets. xdconfig generates two C files that serve as a bridge between X-Designer and the user-defined widgets.

After generating the xdconfig files, you build a new version of X-Designer from the following components:

The X-Designer object file, xdesigner.o

Object files or archive libraries containing the added widgets

The code file generated by xdconfig

The config file generated by xdconfig

Bitmap files for widget icons (optional)

Pixmap files for widget icons (optional)

Handwritten code files containing any auxiliary functions (optional)

Icons are recommended but not required. Handwritten code is only required if you want to provide customized popup dialogs, or if you have widgets with special problems.

To help you get started, X-Designer is distributed with configuration files for a number of widget sets as described below.

User-Defined Widget Integration Files

Files to enable integration of the following widget sets are provided as part of the X-Designer distribution, in $XDROOT/user_widgets.

The very latest copies of these files can be downloaded using the links below.

To ensure that you are prompted to save the file, you may have to right click on the file name and then select 'Save Link As'.

All these kits are included with releases of X-Designer, except as follows:

The integration files are only guaranteed to work
with xdconfig from X-Designer 5.0 or later.
If you have an X-Designer 5, you are advised to make sure you have at least 5.0.3 because of problems with third party abstract widget handling code in earlier releases.

If for any reason you require a kit which must work with an earlier version of X-Designer we may be able to make available a kit compatible with your version please
contact us by using our
enquiry form or
otherwise.

The XRT kit has special instructions about X-Designer 4.6
- see the file README in the kit.

You should transfer the relevant compressed tar archive file to your system, into /tmp for example, change directory to $XDROOT/user_widgets and then, for example:

uncompress -c /tmp/Athena.tar.Z | tar -xvfp -

The files will be placed in the directory Athena, replacing any of the same name that are already there.
Obviously, similarly for other sets.

The Makefiles in these sets are for Solaris 2, so if you are running on a different platform you will have to change the Makefile accordingly - just change which lines are commented out.

Widget Integration Kits

To ensure that you are prompted to save the file, you may have to right click on the file name and then select 'Save Link As'.

Real-time graph widgets. For more information see the
XRT page on Quest's web site.
Quest took over Sitraka, formerly KL Group, the original XRT owners.See the note below for important information about XRT.

Note that it is only the files to enable the integration of the widgets into X-Designer that are provided; the actual widgets are not provided, except where specifically specified. Most of these widget sets are listed on motifdeveloper.com on the Widget Sets page.

Note that the Makefiles in these integration kit directories are set up for Solaris 2 - you will have to comment out the Solaris 2 parts and uncomment the parts for your operating environment, if different.

If you have versions of the widgets of later version than the above list, the kits provided should still work satisfactorily, although where the changes involve new widgets and non-standard resource types, you are advised to contact
contact us by using our
enquiry form or
otherwise
before embarking on a reintegration because a poorly specified new widget description can render the X-Designer/Third Party binary unstable, or result in wrong code generation.

X-Designer 7 requires that you have the Motif 2 version of a widget set before
you try and integrate it into X-Designer. Earlier versions of X-Designer require that you
use the Motif 1.2 version of the widgets. However you use the same version of the
integration files regardless of the version of Motif you are using.

There are some other widget set integration kits available, including some merged kits for combinations of the above. Again, if any of this gives you a problem please
contact us by using our
enquiry form or
otherwise.

A number of improvements have been made to the widget integration facilities in the latest releases of X-Designer to make it more robust. If you are not running this latest version of X-Designer and are having problems with Widget integration then we suggest that you upgrade. Please contact the sales desk of your X-Designer supplier for more information on how to get this. This upgrade will be free if you have a valid software support agreement or have only very recently purchased X-Designer.

Archives of various public domain widgets which have been debugged by IST primarily for use in conjunction with the integration kits and X-Designer are available as indicated above. IST provides these as is and makes no guarantee or warranty about them.

The full instructions for integrating widgets into X-Designer are in the X-Designer User's Guide. A quick reference guide is in the README file in $XDROOT/user_widgets.

Known Problems

Known problems with CDE Widgets

There are problems with some of the CDE widgets, when integrated into X-Designer, that can cause X-Designer to crash. Please report these problems to your CDE widget supplier.

Known problems with XRT integration

Use of "()"

XRT use "()" to represent list entry in some of their widgets. X-Designer uses "()" to show that the default value is to be used. Therefore if you enter data into an XRT widget that requires the format (1n,2n,3n...Xn) they will be ignored.

There is no workaround in the resource dialogs, but you can use a code prelude to explicitly set the resource that you are manipulating.

32/64 bit compatibility

XRT widgets come in both 32 and 64 bit versions - for example for XRT Vol 15 the 32 bit version of the widgets is on XRT Vol 15A and the 64 bit versions are on Vol 15B. If you are generating a 64 bit application you will need both versions of the XRT widgets.

Since X-Designer is a 32 bit application it must be integrated with the 32 bit version of the XRT widgets. This does not affect X-Designer's generated code in any way. You can still build a 64 bit application from the generated code as long as you have the correct Makefile configured in the Makefile Options dialog and the 64 bit version of the XRT widgets.

You can carry out the integration on a 64 bit machine, that is of no consequence. However you must perform the integration against the 32 bit version of the widgets.

To build a 64 bit application you must build the X-Designer generated code with the 64 bit version of the XRT widgets. Similarly to build a 32 bit application you must build the X-Designer generated code with the 32 bit version of the XRT widgets.