From 2e02da046d3e56cdf4744f644af35ad07424f48b Mon Sep 17 00:00:00 2001 From: Slávek Banko Date: Mon, 3 Mar 2014 13:46:44 +0100 Subject: Update to upstream version 1.3.6 --- src/listviewcomparison.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/listviewcomparison.cpp') diff --git a/src/listviewcomparison.cpp b/src/listviewcomparison.cpp index b78de94..c03d402 100644 --- a/src/listviewcomparison.cpp +++ b/src/listviewcomparison.cpp @@ -48,6 +48,8 @@ Tellico::ListViewComparison* Tellico::ListViewComparison::create(Data::ConstFiel return new DependentComparison(field_); } else if(field_->type() == Data::Field::Date || field_->formatFlag() == Data::Field::FormatDate) { return new ISODateComparison(field_); + } else if(field_->type() == Data::Field::Choice) { + return new ChoiceComparison(field_); } else if(field_->formatFlag() == Data::Field::FormatTitle) { // Dependent could be title, so put this test after return new TitleComparison(field_); @@ -277,3 +279,11 @@ int Tellico::ISODateComparison::compare(const TQString& str1, const TQString& st } return 0; } + +Tellico::ChoiceComparison::ChoiceComparison(Data::ConstFieldPtr field) : ListViewComparison(field) { + m_values = field->allowed(); +} + +int Tellico::ChoiceComparison::compare(const TQString& str1, const TQString& str2) { + return m_values.findIndex(str1) - m_values.findIndex(str2); +} -- cgit v1.2.3