Commit Graph

120 Commits

Author SHA1 Message Date
Andrzej Rybczak
7c6467a9e7 keys: implement parsing key configuration file 2012-09-05 18:02:37 +02:00
Andrzej Rybczak
6d87ebbc43 generalize UpdateSongsList (-> markSongsInPlaylist) 2012-09-04 18:50:33 +02:00
Andrzej Rybczak
60ca9de919 check if song is in playlist in O(nlogn) instead of O(n^2) 2012-09-04 03:17:12 +02:00
Andrzej Rybczak
506e79b4b1 add allowsFiltering / allowsSearching checks 2012-09-03 16:50:01 +02:00
Andrzej Rybczak
af2cdca3d0 change naming conventions in NC namespace 2012-09-03 15:34:07 +02:00
Andrzej Rybczak
5e8d1673e0 implement ProxySongList for handling general operations on lists 2012-09-02 20:51:20 +02:00
Andrzej Rybczak
d47cad1d50 get rid of 'using namespace NCurses' directive 2012-09-02 15:37:42 +02:00
Andrzej Rybczak
6f59a175ec implement HasSongs interface 2012-09-02 13:52:26 +02:00
Andrzej Rybczak
0811e30319 implement Searchable interface / make use of unnamed namespaces 2012-09-01 16:10:52 +02:00
Andrzej Rybczak
4c944085d6 menu: generalize filtering, introduce interfaces 2012-08-31 23:09:56 +02:00
Andrzej Rybczak
1c46dec39f menu: a few semantic changes 2012-08-31 11:41:22 +02:00
Andrzej Rybczak
d8b2d20bdb menu: move a few methods to Item class 2012-08-31 04:38:20 +02:00
Andrzej Rybczak
7e53654492 menu: implement custom iterator 2012-08-30 20:17:25 +02:00
Andrzej Rybczak
7297b8a9ad use std::bind instead of passing void pointers around 2012-08-30 12:24:19 +02:00
Andrzej Rybczak
798c9b3121 menu: some member name changing 2012-08-30 07:07:19 +02:00
Andrzej Rybczak
b1c301dc1c split majority of helpers and rewrite a few heinous functions 2012-08-29 11:46:17 +02:00
Andrzej Rybczak
eaabbee189 strbuffer: get rid of ostringstream 2012-08-28 08:10:16 +02:00
Andrzej Rybczak
b910ce38be restrict conversions being done in strbuffer 2012-08-28 07:12:31 +02:00
Andrzej Rybczak
a20a195225 mpd: use lambda closures instead of passing vectors to functions 2012-08-28 06:01:56 +02:00
Andrzej Rybczak
397783d701 reduce usage of pointers / replace std::pair in SearchEngine 2012-08-28 02:44:08 +02:00
Andrzej Rybczak
a270fc8402 rewrite MPD::Song object 2012-08-28 00:09:39 +02:00
Andrzej Rybczak
bac6df8c6c some general source code tweaks 2012-08-27 19:06:19 +02:00
Andrzej Rybczak
77a3c73d9c make displayed messages more consistent 2012-08-14 18:18:36 +02:00
Andrzej Rybczak
dad2bba13e optimize a bit adding playlists/directories to playlist 2012-08-14 17:15:18 +02:00
Andrzej Rybczak
181224b837 keybinding system rewrite 2012-08-14 01:44:14 +02:00
Andrzej Rybczak
8b2fd356b7 rename YEAR tag to DATE tag (as it should've been from the beginning) 2012-07-16 00:42:40 +02:00
Marc Jessome
7b90daa690 search engine: add "Album Artist" search constraint. 2012-07-13 23:39:07 +02:00
Andrzej Rybczak
f8151904f5 update copyright dates 2012-03-17 16:46:55 +01:00
Andrzej Rybczak
56467eaac6 new feature: support for merging screens together 2011-11-12 19:47:47 +01:00
Andrzej Rybczak
ca956c3da3 update copyright dates 2011-11-01 13:43:47 +01:00
Andrzej Rybczak
2896351376 Fix column title resize in search engine 2011-10-01 17:08:55 +02:00
Andrzej Rybczak
e323025a82 remove $? formatting from song format while converting to string
this fixes wrong results while searching for phrase
that contains dollar or one of dollar formatting.
2011-02-23 20:16:23 +01:00
Alexey Semenko
18bc6368bf titles_visibility configuration option 2010-08-25 15:35:37 +02:00
Andrzej Rybczak
d962653c76 make feature 'display separators between albums' work in all screens 2010-07-12 09:14:15 +02:00
Frank Blendinger
13dbf65350 key_select_album also works in search results now 2010-07-05 16:22:26 +02:00
Andrzej Rybczak
2583487ffb check for emptiness in some more places
these containers can be empty escpecially if one wants to go for a trip
around ncmpcpp screens while connection to mpd is lost. this is highly
unlikely to happen, but should be secured anyway.
2010-03-25 00:51:56 +01:00
Andrzej Rybczak
a63e1fa27d improvements for 6b5ed187 2010-03-05 21:17:45 +01:00
Frank Blendinger
6b5ed187a1 add new movement keys: {Up,Down}{Album,Artist} 2010-03-04 15:10:58 +01:00
Andrzej Rybczak
bd64052f11 center cursor directly in Menu class
centering in Screen::Scroll is hacky and works
only for scrolling, not e.g. selecting.
2010-02-05 15:49:20 +01:00
Andrzej Rybczak
08daa61907 update copyright notices 2010-01-30 16:24:24 +01:00
Andrzej Rybczak
af12b75b93 use key (F)4 to reset search engine state while being in this screen 2010-01-23 21:49:43 +01:00
Andrzej Rybczak
153081158d add support for built-in mpd searching in search engine 2010-01-22 21:35:34 +01:00
Andrzej Rybczak
45acbfe862 get rid of case sensivity switch in search engine
I don't think anybody was using it.
2010-01-22 20:56:02 +01:00
Andrzej Rybczak
794fbbab3d use predefined contants in Search Engine instead of numbers 2010-01-22 19:32:37 +01:00
Andrzej Rybczak
a27332a825 get rid of using directives
these in ncmpcpp.cpp stay since a lot of memebers are used.
2010-01-22 19:17:35 +01:00
Frank Blendinger
b504b346af screen_switcher between current and last screen
Setting the new config variable "screen_switcher_browser_only" to "no"
will make the "key_screen_switcher" key switch between the current and
the last used screen, sort of like the Alt+Tab window switching
mechanism in many window managers.

This (intendedly) works only for the "main" screens (playlist, browser,
media library, etc.) and not for info/lyrics/server info. Those screens
can be closed with the screen_switcher key, but the will not be
remembered.

indentation correction in config
2009-12-09 00:24:15 +01:00
Andrzej Rybczak
5aaafba545 if there is no selected items, treat the current one as selected 2009-11-26 22:01:27 +01:00
Andrzej Rybczak
07099d4dc0 clear menu option right before rewriting it, not earlier
when it was cleared earlier, mpd status tracer could refresh window
while ncmpcpp was waiting for new string and empty line was visible.
2009-11-13 19:38:47 +01:00
Andrzej Rybczak
495ec25a0a simplify Clear() in Window and its derivatives
it removes argument responsible for immediate refreshing.
since after all calls that were refreshing screen there was
call to Refresh() anyway, this switch doesn't make much sense.
2009-11-13 15:59:18 +01:00
Andrzej Rybczak
dd04406ee5 poll both stdin and mpd using one select()
this allows for immediate reading mpd events
2009-10-25 20:44:07 +01:00