#include <HYDROGUI_Module.h>
#include <HYDROGUI_BathymetryPrs.h>
#include <HYDROGUI_BathymetryOp.h>
+#include <HYDROGUI_ShapeBathymetry.h>
+#include <HYDROGUI_Operations.h>
#include <OCCViewer_ViewManager.h>
#include <LightApp_Application.h>
+#include <QAction>
+#include <QApplication>
HYDROGUI_BathymetrySelectionOp::HYDROGUI_BathymetrySelectionOp( HYDROGUI_Module* theModule )
: HYDROGUI_Operation( theModule ), myIsActive( false )
void HYDROGUI_BathymetrySelectionOp::abortOperation()
{
activateSelection( false );
+
+ module()->action( BathymetrySelectionId )->setChecked( false );
+ module()->action( BathymetryTextId )->setChecked( false );
}
bool HYDROGUI_BathymetrySelectionOp::isValid( SUIT_Operation* theOtherOp ) const
return ( aBathOp != 0 );
}
-Handle(AIS_InteractiveContext) getContext( HYDROGUI_Module* theModule )
+OCCViewer_Viewer* getViewer( HYDROGUI_Module* theModule )
{
LightApp_Application* app = theModule->getApp();
OCCViewer_ViewManager* mgr = dynamic_cast<OCCViewer_ViewManager*>
( app->getViewManager( OCCViewer_Viewer::Type(), true ) );
- Handle(AIS_InteractiveContext) ctx = mgr->getOCCViewer()->getAISContext();
- return ctx;
+ return mgr->getOCCViewer();
+}
+
+Handle(AIS_InteractiveContext) getContext( HYDROGUI_Module* theModule )
+{
+ return getViewer( theModule )->getAISContext();
}
QList<Handle(HYDROGUI_BathymetryPrs)> getShownBathymetries( HYDROGUI_Module* theModule )
if( myIsActive==isActive )
return;
+ getContext( module() )->ClearSelected(true);
+ qApp->setOverrideCursor( Qt::WaitCursor );
+ getContext( module() )->ClearSelected(true);
Handle(AIS_InteractiveContext) ctx = getContext( module() );
QList<Handle(HYDROGUI_BathymetryPrs)> baths = getShownBathymetries( module() );
if( isActive )
{
bath->ClearSelected();
bath->SetAutoHilight( Standard_True );
+ bath->GetShape()->TextLabels( false );
ctx->Deactivate( bath );
}
ctx->CloseLocalContext( -1, Standard_True );
}
myIsActive = isActive;
+
+ qApp->restoreOverrideCursor();
}