blob: 1d7cacef94a9799be4d8f7906af5a3dea9a97107 [file] [log] [blame]
Patrick Georgi3b77b722011-07-07 15:41:53 +02001/* Public Domain Curses */
2
3/* $Id: panel.h,v 1.19 2008/07/13 16:08:16 wmcbrine Exp $ */
4
5/*----------------------------------------------------------------------*
6 * Panels for PDCurses *
7 *----------------------------------------------------------------------*/
8
9#ifndef __PDCURSES_PANEL_H__
10#define __PDCURSES_PANEL_H__ 1
11
12#include <curses.h>
13
14#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
15extern "C"
16{
17#endif
18
19typedef struct panelobs
20{
21 struct panelobs *above;
22 struct panel *pan;
23} PANELOBS;
24
25typedef struct panel
26{
27 WINDOW *win;
28 int wstarty;
29 int wendy;
30 int wstartx;
31 int wendx;
32 struct panel *below;
33 struct panel *above;
34 const void *user;
35 struct panelobs *obscure;
36} PANEL;
37
38int bottom_panel(PANEL *pan);
39int del_panel(PANEL *pan);
40int hide_panel(PANEL *pan);
41int move_panel(PANEL *pan, int starty, int startx);
42PANEL *new_panel(WINDOW *win);
43PANEL *panel_above(const PANEL *pan);
44PANEL *panel_below(const PANEL *pan);
45int panel_hidden(const PANEL *pan);
46const void *panel_userptr(const PANEL *pan);
47WINDOW *panel_window(const PANEL *pan);
48int replace_panel(PANEL *pan, WINDOW *win);
49int set_panel_userptr(PANEL *pan, const void *uptr);
50int show_panel(PANEL *pan);
51int top_panel(PANEL *pan);
52void update_panels(void);
53
54#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
55}
56#endif
57
58#endif /* __PDCURSES_PANEL_H__ */