aboutsummaryrefslogtreecommitdiffstats
path: root/src/SongFilter.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-09DetachedSong: fork of struct SongMax Kellermann1-0/+23
From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
2013-10-30*: update copyright year to 2013Max Kellermann1-1/+1
2013-10-29SongFilter: add special keyword "base"Max Kellermann1-0/+27
Restores the features from the previous draft commands "findin" / "searchin".
2013-10-29SongFilter: "any" does not match file nameMax Kellermann1-5/+2
According to the protocol documentation, matching the file name was wrong. This removes some awkward special-case code.
2013-10-29SongFilter: use std::stringMax Kellermann1-12/+23
2013-10-20Util/ASCII: add function StringEqualsCaseASCII()Max Kellermann1-3/+4
Replaces GLib's g_ascii_strcasecmp().
2013-10-17Song: GetURI() returns std::stringMax Kellermann1-3/+2
2013-09-26SongFilter: search for album artist falls back to the artist tagMax Kellermann1-9/+21
Implement Mantis ticket 0003646.
2013-09-26IdTable, SongFilter: use std::fill_n() instead of std::fill()Max Kellermann1-1/+1
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-07-30tag: convert to C++Max Kellermann1-3/+4
2013-07-28song: convert header to C++Max Kellermann1-4/+4
2013-01-17path: convert to C++Max Kellermann1-1/+0
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann1-3/+0
2012-08-29SongFilter: convert to a C++ classMax Kellermann1-118/+73
2012-08-29locate: rename to SongFilter.cxxMax Kellermann1-4/+7
2012-08-08locate: add a per-item "fold_case" flagMax Kellermann1-75/+41
Merge locate_song_search() and locate_song_match().
2012-08-08locate: make "tag" unsignedMax Kellermann1-8/+4
2012-08-07locate: make the structs opaqueMax Kellermann1-3/+30
2012-08-07locate: don't allow empty listMax Kellermann1-1/+1
2012-08-07locate: pass unsigned integer to _parse()Max Kellermann1-1/+1
2012-08-07locate: add "pure" attributesMax Kellermann1-0/+2
2012-08-07locate: add "casefold" flag to parserMax Kellermann1-18/+7
Fold the case during construction, without having to create another copy.
2012-08-07locate: remove unused function locate_item_free()Max Kellermann1-7/+0
2012-06-27locate: make variables more localMax Kellermann1-19/+10
2011-09-13locate: remove unused function locate_item_new()Max Kellermann1-13/+0
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-06-30tag: added function tag_name_parse()Max Kellermann1-3/+3
Convert a string into a tag_type enum.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-11-12include config.h in all sourcesMax Kellermann1-0/+1
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
2009-11-04tag: added function tag_name_parse()Max Kellermann1-3/+3
Convert a string into a tag_type enum.
2009-04-28locate: use g_ascii_strcasecmp() instead of strcasecmp()Max Kellermann1-4/+4
strcasecmp() is locale dependent, making it a bad choice for internal string comparisons.
2009-03-13all: Update copyright header.Avuton Olrich1-6/+7
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
2009-02-27tag: make tag.num_items unsignedMax Kellermann1-2/+1
There's no point in declaring num_items as a uint8_t, it doesn't save any space, due to padding. This allows us to lift the articial "255 items" limitation.
2009-02-27tag: no CamelCaseMax Kellermann1-4/+3
Renamed numOfItems to num_items.
2009-01-25use g_free() instead of free()Max Kellermann1-3/+3
On some platforms, g_free() must be used for memory allocated by GLib. This patch intends to correct a lot of occurrences, but is probably not complete.
2009-01-25Fix tag not being set when casefolding the locate_item_listQball Cow1-1/+3
2009-01-24locate: added locate_item_list_casefold()Max Kellermann1-0/+12
Merged casefolding code from two locations into this one library function.
2009-01-24queue_print, dbUtils: use struct locate_item_listMax Kellermann1-8/+10
Changed the function prototypes to get locate_item_list objects instead of num_items/items.
2009-01-24locate: added struct locate_item_listMax Kellermann1-26/+26
Instead of passing two parameters around (number of items, array of items), combine both in a variable size struct.
2009-01-24locate: initialize the whole visited_types arrayMax Kellermann1-2/+6
The declaration initialized only the first element. Initialize the whole array with memset() instead.
2009-01-24locate: use bool instead of intMax Kellermann1-31/+30
Use the C99 bool type instead of integer values (1/0 or 0/-1).
2009-01-24locate: no CamelCaseMax Kellermann1-54/+39
Renamed functions and variables.
2009-01-24locate: renamed LocateTagItem to "struct locate_item"Max Kellermann1-11/+13
No CamelCase and no typedefs.
2009-01-22locate: use const pointersMax Kellermann1-5/+7
Pass const pointers where no writes are performed.
2009-01-05locate: fix strcmp() return value checkMax Kellermann1-1/+1
Yesterday's patch set changed tagItemFoundAndMatches() and moved the strcmp() return value into a bool, but forgot to add the ==0 check.
2009-01-04song: allocate the result of song_get_url()Max Kellermann1-5/+11
2009-01-02locate: use GLib instead of utils.hMax Kellermann1-4/+5
2008-12-13locate: ignore case when searching in song pathsMax Kellermann1-1/+1
The function strstrSearchTag() used g_utf8_casefold() to generate the (pseudo-)lowercase version of the song's URL, but it never used the variable.
2008-10-15locate: use g_utf8_casefold() instead of string_toupper()Max Kellermann1-4/+8
string_toupper() and strDupToUpper() were not able to deal with character sets other than US-ASCII. Use GLib's g_utf8_casefold() for strings.