From: skl Date: Tue, 24 Jun 2008 06:53:43 +0000 (+0000) Subject: Updated for bug IPAL17672. X-Git-Tag: V4_1_0_maintainance_20080626~5 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=3d323aa3766572f21031618f72a53e6d5417658a;p=modules%2Fvisu.git Updated for bug IPAL17672. --- 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(); }