Code

screen_interface: document the cmd callback
[ncmpc.git] / src / screen_interface.h
index ca8b783e85b0965d1d1e7f29be170b9dc0151cad..a5b29b90318ac2b8f6f9daa16bbddd3ea8eac70b 100644 (file)
@@ -1,5 +1,5 @@
 /* ncmpc (Ncurses MPD Client)
- * (c) 2004-2009 The Music Player Daemon Project
+ * (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
 #ifndef NCMPC_SCREEN_INTERFACE_H
 #define NCMPC_SCREEN_INTERFACE_H
 
+#include "config.h"
 #include "command.h"
+#include "ncmpc_curses.h"
 
 #include <stdbool.h>
 #include <stddef.h>
 
-#ifdef HAVE_NCURSESW_NCURSES_H
-#include <ncursesw/ncurses.h>
-#else
-#include <ncurses.h>
-#endif
-
 struct mpdclient;
 
-typedef struct screen_functions {
+struct screen_functions {
        void (*init)(WINDOW *w, int cols, int rows);
        void (*exit)(void);
        void (*open)(struct mpdclient *c);
@@ -41,8 +37,15 @@ typedef struct screen_functions {
        void (*resize)(int cols, int rows);
        void (*paint)(void);
        void (*update)(struct mpdclient *c);
+
+       /**
+        * Handle a command.
+        *
+        * @returns true if the command should not be handled by the ncmpc core.
+        */
        bool (*cmd)(struct mpdclient *c, command_t cmd);
+
        const char *(*get_title)(char *s, size_t size);
-} screen_functions_t;
+};
 
 #endif