#include <QmitkNumberPropertySlider.h>
Definition at line 26 of file QmitkNumberPropertySlider.h.
QmitkNumberPropertySlider::QmitkNumberPropertySlider | ( | mitk::IntProperty * | property, |
QWidget * | parent, | ||
const char * | name = 0 |
||
) |
Definition at line 28 of file QmitkNumberPropertySlider.cpp.
References initialize().
: QSlider( parent ), PropertyEditor( property ), m_IntProperty(property), m_DataType(DT_INT) { initialize(); }
QmitkNumberPropertySlider::QmitkNumberPropertySlider | ( | mitk::FloatProperty * | property, |
QWidget * | parent, | ||
const char * | name = 0 |
||
) |
Definition at line 37 of file QmitkNumberPropertySlider.cpp.
References initialize().
: QSlider( parent ), PropertyEditor( property ), m_FloatProperty(property), m_DataType(DT_FLOAT) { initialize(); }
QmitkNumberPropertySlider::QmitkNumberPropertySlider | ( | mitk::DoubleProperty * | property, |
QWidget * | parent, | ||
const char * | name = 0 |
||
) |
Definition at line 46 of file QmitkNumberPropertySlider.cpp.
References initialize().
: QSlider( parent ), PropertyEditor( property ), m_DoubleProperty(property), m_DataType(DT_DOUBLE) { initialize(); }
QmitkNumberPropertySlider::~QmitkNumberPropertySlider | ( | ) | [virtual] |
Definition at line 55 of file QmitkNumberPropertySlider.cpp.
{ }
void QmitkNumberPropertySlider::DisplayNumber | ( | ) | [protected] |
Definition at line 246 of file QmitkNumberPropertySlider.cpp.
References DT_DOUBLE, DT_FLOAT, DT_INT, mitk::GenericProperty< T >::GetValue(), m_DataType, m_DoubleProperty, m_FloatProperty, m_IntProperty, mitk::PropertyEditor::m_Property, and setDoubleValue().
Referenced by initialize(), PropertyChanged(), setDecimalPlaces(), and setShowPercent().
{ if (! m_Property ) return; m_SelfChangeLock = true; switch (m_DataType) { /* case DT_SHORT: { short s = m_ShortProperty->GetValue(); QSlider::setValue( s ); break; } */ case DT_INT: { int i = m_IntProperty->GetValue(); QSlider::setValue( i ); break; } case DT_FLOAT: { float f = m_FloatProperty->GetValue(); setDoubleValue( f ); break; } case DT_DOUBLE: { double d = m_DoubleProperty->GetValue(); setDoubleValue( d ); break; } default: break; } m_SelfChangeLock = false; }
double QmitkNumberPropertySlider::doubleValue | ( | ) | const |
Definition at line 178 of file QmitkNumberPropertySlider.cpp.
References m_FactorPropertyToSlider.
{ return static_cast<double>((QSlider::value()) / m_FactorPropertyToSlider ); }
short QmitkNumberPropertySlider::getDecimalPlaces | ( | ) | const |
Definition at line 111 of file QmitkNumberPropertySlider.cpp.
References m_DecimalPlaces.
{ return m_DecimalPlaces; }
bool QmitkNumberPropertySlider::getShowPercent | ( | ) | const |
Definition at line 132 of file QmitkNumberPropertySlider.cpp.
References m_ShowPercents.
{ return m_ShowPercents; }
void QmitkNumberPropertySlider::initialize | ( | ) | [protected] |
Definition at line 59 of file QmitkNumberPropertySlider.cpp.
References DisplayNumber(), m_DecimalPlaces, m_FactorPropertyToSlider, m_FactorSliderToDisplay, m_ShowPercents, and onValueChanged().
Referenced by QmitkNumberPropertySlider().
{ // only to be called from constructors // spinbox settings //setValidator(0); //setSuffix(""); setOrientation( Qt::Horizontal ); // protected m_DecimalPlaces = 0; m_FactorPropertyToSlider = 1.0; m_FactorSliderToDisplay = 1.0; m_ShowPercents = false; // private m_SelfChangeLock = false; connect( this, SIGNAL(valueChanged(int)), this, SLOT(onValueChanged(int)) ); // display current value of our property DisplayNumber(); }
int QmitkNumberPropertySlider::maxValue | ( | ) | const |
int QmitkNumberPropertySlider::minValue | ( | ) | const |
void QmitkNumberPropertySlider::onValueChanged | ( | int | value ) | [protected, slot] |
Definition at line 189 of file QmitkNumberPropertySlider.cpp.
References mitk::PropertyObserver::BeginModifyProperty(), DT_DOUBLE, DT_FLOAT, DT_INT, mitk::PropertyObserver::EndModifyProperty(), mitk::RenderingManager::GetInstance(), m_DataType, m_DoubleProperty, m_FactorPropertyToSlider, m_FloatProperty, m_IntProperty, ROUND, and mitk::GenericProperty< T >::SetValue().
Referenced by initialize().
{ if (m_SelfChangeLock) return; // valueChanged is even emitted, when this widget initiates a change to its value // this may be useful some times, but in this use, it would be wrong: // (A) is an editor with 3 decimal places // (B) is an editor with 2 decimal places // User changes A's displayed value to 4.002 // A's onValueChanged gets called, sets the associated Property to 4.002 // B's onPropertyChanged gets called, sets its display to 4.00 // B's onValueChanged gets called and sets the associated Property to 4.00 // A's onPropertyChanged gets called, sets its display to 4.000 BeginModifyProperty(); double newValue( value / m_FactorPropertyToSlider ); switch (m_DataType) { /* case DT_SHORT: { m_ShortProperty->SetValue(ROUND_SHORT(newValue)); break; } */ case DT_INT: { m_IntProperty->SetValue(ROUND(newValue)); break; } case DT_FLOAT: { m_FloatProperty->SetValue(newValue); break; } case DT_DOUBLE: { m_DoubleProperty->SetValue(newValue); break; } } mitk::RenderingManager::GetInstance()->RequestUpdateAll(); EndModifyProperty(); }
void QmitkNumberPropertySlider::PropertyChanged | ( | ) | [protected, virtual] |
Implements mitk::PropertyObserver.
Definition at line 235 of file QmitkNumberPropertySlider.cpp.
References DisplayNumber(), and mitk::RenderingManager::GetInstance().
{ DisplayNumber(); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); }
void QmitkNumberPropertySlider::PropertyRemoved | ( | ) | [protected, virtual] |
Implements mitk::PropertyObserver.
Definition at line 241 of file QmitkNumberPropertySlider.cpp.
References mitk::PropertyEditor::m_Property.
{ m_Property = NULL; }
void QmitkNumberPropertySlider::setDecimalPlaces | ( | short | places ) |
Definition at line 116 of file QmitkNumberPropertySlider.cpp.
References DisplayNumber(), DT_DOUBLE, DT_FLOAT, m_DataType, and m_ShowPercents.
{ switch (m_DataType) { case DT_FLOAT: case DT_DOUBLE: { adjustFactors( places, m_ShowPercents ); DisplayNumber(); break; } default: break; } }
void QmitkNumberPropertySlider::setDoubleValue | ( | double | value ) |
Definition at line 183 of file QmitkNumberPropertySlider.cpp.
References m_FactorPropertyToSlider, and ROUND.
Referenced by DisplayNumber().
{ QSlider::setValue( ROUND( value * m_FactorPropertyToSlider ) ); //QSlider::updateDisplay(); }
void QmitkNumberPropertySlider::setMaxValue | ( | int | value ) |
Definition at line 173 of file QmitkNumberPropertySlider.cpp.
References m_FactorPropertyToSlider, and ROUND.
Referenced by QmitkPropertyListPopup::fillPopup().
{ QSlider::setMaximum( ROUND( value * m_FactorPropertyToSlider ) ); }
void QmitkNumberPropertySlider::setMinValue | ( | int | value ) |
Definition at line 163 of file QmitkNumberPropertySlider.cpp.
References m_FactorPropertyToSlider, and ROUND.
Referenced by QmitkPropertyListPopup::fillPopup().
{ QSlider::setMinimum( ROUND(value * m_FactorPropertyToSlider ) ); }
void QmitkNumberPropertySlider::setShowPercent | ( | bool | showPercent ) |
Definition at line 137 of file QmitkNumberPropertySlider.cpp.
References DisplayNumber(), DT_DOUBLE, DT_FLOAT, m_DataType, m_DecimalPlaces, and m_ShowPercents.
Referenced by QmitkPropertyListPopup::fillPopup().
{ if ( showPercent == m_ShowPercents ) return; // nothing to change switch (m_DataType) { case DT_FLOAT: case DT_DOUBLE: { adjustFactors( m_DecimalPlaces, showPercent ); break; } default: { break; } } DisplayNumber(); }
union { ... } [protected] |
const int QmitkNumberPropertySlider::m_DataType [protected] |
Definition at line 72 of file QmitkNumberPropertySlider.h.
Referenced by DisplayNumber(), onValueChanged(), setDecimalPlaces(), and setShowPercent().
short QmitkNumberPropertySlider::m_DecimalPlaces [protected] |
Definition at line 74 of file QmitkNumberPropertySlider.h.
Referenced by getDecimalPlaces(), initialize(), and setShowPercent().
Definition at line 69 of file QmitkNumberPropertySlider.h.
Referenced by DisplayNumber(), and onValueChanged().
double QmitkNumberPropertySlider::m_FactorPropertyToSlider [protected] |
Definition at line 75 of file QmitkNumberPropertySlider.h.
Referenced by doubleValue(), initialize(), onValueChanged(), setDoubleValue(), setMaxValue(), and setMinValue().
double QmitkNumberPropertySlider::m_FactorSliderToDisplay [protected] |
Definition at line 76 of file QmitkNumberPropertySlider.h.
Referenced by initialize().
Definition at line 68 of file QmitkNumberPropertySlider.h.
Referenced by DisplayNumber(), and onValueChanged().
Definition at line 67 of file QmitkNumberPropertySlider.h.
Referenced by DisplayNumber(), and onValueChanged().
bool QmitkNumberPropertySlider::m_ShowPercents [protected] |
Definition at line 77 of file QmitkNumberPropertySlider.h.
Referenced by getShowPercent(), initialize(), setDecimalPlaces(), and setShowPercent().
short QmitkNumberPropertySlider::decimalPlaces [read, write] |
Definition at line 29 of file QmitkNumberPropertySlider.h.
int QmitkNumberPropertySlider::maxValue [read, write] |
Definition at line 32 of file QmitkNumberPropertySlider.h.
int QmitkNumberPropertySlider::minValue [read, write] |
Definition at line 31 of file QmitkNumberPropertySlider.h.
bool QmitkNumberPropertySlider::showPercent [read, write] |
Definition at line 30 of file QmitkNumberPropertySlider.h.