code simplified

This commit is contained in:
Uwe Rathmann 2025-03-11 09:53:46 +01:00
parent 7539dc575a
commit 5f85d7299b
1 changed files with 14 additions and 20 deletions

View File

@ -14,8 +14,8 @@ StorageBarSkinlet::StorageBarSkinlet( QskSkin* skin )
setNodeRoles( { Pictures, Music, Videos, Documents, Others, Free } ); setNodeRoles( { Pictures, Music, Videos, Documents, Others, Free } );
} }
QRectF StorageBarSkinlet::subControlRect( const QskSkinnable* skinnable, const QRectF& contentsRect, QRectF StorageBarSkinlet::subControlRect( const QskSkinnable* skinnable,
QskAspect::Subcontrol subControl ) const const QRectF& contentsRect, QskAspect::Subcontrol subControl ) const
{ {
const auto* const bar = static_cast< const S* >( skinnable ); const auto* const bar = static_cast< const S* >( skinnable );
@ -70,35 +70,29 @@ QRectF StorageBarSkinlet::subControlRect( const QskSkinnable* skinnable, const Q
return Inherited::subControlRect( skinnable, contentsRect, subControl ); return Inherited::subControlRect( skinnable, contentsRect, subControl );
} }
namespace
{
inline QSGNode* updateSegmentBoxNode(
const S* const skinnable, const QskAspect::Subcontrol& subcontrol, QSGNode* const node )
{
return QskSkinlet::updateBoxNode( skinnable, node, skinnable->subControlRect( subcontrol ),
skinnable->gradientHint( subcontrol ), subcontrol );
}
}
QSGNode* StorageBarSkinlet::updateSubNode( QSGNode* StorageBarSkinlet::updateSubNode(
const QskSkinnable* const skinnable, const quint8 nodeRole, QSGNode* const node ) const const QskSkinnable* const skinnable, const quint8 nodeRole, QSGNode* const node ) const
{ {
const auto* const bar = static_cast< const S* >( skinnable );
switch ( nodeRole ) switch ( nodeRole )
{ {
case Pictures: case Pictures:
return updateSegmentBoxNode( bar, S::Pictures, node ); return updateBoxNode( skinnable, node, S::Pictures );
case Music: case Music:
return updateSegmentBoxNode( bar, S::Music, node ); return updateBoxNode( skinnable, node, S::Music );
case Videos: case Videos:
return updateSegmentBoxNode( bar, S::Videos, node ); return updateBoxNode( skinnable, node, S::Videos );
case Documents: case Documents:
return updateSegmentBoxNode( bar, S::Documents, node ); return updateBoxNode( skinnable, node, S::Documents );
case Others: case Others:
return updateSegmentBoxNode( bar, S::Others, node ); return updateBoxNode( skinnable, node, S::Others );
case Free: case Free:
return updateSegmentBoxNode( bar, S::Free, node ); return updateBoxNode( skinnable, node, S::Free );
default: default:
return Inherited::updateSubNode( skinnable, nodeRole, node ); return Inherited::updateSubNode( skinnable, nodeRole, node );
} }