devela/ui/back/cap/
definitions.rs
1#[cfg(feature = "alloc")]
7use crate::String;
8
9#[derive(Clone, Debug, Default, PartialEq, Eq)]
11pub struct UiCap {
12 pub image: Option<UiCapImage>,
14 pub input: Option<UiCapInput>,
16 pub sound: Option<UiCapSound>,
18 #[cfg(feature = "alloc")]
20 #[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "alloc")))]
21 pub system: Option<UiCapSystem>,
22 pub window: Option<UiCapWindow>,
24}
25
26#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
28pub struct UiCapImage {
29 pub max_bitmap_size: Option<[usize; 2]>,
31 pub pixel_native: bool,
33
34 pub rgb: bool,
36 }
43
44#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
46pub struct UiCapInput {
47 pub gamepad: bool,
49 pub keyboard: bool,
51 pub midi: bool,
53 pub mouse: bool,
55 pub touchscreen: bool,
57}
58
59#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
61pub struct UiCapSound {
62 pub play: bool,
64}
65
66#[cfg(feature = "alloc")]
68#[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "alloc")))]
69#[derive(Clone, Debug, Default, PartialEq, Eq)]
70pub struct UiCapSystem {
71 pub os_version: Option<String>,
73 pub user_name: Option<String>,
75 pub host_name: Option<String>,
77}
78
79#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
81pub struct UiCapWindow {
82 pub multi: bool,
84}