: QDialog(FILTER::GetDesktop( theModule ), name, modal, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
myFilterGUI( theModule ),
_file(file),
- _mesh(0),
- _field(0),
+ _mesh(NULL),
+ _field(NULL),
_ts(0),
_dimMesh(-1)
{
QListViewItem *element;
SCRUTE(_file);
- _med = new ::MED(MED_DRIVER,_file);
- deque<string> meshesNames = _med->getMeshNames();
- int numberOfMeshes = meshesNames.size();
-
- deque<string> fieldsNames = _med->getFieldNames();
- int numberOfFields = fieldsNames.size();
+ _filter = myFilterGUI->InitFilterGen();
+ _filter->loadMED(_file);
+ SALOME_FILTER::StrSeq* meshesNames = _filter->getMeshNames();
+ int numberOfMeshes = (*meshesNames).length();
+
+ SALOME_FILTER::StrSeq* fieldsNames = _filter->getFieldNames();
+ int numberOfFields = (*fieldsNames).length();
QGridLayout* _lay = new QGridLayout( this, 1, 1 );
_myList->addColumn(tr("FILTER_DIM"));
for(int i=0;i<numberOfMeshes;i++){
- _dimMesh = _med->getMesh(meshesNames[i])->getMeshDimension();
+ _dimMesh = _filter->getMeshDimension((*meshesNames)[i]);
char strd[4];
sprintf(strd,"%dD\0",_dimMesh);
- element = new QListViewItem( _myList, meshesNames[i], tr("FILTER_MESH") ,strd);
+ element = new QListViewItem( _myList, QString((*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){
- QListViewItem *elem = new QListViewItem( element, fieldsNames[j], tr("FILTER_FIELD") );
+ SALOME_FILTER::DTITSeq *myIteration = _filter->getFieldIteration((*fieldsNames)[j]);
+ string meshName = _filter->getMeshName((*fieldsNames)[j],(*myIteration)[0].dt,(*myIteration)[0].it);
+ if( strcmp(meshName.c_str(),(*meshesNames)[i]) == 0){
+ QListViewItem *elem = new QListViewItem( element, QString((*fieldsNames)[j]), tr("FILTER_FIELD") );
if(_dimMesh != 3)
elem->setSelectable(false);
}
{
// no need to delete child widgets, Qt does it all for us
cout << "SelectField: destructor called" << endl;
- delete _med;
+ _filter->unloadMED();
}
void SelectField::fieldSelected(QListViewItem *lvi)
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));
- int numberOfIteration = myIteration.size();
+// deque<DT_IT_> myIteration = _filterMED->getFieldIteration(lvi->text(0));
+ SALOME_FILTER::DTITSeq *myIteration = _filter->getFieldIteration(lvi->text(0));
+ int numberOfIteration = (*myIteration).length();
if( numberOfIteration > 1 ){
- _mySlider->setRange(myIteration[0].dt,
- myIteration[numberOfIteration-1].dt);
+ _mySlider->setRange((*myIteration)[0].dt,
+ (*myIteration)[numberOfIteration-1].dt);
_myLab->show();
_mySlider->show();
}