]> Creatis software - clitk.git/blobdiff - vv/vvOverlayPanel.cxx
fine tuning fusion legend
[clitk.git] / vv / vvOverlayPanel.cxx
index eb2eaa1c7b2d27950d27551ea8943884fb366f8d..346bd2c49b7c5c4a5a9f705c7755b4e49941922f 100644 (file)
@@ -38,6 +38,8 @@ vvOverlayPanel::vvOverlayPanel(QWidget * parent):QWidget(parent)
   scaleSpinBox->setEnabled(0);
   lutCheckBox->hide();
   lutCheckBox->setEnabled(0);
+  fusionShowLegendCheckBox->setChecked(false);
+  
   connect(subSamplingSpinBox,SIGNAL(editingFinished()),this,SLOT(setVFProperty()));
   connect(scaleSpinBox,SIGNAL(editingFinished()),this,SLOT(setVFProperty()));
   connect(lutCheckBox,SIGNAL(clicked()),this,SLOT(setVFProperty()));
@@ -49,6 +51,9 @@ vvOverlayPanel::vvOverlayPanel(QWidget * parent):QWidget(parent)
   connect(fusionColorMapComboBox,SIGNAL(currentIndexChanged(int)),this,SLOT(setFusionProperty()));
   connect(fusionWindowSpinBox,SIGNAL(valueChanged(double)),this,SLOT(setFusionProperty()));
   connect(fusionLevelSpinBox,SIGNAL(valueChanged(double)),this,SLOT(setFusionProperty()));
+  connect(fusionOpacitySpin,SIGNAL(valueChanged(double)),this,SLOT(setFusionSpinProperty()));
+  connect(fusionThresSpin,SIGNAL(valueChanged(double)),this,SLOT(setFusionSpinProperty()));
+  connect(fusionShowLegendCheckBox,SIGNAL(stateChanged(int)),this,SLOT(setFusionProperty()));
   connect(overlayWindowSpinBox,SIGNAL(valueChanged(double)),this,SLOT(setOverlayProperty()));
   connect(overlayLevelSpinBox,SIGNAL(valueChanged(double)),this,SLOT(setOverlayProperty()));
   connect(overlayLinkCheckBox,SIGNAL(stateChanged(int)),this,SLOT(setOverlayProperty()));
@@ -190,6 +195,8 @@ void vvOverlayPanel::getFusionProperty(int opacity, int thresOpacity, int colorm
     opacityHorizontalSlider->setValue(opacity);
     thresOpacityHorizontalSlider->setEnabled(1);
     thresOpacityHorizontalSlider->setValue(thresOpacity);
+    fusionOpacitySpin->setValue(opacity); 
+    fusionThresSpin->setValue(thresOpacity);
     fusionWindowSpinBox->setEnabled(1);
     fusionLevelSpinBox->setEnabled(1);
     fusionWindowSpinBox->setValue(window);
@@ -205,6 +212,8 @@ void vvOverlayPanel::getFusionProperty(int opacity, int thresOpacity, int colorm
     opacityHorizontalSlider->setValue(0);
     thresOpacityHorizontalSlider->setEnabled(0);
     thresOpacityHorizontalSlider->setValue(0);
+    fusionOpacitySpin->setValue(0); 
+    fusionThresSpin->setValue(0);
     fusionColorMapComboBox->setEnabled(0);
     fusionColorMapComboBox->setCurrentIndex(-1);
     fusionWindowSpinBox->setEnabled(0);
@@ -217,8 +226,17 @@ void vvOverlayPanel::setFusionProperty()
   if (disableFusionSignals)
     return;
   
+  fusionOpacitySpin->setValue(opacityHorizontalSlider->value()); 
+  fusionThresSpin->setValue(thresOpacityHorizontalSlider->value());
+
   emit FusionPropertyUpdated(opacityHorizontalSlider->value(), thresOpacityHorizontalSlider->value(), fusionColorMapComboBox->currentIndex(),
-                             fusionWindowSpinBox->value(), fusionLevelSpinBox->value());
+                             fusionWindowSpinBox->value(), fusionLevelSpinBox->value(), fusionShowLegendCheckBox->isChecked());
+}
+
+void vvOverlayPanel::setFusionSpinProperty()
+{
+  opacityHorizontalSlider->setValue(fusionOpacitySpin->value()); 
+  thresOpacityHorizontalSlider->setValue(fusionThresSpin->value());
 }
 
 void vvOverlayPanel::getCurrentFusionInfo(int visibility,double value)
@@ -235,9 +253,12 @@ void vvOverlayPanel::VFColorChangeRequest()
   QColor color(vfColorButton->palette().color(QPalette::Background));
   color = QColorDialog::getColor(color, this, "Choose the new color of the vector field");
   //vfColorButton->palette().setColor(QPalette::Background, color); SR: Not working?
-  vfColorButton->setStyleSheet("* { background-color: " + color.name() + "; border: 0px }");
+  if (color.isValid())
+    vfColorButton->setStyleSheet("* { background-color: " + color.name() + "; border: 0px }");
   this->setVFProperty();
 }
 
+
+
 #endif /* end #define _vvOverlayPanel_CXX */