blob: 2b1203bf344d5eacb1d8a9d8ee4cb2f87114ad11 [file] [log] [blame]
Andrew M. Kuchling676634b2000-12-22 21:57:42 +00001\section{\module{curses.panel} ---
2 A panel stack extension for curses.}
3
4\declaremodule{standard}{curses.panel}
Andrew M. Kuchling4794f0b2001-11-05 21:31:33 +00005\sectionauthor{A.M. Kuchling}{akuchlin@mems-exchange.org}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +00006\modulesynopsis{A panel stack extension that adds depth to
7 curses windows.}
8
9Panels are windows with the added feature of depth, so they can be
10stacked on top of each other, and only the visible portions of
11each window will be displayed. Panels can be added, moved up
12or down in the stack, and removed.
13
14\subsection{Functions \label{cursespanel-functions}}
15
16The module \module{curses.panel} defines the following functions:
17
18
19\begin{funcdesc}{bottom_panel}{}
20Returns the bottom panel in the panel stack.
21\end{funcdesc}
22
Fred Drake14631f62001-03-29 22:22:23 +000023\begin{funcdesc}{new_panel}{win}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000024Returns a panel object, associating it with the given window \var{win}.
Fred Drake14631f62001-03-29 22:22:23 +000025\end{funcdesc}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000026
27\begin{funcdesc}{top_panel}{}
28Returns the top panel in the panel stack.
29\end{funcdesc}
30
31\begin{funcdesc}{update_panels}{}
32Updates the virtual screen after changes in the panel stack. This does
33not call \function{curses.doupdate()}, so you'll have to do this yourself.
34\end{funcdesc}
35
36\subsection{Panel Objects \label{curses-panel-objects}}
37
38Panel objects, as returned by \function{new_panel()} above, are windows
39with a stacking order. There's always a window associated with a
40panel which determines the content, while the panel methods are
41responsible for the window's depth in the panel stack.
42
43Panel objects have the following methods:
44
Fred Drake14631f62001-03-29 22:22:23 +000045\begin{methoddesc}{above}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000046Returns the panel above the current panel.
47\end{methoddesc}
48
Fred Drake14631f62001-03-29 22:22:23 +000049\begin{methoddesc}{below}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000050Returns the panel below the current panel.
51\end{methoddesc}
52
Fred Drake14631f62001-03-29 22:22:23 +000053\begin{methoddesc}{bottom}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000054Push the panel to the bottom of the stack.
55\end{methoddesc}
56
Fred Drake14631f62001-03-29 22:22:23 +000057\begin{methoddesc}{hidden}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000058Returns true if the panel is hidden (not visible), false otherwise.
59\end{methoddesc}
60
Fred Drake14631f62001-03-29 22:22:23 +000061\begin{methoddesc}{hide}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000062Hide the panel. This does not delete the object, it just makes the
63window on screen invisible.
64\end{methoddesc}
65
66\begin{methoddesc}{move}{y, x}
67Move the panel to the screen coordinates \code{(\var{y}, \var{x})}.
68\end{methoddesc}
69
70\begin{methoddesc}{replace}{win}
71Change the window associated with the panel to the window \var{win}.
72\end{methoddesc}
73
74\begin{methoddesc}{set_userptr}{obj}
75Set the panel's user pointer to \var{obj}. This is used to associate an
76arbitrary piece of data with the panel, and can be any Python object.
77\end{methoddesc}
78
Fred Drake14631f62001-03-29 22:22:23 +000079\begin{methoddesc}{show}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000080Display the panel (which might have been hidden).
81\end{methoddesc}
82
Fred Drake14631f62001-03-29 22:22:23 +000083\begin{methoddesc}{top}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000084Push panel to the top of the stack.
85\end{methoddesc}
86
Fred Drake14631f62001-03-29 22:22:23 +000087\begin{methoddesc}{userptr}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000088Returns the user pointer for the panel. This might be any Python object.
89\end{methoddesc}
90
Fred Drake14631f62001-03-29 22:22:23 +000091\begin{methoddesc}{window}{}
Andrew M. Kuchling676634b2000-12-22 21:57:42 +000092Returns the window object associated with the panel.
93\end{methoddesc}