W_EXIT

Exit the windowing system

WSupported on Windows
USupported on Unix
VSupported on OpenVMS
NSupported in Synergy .NET
xcall W_EXIT

Discussion

W_EXIT stops the windowing system. It deletes all defined windows and releases the window memory allocated to the system. It also clears display attributes that are set in the windowing system.

W_EXIT updates the screen before it deletes the windows so that the final states of all placed windows are displayed.

The terminal channel that was passed to W_INIT must still be open when you call W_EXIT.

After a W_EXIT, if you want to use the windowing system again, you must reinitialize it by calling W_INIT.

Examples

In the following routine, we call the W_PROC subroutine and remove the window with WP_REMOVE. Then we exit the windowing system with W_EXIT, which automatically updates the screen. (Without the WP_REMOVE function, the window display remains on the screen after we exit the windowing system.)

.define MAXWINS,        15
.define WNDCHNL,        1
.include "WND:windows.def"
record
    window              ,i4
    choice              ,a7     ,"Choice"
proc
    open(WNDCHNL, o, "tt:")
    xcall flags(7004020, 1)
    xcall w_init(0, WNDCHNL, MAXWINS)
    xcall w_proc(WP_CREATE, window, choice, 11, 50, WP_PLACE, window, 1, 1)
    xcall w_area(window, WA_FILL, "&")
    xcall w_updt
    sleep 1
    xcall w_proc(WP_REMOVE, window)
    xcall w_exit
    stop
end