iced/winit/src/size.rs
Héctor Ramón Jiménez fbc9deb424 Implement an opaque Size type
It immutably ties physical and logical sizes to a specific scale factor.
2020-02-07 23:50:10 -05:00

30 lines
641 B
Rust

pub struct Size {
physical: winit::dpi::PhysicalSize<u32>,
logical: winit::dpi::LogicalSize<f64>,
scale_factor: f64,
}
impl Size {
pub fn new(
physical: winit::dpi::PhysicalSize<u32>,
scale_factor: f64,
) -> Size {
Size {
logical: physical.to_logical(scale_factor),
physical,
scale_factor,
}
}
pub fn physical(&self) -> winit::dpi::PhysicalSize<u32> {
self.physical
}
pub fn logical(&self) -> winit::dpi::LogicalSize<f64> {
self.logical
}
pub fn scale_factor(&self) -> f64 {
self.scale_factor
}
}