//-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- bool RimPlotCurve::canCurveBeAttached() const { if (!m_parentQwtPlot) { return false; } if (!m_showCurve()) { return false; } bool isVisibleInPossibleParent = true; { RimSummaryCurveCollection* summaryCurveCollection = nullptr; this->firstAncestorOrThisOfType(summaryCurveCollection); if (summaryCurveCollection) isVisibleInPossibleParent = summaryCurveCollection->isCurvesVisible(); RimEnsembleCurveSet* ensembleCurveSet = nullptr; firstAncestorOrThisOfType(ensembleCurveSet); if (ensembleCurveSet) isVisibleInPossibleParent = ensembleCurveSet->isCurvesVisible(); } return isVisibleInPossibleParent; }
//-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- void RimPlotCurve::updateCurveVisibility(bool updateParentPlot) { bool isVisibleInPossibleParent = true; { RimSummaryCurveCollection* summaryCurveCollection = nullptr; this->firstAncestorOrThisOfType(summaryCurveCollection); if (summaryCurveCollection) isVisibleInPossibleParent = summaryCurveCollection->isCurvesVisible(); RimEnsembleCurveSet* ensembleCurveSet = nullptr; firstAncestorOrThisOfType(ensembleCurveSet); if (ensembleCurveSet) isVisibleInPossibleParent = ensembleCurveSet->isCurvesVisible(); } if (m_showCurve() && m_parentQwtPlot && isVisibleInPossibleParent) { m_qwtPlotCurve->attach(m_parentQwtPlot); } else { m_qwtPlotCurve->detach(); } if (updateParentPlot) { updateZoomInParentPlot(); } }