+
+Handle_Aspect_ColorScale TestViewer::showColorScale( bool isShow )
+{
+ Handle(V3d_View) aView = myViewWindow->getViewPort()->getView();
+ if( aView.IsNull() )
+ return Handle(Aspect_ColorScale)();
+
+ Handle(Aspect_ColorScale) aColorScale = aView->ColorScale();
+ if( aColorScale.IsNull() )
+ return aColorScale;
+
+ Standard_Real anXPos = 0.05; //TODO
+ Standard_Real anYPos = 0.1; //TODO
+ Standard_Real aWidth = 0.2; //TODO
+ Standard_Real aHeight = 0.5; //TODO
+ Standard_Integer aTextHeight = 14; //TODO
+ Standard_Integer aNbIntervals = 30; //TODO
+
+ aColorScale->SetXPosition( anXPos );
+ aColorScale->SetYPosition( anYPos );
+ aColorScale->SetWidth( aWidth );
+ aColorScale->SetHeight( aHeight );
+ aColorScale->SetTextHeight( aTextHeight );
+ aColorScale->SetNumberOfIntervals( aNbIntervals );
+
+ aColorScale->SetTitle( "test" );
+ aColorScale->SetRange( 0, 1 );
+
+ if( isShow )
+ {
+ if( !aView->ColorScaleIsDisplayed() )
+ aView->ColorScaleDisplay();
+ }
+ else
+ {
+ if( aView->ColorScaleIsDisplayed() )
+ aView->ColorScaleErase();
+ }
+ return aColorScale;
+}
+
+void TestViewer::select( int theViewX, int theViewY )
+{
+ Handle(V3d_View) aView = myViewWindow->getViewPort()->getView();
+ context()->MoveTo( theViewX, theViewY, aView );
+ context()->Select();
+}