[OpenVMS documentation]
[Site home] [Send comments] [Help with this site] [How to order documentation] [OpenVMS site] [Compaq site]
Updated: 11 December 1998

DEC Text Processing Utility Reference Manual


Previous Contents Index


GET_INFO (mouse_event_keyword)


Format

:= GET_INFO (mouse_event_keyword, )


Parameters

"mouse_button"

Returns an integer that is the number of the mouse button specified with a mouse event keyword.

Table 2-4 lists the valid keywords for the first parameter when you use "mouse_button" as the second parameter.

Table 2-4 DECTPU Keywords Representing Mouse Events
M1UP M2UP M3UP M4UP M5UP
M1DOWN M2DOWN M3DOWN M4DOWN M5DOWN
M1DRAG M2DRAG M3DRAG M4DRAG M5DRAG
M1CLICK M2CLICK M3CLICK M4CLICK M5CLICK
M1CLICK2 M2CLICK2 M3CLICK2 M4CLICK2 M5CLICK2
M1CLICK3 M2CLICK3 M3CLICK3 M4CLICK3 M5CLICK3
M1CLICK4 M2CLICK4 M3CLICK4 M4CLICK4 M5CLICK4
M1CLICK5 M2CLICK5 M3CLICK5 M4CLICK5 M5CLICK5

"window"

Returns the window in which the downstroke occurred that started the current drag operation. Returns 0 if no drag operation is in progress for the specified mouse button when the built-in is executed.

The valid keywords for the first parameter when you use "window" as the second parameter are M1DOWN, M2DOWN, M3DOWN, M4DOWN, and M5DOWN.

Return Values


integer

Returns requested information about the integer you specify.

window

Returns requested information about the window you specify.


Description

The GET_INFO (mouse_event_keyword) procedure returns information about a mouse event. A mouse_event_keyword is a keyword that represents a single click, multiple clicks, upstroke, downstroke, or drag of a mouse button.

For general information about using all forms of GET_INFO built-in procedures, see the description of GET_INFO.


Examples

In the following example, the statement causes DECTPU to assign the value 3 to the variable x:
#1

x := GET_INFO (M3CLICK2, "mouse_button"); 
 
      

In the following example, when bound to M1DRAG, that procedure is called by DECTPU to respond to a drag event by checking whether you have dragged the mouse across window boundaries; if you have, the procedure displays a message. If not, the procedure outputs a message that you are dragging the mouse.

#2

PROCEDURE sample_m1_drag 
 
LOCAL the_window, 
      new_window, 
      column, 
      row, 
      temp; 
 
the_window := GET_INFO (M1DOWN, "window"); 
IF the_window = 0 
THEN 
    RETURN (FALSE) 
ENDIF; 
 
LOCATE_MOUSE (new_window, column, row); 
 
IF the_window <> new_window 
THEN 
    MESSAGE ("Invalid drag of pointer across window boundaries."); 
ENDIF; 
MESSAGE ("Dragging the mouse..."); 
ENDPROCEDURE; 
      


GET_INFO (PROCEDURES)


Format

integer := GET_INFO (PROCEDURES, , string)


Parameters

"defined"

Returns an integer (1 or 0) that indicates whether the specified procedure is user defined.

"minimum_parameters"

Returns an integer that is the minimum number of parameters required for the specified user-defined procedure.

"maximum_parameters"

Returns an integer that is the maximum number of parameters required for the specified user-defined procedure.

string

A string that is the name of the procedure about which you want information.

Return Value


Returns the requested information about the integer you specify.

Description

The GET_INFO (PROCEDURES) procedure returns information about a specified procedure. GET_INFO (PROCEDURES) takes a string as a third parameter. The string specifies the name of the procedure about which you are requesting information.

For general information about using all forms of GET_INFO built-in procedures, see the description of GET_INFO.


GET_INFO (PROCESS)


Format

process := GET_INFO (PROCESS, )


Parameters

"current"

Returns the current process in DECTPU's internal list of processes. You can use GET_INFO (PROCESS, "current") only after you have used GET_INFO (PROCESS, "first") or GET_INFO (PROCESS, "last"). The built-in returns 0 if you do not use these GET_INFO built-ins in the correct order.

"first"

Returns the first process in DECTPU's internal list of processes; returns 0 if there is none.

"last"

Returns the last process in DECTPU's internal list of processes; returns 0 if there is none.

"next"

Returns the next process in DECTPU's internal list of processes; returns 0 if there are no more processes. Use "first" before "next".

"previous"

Returns the preceding process in DECTPU's internal list of processes; returns 0 if there is no previous process. Use "last" before "previous".

Return Value


Returns the requested information about the process you specify.

Description

The GET_INFO (PROCESS) procedure returns a specified process in DECTPU's internal list of processes.

For general information about using all forms of GET_INFO built-in procedures, see the description of GET_INFO.


GET_INFO (process_variable)


Format

:= GET_INFO (process_variable, )


Parameters

"buffer"

Returns the buffer associated with the process.

"pid"

Returns an integer that is the process identification number.

Return Values


buffer

Returns requested information about the buffer you specify.

integer

Returns requested information about the integer you specify.


Description

The GET_INFO (process_variable) procedure returns information about a specified process.

For general information about using all forms of GET_INFO built-in procedures, see the description of GET_INFO.


GET_INFO (range_variable)


Format

:= GET_INFO (range_variable, )


Parameters

"buffer"

Returns the buffer in which the range is located.

"unmodifiable_records"

Returns 1 if the specified range contains one or more unmodifiable records; returns 0 if no unmodifiable records are present in the specified range.

"video"

Returns a keyword that is the video attribute of the range.

Return Values


buffer

Returns requested information about the buffer you specify.

keyword

Returns requested information about the keyword you specify.


Description

The GET_INFO (range_variable) procedure returns information about a specified range.

For general information about using all forms of GET_INFO built-in procedures, see the description of GET_INFO.


GET_INFO (SCREEN)


Format

:= GET_INFO (SCREEN,

)


Parameters

"active_area"

Returns an array that contains information on the location and dimensions of the application's active area; returns the integer 0 if there is no active area. The active area is the region in a window in which DECTPU ignores movements of the pointer cursor for purposes of distinguishing clicks from drags. When you press down a mouse button, DECTPU interprets the event as a click if the upstroke occurs in the active area with the downstroke. If the upstroke occurs outside the active area, DECTPU interprets the event as a drag operation.

A DECTPU layered application can have only one active area at a time, even if the application has more than one window visible on the screen. An active area is valid only if you are pressing a mouse button. The default active area occupies one character cell. By default, the active area is located on the character cell pointed to by the cursor.

For information on mouse button clicks, which are related to the concept of an active area, see the OSF/Motif Style Guide.

GET_INFO (SCREEN, "active_area") returns five pieces of information about the active area in integer-indexed elements of the returned array. You need not use the CREATE_ARRAY built-in procedure before using GET_INFO (SCREEN, "active_area"); DECTPU assigns a properly structured array to the return variable you specify.

The structure of the array is as follows:
Array Element Contents
array {1} Window that contains the active area
array {2} Column that forms the leftmost edge of the active area
array {3} Row that forms the top edge of the active area
array {4} Width of the active area, expressed in columns
array {5} Height of the active area, expressed in rows

"ansi_crt"

Returns an integer (1 or 0) that indicates whether the terminal is an ANSI_CRT.

"auto_repeat"

Returns an integer (1 or 0) that indicates whether the terminal's autorepeat feature is on.

"avo"

Returns an integer (1 or 0) that indicates whether the ADVANCED_VIDEO attribute has been set for the terminal.

"client_message"

Returns a keyword that indicates whether DECTPU has received a KILL_SELECTION client message or a STUFF_SELECTION client message. If the call is used when there is no current client message, the integer 0 is returned.

GET_INFO (SCREEN, "client_message") is used in a DECTPU layered or EVE layered application's client message routine. This routine provides the application's response to a client message received from another application.

GET_INFO (SCREEN, "client_message") returns the KILL_SELECTION keyword when you are copying the primary global selection between DECwindows applications.

GET_INFO (SCREEN, "client_message") returns the STUFF_SELECTION keyword when you are copying the secondary global selection between DECwindows applications. For more information, see SEND_CLIENT_MESSAGE.

"client_message_routine"

Returns the program or learn sequence designated as an application's client message action routine; returns 0 if none is designated.

"cross_window_bounds"

Returns an integer (1 or 0) that indicates whether the CURSOR_VERTICAL built-in procedure causes the cursor to cross a window boundary if the cursor is at the top or bottom of the window.

"current_column"

Returns an integer that is the number of the current column.

"current_row"

Returns an integer that is the number of the current row.

"dec_crt"

Returns an integer (1 or 0) that indicates whether the terminal is a DEC_CRT. For more information on this terminal characteristic, see the SET TERMINAL command in your VMS overview documentation.

"dec_crt2"

Returns an integer (1 or 0) that indicates whether the terminal is a DEC_CRT2. For more information on this terminal characteristic, see the SET TERMINAL command in your VMS overview documentation.

"dec_crt3"

Returns an integer (1 or 0) that indicates whether the terminal is a DEC_CRT3. For more information on this terminal characteristic, see the SET TERMINAL command in your VMS overview documentation.

"dec_crt4"

Returns an integer (1 or 0) that indicates whether the terminal is a DEC_CRT4. For more information on this terminal characteristic, see the SET TERMINAL command in your VMS overview documentation.

"decwindows"

Returns 1 if your system is running the DECwindows Motif updater version of DECTPU. Returns 0 if you are using the character-cell updater. For more information about the DECwindows version of DECTPU, see the Guide to the DEC Text Processing Utility.

"default_file"

Returns the name of the X resource file merged into the display's database during editor initialization or by SET (DEFAULT_FILE).

"detached_action"

Returns the current detached action routine. If no such routine is designated, returns the UNSPECIFIED keyword.

"detached_reason"

Returns a bit-encoded integer indicating which of the five possible detached states the cursor is in.

Digital recommends that you use the DECTPU predefined constants rather than the actual integers to refer to the reasons for detachment. Table 2-5 shows the correspondence of constants, integers, and reasons.

Table 2-5 Detached Cursor Flag Constants
Constant Value Reason
TPU$K_OFF_LEFT 1 The editing point is off the left side of the current window.
TPU$K_OFF_RIGHT 2 The editing point is off the right side of the current window.
TPU$K_INVISIBLE 4 The editing point is on a record that is invisible in the current window.
TPU$K_DISJOINT 8 The current buffer is not mapped to the current window.
TPU$K_UNMAPPED 16 No current window exists.
TPU$K_NO_UPDATE 32 The current window is a no-update window.

You can set TPU$K_INVISIBLE in combination with either the TPU$K_OFF_LEFT or TPU$K_OFF_RIGHT flags.

You can set TPU$K_NO_UPDATE in conjunction with any other detached reason, with the exception of TPU$K_UNMAPPED. Use of TPU$K_UNMAPPED is a detached cursor situation because, with its use, the cursor does not accurately reflect the editing point within the current buffer. Applications that use "no_update" windows should trap the TPU$K_UNMAPPED detached cursor reason, and position to a normal window. EVE traps this condition in its detached cursor action routine and sets its position to the topmost normal window.

"edit_mode"

Returns an integer (1 or 0) that indicates whether the terminal is set to edit mode.

"eightbit"

Returns an integer (1 or 0) that indicates whether the terminal uses 8-bit characters.

"event"

Use with DECwindows only.

When you use "event" as the second parameter, you must specify the GLOBAL_SELECT keyword as the third parameter. GLOBAL_SELECT indicates that GET_INFO is to supply information about a global selection.

If called from within a global selection grab or ungrab routine, GET_INFO (SCREEN, "event", GLOBAL_SELECT) identifies the global selection that was grabbed or lost. GET_INFO (SCREEN, "event", GLOBAL_SELECT) returns a keyword if the global selection was the primary or secondary selection. The built-in returns a string naming the global selection if the grab or ungrab involves a global selection other than the primary or secondary selection.

If called from within a routine that responds to requests for information about a global selection, GET_INFO (SCREEN, "event", GLOBAL_SELECT) returns an array. The array contains the information an application needs to respond to the request for information about the global selection. The array contains the following information:
array {1} The PRIMARY keyword, the SECONDARY keyword, or a string. This element identifies the global selection about which information was requested.
array {2} A string. This element identifies the global selection property about which information has been requested.

The GET_INFO (SCREEN, "event") built-in returns 0 if the built-in is not responding to a grab, an ungrab, or a selection information request.

For more information about grabbing and ungrabbing a global selection, see the VMS DECwindows Guide to Application Programming.

"first_input"

Use with DECwindows only.

Returns integer 1 if DECTPU has received its first key or button event; otherwise returns 0.

"first_input_routine"

Use with DECwindows only.

Returns the program or learn sequence that implements the application's first input action routine. Returns 0 if no input action routine is set.

"global_select"

Use with DECwindows only.

Returns the integer 1 if DECTPU currently owns the specified global selection; returns 0 if it does not.

You must specify one of the following parameters as a third parameter to GET_INFO (SCREEN, "global_select"):
PRIMARY Keyword that directs DECTPU to get information on the primary global selection
SECONDARY Keyword that directs DECTPU to get information on the secondary global selection
selection_name String that identifies the global selection about which DECTPU is to get information

For more information about grabbing and ungrabbing a global selection, see the VMS DECwindows Guide to Application Programming.

"grab_routine"

Use with DECwindows only.

Returns the program or learn sequence designated as the application's global selection or input focus grab routine. Returns the integer 0 if the requested grab routine is not present.

You must specify one of the following keywords as a third parameter to GET_INFO (SCREEN, "grab_routine"):
GLOBAL_SELECT Keyword indicating that GET_INFO is to return the global selection grab routine
INPUT_FOCUS Keyword indicating that GET_INFO is to return the input focus grab routine

"icon_name"

Use with DECwindows only.

Returns the string used as the layered application's name in the DECwindows icon box.

"input_focus"

Use with DECwindows only.

Returns an integer (1 or 0) that indicates whether DECTPU currently owns the input focus. Input focus is the ability to process user input from the keyboard.

"jump_scroll"

Returns an integer (1 or 0) that indicates whether the SET (SCROLLING, JUMP) built-in procedure has been used to direct DECTPU to use the JUMP mode of scrolling (that is, to perform all currently specified scrolling before repainting the screen).

"length"

Returns an integer that is the current length of the screen (in rows).

"line_editing"

Returns information that indicates whether you are using the insert or overstrike method of line editing; returns 0 if you are using neither method. In DECwindows DECTPU, this parameter always returns 0.

"motif"

Returns 1 if DECTPU is using the VMS Motif screen updater TPU$MOTIFSHR; returns 0 if any other screen updater is in use.

"mouse"

Returns an integer (1 or 0) that indicates whether DECTPU's mouse support capability is turned on.

"new_length"

Use with DECwindows only.

Returns an integer that is the length (in rows) of the screen after the resize action routine is executed.

Resize action routines should use the length returned by GET_INFO (SCREEN, "new_length") to determine the length of their windows. If the call is made outside a resize action routine, this length is the same as the current length of the screen.

"new_width"

Use with DECwindows only.

Returns an integer that is the width (in columns) of the screen after the resize action routine is executed.

Resize action routines should use the length returned by GET_INFO (SCREEN, "new_width") to determine the width of their windows. If the call is made outside a resize action routine, this width is the same as the current width of the screen.

"old_length"

Use with DECwindows only.

Returns an integer that is the length (in rows) of the screen before the most recent resize event.

The "old_length" value is initially set to the length of the screen at startup. This value is reset after DECTPU processes a resize event and before DECTPU executes the resize action routine.

"old_width"

Use with DECwindows only.

Returns the width (in columns) of the screen before the most recent resize event.

The "old_width" value is initially set to the width of the screen at startup. This value is reset after DECTPU processes a resize event and before DECTPU executes the resize action routine.

"original_length"

Returns an integer that is the number of lines the screen had when DECTPU was invoked.

"original_width"

Returns an integer that is the width of the screen when DECTPU was invoked.

"pixel_length"

Use with DECwindows only.

Returns the length (height) of the current display device in pixels. If you use this parameter on a character-cell terminal, you get the error message TPU$_REQUIRESDECW.

"pixel_width"

Use with DECwindows only.


Previous Next Contents Index

[Site home] [Send comments] [Help with this site] [How to order documentation] [OpenVMS site] [Compaq site]
[OpenVMS documentation]

Copyright © Compaq Computer Corporation 1998. All rights reserved.

Legal
6020PRO_013.HTML