Mercurial > hg > easaier-soundaccess
diff data/fileio/QueryConfigReader.cpp @ 227:59d84a8bb76c
compatibility with changes done for the web site:
- easaier servlet name changed
- new queryfield.xml ("range" attributes form)
author | lbajardsilogic |
---|---|
date | Wed, 27 Feb 2008 16:00:02 +0000 |
parents | 11e298cdb9e7 |
children |
line wrap: on
line diff
--- a/data/fileio/QueryConfigReader.cpp Wed Feb 13 13:45:21 2008 +0000 +++ b/data/fileio/QueryConfigReader.cpp Wed Feb 27 16:00:02 2008 +0000 @@ -46,6 +46,8 @@ QueryConfigHandler::QueryConfigHandler(QueryModel * queryModel) : QXmlDefaultHandler(), m_inTheme(false), m_inFieldGroup(false), + m_inBinding(false), + m_propertyName(""), m_queryModel(queryModel) {} @@ -84,15 +86,19 @@ } else if (name == "field") { ok = true; - QString name = attributes.value("name"); + m_propertyName = attributes.value("name"); QString label = attributes.value("label"); QString type = attributes.value("xsi:type"); QString range = attributes.value("range"); QString unit = attributes.value("unit"); QString comment = attributes.value("comment"); - m_queryModel->addProperty(name, label, type, range, unit, comment); + m_queryModel->addProperty(m_propertyName, label, type, range, unit, comment); - } + } else if (name == "range") { + + m_inBinding = true; + ok = true; + } if (!ok) { std::cerr << "WARNING: QueryConfigReader-XML: Failed to completely process element \"" @@ -115,6 +121,10 @@ { m_inFieldGroup = false; } + else if (name == "range") + { + m_inBinding = false; + } return true; } @@ -123,6 +133,11 @@ { bool ok = false; + if (m_inBinding) + { + m_queryModel->addRange(m_propertyName, str); + } + return true; }