- <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 virtual screen to reflect the rela-
- tions between the panels in the stack, but does not
- call <STRONG>doupdate</STRONG> to refresh the physical screen. 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 physical screen.
-
- <STRONG>del_panel(pan)</STRONG>
- removes the given panel from the stack and deallo-
- cates 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 ERR.
-
- <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>
- puts panel at the bottom of all panels.
-
- <STRONG>move_panel(pan,starty,startx)</STRONG>
- moves the given panel window so that its upper-left
- corner is at <STRONG>starty</STRONG>, <STRONG>startx</STRONG>. It does not change
- the position of the panel in the stack. Be sure to
- use this function, not <STRONG>mvwin</STRONG>, to move a panel win-
- dow.
-
- <STRONG>replace_panel(pan,window)</STRONG>
- replaces the current window of panel with <STRONG>window</STRONG>
- (useful, for example if you want to resize a panel;
- if you're using <STRONG>ncurses</STRONG>, you can call <STRONG>replace_panel</STRONG>
- on the output of <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>). It does not change
- the position of the panel in the stack.
-
- <STRONG>panel_above(pan)</STRONG>
- returns a pointer to the panel above pan. If the
- panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer
- to the bottom panel in the stack.
-
- <STRONG>panel_below(pan)</STRONG>
- returns a pointer to the panel just below pan. If
- the panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a
- pointer to the top panel in the stack.
-
- <STRONG>set_panel_userptr(pan,ptr)</STRONG>
- sets the panel's user pointer.
-
- <STRONG>panel_userptr(pan)</STRONG>
- returns the user pointer for a given panel.
-
- <STRONG>panel_window(pan)</STRONG>
- returns a pointer to the window of the given panel.
-
-
-</PRE><H2><a name="h2-DIAGNOSTICS">DIAGNOSTICS</a></H2><PRE>
- Each routine that returns a pointer returns <STRONG>NULL</STRONG> if an
- error occurs. Each routine that returns an int value
- returns <STRONG>OK</STRONG> if it executes successfully and <STRONG>ERR</STRONG> if not.
-
-
-</PRE><H2><a name="h2-COMPATIBILITY">COMPATIBILITY</a></H2><PRE>
- Reasonable care has been taken to ensure compatibility
- with the native panel facility introduced in SVr3.2
- (inspection of the SVr4 manual pages suggests the program-
- ming interface is unchanged). The <STRONG>PANEL</STRONG> data structures
- are merely similar. The programmer is cautioned not to
- directly use <STRONG>PANEL</STRONG> fields.
-
- The functions <STRONG>show_panel</STRONG> and <STRONG>top_panel</STRONG> are identical in
- this implementation, and work equally well with displayed
- or hidden panels. In the native System V implementation,
- <STRONG>show_panel</STRONG> is intended for making a hidden panel visible
- (at the top of the stack) and <STRONG>top_panel</STRONG> is intended for
- making an already-visible panel move to the top of the
- stack. You are cautioned to use the correct function to
- ensure compatibility with native panel libraries.
-
-
-</PRE><H2><a name="h2-NOTE">NOTE</a></H2><PRE>
- In your library list, libpanel.a should be before libn-
- curses.a; that is, you should say "-lpanel -lncurses", not
- the other way around (which would give a link-error with
- static libraries).
-
-
-</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
- panel.h interface for the panels library
-
- libpanel.a the panels library itself