X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fpanel.3x.html;h=e585b33c449ec8c37c4cace3a55b82c78230e24d;hp=550ab4d2166c77015b854f97b219a9ac069c8454;hb=HEAD;hpb=349761f30e7fc0b4bf2718f7fc3da34e09ea6735 diff --git a/doc/html/man/panel.3x.html b/doc/html/man/panel.3x.html index 550ab4d2..58ad42d2 100644 --- a/doc/html/man/panel.3x.html +++ b/doc/html/man/panel.3x.html @@ -1,6 +1,6 @@ -
--panel(3x) panel(3x) +panel(3x) Library calls panel(3x)
- panel - panel stack extension for curses + panel - panel stack extension for curses
#include <panel.h> - cc [flags] sourcefiles -lpanel -lncurses - PANEL *new_panel(WINDOW *win); int bottom_panel(PANEL *pan); @@ -93,25 +74,25 @@ int del_panel(PANEL *pan); - /* ncurses-extensions */ + /* ncurses extensions */ PANEL *ground_panel(SCREEN *sp); PANEL *ceiling_panel(SCREEN *sp);
- Panels are curses(3x) 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 stdscr 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 stdscr window is - beneath all panels, and is not considered part of the stack. + Panels are curses(3x) windows with the added property of depth. Panel + functions allow the use of stacked windows and ensure that the proper + portions of each window and the curses stdscr window are hidden or + displayed when panels are added, moved, modified, or removed. The set + of currently visible panels is the stack of panels. The stdscr 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. + A window is associated with each panel. The panel routines enable you + to create, move, hide, and show panels. You can relocate a panel to + any desired position in the stack. - Panel routines are a functional layer added to curses(3x), make only - high-level curses calls, and work anywhere terminfo curses does. + Panel routines are a functional layer added to curses, make only high- + level curses calls, and work anywhere curses does.
@@ -121,52 +102,52 @@
- ceiling_panel(sp) acts like panel_below(NULL), for the given SCREEN sp. + ceiling_panel(sp) acts like panel_below(NULL) for the given SCREEN sp.
- del_panel(pan) removes the given panel pan from the stack and deallo- - cates the PANEL structure (but not its associated window). + del_panel(pan) removes the given panel pan from the stack and + deallocates the PANEL structure (but not its associated window).
- ground_panel(sp) acts like panel_above(NULL), for the given SCREEN sp. + ground_panel(sp) acts like panel_above(NULL) for the given SCREEN sp.
hide_panel(pan) removes the given panel pan from the panel stack and - thus hides it from view. The PANEL structure is not lost, merely + thus hides it from view. The PANEL structure is not lost, merely removed from the stack.
- move_panel(pan,starty,startx) moves the given panel pan's window so + move_panel(pan, starty, startx) moves the given panel pan's window so that its upper-left corner is at starty, startx. It does not change the position of the panel in the stack. Be sure to use this function, not mvwin(3x), to move a panel window.
- new_panel(win) allocates a PANEL structure, associates it with win, - places the panel on the top of the stack (causes it to be displayed + new_panel(win) allocates a PANEL structure, associates it with win, + 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.
panel_above(pan) returns a pointer to the panel above pan. If the - panel argument is (PANEL *)0, it returns a pointer to the bottom panel - in the stack. + panel argument is "(PANEL *)0", it returns a pointer to the bottom + panel in the stack.
panel_below(pan) returns a pointer to the panel just below pan. If the - panel argument is (PANEL *)0, it returns a pointer to the top panel in - the stack. + panel argument is "(PANEL *)0", it returns a pointer to the top panel + in the stack.
- panel_hidden(pan) returns TRUE if the panel pan is in the panel stack, - FALSE if it is not. If the panel is a null pointer, return ERR. + panel_hidden(pan) returns FALSE if the panel pan is in the panel stack, + and TRUE if it is not. If the panel is a null pointer, it returns ERR.
@@ -179,89 +160,87 @@
- replace_panel(pan,window) replaces the current window of panel pan with - window This is useful, for example if you want to resize a panel. In - ncurses, you can call replace_panel to resize a panel using a window + replace_panel(pan, window) replaces the current window of panel pan + with window This is useful if, for example, you want to resize a panel. + In ncurses, you can call replace_panel to resize a panel using a window resized with wresize(3x). It does not change the position of the panel in the stack.
- set_panel_userptr(pan,ptr) sets the panel's user pointer. + set_panel_userptr(pan, ptr) sets the panel's user pointer.
show_panel(pan) makes a hidden panel visible by placing it on top of - the panels in the panel stack. See COMPATIBILITY below. + the panels in the panel stack. See "PORTABILITY" below.
top_panel(pan) puts the given visible panel pan on top of all panels in - the stack. See COMPATIBILITY below. + the stack. See "PORTABILITY" below.
- update_panels() refreshes the virtual screen to reflect the relations + update_panels() refreshes the virtual screen to reflect the relations between the panels in the stack, but does not call doupdate(3x) to - refresh the physical screen. Use this function and not wrefresh(3x) or + refresh the physical screen. Use this function and not wrefresh(3x) or wnoutrefresh(3x). update_panels may be called more than once before a call to doupdate, - but doupdate is the function responsible for updating the physical - screen. + but doupdate is the function responsible for updating the physical + screen. -
+
Each routine that returns a pointer returns NULL if an error occurs. - Each routine that returns an int value returns OK if it executes suc- - cessfully and ERR if not. + Each routine that returns an int value returns OK if it executes + successfully and ERR if not. Except as noted, the pan and window parameters must be non-null. If - those are null, an error is returned. + either is null, an error is returned. - The move_panel function uses mvwin(3x), and will return an error if - mvwin returns an error. + The move_panel function uses mvwin(3x), and returns an error if mvwin + returns an error. -
- Reasonable care has been taken to ensure compatibility with the - native panel facility introduced in System V (inspection of the SVr4 - manual pages suggests the programming interface is unchanged). The - PANEL data structures are merely similar. The programmer is cau- - tioned not to directly use PANEL fields. +
+ The header file panel.h itself includes the header file curses.h. - The functions show_panel and top_panel are identical in this implemen- - tation, and work equally well with displayed or hidden panels. In the - native System V implementation, show_panel is intended for making a + +
+ Reasonable care has been taken to ensure compatibility with the native + panel facility introduced in System V; inspection of the SVr4 manual + pages suggests the programming interface never changed. The PANEL data + structures are merely similar. The programmer is cautioned not to + directly use PANEL fields. + + The functions show_panel and top_panel are identical in this + implementation, and work equally well with displayed or hidden panels. + In the System V implementation, show_panel is intended for making a hidden panel visible (at the top of the stack) and top_panel 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 compat- - ibility with native panel libraries. + stack. You are cautioned to use the correct function to ensure + compatibility with System V panel libraries. -
- In your library list, libpanel.a should be before libncurses.a; that - is, you should say "-lpanel -lncurses", not the other way around (which - would give a link-error with static libraries). - - -
- The panel facility was documented in SVr4.2 in Character User Interface - Programming (UNIX SVR4.2). +
+ A panel facility was documented in SVr4.2's Character User Interface + Programming document. It is not part of X/Open Curses. A few implementations exist: - o Systems based on SVr4 source code, e.g., Solaris, provide this + o Systems based on SVr4 source code, such as Solaris, provide this library. - o ncurses (since version 0.6 in 1993) and PDCurses (since version 2.2 - in 1995) provide a panel library whose common ancestor was a public + o ncurses (since version 0.6 in 1993) and PDCurses (since version 2.2 + in 1995) provide a panel library whose common ancestor is a public domain implementation by Warren Tucker published in u386mon 2.20 (1990). - According to Tucker, the SystemV panel library was first released + According to Tucker, the System V panel library was first released in SVr3.2 (1988), and his implementation helped with a port to SVr3.1 (1987). @@ -269,33 +248,25 @@ the same as Tucker's implementation. o NetBSD 8 (2018) has a panel library begun by Valery Ushakov in - 2015. This is based on the AT&T documentation. - + 2015, based on the System V documentation. -
- panel.h interface for the panels library - libpanel.a the panels library itself +
+ Warren Tucker <wht@n4hgf.mt-park.ga.us> originally wrote this + implementation, primarily to assist in porting u386mon to systems + without a native panel library. + Zeyd ben-Halim repackaged it for ncurses. -
- curses(3x), curs_variables(3x), - - This describes ncurses version 6.2 (patch 20201003). + Juergen Pfeifer and Thomas E. Dickey revised and improved the library. -
- Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>, primar- - ily to assist in porting u386mon to systems without a native panels - library. - - Repackaged for ncurses by Zeyd ben-Halim. - - Juergen Pfeifer and Thomas E. Dickey revised/improved the library. +
+ curses(3x), curs_variables(3x) - panel(3x) +ncurses 6.5 2024-03-16 panel(3x)