0031456: Visualization - move out Dimensions and Relations from package AIS to PrsDims
[occt.git] / samples / mfc / standard / Common / RadiusParamsPage.cpp
index 1a80ed3..f2275d1 100644 (file)
@@ -4,9 +4,8 @@
 #include "DimensionDlg.h"
 
 #include <AIS_InteractiveContext.hxx>
-#include <AIS_LocalContext.hxx>
-#include <AIS_RadiusDimension.hxx>
-#include <AIS_DiameterDimension.hxx>
+#include <PrsDim_RadiusDimension.hxx>
+#include <PrsDim_DiameterDimension.hxx>
 #include <ElCLib.hxx>
 #include <TopoDS_Shape.hxx>
 
@@ -58,8 +57,8 @@ END_MESSAGE_MAP()
 void CRadiusParamsPage::OnBnClickedObjectBtn()
 {
   //Build dimension here
-  myAISContext->LocalContext()->InitSelected();
-  if (!myAISContext->LocalContext()->MoreSelected() ||
+  myAISContext->InitSelected();
+  if (!myAISContext->MoreSelected() ||
        myAISContext->SelectedShape().ShapeType() != TopAbs_EDGE)
   {
     AfxMessageBox (_T ("Choose the edge and press the button again"), MB_ICONINFORMATION | MB_OK);
@@ -94,19 +93,19 @@ void CRadiusParamsPage::OnBnClickedObjectBtn()
     }
   }
 
-  myAISContext->LocalContext()->ClearSelected();
+  myAISContext->ClearSelected (Standard_False);
   CDimensionDlg *aDimDlg = (CDimensionDlg*)(this->GetParentOwner());
   // Try to create dimension if it is possible
-  Handle(AIS_Dimension) aDim;
+  Handle(PrsDim_Dimension) aDim;
   if (myIsDiameterDimension)
   {
-    aDim = new AIS_DiameterDimension (aCircle);
-    Handle(AIS_DiameterDimension)::DownCast(aDim)->SetFlyout (aDimDlg->GetFlyout());
+    aDim = new PrsDim_DiameterDimension (aCircle);
+    Handle(PrsDim_DiameterDimension)::DownCast(aDim)->SetFlyout (aDimDlg->GetFlyout());
   }
   else
   {
-    aDim = new AIS_RadiusDimension (aCircle);
-    Handle(AIS_RadiusDimension)::DownCast(aDim)->SetFlyout (aDimDlg->GetFlyout());
+    aDim = new PrsDim_RadiusDimension (aCircle);
+    Handle(PrsDim_RadiusDimension)::DownCast(aDim)->SetFlyout (aDimDlg->GetFlyout());
   }
 
   Handle(Prs3d_DimensionAspect) anAspect = new Prs3d_DimensionAspect();
@@ -124,10 +123,7 @@ void CRadiusParamsPage::OnBnClickedObjectBtn()
   aDim->SetDimensionAspect (anAspect);
 
   // Display dimension in the neutral point
-  myAISContext->CloseAllContexts();
 
-  myAISContext->Display (aDim);
-
-  myAISContext->OpenLocalContext();
-  myAISContext->ActivateStandardMode (TopAbs_EDGE);
+  myAISContext->Display (aDim, Standard_True);
+  myAISContext->Activate (AIS_Shape::SelectionMode (TopAbs_EDGE));
 }