From 3d323aa3766572f21031618f72a53e6d5417658a Mon Sep 17 00:00:00 2001 From: skl Date: Tue, 24 Jun 2008 06:53:43 +0000 Subject: [PATCH] Updated for bug IPAL17672. --- src/VISUGUI/VisuGUI_Tools.cxx | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/src/VISUGUI/VisuGUI_Tools.cxx b/src/VISUGUI/VisuGUI_Tools.cxx index 88e8ace0..a349bb95 100644 --- a/src/VISUGUI/VisuGUI_Tools.cxx +++ b/src/VISUGUI/VisuGUI_Tools.cxx @@ -1029,17 +1029,32 @@ namespace VISU aPlot->getCurves( clist ); SPlot2d_Curve* plotCurve = 0; SPlot2d_Curve* tmpCurve; - for (int i = 0; i < clist.count(); i++) { - tmpCurve = dynamic_cast(clist.at(i)); - if (tmpCurve && tmpCurve->hasIO() && - theCurve->GetEntry() != tmpCurve->getIO()->getEntry()) { - plotCurve = tmpCurve; - } else if (theDisplaying == VISU::eDisplayOnly) { - aPlot->eraseCurve(clist.at(i)); + if(theDisplaying == VISU::eErase) { + // 23.06.2008 skl for IPAL17672 + for (int i = 0; i < clist.count(); i++) { + tmpCurve = dynamic_cast(clist.at(i)); + if (tmpCurve && tmpCurve->hasIO() && + theCurve->GetEntry() == tmpCurve->getIO()->getEntry()) { + plotCurve = tmpCurve; + aPlot->eraseCurve(clist.at(i)); + break; + } } + UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying); + } + else { + for (int i = 0; i < clist.count(); i++) { + tmpCurve = dynamic_cast(clist.at(i)); + if (tmpCurve && tmpCurve->hasIO() && + theCurve->GetEntry() != tmpCurve->getIO()->getEntry()) { + plotCurve = tmpCurve; + } + else if (theDisplaying == VISU::eDisplayOnly) { + aPlot->eraseCurve(clist.at(i)); + } + } + UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying); } - - UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying); aPlot->Repaint(); } -- 2.39.2