The Window Status function allows the application to query or change a window's presentation space size, location, or visible state.
Prerequisite Calls
Connect Window Services (101)
Call Parameters
|
Standard Interface
|
Enhanced Interface
|
Function Number
|
Must be 104
|
|
Data String
|
See the following table
|
|
Length
|
16 or 20
|
24 or 28
|
PS Position
|
NA
|
|
The calling data string can contain:
Byte
|
|
Definition
|
Standard
|
Enhanced
|
|
1
|
1
|
A 1-character presentation space short name (PSID)
|
|
2-4
|
Reserved
|
2
|
5
|
A request option value, select one of the following values:
Note: When the session is embedded In-Place in a compound OLE document, the set form of this function (byte 5 = X'01') always returns 0 but has no effect.
• | X'02' for query for status |
• | X'03' for query for extended status |
|
|
6
|
Reserved
|
If the request option value is X'01' (set status):
Byte
|
|
Definition
|
Standard
|
Enhanced
|
|
3-4
|
7-8
|
A 16- or 32-bit word containing the status set bits if the request option is 1 (set status). The following codes are valid return values if the request option is set status:
• | X'0001' Change the window size. (Not valid with minimize, maximize, restore, or move.) |
• | X'0002' Move the window. (Not valid with minimize, maximize, size, or restore.) X'0004' ZORDER window replacement. |
• | X'0008' Set the window to visible. |
• | X'0010' Set the window to invisible. |
• | X'0080' Activate the window. (Sets focus to window and places it in the foreground unless ZORDER is specified. In this case, the ZORDER placement is used.) |
• | X'0100' Deactivate the window. (Deactivates the window and makes the window the bottom window unless ZORDER is also specified. In this case, the ZORDER placement is used.) |
• | X'0400' Set the window to minimized. (Not valid with maximize, restore, size, or move.) |
• | X'0800' Set the window to maximized. (Not valid with minimize, restore, size, or move.) |
• | X'1000' Restore the window. (Not valid with minimize, maximize, size, or move.) |
|
5-6
|
9-12
|
A 16- or 32-bit word containing the X window position coordinate. (Ignored if the move option is not set.)
|
7-8
|
13-16
|
A 16- or 32-bit word containing the Y window position coordinate. (Ignored if the move option is not set.)
|
9-10
|
17-20
|
A 16- or 32-bit word containing the X window size in device units. (Ignored if the size option is not set.)
|
11-12
|
21-24
|
A 16- or 32-bit word containing the Y window size in device units. (Ignored if the size option is not set.)
|
13-16
|
25-28
|
A 16- or 32-bit word containing a window handle for relative window placement. These two words are only for the set option. (Ignored if the ZORDER option is not set.) Valid values are as follows:
• | X'00000003' Place in front of all sibling windows. |
• | X'00000004' Place behind all sibling windows. |
|
If the request option value is X'02' (query for status):
Byte
|
|
Definition
|
Standard
|
Enhanced
|
|
3-4
|
7-8
|
A 16- or 32-bit word containing X'0000' if the request option is 2 (query for status). The following codes are possible return values if the request option is query for status. More than one state is possible.
• | X'0008' The window is visible. |
• | X'0010' The window is invisible. |
• | X'0080' The window is activated. |
• | X'0100' The window is deactivated. |
• | X'0400' The window is minimized. |
• | X'0800' The window is maximized. |
|
5-6
|
9-12
|
A 16- or 32-bit word containing the X window position coordinate. (Ignored if the move option is not set.)
|
7-8
|
13-16
|
A 16- or 32-bit word containing the Y window position coordinate. (Ignored if the move option is not set.)
|
9-10
|
17-20
|
A 16- or 32-bit word containing the X window size in device units. (Ignored if the size option is not set.)
|
11-12
|
21-24
|
A 16- or 32-bit word containing the Y window size in device units. (Ignored if the size option is not set.)
|
13-16
|
25-28
|
A 16- or 32-bit word containing a window handle for relative window placement. These two words are only for the set option. (Ignored if the ZORDER option is not set.) Valid values are as follows:
• | X'00000003' Place in front of all sibling windows. |
• | X'00000004' Place behind all sibling windows. |
|
If the request option value is X'03' (query for extended status):
Byte
|
|
Definition
|
Standard
|
Enhanced
|
|
3-4
|
7-8
|
A 16- or 32-bit word containing X'0000' if the request option is 3 (query for extended status). The following codes are possible return values if the request option is query for extended status. More than one state is possible.
• | X'0008' The window is visible. |
• | X'0010' The window is invisible. |
• | X'0080' The window is activated. |
• | X'0100' The window is deactivated. |
• | X'0400' The window is minimized. |
• | X'0800' The window is maximized. |
|
5-6
|
9-10
|
A 16- or 32-bit word containing the current font size in the X-dimension. The value is in screen pels.
|
7-8
|
11-12
|
A 16- or 32-bit word containing the current font size in the Y-dimension. The value is in screen pels.
|
9-12
|
13-16
|
Reserved. This value is always zero.
|
13-14
|
17-18
|
A 16- or 32-bit word containing the row number of the first visible character of the presentation space. This value is usually one, unless the Fixed Size font option is in effect, and the window has been resized such that some of the presentation space is hidden.
|
15-16
|
19-20
|
A 16- or 32-bit word containing the column number of the first visible character of the presentation space.
|
17-20
|
21-24
|
A 16- or 32-bit word containing the presentation space window handle of the session.
|
Return Parameters
Return Code
|
Explanation
|
0
|
The Window Status function was successful.
|
1
|
The presentation space was not valid or not connected.
|
2
|
An incorrect option was specified.
|
9
|
A system error occurred.
|
12
|
The session stopped.
|
Remarks
The logical terminal (LT) windows use character cells. When resizing the LT windows, the LT rounds the number to prevent character cell truncation. The requested size and position might be slightly different from what was requested. Follow the set option with a query option to determine the final Presentation Manager window position and size. All x and y coordinate positions and sizes are in pels.
|