mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
AppFwk : Table View - Added support for PdmPtrArrayFieldHandle
This commit is contained in:
@@ -425,6 +425,10 @@ caf::PdmUiFieldEditorHandle* PdmUiFieldEditorHelper::fieldEditorForField(PdmUiFi
|
||||
{
|
||||
fieldTypeName = caf::PdmUiComboBoxEditor::uiEditorTypeName();
|
||||
}
|
||||
else if (fieldTypeName.indexOf("PdmPtrArrayField") != -1)
|
||||
{
|
||||
fieldTypeName = caf::PdmUiListEditor::uiEditorTypeName();
|
||||
}
|
||||
else if (field->toUiBasedQVariant().type() != QVariant::List)
|
||||
{
|
||||
// Handle a single value field with valueOptions: Make a combobox
|
||||
|
||||
@@ -192,6 +192,30 @@ QVariant PdmUiTableViewModel::data(const QModelIndex &index, int role /*= Qt::Di
|
||||
if (role == Qt::DisplayRole || role == Qt::EditRole)
|
||||
{
|
||||
PdmFieldHandle* fieldHandle = getField(index);
|
||||
if (dynamic_cast<PdmPtrArrayFieldHandle*>(fieldHandle))
|
||||
{
|
||||
PdmPtrArrayFieldHandle* ptrArrayFieldHandle = dynamic_cast<PdmPtrArrayFieldHandle*>(fieldHandle);
|
||||
|
||||
QString displayText;
|
||||
|
||||
for (size_t i = 0; i < ptrArrayFieldHandle->size(); i++)
|
||||
{
|
||||
PdmObjectHandle* objHandle = ptrArrayFieldHandle->at(i);
|
||||
if (objHandle && objHandle->uiCapability())
|
||||
{
|
||||
PdmUiObjectHandle* uiObjHandle = objHandle->uiCapability();
|
||||
if (!displayText.isEmpty()) displayText += ", ";
|
||||
|
||||
caf::PdmUiFieldHandle* uiFieldHandle = uiObjHandle->userDescriptionField()->uiCapability();
|
||||
if (uiFieldHandle)
|
||||
{
|
||||
displayText += uiFieldHandle->uiValue().toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return displayText;
|
||||
}
|
||||
PdmUiFieldHandle* uiFieldHandle = fieldHandle->uiCapability();
|
||||
if (uiFieldHandle)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user