The Porthole Widget
Author: Roland Krause 2002, roland_krause@freenet.de
Description: Documentation to XawPlus

### _________________________________________________________XawPlus

### The Porthole Widget

Application Header file Class Header file Class Class Name Superclass | <X11/XawPlus/Porthole.h> <X11/XawPlus/PortholeP.h> portholeWidgetClass Porthole Composite

The Porthole widget provides geometry management of a list of arbitrary widgets, only one of which may be managed at any particular time. The managed child widget is reparented within the porthole and is moved around by the application (typically under the control of a Panner widget).

### Differences between Xaw and XawPlus

The default background color is grey75.

### Resources

When creating a Porthole widget instance, the following resources are retrieved from the argument list of XtSetValues() or XtVaSetValues() or from the resource database:

Name | Class | Type | Default Value
OBJECT: |  |  |
destroyCallback | Callback | Pointer | NULL
RECTANGLE: |  |  |
borderWidth height sensitive width x y | BorderWidth Height Sensitive Width Position Position | Dimension Dimension Boolean Dimension Position Position | 1 see Layout Semantics True see Layout Semantics 0 0
CORE: |  |  |
border background mappedWhenManaged | BorderColor Background MappedWhenManaged | Pixel Pixel Boolean | XtDefaultForeground grey75 True
PORTHOLE: |  |  |
reportCallback | ReportCallback | Pointer | NULL

reportCallback | A list of functions to invoke whenever the managed child widget changes size or position.

### Layout Semantics

The Porthole widget allows its managed child to request any size that is as large or larger than the Porthole itself and any location so long as the child still obscures all of the Porthole. This widget typically is used together with a Panner widget.

### Porthole Callbacks

The functions registered on the reportCallback list are invoked whenever the managed child changes size or position:

> void ReportProc(porthole, client_data, report)
> Widget porthole;
> XtPointer client_data;
> XtPointer report;

> porthole | Specifies the Porthole widget.
> client_data | Specifies the client data.
> report | Specifies a pointer to an XawPannerReport structure containing the location and size of the slider and the size of the canvas.

### XawPlus_________________________________________________________