QskBoxBorderColors is invalid when one of the gradients is invalid

This commit is contained in:
Uwe Rathmann 2024-02-22 09:19:00 +01:00
parent 8e018fc702
commit 9ad8ca3cc9

View File

@ -135,6 +135,8 @@ const QskGradient& QskBoxBorderColors::gradientAt( Qt::Edge edge ) const
bool QskBoxBorderColors::isVisible() const bool QskBoxBorderColors::isVisible() const
{ {
if ( isValid() )
{
if ( m_gradients[ 0 ].isVisible() ) if ( m_gradients[ 0 ].isVisible() )
return true; return true;
@ -146,6 +148,7 @@ bool QskBoxBorderColors::isVisible() const
if ( m_gradients[ 3 ].isVisible() ) if ( m_gradients[ 3 ].isVisible() )
return true; return true;
}
return false; return false;
} }
@ -175,9 +178,9 @@ bool QskBoxBorderColors::isMonochrome() const
bool QskBoxBorderColors::isValid() const bool QskBoxBorderColors::isValid() const
{ {
return m_gradients[ 0 ].isValid() return m_gradients[ 0 ].isValid()
|| m_gradients[ 1 ].isValid() && m_gradients[ 1 ].isValid()
|| m_gradients[ 2 ].isValid() && m_gradients[ 2 ].isValid()
|| m_gradients[ 3 ].isValid(); && m_gradients[ 3 ].isValid();
} }
QskBoxBorderColors QskBoxBorderColors::interpolated( QskBoxBorderColors QskBoxBorderColors::interpolated(