X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_ImportGeomObjectOp.cxx;h=02df17e1b99d7e5f7480746f0672c13c8c2e0642;hb=f993e4d01e9bb9de221db4c90d7a6c617696f3ec;hp=a454cd985c7b5d30393d8eaf06fa7ac81aa6b2d0;hpb=a1431f03eac1d1aed4203d0568d987c41ce939b3;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_ImportGeomObjectOp.cxx b/src/HYDROGUI/HYDROGUI_ImportGeomObjectOp.cxx index a454cd98..02df17e1 100644 --- a/src/HYDROGUI/HYDROGUI_ImportGeomObjectOp.cxx +++ b/src/HYDROGUI/HYDROGUI_ImportGeomObjectOp.cxx @@ -1,12 +1,8 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE -// -// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// +// Copyright (C) 2014-2015 EDF-R&D // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -23,10 +19,11 @@ #include "HYDROGUI_ImportGeomObjectOp.h" #include "HYDROGUI_GeomObjectDlg.h" - +#include "HYDROGUI_DataObject.h" #include "HYDROGUI_DataModel.h" #include "HYDROGUI_Module.h" #include "HYDROGUI_Tool.h" +#include "HYDROGUI_Tool2.h" #include "HYDROGUI_UpdateFlags.h" #include @@ -145,7 +142,8 @@ void HYDROGUI_ImportGeomObjectOp::commitOperation() } bool HYDROGUI_ImportGeomObjectOp::processApply( int& theUpdateFlags, - QString& theErrorMsg ) + QString& theErrorMsg, + QStringList& theBrowseObjectsEntries ) { // Get active SalomeApp_Study SalomeApp_Study* aStudy = @@ -213,12 +211,14 @@ bool HYDROGUI_ImportGeomObjectOp::processApply( int& theUpdateFlags, if ( myOpType == ImportCreatedAsObstacle || myOpType == ImportSelectedAsObstacle ) { anObject = doc()->CreateObject( KIND_OBSTACLE ); Handle(HYDROData_Obstacle) anObstacle = Handle(HYDROData_Obstacle)::DownCast( anObject ); - anObstacle->SetFillingColor( HYDROData_Obstacle::DefaultFillingColor() ); - anObstacle->SetBorderColor( HYDROData_Obstacle::DefaultBorderColor() ); + anObstacle->SetFillingColor( anObstacle->DefaultFillingColor() ); + anObstacle->SetBorderColor( anObstacle->DefaultBorderColor() ); + anObstacle->SetGeomObjectEntry( anEntry.toLatin1().constData() ); } else if ( myOpType == ImportSelectedAsPolyline ) { anObject = doc()->CreateObject( KIND_POLYLINEXY ); Handle(HYDROData_PolylineXY) aPolylineObj = Handle(HYDROData_PolylineXY)::DownCast( anObject ); aPolylineObj->SetWireColor( HYDROData_PolylineXY::DefaultWireColor() ); + aPolylineObj->SetGeomObjectEntry( anEntry.toLatin1().constData() ); } } else { anObject = anObjectToEdit; @@ -262,6 +262,8 @@ bool HYDROGUI_ImportGeomObjectOp::processApply( int& theUpdateFlags, if ( anIsOk ) { anObject->Update(); module()->setIsToUpdate( anObject ); + QString aHydroObjEntry = HYDROGUI_DataObject::dataObjectEntry( anObject ); + theBrowseObjectsEntries.append( aHydroObjEntry ); theUpdateFlags = UF_Model | UF_OCCViewer | UF_OCC_Forced | UF_VTKViewer; } } @@ -328,6 +330,9 @@ void HYDROGUI_ImportGeomObjectOp::onExternalOperationFinished( // Update the default name of the HYDRO object updateDefaultName(); + + // Close the dialog corresponding to the external operation + closeExternalOperationDlg(); } void HYDROGUI_ImportGeomObjectOp::closeExternalOperationDlg()