]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
*** empty log message ***
authorvsv <vsv@opencascade.com>
Tue, 2 Nov 2010 16:03:02 +0000 (16:03 +0000)
committervsv <vsv@opencascade.com>
Tue, 2 Nov 2010 16:03:02 +0000 (16:03 +0000)
src/OCCViewer/OCCViewer_ClippingDlg.cxx
src/OCCViewer/OCCViewer_ClippingDlg.h
src/OCCViewer/OCCViewer_ViewFrame.cxx
src/OCCViewer/OCCViewer_ViewWindow.cxx
src/OCCViewer/OCCViewer_ViewWindow.h

index 895377ea19c26f44e7e0f75f38f54ba35c126ae6..dab14bd5ff5e13d99a4bc254846974a8dc8a7297 100644 (file)
@@ -266,9 +266,9 @@ void OCCViewer_ClippingDlg::closeEvent( QCloseEvent* e )
   erasePreview();
   
   // Set the clipping plane back
-  Handle(V3d_View) aView3d = myView->getViewPort()->getView();
+  /*Handle(V3d_View) aView3d = myView->getViewPort()->getView();
   if ( !aView3d.IsNull() && !myClippingPlane.IsNull() )
-    aView3d->SetPlaneOn( myClippingPlane );
+  aView3d->SetPlaneOn( myClippingPlane );*/
   
   myAction->setChecked( false );
   
@@ -281,7 +281,7 @@ void OCCViewer_ClippingDlg::closeEvent( QCloseEvent* e )
 */
 void OCCViewer_ClippingDlg::showEvent( QShowEvent* e )
 {
-  ReserveClippingPlane();
+  //ReserveClippingPlane();
   
   QDialog::showEvent( e );
   onPreview( PreviewChB->isChecked() );
@@ -306,10 +306,10 @@ void OCCViewer_ClippingDlg::ClickOnClose()
   erasePreview();
 
   // Set the clipping plane back
-  Handle(V3d_View) aView3d = myView->getViewPort()->getView();
+  /*Handle(V3d_View) aView3d = myView->getViewPort()->getView();
   if ( !aView3d.IsNull() && !myClippingPlane.IsNull() )
     aView3d->SetPlaneOn( myClippingPlane );
-
+  */
   myAction->setChecked( false );
   
   reject();
@@ -332,7 +332,7 @@ void OCCViewer_ClippingDlg::ClickOnApply()
   
   erasePreview();
   
-  ReserveClippingPlane();
+  //ReserveClippingPlane();
 }
 
 /*!
@@ -504,7 +504,8 @@ void OCCViewer_ClippingDlg::displayPreview()
   myPreviewPlane->SetSize( aSize, aSize );
   
   // Deactivate clipping planes
-  myView->getViewPort()->getView()->SetPlaneOff();
+  //myView->getViewPort()->getView()->SetPlaneOff();
+  //myView->setPlaneOff();
 
   ic->Display( myPreviewPlane, 1, -1, false );
   ic->SetWidth( myPreviewPlane, 10, false );
@@ -575,13 +576,13 @@ bool OCCViewer_ClippingDlg::isValid()
 */
 void OCCViewer_ClippingDlg::ReserveClippingPlane()
 {
-  Handle(V3d_View) aView3d = myView->getViewPort()->getView();
+  /*Handle(V3d_View) aView3d = myView->getViewPort()->getView();
   if ( !aView3d.IsNull() )
     {
       aView3d->InitActivePlanes();
       if ( aView3d->MoreActivePlanes() )
         myClippingPlane = aView3d->ActivePlane();
-    }
+        }*/
 }
 
 void OCCViewer_ClippingDlg::onViewShow()
index a16ae7ccfb12354d54060cc6edb10eeb8f9a7c08..2baa05360b63a410240feb25bd062792053dfa9f 100644 (file)
@@ -94,7 +94,7 @@ private :
     OCCViewer_ViewWindow* myView;
 
     Handle(AIS_Plane) myPreviewPlane;
-    Handle(V3d_Plane) myClippingPlane;
+    //Handle(V3d_Plane) myClippingPlane;
     
     bool myBusy;
 
index 3b45478cc14ca0158525cd8603e72bb26772361a..4946ec67ae8eb8f7ffa9c617555a9cd63fafcc21 100644 (file)
@@ -113,6 +113,7 @@ void OCCViewer_ViewFrame::setCuttingPlane( bool on, const double x , const doubl
 { 
   foreach (OCCViewer_ViewWindow* aView, myViews) {
     aView->setCuttingPlane(on, x, y, z, dx, dy, dz); 
+    aView->update();
   }
 }
 
@@ -121,6 +122,7 @@ void OCCViewer_ViewFrame::setCuttingPlane( bool on, const gp_Pln thePln )
 { 
   foreach (OCCViewer_ViewWindow* aView, myViews) {
     aView->setCuttingPlane(on, thePln); 
+    aView->update();
   }
 }
   
index 8f66f23ff17b6a9be7512d7a40f0f931c020e874..121614a05d8b035c8c61dfec7d5370b6422df0db 100755 (executable)
@@ -1395,23 +1395,26 @@ void OCCViewer_ViewWindow::onClipping( bool on )
   else
     myActionsMap[ ClippingId ]->setIcon(aResMgr->loadPixmap( "OCCViewer", tr( "ICON_OCCVIEWER_CLIPPING" )));
   */
+  OCCViewer_ViewWindow* aParent = dynamic_cast<OCCViewer_ViewWindow*>(parent()->parent());
+  if (!aParent)
+    aParent = this;
   if ( on )
-  {
-    if ( !myClippingDlg )
     {
-      myClippingDlg = new OCCViewer_ClippingDlg( this );
-      myClippingDlg->SetAction( myClippingAction );
-    }
+      if ( !myClippingDlg )
+        {
+          myClippingDlg = new OCCViewer_ClippingDlg( aParent );
+          myClippingDlg->SetAction( myClippingAction );
+        }
     
-    if ( !myClippingDlg->isVisible() )
-      myClippingDlg->show();
-  }
+      if ( !myClippingDlg->isVisible() )
+        myClippingDlg->show();
+    }
   else
-  {
-    if ( myClippingDlg->isVisible() )
-      myClippingDlg->hide();
-    setCuttingPlane(false);
-  }
+    {
+      if ( myClippingDlg->isVisible() )
+        myClippingDlg->hide();
+      aParent->setCuttingPlane(false);
+    }
 }
 
 /*!
@@ -2031,3 +2034,4 @@ void OCCViewer_ViewWindow::setBackgroundColor( const QColor& theColor)
     return;
   myViewPort->setBackgroundColor(theColor);
 }
+
index fc5f4db1d7a1d26dd26c96101462303df50b0158..d7910dfa40c7209660d316a1f4887dabac4ae454 100755 (executable)
@@ -26,6 +26,7 @@
 #include "OCCViewer.h"
 #include "SUIT_ViewWindow.h"
 #include <gp_Pnt.hxx>
+#include <V3d_Plane.hxx>
 
 class QtxRectRubberBand;
 class SUIT_Desktop;
@@ -107,6 +108,7 @@ public:
   virtual QColor backgroundColor() const;
   virtual void    setBackgroundColor( const QColor& );
 
+
 public slots:
   virtual void onFrontView();
   virtual void onViewFitAll();
@@ -236,6 +238,8 @@ private:
   MapOfTransformStatus myStatus;
 
   Mode2dType my2dMode;
+
+  Handle(V3d_Plane) myReserveClippingPlane;
 };
 
 #ifdef WIN32