#include "HYDROGUI_GeoreferencementOp.h"
#include "HYDROGUI_SetColorOp.h"
#include "HYDROGUI_BathymetryBoundsOp.h"
-#include "HYDROGUI_Tool.h"
+#include "HYDROGUI_Tool2.h"
#include "HYDROGUI_ZLevelsOp.h"
#include "HYDROGUI_LocalCSOp.h"
#include "HYDROGUI_RiverBottomOp.h"
#include "HYDROGUI_SplitPolylinesOp.h"
#include "HYDROGUI_LandCoverColoringOp.h"
#include "HYDROGUI_SetTransparencyOp.h"
-
#include "HYDROGUI_ImportLandCoverMapOp.h"
+#include "HYDROGUI_BathymetrySelectionOp.h"
+#include "HYDROGUI_BathymetryOp.h"
#include <HYDROData_Document.h>
#include <HYDROData_Obstacle.h>
createAction( ImportBathymetryId, "IMPORT_BATHYMETRY", "IMPORT_BATHYMETRY_ICO", Qt::CTRL + Qt::Key_B );
createAction( EditImportedBathymetryId, "EDIT_IMPORTED_BATHYMETRY", "EDIT_IMPORTED_BATHYMETRY_ICO" );
createAction( BathymetryBoundsId, "BATHYMETRY_BOUNDS", "BATHYMETRY_BOUNDS_ICO" );
+ createAction( BathymetrySelectionId, "BATHYMETRY_SELECTION", "BATHYMETRY_SELECTION_ICO",
+ 0, true, SLOT( onBathymetrySelection() ) );
+
+ createAction( BathymetryTextId, "BATHYMETRY_TEXT", "BATHYMETRY_TEXT_ICO",
+ 0, true, SLOT( onBathymetryText() ) );
+
+ createAction( BathymetryRescaleSelectionId, "BATHYMETRY_RESCALE_SELECTION", "BATHYMETRY_RESCALE_SELECTION_ICO" );
+ createAction( BathymetryRescaleVisibleId, "BATHYMETRY_RESCALE_VISIBLE", "BATHYMETRY_RESCALE_VISIBLE_ICO" );
+ createAction( BathymetryRescaleUserId, "BATHYMETRY_RESCALE_USER", "BATHYMETRY_RESCALE_USER_ICO" );
+ createAction( BathymetryRescaleDefaultId, "BATHYMETRY_RESCALE_DEFAULT", "BATHYMETRY_RESCALE_DEFAULT_ICO" );
createAction( CreateImmersibleZoneId, "CREATE_IMMERSIBLE_ZONE", "CREATE_IMMERSIBLE_ZONE_ICO" );
createAction( EditImmersibleZoneId, "EDIT_IMMERSIBLE_ZONE", "EDIT_IMMERSIBLE_ZONE_ICO" );
createAction( EditCutImageId, "EDIT_CUT_IMAGE", "EDIT_CUT_IMAGE_ICO" );
createAction( SplitImageId, "SPLIT_IMAGE", "SPLIT_IMAGE_ICO" );
- createAction( EditSplittedImageId, "EDIT_SPLITTED_IMAGE", "EDIT_SPLITTED_IMAGE_ICO" );
+ createAction( EditSplitImageId, "EDIT_SPLIT_IMAGE", "EDIT_SPLIT_IMAGE_ICO" );
createAction( RecognizeContoursId, "RECOGNIZE_CONTOURS", "RECOGNIZE_CONTOURS_ICO" );
createTool( FuseImagesId, aToolBar );
createTool( CutImagesId, aToolBar );
createTool( SplitImageId, aToolBar );
+
+ createTool( separator(), aToolBar );
+ createTool( BathymetrySelectionId, aToolBar );
+ createTool( BathymetryTextId, aToolBar );
+ createTool( BathymetryRescaleSelectionId, aToolBar );
+ createTool( BathymetryRescaleVisibleId, aToolBar );
+ createTool( BathymetryRescaleUserId, aToolBar );
+ createTool( BathymetryRescaleDefaultId, aToolBar );
}
void HYDROGUI_Module::createUndoRedoActions()
case BathymetryBoundsId:
anOp = new HYDROGUI_BathymetryBoundsOp( aModule );
break;
+ case BathymetrySelectionId:
+ anOp = new HYDROGUI_BathymetrySelectionOp( aModule );
+ break;
+ case BathymetryTextId:
+ case BathymetryRescaleSelectionId:
+ case BathymetryRescaleVisibleId:
+ case BathymetryRescaleUserId:
+ case BathymetryRescaleDefaultId:
+ anOp = new HYDROGUI_BathymetryOp( aModule, theId );
+ break;
+
case CreateImmersibleZoneId:
case EditImmersibleZoneId:
anOp = new HYDROGUI_ImmersibleZoneOp( aModule, theId == EditImmersibleZoneId );
anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Cut, theId == EditCutImageId );
break;
case SplitImageId:
- case EditSplittedImageId:
- anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Split, theId == EditSplittedImageId );
+ case EditSplitImageId:
+ anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Split, theId == EditSplitImageId );
break;
case ImportObstacleFromFileId:
anOp = new HYDROGUI_ImportObstacleFromFileOp( aModule );
}
return aRes;
}
+
+void HYDROGUI_Module::onBathymetrySelection()
+{
+ QAction* a = qobject_cast<QAction*>( sender() );
+ if( !a )
+ return;
+
+ bool isChecked = a->isChecked();
+ if( isChecked )
+ startOperation( BathymetrySelectionId );
+ else
+ {
+ LightApp_Operation* op = operation( BathymetryTextId );
+ if( op )
+ op->abort();
+
+ op = operation( BathymetrySelectionId );
+ if( op )
+ op->abort();
+ }
+}
+
+void HYDROGUI_Module::onBathymetryText()
+{
+ QAction* a = qobject_cast<QAction*>( sender() );
+ if( !a )
+ return;
+
+ bool isChecked = a->isChecked();
+ if( isChecked )
+ startOperation( BathymetryTextId );
+ else
+ operation( BathymetryTextId )->abort();
+}