소스 검색

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)