X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fresizeterm.3x.html;h=244bfd700c2c2378754c2f31e98a57b95ca4988e;hb=5925150381bb42a4d8c7116d62c348a7b84309f3;hp=c4a5bcfba029ff8d9e5f9c0eaf6b2e73bca0ee86;hpb=ed646e3f683083e787c6ba773364401dc9fa9d40;p=ncurses.git diff --git a/doc/html/man/resizeterm.3x.html b/doc/html/man/resizeterm.3x.html index c4a5bcfb..244bfd70 100644 --- a/doc/html/man/resizeterm.3x.html +++ b/doc/html/man/resizeterm.3x.html @@ -1,6 +1,7 @@
- +#include <curses.h> - bool is_term_resized(int lines, int columns); - int resize_term(int lines, int columns); - int resizeterm(int lines, int columns); + bool is_term_resized(int lines, int columns); + int resize_term(int lines, int columns); + int resizeterm(int lines, int columns);
@@ -74,37 +75,46 @@
Most of the work is done by the inner function resize_term. The outer - function resizeterm adds bookkeeping for the SIGWINCH handler. When - resizing the windows, resize_term blank-fills the areas that are + function resizeterm adds bookkeeping for the SIGWINCH handler, as well + as repainting the soft-key area (see slk_touch(3x)). + + When resizing the windows, resize_term blank-fills the areas that are extended. The calling application should fill in these areas with - appropriate data. The resize_term function attempts to resize all win- - dows. However, due to the calling convention of pads, it is not possi- - ble to resize these without additional interaction with the applica- - tion. + appropriate data. + + The resize_term function attempts to resize all windows. However, due + to the calling convention of pads, it is not possible to resize these + without additional interaction with the application. + + When resizing windows, resize_term recursively adjusts subwindows, + keeping them within the updated parent window's limits. If a top-level + window happens to extend to the screen's limits, then on resizing the + window, resize_term will keep the window extending to the corresponding + limit, regardless of whether the screen has shrunk or grown.
A support function is_term_resized is provided so that applications can - check if the resize_term function would modify the window structures. + check if the resize_term function would modify the window structures. It returns TRUE if the windows would be modified, and FALSE otherwise.
- Except as noted, these functions return the integer ERR upon failure + Except as noted, these functions return the integer ERR upon failure and OK on success. They will fail if either of the dimensions are less - than or equal to zero, or if an error occurs while (re)allocating mem- + than or equal to zero, or if an error occurs while (re)allocating mem- ory for the windows.
- While these functions are intended to be used to support a signal han- - dler (i.e., for SIGWINCH), care should be taken to avoid invoking them - in a context where malloc or realloc may have been interrupted, since + While these functions are intended to be used to support a signal han- + dler (i.e., for SIGWINCH), care should be taken to avoid invoking them + in a context where malloc or realloc may have been interrupted, since it uses those functions. - If ncurses is configured to supply its own SIGWINCH handler, + If ncurses is configured to supply its own SIGWINCH handler, - o on receipt of a SIGWINCH, the handler sets a flag + o on receipt of a SIGWINCH, the handler sets a flag o which is tested in wgetch(3x) and doupdate, @@ -113,17 +123,17 @@ o which ungetch's a KEY_RESIZE which will be read on the next call to wgetch. - The KEY_RESIZE alerts an application that the screen size has - changed, and that it should repaint special features such as pads + The KEY_RESIZE alerts an application that the screen size has + changed, and that it should repaint special features such as pads that cannot be done automatically. Calling resizeterm or resize_term directly from a signal handler is - unsafe. This indirect method is used to provide a safe way to + unsafe. This indirect method is used to provide a safe way to resize the ncurses data structures. - If the environment variables LINES or COLUMNS are set, this overrides - the library's use of the window size obtained from the operating sys- - tem. Thus, even if a SIGWINCH is received, no screen size change may + If the environment variables LINES or COLUMNS are set, this overrides + the library's use of the window size obtained from the operating sys- + tem. Thus, even if a SIGWINCH is received, no screen size change may be recorded. @@ -136,7 +146,7 @@ Doing that clears the screen and is visually distracting. - This extension of ncurses was introduced in mid-1995. It was adopted + This extension of ncurses was introduced in mid-1995. It was adopted in NetBSD curses (2001) and PDCurses (2003). @@ -145,7 +155,7 @@
- Thomas Dickey (from an equivalent function written in 1988 for BSD + Thomas Dickey (from an equivalent function written in 1988 for BSD curses).