X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvOverlayPanel.cxx;h=e205c8770105857c7edf0a0a9424ffc819554b4c;hb=1548a47199250d3819961adb37becac65bc72f3c;hp=68356bfd2df1d91d1fc7029d20d5e6afe331d44b;hpb=21b149dea47a3f02ffb9e0ddeb5993bd8f5ff33c;p=clitk.git diff --git a/vv/vvOverlayPanel.cxx b/vv/vvOverlayPanel.cxx index 68356bf..e205c87 100644 --- a/vv/vvOverlayPanel.cxx +++ b/vv/vvOverlayPanel.cxx @@ -34,10 +34,14 @@ vvOverlayPanel::vvOverlayPanel(QWidget * parent):QWidget(parent) vFFrame->hide(); compareFrame->hide(); fusionFrame->hide(); + fCTUSFrame->hide(); subSamplingSpinBox->setEnabled(0); scaleSpinBox->setEnabled(0); lutCheckBox->hide(); lutCheckBox->setEnabled(0); + fusionShowLegendCheckBox->setChecked(false); + fCTUSActivateSpaceSyncCheckBox->setChecked(true); + connect(subSamplingSpinBox,SIGNAL(editingFinished()),this,SLOT(setVFProperty())); connect(scaleSpinBox,SIGNAL(editingFinished()),this,SLOT(setVFProperty())); connect(lutCheckBox,SIGNAL(clicked()),this,SLOT(setVFProperty())); @@ -51,11 +55,16 @@ vvOverlayPanel::vvOverlayPanel(QWidget * parent):QWidget(parent) 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())); + connect(fCTUSSlider,SIGNAL(valueChanged(int)),this,SLOT(setFusionSequenceProperty())); + connect(fCTUSActivateSpaceSyncCheckBox,SIGNAL(stateChanged(int)),this,SLOT(setFusionSequenceProperty())); + disableFusionSignals = false; + disableFusionSequenceSignals = false; } void vvOverlayPanel::getCurrentImageName(QString name) @@ -222,12 +231,12 @@ 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() @@ -245,14 +254,52 @@ void vvOverlayPanel::getCurrentFusionInfo(int visibility,double value) valueFusionnedLabel->setText(fusionValue); } + +void vvOverlayPanel::getFusionSequenceProperty(int sequenceFrameIndex, bool spatialSync, unsigned int sequenceLenth) +{ + if (sequenceFrameIndex > -1) { + disableFusionSequenceSignals = true; + fCTUSFrame->show(); + fCTUSFrame->setEnabled(1); + fCTUSSlider->setEnabled(1); + fCTUSSlider->setValue(sequenceFrameIndex); + fCTUSSlider->setMaximum(sequenceLenth); + if (spatialSync) fCTUSActivateSpaceSyncCheckBox->setCheckState(Qt::Checked); + else fCTUSActivateSpaceSyncCheckBox->setCheckState(Qt::Unchecked); + disableFusionSequenceSignals = false; + setFusionSequenceProperty(); + } else { + fCTUSFrame->hide(); + fCTUSFrame->setEnabled(0); + fCTUSSlider->setEnabled(0); + fCTUSSlider->setValue(0); + fCTUSSlider->setMaximum(0); + fCTUSActivateSpaceSyncCheckBox->setCheckState(Qt::Unchecked); + } +} + + +void vvOverlayPanel::setFusionSequenceProperty() +{ + if (disableFusionSequenceSignals) + return; + + emit FusionSequencePropertyUpdated(fCTUSSlider->value(), fCTUSActivateSpaceSyncCheckBox->isChecked(), fCTUSSlider->maximum()); +} + + + 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 */