From decbce4bddf8704327769690d3c4162bdf3d40e2 Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Thu, 2 Sep 2021 08:11:53 +0200 Subject: [PATCH] mehods renamed to setXYZForAllStateCombinations --- src/controls/QskSkinHintTableEditor.cpp | 59 ++++++++++++++----------- src/controls/QskSkinHintTableEditor.h | 18 ++++---- 2 files changed, 42 insertions(+), 35 deletions(-) diff --git a/src/controls/QskSkinHintTableEditor.cpp b/src/controls/QskSkinHintTableEditor.cpp index 18530cca..0ce5ec82 100644 --- a/src/controls/QskSkinHintTableEditor.cpp +++ b/src/controls/QskSkinHintTableEditor.cpp @@ -14,7 +14,15 @@ namespace { - inline void setHintForAllCombinations( + inline QskAspect::State lowestState( QskAspect::State mask ) + { + using StateInt = typename std::underlying_type< QskAspect::State >::type; + + const auto count = qCountTrailingZeroBits( static_cast< StateInt >( mask ) ); + return static_cast< QskAspect::State >( 1 << count ); + } + + inline void setHintStateMask( QskSkinHintTable* table, QskAspect aspect, const QVariant& hint, QskAspect::State state, QskAspect::State mask ) { @@ -26,16 +34,15 @@ namespace return; } - const auto stateBit = static_cast< QskAspect::State >( - 1 << qCountTrailingZeroBits( mask ) ); + const auto stateBit = lowestState( mask ); mask &= ~stateBit; - setHintForAllCombinations( table, aspect, hint, state, mask ); - setHintForAllCombinations( table, aspect, hint, state | stateBit, mask ); + setHintStateMask( table, aspect, hint, state, mask ); + setHintStateMask( table, aspect, hint, state | stateBit, mask ); } - inline bool removeHintForAllCombinations( + inline bool removeHintStateMask( QskSkinHintTable* table, QskAspect aspect, QskAspect::State state, QskAspect::State mask ) { @@ -52,8 +59,8 @@ namespace mask &= ~stateBit; - bool ret = removeHintForAllCombinations( table, aspect, state, mask ); - ret |= removeHintForAllCombinations( table, aspect, state | stateBit, mask ); + bool ret = removeHintStateMask( table, aspect, state, mask ); + ret |= removeHintStateMask( table, aspect, state | stateBit, mask ); return ret; } @@ -119,34 +126,34 @@ QskSkinHintTable* QskSkinHintTableEditor::table() const return m_table; } -void QskSkinHintTableEditor::setHintForCombinations( +void QskSkinHintTableEditor::setHintForAllStateCombinations( QskAspect aspect, const QVariant& hint, QskAspect::State stateMask ) { - ::setHintForAllCombinations( m_table, aspect, hint, QskAspect::NoState, stateMask ); + setHintStateMask( m_table, aspect, hint, QskAspect::NoState, stateMask ); } -bool QskSkinHintTableEditor::removeHintForCombinations( +bool QskSkinHintTableEditor::removeHintForAllStateCombinations( QskAspect aspect, QskAspect::State stateMask ) { - return ::removeHintForAllCombinations( m_table, aspect, QskAspect::NoState, stateMask ); + return removeHintStateMask( m_table, aspect, QskAspect::NoState, stateMask ); } -void QskSkinHintTableEditor::setFlagHintForCombinations( +void QskSkinHintTableEditor::setFlagHintForAllStateCombinations( QskAspect aspect, const QVariant& hint, QskAspect::State stateMask ) { - setHintForCombinations( aspect | QskAspect::Flag, hint, stateMask ); + setHintForAllStateCombinations( aspect | QskAspect::Flag, hint, stateMask ); } -void QskSkinHintTableEditor::setMetricHintForCombinations( +void QskSkinHintTableEditor::setMetricHintForAllStateCombinations( QskAspect aspect, const QVariant& hint, QskAspect::State stateMask ) { - setHintForCombinations( aspect | QskAspect::Metric, hint, stateMask ); + setHintForAllStateCombinations( aspect | QskAspect::Metric, hint, stateMask ); } -void QskSkinHintTableEditor::setColorHintForCombinations( +void QskSkinHintTableEditor::setColorHintForAllStateCombinations( QskAspect aspect, const QVariant& hint, QskAspect::State stateMask ) { - setHintForCombinations( aspect | QskAspect::Color, hint, stateMask ); + setHintForAllStateCombinations( aspect | QskAspect::Color, hint, stateMask ); } void QskSkinHintTableEditor::setFlag( QskAspect aspect, int flag ) @@ -206,10 +213,10 @@ void QskSkinHintTableEditor::setGradient( QskAspect aspect, const QskGradient& g setColorHint( aspect, gradient ); } -void QskSkinHintTableEditor::setGradientForCombinations( +void QskSkinHintTableEditor::setGradientForAllStateCombinations( QskAspect aspect, const QskGradient& gradient, QskAspect::State stateMask ) { - setColorHintForCombinations( aspect, QVariant::fromValue( gradient ), stateMask ); + setColorHintForAllStateCombinations( aspect, QVariant::fromValue( gradient ), stateMask ); } QskGradient QskSkinHintTableEditor::gradient( QskAspect aspect ) const @@ -359,10 +366,10 @@ void QskSkinHintTableEditor::setBoxShape( setMetricHint( aspectShape( aspect ), shape ); } -void QskSkinHintTableEditor::setBoxShapeForCombinations( +void QskSkinHintTableEditor::setBoxShapeForAllStateCombinations( QskAspect aspect, const QskBoxShapeMetrics& shape, QskAspect::State stateMask ) { - setMetricHintForCombinations( + setMetricHintForAllStateCombinations( aspectShape( aspect ), QVariant::fromValue( shape ), stateMask ); } @@ -396,10 +403,10 @@ void QskSkinHintTableEditor::setBoxBorderMetrics( setMetricHint( aspectBorder( aspect ), borderMetrics ); } -void QskSkinHintTableEditor::setBoxBorderMetricsForCombinations( +void QskSkinHintTableEditor::setBoxBorderMetricsForAllStateCombinations( QskAspect aspect, const QskBoxBorderMetrics& borderMetrics, QskAspect::State stateMask ) { - setMetricHintForCombinations( aspectBorder( aspect ), + setMetricHintForAllStateCombinations( aspectBorder( aspect ), QVariant::fromValue( borderMetrics ), stateMask ); } @@ -419,10 +426,10 @@ void QskSkinHintTableEditor::setBoxBorderColors( setColorHint( aspectBorder( aspect ), borderColors ); } -void QskSkinHintTableEditor::setBoxBorderColorsForCombinations( +void QskSkinHintTableEditor::setBoxBorderColorsForAllStateCombinations( QskAspect aspect, const QskBoxBorderColors& borderColors, QskAspect::State stateMask ) { - setColorHintForCombinations( aspectBorder( aspect ), + setColorHintForAllStateCombinations( aspectBorder( aspect ), QVariant::fromValue( borderColors ), stateMask ); } diff --git a/src/controls/QskSkinHintTableEditor.h b/src/controls/QskSkinHintTableEditor.h index c424d987..cc7bf769 100644 --- a/src/controls/QskSkinHintTableEditor.h +++ b/src/controls/QskSkinHintTableEditor.h @@ -31,10 +31,10 @@ class QSK_EXPORT QskSkinHintTableEditor void setHint( QskAspect, const QVariant& ); const QVariant& hint( QskAspect ) const; - void setHintForCombinations( QskAspect, const QVariant&, QskAspect::State ); + void setHintForAllStateCombinations( QskAspect, const QVariant&, QskAspect::State ); bool removeHint( QskAspect ); - bool removeHintForCombinations( QskAspect, QskAspect::State ); + bool removeHintForAllStateCombinations( QskAspect, QskAspect::State ); QVariant takeHint( QskAspect ); @@ -51,7 +51,7 @@ class QSK_EXPORT QskSkinHintTableEditor // flag/metric/color void setFlagHint( QskAspect, const QVariant& ); - void setFlagHintForCombinations( QskAspect, const QVariant&, QskAspect::State ); + void setFlagHintForAllStateCombinations( QskAspect, const QVariant&, QskAspect::State ); void removeFlagHint( QskAspect ); QVariant flagHint( QskAspect ) const; @@ -59,7 +59,7 @@ class QSK_EXPORT QskSkinHintTableEditor template< typename T > T flagHint( QskAspect ) const; void setMetricHint( QskAspect, const QVariant& ); - void setMetricHintForCombinations( QskAspect, const QVariant&, QskAspect::State ); + void setMetricHintForAllStateCombinations( QskAspect, const QVariant&, QskAspect::State ); void removeMetricHint( QskAspect ); QVariant metricHint( QskAspect ) const; @@ -67,7 +67,7 @@ class QSK_EXPORT QskSkinHintTableEditor template< typename T > T metricHint( QskAspect ) const; void setColorHint( QskAspect, const QVariant& ); - void setColorHintForCombinations( QskAspect, const QVariant&, QskAspect::State ); + void setColorHintForAllStateCombinations( QskAspect, const QVariant&, QskAspect::State ); void removeColorHint( QskAspect ); QVariant colorHint( QskAspect ) const; @@ -90,7 +90,7 @@ class QSK_EXPORT QskSkinHintTableEditor void setHGradient( QskAspect, const QColor&, const QColor& ); void setVGradient( QskAspect, const QColor&, const QColor& ); void setGradient( QskAspect, const QskGradient& ); - void setGradientForCombinations( QskAspect, const QskGradient&, QskAspect::State ); + void setGradientForAllStateCombinations( QskAspect, const QskGradient&, QskAspect::State ); QskGradient gradient( QskAspect ) const; void setStrutSize( QskAspect, const QSizeF& ); @@ -130,7 +130,7 @@ class QSK_EXPORT QskSkinHintTableEditor void setBoxShape( QskAspect, qreal topLeft, qreal topRight, qreal bottomLeft, qreal bottomRight, Qt::SizeMode = Qt::AbsoluteSize ); void setBoxShape( QskAspect, const QskBoxShapeMetrics& ); - void setBoxShapeForCombinations( QskAspect, const QskBoxShapeMetrics&, QskAspect::State ); + void setBoxShapeForAllStateCombinations( QskAspect, const QskBoxShapeMetrics&, QskAspect::State ); void removeBoxShape( QskAspect ); QskBoxShapeMetrics boxShape( QskAspect ) const; @@ -139,12 +139,12 @@ class QSK_EXPORT QskSkinHintTableEditor void setBoxBorderMetrics( QskAspect, qreal left, qreal top, qreal right, qreal bottom, Qt::SizeMode = Qt::AbsoluteSize ); void setBoxBorderMetrics( QskAspect, const QskBoxBorderMetrics& ); - void setBoxBorderMetricsForCombinations( QskAspect, const QskBoxBorderMetrics&, QskAspect::State ); + void setBoxBorderMetricsForAllStateCombinations( QskAspect, const QskBoxBorderMetrics&, QskAspect::State ); void removeBoxBorderMetric( QskAspect ); QskBoxBorderMetrics boxBorderMetrics( QskAspect ) const; void setBoxBorderColors( QskAspect, const QskBoxBorderColors& ); - void setBoxBorderColorsForCombinations( QskAspect, const QskBoxBorderColors&, QskAspect::State ); + void setBoxBorderColorsForAllStateCombinations( QskAspect, const QskBoxBorderColors&, QskAspect::State ); void setBoxBorderColors( QskAspect, const QColor& left, const QColor& top, const QColor& right, const QColor& bottom ); void removeBoxBorderColors( QskAspect );