QskSlider API cleanup

This commit is contained in:
Uwe Rathmann 2024-11-28 15:55:57 +01:00
parent 9d13cd1edf
commit d9a66e4a98
3 changed files with 19 additions and 38 deletions

View File

@ -56,7 +56,7 @@ class QskSlider::PrivateData
: pressedValue( 0 )
, hasOrigin( false )
, tracking( true )
, moving( false )
, dragging( false )
, orientation( orientation )
{
}
@ -68,7 +68,7 @@ class QskSlider::PrivateData
bool hasOrigin : 1;
bool tracking : 1;
bool moving : 1;
bool dragging : 1;
uint orientation : 2;
};
@ -97,11 +97,6 @@ QskSlider::~QskSlider()
{
}
bool QskSlider::isPressed() const
{
return hasSkinState( Pressed );
}
void QskSlider::setOrientation( Qt::Orientation orientation )
{
if ( orientation != m_data->orientation )
@ -213,7 +208,6 @@ void QskSlider::mousePressEvent( QMouseEvent* event )
}
setSkinStateFlag( Pressed );
Q_EMIT pressedChanged( true );
m_data->pressedPos = pos;
m_data->pressedValue = value();
@ -221,7 +215,7 @@ void QskSlider::mousePressEvent( QMouseEvent* event )
void QskSlider::mouseMoveEvent( QMouseEvent* event )
{
if ( !isPressed() )
if ( !hasSkinState( Pressed ) )
return;
const auto mousePos = qskMousePosition( event );
@ -242,9 +236,9 @@ void QskSlider::mouseMoveEvent( QMouseEvent* event )
if ( m_data->tracking )
{
m_data->moving = true;
m_data->dragging = true;
setValue( newValue );
m_data->moving = false;
m_data->dragging = false;
}
else
{
@ -259,18 +253,12 @@ void QskSlider::mouseReleaseEvent( QMouseEvent* )
Q_EMIT valueChanged( value() );
setSkinStateFlag( Pressed, false );
Q_EMIT pressedChanged( false );
}
qreal QskSlider::handlePosition() const
{
return positionHint( Handle );
}
void QskSlider::moveHandle()
{
QskAnimationHint hint;
if ( !m_data->moving )
if ( !m_data->dragging )
{
const auto aspect = Handle | QskAspect::Metric | QskAspect::Position;
hint = animationHint( aspect | skinStates() );

View File

@ -13,8 +13,6 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
{
Q_OBJECT
Q_PROPERTY( bool isPressed READ isPressed NOTIFY pressedChanged )
Q_PROPERTY( Qt::Orientation orientation READ orientation
WRITE setOrientation NOTIFY orientationChanged )
@ -24,8 +22,6 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
Q_PROPERTY( qreal origin READ origin
WRITE setOrigin RESET resetOrigin NOTIFY originChanged )
Q_PROPERTY( qreal handlePosition READ handlePosition )
using Inherited = QskBoundedValueInput;
public:
@ -37,8 +33,6 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
~QskSlider() override;
bool isPressed() const;
void setOrientation( Qt::Orientation );
Qt::Orientation orientation() const;
@ -56,7 +50,6 @@ class QSK_EXPORT QskSlider : public QskBoundedValueInput
void setOrigin( qreal );
Q_SIGNALS:
void pressedChanged( bool );
void orientationChanged( Qt::Orientation );
void trackingChanged( bool );
void originChanged( qreal );

View File

@ -249,12 +249,12 @@ QRectF QskSliderSkinlet::fillRect(
return QRectF();
auto pos1 = slider->valueAsRatio( slider->origin() );
auto pos2 = qBound( 0.0, slider->handlePosition(), 1.0 );
auto pos2 = qBound( 0.0, slider->positionHint( Q::Handle ), 1.0 );
if ( pos1 > pos2 )
qSwap( pos1, pos2 );
auto r = qskInnerRect( slider, contentsRect, QskSlider::Fill );
auto r = qskInnerRect( slider, contentsRect, Q::Fill );
auto scaleRect = subControlRect( slider, contentsRect, Q::Scale );
@ -280,7 +280,7 @@ QRectF QskSliderSkinlet::handleRect(
const QskSlider* slider, const QRectF& contentsRect ) const
{
auto handleSize = slider->strutSizeHint( Q::Handle );
const auto pos = qBound( 0.0, slider->handlePosition(), 1.0 );
const auto pos = qBound( 0.0, slider->positionHint( Q::Handle ), 1.0 );
const auto r = subControlRect( slider, contentsRect, Q::Scale );
auto center = r.center();