X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fwreadln.h;h=f03a32dc4f360f8c4d019431a276a1bc49bcc4b5;hb=7fca69ed2b8698bf46bcef0d489ab72f5ad3abfe;hp=72ef411c4402a034ab3c000c3c1e22c734ad7bb8;hpb=2d1cbdd3535af0e660129ad3af3121c595e8c3a8;p=ncmpc.git diff --git a/src/wreadln.h b/src/wreadln.h index 72ef411..f03a32d 100644 --- a/src/wreadln.h +++ b/src/wreadln.h @@ -1,15 +1,36 @@ +/* ncmpc (Ncurses MPD Client) + * (c) 2004-2010 The Music Player Daemon Project + * Project homepage: http://musicpd.org + + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + #ifndef WREADLN_H #define WREADLN_H -/* max size allocated for a line */ -extern guint wrln_max_line_size; +#include "config.h" -/* max items stored in the history list */ -extern guint wrln_max_history_length; +#include -/* custom wgetch function */ -typedef int (*wrln_wgetch_fn_t) (WINDOW *w); -extern wrln_wgetch_fn_t wrln_wgetch; +#ifdef HAVE_NCURSESW_NCURSES_H +#include +#else +#include +#endif + +#ifndef NCMPC_MINI /* completion callback data */ extern void *wrln_completion_callback_data; @@ -20,19 +41,28 @@ extern wrln_gcmp_pre_cb_t wrln_pre_completion_callback; /* post completion callback */ typedef void (*wrln_gcmp_post_cb_t) (GCompletion *gcmp, gchar *s, GList *l, - void *data); + void *data); extern wrln_gcmp_post_cb_t wrln_post_completion_callback; -/* Note, wreadln calls curs_set() and noecho(), to enable cursor and +#endif + +/* Note, wreadln calls curs_set() and noecho(), to enable cursor and * disable echo. wreadln will not restore these settings when exiting! */ gchar *wreadln(WINDOW *w, /* the curses window to use */ - gchar *prompt, /* the prompt string or NULL */ - gchar *initial_value, /* initial value or NULL for a empty line - * (char *) -1 = get value from history */ - gint x1, /* the maximum x position or 0 */ - GList **history, /* a pointer to a history list or NULL */ + const gchar *prompt, /* the prompt string or NULL */ + const gchar *initial_value, /* initial value or NULL for a empty line + * (char *) -1 = get value from history */ + unsigned x1, /* the maximum x position or 0 */ + GList **history, /* a pointer to a history list or NULL */ GCompletion *gcmp /* a GCompletion structure or NULL */ ); +gchar * +wreadln_masked(WINDOW *w, + const gchar *prompt, + const gchar *initial_value, + unsigned x1, + GList **history, + GCompletion *gcmp); #endif