From: vsr Date: Thu, 3 Apr 2014 11:25:50 +0000 (+0400) Subject: Merge branch V7_3_1_BR X-Git-Tag: V7_4_0a1~2 X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=commitdiff_plain;h=5d68554076bbca0e1e95fb0db215a6c2b84b6c54;hp=da78b9467b74750ae0f1c17c3fdc814d4abbc43e Merge branch V7_3_1_BR --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 441f79c0a..4dd5f2eb1 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,7 @@ STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7) SET(${PROJECT_NAME_UC}_MINOR_VERSION 3) -SET(${PROJECT_NAME_UC}_PATCH_VERSION 0) +SET(${PROJECT_NAME_UC}_PATCH_VERSION 1) SET(${PROJECT_NAME_UC}_VERSION ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION}) SET(${PROJECT_NAME_UC}_VERSION_DEV 1) @@ -162,7 +162,7 @@ ENDIF(EXISTS ${GEOM_ROOT_DIR}) ## # VTK is obligatiry for the SMESH -FIND_PACKAGE(SalomeVTK 6.0 REQUIRED) +FIND_PACKAGE(SalomeVTK 6.1 REQUIRED) FIND_PACKAGE(SalomeCAS REQUIRED) diff --git a/src/SMESHGUI/SMESHGUI.cxx b/src/SMESHGUI/SMESHGUI.cxx index c90cb0fa9..336363ecb 100644 --- a/src/SMESHGUI/SMESHGUI.cxx +++ b/src/SMESHGUI/SMESHGUI.cxx @@ -182,21 +182,6 @@ // of auto-color picking up #define SIMPLE_AUTOCOLOR -// REMOVE the code about MPLMathText_Disabler if it does not complite at porting to ParaView-4.1 -#include -namespace -{ - // Creation of this class disables vtkMatplotlibMathTextUtilities - struct MPLMathText_Disabler : protected vtkMatplotlibMathTextUtilities - { - MPLMathText_Disabler() - { - vtkMatplotlibMathTextUtilities::MPLMathTextAvailable = - vtkMatplotlibMathTextUtilities::UNAVAILABLE; - } - }; -} - namespace { // Declarations @@ -1979,8 +1964,6 @@ SalomeApp_Module( "SMESH" ) /* load resources for all available meshers */ SMESH::InitAvailableHypotheses(); - - MPLMathText_Disabler d; // disable vtkMatplotlibMathTextUtilities } //============================================================================= diff --git a/src/StdMeshersGUI/StdMeshersGUI_DistrPreview.cxx b/src/StdMeshersGUI/StdMeshersGUI_DistrPreview.cxx index be1b5b85d..5234cf911 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_DistrPreview.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_DistrPreview.cxx @@ -53,7 +53,20 @@ #include #include +// SALOME KERNEL includes #include +// SALOME GUI includes +#include + +Plot2d_QwtLegendLabel* getLegendLabel( QwtPlotCurve* plotCurve ) +{ + const QVariant itemInfo = plotCurve->plot()->itemToInfo( plotCurve ); + QwtLegend* legend = dynamic_cast( plotCurve->plot()->legend() ); + QWidget* widget = legend->legendWidget( itemInfo ); + QwtLegendLabel* label = dynamic_cast( widget ); + if( Plot2d_QwtLegendLabel* anItem = (Plot2d_QwtLegendLabel*)label ) + return anItem; +} StdMeshersGUI_DistrPreview::StdMeshersGUI_DistrPreview( QWidget* p, StdMeshers::StdMeshers_NumberOfSegments_ptr h ) : QwtPlot( p ), @@ -68,31 +81,49 @@ StdMeshersGUI_DistrPreview::StdMeshersGUI_DistrPreview( QWidget* p, StdMeshers:: Kernel_Utils::Localizer loc; myHypo = StdMeshers::StdMeshers_NumberOfSegments::_duplicate( h ); myVars.ChangeValue( 1 ) = new Expr_NamedUnknown( "t" ); + + QwtAbstractLegend* absLegend = legend(); + QwtLegend* legend = 0; + if ( !absLegend ) { + legend = new Plot2d_QwtLegend( this ); + legend->setFrameStyle( QFrame::Box | QFrame::Sunken ); + } + else + legend = dynamic_cast( absLegend ); + if( legend ) + insertLegend( legend, QwtPlot::BottomLegend ); + myDensity = new QwtPlotCurve( QString() ); myDensity->attach( this ); + QPen densityPen = QPen( Qt::red, 1 ); + myDensity->setPen( QPen( Qt::red, 1 ) ); + if( Plot2d_QwtLegendLabel* anItem = getLegendLabel( myDensity ) ) { + anItem->setPen( densityPen ); + anItem->repaint(); + } + myDistr = new QwtPlotCurve( QString() ); myDistr->attach( this ); + QPen distrPen = QPen( Qt::blue, 1 ); + QwtSymbol* distrSymbol = new QwtSymbol( QwtSymbol::XCross, QBrush( Qt::blue ), + QPen( Qt::blue ), QSize( 5, 5 ) ); + myDistr->setPen( distrPen ); + myDistr->setSymbol( distrSymbol ); + if( Plot2d_QwtLegendLabel* anItem = getLegendLabel( myDistr ) ) { + anItem->setPen( distrPen ); + anItem->setSymbol( distrSymbol ); + anItem->repaint(); + } + myMsg = new QwtPlotMarker(); myMsg->attach( this ); myMsg->setValue( 0.5, 0.5 ); QwtText mt = myMsg->label(); - mt.setBackgroundPen( QPen( Qt::red, 1 ) ); + mt.setBorderPen( QPen( Qt::red, 1 ) ); QFont f = mt.font(); f.setPointSize( 14 ); //f.setBold( true ); mt.setFont( f ); myMsg->setLabel( mt ); - myDensity->setPen( QPen( Qt::red, 1 ) ); - - QColor dc = Qt::blue; - myDistr->setPen( QPen( dc, 1 ) ); - myDistr->setSymbol( QwtSymbol( QwtSymbol::XCross, QBrush( dc ), QPen( dc ), QSize( 5, 5 ) ) ); - - QwtLegend* l = legend(); - if ( !l ) { - l = new QwtLegend( this ); - l->setFrameStyle( QFrame::Box | QFrame::Sunken ); - } - insertLegend( l, QwtPlot::BottomLegend ); enableAxis(QwtPlot::yLeft, false); enableAxis(QwtPlot::yRight, true); @@ -109,7 +140,7 @@ StdMeshersGUI_DistrPreview::StdMeshersGUI_DistrPreview( QWidget* p, StdMeshers:: myDistr->setTitle( tr( "SMESH_DISTR" ) ); QwtPlotGrid* aGrid = new QwtPlotGrid(); - QPen aMajPen = aGrid->majPen(); + QPen aMajPen = aGrid->majorPen(); aMajPen.setStyle( Qt::DashLine ); aGrid->setPen( aMajPen ); @@ -304,7 +335,7 @@ void StdMeshersGUI_DistrPreview::update() std::max( 0.0, max_y ) #endif ); - myDensity->setData( x, y, size ); + myDensity->setSamples( x, y, size ); if( x ) delete[] x; if( y ) @@ -319,7 +350,7 @@ void StdMeshersGUI_DistrPreview::update() x[i] = distr[i]; y[i] = 0; } - myDistr->setData( x, y, size ); + myDistr->setSamples( x, y, size ); delete[] x; delete[] y; x = y = 0; @@ -338,8 +369,8 @@ void StdMeshersGUI_DistrPreview::showError() { setAxisScale( myDensity->xAxis(), 0.0, 1.0 ); setAxisScale( myDensity->yAxis(), 0.0, 1.0 ); - myDensity->setData( 0, 0, 0 ); - myDistr->setData( 0, 0, 0 ); + myDensity->setSamples( 0, 0, 0 ); + myDistr->setSamples( 0, 0, 0 ); QwtText mt = myMsg->label(); mt.setText( tr( "SMESH_INVALID_FUNCTION" ) ); myMsg->setLabel( mt );