Some updates to sizing button text
This commit is contained in:
@@ -66,23 +66,22 @@ impl ButtonWidget {
|
||||
};
|
||||
|
||||
let font = resources.font();
|
||||
let mut dim_width = self.rect.w;
|
||||
let mut font_size = 30.0;
|
||||
let mut dims = measure_text(&text, Some(&font), font_size as u16, 1.0);
|
||||
let target_w = self.rect.w * 0.9;
|
||||
let target_h = self.rect.h;
|
||||
let mut font_size = 20;
|
||||
let mut dims = measure_text(&text, Some(&font), font_size, 1.0);
|
||||
loop {
|
||||
if dim_width <= self.rect.w * 0.8 {
|
||||
if dims.width <= target_w && dims.height <= target_h {
|
||||
break;
|
||||
}
|
||||
|
||||
font_size -= 2;
|
||||
dims = measure_text(&text, Some(&font), font_size as u16, 1.0);
|
||||
dim_width = dims.width;
|
||||
font_size -= 2.0;
|
||||
}
|
||||
|
||||
let button_draw_offset = self.get_button_draw_offset();
|
||||
|
||||
let text_params = TextParams {
|
||||
font_size: font_size as u16,
|
||||
font_size,
|
||||
color: font_color,
|
||||
font: Some(&font),
|
||||
..Default::default()
|
||||
|
||||
@@ -112,13 +112,26 @@ impl CounterWidget {
|
||||
self.increment.draw("+", &UiColor::Yellow, resources);
|
||||
self.decrement.draw("-", &UiColor::Yellow, resources);
|
||||
|
||||
let font = resources.font();
|
||||
let mut min_dim = self.visual_rect.w.min(self.visual_rect.h);
|
||||
let mut font_size = self.font_size as u16;
|
||||
loop {
|
||||
if min_dim <= self.visual_rect.w * 0.5 {
|
||||
break;
|
||||
}
|
||||
|
||||
let dims = measure_text(&self.current.to_string(), Some(&font), font_size as u16, 1.0);
|
||||
min_dim = dims.width.min(dims.height);
|
||||
font_size -= 1;
|
||||
}
|
||||
|
||||
draw_text_ex(
|
||||
&self.current.to_string(),
|
||||
self.visual_rect.x + (self.visual_rect.w - self.visual_dims.width) / 2.,
|
||||
self.visual_rect.y + (self.visual_rect.h + self.font_size) / 2.,
|
||||
TextParams {
|
||||
font: Some(resources.font()),
|
||||
font_size: self.font_size as u16,
|
||||
font_size,
|
||||
color: UiColor::Yellow.to_fg_color(),
|
||||
..Default::default()
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user