X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Operation.cxx;h=52fbcd1739a140a21570c64536dbfa19d6a2e97e;hb=de7cf9bb0a7a41d6487013c87f4a54d0664cd303;hp=3183b3b82b8af70118e8c0409844a9e51e0f5971;hpb=35a75ba275261aff7c8c48c0d16842dafd455007;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Operation.cxx b/src/HYDROGUI/HYDROGUI_Operation.cxx index 3183b3b8..52fbcd17 100644 --- a/src/HYDROGUI/HYDROGUI_Operation.cxx +++ b/src/HYDROGUI/HYDROGUI_Operation.cxx @@ -94,17 +94,25 @@ void HYDROGUI_Operation::startOperation() void HYDROGUI_Operation::abortOperation() { LightApp_Operation::abortOperation(); - - if( inputPanel() ) - inputPanel()->hide(); + closeInputPanel(); } void HYDROGUI_Operation::commitOperation() { LightApp_Operation::commitOperation(); + closeInputPanel(); +} - if( inputPanel() ) - inputPanel()->hide(); +void HYDROGUI_Operation::setDialogActive( const bool active ) +{ + LightApp_Operation::setDialogActive( active ); + if( myPanel ) + { + if( active ) + { + myPanel->show(); + } + } } HYDROGUI_InputPanel* HYDROGUI_Operation::createInputPanel() const @@ -112,6 +120,16 @@ HYDROGUI_InputPanel* HYDROGUI_Operation::createInputPanel() const return NULL; } +void HYDROGUI_Operation::closeInputPanel() +{ + if( myPanel ) + { + myModule->getApp()->desktop()->removeDockWidget( myPanel ); + delete myPanel; + myPanel = 0; + } +} + bool HYDROGUI_Operation::processApply( int& theUpdateFlags, QString& theErrorMsg ) {