-</PRE>
-<H2>FUNCTIONS</H2><PRE>
- <B>new_panel(win)</B>
- allocates a <B>PANEL</B> structure, associates it with
- <B>win</B>, places the panel on the top of the stack
- (causes it to be displayed above any other
- panel) and returns a pointer to the new panel.
-
- <B>void</B> <B>update_panels()</B>
- refreshes the virtual screen to reflect the rela-
- tions between the panels in the stack, but does not
- call doupdate() to refresh the physical screen.
- Use this function and not wrefresh or wnoutrefresh.
- update_panels() may be called more than once before
- a call to doupdate(), but doupdate() is the func-
- tion responsible for updating the physical screen.
-
- <B>del_panel(pan)</B>
- removes the given panel from the stack and deallo-
- cates the <B>PANEL</B> structure (but not its associated
- window).
-
- <B>hide_panel(pan)</B>
- removes the given panel from the panel stack and
- thus hides it from view. The <B>PANEL</B> structure is not
- lost, merely removed from the stack.
-
- <B>show_panel(pan)</B>
- makes a hidden panel visible by placing it on top
- of the panels in the panel stack. See COMPATIBILITY
- below.
-
- <B>top_panel(pan)</B>
- puts the given visible panel on top of all panels
- in the stack. See COMPATIBILITY below.
-
- <B>bottom_panel(pan)</B>
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+ <STRONG>#include</STRONG> <STRONG><panel.h></STRONG>
+
+ <STRONG>cc</STRONG> <STRONG>[flags]</STRONG> <STRONG>sourcefiles</STRONG> <STRONG>-lpanel</STRONG> <STRONG>-lncurses</STRONG>
+
+ <STRONG>PANEL</STRONG> <STRONG>*new_panel(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>bottom_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>top_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>show_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>void</STRONG> <STRONG>update_panels(void);</STRONG>
+ <STRONG>int</STRONG> <STRONG>hide_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*panel_window(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>replace_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*window);</STRONG>
+ <STRONG>int</STRONG> <STRONG>move_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>int</STRONG> <STRONG>starty,</STRONG> <STRONG>int</STRONG> <STRONG>startx);</STRONG>
+ <STRONG>int</STRONG> <STRONG>panel_hidden(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*panel_above(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*panel_below(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_panel_userptr(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*ptr);</STRONG>
+ <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*panel_userptr(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>del_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+
+
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+ Panels are <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> windows with the added feature of depth. Panel
+ functions allow the use of stacked windows and ensure the proper por-
+ tions of each window and the curses <STRONG>stdscr</STRONG> window are hidden or dis-
+ played when panels are added, moved, modified or removed. The set of
+ currently visible panels is the stack of panels. The <STRONG>stdscr</STRONG> window is
+ beneath all panels, and is not considered part of the stack.
+
+ A window is associated with every panel. The panel routines enable you
+ to create, move, hide, and show panels, as well as position a panel at
+ any desired location in the stack.
+
+ Panel routines are a functional layer added to <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, make only
+ high-level curses calls, and work anywhere terminfo curses does.
+
+
+</PRE><H2><a name="h2-FUNCTIONS">FUNCTIONS</a></H2><PRE>
+ <STRONG>new_panel(win)</STRONG>
+ allocates a <STRONG>PANEL</STRONG> structure, associates it with <STRONG>win</STRONG>, places
+ the panel on the top of the stack (causes it to be displayed
+ above any other panel) and returns a pointer to the new panel.
+
+ <STRONG>update_panels</STRONG>
+ refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations between
+ the panels in the stack, but does not call <STRONG>doupdate</STRONG> to refresh
+ the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG>wrefresh</STRONG> or
+ <STRONG>wnoutrefresh</STRONG>. <STRONG>update_panels</STRONG> may be called more than once before
+ a call to <STRONG>doupdate</STRONG>, but <STRONG>doupdate</STRONG> is the function responsible for
+ updating the <EM>physical</EM> <EM>screen</EM>.
+
+ <STRONG>del_panel(pan)</STRONG>
+ removes the given panel from the stack and deallocates the
+ <STRONG>PANEL</STRONG> structure (but not its associated window).
+
+ <STRONG>hide_panel(pan)</STRONG>
+ removes the given panel from the panel stack and thus hides it
+ from view. The <STRONG>PANEL</STRONG> structure is not lost, merely removed from
+ the stack.
+
+ <STRONG>panel_hidden(pan)</STRONG>
+ returns <STRONG>TRUE</STRONG> if the panel is in the panel stack, <STRONG>FALSE</STRONG> if it is
+ not. If the panel is a null pointer, return <STRONG>ERR</STRONG>.
+
+ <STRONG>show_panel(pan)</STRONG>
+ makes a hidden panel visible by placing it on top of the panels
+ in the panel stack. See COMPATIBILITY below.
+
+ <STRONG>top_panel(pan)</STRONG>
+ puts the given visible panel on top of all panels in the stack.
+ See COMPATIBILITY below.
+
+ <STRONG>bottom_panel(pan)</STRONG>