QskSlider::tickPolicy added to be able to disable ticks for sliders with
many steps
This commit is contained in:
parent
5b48a2a4bd
commit
7539dc575a
|
@ -21,6 +21,7 @@ Slider::Slider( const QString& text, qreal min, qreal max,
|
|||
m_slider->setBoundaries( min, max );
|
||||
m_slider->setStepSize( step );
|
||||
m_slider->setSnapping( true );
|
||||
m_slider->setTickPolicy( Qsk::Never ); // too many steps
|
||||
m_slider->setValue( value );
|
||||
|
||||
m_valueLabel = new QskTextLabel( this );
|
||||
|
|
|
@ -197,6 +197,23 @@ bool QskSlider::hasOrigin() const
|
|||
return m_data->hasOrigin;
|
||||
}
|
||||
|
||||
void QskSlider::setTickPolicy( Qsk::Policy policy )
|
||||
{
|
||||
if ( setFlagHint( Tick | QskAspect::Option, policy ) )
|
||||
Q_EMIT tickPolicyChanged( policy );
|
||||
}
|
||||
|
||||
void QskSlider::resetTickPolicy()
|
||||
{
|
||||
if ( resetSkinHint( Tick | QskAspect::Option ) )
|
||||
Q_EMIT tickPolicyChanged( tickPolicy() );
|
||||
}
|
||||
|
||||
Qsk::Policy QskSlider::tickPolicy() const
|
||||
{
|
||||
return flagHint< Qsk::Policy >( Tick | QskAspect::Option, Qsk::Maybe );
|
||||
}
|
||||
|
||||
QskAspect::Variation QskSlider::effectiveVariation() const
|
||||
{
|
||||
return static_cast< QskAspect::Variation >( m_data->orientation );
|
||||
|
|
|
@ -22,6 +22,9 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
|
|||
Q_PROPERTY( bool tracking READ isTracking
|
||||
WRITE setTracking NOTIFY trackingChanged )
|
||||
|
||||
Q_PROPERTY( Qsk::Policy tickPolicy READ tickPolicy
|
||||
WRITE setTickPolicy RESET resetTickPolicy NOTIFY tickPolicyChanged )
|
||||
|
||||
Q_PROPERTY( qreal origin READ origin
|
||||
WRITE setOrigin RESET resetOrigin NOTIFY originChanged )
|
||||
|
||||
|
@ -39,6 +42,10 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
|
|||
void setOrientation( Qt::Orientation );
|
||||
Qt::Orientation orientation() const;
|
||||
|
||||
void setTickPolicy( Qsk::Policy );
|
||||
void resetTickPolicy();
|
||||
Qsk::Policy tickPolicy() const;
|
||||
|
||||
void setInverted( bool );
|
||||
bool isInverted() const;
|
||||
|
||||
|
@ -61,6 +68,7 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
|
|||
void invertedChanged( bool );
|
||||
void trackingChanged( bool );
|
||||
void originChanged( qreal );
|
||||
void tickPolicyChanged( Qsk::Policy );
|
||||
|
||||
protected:
|
||||
void mousePressEvent( QMouseEvent* ) override;
|
||||
|
|
|
@ -388,10 +388,7 @@ bool QskSliderSkinlet::hasGraduation( const QskSlider* slider ) const
|
|||
{
|
||||
if ( slider->stepSize() )
|
||||
{
|
||||
const auto policy = slider->flagHint< Qsk::Policy >(
|
||||
Q::Tick | QskAspect::Option, Qsk::Never );
|
||||
|
||||
switch( policy )
|
||||
switch( slider->tickPolicy() )
|
||||
{
|
||||
case Qsk::Always:
|
||||
return true;
|
||||
|
|
Loading…
Reference in New Issue