summaryrefslogtreecommitdiffstats
path: root/winit/src/size.rs
blob: 7e3056d42a224930fdb5ae1f7346588dc9cb3ee4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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
    }
}