浏览代码

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 13 年之前
父节点
当前提交
a9f0fb5da2
共有 2 个文件被更改,包括 15 次插入0 次删除
  1. 7 0
      Libs/Widgets/ctkSliderWidget.cpp
  2. 8 0
      Libs/Widgets/ctkSliderWidget.h

+ 7 - 0
Libs/Widgets/ctkSliderWidget.cpp

@@ -494,3 +494,10 @@ void ctkSliderWidget::setSpinBoxVisible(bool visible)
   Q_D(ctkSliderWidget);
   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
 #include <QSlider>
+class QDoubleSpinBox;
 
 // CTK includes
 #include <ctkPimpl.h>
@@ -165,6 +166,13 @@ public:
   /// isSpinBoxVisible().
   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:
   /// 
   /// Reset the slider and spinbox to zero (value and position)