void QgsMeshRendererActiveDatasetWidget::updateMetadata( QgsMeshDatasetIndex datasetIndex ) { if ( !mMeshLayer || !mMeshLayer->dataProvider() || !datasetIndex.isValid() ) { mActiveDatasetMetadata->setText( tr( "No dataset selected" ) ); } else { QString msg; msg += QStringLiteral( "<table>" ); const QgsMeshDatasetMetadata meta = mMeshLayer->dataProvider()->datasetMetadata( datasetIndex ); msg += QStringLiteral( "<tr><td>%1</td><td>%2</td></tr>" ) .arg( tr( "Is valid" ) ) .arg( meta.isValid() ? tr( "Yes" ) : tr( "No" ) ); msg += QStringLiteral( "<tr><td>%1</td><td>%2</td></tr>" ) .arg( tr( "Time" ) ) .arg( meta.time() ); const QgsMeshDatasetGroupMetadata gmeta = mMeshLayer->dataProvider()->datasetGroupMetadata( datasetIndex ); msg += QStringLiteral( "<tr><td>%1</td><td>%2</td></tr>" ) .arg( tr( "Data Type" ) ) .arg( gmeta.dataType() == QgsMeshDatasetGroupMetadata::DataOnVertices ? tr( "Defined on vertices" ) : tr( "Defined on faces" ) ); msg += QStringLiteral( "<tr><td>%1</td><td>%2</td></tr>" ) .arg( tr( "Is vector" ) ) .arg( gmeta.isVector() ? tr( "Yes" ) : tr( "No" ) ); for ( auto it = gmeta.extraOptions().constBegin(); it != gmeta.extraOptions().constEnd(); ++it ) { msg += QStringLiteral( "<tr><td>%1</td><td>%2</td></tr>" ).arg( it.key() ).arg( it.value() ); } msg += QStringLiteral( "</table>" ); mActiveDatasetMetadata->setText( msg ); } }