diff --git a/Modules/ImageStatisticsUI/Qmitk/QmitkStatisticsModelToStringConverter.cpp b/Modules/ImageStatisticsUI/Qmitk/QmitkStatisticsModelToStringConverter.cpp index ab275fa514..5db7b4de92 100644 --- a/Modules/ImageStatisticsUI/Qmitk/QmitkStatisticsModelToStringConverter.cpp +++ b/Modules/ImageStatisticsUI/Qmitk/QmitkStatisticsModelToStringConverter.cpp @@ -1,124 +1,124 @@ /*============================================================================ The Medical Imaging Interaction Toolkit (MITK) Copyright (c) German Cancer Research Center (DKFZ) All rights reserved. Use of this source code is governed by a 3-clause BSD license that can be found in the LICENSE file. ============================================================================*/ #include "QmitkStatisticsModelToStringConverter.h" #include "mitkExceptionMacro.h" QmitkStatisticsModelToStringConverter::QmitkStatisticsModelToStringConverter() {} void QmitkStatisticsModelToStringConverter::SetTableModel(QmitkImageStatisticsTreeModel *model) { m_statisticsModel = model; } void QmitkStatisticsModelToStringConverter::SetRootIndex(QModelIndex rootIndex) { m_rootIndex = rootIndex; } QString QmitkStatisticsModelToStringConverter::GetString() const { if (m_statisticsModel == nullptr) { mitkThrow() << "Cannot convert TableModel to String: TableModel is nullptr"; } QString textData; int columns = m_statisticsModel->columnCount(); if (m_includeHeaderData) { for (int i = 0; i < columns; i++) { if (i > 0) { textData += m_columnDelimiter; } textData += m_statisticsModel->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString(); } textData += m_rowDelimiter; } textData += Iterate(m_rootIndex, m_statisticsModel); return textData; } void QmitkStatisticsModelToStringConverter::SetRowDelimiter(QChar rowDelimiter) { m_rowDelimiter = rowDelimiter; } void QmitkStatisticsModelToStringConverter::SetColumnDelimiter(QChar columnDelimiter) { m_columnDelimiter = columnDelimiter; } void QmitkStatisticsModelToStringConverter::SetIncludeHeaderData(bool includeHeaderData) { m_includeHeaderData = includeHeaderData; } QString QmitkStatisticsModelToStringConverter::Iterate(const QModelIndex &index, const QmitkImageStatisticsTreeModel *model, int depth) const { QString content; if (index.isValid()) { auto data = index.data(); - if(data.type() == QMetaType::Float || data.type() == QMetaType::Double ) + if(static_cast(data.type()) == QMetaType::Double ) { content = QString("%L1").arg(data.toDouble(), 0, 'f'); } else { content = data.toString(); } } auto rows = model->rowCount(index); for (int r = 0; r < rows; ++r) { auto childIndex = model->index(r, 0, index); if (model->hasChildren(childIndex)) { if (depth>1) { content += QString(" >> "); } content += Iterate(childIndex, model, ++depth); } else { auto cols = model->columnCount(index); for (int c = 0; c < cols; ++c) { if (c > 0) { content += m_columnDelimiter; } else { content += QString(" >> "); } auto childIndex = model->index(r, c, index); content += Iterate(childIndex, model, ++depth); } content += m_rowDelimiter; } } return content; }