Selaa lähdekoodia

Add ctkRangeWidget::rangeChanged signal

Julien Finet 14 vuotta sitten
vanhempi
commit
8b7821d914
2 muutettua tiedostoa jossa 8 lisäystä ja 0 poistoa
  1. 7 0
      Libs/Widgets/ctkRangeWidget.cpp
  2. 1 0
      Libs/Widgets/ctkRangeWidget.h

+ 7 - 0
Libs/Widgets/ctkRangeWidget.cpp

@@ -253,6 +253,8 @@ void ctkRangeWidget::setRange(double min, double max)
 {
   Q_D(ctkRangeWidget);
   
+  double oldMin = d->MinimumSpinBox->minimum();
+  double oldMax = d->MaximumSpinBox->maximum();
   d->MinimumSpinBox->setMinimum(qMin(min,max));
   d->MaximumSpinBox->setMaximum(qMax(min,max));
   // SpinBox can truncate the range (depending on decimals).
@@ -263,6 +265,11 @@ void ctkRangeWidget::setRange(double min, double max)
   Q_ASSERT(d->equal(d->MinimumSpinBox->minimum(), d->Slider->minimum()));
   Q_ASSERT(d->equal(d->MaximumSpinBox->maximum(), d->Slider->maximum()));
   d->updateSpinBoxWidth();
+  if (oldMin != d->MinimumSpinBox->minimum() ||
+      oldMax != d->MaximumSpinBox->maximum())
+    {
+    emit rangeChanged(d->MinimumSpinBox->minimum(), d->MaximumSpinBox->maximum());
+    }
 }
 
 // --------------------------------------------------------------------------

+ 1 - 0
Libs/Widgets/ctkRangeWidget.h

@@ -190,6 +190,7 @@ signals:
   void maximumValueChanged(double value);
   void maximumValueIsChanging(double value);
   void valuesChanged(double minValue, double maxValue);
+  void rangeChanged(double min, double max);
 
 protected slots:
   void startChanging();