Google

SECTION 2.10 - THE POP-UP FRAME VIEW-OBJECT ROUTINES

2.10.1 INTRODUCTION

The popup frame view-object is just an empty 'top level' window on which other view-objects may be laid out. As it is a popup window, there will be no added frame etc. by the window manager. The window will have an external black border 1 pixel thick and, optionally, an internal coloured border 4 pixels thick. A popup window cannot be moved or resized and should normally only be used in an essentially temporary fashion. (Note: Only one such popup frame must be used at a time; Pointer and Keyboard events are reported only to the client creating the popup frame while it is displayed)

The following sets of routines are available:

Creating and Handling a Pop-up Frame View-Object

2.10.2 CREATING AND HANDLING A POP-UP FRAME VIEW-OBJECT

2.10.2.1 Introduction

The following routines are available:

Create a popup frame view-object - xdl_popup_frame

2.10.2.2 Create a popup frame view-object - xdl_popup_frame

The routine xdl_popup_frame (xdlf_popup_frame) is used to create a new popup frame view-object. The position, size and border requirements of the frame are specified.
 
Fortran call:
 
         CALL XDLF_POPUP_FRAME (IVH, IXROOT, IYROOT, IWIDTH, IHEIGHT, 
        +                      IBRDR)
 
Parameters:
 
IVH        (R)  View-object handle (see vh)
IXROOT     (R)  X (rootwindow) position for frame (top left)
                (see xroot)
IYROOT     (R)  Y (rootwindow) position for frame (top left)
                (see yroot)
IWIDTH     (R)  Frame width (including internal border) 
                (see width)
IHEIGHT    (R)  Frame height (including internal border)
                (see height)
IBRDR      (R)  =0 No internal coloured (just an external 1 
                   pixel width black border)
                =1 Internal Red border (4 pixels wide)
                =2 Internal Yellow border (4 pixels wide)
                =3 Internal Green border (4 pixels wide)
                =4 Internal Cyan border (4 pixels wide)
                =5 Internal Blue border (4 pixels wide)
                   (preferred option if frame used for
                    a temporary menu, parameter table etc.)
                =6 Internal Magenta border (4 pixels wide)
                   (see brd_colr)
 
'C' call:
 
void xdl_popup_frame (vh, xroot, yroot, width, height, brdr_colr)
 
Parameters:
 
int vh;             /* User selected view-object handle (R)*/
int xroot;          /* x position of the popup frame (wrt Root)
                       (May be adjusted to get frame within display) (R)*/
int yroot;          /* y position of the popup frame (wrt Root)
                       (May be adjusted to get frame within display) (R)*/
int width;          /* Frame width (including any internal border but
                       excluding the external border of width 1 pixel)
                       (R)*/
int height;         /* Frame height (including any internal border but
                       excluding the external border of height 1 pixel)
                       (R)*/
int brdr_colr;      /* =0 No internal coloured (just an external 1 
                          pixel width black border)
                       =1 Internal Red border (4 pixels wide)
                       =2 Internal Yellow border (4 pixels wide)
                       =3 Internal Green border (4 pixels wide)
                       =4 Internal Cyan border (4 pixels wide)
                       =5 Internal Blue border (4 pixels wide)
                          (preferred option if frame used for
                           a temporary menu, parameter table etc.)
                       =6 Internal Magenta border (4 pixels wide) (R)*/

Return:  None



John W. Campbell
CCLRC Daresbury Laboratory
Last update 4 Feb 1998