- myActor = anActor;
- vtkScalarBarActor* myScalarBarActor = myActor->GetScalarBarActor();
-
- if ( myScalarBarActor->GetLookupTable() ) {
- vtkFloatingPointType *range = myScalarBarActor->GetLookupTable()->GetRange();
- myMinEdit->setText( QString::number( range[0],'g',12 ) );
- myMaxEdit->setText( QString::number( range[1],'g',12 ) );
- }
-
- vtkTextProperty* aTitleTextPrp = myScalarBarActor->GetTitleTextProperty();
- vtkFloatingPointType aTColor[3];
- aTitleTextPrp->GetColor( aTColor );
- myTitleColorBtn->setColor( QColor( (int)( aTColor[0]*255 ), (int)( aTColor[1]*255 ), (int)( aTColor[2]*255 ) ) );
- myTitleFontCombo->setCurrentIndex( aTitleTextPrp->GetFontFamily() );
- myTitleBoldCheck->setChecked( aTitleTextPrp->GetBold() );
- myTitleItalicCheck->setChecked( aTitleTextPrp->GetItalic() );
- myTitleShadowCheck->setChecked( aTitleTextPrp->GetShadow() );
-
- vtkTextProperty* aLabelsTextPrp = myScalarBarActor->GetLabelTextProperty();
- vtkFloatingPointType aLColor[3];
- aLabelsTextPrp->GetColor( aLColor );
- myLabelsColorBtn->setColor( QColor( (int)( aLColor[0]*255 ), (int)( aLColor[1]*255 ), (int)( aLColor[2]*255 ) ) );
- myLabelsFontCombo->setCurrentIndex( aLabelsTextPrp->GetFontFamily() );
- myLabelsBoldCheck->setChecked( aLabelsTextPrp->GetBold() );
- myLabelsItalicCheck->setChecked( aLabelsTextPrp->GetItalic() );
- myLabelsShadowCheck->setChecked( aLabelsTextPrp->GetShadow() );
-
- myLabelsSpin->setValue( myScalarBarActor->GetNumberOfLabels() );
- myColorsSpin->setValue( myScalarBarActor->GetMaximumNumberOfColors() );
-
- if ( myScalarBarActor->GetOrientation() == VTK_ORIENT_VERTICAL )
- myVertRadioBtn->setChecked( true );
- else
- myHorizRadioBtn->setChecked( true );
- myIniOrientation = myVertRadioBtn->isChecked();
-
- myIniX = myScalarBarActor->GetPosition()[0];
- myIniY = myScalarBarActor->GetPosition()[1];
- myIniW = myScalarBarActor->GetWidth();
- myIniH = myScalarBarActor->GetHeight();
- setOriginAndSize( myIniX, myIniY, myIniW, myIniH );
-
- myRangeGrp->setEnabled( true );
- myFontGrp->setEnabled( true );
- myLabColorGrp->setEnabled( true );
- myOrientationGrp->setEnabled( true );
- myOriginDimGrp->setEnabled( true );
- myOkBtn->setEnabled( true );
- myApplyBtn->setEnabled( true );
- return;
+ myActor = anActor;
+ SMESH_ScalarBarActor* myScalarBarActor = myActor->GetScalarBarActor();
+
+ if ( myScalarBarActor->GetLookupTable() ) {
+ vtkLookupTable* aLookupTable = static_cast<vtkLookupTable*>(myScalarBarActor->GetLookupTable());
+
+ double *range = aLookupTable->GetRange();
+ myMinEdit->setText( QString::number( range[0],'g',12 ) );
+ myMaxEdit->setText( QString::number( range[1],'g',12 ) );
+ myLogarithmicCheck->setChecked(aLookupTable->GetScale() == VTK_SCALE_LOG10);
+ //myLogarithmicCheck->setEnabled(range[0] > 1e-07 && range[1] > 1e-07);
+ myLogarithmicCheck->setEnabled(range[0] != range[1]);
+ }
+
+ vtkTextProperty* aTitleTextPrp = myScalarBarActor->GetTitleTextProperty();
+ double aTColor[3];
+ aTitleTextPrp->GetColor( aTColor );
+ myTitleColorBtn->setColor( QColor( (int)( aTColor[0]*255 ), (int)( aTColor[1]*255 ), (int)( aTColor[2]*255 ) ) );
+ myTitleFontCombo->setCurrentIndex( aTitleTextPrp->GetFontFamily() );
+ myTitleBoldCheck->setChecked( aTitleTextPrp->GetBold() );
+ myTitleItalicCheck->setChecked( aTitleTextPrp->GetItalic() );
+ myTitleShadowCheck->setChecked( aTitleTextPrp->GetShadow() );
+
+ vtkTextProperty* aLabelsTextPrp = myScalarBarActor->GetLabelTextProperty();
+ double aLColor[3];
+ aLabelsTextPrp->GetColor( aLColor );
+ myLabelsColorBtn->setColor( QColor( (int)( aLColor[0]*255 ), (int)( aLColor[1]*255 ), (int)( aLColor[2]*255 ) ) );
+ myLabelsFontCombo->setCurrentIndex( aLabelsTextPrp->GetFontFamily() );
+ myLabelsBoldCheck->setChecked( aLabelsTextPrp->GetBold() );
+ myLabelsItalicCheck->setChecked( aLabelsTextPrp->GetItalic() );
+ myLabelsShadowCheck->setChecked( aLabelsTextPrp->GetShadow() );
+
+ myLabelsSpin->setValue( myScalarBarActor->GetNumberOfLabels() );
+ myColorsSpin->setValue( myScalarBarActor->GetMaximumNumberOfColors() );
+
+ if ( myScalarBarActor->GetOrientation() == VTK_ORIENT_VERTICAL )
+ myVertRadioBtn->setChecked( true );
+ else
+ myHorizRadioBtn->setChecked( true );
+ myIniOrientation = myVertRadioBtn->isChecked();
+
+ myIniX = myScalarBarActor->GetPosition()[0];
+ myIniY = myScalarBarActor->GetPosition()[1];
+ myIniW = myScalarBarActor->GetWidth();
+ myIniH = myScalarBarActor->GetHeight();
+ setOriginAndSize( myIniX, myIniY, myIniW, myIniH );
+
+ int coloringType = myScalarBarActor->GetDistributionColoringType();
+ myScalarBarActor->GetDistributionColor( aTColor );
+ myMonoColorBtn->setColor( QColor( (int)( aTColor[0]*255 ), (int)( aTColor[1]*255 ), (int)( aTColor[2]*255 ) ) );
+ if ( coloringType == SMESH_MONOCOLOR_TYPE ) {
+ myDMonoColor->setChecked(true);
+ onDistributionChanged(myDistribColorGrp->id(myDMonoColor));
+ } else {
+ myDMultiColor->setChecked(true);
+ onDistributionChanged(myDistribColorGrp->id(myDMultiColor));
+ }
+ myDistributionGrp->setChecked((bool)myScalarBarActor->GetDistributionVisibility());
+ onDistributionActivated(myScalarBarActor->GetDistributionVisibility());
+
+ myRangeGrp->setEnabled( true );
+ myFontGrp->setEnabled( true );
+ myLabColorGrp->setEnabled( true );
+ myOrientationGrp->setEnabled( true );
+ myOriginDimGrp->setEnabled( true );
+ myOkBtn->setEnabled( true );
+ myApplyBtn->setEnabled( true );
+ myDistributionGrp->setEnabled( true );
+ return;