void RendererImplementationBase3D::activate(t_QVTKWidget & qvtkWidget) { RendererImplementation::activate(qvtkWidget); initialize(); // make sure to reuse the existing render window interactor m_renderWindow->SetInteractor(qvtkWidget.GetInteractorBase()); // pass my render window to the qvtkWidget qvtkWidget.SetRenderWindow(m_renderWindow); qvtkWidget.GetInteractorBase()->SetInteractorStyle(m_interactorStyle); assignInteractor(); m_cursorCallback->setQWidget(&qvtkWidget); renderView().setInfoTextCallback([this] () -> QString { m_pickerHighlighter->requestPickedInfoUpdate(); return m_pickerHighlighter->pickedInfo(); }); updateAxisLabelFormat(renderView().currentCoordinateSystem()); }
void RendererImplementationPlot::activate(t_QVTKWidget & qvtkWidget) { initialize(); // see also: vtkRenderViewBase documentation m_contextView->SetInteractor(qvtkWidget.GetInteractorBase()); qvtkWidget.SetRenderWindow(m_renderWindow); }
void RendererImplementationPlot::deactivate(t_QVTKWidget & qvtkWidget) { // the render window belongs to the context view qvtkWidget.SetRenderWindow(nullptr); // the interactor is provided by the qvtkWidget m_contextView->SetInteractor(nullptr); }
void RendererImplementationBase3D::deactivate(t_QVTKWidget & qvtkWidget) { RendererImplementation::deactivate(qvtkWidget); m_cursorCallback->setQWidget(nullptr); // this is our render window, so remove it from the widget qvtkWidget.SetRenderWindow(nullptr); // remove out interactor style from the widget's interactor m_renderWindow->GetInteractor()->SetInteractorStyle(nullptr); // the interactor belongs to the widget, we should reference it anymore m_renderWindow->SetInteractor(nullptr); }