X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Shape.cxx;h=4d015a5c52035044665c62b4f321b1088ce480fe;hb=eeffb740f746146cb11bb55d6cb00146ac0832e9;hp=05e271dd5a1d6446ca1fef78b752539ab246a05d;hpb=852bfa6815309d82b4340d0b108a3b602ebda5fa;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Shape.cxx b/src/HYDROGUI/HYDROGUI_Shape.cxx index 05e271dd..4d015a5c 100644 --- a/src/HYDROGUI/HYDROGUI_Shape.cxx +++ b/src/HYDROGUI/HYDROGUI_Shape.cxx @@ -18,6 +18,8 @@ #include #include +#include + #include #include #include @@ -29,7 +31,7 @@ #include #include #include -#include +#include #include #include @@ -298,6 +300,22 @@ void HYDROGUI_Shape::update( bool isUpdateViewer, setShape( aCompound, false, false ); } + else if ( myObject->IsKind( STANDARD_TYPE(HYDROData_LandCover) ) ) + { + Handle(HYDROData_LandCover) aLandCoverObj = + Handle(HYDROData_LandCover)::DownCast( myObject ); + + TopoDS_Shape aLandCoverShape = aLandCoverObj->GetShape(); + if ( !aLandCoverShape.IsNull() ) { + setShape( aLandCoverShape, false, false ); + } + + QColor aFillingColor = aLandCoverObj->GetFillingColor(); + QColor aBorderColor = aLandCoverObj->GetBorderColor(); + + setFillingColor( aFillingColor, false, false ); + setBorderColor( aBorderColor, false, false ); + } } if ( myShape.IsNull() || !isVisible() ) @@ -444,7 +462,7 @@ QColor HYDROGUI_Shape::getFillingColor() const void HYDROGUI_Shape::setBorderColor( const QColor& theColor, const bool theToDisplay, const bool theIsUpdateViewer ) -{ +{ myBorderColor = theColor; updateShape( theToDisplay, theIsUpdateViewer ); } @@ -476,9 +494,10 @@ void HYDROGUI_Shape::setZLayer( const int theZLayer ) Handle_AIS_InteractiveObject HYDROGUI_Shape::createShape() const { - if( myTopoShape.IsNull() ) + if( myTopoShape.IsNull() ) { return Handle_AIS_InteractiveObject(); - + } + TopAbs_ShapeEnum aShapeType = myTopoShape.ShapeType(); bool IsWireEdgeCompound = aShapeType==TopAbs_COMPOUND; if (IsWireEdgeCompound) { @@ -597,7 +616,9 @@ void HYDROGUI_Shape::displayShape( const bool theIsUpdateViewer ) if ( myZLayer >= 0 ) myContext->SetZLayer( myShape, myZLayer ); - myContext->UpdateCurrentViewer(); + if ( theIsUpdateViewer ) { + myContext->UpdateCurrentViewer(); + } } QColor HYDROGUI_Shape::getActiveColor() const