void QSlider::moveSlider( int pos ) { int a = available(); int newPos = QMIN( a, QMAX( 0, pos ) ); int newVal = valueFromPosition( newPos ); if ( sliderVal != newVal ) { sliderVal = newVal; emit sliderMoved( sliderVal ); } if ( tracking() && sliderVal != value() ) { setValue( sliderVal ); // ### Why do we emit the valueChanged signal here? It will get emitted in // valueChange() anyway... //emit valueChanged( sliderVal ); } switch ( (GUIStyle)style() ) { case WindowsStyle: newPos = positionFromValue( newVal ); break; default: case MotifStyle: break; } if ( sliderPos != newPos ) reallyMoveSlider( newPos ); }
void QvisOpacitySlider::moveSlider(int pos) { int newPos = qMin(available(), qMax( 0, pos)); int newVal = valueFromPosition(newPos); newPos = positionFromValue( newVal ); if(sliderPos != newPos) reallyMoveSlider(newPos); }
void QvisOpacitySlider::paintValueText(QPainter *p, const QPalette &cg, int x, int h) { // Create the text that we have to display. int v = (state == Dragging) ? (valueFromPosition(sliderPos)) : value(); float t = float(v - minimum()) / float(maximum() - minimum()); QString txt; txt.sprintf("%d%%", int(t * 100.f)); // Figure out the y offset. int dy = h - fontMetrics().height(); int y = (h - dy / 2); // Set the brush and draw the text. p->setPen(cg.color(QPalette::Text)); p->drawText(x + textPadding(), y, txt); }
void QSlider::resetState() { if ( timer ) { timer->stop(); timer->disconnect(); } switch ( state ) { case TimingUp: case TimingDown: break; case Dragging: { setValue( valueFromPosition( sliderPos ) ); emit sliderReleased(); break; } case Idle: break; default: qWarning("QSlider: (%s) in wrong state", name( "unnamed" ) ); } state = Idle; }
void QvisOpacitySlider::resetState() { if(timer ) { timer->stop(); timer->disconnect(); } switch(state) { case TimingUp: case TimingDown: break; case Dragging: setValue(valueFromPosition(sliderPos)); // emit sliderReleased(); break; case Idle: break; } state = Idle; }