Kaynağa Gözat

Expose the double spinbox to ctkSliderWidget public API

It can be useful to move the spinbox somewhere else, but keeping the
links between the slider and spinbox.
Julien Finet 14 yıl önce
ebeveyn
işleme
a9f0fb5da2

+ 7 - 0
Libs/Widgets/ctkSliderWidget.cpp

@@ -494,3 +494,10 @@ void ctkSliderWidget::setSpinBoxVisible(bool visible)
   Q_D(ctkSliderWidget);
   Q_D(ctkSliderWidget);
   d->SpinBox->setVisible(visible);
   d->SpinBox->setVisible(visible);
 }
 }
+
+// --------------------------------------------------------------------------
+QDoubleSpinBox* ctkSliderWidget::spinBox()
+{
+  Q_D(ctkSliderWidget);
+  return d->SpinBox;
+}

+ 8 - 0
Libs/Widgets/ctkSliderWidget.h

@@ -23,6 +23,7 @@
 
 
 // Qt includes
 // Qt includes
 #include <QSlider>
 #include <QSlider>
+class QDoubleSpinBox;
 
 
 // CTK includes
 // CTK includes
 #include <ctkPimpl.h>
 #include <ctkPimpl.h>
@@ -165,6 +166,13 @@ public:
   /// isSpinBoxVisible().
   /// isSpinBoxVisible().
   bool isSpinBoxVisible()const;
   bool isSpinBoxVisible()const;
 
 
+  ///
+  /// Sometimes it can be useful to have a direct control to the spinbox
+  /// To place it somewhere else that ctkDoubleSlider can't. Be careful
+  /// with what you do with the spinbox as ctkDoubleSlider might change
+  /// properties automatically.
+  QDoubleSpinBox* spinBox();
+
 public slots:
 public slots:
   /// 
   /// 
   /// Reset the slider and spinbox to zero (value and position)
   /// Reset the slider and spinbox to zero (value and position)