Sorry for not being more precise.
Rocket wIntegrate
Client Scripting Reference
Version 6.4.4
April 2020
WIN-644-CS-RM-01
WindowPosThis function returns the size of the current wIntegrate session in pixels depending on the option.
The Terminal Screen is the area in which the host text is displayed. The Session Window is the whole of
the wIntegrate window.
The result is returned as a string in the format top_left_x, top_left_y, bottom_right_x, bottom_right_y.
For options 0 and 2, the top left is always at position 0,0.
Option 1 is equivalent to Get(Window) except that it gives the actual size of the window even when
it is maximized.
The Java Client can return slight differences from the Local and Windows Thin Client versions.
Syntax
WindowPos option
Parameters
The following table describes the parameters of the WindowPos command:
Parameter Description
option See the following table
Values for option
Value Description
0 Returns the position of the inside of the terminal screen
1 Returns the position of the outside of the terminal screen
2 Returns the position of the inside of the session window
3 Returns the position of the outside of the session window
Return Value
Window rectangle for the specified option in pixels.
SystemMetricsThis function returns the size of various components of a window, depending on the option.
Syntax
SystemMetrics option
Parameters
The following table describes the parameters of the SystemMetrics command:
Parameter Description
option See the following table
Values for option
Value Description
0 Width of desktop
1 Depth of desktop
2 Width of vertical scroll bar
3 Height of horizontal scroll bar
4 Height of caption with non-sizing border
5 Width of non-sizing border
6 Height of non-sizing border
7 Width of dialog box border (with WS_DLGFRAME style.)
8 Height of dialog box border (with WS_DLGFRAME style)
Return Value
The measurement requested by the option parameter.
------------------------------
Michael Archuleta
President
Arcsys Inc
Draper UT US
------------------------------
Original Message:
Sent: 12-21-2021 11:50
From: Kevin Hond
Subject: Wintegrate
Thanks Michael, this looks like it's going to work for me. Just one question, in your response, you reference "my documentation of Client Scripting Reference". Are you referring to the standard wIntegrate documentation or is this something else. Something, perhaps that I could use. I am currently in the process of re-writing my character base software to have a more 'Windows' look and feel.
Again thanks,
Kevin
------------------------------
Kevin Hond
Mr.
Self Registered
Kingsport TN US
Original Message:
Sent: 12-21-2021 10:44
From: Michael Archuleta
Subject: Wintegrate
This is what I do:
CALL WIN.EVAL('SystemMetrics(1):"*":SystemMetrics(0):"*":WindowPos(0):"*":Get(Columns):"*":Get(Lines):"*":Version:"*":Serial:"*":Get(Font):"*":Get(ExtraLineSpace)',SYSMET)
SYSMET ends up being an asterisk delimited string with the monitor width in pixels, monitor height in pixels, the position of the inside of the terminal screen (4 pieces of data), number of columns, number of lines, the Wintegrate version, the Wintegrate serial number, the font and extra line spacing. I do this in one CALL WIN.EVAL which is considerably faster than making 9 separate CALLs. I use the various pieces of data to see if a new window that I might create will fall outside to monitor then I can readjust where it will appear before displaying.
Just for funsies, do the following program to learn more about WindowPos. In my documentation of Client Scripting Reference it is on page 542.
FOR J = 0 TO 3
CALL WIN.EVAL('WindowPos(':J:'0)',WINDOWPOS)
PRINT WINDOWPOS
NEXT J
If I'm still not understanding the problem, my apologies in advance.
------------------------------
Michael Archuleta
President
Arcsys Inc
Draper UT US
Original Message:
Sent: 12-21-2021 08:00
From: Kevin Hond
Subject: Wintegrate
I would like to thank you both for the replies/suggestions that I received on my question regarding wIntegrate's window positioning.
Unfortunately you both missed my actual issue so let me try to clarify: When I start (or continue) a wIntegrate/Unidata session, the window is of a specific size (naturally). Having said that, there are routines within my programming that can make the window larger on-the-fly, I do this by either increasing the font size or by increasing the number of columns and/or rows presented within the window (wIntegrate makes these processes available). It is at this point, that the enlarged window is partially off of the viewable part of my monitor causing me to have to move it with the mouse.
I believe that there are ways in windows, which I have assumed wIntegrate script would be able to access, that can be used to determine the number of available pixels wide or tall on the monitor/screen and the relative position (in pixels) of an individual window. This is the solution that I am seeking.
This is the best that I can explain the issue.
------------------------------
Kevin Hond
Mr.
Self Registered
Kingsport TN US
Original Message:
Sent: 12-20-2021 10:52
From: Bill Brutzman
Subject: Wintegrate
Sounds like a Windows thing.
Step 1. Open wIntegrate.
Step 2. RePosition the wIntegrate screen.
Step 3. Hold down the [Ctrl] button (on keyboard) and _ click the Red [X] in upper right corner to close.
Step 4. ReOpen wIntegrate _ position should be ok.
--Bill
------------------------------
Bill Brutzman
IT Manager
Hk Metalcraft Manufacturing Corporation
Lodi NJ US
Original Message:
Sent: 12-18-2021 07:44
From: Kevin Hond
Subject: Wintegrate
Can anyone tell me a way to determine if a newly opened wIntegrate window is off of the viewable monitor screen? i.e. I command wIntegrate to open a new window but it is partially off of the screen, then I have to use the mouse to physically move it so the whole window is viewable. I have scanned both the 'winthost' and 'wintscr' manuals but have not been able to find a solution. I'm wondering if there is a solution, or perhaps additional documentation that could be helpful. I am using wIntegrate version 6.3.0.
------------------------------
Kevin Hond
Mr.
Self Registered
Kingsport TN US
------------------------------