#![allow(clippy::excessive_precision)]
#[derive(Copy, Clone, Debug, Default)]
pub struct GlyphSize {
pub width: f64,
pub height: f64,
pub x: f64,
pub y: f64,
}
#[derive(Copy, Clone, Debug)]
pub struct Metrics {
pub face_width: f64,
pub face_height: f64,
pub face_y: f64,
pub cell_width: u32,
pub cell_height: u32,
pub icon_height_single: f64,
pub icon_height: f64,
}
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum Size {
None,
Fit,
Cover,
FitCover1,
Stretch,
}
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum Align {
None,
Start,
End,
Center,
Center1,
}
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum Height {
Cell,
Icon,
}
#[derive(Copy, Clone, Debug, PartialEq)]
pub struct Constraint {
pub size: Size,
pub align_vertical: Align,
pub align_horizontal: Align,
pub pad_top: f64,
pub pad_left: f64,
pub pad_right: f64,
pub pad_bottom: f64,
pub relative_width: f64,
pub relative_height: f64,
pub relative_x: f64,
pub relative_y: f64,
pub max_xy_ratio: Option<f64>,
pub max_constraint_width: u8,
pub height: Height,
}
impl Constraint {
pub const DEFAULT: Constraint = Constraint {
size: Size::None,
align_vertical: Align::None,
align_horizontal: Align::None,
pad_top: 0.0,
pad_left: 0.0,
pad_right: 0.0,
pad_bottom: 0.0,
relative_width: 1.0,
relative_height: 1.0,
relative_x: 0.0,
relative_y: 0.0,
max_xy_ratio: None,
max_constraint_width: 2,
height: Height::Cell,
};
#[inline]
pub fn does_anything(&self) -> bool {
self.size != Size::None
|| self.align_horizontal != Align::None
|| self.align_vertical != Align::None
}
pub fn constrain(
&self,
glyph: GlyphSize,
metrics: Metrics,
constraint_width: u8,
) -> GlyphSize {
if !self.does_anything() {
return glyph;
}
match self.size {
Size::Stretch => {
let mut m = metrics;
m.face_width = m.cell_width as f64;
m.face_height = m.cell_height as f64;
m.face_y = 0.0;
let mut c = *self;
c.pad_bottom = c.pad_bottom.max(0.0);
c.pad_top = c.pad_top.max(0.0);
c.pad_left = c.pad_left.max(0.0);
c.pad_right = c.pad_right.max(0.0);
c.constrain_inner(glyph, m, constraint_width)
}
_ => self.constrain_inner(glyph, metrics, constraint_width),
}
}
fn constrain_inner(
&self,
glyph: GlyphSize,
metrics: Metrics,
constraint_width: u8,
) -> GlyphSize {
let min_constraint_width: u8 = if self.size == Size::Stretch
&& metrics.face_width > 0.9 * metrics.face_height
{
1
} else {
self.max_constraint_width.min(constraint_width)
};
let group_width = glyph.width / self.relative_width;
let group_height = glyph.height / self.relative_height;
let mut group = GlyphSize {
width: group_width,
height: group_height,
x: glyph.x - (group_width * self.relative_x),
y: glyph.y - (group_height * self.relative_y),
};
let (width_factor, height_factor) =
self.scale_factors(group, metrics, min_constraint_width);
let center_x = group.x + (group.width / 2.0);
let center_y = group.y + (group.height / 2.0);
group.width *= width_factor;
group.height *= height_factor;
group.x = center_x - (group.width / 2.0);
group.y = center_y - (group.height / 2.0);
group.y = self.aligned_y(group, metrics);
group.x = self.aligned_x(group, metrics, min_constraint_width);
GlyphSize {
width: width_factor * glyph.width,
height: height_factor * glyph.height,
x: group.x + (group.width * self.relative_x),
y: group.y + (group.height * self.relative_y),
}
}
fn scale_factors(
&self,
group: GlyphSize,
metrics: Metrics,
min_constraint_width: u8,
) -> (f64, f64) {
if self.size == Size::None {
return (1.0, 1.0);
}
let multi_cell = min_constraint_width > 1;
let pad_width_factor =
min_constraint_width as f64 - (self.pad_left + self.pad_right);
let pad_height_factor = 1.0 - (self.pad_bottom + self.pad_top);
let target_width = pad_width_factor * metrics.face_width;
let target_height = pad_height_factor
* match self.height {
Height::Cell => metrics.face_height,
Height::Icon => {
if multi_cell {
metrics.icon_height
} else {
metrics.icon_height_single
}
}
};
let mut width_factor = target_width / group.width;
let mut height_factor = target_height / group.height;
match self.size {
Size::None => unreachable!(),
Size::Fit => {
height_factor = height_factor.min(width_factor).min(1.0);
width_factor = height_factor;
}
Size::Cover => {
height_factor = height_factor.min(width_factor);
width_factor = height_factor;
}
Size::FitCover1 => {
height_factor = height_factor.min(width_factor);
if multi_cell && height_factor > 1.0 {
let (_, single_height_factor) = self.scale_factors(group, metrics, 1);
height_factor = single_height_factor.max(1.0);
}
width_factor = height_factor;
}
Size::Stretch => {}
}
if let Some(ratio) = self.max_xy_ratio {
if group.width * width_factor > group.height * height_factor * ratio {
width_factor = group.height * height_factor * ratio / group.width;
}
}
(width_factor, height_factor)
}
fn aligned_y(&self, group: GlyphSize, metrics: Metrics) -> f64 {
if self.size == Size::None && self.align_vertical == Align::None {
return group.y;
}
let pad_bottom_dy = self.pad_bottom * metrics.face_height;
let pad_top_dy = self.pad_top * metrics.face_height;
let start_y = metrics.face_y + pad_bottom_dy;
let end_y = metrics.face_y + (metrics.face_height - group.height - pad_top_dy);
let center_y = (start_y + end_y) / 2.0;
match self.align_vertical {
Align::None => {
if end_y < start_y {
center_y
} else {
group.y.clamp(start_y, end_y)
}
}
Align::Start => start_y,
Align::End => end_y,
Align::Center | Align::Center1 => center_y,
}
}
fn aligned_x(
&self,
group: GlyphSize,
metrics: Metrics,
min_constraint_width: u8,
) -> f64 {
if self.size == Size::None && self.align_horizontal == Align::None {
return group.x;
}
let full_face_span = metrics.face_width
+ ((min_constraint_width as i32 - 1) * metrics.cell_width as i32) as f64;
let pad_left_dx = self.pad_left * metrics.face_width;
let pad_right_dx = self.pad_right * metrics.face_width;
let start_x = pad_left_dx;
let end_x = full_face_span - group.width - pad_right_dx;
match self.align_horizontal {
Align::None => group.x.max(start_x).min(end_x.max(start_x)),
Align::Start => start_x,
Align::End => end_x.max(start_x),
Align::Center => start_x.max((start_x + end_x) / 2.0),
Align::Center1 => {
let end1_x = metrics.face_width - group.width - pad_right_dx;
start_x.max((start_x + end1_x) / 2.0)
}
}
}
}
pub fn get_constraint(cp: u32) -> Option<Constraint> {
match cp {
0x2630 => Some(Constraint {
size: Size::Cover,
height: Height::Icon,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
pad_left: 0.05,
pad_right: 0.05,
pad_top: 0.05,
pad_bottom: 0.05,
..Constraint::DEFAULT
}),
0x276c..=0x276d => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7142857142857143,
relative_height: 0.8910614525139665,
relative_x: 0.1428571428571428,
relative_y: 0.0349162011173184,
pad_top: 0.15,
pad_bottom: 0.15,
..Constraint::DEFAULT
}),
0x276e..=0x276f => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9885714285714285,
relative_height: 0.8910614525139665,
relative_x: 0.0057142857142857,
relative_y: 0.0125698324022346,
pad_top: 0.15,
pad_bottom: 0.15,
..Constraint::DEFAULT
}),
0x2770..=0x2771 => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
pad_top: 0.15,
pad_bottom: 0.15,
..Constraint::DEFAULT
}),
0xe0a0..=0xe0a3 | 0xe0cf => Some(Constraint {
size: Size::FitCover1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0b0 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.03,
pad_right: -0.03,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0b1 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0b2 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.03,
pad_right: -0.03,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0b3 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0b4 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.03,
pad_right: -0.03,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.59),
..Constraint::DEFAULT
}),
0xe0b5 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
max_xy_ratio: Some(0.5),
..Constraint::DEFAULT
}),
0xe0b6 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.03,
pad_right: -0.03,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.59),
..Constraint::DEFAULT
}),
0xe0b7 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
max_xy_ratio: Some(0.5),
..Constraint::DEFAULT
}),
0xe0b8 | 0xe0bc => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xe0b9 | 0xe0bd => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0ba | 0xe0be => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xe0bb | 0xe0bf => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0c0 | 0xe0c8 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xe0c1 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0c2 | 0xe0ca => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xe0c3 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::End,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0c4 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
max_xy_ratio: Some(0.86),
..Constraint::DEFAULT
}),
0xe0c5 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
max_xy_ratio: Some(0.86),
..Constraint::DEFAULT
}),
0xe0c6 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
max_xy_ratio: Some(0.78),
..Constraint::DEFAULT
}),
0xe0c7 => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
max_xy_ratio: Some(0.78),
..Constraint::DEFAULT
}),
0xe0cc => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.01,
pad_right: -0.01,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.85),
..Constraint::DEFAULT
}),
0xe0cd => Some(Constraint {
size: Size::Stretch,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
max_xy_ratio: Some(0.865),
..Constraint::DEFAULT
}),
0xe0ce | 0xe0d0..=0xe0d1 => Some(Constraint {
size: Size::FitCover1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xe0d2 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.01,
pad_right: -0.01,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0d4 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.01,
pad_right: -0.01,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0d6 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe0d7 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
max_xy_ratio: Some(0.7),
..Constraint::DEFAULT
}),
0xe300 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8984375000000000,
relative_y: 0.0986328125000000,
..Constraint::DEFAULT
}),
0xe301 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8798828125000000,
relative_y: 0.1171875000000000,
..Constraint::DEFAULT
}),
0xe302 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7646484375000000,
relative_y: 0.2314453125000000,
..Constraint::DEFAULT
}),
0xe303 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8789062500000000,
relative_y: 0.1171875000000000,
..Constraint::DEFAULT
}),
0xe304 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9755859375000000,
relative_y: 0.0244140625000000,
..Constraint::DEFAULT
}),
0xe305 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9960937500000000,
relative_y: 0.0019531250000000,
..Constraint::DEFAULT
}),
0xe306 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9863281250000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe307 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9951171875000000,
relative_y: 0.0039062500000000,
..Constraint::DEFAULT
}),
0xe308 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9785156250000000,
relative_y: 0.0195312500000000,
..Constraint::DEFAULT
}),
0xe309 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9736328125000000,
relative_y: 0.0214843750000000,
..Constraint::DEFAULT
}),
0xe30a | 0xe35f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9648437500000000,
relative_y: 0.0302734375000000,
..Constraint::DEFAULT
}),
0xe30b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8437500000000000,
relative_y: 0.1513671875000000,
..Constraint::DEFAULT
}),
0xe30c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8027343750000000,
relative_y: 0.1835937500000000,
..Constraint::DEFAULT
}),
0xe30d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7753906250000000,
relative_y: 0.1083984375000000,
..Constraint::DEFAULT
}),
0xe30e | 0xe365 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9833984375000000,
relative_y: 0.0166015625000000,
..Constraint::DEFAULT
}),
0xe30f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9716796875000000,
relative_y: 0.0263671875000000,
..Constraint::DEFAULT
}),
0xe310 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6621093750000000,
relative_y: 0.0986328125000000,
..Constraint::DEFAULT
}),
0xe311 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6425781250000000,
relative_y: 0.1171875000000000,
..Constraint::DEFAULT
}),
0xe312 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5322265625000000,
relative_y: 0.2314453125000000,
..Constraint::DEFAULT
}),
0xe313 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6416015625000000,
relative_y: 0.1181640625000000,
..Constraint::DEFAULT
}),
0xe314 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7382812500000000,
relative_y: 0.0195312500000000,
..Constraint::DEFAULT
}),
0xe315 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6787109375000000,
relative_y: 0.1357421875000000,
..Constraint::DEFAULT
}),
0xe316 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7480468750000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe317 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7529296875000000,
relative_y: 0.0048828125000000,
..Constraint::DEFAULT
}),
0xe318 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7314453125000000,
relative_y: 0.0263671875000000,
..Constraint::DEFAULT
}),
0xe319 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7402343750000000,
relative_y: 0.0195312500000000,
..Constraint::DEFAULT
}),
0xe31a | 0xe35e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7294921875000000,
relative_y: 0.0283203125000000,
..Constraint::DEFAULT
}),
0xe31b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6074218750000000,
relative_y: 0.1503906250000000,
..Constraint::DEFAULT
}),
0xe31c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7363281250000000,
relative_y: 0.0224609375000000,
..Constraint::DEFAULT
}),
0xe31d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7460937500000000,
relative_y: 0.0126953125000000,
..Constraint::DEFAULT
}),
0xe31e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.2675781250000000,
relative_y: 0.3310546875000000,
..Constraint::DEFAULT
}),
0xe31f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7363281250000000,
relative_y: 0.0986328125000000,
..Constraint::DEFAULT
}),
0xe320 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7177734375000000,
relative_y: 0.1171875000000000,
..Constraint::DEFAULT
}),
0xe321 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8085937500000000,
relative_y: 0.0253906250000000,
..Constraint::DEFAULT
}),
0xe322 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7509765625000000,
relative_y: 0.0839843750000000,
..Constraint::DEFAULT
}),
0xe323 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8281250000000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe324 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8349609375000000,
..Constraint::DEFAULT
}),
0xe325 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8154296875000000,
relative_y: 0.0214843750000000,
..Constraint::DEFAULT
}),
0xe326 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8144531250000000,
relative_y: 0.0195312500000000,
..Constraint::DEFAULT
}),
0xe327 | 0xe361 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8076171875000000,
relative_y: 0.0273437500000000,
..Constraint::DEFAULT
}),
0xe328 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6845703125000000,
relative_y: 0.1503906250000000,
..Constraint::DEFAULT
}),
0xe329 | 0xe367 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8173828125000000,
relative_y: 0.0175781250000000,
..Constraint::DEFAULT
}),
0xe32a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8105468750000000,
relative_y: 0.0263671875000000,
..Constraint::DEFAULT
}),
0xe32b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5175781250000000,
relative_y: 0.2421875000000000,
..Constraint::DEFAULT
}),
0xe32c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6992187500000000,
relative_y: 0.1005859375000000,
..Constraint::DEFAULT
}),
0xe32d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6787109375000000,
relative_y: 0.1201171875000000,
..Constraint::DEFAULT
}),
0xe32e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5654296875000000,
relative_y: 0.2324218750000000,
..Constraint::DEFAULT
}),
0xe32f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7714843750000000,
relative_y: 0.0273437500000000,
..Constraint::DEFAULT
}),
0xe330 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7148437500000000,
relative_y: 0.0830078125000000,
..Constraint::DEFAULT
}),
0xe331 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7919921875000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe332 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7871093750000000,
relative_y: 0.0126953125000000,
..Constraint::DEFAULT
}),
0xe333 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7714843750000000,
relative_y: 0.0263671875000000,
..Constraint::DEFAULT
}),
0xe334 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7773437500000000,
relative_y: 0.0195312500000000,
..Constraint::DEFAULT
}),
0xe335 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7714843750000000,
relative_y: 0.0283203125000000,
..Constraint::DEFAULT
}),
0xe336 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6503906250000000,
relative_y: 0.1503906250000000,
..Constraint::DEFAULT
}),
0xe337 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7753906250000000,
relative_y: 0.0234375000000000,
..Constraint::DEFAULT
}),
0xe338 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7792968750000000,
relative_y: 0.0185546875000000,
..Constraint::DEFAULT
}),
0xe339 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8445945945945946,
..Constraint::DEFAULT
}),
0xe33a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5283203125000000,
relative_y: 0.2324218750000000,
..Constraint::DEFAULT
}),
0xe33b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5449218750000000,
relative_y: 0.2148437500000000,
..Constraint::DEFAULT
}),
0xe33c..=0xe33d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5273437500000000,
relative_y: 0.2324218750000000,
..Constraint::DEFAULT
}),
0xe33e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.3293918918918919,
relative_y: 0.6706081081081081,
..Constraint::DEFAULT
}),
0xe33f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5200000000000000,
relative_y: 0.2707692307692308,
..Constraint::DEFAULT
}),
0xe340 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8307692307692308,
relative_y: 0.0861538461538462,
..Constraint::DEFAULT
}),
0xe341 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8327702702702703,
relative_y: 0.0050675675675676,
..Constraint::DEFAULT
}),
0xe344 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5307692307692308,
relative_y: 0.2092307692307692,
..Constraint::DEFAULT
}),
0xe345 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5332112630208333,
relative_y: 0.2040934244791667,
..Constraint::DEFAULT
}),
0xe347 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8307692307692308,
relative_y: 0.1246153846153846,
..Constraint::DEFAULT
}),
0xe349 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5307967032967034,
relative_y: 0.2615384615384616,
..Constraint::DEFAULT
}),
0xe34c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8659995118379302,
relative_y: 0.1340004881620698,
..Constraint::DEFAULT
}),
0xe34d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9890163534293386,
relative_y: 0.0002440810349036,
..Constraint::DEFAULT
}),
0xe34f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5751953125000000,
relative_y: 0.1142578125000000,
..Constraint::DEFAULT
}),
0xe351 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6533203125000000,
relative_y: 0.1328125000000000,
..Constraint::DEFAULT
}),
0xe352 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5215384615384615,
relative_y: 0.2846153846153846,
..Constraint::DEFAULT
}),
0xe353 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8308012820512821,
relative_y: 0.1230448717948718,
..Constraint::DEFAULT
}),
0xe354..=0xe356 | 0xe358..=0xe359 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9935233160621761,
relative_y: 0.0025906735751295,
..Constraint::DEFAULT
}),
0xe357 | 0xe3a9 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9961139896373057,
..Constraint::DEFAULT
}),
0xe35a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9935233160621761,
relative_y: 0.0012953367875648,
..Constraint::DEFAULT
}),
0xe35b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9987046632124352,
relative_y: 0.0012953367875648,
..Constraint::DEFAULT
}),
0xe360 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7695312500000000,
relative_y: 0.0302734375000000,
..Constraint::DEFAULT
}),
0xe362 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9902343750000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe363 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7900390625000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe364 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8251953125000000,
relative_y: 0.0097656250000000,
..Constraint::DEFAULT
}),
0xe366 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7832031250000000,
relative_y: 0.0166015625000000,
..Constraint::DEFAULT
}),
0xe369 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4902343750000000,
relative_y: 0.2548828125000000,
..Constraint::DEFAULT
}),
0xe36b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9333658774713205,
relative_y: 0.0266048328044911,
..Constraint::DEFAULT
}),
0xe36c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7076171875000000,
relative_y: 0.1083984375000000,
..Constraint::DEFAULT
}),
0xe36d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8427734375000000,
relative_y: 0.0625000000000000,
..Constraint::DEFAULT
}),
0xe36e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7529721467391304,
relative_y: 0.0956606657608696,
..Constraint::DEFAULT
}),
0xe36f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6835937500000000,
relative_y: 0.1250000000000000,
..Constraint::DEFAULT
}),
0xe370 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8642578125000000,
relative_y: 0.0625000000000000,
..Constraint::DEFAULT
}),
0xe371 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6103515625000000,
relative_y: 0.1933593750000000,
..Constraint::DEFAULT
}),
0xe372 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7949218750000000,
relative_y: 0.0576171875000000,
..Constraint::DEFAULT
}),
0xe373 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8652343750000000,
relative_y: 0.0058593750000000,
..Constraint::DEFAULT
}),
0xe374 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.3154296875000000,
relative_y: 0.2861328125000000,
..Constraint::DEFAULT
}),
0xe375 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6772460937500000,
relative_y: 0.1303710937500000,
..Constraint::DEFAULT
}),
0xe376 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6992187500000000,
relative_y: 0.1337890625000000,
..Constraint::DEFAULT
}),
0xe377 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7314453125000000,
relative_y: 0.1552734375000000,
..Constraint::DEFAULT
}),
0xe378 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7314453125000000,
relative_y: 0.1542968750000000,
..Constraint::DEFAULT
}),
0xe379 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5751953125000000,
relative_y: 0.1826171875000000,
..Constraint::DEFAULT
}),
0xe37a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5263671875000000,
relative_y: 0.2285156250000000,
..Constraint::DEFAULT
}),
0xe37b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5751953125000000,
relative_y: 0.1835937500000000,
..Constraint::DEFAULT
}),
0xe37d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9003906250000000,
relative_y: 0.0957031250000000,
..Constraint::DEFAULT
}),
0xe37e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6015625000000000,
relative_y: 0.2324218750000000,
..Constraint::DEFAULT
}),
0xe37f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5200000000000000,
relative_y: 0.2784615384615385,
..Constraint::DEFAULT
}),
0xe380 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5200000000000000,
relative_y: 0.2630769230769231,
..Constraint::DEFAULT
}),
0xe38e..=0xe391 | 0xe394 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4990253411306043,
relative_height: 0.9987012987012988,
relative_x: 0.4996751137102014,
..Constraint::DEFAULT
}),
0xe392..=0xe393 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4996751137102014,
relative_height: 0.9987012987012988,
relative_x: 0.4990253411306043,
..Constraint::DEFAULT
}),
0xe395 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5471085120207927,
relative_height: 0.9987012987012988,
relative_x: 0.4515919428200130,
..Constraint::DEFAULT
}),
0xe396 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5945419103313840,
relative_height: 0.9987012987012988,
relative_x: 0.4041585445094217,
..Constraint::DEFAULT
}),
0xe397 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6426250812215725,
relative_x: 0.3573749187784275,
..Constraint::DEFAULT
}),
0xe398 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6900584795321637,
relative_x: 0.3099415204678362,
..Constraint::DEFAULT
}),
0xe399 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7381416504223521,
relative_x: 0.2618583495776478,
..Constraint::DEFAULT
}),
0xe39a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7855750487329435,
relative_x: 0.2144249512670565,
..Constraint::DEFAULT
}),
0xe39b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9987004548408057,
relative_height: 0.9987012987012988,
..Constraint::DEFAULT
}),
0xe39c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8323586744639376,
relative_height: 0.9935064935064936,
..Constraint::DEFAULT
}),
0xe39d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7855750487329435,
relative_height: 0.9948051948051948,
..Constraint::DEFAULT
}),
0xe39e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7381416504223521,
relative_height: 0.9961038961038962,
..Constraint::DEFAULT
}),
0xe39f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6907082521117609,
relative_height: 0.9961038961038962,
..Constraint::DEFAULT
}),
0xe3a0 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6426250812215725,
relative_height: 0.9961038961038962,
..Constraint::DEFAULT
}),
0xe3a1 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5945419103313840,
relative_height: 0.9974025974025974,
..Constraint::DEFAULT
}),
0xe3a2..=0xe3a3 | 0xe3a5 | 0xe3a7..=0xe3a8 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4990253411306043,
relative_height: 0.9987012987012988,
..Constraint::DEFAULT
}),
0xe3a4 | 0xe3a6 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4996751137102014,
relative_height: 0.9987012987012988,
..Constraint::DEFAULT
}),
0xe3aa => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9902343750000000,
relative_y: 0.0078125000000000,
..Constraint::DEFAULT
}),
0xe3ab => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7900390625000000,
relative_y: 0.0058593750000000,
..Constraint::DEFAULT
}),
0xe3ac => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8251953125000000,
relative_y: 0.0078125000000000,
..Constraint::DEFAULT
}),
0xe3ad => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7519531250000000,
relative_y: 0.0068359375000000,
..Constraint::DEFAULT
}),
0xe3ae => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6152343750000000,
relative_y: 0.2324218750000000,
..Constraint::DEFAULT
}),
0xe3af | 0xe3b3 | 0xe3b5..=0xe3bb => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9986072423398329,
relative_y: 0.0013927576601671,
..Constraint::DEFAULT
}),
0xe3b0..=0xe3b2 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9958217270194986,
relative_y: 0.0041782729805014,
..Constraint::DEFAULT
}),
0xe3c1 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6590187942396876,
relative_y: 0.1349768123016842,
..Constraint::DEFAULT
}),
0xe3c2 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7939956065413717,
..Constraint::DEFAULT
}),
0x23fb..=0x23fe
| 0x2665
| 0x26a1
| 0x2b58
| 0xe000..=0xe00a
| 0xe200..=0xe2a9
| 0xe342..=0xe343
| 0xe346
| 0xe348
| 0xe34a..=0xe34b
| 0xe34e
| 0xe350
| 0xe35c..=0xe35d
| 0xe368
| 0xe36a
| 0xe37c
| 0xe381..=0xe38d
| 0xe3b4
| 0xe3bc..=0xe3c0
| 0xe3c3..=0xe3e3
| 0xe5fa..=0xe6b8
| 0xe700..=0xe8ef
| 0xea60
| 0xea62..=0xea7c
| 0xea7e..=0xea88
| 0xea8a..=0xea8c
| 0xea8f..=0xea98
| 0xeaa3..=0xeab3
| 0xeab8..=0xeac7
| 0xeac9
| 0xeacc..=0xead3
| 0xead7..=0xeb09
| 0xeb0b..=0xeb42
| 0xeb44..=0xeb4e
| 0xeb50..=0xeb6d
| 0xeb72..=0xeb89
| 0xeb8b..=0xeb99
| 0xeb9b..=0xebd4
| 0xebd7..=0xec06
| 0xec08..=0xec0a
| 0xec0d..=0xec1e
| 0xed00..=0xedff
| 0xee0c..=0xefce
| 0xf000..=0xf004
| 0xf006..=0xf025
| 0xf028..=0xf02a
| 0xf02c..=0xf030
| 0xf034
| 0xf036..=0xf043
| 0xf045
| 0xf047
| 0xf053..=0xf05f
| 0xf062
| 0xf064..=0xf076
| 0xf079..=0xf07d
| 0xf07f..=0xf088
| 0xf08a..=0xf0a3
| 0xf0a6..=0xf0d6
| 0xf0db
| 0xf0df..=0xf0ff
| 0xf108..=0xf12f
| 0xf131..=0xf140
| 0xf142..=0xf152
| 0xf155
| 0xf15a..=0xf174
| 0xf176
| 0xf179..=0xf181
| 0xf183..=0xf220
| 0xf223
| 0xf22e..=0xf254
| 0xf259
| 0xf25c..=0xf381
| 0xf400..=0xf415
| 0xf417..=0xf423
| 0xf425..=0xf430
| 0xf435..=0xf437
| 0xf439..=0xf43d
| 0xf43f..=0xf442
| 0xf446..=0xf449
| 0xf44c..=0xf45b
| 0xf45d..=0xf45f
| 0xf462..=0xf466
| 0xf468..=0xf46b
| 0xf46d..=0xf46f
| 0xf471..=0xf475
| 0xf477..=0xf479
| 0xf47f..=0xf48a
| 0xf48c..=0xf492
| 0xf494..=0xf499
| 0xf49b..=0xf4c2
| 0xf4c4..=0xf4ee
| 0xf4f3..=0xf51c
| 0xf51e..=0xf533
| 0xf0001..=0xf1af0 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
..Constraint::DEFAULT
}),
0xea61 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7513020833333334,
relative_height: 0.9291573452647278,
relative_x: 0.0846354166666667,
relative_y: 0.0708426547352722,
..Constraint::DEFAULT
}),
0xea7d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8394854586129754,
relative_height: 0.8751387347391787,
relative_x: 0.0917225950782998,
relative_y: 0.0416204217536071,
..Constraint::DEFAULT
}),
0xea99 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9395973154362416,
relative_height: 0.4778024417314096,
relative_x: 0.0302013422818792,
relative_y: 0.2269700332963374,
..Constraint::DEFAULT
}),
0xea9a | 0xeaa1 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7673378076062640,
relative_height: 0.8523862375138734,
relative_x: 0.1526845637583893,
relative_y: 0.0754716981132075,
..Constraint::DEFAULT
}),
0xea9b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8590604026845637,
relative_height: 0.7613762486126526,
relative_x: 0.0721476510067114,
relative_y: 0.0871254162042175,
..Constraint::DEFAULT
}),
0xea9c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8590604026845637,
relative_height: 0.7574916759156493,
relative_x: 0.0721476510067114,
relative_y: 0.0832408435072142,
..Constraint::DEFAULT
}),
0xea9d | 0xeaa0 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4082774049217002,
relative_height: 0.5077691453940066,
relative_x: 0.2863534675615212,
relative_y: 0.2763596004439512,
..Constraint::DEFAULT
}),
0xea9e..=0xea9f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5117449664429530,
relative_height: 0.4051054384017758,
relative_x: 0.2136465324384788,
relative_y: 0.3068812430632630,
..Constraint::DEFAULT
}),
0xeaa2 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8061116965226555,
relative_height: 0.9438247156716689,
relative_x: 0.0679662802950474,
relative_y: 0.0147523709167545,
..Constraint::DEFAULT
}),
0xeab4 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9945482866043613,
relative_height: 0.5264797507788161,
relative_y: 0.2024922118380062,
..Constraint::DEFAULT
}),
0xeab5 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5264797507788161,
relative_height: 0.9945482866043613,
relative_x: 0.2024922118380062,
relative_y: 0.0054517133956386,
..Constraint::DEFAULT
}),
0xeab6 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5264797507788161,
relative_height: 0.9945482866043613,
relative_x: 0.2710280373831775,
..Constraint::DEFAULT
}),
0xeab7 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9945482866043613,
relative_height: 0.5264797507788161,
relative_x: 0.0054517133956386,
relative_y: 0.2710280373831775,
..Constraint::DEFAULT
}),
0xead4..=0xead5 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7069825436408977,
relative_x: 0.1483790523690773,
..Constraint::DEFAULT
}),
0xead6 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8780760626398211,
relative_y: 0.0687919463087248,
..Constraint::DEFAULT
}),
0xeb43 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7335766423357665,
relative_height: 0.9996188152778837,
relative_x: 0.1991657977059437,
relative_y: 0.0003811847221163,
..Constraint::DEFAULT
}),
0xeb6e | 0xeb71 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4954604409857328,
relative_y: 0.2522697795071336,
..Constraint::DEFAULT
}),
0xeb6f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4973958333333333,
relative_x: 0.2493489583333333,
..Constraint::DEFAULT
}),
0xeb70 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4973958333333333,
relative_height: 0.9961089494163424,
relative_x: 0.2493489583333333,
relative_y: 0.0038910505836576,
..Constraint::DEFAULT
}),
0xeb8a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.3468834688346883,
relative_height: 0.3353615785256410,
relative_x: 0.2642276422764228,
relative_y: 0.3313050881410256,
..Constraint::DEFAULT
}),
0xeb9a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8740779768177028,
relative_height: 0.9438247156716689,
relative_x: 0.0679662802950474,
relative_y: 0.0147523709167545,
..Constraint::DEFAULT
}),
0xebd5 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9322210636079249,
relative_height: 0.9318897917604415,
relative_y: 0.0681102082395584,
..Constraint::DEFAULT
}),
0xebd6 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9996446423917936,
relative_y: 0.0003553576082064,
..Constraint::DEFAULT
}),
0xec07 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.3495911047345768,
relative_height: 0.3355179398148149,
relative_x: 0.2615335565120357,
relative_y: 0.3311487268518519,
..Constraint::DEFAULT
}),
0xec0b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9327424400417101,
relative_height: 0.9996188152778837,
relative_y: 0.0003811847221163,
..Constraint::DEFAULT
}),
0xec0c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8008342022940563,
relative_x: 0.1991657977059437,
..Constraint::DEFAULT
}),
0xee00 | 0xee03 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::End,
align_vertical: Align::Center1,
relative_width: 0.8681172291296625,
relative_height: 0.8626692456479691,
relative_x: 0.1314387211367673,
relative_y: 0.0686653771760155,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xee01 | 0xee04 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8626692456479691,
relative_y: 0.0686653771760155,
pad_left: -0.05,
pad_right: -0.05,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xee02 | 0xee05 => Some(Constraint {
size: Size::Stretch,
max_constraint_width: 1,
align_horizontal: Align::Start,
align_vertical: Align::Center1,
relative_width: 0.8685612788632326,
relative_height: 0.8626692456479691,
relative_y: 0.0686653771760155,
pad_left: -0.025,
pad_right: -0.025,
pad_top: -0.005,
pad_bottom: -0.005,
..Constraint::DEFAULT
}),
0xee06 => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7059415911379657,
relative_height: 0.2234524408656266,
relative_x: 0.1470292044310171,
relative_y: 0.7765475591343735,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xee07 => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5000000000000000,
relative_height: 0.7498741821841973,
relative_x: 0.5000000000000000,
relative_y: 0.2501258178158027,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xee08 => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6299093655589124,
relative_height: 0.8535480624056366,
relative_x: 0.3700906344410876,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xee09 => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4997483643683945,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xee0a => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6299093655589124,
relative_height: 0.8535480624056366,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xee0b => Some(Constraint {
size: Size::Cover,
max_constraint_width: 1,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5000000000000000,
relative_height: 0.7498741821841973,
relative_y: 0.2501258178158027,
pad_left: 0.015,
pad_right: 0.015,
pad_top: 0.015,
pad_bottom: 0.015,
..Constraint::DEFAULT
}),
0xf005 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9999664113932554,
relative_y: 0.0000335886067446,
..Constraint::DEFAULT
}),
0xf026..=0xf027 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9786184354605580,
relative_y: 0.0103951316192896,
..Constraint::DEFAULT
}),
0xf02b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9758052740827267,
relative_y: 0.0238869355863696,
..Constraint::DEFAULT
}),
0xf031..=0xf033 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9987922705314010,
relative_y: 0.0006038647342995,
..Constraint::DEFAULT
}),
0xf035 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9989935587761675,
relative_y: 0.0004025764895330,
..Constraint::DEFAULT
}),
0xf044 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9925925925925926,
..Constraint::DEFAULT
}),
0xf046 | 0xf153..=0xf154 | 0xf158 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8751322751322751,
relative_y: 0.0624338624338624,
..Constraint::DEFAULT
}),
0xf048 | 0xf04a | 0xf04e | 0xf051 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8577706898990622,
relative_y: 0.0711892586341537,
..Constraint::DEFAULT
}),
0xf049 | 0xf050 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8579450878868969,
relative_y: 0.0710148606463189,
..Constraint::DEFAULT
}),
0xf04b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9997041418532618,
relative_y: 0.0002958581467381,
..Constraint::DEFAULT
}),
0xf04c..=0xf04d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8572940020656472,
relative_y: 0.0713404035569438,
..Constraint::DEFAULT
}),
0xf04f => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7138835298072554,
relative_y: 0.1433479295317200,
..Constraint::DEFAULT
}),
0xf052 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9999748091795350,
..Constraint::DEFAULT
}),
0xf060..=0xf061 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8567975830815709,
relative_y: 0.0719033232628399,
..Constraint::DEFAULT
}),
0xf063 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9987915407854985,
relative_y: 0.0006042296072508,
..Constraint::DEFAULT
}),
0xf077 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5700483091787439,
relative_y: 0.2862318840579710,
..Constraint::DEFAULT
}),
0xf078 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5700483091787439,
relative_y: 0.1437198067632850,
..Constraint::DEFAULT
}),
0xf07e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4989429175475687,
relative_y: 0.2505285412262157,
..Constraint::DEFAULT
}),
0xf089 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9998488512696494,
relative_y: 0.0001511487303507,
..Constraint::DEFAULT
}),
0xf0a4..=0xf0a5 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7502645502645503,
relative_y: 0.1248677248677249,
..Constraint::DEFAULT
}),
0xf0d7 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4281400966183575,
relative_y: 0.2053140096618357,
..Constraint::DEFAULT
}),
0xf0d8 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.4281400966183575,
relative_y: 0.3472222222222222,
..Constraint::DEFAULT
}),
0xf0d9 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7140772371750631,
relative_y: 0.1333462732919255,
..Constraint::DEFAULT
}),
0xf0da => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7140396210163651,
relative_y: 0.1333838894506235,
..Constraint::DEFAULT
}),
0xf0dc => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
..Constraint::DEFAULT
}),
0xf0dd => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
relative_height: 0.4275362318840580,
relative_y: 0.0012077294685990,
..Constraint::DEFAULT
}),
0xf0de => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
relative_height: 0.4287439613526570,
relative_y: 0.5712560386473430,
..Constraint::DEFAULT
}),
0xf100..=0xf101 | 0xf104..=0xf105 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8573155985489722,
relative_y: 0.0713422007255139,
..Constraint::DEFAULT
}),
0xf102 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9286577992744861,
relative_y: 0.0713422007255139,
..Constraint::DEFAULT
}),
0xf103 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9286577992744861,
..Constraint::DEFAULT
}),
0xf106..=0xf107 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.5000000000000000,
relative_y: 0.2853688029020556,
..Constraint::DEFAULT
}),
0xf130 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9998602571268865,
..Constraint::DEFAULT
}),
0xf141 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.2593984962406015,
relative_y: 0.3696741854636592,
..Constraint::DEFAULT
}),
0xf156 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8752505446623093,
relative_y: 0.0623155929038282,
..Constraint::DEFAULT
}),
0xf157 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8756468797564688,
relative_y: 0.0624338624338624,
..Constraint::DEFAULT
}),
0xf159 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8756067947646895,
relative_y: 0.0623492063492063,
..Constraint::DEFAULT
}),
0xf175 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9989423585404548,
relative_y: 0.0005288207297726,
..Constraint::DEFAULT
}),
0xf177..=0xf178 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6250661025912215,
relative_y: 0.1877313590692755,
..Constraint::DEFAULT
}),
0xf182 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9998046921689268,
..Constraint::DEFAULT
}),
0xf221 | 0xf224..=0xf226 | 0xf228 | 0xf22a | 0xf22c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9994854643684076,
..Constraint::DEFAULT
}),
0xf222 | 0xf227 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.8746819883943630,
relative_y: 0.0624017379870223,
..Constraint::DEFAULT
}),
0xf229 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9370837263813853,
relative_y: 0.0624017379870223,
..Constraint::DEFAULT
}),
0xf22b | 0xf22d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6874767744332962,
relative_y: 0.1560043449675557,
..Constraint::DEFAULT
}),
0xf255..=0xf256 | 0xf25a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9993997599039616,
..Constraint::DEFAULT
}),
0xf257 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7810124049619848,
relative_y: 0.0935945806894186,
..Constraint::DEFAULT
}),
0xf258 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.7498142113988452,
relative_y: 0.1247927742525582,
..Constraint::DEFAULT
}),
0xf25b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.9975006099019084,
..Constraint::DEFAULT
}),
0xf416 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_height: 0.6090604026845637,
relative_y: 0.2119686800894855,
..Constraint::DEFAULT
}),
0xf424 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5019531250000000,
relative_height: 0.5755033557046980,
relative_x: 0.2480468750000000,
relative_y: 0.2108501118568233,
..Constraint::DEFAULT
}),
0xf431 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6240234375000000,
relative_height: 0.7695749440715883,
relative_x: 0.2031250000000000,
relative_y: 0.1420581655480984,
..Constraint::DEFAULT
}),
0xf432 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6718750000000000,
relative_height: 0.7147651006711410,
relative_x: 0.1875000000000000,
relative_y: 0.1610738255033557,
..Constraint::DEFAULT
}),
0xf433 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6240234375000000,
relative_height: 0.7695749440715883,
relative_x: 0.2041015625000000,
relative_y: 0.0883668903803132,
..Constraint::DEFAULT
}),
0xf434 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6718750000000000,
relative_height: 0.7147651006711410,
relative_x: 0.1406250000000000,
relative_y: 0.1599552572706935,
..Constraint::DEFAULT
}),
0xf438 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.2436523437500000,
relative_height: 0.4560546875000000,
relative_x: 0.3813476562500000,
relative_y: 0.2719726562500000,
..Constraint::DEFAULT
}),
0xf43e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5029296875000000,
relative_height: 0.5755033557046980,
relative_x: 0.2500000000000000,
relative_y: 0.2136465324384788,
..Constraint::DEFAULT
}),
0xf443 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7500000000000000,
relative_x: 0.1250000000000000,
..Constraint::DEFAULT
}),
0xf444..=0xf445 | 0xf4c3 | 0xf51d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5000000000000000,
relative_height: 0.5000000000000000,
relative_x: 0.2500000000000000,
relative_y: 0.2500000000000000,
..Constraint::DEFAULT
}),
0xf44a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.2436523437500000,
relative_height: 0.4560546875000000,
relative_x: 0.3750000000000000,
relative_y: 0.2719726562500000,
..Constraint::DEFAULT
}),
0xf44b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4560546875000000,
relative_height: 0.2436523437500000,
relative_x: 0.2719726562500000,
relative_y: 0.3188476562500000,
..Constraint::DEFAULT
}),
0xf45c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5019531250000000,
relative_height: 0.5749440715883669,
relative_x: 0.2480468750000000,
relative_y: 0.2114093959731544,
..Constraint::DEFAULT
}),
0xf460 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.3593750000000000,
relative_height: 0.6240234375000000,
relative_x: 0.3750000000000000,
relative_y: 0.1884765625000000,
..Constraint::DEFAULT
}),
0xf461 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6237816764132553,
relative_height: 0.9988851727982163,
relative_x: 0.1881091617933723,
..Constraint::DEFAULT
}),
0xf467 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5639648437500000,
relative_height: 0.5649414062500000,
relative_x: 0.2187500000000000,
relative_y: 0.2177734375000000,
..Constraint::DEFAULT
}),
0xf46c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5039062500000000,
relative_height: 0.5771812080536913,
relative_x: 0.2490234375000000,
relative_y: 0.2091722595078300,
..Constraint::DEFAULT
}),
0xf470 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9926757812500000,
relative_height: 0.2690429687500000,
relative_y: 0.6865234375000000,
..Constraint::DEFAULT
}),
0xf476 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8732325694783033,
relative_x: 0.0633837152608484,
..Constraint::DEFAULT
}),
0xf47a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.5843079922027290,
relative_height: 0.9509476031215162,
relative_x: 0.2066276803118908,
relative_y: 0.0234113712374582,
..Constraint::DEFAULT
}),
0xf47b..=0xf47c => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.6250000000000000,
relative_height: 0.3593750000000000,
relative_x: 0.1875000000000000,
relative_y: 0.3281250000000000,
..Constraint::DEFAULT
}),
0xf47d => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.3593750000000000,
relative_height: 0.6240234375000000,
relative_x: 0.2656250000000000,
relative_y: 0.1875000000000000,
..Constraint::DEFAULT
}),
0xf47e => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.4560546875000000,
relative_height: 0.2436523437500000,
relative_x: 0.2719726562500000,
relative_y: 0.3750000000000000,
..Constraint::DEFAULT
}),
0xf48b => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7187500000000000,
relative_height: 0.0937500000000000,
relative_x: 0.1250000000000000,
relative_y: 0.4687500000000000,
..Constraint::DEFAULT
}),
0xf493 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8313840155945419,
relative_height: 0.9509476031215162,
relative_x: 0.0843079922027290,
relative_y: 0.0234113712374582,
..Constraint::DEFAULT
}),
0xf49a => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.8727450024378351,
relative_x: 0.0633837152608484,
..Constraint::DEFAULT
}),
0xf4ef | 0xf4f2 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.7142857142857143,
relative_x: 0.1428571428571428,
..Constraint::DEFAULT
}),
0xf4f0 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9642857142857143,
relative_height: 0.7407407407407407,
relative_y: 0.1111111111111111,
..Constraint::DEFAULT
}),
0xf4f1 => Some(Constraint {
size: Size::FitCover1,
height: Height::Icon,
align_horizontal: Align::Center1,
align_vertical: Align::Center1,
relative_width: 0.9642857142857143,
relative_height: 0.7407407407407407,
relative_x: 0.0357142857142857,
relative_y: 0.1111111111111111,
..Constraint::DEFAULT
}),
_ => None,
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn default_is_noop() {
assert!(!Constraint::DEFAULT.does_anything());
}
#[test]
fn known_entries_present() {
assert!(get_constraint(0x2630).is_some());
let c = get_constraint(0xe0b0).expect("E0B0 should be in table");
assert_eq!(c.size, Size::Stretch);
assert_eq!(c.align_horizontal, Align::Start);
assert!(get_constraint(0x41).is_none());
}
#[test]
fn does_anything_picks_up_size_or_align() {
let c = Constraint {
size: Size::Fit,
..Constraint::DEFAULT
};
assert!(c.does_anything());
let c = Constraint {
align_horizontal: Align::Center1,
..Constraint::DEFAULT
};
assert!(c.does_anything());
}
}