Browse Source

Use background color for checkerboard when not UNSPECIFIED.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16961
newinvert
Jeff Young 2 years ago
parent
commit
f75c72ebb5
  1. 32
      common/widgets/color_swatch.cpp

32
common/widgets/color_swatch.cpp

@ -65,17 +65,35 @@ void COLOR_SWATCH::RenderToDC( wxDC* aDC, const KIGFX::COLOR4D& aColor,
COLOR4D black;
bool rowCycle;
if( aCheckerboardBackground.GetBrightness() > 0.4 )
if( aColor == COLOR4D::UNSPECIFIED )
{
white = COLOR4D::WHITE;
black = white.Darkened( 0.15 );
rowCycle = true;
if( aCheckerboardBackground.GetBrightness() > 0.4 )
{
white = COLOR4D::WHITE;
black = white.Darkened( 0.15 );
rowCycle = true;
}
else
{
black = COLOR4D::BLACK;
white = black.Brightened( 0.15 );
rowCycle = false;
}
}
else
{
black = COLOR4D::BLACK;
white = black.Brightened( 0.15 );
rowCycle = false;
if( aBackground.GetBrightness() > 0.4 )
{
white = aBackground;
black = white.Darkened( 0.15 );
rowCycle = true;
}
else
{
black = COLOR4D::BLACK;
white = black.Brightened( 0.15 );
rowCycle = false;
}
}
for( int x = aRect.GetLeft(); x <= aRect.GetRight(); x += aCheckerboardSize.x )

Loading…
Cancel
Save