A SERVICE OF

logo

332 Chapter 15: Creating a Custom iTool Widget Interface
About Custom iTool Widget Interfaces iTool Developer’s Guide
About Custom iTool Widget Interfaces
The standard interface to the iTools included with IDL is constructed from IDL
widgets, using a number of special compound widgets designed to work with the
iTool system. Other chapters in this section of the iTool Developer’s Guide describe
how to use the user interface display mechanisms of the iTool system to add
functionality to your own iTools within the constraints of the standard iTool
interface. This chapter describes how to create a hybrid iTool interface using both
iTool compound widgets and “traditional” IDL widgets.
Before beginning the process of creating a new IDL widget-based user interface that
includes iTool components, you should take the following points into consideration:
You can use a custom iTool user interface to mix iTool components with
traditional IDL widgets, but you will still be using the iTool system. This means
that the custom interface you create is the interface to an iTool, not simply to a
collection of widgets. You may need to create an iTool class definition for your
tool, register iTool components, and handle user interface callbacks.
The mechanisms available for interacting with iTool components such as the
iTool draw window from outside the iTools framework are more limited (and
in some cases more cumbersome) than those available if you write iTool
framework code.
While the standard interface to the iTools uses IDL widgets, the iTools
framework and the standard iTools are designed in such a way that a non-
widget iTool interface (e.g. a Java or web-based interface) could be created
and the standard iTools would work seamlessly with the new interface.
Custom iTool interfaces that rely on traditional IDL widgets will only function
in environments that support the display of IDL widgets.
Why Create a New Widget Interface?
In most cases, you will be able to extend the iTool system to include your own
functionality without modifying the standard iTool user interface. You can create and
register new operations, for example, without writing any interface code at all. If your
application requires extra interface elements not present in the standard interface, you
can include them in a user interface panel associated with your tool. So why create a
new interface using IDL widgets? The following are two possible reasons to create a
custom interface:
You are updating an existing application — You may have an existing widget
application that uses a traditional draw widget to display visualizations. Replacing