Others are merely containers for other widgets. Some widgets are for output only and do not react to pointer or keyboard input. Others change their display in response to input and can invoke functions that an application has attached to them. Some widgets in the Toolkit have variants, called gadgets . Gadgets have the same general appearance as their widget counterparts but have restricted capabilities.
Gadgets use fewer system resources and can offer improved application performance.
For example, gadgets do not have an associated window, thus eliminating the processing involved with creating a window. On the other hand, gadgets do not provide access to all the attributes supported by their widget counterparts. The characteristics of each widget For example, you specify the height, width, and position of a widget. These widgets provide the basic input and output capabilities of a user interface, such as displaying text or graphics, allowing text editing, and enabling user input to your application. The widgets that provide these functions are the XmLabel, XmPushButton, XmToggleButton, XmScale, XmScrollBar, and XmText widgets.