#include "HYDROGUI_UpdateFlags.h"
#include <HYDROData_Object.h>
+#include <HYDROData_Document.h>
#include <LightApp_Application.h>
#include <SUIT_Desktop.h>
#include <SUIT_MessageBox.h>
+#include <QSet>
+
HYDROGUI_DeleteOp::HYDROGUI_DeleteOp( HYDROGUI_Module* theModule )
: HYDROGUI_Operation( theModule )
{
return;
}
+ QString aWarningMsg;
+
HYDROGUI_DeleteDlg aDeleteDlg( module()->getApp()->desktop() );
aDeleteDlg.setObjectsToRemove( anObjNames );
if ( aDeleteDlg.exec() != HYDROGUI_DeleteDlg::Accepted )
{
abort();
return;
+ } else {
+ QStringList aTableNames =
+ HYDROGUI_Tool::FindExistingObjectsNames( doc(), KIND_STRICKLER_TABLE, false );
+ aTableNames += anObjNames;
+ if ( aTableNames.toSet().size() == anObjNames.size() ) {
+ aWarningMsg = tr("DELETE_LAST_TABLE_WRN");
+ }
+ }
+
+ if ( !aWarningMsg.isEmpty() ) {
+ int anAnswer = SUIT_MessageBox::warning( module()->getApp()->desktop(),
+ tr("WARNING"), aWarningMsg,
+ QMessageBox::Yes | QMessageBox::No,
+ QMessageBox::No );
+ if ( anAnswer != QMessageBox::Yes ) {
+ abort();
+ return;
+ }
}
startDocOperation();
<source>DELETE_OBJECT_IS_USED_FOR</source>
<translation>Object "%1" is used for %2</translation>
</message>
+ <message>
+ <source>DELETE_LAST_TABLE_WRN</source>
+ <translation>You are about to delete all Strickler tables in the study.
+After that the study will contain only the default Strickler table.
+Do you want to continue?</translation>
+ </message>
+ <message>
+ <source>WARNING</source>
+ <translation>Warning</translation>
+ </message>
</context>
<context>