-void DatasourceController::visualize(DatasourceEvent::EventType eventType) {
- // We need a _studyEditor updated on the active study
- _studyEditor->updateActiveStudy();
-
- // Get the selected objects in the study (SObject)
- SALOME_StudyEditor::SObjectList * listOfSObject = _studyEditor->getSelectedObjects();
-
- // For each object, emit a signal to the workspace to request a
- // visualisation using the tui command (so that the user can see how
- // to make a view of an object from the tui console).
- for (int i=0; i<listOfSObject->size(); i++) {
- SALOMEDS::SObject_var soField = listOfSObject->at(i);
- int fieldId = _studyEditor->getParameterInt(soField,OBJECT_ID);
- // If fieldId equals -1, then it means that it is not a field
- // managed by the MED module, and we stop this function process.
- if ( fieldId < 0 )
- continue;
-
- MEDCALC::FieldHandler * fieldHandler = MEDFactoryClient::getDataManager()->getFieldHandler(fieldId);
- if (! fieldHandler) {
- QMessageBox::warning(_salomeModule->getApp()->desktop(),
- tr("Operation not allowed"),
- tr("No field is defined"));
- return;
- }
-
- DatasourceEvent * event = new DatasourceEvent();
- event->eventtype = eventType;
- XmedDataObject * dataObject = new XmedDataObject();
- dataObject->setFieldHandler(*fieldHandler);
- event->objectdata = dataObject;
- emit datasourceSignal(event);
- }
-}
-
-void DatasourceController::OnVisualizeScalarMap() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_SCALAR_MAP);
-}
-
-void DatasourceController::OnVisualizeContour() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_CONTOUR);
-}
-
-void DatasourceController::OnVisualizeVectorField() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_VECTOR_FIELD);
-}
-
-void DatasourceController::OnVisualizeSlices() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_SLICES);
-}
-
-void DatasourceController::OnVisualizeDeflectionShape() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_DEFLECTION_SHAPE);
-}
-
-void DatasourceController::OnVisualizePointSprite() {
- this->visualize(DatasourceEvent::EVENT_VIEW_OBJECT_POINT_SPRITE);
-}
-