PrintShell widget

The PrintShell widget provides a connection to the X11R6 Xp (X Print) extensions. It uses the expose methods associated with its hierarchy to draw its contents.

The widget is programmed through callbacks; these control pagination of the output to the Print Server.

What gets drawn depends on resources applied to the widget hierarchy underneath the PrintShell. For example, if it is a screen shot of the hierarchy you have in mind, borders and shadows should be set appropriately. On the other hand, if it is the contents of the widgets which is of interest (for example, you wish to print the contents of a Text component), then setting the borders and shadows of the Text to white would be appropriate (assuming that the paper tray contains white paper) so that the widget itself is not visible in the output, but the data is.

For more information on the PrintShell widget, consult XmPrintShell(3X) or a suitable Motif 2.1 Programming manual.

Notes

The PrintShell widget is not available in all platform releases of the Motif 2.1 widget set. Sun/Solaris systems remove this widget from the public library. For this reason, the PrintShell widget has been added to the "stop list".

The PrintShell has the unusual property that if connection could not be established to the X Print Server, it behaves exactly like an Application Shell. If it does connect, it prints its widget hierarchy through to the print server. This has a surprising side effect: if the widget is working correctly, there is no dynamic display for the hierarchy associated with the widget, because all expose methods draw to the print server and not the Display. If the widget is not working correctly, there is a dynamic display for the hierarchy.

See also: