Use THEME in RectButtonStyle

This commit is contained in:
mars 2022-11-18 14:01:20 -07:00
parent 59a673128c
commit e8c9088327
1 changed files with 9 additions and 5 deletions

View File

@ -118,6 +118,8 @@ pub struct RectButtonStyle {
pub inactive_color: Color,
pub hover_color: Color,
pub selected_color: Color,
pub icon_color: Color,
pub label_color: Color,
}
impl Default for RectButtonStyle {
@ -129,9 +131,11 @@ impl Default for RectButtonStyle {
label_baseline: 0.25,
icon_scale_factor: 0.8,
icon_margin_factor: 1.1,
inactive_color: Color::WHITE.with_alpha(0x40),
hover_color: Color::WHITE.with_alpha(0xb0),
selected_color: Color::YELLOW,
inactive_color: THEME.palette.base,
hover_color: THEME.palette.base_hover,
selected_color: THEME.palette.base_active,
icon_color: THEME.palette.black,
label_color: THEME.palette.text,
}
}
}
@ -168,7 +172,7 @@ impl RectButton {
label_left += margin;
alignment = HorizontalAlignment::Left;
let scale = rect.height() * style.icon_scale_factor;
let color = Color::BLACK;
let color = style.icon_color;
let cx = rect.tl.x + margin / 2.0;
let cy = rect.tl.y + rect.height() / 2.0;
let center = Vec2::new(cx, cy);
@ -182,7 +186,7 @@ impl RectButton {
let right = rect.br.x;
let baseline = rect.tl.y;
let baseline = (rect.height() * (1.0 - style.label_baseline)) + baseline;
let color = Color::BLACK;
let color = style.label_color;
Label::new(text, alignment, scale, color, left, right, baseline)
});