aboutsummaryrefslogtreecommitdiffstats
path: root/src/screen_browser.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* screen_browser: fix warning when lyrics screen is disabledMax Kellermann2008-10-081-0/+2
| | | | | A local variable was only used by the lyrics screen code. Put #ifdef around its declaration.
* screen: export the global variable "screen"Max Kellermann2008-10-031-3/+2
| | | | | screen_t is a singleton. We do not have to pass it around everywhere. Export the one global variable.
* don't import mpdclient_finish_command() twiceMax Kellermann2008-10-031-2/+0
| | | | | mpdclient_finish_command() is already imported by mpdclient.h, don't do it again in the sources.
* list_window: remove list_window_state_tMax Kellermann2008-10-031-9/+15
| | | | | | | | We do not need to save a stack of list window states. When we return to a parent directory, we just have to find the directory which we come from in the parent list. Note that this patch resets the cursor when going to the root directory, but I think it's not that important, and I will deal with that later.
* use g_basename() instead of basename()Max Kellermann2008-10-031-4/+4
| | | | | g_basename() is always available, no need to implement a fallback. Also use g_path_get_dirname(), g_path_get_basename().
* screen_browser: added constant playlist_formatMax Kellermann2008-10-021-6/+3
| | | | | Moved the format string for playlist files to the constant "playlist_format".
* moved code to charset.cMax Kellermann2008-10-021-0/+1
| | | | | Move everything which deals with UTF-8 strings and character set conversion to charset.c, header charset.h.
* removed LIST_FORMAT, STATUS_FORMATMax Kellermann2008-10-021-4/+3
| | | | | Use options.list_format and options.status_format directly instead of these two macros.
* moved i18n macros to i18n.hMax Kellermann2008-10-021-0/+1
| | | | | Don't make everybody include ncmpc.h just to have generic features. Move generic i18n macros to a separate header.
* removed the debugging function D()Max Kellermann2008-10-021-1/+0
| | | | gdb is for debugging. We don't need D() calls littered all over.
* screen_browser: unexport command implementationsMax Kellermann2008-10-021-5/+7
| | | | | | When we created created browser_cmd(), several functions of the screen_browser API weren't used by other sources anymore. We can now unexport them.
* screen_lyrics: add screen_lyrics_switch()Max Kellermann2008-10-021-0/+16
| | | | | | screen_lyrics_switch() opens the lyrics screen and displays the lyrics of the specified song. This way, the user may view the lyrics of any song in the database browser.
* screen_browser: added browser_cmd()Max Kellermann2008-10-021-0/+53
| | | | Merge a lot of code from the 3 browser screen into browser_cmd().
* screen_browser: added hotkey for adding songMax Kellermann2008-09-251-0/+11
| | | | | CMD_ADD ('a') appends a song to the playlist, no matter if it is already there, i.e. unlike CMD_SELECT, it does not toggle the song.
* code style, indent with tabs XMax Kellermann2008-09-251-2/+0
| | | | Follow the same code style als MPD itself.
* screen: moved list_window mouse code to list_window.cMax Kellermann2008-09-221-1/+2
| | | | | | Move the portion of screen_get_mouse_event() which handles list_window clicks to list_window.c. The code contained a NULL pointer dereference, which is now fixed.
* browser: check if the selection is validMax Kellermann2008-09-211-1/+2
| | | | Don't call filelist_get() with an invalid index.
* filelist: use GPtrArray instead of GListMax Kellermann2008-09-191-19/+15
| | | | | Since we do a lot of indexed accesses to the filelist, a linked list doesn't seem appropriate. Use GPtrArray instead.
* browser: added function browser_get_selected()Max Kellermann2008-09-191-9/+11
| | | | | browser_get_selected() checks if there is a file list and a valid selection, and returns the selected entry.
* filelist: provide more functions for working with a filelistMax Kellermann2008-09-191-6/+7
| | | | Avoid direct accesses to the filelist struct, provide an API for that.
* filelist: drop "mpdclient" prefixMax Kellermann2008-09-191-2/+2
| | | | | The separate filelist library does not depend on mpdclient, so the prefix is superfluous.
* browser: use mpdclient_filelist_find_song() in set_highlight()Max Kellermann2008-09-191-18/+9
| | | | | A song should not be twice in the browser. Simplify set_highlight() by finding the entry with mpdclient_filelist_find_song().
* browser: song must not be NULL in set_highlight()Max Kellermann2008-09-191-2/+1
| | | | | The caller must not pass NULL to set_highlight(). Replaced check with assertion.
* screen_browser: removed entity.song!=NULL checkMax Kellermann2008-09-181-6/+5
| | | | | It is guaranteed that the "song" attribute is not NULL, remove the check.
* screen_browser: removed redundant highlight checkMax Kellermann2008-09-181-6/+5
| | | | | | browser_select_entry() checked the entry's "highlight" flag twice: the first time, it was toggled, and the second time, action was performed based on the flag. Merge the two checks.
* screen_browser: removed redundant entity type checksMax Kellermann2008-09-181-14/+10
| | | | | The function browser_select_entry() returns early when the entity type is not "SONG". No need to double check that.
* screen_browser: moved code to browser_select_entry()Max Kellermann2008-09-181-51/+24
| | | | | | Moved code from browser_handle_select(). Call this new function also from browser_handle_select_all(). This fixes a bug in select_all(): it actually did not select all, but stopped after the first song.
* screen_browser: removed commented codeMax Kellermann2008-09-181-15/+0
|
* screen_browser: moved code to browser_playlist_changed()Max Kellermann2008-09-181-2/+29
| | | | | Merge code from all 3 browser screens into one generic browser function.
* screen_browser: moved code to screen_browser.cMax Kellermann2008-09-181-0/+474
Isolate the generic browser code from the directory browser.