_file(file),
_mesh(0),
_field(0),
- _ts(0)
+ _ts(0),
+ _dimMesh(-1)
{
QListViewItem *element;
int row = 0;
- // 0) tree to visualize meshes and fields
+ // 0) label to select field on 3D mesh
+ _myGroupLayout->addWidget( new QLabel(tr("FILTER_SEL_3D"),_GroupC1), row, 0 );
+ row++;
+
+ // 1) tree to visualize meshes and fields
_myList = new QListView( _GroupC1, "List of fields" );
_myList->setMinimumSize( 400, 400 );
_myList->setMaximumSize( 400, 400 );
_myList->setRootIsDecorated(true);
_myList->addColumn(tr("FILTER_NAME"));
_myList->addColumn(tr("FILTER_TYPE"));
+ _myList->addColumn(tr("FILTER_DIM"));
for(int i=0;i<numberOfMeshes;i++){
- element = new QListViewItem( _myList, meshesNames[i], tr("FILTER_MESH") );
+ _dimMesh = _med->getMesh(meshesNames[i])->getMeshDimension();
+ char strd[4];
+ sprintf(strd,"%dD\0",_dimMesh);
+ element = new QListViewItem( _myList, meshesNames[i], tr("FILTER_MESH") ,strd);
element->setExpandable(true);
_myList->setOpen(element,true);
for (int j=0; j<numberOfFields; j++){
deque<DT_IT_> myIteration = _med->getFieldIteration (fieldsNames[j]);
string meshName = _med->getField(fieldsNames[j],myIteration[0].dt,myIteration[0].it)->getSupport()->getMesh()->getName();
- if( strcmp(meshName.c_str(),meshesNames[i].c_str()) == 0)
- new QListViewItem( element, fieldsNames[j], tr("FILTER_FIELD") );
+ if( strcmp(meshName.c_str(),meshesNames[i].c_str()) == 0){
+ QListViewItem *elem = new QListViewItem( element, fieldsNames[j], tr("FILTER_FIELD") );
+ if(_dimMesh != 3)
+ elem->setSelectable(false);
+ }
}
element->setSelectable(false);
_myGroupLayout->addWidget( _myList, row, 0 );
row++;
- // 1) label for time steps
+ // 2) label for time steps
_myLab = new QLabel(tr("FILTER_SEL_TS"),_GroupC1);
_myLab->hide();
_myGroupLayout->addWidget( _myLab, row, 0 );
row++;
- // 2) slider to visualize time steps
+ // 3) slider to visualize time steps
_mySlider = new QSlider(_GroupC1);
_mySlider->setOrientation(Qt::Horizontal);
_mySlider->setTickmarks(QSlider::Below);
_mySlider->hide();
row++;
- // 3) buttons Close and Help
+ // 4) buttons Ok, Cancel and Help
_GroupButtons = new QGroupBox(_GroupC1, "GroupButtons");
_GroupButtons->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, _GroupButtons->sizePolicy().hasHeightForWidth()));
// _GroupButtons->setGeometry(QRect(10, 10, 281, 48));
void SelectField::fieldSelected(QListViewItem *lvi)
{
if(lvi){
- if( strcmp(lvi->text(1),"Field") == 0){
+ if( (strcmp(lvi->text(1),"Field") == 0) && (_dimMesh == 3) ){
_field = lvi->text(0);
_mesh = lvi->parent()->text(0);
deque<DT_IT_> myIteration = _med->getFieldIteration (lvi->text(0));