HYDROGUI_Operation::HYDROGUI_Operation( HYDROGUI_Module* theModule )
: LightApp_Operation(),
myModule( theModule ),
- myPanel( 0 )
+ myPanel( 0 ),
+ myIsPrintErrorMessage( true )
{
connect( this, SIGNAL( helpContextModule( const QString&, const QString&,
const QString& ) ),
}
else
{
- abortDocOperation();
- QString aMsg = tr( "INPUT_VALID_DATA" );
- if( !anErrorMsg.isEmpty() )
- aMsg.prepend( anErrorMsg + "\n" );
- SUIT_MessageBox::critical( module()->getApp()->desktop(),
- tr( "INSUFFICIENT_INPUT_DATA" ),
- aMsg );
+ // Abort document opeartion only if requested
+ if ( isToAbortOnApply() )
+ abortDocOperation();
+ printErrorMessage( anErrorMsg );
+
// If the operation has no input panel - do abort
if ( !inputPanel() ) {
abort();
}
}
+void HYDROGUI_Operation::setPrintErrorMessage( const bool theIsPrint )
+{
+ myIsPrintErrorMessage = theIsPrint;
+}
+
+void HYDROGUI_Operation::printErrorMessage( const QString& theErrorMsg )
+{
+ if ( myIsPrintErrorMessage )
+ {
+ QString aMsg = tr( "INPUT_VALID_DATA" );
+ if( !theErrorMsg.isEmpty() )
+ aMsg.prepend( theErrorMsg + "\n" );
+ SUIT_MessageBox::critical( module()->getApp()->desktop(),
+ tr( "INSUFFICIENT_INPUT_DATA" ),
+ aMsg );
+
+ }
+
+ myIsPrintErrorMessage = true;
+}
+
void HYDROGUI_Operation::onCancel()
{
processCancel();