96 lines · 2.9 KB · TeX
RawDownload
\section{\module{curses.panel} ---         A panel stack extension for curses.} \declaremodule{standard}{curses.panel}\sectionauthor{A.M. Kuchling}{amk@amk.ca}\modulesynopsis{A panel stack extension that adds depth to                 curses windows.} Panels are windows with the added feature of depth, so they can bestacked on top of each other, and only the visible portions ofeach window will be displayed.  Panels can be added, moved upor down in the stack, and removed.  \subsection{Functions \label{cursespanel-functions}} The module \module{curses.panel} defines the following functions:  \begin{funcdesc}{bottom_panel}{}Returns the bottom panel in the panel stack.\end{funcdesc} \begin{funcdesc}{new_panel}{win}Returns a panel object, associating it with the given window \var{win}.Be aware that you need to keep the returned panel object referencedexplicitly.  If you don't, the panel object is garbage collected andremoved from the panel stack.\end{funcdesc} \begin{funcdesc}{top_panel}{}Returns the top panel in the panel stack.\end{funcdesc} \begin{funcdesc}{update_panels}{}Updates the virtual screen after changes in the panel stack. This doesnot call \function{curses.doupdate()}, so you'll have to do this yourself.\end{funcdesc} \subsection{Panel Objects \label{curses-panel-objects}} Panel objects, as returned by \function{new_panel()} above, are windowswith a stacking order. There's always a window associated with apanel which determines the content, while the panel methods areresponsible for the window's depth in the panel stack. Panel objects have the following methods: \begin{methoddesc}{above}{}Returns the panel above the current panel.\end{methoddesc} \begin{methoddesc}{below}{}Returns the panel below the current panel.\end{methoddesc} \begin{methoddesc}{bottom}{}Push the panel to the bottom of the stack.\end{methoddesc} \begin{methoddesc}{hidden}{}Returns true if the panel is hidden (not visible), false otherwise.\end{methoddesc} \begin{methoddesc}{hide}{}Hide the panel. This does not delete the object, it just makes thewindow on screen invisible.\end{methoddesc} \begin{methoddesc}{move}{y, x}Move the panel to the screen coordinates \code{(\var{y}, \var{x})}.\end{methoddesc} \begin{methoddesc}{replace}{win}Change the window associated with the panel to the window \var{win}.\end{methoddesc} \begin{methoddesc}{set_userptr}{obj}Set the panel's user pointer to \var{obj}. This is used to associate anarbitrary piece of data with the panel, and can be any Python object.\end{methoddesc} \begin{methoddesc}{show}{}Display the panel (which might have been hidden).\end{methoddesc} \begin{methoddesc}{top}{}Push panel to the top of the stack.\end{methoddesc} \begin{methoddesc}{userptr}{}Returns the user pointer for the panel.  This might be any Python object.\end{methoddesc} \begin{methoddesc}{window}{}Returns the window object associated with the panel.\end{methoddesc}