scroll view: Allow styling via panel

This commit is contained in:
Peter Hartmann 2022-07-12 14:21:50 +02:00 committed by uwerat
parent 8ece05272d
commit 48a902a660
3 changed files with 8 additions and 1 deletions

View File

@ -757,6 +757,8 @@ void Editor::setupScrollView()
using A = QskAspect;
using Q = QskScrollView;
setGradient( Q::Panel, m_pal.background );
setGradient( Q::Viewport, m_pal.secondaryContainer );
for ( auto subControl : { Q::HorizontalScrollBar, Q::VerticalScrollBar } )

View File

@ -41,7 +41,7 @@ static void qskAlignedHandle( qreal start, qreal end,
QskScrollViewSkinlet::QskScrollViewSkinlet( QskSkin* skin )
: Inherited( skin )
{
setNodeRoles( { ViewportRole, ContentsRootRole,
setNodeRoles( { PanelRole, ViewportRole, ContentsRootRole,
HorizontalScrollBarRole, HorizontalScrollHandleRole,
VerticalScrollBarRole, VerticalScrollHandleRole } );
}
@ -93,6 +93,10 @@ QSGNode* QskScrollViewSkinlet::updateSubNode(
switch ( nodeRole )
{
case PanelRole:
{
return updateBoxNode( skinnable, node, QskScrollView::Panel );
}
case ViewportRole:
{
return updateBoxNode( skinnable, node, QskScrollView::Viewport );

View File

@ -19,6 +19,7 @@ class QSK_EXPORT QskScrollViewSkinlet : public QskSkinlet
public:
enum NodeRole
{
PanelRole,
ViewportRole,
ContentsRootRole,