}
}
-void XGUI_ViewerProxy::eraseHighlight()
+bool XGUI_ViewerProxy::eraseHighlight()
{
Handle(AIS_InteractiveContext) aContext = AISContext();
Handle(AIS_InteractiveObject) anAISIO;
AIS_ListIteratorOfListOfInteractive aLIt;
+ bool isErased = myHighlights.Extent() > 0;
for (aLIt.Initialize(myHighlights); aLIt.More(); aLIt.Next()) {
anAISIO = aLIt.Value();
aContext->Remove(anAISIO, false);
}
myHighlights.Clear();
+ return isErased;
}
void XGUI_ViewerProxy::updateHighlight()
else {
myResult = ResultPtr();
}
- aContext->UpdateCurrentViewer();
+ update();
}
isDisplayed = aRes.get();
}
}
if (!isDisplayed) {
- eraseHighlight();
- aContext->UpdateCurrentViewer();
+ if (eraseHighlight()) {
+ update();
+ }
myResult = ResultPtr();
}
}
// aView3d->DepthFitAll();
// }
//#endif
-//}
\ No newline at end of file
+//}
+
+
+#ifdef HAVE_SALOME
+void XGUI_ViewerProxy::setFitter(OCCViewer_Fitter* theFitter)
+{
+ myWorkshop->salomeConnector()->viewer()->setFitter(theFitter);
+}
+
+OCCViewer_Fitter* XGUI_ViewerProxy::fitter() const
+{
+ return myWorkshop->salomeConnector()->viewer()->fitter();
+}
+#else
+void XGUI_ViewerProxy::setFitter(AppElements_Fitter* theFitter)
+{
+ myWorkshop->mainWindow()->viewer()->setFitter(theFitter);
+}
+
+AppElements_Fitter* XGUI_ViewerProxy::fitter() const
+{
+ return myWorkshop->mainWindow()->viewer()->fitter();
+}
+#endif