The panel's window is created disabled; that is, it is not visible.
PPB-Fill-Attribute | pic x. |
PPB-Fill-Character | pic x. |
PPB-First-Visible-Col | pic 9(4) comp-x. |
PPB-First-Visible-Row | pic 9(4) comp-x. |
PPB-Panel-Height | pic 9(4) comp-x. |
PPB-Panel-ID | pic 9(4) comp |
PPB-Panel-Start-Column | pic 9(4) comp-x. |
PPB-Panel-Start-Row | pic 9(4) comp-x. |
PPB-Panel-Width | pic 9(4) comp-x. |
PPB-Update-Mask | pic x. |
PPB-Visible-Height | pic 9(4) comp-x. |
PPB-Visible-Width | pic 9(4) comp-x. |
PPB-Fill-Attribute | The attribute to be used for the shadow. |
PPB-Fill-Character | The character to be used as the shadow. |
PPB-First-Visible-Col | Positions the window horizontally within the panel. A value of 0 indicates that the left-hand edge of the window is positioned on the left-hand edge of the panel. |
PPB-First-Visible-Row | Positions the window vertically within the panel. A value of 0 indicates that the top of the window is positioned on the top edge of the panel. |
PPB-Panel-Height | The number of rows of text in the panel to be created. |
PPB-Panel-Start-Column | Positions the panel horizontally on the screen. A value of 0 indicates that the left-hand edge of the panel is positioned on the left-hand edge of the screen. |
PPB-Panel-Start-Row | Positions the panel vertically on the screen. A value of 0 indicates that the top of the panel is positioned on the top edge of the screen. |
PPB-Panel-Width | The number of columns of text in the panel to be created. |
PPB-Update-Mask | The width of the shadow to be used. Zero indicates a width of one character, otherwise the shadow is two characters wide. |
PPB-Visible-Height | The number of rows of text in the visible window. |
PPB-Visible-Width | The number of columns of text in the visible window. |
PPB-Panel-ID | The identifying handle of the created panel. You should copy this value into a data item in the Working-Storage Section of your program and specify it when using any functions that act on this panel. |
This example creates a panel that is 25 characters wide by 8 lines high. This panel starts on line 1, column 1 of the screen. The window into this panel starts on the first line and first column of the panel. This window is 25 characters wide by 6 rows deep.
The shadowing on the panel is one character wide, and is seen as a gray band.
* Panel size is 20 characters wide by 15 lines move 25 to ppb-panel-width. move 8 to ppb-panel-height. * The window starts on screen line 1, col 1. Remember that * PPB-Panel-Start-Column and PPB-Panel-Start-Row specify a * screen position, where 0,0 is the top left corner of the * screen. move 0 to ppb-panel-start-row. move 0 to ppb-panel-start-column. * The window into the panel is 20 char wide by 10 lines. move 25 to ppb-visible-width. move 6 to ppb-visible-height. * The window starts on the first line and column of the panel * Remember that 0,0 is the top left corner of the panel. move 0 to ppb-first-visible-row. move 0 to ppb-first-visible-col. * Specify the shadowing for the panel move 0 to ppb-update-mask move space to ppb-fill-character move gray to ppb-fill-attribute * Create the panel. It is initially disabled (invisible). move pf-create-panel to ppb-function. call "PANELS" using panels-parameter-block. if ppb-status not = zero * (code to abort) ... * Save the panel identifier. move ppb-panel-id to ws-save-panel-id.
Comments:
Panels allocates an area of memory for the new panel based on its size. The number of bytes of memory used by a shadowed panel is determined as follows:
4 * PPB-Panel-Height * PPB-Panel-Width
The size of the new panel can be larger than the screen, but you must observe the following:
Failure to observe either of these limits results in Panels error code 6 being returned.
Once you create a panel with a shadow, you can change any of its variables except its width, height, and shadow details. You do this using PF-Shift-Panel. The newly created panel is filled with the current backdrop character and attribute. The shadowing effect on a shadowed panel is not transparent.