2 #include "OCCViewer_Utilities.h"
4 #include <OCCViewer_ViewFrame.h>
5 #include <OCCViewer_ViewModel.h>
6 #include <SUIT_ViewManager.h>
8 #include <QtxActionToolMgr.h>
12 void OCCViewer_Utilities::setViewer2DMode( OCCViewer_Viewer* theViewer,
13 const OCCViewer_ViewWindow::Mode2dType& theMode )
15 OCCViewer_ViewFrame* aFrame = dynamic_cast<OCCViewer_ViewFrame*>
16 ( theViewer->getViewManager()->getActiveView() );
17 OCCViewer_ViewWindow* aView = aFrame ? aFrame->getView( OCCViewer_ViewFrame::MAIN_VIEW ) : 0;
22 aView->set2dMode( theMode );
23 bool is2dMode = theMode != OCCViewer_ViewWindow::No2dMode;
25 // enable/disable view actions
26 QList<int> aNo2dActions;
27 aNo2dActions << OCCViewer_ViewWindow::ChangeRotationPointId
28 << OCCViewer_ViewWindow::RotationId
29 << OCCViewer_ViewWindow::FrontId
30 << OCCViewer_ViewWindow::BackId
31 << OCCViewer_ViewWindow::TopId
32 << OCCViewer_ViewWindow::BottomId
33 << OCCViewer_ViewWindow::LeftId
34 << OCCViewer_ViewWindow::RightId
35 << OCCViewer_ViewWindow::AntiClockWiseId
36 << OCCViewer_ViewWindow::ClockWiseId
37 << OCCViewer_ViewWindow::ResetId;
39 QtxActionToolMgr* aToolMgr = aView->toolMgr();
41 for ( int i = 0, aNb = aNo2dActions.size(); i < aNb; i++ ) {
42 anAction = aToolMgr->action( aNo2dActions[i] );
44 anAction->setEnabled( !is2dMode );
47 // change view position
49 case OCCViewer_ViewWindow::XYPlane:
52 case OCCViewer_ViewWindow::XZPlane:
55 case OCCViewer_ViewWindow::YZPlane: