Add cmc to card db filter model

This commit is contained in:
Gavin Bises 2015-01-29 13:33:06 -05:00
parent 7893ab086f
commit 6fa34c6c04
4 changed files with 18 additions and 17 deletions

View file

@ -31,6 +31,8 @@ const char *CardFilter::attrName(Attr a)
return "set"; return "set";
case AttrManaCost: case AttrManaCost:
return "mana cost"; return "mana cost";
case AttrCmc:
return "cmc";
default: default:
return ""; return "";
} }

View file

@ -22,6 +22,7 @@ public:
AttrText, AttrText,
AttrSet, AttrSet,
AttrManaCost, AttrManaCost,
AttrCmc,
AttrEnd AttrEnd
}; };

View file

@ -199,34 +199,31 @@ bool FilterItem::acceptManaCost(const CardInfo *info) const
return (info->getManaCost() == term); return (info->getManaCost() == term);
} }
bool FilterItem::acceptCmc(const CardInfo *info) const
{
return (info->getCmc() == term);
}
bool FilterItem::acceptCardAttr(const CardInfo *info, CardFilter::Attr attr) const bool FilterItem::acceptCardAttr(const CardInfo *info, CardFilter::Attr attr) const
{ {
bool status;
switch (attr) { switch (attr) {
case CardFilter::AttrName: case CardFilter::AttrName:
status = acceptName(info); return acceptName(info);
break;
case CardFilter::AttrType: case CardFilter::AttrType:
status = acceptType(info); return acceptType(info);
break;
case CardFilter::AttrColor: case CardFilter::AttrColor:
status = acceptColor(info); return acceptColor(info);
break;
case CardFilter::AttrText: case CardFilter::AttrText:
status = acceptText(info); return acceptText(info);
break;
case CardFilter::AttrSet: case CardFilter::AttrSet:
status = acceptSet(info); return acceptSet(info);
break;
case CardFilter::AttrManaCost: case CardFilter::AttrManaCost:
status = acceptManaCost(info); return acceptManaCost(info);
break; case CardFilter::AttrCmc:
return acceptCmc(info);
default: default:
status = true; /* ignore this attribute */ return true; /* ignore this attribute */
} }
return status;
} }
/* need to define these here to make QT happy, otherwise /* need to define these here to make QT happy, otherwise

View file

@ -117,6 +117,7 @@ public:
bool acceptText(const CardInfo *info) const; bool acceptText(const CardInfo *info) const;
bool acceptSet(const CardInfo *info) const; bool acceptSet(const CardInfo *info) const;
bool acceptManaCost(const CardInfo *info) const; bool acceptManaCost(const CardInfo *info) const;
bool acceptCmc(const CardInfo *info) const;
bool acceptCardAttr(const CardInfo *info, CardFilter::Attr attr) const; bool acceptCardAttr(const CardInfo *info, CardFilter::Attr attr) const;
}; };