Happens while the user is resizing a window. By handling this event, you can monitor the size and position of the drag rectangle and, if needed, change its size or position.


Args

ARG(1) indicates which edge(s) of the window are being moved by the user. It is one of the following values:

Value Meaning
1 Left edge.
2 Right edge.
3 Top edge.
4 Top-left corner.
5 Top-right corner.
6 Bottom edge.
7 Bottom-left corner.
8 Bottom-right corner.

ARG(2) is the address of a RECT struct. You may change the values of this RECT to change the size of the drag rectangle. But you must use CONVERTDATA to convert the C struct to a REXX stem variable, and then after making any changes, use CONVERTDATA to convert it back to a C struct.


Notes

/* Convert C struct to REXX stem variable named MyRect. */
CONVERTDATA(ARG(2), "MyRect", "struct RECT")

/* MyRect.1 = upper left x
 * MyRect.2 = upper left y
 * MyRect.3 = lower right x
 * MyRect.4 = lower right y
 */

/* Increase width by 5. */
MyRect.3 = MyRect.3 + 5

/* Convert MyRect back to the struct. */
CONVERTDATA(ARG(2), "MyRect", "struct RECT", "FROM")
Note: You must FUNCDEF a RECT struct at the start of your script:
FUNCDEF("RECT", "32, 32, 32, 32")
See also SIZE, GETMINMAXINFO.