X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fscreen_browser.h;h=b30a1da53beb7632def15dc293e1407acab75e6a;hb=7919090d6bc9685dffdb308c7dc70b1dac45ab0b;hp=112ed9f9a3d7fcd2cd1bfe88b0a08aff455dbcb2;hpb=e67ad30e9bea8ce099b4a6311cf2b20ce6d86263;p=ncmpc.git diff --git a/src/screen_browser.h b/src/screen_browser.h index 112ed9f..b30a1da 100644 --- a/src/screen_browser.h +++ b/src/screen_browser.h @@ -1,56 +1,69 @@ /* 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 * 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 SCREEN_BROWSER_H #define SCREEN_BROWSER_H -#include "screen.h" -#include "mpdclient.h" +#include "command.h" #include "config.h" +#include "ncmpc_curses.h" #include +struct mpdclient; +struct mpdclient_playlist; +struct filelist; struct list_window; struct list_window_state; struct screen_browser { struct list_window *lw; - mpdclient_filelist_t *filelist; + struct filelist *filelist; }; #ifndef NCMPC_MINI void -sync_highlights(mpdclient_t *c, mpdclient_filelist_t *fl); +screen_browser_sync_highlights(struct filelist *fl, + const struct mpdclient_playlist *playlist); -void -browser_playlist_changed(struct screen_browser *browser, mpdclient_t *c, - int event, gpointer data); +#else + +#include +static inline void +screen_browser_sync_highlights(G_GNUC_UNUSED struct filelist *fl, + G_GNUC_UNUSED const struct mpdclient_playlist *playlist) +{ +} #endif -const char *browser_lw_callback(unsigned index, bool *highlight, void *filelist); +void +screen_browser_paint_directory(WINDOW *w, unsigned width, + bool selected, const char *name); -bool -browser_change_directory(struct screen_browser *browser, mpdclient_t *c, - filelist_entry_t *entry, const char *new_path); +void +screen_browser_paint(const struct screen_browser *browser); + +struct filelist_entry * +browser_get_selected_entry(const struct screen_browser *browser); bool browser_cmd(struct screen_browser *browser,