Code

replaced get_screen_X() with static screen_functions variable
[ncmpc.git] / src / screen.h
index 0ecd9ef2c2a33f3fa7d34cd7f7b04f0196479287..7aa72d7d296188e39f73a15f0b26460c1cc6ce34 100644 (file)
@@ -1,7 +1,11 @@
 #ifndef SCREEN_H
 #define SCREEN_H
+
+#include "mpdclient.h"
+#include "command.h"
+
 #include <ncurses.h>
-#include "list_window.h"
+#include <glib.h>
 
 #define IS_PLAYING(s) (s==MPD_STATUS_STATE_PLAY)
 #define IS_PAUSED(s) (s==MPD_STATUS_STATE_PAUSE)
 
 #define MAX_SONGNAME_LENGTH   512
 
-typedef struct {
+struct list_window;
+
+struct window {
        WINDOW *w;
        int rows, cols;
        int cur_action_id;
-} window_t;
+};
 
-typedef struct {
-       window_t top_window;
-       window_t main_window;
-       window_t progress_window;
-       window_t status_window;
+typedef struct screen {
+       struct window top_window;
+       struct window main_window;
+       struct window progress_window;
+       struct window status_window;
 
        /* GTime is equivalent to time_t */
        GTime start_timestamp;
@@ -43,16 +49,16 @@ typedef struct {
 
 typedef void (*screen_init_fn_t)(WINDOW *w, int cols, int rows);
 typedef void (*screen_exit_fn_t)(void);
-typedef void (*screen_open_fn_t)(screen_t *screen, mpdclient_t *c);
+typedef void (*screen_open_fn_t)(struct screen *screen, mpdclient_t *c);
 typedef void (*screen_close_fn_t)(void);
 typedef void (*screen_resize_fn_t)(int cols, int rows);
-typedef void (*screen_paint_fn_t)(screen_t *screen, mpdclient_t *c);
-typedef void (*screen_update_fn_t)(screen_t *screen, mpdclient_t *c);
-typedef int (*screen_cmd_fn_t)(screen_t *scr, mpdclient_t *c, command_t cmd);
+typedef void (*screen_paint_fn_t)(struct screen *screen, mpdclient_t *c);
+typedef void (*screen_update_fn_t)(struct screen *screen, mpdclient_t *c);
+typedef int (*screen_cmd_fn_t)(struct screen *scr, mpdclient_t *c, command_t cmd);
 typedef const char *(*screen_title_fn_t)(char *s, size_t size);
-typedef list_window_t *(*screen_get_lw_fn_t) (void);
+typedef struct list_window *(*screen_get_lw_fn_t) (void);
 
-typedef struct {
+typedef struct screen_functions {
        screen_init_fn_t   init;
        screen_exit_fn_t   exit;
        screen_open_fn_t   open;
@@ -83,28 +89,7 @@ gint screen_get_id(const char *name);
 
 gint get_cur_mode_id(void);
 int screen_get_mouse_event(mpdclient_t *c,
-                          list_window_t *lw, int lw_length, 
+                          struct list_window *lw, int lw_length, 
                           unsigned long *bstate, int *row);
 
-screen_functions_t *
-get_screen_search(void);
-
-screen_functions_t *
-get_screen_browse(void);
-
-screen_functions_t *
-get_screen_playlist(void);
-
-screen_functions_t *
-get_screen_help(void);
-
-screen_functions_t *
-get_screen_lyrics(void);
-
-screen_functions_t *
-get_screen_keydef(void);
-
-screen_functions_t *
-get_screen_clock(void);
-
 #endif