X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDRO_tests%2FTestViewer.cxx;h=52917a31a07c023cd60eae54b1c830e4956ed48d;hb=71ba58001e1084f0995fff43bf5e4643b153e5e0;hp=9af8e48055e059aa941daceeb346acdf5465a866;hpb=28012b449f8c4c88f107c2ea3ba1e36c2bfddbd1;p=modules%2Fhydro.git diff --git a/src/HYDRO_tests/TestViewer.cxx b/src/HYDRO_tests/TestViewer.cxx index 9af8e480..52917a31 100644 --- a/src/HYDRO_tests/TestViewer.cxx +++ b/src/HYDRO_tests/TestViewer.cxx @@ -84,9 +84,9 @@ OCCViewer_ViewWindow* TestViewer::viewWindow() return myViewWindow; } -Handle(AIS_InteractiveContext) context() +Handle(AIS_InteractiveContext) TestViewer::context() { - return TestViewer::viewer()->getAISContext(); + return viewer()->getAISContext(); } QColor TestViewer::GetColor(int i) @@ -114,6 +114,12 @@ QColor TestViewer::GetColor(int i) } } +void TestViewer::eraseAll( bool isUpdate ) +{ + context()->CloseLocalContext( -1, Standard_False ); + context()->EraseAll( isUpdate ); +} + void TestViewer::show( const Handle(AIS_InteractiveObject)& theObject, int theMode, int theSelectionMode, bool isFitAll, const char* theKey ) { @@ -121,8 +127,7 @@ void TestViewer::show( const Handle(AIS_InteractiveObject)& theObject, if( !aNewKey.isEmpty() ) { myKey = aNewKey; - context()->CloseLocalContext(); - context()->EraseAll( Standard_False ); + eraseAll( false ); } context()->Display( theObject, theMode, theSelectionMode ); @@ -160,8 +165,7 @@ void TestViewer::show( const TopoDS_Shape& theShape, int theMode, bool isFitAll, QString aNewKey = theKey; if( !aNewKey.isEmpty() ) { - context()->CloseLocalContext(); - context()->EraseAll( Standard_False ); + eraseAll( false ); myKey = aNewKey; } @@ -266,15 +270,24 @@ bool TestViewer::AssertImages( QString& theMessage ) return false; } -Handle_Aspect_ColorScale TestViewer::showColorScale( bool isShow ) +Handle_Aspect_ColorScale TestViewer::colorScale() { Handle(V3d_View) aView = myViewWindow->getViewPort()->getView(); if( aView.IsNull() ) return Handle(Aspect_ColorScale)(); + else + return aView->ColorScale(); +} + +void TestViewer::showColorScale( bool isShow ) +{ + Handle(V3d_View) aView = myViewWindow->getViewPort()->getView(); + if( aView.IsNull() ) + return; - Handle(Aspect_ColorScale) aColorScale = aView->ColorScale(); + Handle(Aspect_ColorScale) aColorScale = colorScale(); if( aColorScale.IsNull() ) - return aColorScale; + return; Standard_Real anXPos = 0.05; Standard_Real anYPos = 0.1; @@ -303,7 +316,6 @@ Handle_Aspect_ColorScale TestViewer::showColorScale( bool isShow ) if( aView->ColorScaleIsDisplayed() ) aView->ColorScaleErase(); } - return aColorScale; } void TestViewer::select( int theViewX, int theViewY ) @@ -327,7 +339,8 @@ QString GetLine( QFile& theFile, bool isUtf8 ) bool TestViewer::areScriptsEqual( const QString& theBaseName, bool isExpectedUtf8, bool isActualUtf8, - int theLinesToOmit ) + int theLinesToOmit, + QString& theMsg ) { QString anExpectedRefFilePath = qgetenv( "HYDRO_REFERENCE_DATA" ); anExpectedRefFilePath += "/" + theBaseName; @@ -344,13 +357,17 @@ bool TestViewer::areScriptsEqual( const QString& theBaseName, anExpected.readLine(); bool isEqual = true; + int i = 1; while( !anExpected.atEnd() && isEqual ) { QString anExpectedLine = GetLine( anExpected, isExpectedUtf8 ); QString anActualLine = GetLine( anActual, isActualUtf8 ); isEqual = anExpectedLine == anActualLine; + if( !isEqual ) + theMsg = QString( "line %1\nActual: %2\nExpected: %3" ).arg( i ).arg( anActualLine ).arg( anExpectedLine ); + i++; } - + if( isEqual ) isEqual = anActual.atEnd();