Plugin windows.spf
File: windows.spf
Author: Nicholas Nemtsev, Valery Kondakoff
Description: Additional words, providing a capability to monitor
hidden windows (e.g. those hidden by command WIN-HIDE:),
minimized windows and topmost windows. Control of windows' transparency (Win2000/XP). Special word for detecting the 'non-responding' windows.
New words:
<window_handle> MINIMIZED?
Returns TRUE only if the specified window is currently minimized.
Example:
\ restore minimized window
WIN-EXIST: "*Internet Explorer"
IF
WIN-HWND MINIMIZED?
IF
WIN-RESTORE: "*Internet Explorer"
THEN
THEN
<window_handle> TOPMOST?
Returns TRUE if the specified window is currently topmost (displayed over all other windows).
Example:
#( test_topmost
\ toggle specified window topmost/notopmost status using hotkey
WatchHotKey: "$q"
Action:
WIN-EXIST: "*Notepad*"
IF
WIN-HWND TOPMOST?
IF
WIN-NOTOPMOST: "*Notepad*"
ELSE
WIN-TOPMOST: "*Notepad*"
THEN
THEN
)#
<window_handle> VISIBLE?
Returns FALSE if the window was processed by WIN-HIDE command or minimized to the system tray. Otherwise, returns TRUE.
Example:
\ show window if it was hidden
WIN-EXIST: "*Internet Explorer"
IF
WIN-HWND VISIBLE? 0=
IF
WIN-SHOW: "*Internet Explorer"
THEN
THEN
WIN-NOT-RESPOND: "win_pattern"
This word is used to detect the 'non-responding' windows. It returns FALSE (0) if the window is working correcty and TRUE if the window 'hangs' and stops responding to user requests. You can test the WIN-NOT-RESPOND: word using a small utility HungTest, which can 'imitate' the non-responding window.
Example:
#( test_not_responding
NoActive
Action:
WIN-NOT-RESPOND: "Hanging application"
IF
MSG: "Not responding!"
ELSE
MSG: "Responding!"
THEN
)#
There also exists a postfix version of this word:
S" *Notepad" WIN-NOT-RESPOND
WIN-TRANSPARENCY: "win_pattern" <transparency_level>
This word is used to control "transparency" of windows matching a
specified mask (except for console windows). The transparency level is specified
in numbers ranging from 0 (window is not transparent, flag LAYERED
is off) to 255 (window is completely transparent).
Restarting a window will cancel the effect of WIN-TRANSPARENCY:.
Word WIN-TRANSPARENCY: will only work in operating systems which support window transparency, i.e. Windows 2000/XP. Note, please, the Windows XP Service Pack 2 does not allows the word WIN-TARSPARENCY: to work correctly if nnCron is launched as a system service (not as an ordinary application).
Example:
\ making a window of Notepad half-transparent: WIN-TRANSPARENCY: "*Notepad" 50 \ making a window of Notepad completely transparent: \ it still exists on the screen, but it is invisible: WIN-TRANSPARENCY: "*Notepad" 255 \ canceling the effect of WIN-TRANSPARENCY: WIN-TRANSPARENCY: "*Notepad" 0
There also exists a postfix version of this word:
S" *Notepad" 50 WIN-TRANSPARENCY
![]()