aboutsummaryrefslogtreecommitdiffstats
path: root/src/ncu.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-09-22 10:04:39 +0200
committerMax Kellermann <max@duempel.org>2008-09-22 10:04:39 +0200
commit07632841df4ff1d8fcfac33bd93e06ee43a4498e (patch)
treecadb859c1ae63041fbc774528974283a2b1635bf /src/ncu.c
parentd28a7d463b62412e2d075b834db20baf93dcaeba (diff)
downloadmpd-07632841df4ff1d8fcfac33bd93e06ee43a4498e.tar.gz
mpd-07632841df4ff1d8fcfac33bd93e06ee43a4498e.tar.xz
mpd-07632841df4ff1d8fcfac33bd93e06ee43a4498e.zip
screen: moved code to ncu.c
Moved basic libncurses initialization to ncu.c and ncu.h. Keep generic code out of screen.c.
Diffstat (limited to 'src/ncu.c')
-rw-r--r--src/ncu.c59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/ncu.c b/src/ncu.c
new file mode 100644
index 000000000..ed3c2273b
--- /dev/null
+++ b/src/ncu.c
@@ -0,0 +1,59 @@
+/* ncmpc
+ * (c) 2004 by Kalle Wallin <kaw@linux.se>
+ * Copyright (C) 2008 Max Kellermann <max@duempel.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "ncu.h"
+#include "colors.h"
+
+void
+ncu_init(void)
+{
+ /* initialize the curses library */
+ initscr();
+
+ /* initialize color support */
+ colors_start();
+
+ /* tell curses not to do NL->CR/NL on output */
+ nonl();
+
+ /* use raw mode (ignore interrupt,quit,suspend, and flow control ) */
+#ifdef ENABLE_RAW_MODE
+ // raw();
+#endif
+
+ /* don't echo input */
+ noecho();
+
+ /* set cursor invisible */
+ curs_set(0);
+
+ /* enable extra keys */
+ keypad(stdscr, TRUE);
+
+ /* initialize mouse support */
+#ifdef HAVE_GETMOUSE
+ if (options.enable_mouse)
+ mousemask(ALL_MOUSE_EVENTS, NULL);
+#endif
+}
+
+void
+ncu_deinit(void)
+{
+ endwin();
+}