X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Operations.cxx;h=08aa0d8fb8f6664d577d65c784dac5517cbf6bf6;hb=de7cf9bb0a7a41d6487013c87f4a54d0664cd303;hp=634c20b75ec94464192ffaa360130c58eebc22be;hpb=fe02bb085711fbb88046f31bd30a4590d7263c7a;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Operations.cxx b/src/HYDROGUI/HYDROGUI_Operations.cxx index 634c20b7..08aa0d8f 100644 --- a/src/HYDROGUI/HYDROGUI_Operations.cxx +++ b/src/HYDROGUI/HYDROGUI_Operations.cxx @@ -22,15 +22,24 @@ #include "HYDROGUI_Operations.h" +#include "HYDROGUI_CopyPasteOp.h" +#include "HYDROGUI_CalculationOp.h" #include "HYDROGUI_DataModel.h" #include "HYDROGUI_DeleteOp.h" #include "HYDROGUI_ExportImageOp.h" #include "HYDROGUI_ImportImageOp.h" +#include "HYDROGUI_ImportBathymetryOp.h" +#include "HYDROGUI_ImmersibleZoneOp.h" #include "HYDROGUI_Module.h" +#include "HYDROGUI_ObserveImageOp.h" #include "HYDROGUI_PolylineOp.h" +#include "HYDROGUI_RemoveImageRefsOp.h" #include "HYDROGUI_ShowHideOp.h" +#include "HYDROData_SplitToZonesTool.h" #include "HYDROGUI_TwoImagesOp.h" #include "HYDROGUI_UpdateFlags.h" +#include "HYDROGUI_UpdateImageOp.h" +#include "HYDROGUI_VisualStateOp.h" #include @@ -63,14 +72,38 @@ QAction* HYDROGUI_Module::createAction( const int theId, const QString& theSuffi void HYDROGUI_Module::createActions() { + createAction( SaveVisualStateId, "SAVE_VISUAL_STATE" ); + createAction( LoadVisualStateId, "LOAD_VISUAL_STATE" ); + + createAction( CopyId, "COPY", "", Qt::CTRL + Qt::Key_C ); + createAction( PasteId, "PASTE", "", Qt::CTRL + Qt::Key_V ); + createAction( ImportImageId, "IMPORT_IMAGE", "", Qt::CTRL + Qt::Key_I ); - createAction( EditImageId, "EDIT_IMAGE" ); + createAction( EditImportedImageId, "EDIT_IMPORTED_IMAGE" ); + createAction( ObserveImageId, "OBSERVE_IMAGE" ); createAction( ExportImageId, "EXPORT_IMAGE" ); + createAction( UpdateImageId, "UPDATE_IMAGE" ); + createAction( RemoveImageRefsId, "REMOVE_IMAGE_REFERENCE" ); + createAction( CreatePolylineId, "CREATE_POLYLINE" ); createAction( EditPolylineId, "EDIT_POLYLINE" ); - createAction( FuseId, "FUSE_IMAGES" ); - createAction( CutId, "CUT_IMAGES" ); + createAction( ImportBathymetryId, "IMPORT_BATHYMETRY", "", Qt::CTRL + Qt::Key_B ); + + createAction( CreateImmersibleZoneId, "CREATE_IMMERSIBLE_ZONE" ); + createAction( EditImmersibleZoneId, "EDIT_IMMERSIBLE_ZONE" ); + + createAction( CreateCalculationId, "CREATE_CALCULATION" ); + createAction( EditCalculationId, "EDIT_CALCULATION" ); + + createAction( FuseImagesId, "FUSE_IMAGES" ); + createAction( EditFusedImageId, "EDIT_FUSED_IMAGE" ); + + createAction( CutImagesId, "CUT_IMAGES" ); + createAction( EditCutImageId, "EDIT_CUT_IMAGE" ); + + createAction( SplitImageId, "SPLIT_IMAGE" ); + createAction( EditSplittedImageId, "EDIT_SPLITTED_IMAGE" ); createAction( DeleteId, "DELETE", "", Qt::Key_Delete ); @@ -83,16 +116,29 @@ void HYDROGUI_Module::createActions() void HYDROGUI_Module::createMenus() { + int aFileMenu = createMenu( tr( "MEN_DESK_FILE" ), -1, -1, 0 ); + int aCustomPos = 5; // to insert custom actions after "Save as" and before "Preferences" + createMenu( SaveVisualStateId, aFileMenu, aCustomPos ); + createMenu( separator(), aFileMenu, -1, aCustomPos ); + int anEditMenu = createMenu( tr( "MEN_DESK_EDIT" ), -1, -1, 5 ); createMenu( UndoId, anEditMenu ); createMenu( RedoId, anEditMenu ); + createMenu( separator(), anEditMenu ); + createMenu( CopyId, anEditMenu ); + createMenu( PasteId, anEditMenu ); int aHydroMenu = 6; // Edit menu id == 5, View menu id == 10 int aHydroId = createMenu( tr( "MEN_DESK_HYDRO" ), -1, -1, aHydroMenu ); createMenu( ImportImageId, aHydroId, -1, -1 ); + createMenu( ImportBathymetryId, aHydroId, -1, -1 ); createMenu( CreatePolylineId, aHydroId, -1, -1 ); - createMenu( FuseId, aHydroId, -1, -1 ); - createMenu( CutId, aHydroId, -1, -1 ); + createMenu( CreateImmersibleZoneId, aHydroId, -1, -1 ); + createMenu( CreateCalculationId, aHydroId, -1, -1 ); + createMenu( separator(), aHydroId ); + createMenu( FuseImagesId, aHydroId, -1, -1 ); + createMenu( CutImagesId, aHydroId, -1, -1 ); + createMenu( SplitImageId, aHydroId, -1, -1 ); } void HYDROGUI_Module::createPopups() @@ -101,7 +147,7 @@ void HYDROGUI_Module::createPopups() void HYDROGUI_Module::createToolbars() { - int aToolBar = createTool( tr( "HYDRO_TOOLBAR" ) ); + int aToolBar = createTool( tr( "MEN_DESK_HYDRO" ) ); createTool( UndoId, aToolBar ); createTool( RedoId, aToolBar ); } @@ -205,22 +251,56 @@ LightApp_Operation* HYDROGUI_Module::createOperation( const int theId ) const HYDROGUI_Module* aModule = const_cast( this ); switch( theId ) { + case SaveVisualStateId: + case LoadVisualStateId: + anOp = new HYDROGUI_VisualStateOp( aModule, theId == LoadVisualStateId ); + break; + case CopyId: + case PasteId: + anOp = new HYDROGUI_CopyPasteOp( aModule, theId == PasteId ); + break; case ImportImageId: - case EditImageId: - anOp = new HYDROGUI_ImportImageOp( aModule, theId == EditImageId ); + case EditImportedImageId: + anOp = new HYDROGUI_ImportImageOp( aModule, theId == EditImportedImageId ); + break; + case ObserveImageId: + anOp = new HYDROGUI_ObserveImageOp( aModule ); break; case ExportImageId: anOp = new HYDROGUI_ExportImageOp( aModule ); break; + case UpdateImageId: + anOp = new HYDROGUI_UpdateImageOp( aModule ); + break; + case RemoveImageRefsId: + anOp = new HYDROGUI_RemoveImageRefsOp( aModule ); + break; case CreatePolylineId: case EditPolylineId: anOp = new HYDROGUI_PolylineOp( aModule, theId == EditPolylineId ); break; - case FuseId: - anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Fuse ); + case ImportBathymetryId: + anOp = new HYDROGUI_ImportBathymetryOp( aModule ); + break; + case CreateImmersibleZoneId: + case EditImmersibleZoneId: + anOp = new HYDROGUI_ImmersibleZoneOp( aModule, theId == EditImmersibleZoneId ); + break; + case CreateCalculationId: + case EditCalculationId: + anOp = new HYDROGUI_CalculationOp( aModule, theId == EditCalculationId ); + break; + case FuseImagesId: + case EditFusedImageId: + anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Fuse, theId == EditFusedImageId ); + break; + case CutImagesId: + case EditCutImageId: + anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Cut, theId == EditCutImageId ); break; - case CutId: - anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Cut ); + case SplitImageId: + case EditSplittedImageId: + anOp = new HYDROGUI_TwoImagesOp( aModule, HYDROGUI_TwoImagesOp::Split, theId == EditSplittedImageId ); break; case DeleteId: anOp = new HYDROGUI_DeleteOp( aModule );