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.