ソースを参照

Support calls to ctkRangeSlider::setValues inside setValues

When ctkRangeSlider fires valuesChanged(...), an observer can set new
values or range. The next signal calls minimumValueChanged and
maximumValueChanged should fire the new values and not the old ones.
Julien Finet 14 年 前
コミット
e420e6c6a1
共有1 個のファイルを変更した5 個の追加5 個の削除を含む
  1. 5 5
      Libs/Widgets/ctkRangeSlider.cpp

+ 5 - 5
Libs/Widgets/ctkRangeSlider.cpp

@@ -322,15 +322,15 @@ void ctkRangeSlider::setValues(int l, int u)
     {
     if (emitMinPosChanged || emitMaxPosChanged)
       {
-      emit positionsChanged(minimumValue, maximumValue);
+      emit positionsChanged(d->m_MinimumPosition, d->m_MaximumPosition);
       }
     if (emitMinPosChanged)
       {
-      emit minimumPositionChanged(minimumValue);
+      emit minimumPositionChanged(d->m_MinimumPosition);
       }
     if (emitMaxPosChanged)
       {
-      emit maximumPositionChanged(maximumValue);
+      emit maximumPositionChanged(d->m_MaximumPosition);
       }
     }
   if (emitMinValChanged || emitMaxValChanged)
@@ -340,11 +340,11 @@ void ctkRangeSlider::setValues(int l, int u)
     }
   if (emitMinValChanged)
     {
-    emit minimumValueChanged(minimumValue);
+    emit minimumValueChanged(d->m_MinimumValue);
     }
   if (emitMaxValChanged)
     {
-    emit maximumValueChanged(maximumValue);
+    emit maximumValueChanged(d->m_MaximumValue);
     }
   if (emitMinPosChanged || emitMaxPosChanged || 
       emitMinValChanged || emitMaxValChanged)