#3055 Table Editor : Fix display of date as text

This commit is contained in:
Magne Sjaastad 2018-06-18 10:44:50 +02:00
parent 4fd2f982fd
commit 18a0a9aa9a

View File

@ -42,6 +42,7 @@
#include "cafPdmObject.h"
#include "cafPdmUiComboBoxEditor.h"
#include "cafPdmUiCommandSystemProxy.h"
#include "cafPdmUiDateEditor.h"
#include "cafPdmUiFieldEditorHelper.h"
#include "cafPdmUiLineEditor.h"
#include "cafPdmUiTableItemEditor.h"
@ -271,6 +272,7 @@ QVariant PdmUiTableViewQModel::data(const QModelIndex &index, int role /*= Qt::D
// TODO: Create a function in pdmObject like this
// virtual void defineDisplayString(const PdmFieldHandle* field, QString uiConfigName) {}
{
PdmUiLineEditorAttributeUiDisplayString leab;
uiObjForRow->editorAttribute(fieldHandle, m_currentConfigName, &leab);
@ -278,7 +280,26 @@ QVariant PdmUiTableViewQModel::data(const QModelIndex &index, int role /*= Qt::D
{
val = leab.m_displayString;
}
else
}
if (val.isNull())
{
PdmUiDateEditorAttribute leab;
uiObjForRow->editorAttribute(fieldHandle, m_currentConfigName, &leab);
QString dateFormat = leab.dateFormat;
if (!dateFormat.isEmpty())
{
QDate date = uiFieldHandle->uiValue().toDate();
if (date.isValid())
{
QString displayString = date.toString(dateFormat);
val = displayString;
}
}
}
if (val.isNull())
{
val = uiFieldHandle->uiValue();
}