From 1744a64f77ac1740df6338d4657b66c15dd5fd11 Mon Sep 17 00:00:00 2001 From: Marc Zinnschlag Date: Tue, 3 Sep 2013 12:32:06 +0200 Subject: [PATCH] in filters allow specifiying boolean columns as strings --- apps/opencs/model/filter/parser.cpp | 2 +- apps/opencs/model/filter/textnode.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/opencs/model/filter/parser.cpp b/apps/opencs/model/filter/parser.cpp index d334a7f63..15cdbfce2 100644 --- a/apps/opencs/model/filter/parser.cpp +++ b/apps/opencs/model/filter/parser.cpp @@ -120,7 +120,7 @@ CSMFilter::Token CSMFilter::Parser::getStringToken() } if (string[0]=='"') - string = string.substr (1, string.size()-2); + return string.substr (1, string.size()-2); } return checkKeywords (string); diff --git a/apps/opencs/model/filter/textnode.cpp b/apps/opencs/model/filter/textnode.cpp index a826a2d54..f3d98ce53 100644 --- a/apps/opencs/model/filter/textnode.cpp +++ b/apps/opencs/model/filter/textnode.cpp @@ -45,6 +45,10 @@ bool CSMFilter::TextNode::test (const CSMWorld::IdTable& table, int row, if (value>=0 && value (enums.size())) string = QString::fromUtf8 (enums[value].c_str()); } + else if (data.type()==QVariant::Bool) + { + string = data.toBool() ? "true" : " false"; + } else return false;