mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-10 04:57:00 -04:00
* find_i function for case insensitive searching
* card::contains uses case insensitive find * Added card::contains_words for quick search, which searches for each word separately git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1484 0fc631ac-6414-0410-93d0-97cfa31319b6
This commit is contained in:
+15
-1
@@ -57,10 +57,24 @@ String Card::identification() const {
|
||||
|
||||
bool Card::contains(String const& query) const {
|
||||
FOR_EACH_CONST(v, data) {
|
||||
if (v->toString().find(query) != String::npos) return true;
|
||||
if (find_i(v->toString(),query) != String::npos) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
bool Card::contains_words(String const& query) const {
|
||||
// iterate over the words
|
||||
for (size_t i = 0 ; i < query.size() ; ) {
|
||||
size_t end = query.find_first_of(_(" "),i);
|
||||
if (end == i) {
|
||||
i++;
|
||||
} else {
|
||||
end = min(end,query.size());
|
||||
if (!contains(query.substr(i,end-i))) return false;
|
||||
i = end;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
IndexMap<FieldP, ValueP>& Card::extraDataFor(const StyleSheet& stylesheet) {
|
||||
return extra_data.get(stylesheet.name(), stylesheet.extra_card_fields);
|
||||
|
||||
Reference in New Issue
Block a user