[Patch #739124] Add use_default_colors() to curses module

This commit is contained in:
Andrew M. Kuchling 2003-08-13 23:11:04 +00:00
parent a54b92b2eb
commit 69f31eb80c
6 changed files with 44 additions and 3 deletions

View File

@ -537,6 +537,15 @@ a window (in which case default behavior would be to use the window
size if \envvar{LINES} and \envvar{COLUMNS} are not set).
\end{funcdesc}
\begin{funcdesc}{use_default_colors}{}
Allow use of default values for colors on terminals supporting this
feature. Use this to support transparency in your
application. The default color is assigned to the color number -1.
After calling this function,
\function{init_pair(x, curses.COLOR_RED, -1)} initializes, for instance,
color pair \var{x} to a red foreground color on the default background.
\end{funcdesc}
\subsection{Window Objects \label{curses-window-objects}}
Window objects, as returned by \function{initscr()} and

View File

@ -69,7 +69,10 @@ details.
\begin{itemize}
\item Descriptions go here.
\item The \module{curses} modules now supports the ncurses extension
\function{use_default_colors()}. On platforms where the terminal
supports transparency, this makes it possible to use a transparent background.
(Contributed by J\"org Lehmann.)
\end{itemize}

View File

@ -181,6 +181,9 @@ def module_funcs(stdscr):
curses.pair_content(curses.COLOR_PAIRS)
curses.pair_number(0)
if hasattr(curses, 'use_default_colors'):
curses.use_default_colors()
if hasattr(curses, 'keyname'):
curses.keyname(13)

View File

@ -325,6 +325,7 @@ Inyeol Lee
John J. Lee
Luc Lefebvre
Kip Lehman
Joerg Lehmann
Marc-Andre Lemburg
William Lewis
Robert van Liere

View File

@ -22,6 +22,8 @@ Extension modules
- The signal module now exposes SIGRTMIN and SIGRTMAX (if available).
- curses module now supports use_default_colors(). [patch #739124]
Library
-------

View File

@ -47,7 +47,7 @@ unsupported functions:
resizeterm restartterm ripoffline scr_dump
scr_init scr_restore scr_set scrl set_curterm set_term setterm
tgetent tgetflag tgetnum tgetstr tgoto timeout tputs
use_default_colors vidattr vidputs waddchnstr waddchstr wchgat
vidattr vidputs waddchnstr waddchstr wchgat
wcolor_set winchnstr winchstr winnstr wmouse_trafo wscrl
Low-priority:
@ -2354,6 +2354,26 @@ PyCurses_Use_Env(PyObject *self, PyObject *args)
return Py_None;
}
#ifndef STRICT_SYSV_CURSES
static PyObject *
PyCurses_Use_Default_Colors(PyObject *self)
{
int code;
PyCursesInitialised
PyCursesInitialisedColor
code = use_default_colors();
if (code != ERR) {
Py_INCREF(Py_None);
return Py_None;
} else {
PyErr_SetString(PyCursesError, "use_default_colors() returned ERR");
return NULL;
}
}
#endif /* STRICT_SYSV_CURSES */
/* List of functions defined in the module */
static PyMethodDef PyCurses_methods[] = {
@ -2434,6 +2454,9 @@ static PyMethodDef PyCurses_methods[] = {
{"unctrl", (PyCFunction)PyCurses_UnCtrl, METH_VARARGS},
{"ungetch", (PyCFunction)PyCurses_UngetCh, METH_VARARGS},
{"use_env", (PyCFunction)PyCurses_Use_Env, METH_VARARGS},
#ifndef STRICT_SYSV_CURSES
{"use_default_colors", (PyCFunction)PyCurses_Use_Default_Colors, METH_NOARGS},
#endif
{NULL, NULL} /* sentinel */
};