curs_opaque(3x) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | EXTENSIONS | PORTABILITY | SEE ALSO | COLOPHON

curs_opaque(3X)               Library calls               curs_opaque(3X)

NAME         top

       is_cleared, is_idlok, is_idcok, is_immedok, is_keypad, is_leaveok,
       is_nodelay, is_notimeout, is_pad, is_scrollok, is_subwin,
       is_syncok, wgetdelay, wgetparent, wgetscrreg - obtain curses
       window properties

SYNOPSIS         top

       #include <curses.h>

       bool is_cleared(const WINDOW *win);
       bool is_idcok(const WINDOW *win);
       bool is_idlok(const WINDOW *win);
       bool is_immedok(const WINDOW *win);
       bool is_keypad(const WINDOW *win);
       bool is_leaveok(const WINDOW *win);
       bool is_nodelay(const WINDOW *win);
       bool is_notimeout(const WINDOW *win);
       bool is_pad(const WINDOW *win);
       bool is_scrollok(const WINDOW *win);
       bool is_subwin(const WINDOW *win);
       bool is_syncok(const WINDOW *win);

       WINDOW * wgetparent(const WINDOW *win);
       int wgetdelay(const WINDOW *win);
       int wgetscrreg(const WINDOW *win, int *top, int *bottom);

DESCRIPTION         top

       ncurses provides functions returning properties of a WINDOW
       structure, allowing it to be “opaque” if the application defines
       the NCURSES_OPAQUE preprocessor symbol.  Opacity in this sense
       means that the members of struct data types are not directly
       accessible (for instance, through “.” or “->” operators), but
       instead must be queried and/or set via library functions.
       Advantages of opacity include greater abstraction and improved
       management of concurrent accesses to data structures, keeping
       object states coherent.

       is_cleared
              returns the value set by clearok(3X).

       is_idcok
              returns the value set by idcok(3X).

       is_idlok
              returns the value set by idlok(3X).

       is_immedok
              returns the value set by immedok(3X).

       is_keypad
              returns the value set by keypad(3X).

       is_leaveok
              returns the value set by leaveok(3X).

       is_nodelay
              returns the value set by nodelay(3X).

       is_notimeout
              returns the value set by notimeout(3X).

       is_pad returns TRUE if the window is a pad; that is, it was
              created by newpad(3X).

       is_scrollok
              returns the value set by scrollok(3X).

       is_subwin
              returns TRUE if the window is a subwindow, that is, it was
              created by subwin(3X) or derwin(3X).

       is_syncok
              returns the value set by syncok(3X).

       wgetdelay
              returns the delay timeout set by wtimeout(3X).

       wgetparent
              returns the parent WINDOW pointer for subwindows, or NULL
              for windows having no parent.

       wgetscrreg
              stores the top and bottom rows for the scrolling margin set
              by wsetscrreg(3X) in the corresponding arguments, returning
              ERR upon failure and OK upon successful completion.

RETURN VALUE         top

       These functions return TRUE or FALSE except as noted.

NOTES         top

       ncurses provides both a C function and a preprocessor macro for
       each function documented in this page.

EXTENSIONS         top

       These functions originated with ncurses.

PORTABILITY         top

       Applications employing ncurses extensions should condition their
       use on the visibility of the NCURSES_VERSION preprocessor macro.

       NetBSD curses since 10.1 (2024) supports wgetscr_reg.  It also
       implements getscr_reg, operating on stdscr.

SEE ALSO         top

       curses(3X), curs_inopts(3X), curs_outopts(3X), curs_threads(3X),
       curs_window(3X)

COLOPHON         top

       This page is part of the ncurses (new curses) project.
       Information about the project can be found at 
       ⟨https://invisible-island.net/ncurses/ncurses.html⟩.  If you have a
       bug report for this manual page, send it to bug-ncurses@gnu.org.
       This page was obtained from the tarball ncurses-6.6.tar.gz fetched
       from ⟨https://ftp.gnu.org/gnu/ncurses/⟩ on 2026-01-16.  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for the
       page, or you have corrections or improvements to the information
       in this COLOPHON (which is not part of the original manual page),
       send a mail to man-pages@man7.org

ncurses @NCURSES_MAJOR@.@NCU... 2025-02-15                curs_opaque(3X)