Fix Drawing artifact with radio buttons under Cairo (#792) - cont'd

This commit is contained in:
ManoloFLTK
2023-10-16 16:38:13 +02:00
parent 09e06dc703
commit 15fe9d9880
+10 -4
View File
@@ -50,11 +50,17 @@ static void draw(int which, int x,int y,int w,int h, int inset, Fl_Color color)
f(x, y+h-d, d, d, w<=h ? 180 : 90, w<=h ? 360 : 270);
}
} else if (which == UPPER_LEFT) {
f(x+w-d, y, d, d, 45, w<=h ? 180 : 90);
f(x, y+h-d, d, d, w<=h ? 180 : 90, 225);
if (w == h) f(x, y, d, d, 45, 225);
else {
f(x+w-d, y, d, d, 45, w<=h ? 180 : 90);
f(x, y+h-d, d, d, w<=h ? 180 : 90, 225);
}
} else { // LOWER_RIGHT
f(x, y+h-d, d, d, 225, w<=h ? 360 : 270);
f(x+w-d, y, d, d, w<=h ? 360 : 270, 360+45);
if (w == h) f(x, y, d, d, 225, 405);
else {
f(x, y+h-d, d, d, 225, w<=h ? 360 : 270);
f(x+w-d, y, d, d, w<=h ? 360 : 270, 360+45);
}
}
if (which == FILL) {
if (w < h)