/* automatically generated by rust-bindgen 0.58.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] pub struct __BindgenBitfieldUnit { storage: Storage, } impl __BindgenBitfieldUnit { #[inline] pub const fn new(storage: Storage) -> Self { Self { storage } } } impl __BindgenBitfieldUnit where Storage: AsRef<[u8]> + AsMut<[u8]>, { #[inline] pub fn get_bit(&self, index: usize) -> bool { debug_assert!(index / 8 < self.storage.as_ref().len()); let byte_index = index / 8; let byte = self.storage.as_ref()[byte_index]; let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; let mask = 1 << bit_index; byte & mask == mask } #[inline] pub fn set_bit(&mut self, index: usize, val: bool) { debug_assert!(index / 8 < self.storage.as_ref().len()); let byte_index = index / 8; let byte = &mut self.storage.as_mut()[byte_index]; let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; let mask = 1 << bit_index; if val { *byte |= mask; } else { *byte &= !mask; } } #[inline] pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { debug_assert!(bit_width <= 64); debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); let mut val = 0; for i in 0..(bit_width as usize) { if self.get_bit(i + bit_offset) { let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; val |= 1 << index; } } val } #[inline] pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { debug_assert!(bit_width <= 64); debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); for i in 0..(bit_width as usize) { let mask = 1 << i; let val_bit_is_set = val & mask == mask; let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; self.set_bit(index + bit_offset, val_bit_is_set); } } } pub const LVGL_VERSION_MAJOR: u32 = 7; pub const LVGL_VERSION_MINOR: u32 = 10; pub const LVGL_VERSION_PATCH: u32 = 1; pub const LVGL_VERSION_INFO: &'static [u8; 1usize] = b"\0"; pub const _STDINT_H: u32 = 1; pub const _FEATURES_H: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; pub const __USE_POSIX_IMPLICITLY: u32 = 1; pub const _POSIX_SOURCE: u32 = 1; pub const _POSIX_C_SOURCE: u32 = 200809; pub const __USE_POSIX: u32 = 1; pub const __USE_POSIX2: u32 = 1; pub const __USE_POSIX199309: u32 = 1; pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const _STDC_PREDEF_H: u32 = 1; pub const __STDC_IEC_559__: u32 = 1; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; pub const __GLIBC_MINOR__: u32 = 31; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __WORDSIZE: u32 = 64; pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; pub const __SYSCALL_WORDSIZE: u32 = 64; pub const __LONG_DOUBLE_USES_FLOAT128: u32 = 0; pub const __HAVE_GENERIC_SELECTION: u32 = 1; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; pub const _BITS_TYPES_H: u32 = 1; pub const __TIMESIZE: u32 = 64; pub const _BITS_TYPESIZES_H: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; pub const __STATFS_MATCHES_STATFS64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; pub const _BITS_TIME64_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_INTN_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; pub const INT8_MAX: u32 = 127; pub const INT16_MAX: u32 = 32767; pub const INT32_MAX: u32 = 2147483647; pub const UINT8_MAX: u32 = 255; pub const UINT16_MAX: u32 = 65535; pub const UINT32_MAX: u32 = 4294967295; pub const INT_LEAST8_MIN: i32 = -128; pub const INT_LEAST16_MIN: i32 = -32768; pub const INT_LEAST32_MIN: i32 = -2147483648; pub const INT_LEAST8_MAX: u32 = 127; pub const INT_LEAST16_MAX: u32 = 32767; pub const INT_LEAST32_MAX: u32 = 2147483647; pub const UINT_LEAST8_MAX: u32 = 255; pub const UINT_LEAST16_MAX: u32 = 65535; pub const UINT_LEAST32_MAX: u32 = 4294967295; pub const INT_FAST8_MIN: i32 = -128; pub const INT_FAST16_MIN: i64 = -9223372036854775808; pub const INT_FAST32_MIN: i64 = -9223372036854775808; pub const INT_FAST8_MAX: u32 = 127; pub const INT_FAST16_MAX: u64 = 9223372036854775807; pub const INT_FAST32_MAX: u64 = 9223372036854775807; pub const UINT_FAST8_MAX: u32 = 255; pub const UINT_FAST16_MAX: i32 = -1; pub const UINT_FAST32_MAX: i32 = -1; pub const INTPTR_MIN: i64 = -9223372036854775808; pub const INTPTR_MAX: u64 = 9223372036854775807; pub const UINTPTR_MAX: i32 = -1; pub const PTRDIFF_MIN: i64 = -9223372036854775808; pub const PTRDIFF_MAX: u64 = 9223372036854775807; pub const SIG_ATOMIC_MIN: i32 = -2147483648; pub const SIG_ATOMIC_MAX: u32 = 2147483647; pub const SIZE_MAX: i32 = -1; pub const WINT_MIN: u32 = 0; pub const WINT_MAX: u32 = 4294967295; pub const LV_HOR_RES_MAX: u32 = 240; pub const LV_VER_RES_MAX: u32 = 240; pub const LV_COLOR_DEPTH: u32 = 16; pub const LV_COLOR_16_SWAP: u32 = 0; pub const LV_COLOR_SCREEN_TRANSP: u32 = 0; pub const LV_ANTIALIAS: u32 = 1; pub const LV_DISP_DEF_REFR_PERIOD: u32 = 30; pub const LV_DPI: u32 = 130; pub const LV_DISP_SMALL_LIMIT: u32 = 30; pub const LV_DISP_MEDIUM_LIMIT: u32 = 50; pub const LV_DISP_LARGE_LIMIT: u32 = 70; pub const LV_MEM_CUSTOM: u32 = 0; pub const LV_MEM_SIZE: u32 = 32768; pub const LV_MEM_ADR: u32 = 0; pub const LV_MEM_AUTO_DEFRAG: u32 = 1; pub const LV_ENABLE_GC: u32 = 0; pub const LV_INDEV_DEF_READ_PERIOD: u32 = 30; pub const LV_INDEV_DEF_DRAG_LIMIT: u32 = 10; pub const LV_INDEV_DEF_DRAG_THROW: u32 = 10; pub const LV_INDEV_DEF_LONG_PRESS_TIME: u32 = 400; pub const LV_INDEV_DEF_LONG_PRESS_REP_TIME: u32 = 100; pub const LV_INDEV_DEF_GESTURE_LIMIT: u32 = 50; pub const LV_INDEV_DEF_GESTURE_MIN_VELOCITY: u32 = 3; pub const LV_USE_ANIMATION: u32 = 1; pub const LV_USE_SHADOW: u32 = 1; pub const LV_SHADOW_CACHE_SIZE: u32 = 0; pub const LV_USE_BLEND_MODES: u32 = 1; pub const LV_USE_OPA_SCALE: u32 = 1; pub const LV_USE_IMG_TRANSFORM: u32 = 1; pub const LV_USE_GROUP: u32 = 1; pub const LV_USE_GPU: u32 = 1; pub const LV_USE_GPU_STM32_DMA2D: u32 = 0; pub const LV_USE_FILESYSTEM: u32 = 1; pub const LV_USE_USER_DATA: u32 = 1; pub const LV_USE_PERF_MONITOR: u32 = 0; pub const LV_USE_API_EXTENSION_V6: u32 = 1; pub const LV_IMG_CF_INDEXED: u32 = 1; pub const LV_IMG_CF_ALPHA: u32 = 1; pub const LV_IMG_CACHE_DEF_SIZE: u32 = 1; pub const LV_TICK_CUSTOM: u32 = 0; pub const LV_USE_LOG: u32 = 0; pub const LV_USE_DEBUG: u32 = 1; pub const LV_USE_ASSERT_NULL: u32 = 1; pub const LV_USE_ASSERT_MEM: u32 = 1; pub const LV_USE_ASSERT_MEM_INTEGRITY: u32 = 0; pub const LV_USE_ASSERT_STR: u32 = 0; pub const LV_USE_ASSERT_OBJ: u32 = 0; pub const LV_USE_ASSERT_STYLE: u32 = 0; pub const LV_FONT_MONTSERRAT_12: u32 = 0; pub const LV_FONT_MONTSERRAT_14: u32 = 0; pub const LV_FONT_MONTSERRAT_16: u32 = 1; pub const LV_FONT_MONTSERRAT_18: u32 = 0; pub const LV_FONT_MONTSERRAT_20: u32 = 0; pub const LV_FONT_MONTSERRAT_22: u32 = 0; pub const LV_FONT_MONTSERRAT_24: u32 = 0; pub const LV_FONT_MONTSERRAT_26: u32 = 0; pub const LV_FONT_MONTSERRAT_28: u32 = 0; pub const LV_FONT_MONTSERRAT_30: u32 = 0; pub const LV_FONT_MONTSERRAT_32: u32 = 0; pub const LV_FONT_MONTSERRAT_34: u32 = 0; pub const LV_FONT_MONTSERRAT_36: u32 = 0; pub const LV_FONT_MONTSERRAT_38: u32 = 0; pub const LV_FONT_MONTSERRAT_40: u32 = 0; pub const LV_FONT_MONTSERRAT_42: u32 = 0; pub const LV_FONT_MONTSERRAT_44: u32 = 0; pub const LV_FONT_MONTSERRAT_46: u32 = 0; pub const LV_FONT_MONTSERRAT_48: u32 = 0; pub const LV_FONT_MONTSERRAT_12_SUBPX: u32 = 0; pub const LV_FONT_MONTSERRAT_28_COMPRESSED: u32 = 0; pub const LV_FONT_DEJAVU_16_PERSIAN_HEBREW: u32 = 0; pub const LV_FONT_SIMSUN_16_CJK: u32 = 0; pub const LV_FONT_UNSCII_8: u32 = 0; pub const LV_FONT_FMT_TXT_LARGE: u32 = 0; pub const LV_FONT_SUBPX_BGR: u32 = 0; pub const LV_USE_THEME_EMPTY: u32 = 1; pub const LV_USE_THEME_TEMPLATE: u32 = 1; pub const LV_USE_THEME_MATERIAL: u32 = 1; pub const LV_USE_THEME_MONO: u32 = 1; pub const LV_TXT_BREAK_CHARS: &'static [u8; 8usize] = b" ,.;:-_\0"; pub const LV_TXT_LINE_BREAK_LONG_LEN: u32 = 0; pub const LV_TXT_LINE_BREAK_LONG_PRE_MIN_LEN: u32 = 3; pub const LV_TXT_LINE_BREAK_LONG_POST_MIN_LEN: u32 = 3; pub const LV_TXT_COLOR_CMD: &'static [u8; 2usize] = b"#\0"; pub const LV_USE_BIDI: u32 = 0; pub const LV_USE_ARABIC_PERSIAN_CHARS: u32 = 0; pub const LV_SPRINTF_CUSTOM: u32 = 0; pub const LV_SPRINTF_DISABLE_FLOAT: u32 = 1; pub const LV_USE_USER_DATA_FREE: u32 = 0; pub const LV_USE_OBJ_REALIGN: u32 = 1; pub const LV_USE_ARC: u32 = 1; pub const LV_USE_BAR: u32 = 1; pub const LV_USE_BTN: u32 = 1; pub const LV_USE_BTNMATRIX: u32 = 1; pub const LV_USE_CALENDAR: u32 = 1; pub const LV_USE_CANVAS: u32 = 1; pub const LV_USE_CHECKBOX: u32 = 1; pub const LV_USE_CHART: u32 = 1; pub const LV_CHART_AXIS_TICK_LABEL_MAX_LEN: u32 = 256; pub const LV_USE_CONT: u32 = 1; pub const LV_USE_CPICKER: u32 = 1; pub const LV_USE_DROPDOWN: u32 = 1; pub const LV_DROPDOWN_DEF_ANIM_TIME: u32 = 200; pub const LV_USE_GAUGE: u32 = 1; pub const LV_USE_IMG: u32 = 1; pub const LV_USE_IMGBTN: u32 = 1; pub const LV_IMGBTN_TILED: u32 = 0; pub const LV_USE_KEYBOARD: u32 = 1; pub const LV_USE_LABEL: u32 = 1; pub const LV_LABEL_DEF_SCROLL_SPEED: u32 = 25; pub const LV_LABEL_WAIT_CHAR_COUNT: u32 = 3; pub const LV_LABEL_TEXT_SEL: u32 = 0; pub const LV_LABEL_LONG_TXT_HINT: u32 = 0; pub const LV_USE_LED: u32 = 1; pub const LV_LED_BRIGHT_MIN: u32 = 120; pub const LV_LED_BRIGHT_MAX: u32 = 255; pub const LV_USE_LINE: u32 = 1; pub const LV_USE_LIST: u32 = 1; pub const LV_LIST_DEF_ANIM_TIME: u32 = 100; pub const LV_USE_LINEMETER: u32 = 1; pub const LV_LINEMETER_PRECISE: u32 = 0; pub const LV_USE_OBJMASK: u32 = 1; pub const LV_USE_MSGBOX: u32 = 1; pub const LV_USE_PAGE: u32 = 1; pub const LV_PAGE_DEF_ANIM_TIME: u32 = 400; pub const LV_USE_SPINNER: u32 = 1; pub const LV_SPINNER_DEF_ARC_LENGTH: u32 = 60; pub const LV_SPINNER_DEF_SPIN_TIME: u32 = 1000; pub const LV_USE_ROLLER: u32 = 1; pub const LV_ROLLER_DEF_ANIM_TIME: u32 = 200; pub const LV_ROLLER_INF_PAGES: u32 = 7; pub const LV_USE_SLIDER: u32 = 1; pub const LV_USE_SPINBOX: u32 = 1; pub const LV_USE_SWITCH: u32 = 1; pub const LV_USE_TEXTAREA: u32 = 1; pub const LV_TEXTAREA_DEF_CURSOR_BLINK_TIME: u32 = 400; pub const LV_TEXTAREA_DEF_PWD_SHOW_TIME: u32 = 1500; pub const LV_USE_TABLE: u32 = 1; pub const LV_TABLE_COL_MAX: u32 = 12; pub const LV_USE_TABVIEW: u32 = 1; pub const LV_TABVIEW_DEF_ANIM_TIME: u32 = 300; pub const LV_USE_TILEVIEW: u32 = 1; pub const LV_TILEVIEW_DEF_ANIM_TIME: u32 = 300; pub const LV_USE_WIN: u32 = 1; pub const LV_MEMCPY_MEMSET_STD: u32 = 0; pub const LV_USE_OUTLINE: u32 = 1; pub const LV_USE_PATTERN: u32 = 1; pub const LV_USE_VALUE_STR: u32 = 1; pub const LV_USE_GPU_NXP_PXP: u32 = 0; pub const LV_USE_GPU_NXP_PXP_AUTO_INIT: u32 = 0; pub const LV_USE_GPU_NXP_VG_LITE: u32 = 0; pub const LV_USE_API_EXTENSION_V7: u32 = 1; pub const LV_BIG_ENDIAN_SYSTEM: u32 = 0; pub const LV_FONT_MONTSERRAT_8: u32 = 0; pub const LV_FONT_MONTSERRAT_10: u32 = 0; pub const LV_FONT_UNSCII_16: u32 = 0; pub const LV_USE_FONT_COMPRESSED: u32 = 1; pub const LV_USE_FONT_SUBPX: u32 = 1; pub const LV_CALENDAR_WEEK_STARTS_MONDAY: u32 = 0; pub const LV_TABLE_CELL_STYLE_CNT: u32 = 4; pub const LV_LOG_LEVEL_TRACE: u32 = 0; pub const LV_LOG_LEVEL_INFO: u32 = 1; pub const LV_LOG_LEVEL_WARN: u32 = 2; pub const LV_LOG_LEVEL_ERROR: u32 = 3; pub const LV_LOG_LEVEL_USER: u32 = 4; pub const LV_LOG_LEVEL_NONE: u32 = 5; pub const _LV_LOG_LEVEL_NUM: u32 = 6; pub const true_: u32 = 1; pub const false_: u32 = 0; pub const __bool_true_false_are_defined: u32 = 1; pub const LV_MEM_BUF_MAX_NUM: u32 = 16; pub const LV_NO_TASK_READY: u32 = 4294967295; pub const LV_TRIGO_SIN_MAX: u32 = 32767; pub const LV_TRIGO_SHIFT: u32 = 15; pub const LV_BEZIER_VAL_MAX: u32 = 1024; pub const LV_BEZIER_VAL_SHIFT: u32 = 10; pub const LV_OPA_MIN: u32 = 2; pub const LV_OPA_MAX: u32 = 253; pub const LV_COLOR_SIZE: u32 = 16; pub const LV_COLOR_MIX_ROUND_OFS: u32 = 128; pub const _LV_COLOR_HAS_MODERN_CPP: u32 = 0; pub const _STRING_H: u32 = 1; pub const _BITS_TYPES_LOCALE_T_H: u32 = 1; pub const _BITS_TYPES___LOCALE_T_H: u32 = 1; pub const _STRINGS_H: u32 = 1; pub const LV_INV_BUF_SIZE: u32 = 32; pub const LV_SYMBOL_AUDIO: &'static [u8; 4usize] = b"\xEF\x80\x81\0"; pub const LV_SYMBOL_VIDEO: &'static [u8; 4usize] = b"\xEF\x80\x88\0"; pub const LV_SYMBOL_LIST: &'static [u8; 4usize] = b"\xEF\x80\x8B\0"; pub const LV_SYMBOL_OK: &'static [u8; 4usize] = b"\xEF\x80\x8C\0"; pub const LV_SYMBOL_CLOSE: &'static [u8; 4usize] = b"\xEF\x80\x8D\0"; pub const LV_SYMBOL_POWER: &'static [u8; 4usize] = b"\xEF\x80\x91\0"; pub const LV_SYMBOL_SETTINGS: &'static [u8; 4usize] = b"\xEF\x80\x93\0"; pub const LV_SYMBOL_HOME: &'static [u8; 4usize] = b"\xEF\x80\x95\0"; pub const LV_SYMBOL_DOWNLOAD: &'static [u8; 4usize] = b"\xEF\x80\x99\0"; pub const LV_SYMBOL_DRIVE: &'static [u8; 4usize] = b"\xEF\x80\x9C\0"; pub const LV_SYMBOL_REFRESH: &'static [u8; 4usize] = b"\xEF\x80\xA1\0"; pub const LV_SYMBOL_MUTE: &'static [u8; 4usize] = b"\xEF\x80\xA6\0"; pub const LV_SYMBOL_VOLUME_MID: &'static [u8; 4usize] = b"\xEF\x80\xA7\0"; pub const LV_SYMBOL_VOLUME_MAX: &'static [u8; 4usize] = b"\xEF\x80\xA8\0"; pub const LV_SYMBOL_IMAGE: &'static [u8; 4usize] = b"\xEF\x80\xBE\0"; pub const LV_SYMBOL_EDIT: &'static [u8; 4usize] = b"\xEF\x8C\x84\0"; pub const LV_SYMBOL_PREV: &'static [u8; 4usize] = b"\xEF\x81\x88\0"; pub const LV_SYMBOL_PLAY: &'static [u8; 4usize] = b"\xEF\x81\x8B\0"; pub const LV_SYMBOL_PAUSE: &'static [u8; 4usize] = b"\xEF\x81\x8C\0"; pub const LV_SYMBOL_STOP: &'static [u8; 4usize] = b"\xEF\x81\x8D\0"; pub const LV_SYMBOL_NEXT: &'static [u8; 4usize] = b"\xEF\x81\x91\0"; pub const LV_SYMBOL_EJECT: &'static [u8; 4usize] = b"\xEF\x81\x92\0"; pub const LV_SYMBOL_LEFT: &'static [u8; 4usize] = b"\xEF\x81\x93\0"; pub const LV_SYMBOL_RIGHT: &'static [u8; 4usize] = b"\xEF\x81\x94\0"; pub const LV_SYMBOL_PLUS: &'static [u8; 4usize] = b"\xEF\x81\xA7\0"; pub const LV_SYMBOL_MINUS: &'static [u8; 4usize] = b"\xEF\x81\xA8\0"; pub const LV_SYMBOL_EYE_OPEN: &'static [u8; 4usize] = b"\xEF\x81\xAE\0"; pub const LV_SYMBOL_EYE_CLOSE: &'static [u8; 4usize] = b"\xEF\x81\xB0\0"; pub const LV_SYMBOL_WARNING: &'static [u8; 4usize] = b"\xEF\x81\xB1\0"; pub const LV_SYMBOL_SHUFFLE: &'static [u8; 4usize] = b"\xEF\x81\xB4\0"; pub const LV_SYMBOL_UP: &'static [u8; 4usize] = b"\xEF\x81\xB7\0"; pub const LV_SYMBOL_DOWN: &'static [u8; 4usize] = b"\xEF\x81\xB8\0"; pub const LV_SYMBOL_LOOP: &'static [u8; 4usize] = b"\xEF\x81\xB9\0"; pub const LV_SYMBOL_DIRECTORY: &'static [u8; 4usize] = b"\xEF\x81\xBB\0"; pub const LV_SYMBOL_UPLOAD: &'static [u8; 4usize] = b"\xEF\x82\x93\0"; pub const LV_SYMBOL_CALL: &'static [u8; 4usize] = b"\xEF\x82\x95\0"; pub const LV_SYMBOL_CUT: &'static [u8; 4usize] = b"\xEF\x83\x84\0"; pub const LV_SYMBOL_COPY: &'static [u8; 4usize] = b"\xEF\x83\x85\0"; pub const LV_SYMBOL_SAVE: &'static [u8; 4usize] = b"\xEF\x83\x87\0"; pub const LV_SYMBOL_CHARGE: &'static [u8; 4usize] = b"\xEF\x83\xA7\0"; pub const LV_SYMBOL_PASTE: &'static [u8; 4usize] = b"\xEF\x83\xAA\0"; pub const LV_SYMBOL_BELL: &'static [u8; 4usize] = b"\xEF\x83\xB3\0"; pub const LV_SYMBOL_KEYBOARD: &'static [u8; 4usize] = b"\xEF\x84\x9C\0"; pub const LV_SYMBOL_GPS: &'static [u8; 4usize] = b"\xEF\x84\xA4\0"; pub const LV_SYMBOL_FILE: &'static [u8; 4usize] = b"\xEF\x85\x9B\0"; pub const LV_SYMBOL_WIFI: &'static [u8; 4usize] = b"\xEF\x87\xAB\0"; pub const LV_SYMBOL_BATTERY_FULL: &'static [u8; 4usize] = b"\xEF\x89\x80\0"; pub const LV_SYMBOL_BATTERY_3: &'static [u8; 4usize] = b"\xEF\x89\x81\0"; pub const LV_SYMBOL_BATTERY_2: &'static [u8; 4usize] = b"\xEF\x89\x82\0"; pub const LV_SYMBOL_BATTERY_1: &'static [u8; 4usize] = b"\xEF\x89\x83\0"; pub const LV_SYMBOL_BATTERY_EMPTY: &'static [u8; 4usize] = b"\xEF\x89\x84\0"; pub const LV_SYMBOL_USB: &'static [u8; 4usize] = b"\xEF\x8A\x87\0"; pub const LV_SYMBOL_BLUETOOTH: &'static [u8; 4usize] = b"\xEF\x8A\x93\0"; pub const LV_SYMBOL_TRASH: &'static [u8; 4usize] = b"\xEF\x8B\xAD\0"; pub const LV_SYMBOL_BACKSPACE: &'static [u8; 4usize] = b"\xEF\x95\x9A\0"; pub const LV_SYMBOL_SD_CARD: &'static [u8; 4usize] = b"\xEF\x9F\x82\0"; pub const LV_SYMBOL_NEW_LINE: &'static [u8; 4usize] = b"\xEF\xA2\xA2\0"; pub const LV_SYMBOL_DUMMY: &'static [u8; 4usize] = b"\xEF\xA3\xBF\0"; pub const LV_SYMBOL_BULLET: &'static [u8; 4usize] = b"\xE2\x80\xA2\0"; pub const LV_ANIM_REPEAT_INFINITE: u32 = 65535; pub const LV_MASK_ID_INV: i32 = -1; pub const _LV_MASK_MAX_NUM: u32 = 16; pub const LV_RADIUS_CIRCLE: u32 = 32767; pub const LV_DEBUG_STYLE_SENTINEL_VALUE: u32 = 579381998; pub const LV_DEBUG_STYLE_LIST_SENTINEL_VALUE: u32 = 2574765243; pub const LV_STYLE_ID_MASK: u32 = 255; pub const LV_STYLE_ATTR_NONE: u32 = 0; pub const LV_STYLE_ATTR_INHERIT: u32 = 128; pub const _LV_STYLE_CLOSING_PROP: u32 = 255; pub const LV_STYLE_TRANS_NUM_MAX: u32 = 6; pub const LV_STYLE_PROP_ALL: u32 = 255; pub const LV_STYLE_ID_VALUE: u32 = 0; pub const LV_STYLE_ID_COLOR: u32 = 9; pub const LV_STYLE_ID_OPA: u32 = 12; pub const LV_STYLE_ID_PTR: u32 = 14; pub const LV_STYLE_STATE_POS: u32 = 8; pub const LV_STYLE_STATE_MASK: u32 = 32512; pub const LV_STYLE_INHERIT_MASK: u32 = 32768; pub const LV_BIDI_LRO: &'static [u8; 4usize] = b"\xE2\x80\xAD\0"; pub const LV_BIDI_RLO: &'static [u8; 4usize] = b"\xE2\x80\xAE\0"; pub const __GNUC_VA_LIST: u32 = 1; pub const LV_TXT_ENC_UTF8: u32 = 1; pub const LV_TXT_ENC_ASCII: u32 = 2; pub const LV_DRAW_LABEL_NO_TXT_SEL: u32 = 65535; pub const LV_IMG_PX_SIZE_ALPHA_BYTE: u32 = 3; pub const LV_IMG_ZOOM_NONE: u32 = 256; pub const _LV_TRANSFORM_TRIGO_SHIFT: u32 = 10; pub const _LV_ZOOM_INV_UPSCALE: u32 = 5; pub const LV_FS_MAX_FN_LENGTH: u32 = 64; pub const LV_FS_MAX_PATH_LENGTH: u32 = 256; pub const LV_MAX_ANCESTOR_NUM: u32 = 8; pub const LV_EXT_CLICK_AREA_OFF: u32 = 0; pub const LV_EXT_CLICK_AREA_TINY: u32 = 1; pub const LV_EXT_CLICK_AREA_FULL: u32 = 2; pub const _LV_OBJ_PART_VIRTUAL_FIRST: u32 = 1; pub const _LV_OBJ_PART_REAL_FIRST: u32 = 64; pub const LV_LABEL_DOT_NUM: u32 = 3; pub const LV_LABEL_POS_LAST: u32 = 65535; pub const LV_LABEL_TEXT_SEL_OFF: u32 = 65535; pub const LV_CHART_TICK_LENGTH_AUTO: u32 = 255; pub const LV_BAR_ANIM_STATE_START: u32 = 0; pub const LV_BAR_ANIM_STATE_END: u32 = 256; pub const LV_BAR_ANIM_STATE_INV: i32 = -1; pub const LV_BAR_ANIM_STATE_NORM: u32 = 8; pub const LV_BTNMATRIX_WIDTH_MASK: u32 = 7; pub const LV_BTNMATRIX_BTN_NONE: u32 = 65535; pub const LV_DROPDOWN_POS_LAST: u32 = 65535; pub const LV_TEXTAREA_CURSOR_LAST: u32 = 32767; pub const LV_SPINBOX_MAX_DIGIT_COUNT: u32 = 10; pub type __u_char = cty::c_uchar; pub type __u_short = cty::c_ushort; pub type __u_int = cty::c_uint; pub type __u_long = cty::c_ulong; pub type __int8_t = cty::c_schar; pub type __uint8_t = cty::c_uchar; pub type __int16_t = cty::c_short; pub type __uint16_t = cty::c_ushort; pub type __int32_t = cty::c_int; pub type __uint32_t = cty::c_uint; pub type __int64_t = cty::c_long; pub type __uint64_t = cty::c_ulong; pub type __int_least8_t = __int8_t; pub type __uint_least8_t = __uint8_t; pub type __int_least16_t = __int16_t; pub type __uint_least16_t = __uint16_t; pub type __int_least32_t = __int32_t; pub type __uint_least32_t = __uint32_t; pub type __int_least64_t = __int64_t; pub type __uint_least64_t = __uint64_t; pub type __quad_t = cty::c_long; pub type __u_quad_t = cty::c_ulong; pub type __intmax_t = cty::c_long; pub type __uintmax_t = cty::c_ulong; pub type __dev_t = cty::c_ulong; pub type __uid_t = cty::c_uint; pub type __gid_t = cty::c_uint; pub type __ino_t = cty::c_ulong; pub type __ino64_t = cty::c_ulong; pub type __mode_t = cty::c_uint; pub type __nlink_t = cty::c_ulong; pub type __off_t = cty::c_long; pub type __off64_t = cty::c_long; pub type __pid_t = cty::c_int; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __fsid_t { pub __val: [cty::c_int; 2usize], } pub type __clock_t = cty::c_long; pub type __rlim_t = cty::c_ulong; pub type __rlim64_t = cty::c_ulong; pub type __id_t = cty::c_uint; pub type __time_t = cty::c_long; pub type __useconds_t = cty::c_uint; pub type __suseconds_t = cty::c_long; pub type __daddr_t = cty::c_int; pub type __key_t = cty::c_int; pub type __clockid_t = cty::c_int; pub type __timer_t = *mut cty::c_void; pub type __blksize_t = cty::c_long; pub type __blkcnt_t = cty::c_long; pub type __blkcnt64_t = cty::c_long; pub type __fsblkcnt_t = cty::c_ulong; pub type __fsblkcnt64_t = cty::c_ulong; pub type __fsfilcnt_t = cty::c_ulong; pub type __fsfilcnt64_t = cty::c_ulong; pub type __fsword_t = cty::c_long; pub type __ssize_t = cty::c_long; pub type __syscall_slong_t = cty::c_long; pub type __syscall_ulong_t = cty::c_ulong; pub type __loff_t = __off64_t; pub type __caddr_t = *mut cty::c_char; pub type __intptr_t = cty::c_long; pub type __socklen_t = cty::c_uint; pub type __sig_atomic_t = cty::c_int; pub type int_least8_t = __int_least8_t; pub type int_least16_t = __int_least16_t; pub type int_least32_t = __int_least32_t; pub type int_least64_t = __int_least64_t; pub type uint_least8_t = __uint_least8_t; pub type uint_least16_t = __uint_least16_t; pub type uint_least32_t = __uint_least32_t; pub type uint_least64_t = __uint_least64_t; pub type int_fast8_t = cty::c_schar; pub type int_fast16_t = cty::c_long; pub type int_fast32_t = cty::c_long; pub type int_fast64_t = cty::c_long; pub type uint_fast8_t = cty::c_uchar; pub type uint_fast16_t = cty::c_ulong; pub type uint_fast32_t = cty::c_ulong; pub type uint_fast64_t = cty::c_ulong; pub type intmax_t = __intmax_t; pub type uintmax_t = __uintmax_t; pub type lv_coord_t = i16; pub type lv_anim_user_data_t = *mut cty::c_void; pub type lv_group_user_data_t = *mut cty::c_void; pub type lv_fs_drv_user_data_t = *mut cty::c_void; pub type lv_img_decoder_user_data_t = *mut cty::c_void; pub type lv_disp_drv_user_data_t = *mut cty::c_void; pub type lv_indev_drv_user_data_t = *mut cty::c_void; pub type lv_font_user_data_t = *mut cty::c_void; pub type lv_obj_user_data_t = *mut cty::c_void; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _silence_gcc_warning { _unused: [u8; 0], } pub type lv_log_level_t = i8; pub type size_t = cty::c_ulong; pub type wchar_t = cty::c_int; #[repr(C)] #[repr(align(16))] #[derive(Debug, Copy, Clone)] pub struct max_align_t { pub __clang_max_align_nonce1: cty::c_longlong, pub __bindgen_padding_0: u64, pub __clang_max_align_nonce2: u128, } pub const LV_RES_INV: cty::c_uint = 0; pub const LV_RES_OK: cty::c_uint = 1; pub type _bindgen_ty_1 = cty::c_uint; pub type lv_res_t = u8; pub type lv_uintptr_t = usize; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_mem_monitor_t { pub total_size: u32, pub free_cnt: u32, pub free_size: u32, pub free_biggest_size: u32, pub used_cnt: u32, pub max_used: u32, pub used_pct: u8, pub frag_pct: u8, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_mem_buf_t { pub p: *mut cty::c_void, pub size: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 5usize], } impl lv_mem_buf_t { #[inline] pub fn used(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_used(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(used: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let used: u8 = unsafe { ::core::mem::transmute(used) }; used as u64 }); __bindgen_bitfield_unit } } pub type lv_mem_buf_arr_t = [lv_mem_buf_t; 16usize]; extern "C" { pub static mut _lv_mem_buf: lv_mem_buf_arr_t; } extern "C" { pub fn _lv_mem_init(); } extern "C" { pub fn _lv_mem_deinit(); } extern "C" { pub fn lv_mem_alloc(size: size_t) -> *mut cty::c_void; } extern "C" { pub fn lv_mem_free(data: *const cty::c_void); } extern "C" { pub fn lv_mem_realloc(data_p: *mut cty::c_void, new_size: size_t) -> *mut cty::c_void; } extern "C" { pub fn lv_mem_defrag(); } extern "C" { pub fn lv_mem_test() -> lv_res_t; } extern "C" { pub fn lv_mem_monitor(mon_p: *mut lv_mem_monitor_t); } extern "C" { pub fn _lv_mem_get_size(data: *const cty::c_void) -> u32; } extern "C" { pub fn _lv_mem_buf_get(size: u32) -> *mut cty::c_void; } extern "C" { pub fn _lv_mem_buf_release(p: *mut cty::c_void); } extern "C" { pub fn _lv_mem_buf_free_all(); } extern "C" { pub fn _lv_memcpy( dst: *mut cty::c_void, src: *const cty::c_void, len: size_t, ) -> *mut cty::c_void; } extern "C" { pub fn _lv_memset(dst: *mut cty::c_void, v: u8, len: size_t); } extern "C" { pub fn _lv_memset_00(dst: *mut cty::c_void, len: size_t); } extern "C" { pub fn _lv_memset_ff(dst: *mut cty::c_void, len: size_t); } pub type lv_ll_node_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_ll_t { pub n_size: u32, pub head: *mut lv_ll_node_t, pub tail: *mut lv_ll_node_t, } extern "C" { pub fn _lv_ll_init(ll_p: *mut lv_ll_t, node_size: u32); } extern "C" { pub fn _lv_ll_ins_head(ll_p: *mut lv_ll_t) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_ins_prev(ll_p: *mut lv_ll_t, n_act: *mut cty::c_void) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_ins_tail(ll_p: *mut lv_ll_t) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_remove(ll_p: *mut lv_ll_t, node_p: *mut cty::c_void); } extern "C" { pub fn _lv_ll_clear(ll_p: *mut lv_ll_t); } extern "C" { pub fn _lv_ll_chg_list( ll_ori_p: *mut lv_ll_t, ll_new_p: *mut lv_ll_t, node: *mut cty::c_void, head: bool, ); } extern "C" { pub fn _lv_ll_get_head(ll_p: *const lv_ll_t) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_get_tail(ll_p: *const lv_ll_t) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_get_next(ll_p: *const lv_ll_t, n_act: *const cty::c_void) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_get_prev(ll_p: *const lv_ll_t, n_act: *const cty::c_void) -> *mut cty::c_void; } extern "C" { pub fn _lv_ll_get_len(ll_p: *const lv_ll_t) -> u32; } extern "C" { pub fn _lv_ll_move_before( ll_p: *mut lv_ll_t, n_act: *mut cty::c_void, n_after: *mut cty::c_void, ); } extern "C" { pub fn _lv_ll_is_empty(ll_p: *mut lv_ll_t) -> bool; } pub type lv_task_cb_t = ::core::option::Option; pub const LV_TASK_PRIO_OFF: cty::c_uint = 0; pub const LV_TASK_PRIO_LOWEST: cty::c_uint = 1; pub const LV_TASK_PRIO_LOW: cty::c_uint = 2; pub const LV_TASK_PRIO_MID: cty::c_uint = 3; pub const LV_TASK_PRIO_HIGH: cty::c_uint = 4; pub const LV_TASK_PRIO_HIGHEST: cty::c_uint = 5; pub const _LV_TASK_PRIO_NUM: cty::c_uint = 6; pub type _bindgen_ty_2 = cty::c_uint; pub type lv_task_prio_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_task_t { pub period: u32, pub last_run: u32, pub task_cb: lv_task_cb_t, pub user_data: *mut cty::c_void, pub repeat_count: i32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl _lv_task_t { #[inline] pub fn prio(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u8) } } #[inline] pub fn set_prio(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 3u8, val as u64) } } #[inline] pub fn new_bitfield_1(prio: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 3u8, { let prio: u8 = unsafe { ::core::mem::transmute(prio) }; prio as u64 }); __bindgen_bitfield_unit } } pub type lv_task_t = _lv_task_t; extern "C" { pub fn _lv_task_core_init(); } extern "C" { pub fn lv_task_handler() -> u32; } extern "C" { pub fn lv_task_create_basic() -> *mut lv_task_t; } extern "C" { pub fn lv_task_create( task_xcb: lv_task_cb_t, period: u32, prio: lv_task_prio_t, user_data: *mut cty::c_void, ) -> *mut lv_task_t; } extern "C" { pub fn lv_task_del(task: *mut lv_task_t); } extern "C" { pub fn lv_task_set_cb(task: *mut lv_task_t, task_cb: lv_task_cb_t); } extern "C" { pub fn lv_task_set_prio(task: *mut lv_task_t, prio: lv_task_prio_t); } extern "C" { pub fn lv_task_set_period(task: *mut lv_task_t, period: u32); } extern "C" { pub fn lv_task_ready(task: *mut lv_task_t); } extern "C" { pub fn lv_task_set_repeat_count(task: *mut lv_task_t, repeat_count: i32); } extern "C" { pub fn lv_task_reset(task: *mut lv_task_t); } extern "C" { pub fn lv_task_enable(en: bool); } extern "C" { pub fn lv_task_get_idle() -> u8; } extern "C" { pub fn lv_task_get_next(task: *mut lv_task_t) -> *mut lv_task_t; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_sqrt_res_t { pub i: u16, pub f: u16, } extern "C" { pub fn _lv_trigo_sin(angle: i16) -> i16; } extern "C" { pub fn _lv_bezier3(t: u32, u0: u32, u1: u32, u2: u32, u3: u32) -> u32; } extern "C" { pub fn _lv_atan2(x: cty::c_int, y: cty::c_int) -> u16; } extern "C" { pub fn _lv_sqrt(x: u32, q: *mut lv_sqrt_res_t, mask: u32); } extern "C" { pub fn _lv_pow(base: i64, exp: i8) -> i64; } extern "C" { pub fn _lv_map(x: i32, min_in: i32, max_in: i32, min: i32, max: i32) -> i32; } pub type lv_async_cb_t = ::core::option::Option; extern "C" { pub fn lv_async_call(async_xcb: lv_async_cb_t, user_data: *mut cty::c_void) -> lv_res_t; } pub const LV_OPA_TRANSP: cty::c_uint = 0; pub const LV_OPA_0: cty::c_uint = 0; pub const LV_OPA_10: cty::c_uint = 25; pub const LV_OPA_20: cty::c_uint = 51; pub const LV_OPA_30: cty::c_uint = 76; pub const LV_OPA_40: cty::c_uint = 102; pub const LV_OPA_50: cty::c_uint = 127; pub const LV_OPA_60: cty::c_uint = 153; pub const LV_OPA_70: cty::c_uint = 178; pub const LV_OPA_80: cty::c_uint = 204; pub const LV_OPA_90: cty::c_uint = 229; pub const LV_OPA_100: cty::c_uint = 255; pub const LV_OPA_COVER: cty::c_uint = 255; pub type _bindgen_ty_3 = cty::c_uint; #[repr(C)] #[derive(Copy, Clone)] pub union lv_color1_t { pub full: u8, pub ch: lv_color1_t__bindgen_ty_1, } #[repr(C)] #[repr(align(1))] #[derive(Copy, Clone)] pub union lv_color1_t__bindgen_ty_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_color1_t__bindgen_ty_1 { #[inline] pub fn blue(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_blue(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn green(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_green(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn red(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_red(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(blue: u8, green: u8, red: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let blue: u8 = unsafe { ::core::mem::transmute(blue) }; blue as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let green: u8 = unsafe { ::core::mem::transmute(green) }; green as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let red: u8 = unsafe { ::core::mem::transmute(red) }; red as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub union lv_color8_t { pub ch: lv_color8_t__bindgen_ty_1, pub full: u8, } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct lv_color8_t__bindgen_ty_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_color8_t__bindgen_ty_1 { #[inline] pub fn blue(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_blue(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn green(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 3u8) as u8) } } #[inline] pub fn set_green(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 3u8, val as u64) } } #[inline] pub fn red(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 3u8) as u8) } } #[inline] pub fn set_red(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 3u8, val as u64) } } #[inline] pub fn new_bitfield_1(blue: u8, green: u8, red: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let blue: u8 = unsafe { ::core::mem::transmute(blue) }; blue as u64 }); __bindgen_bitfield_unit.set(2usize, 3u8, { let green: u8 = unsafe { ::core::mem::transmute(green) }; green as u64 }); __bindgen_bitfield_unit.set(5usize, 3u8, { let red: u8 = unsafe { ::core::mem::transmute(red) }; red as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub union lv_color16_t { pub ch: lv_color16_t__bindgen_ty_1, pub full: u16, } #[repr(C)] #[repr(align(2))] #[derive(Debug, Copy, Clone)] pub struct lv_color16_t__bindgen_ty_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, } impl lv_color16_t__bindgen_ty_1 { #[inline] pub fn blue(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 5u8) as u16) } } #[inline] pub fn set_blue(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 5u8, val as u64) } } #[inline] pub fn green(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 6u8) as u16) } } #[inline] pub fn set_green(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 6u8, val as u64) } } #[inline] pub fn red(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 5u8) as u16) } } #[inline] pub fn set_red(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(11usize, 5u8, val as u64) } } #[inline] pub fn new_bitfield_1(blue: u16, green: u16, red: u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 5u8, { let blue: u16 = unsafe { ::core::mem::transmute(blue) }; blue as u64 }); __bindgen_bitfield_unit.set(5usize, 6u8, { let green: u16 = unsafe { ::core::mem::transmute(green) }; green as u64 }); __bindgen_bitfield_unit.set(11usize, 5u8, { let red: u16 = unsafe { ::core::mem::transmute(red) }; red as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub union lv_color32_t { pub ch: lv_color32_t__bindgen_ty_1, pub full: u32, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_color32_t__bindgen_ty_1 { pub blue: u8, pub green: u8, pub red: u8, pub alpha: u8, } pub type lv_color_int_t = u16; pub type lv_color_t = lv_color16_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_color_hsv_t { pub h: u16, pub s: u8, pub v: u8, } pub type lv_opa_t = u8; extern "C" { pub fn lv_color_fill(buf: *mut lv_color_t, color: lv_color_t, px_num: u32); } extern "C" { pub fn lv_color_lighten(c: lv_color_t, lvl: lv_opa_t) -> lv_color_t; } extern "C" { pub fn lv_color_darken(c: lv_color_t, lvl: lv_opa_t) -> lv_color_t; } extern "C" { pub fn lv_color_hsv_to_rgb(h: u16, s: u8, v: u8) -> lv_color_t; } extern "C" { pub fn lv_color_rgb_to_hsv(r8: u8, g8: u8, b8: u8) -> lv_color_hsv_t; } extern "C" { pub fn lv_color_to_hsv(color: lv_color_t) -> lv_color_hsv_t; } extern "C" { pub fn memcpy( __dest: *mut cty::c_void, __src: *const cty::c_void, __n: cty::c_ulong, ) -> *mut cty::c_void; } extern "C" { pub fn memmove( __dest: *mut cty::c_void, __src: *const cty::c_void, __n: cty::c_ulong, ) -> *mut cty::c_void; } extern "C" { pub fn memccpy( __dest: *mut cty::c_void, __src: *const cty::c_void, __c: cty::c_int, __n: cty::c_ulong, ) -> *mut cty::c_void; } extern "C" { pub fn memset(__s: *mut cty::c_void, __c: cty::c_int, __n: cty::c_ulong) -> *mut cty::c_void; } extern "C" { pub fn memcmp( __s1: *const cty::c_void, __s2: *const cty::c_void, __n: cty::c_ulong, ) -> cty::c_int; } extern "C" { pub fn memchr(__s: *const cty::c_void, __c: cty::c_int, __n: cty::c_ulong) -> *mut cty::c_void; } extern "C" { pub fn strcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn strncpy( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: cty::c_ulong, ) -> *mut cty::c_char; } extern "C" { pub fn strcat(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn strncat( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: cty::c_ulong, ) -> *mut cty::c_char; } extern "C" { pub fn strcmp(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int; } extern "C" { pub fn strncmp( __s1: *const cty::c_char, __s2: *const cty::c_char, __n: cty::c_ulong, ) -> cty::c_int; } extern "C" { pub fn strcoll(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int; } extern "C" { pub fn strxfrm( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: cty::c_ulong, ) -> cty::c_ulong; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __locale_struct { pub __locales: [*mut __locale_data; 13usize], pub __ctype_b: *const cty::c_ushort, pub __ctype_tolower: *const cty::c_int, pub __ctype_toupper: *const cty::c_int, pub __names: [*const cty::c_char; 13usize], } pub type __locale_t = *mut __locale_struct; pub type locale_t = __locale_t; extern "C" { pub fn strcoll_l( __s1: *const cty::c_char, __s2: *const cty::c_char, __l: locale_t, ) -> cty::c_int; } extern "C" { pub fn strxfrm_l( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: size_t, __l: locale_t, ) -> size_t; } extern "C" { pub fn strdup(__s: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn strndup(__string: *const cty::c_char, __n: cty::c_ulong) -> *mut cty::c_char; } extern "C" { pub fn strchr(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char; } extern "C" { pub fn strrchr(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char; } extern "C" { pub fn strcspn(__s: *const cty::c_char, __reject: *const cty::c_char) -> cty::c_ulong; } extern "C" { pub fn strspn(__s: *const cty::c_char, __accept: *const cty::c_char) -> cty::c_ulong; } extern "C" { pub fn strpbrk(__s: *const cty::c_char, __accept: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn strstr(__haystack: *const cty::c_char, __needle: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn strtok(__s: *mut cty::c_char, __delim: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn __strtok_r( __s: *mut cty::c_char, __delim: *const cty::c_char, __save_ptr: *mut *mut cty::c_char, ) -> *mut cty::c_char; } extern "C" { pub fn strtok_r( __s: *mut cty::c_char, __delim: *const cty::c_char, __save_ptr: *mut *mut cty::c_char, ) -> *mut cty::c_char; } extern "C" { pub fn strlen(__s: *const cty::c_char) -> cty::c_ulong; } extern "C" { pub fn strnlen(__string: *const cty::c_char, __maxlen: size_t) -> size_t; } extern "C" { pub fn strerror(__errnum: cty::c_int) -> *mut cty::c_char; } extern "C" { #[link_name = "\u{1}__xpg_strerror_r"] pub fn strerror_r( __errnum: cty::c_int, __buf: *mut cty::c_char, __buflen: size_t, ) -> cty::c_int; } extern "C" { pub fn strerror_l(__errnum: cty::c_int, __l: locale_t) -> *mut cty::c_char; } extern "C" { pub fn bcmp( __s1: *const cty::c_void, __s2: *const cty::c_void, __n: cty::c_ulong, ) -> cty::c_int; } extern "C" { pub fn bcopy(__src: *const cty::c_void, __dest: *mut cty::c_void, __n: size_t); } extern "C" { pub fn bzero(__s: *mut cty::c_void, __n: cty::c_ulong); } extern "C" { pub fn index(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char; } extern "C" { pub fn rindex(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char; } extern "C" { pub fn ffs(__i: cty::c_int) -> cty::c_int; } extern "C" { pub fn ffsl(__l: cty::c_long) -> cty::c_int; } extern "C" { pub fn ffsll(__ll: cty::c_longlong) -> cty::c_int; } extern "C" { pub fn strcasecmp(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int; } extern "C" { pub fn strncasecmp( __s1: *const cty::c_char, __s2: *const cty::c_char, __n: cty::c_ulong, ) -> cty::c_int; } extern "C" { pub fn strcasecmp_l( __s1: *const cty::c_char, __s2: *const cty::c_char, __loc: locale_t, ) -> cty::c_int; } extern "C" { pub fn strncasecmp_l( __s1: *const cty::c_char, __s2: *const cty::c_char, __n: size_t, __loc: locale_t, ) -> cty::c_int; } extern "C" { pub fn explicit_bzero(__s: *mut cty::c_void, __n: size_t); } extern "C" { pub fn strsep( __stringp: *mut *mut cty::c_char, __delim: *const cty::c_char, ) -> *mut cty::c_char; } extern "C" { pub fn strsignal(__sig: cty::c_int) -> *mut cty::c_char; } extern "C" { pub fn __stpcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn stpcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn __stpncpy( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: size_t, ) -> *mut cty::c_char; } extern "C" { pub fn stpncpy( __dest: *mut cty::c_char, __src: *const cty::c_char, __n: cty::c_ulong, ) -> *mut cty::c_char; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_point_t { pub x: lv_coord_t, pub y: lv_coord_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_area_t { pub x1: lv_coord_t, pub y1: lv_coord_t, pub x2: lv_coord_t, pub y2: lv_coord_t, } pub const LV_ALIGN_CENTER: cty::c_uint = 0; pub const LV_ALIGN_IN_TOP_LEFT: cty::c_uint = 1; pub const LV_ALIGN_IN_TOP_MID: cty::c_uint = 2; pub const LV_ALIGN_IN_TOP_RIGHT: cty::c_uint = 3; pub const LV_ALIGN_IN_BOTTOM_LEFT: cty::c_uint = 4; pub const LV_ALIGN_IN_BOTTOM_MID: cty::c_uint = 5; pub const LV_ALIGN_IN_BOTTOM_RIGHT: cty::c_uint = 6; pub const LV_ALIGN_IN_LEFT_MID: cty::c_uint = 7; pub const LV_ALIGN_IN_RIGHT_MID: cty::c_uint = 8; pub const LV_ALIGN_OUT_TOP_LEFT: cty::c_uint = 9; pub const LV_ALIGN_OUT_TOP_MID: cty::c_uint = 10; pub const LV_ALIGN_OUT_TOP_RIGHT: cty::c_uint = 11; pub const LV_ALIGN_OUT_BOTTOM_LEFT: cty::c_uint = 12; pub const LV_ALIGN_OUT_BOTTOM_MID: cty::c_uint = 13; pub const LV_ALIGN_OUT_BOTTOM_RIGHT: cty::c_uint = 14; pub const LV_ALIGN_OUT_LEFT_TOP: cty::c_uint = 15; pub const LV_ALIGN_OUT_LEFT_MID: cty::c_uint = 16; pub const LV_ALIGN_OUT_LEFT_BOTTOM: cty::c_uint = 17; pub const LV_ALIGN_OUT_RIGHT_TOP: cty::c_uint = 18; pub const LV_ALIGN_OUT_RIGHT_MID: cty::c_uint = 19; pub const LV_ALIGN_OUT_RIGHT_BOTTOM: cty::c_uint = 20; pub type _bindgen_ty_4 = cty::c_uint; pub type lv_align_t = u8; extern "C" { pub fn lv_area_set( area_p: *mut lv_area_t, x1: lv_coord_t, y1: lv_coord_t, x2: lv_coord_t, y2: lv_coord_t, ); } extern "C" { pub fn lv_area_set_width(area_p: *mut lv_area_t, w: lv_coord_t); } extern "C" { pub fn lv_area_set_height(area_p: *mut lv_area_t, h: lv_coord_t); } extern "C" { pub fn _lv_area_set_pos(area_p: *mut lv_area_t, x: lv_coord_t, y: lv_coord_t); } extern "C" { pub fn lv_area_get_size(area_p: *const lv_area_t) -> u32; } extern "C" { pub fn _lv_area_intersect( res_p: *mut lv_area_t, a1_p: *const lv_area_t, a2_p: *const lv_area_t, ) -> bool; } extern "C" { pub fn _lv_area_join(a_res_p: *mut lv_area_t, a1_p: *const lv_area_t, a2_p: *const lv_area_t); } extern "C" { pub fn _lv_area_is_point_on( a_p: *const lv_area_t, p_p: *const lv_point_t, radius: lv_coord_t, ) -> bool; } extern "C" { pub fn _lv_area_is_on(a1_p: *const lv_area_t, a2_p: *const lv_area_t) -> bool; } extern "C" { pub fn _lv_area_is_in( ain_p: *const lv_area_t, aholder_p: *const lv_area_t, radius: lv_coord_t, ) -> bool; } extern "C" { pub fn _lv_area_align( base: *const lv_area_t, to_align: *const lv_area_t, align: lv_align_t, res: *mut lv_point_t, ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_disp_buf_t { pub buf1: *mut cty::c_void, pub buf2: *mut cty::c_void, pub buf_act: *mut cty::c_void, pub size: u32, pub area: lv_area_t, pub flushing: cty::c_int, pub flushing_last: cty::c_int, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl lv_disp_buf_t { #[inline] pub fn last_area(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } } #[inline] pub fn set_last_area(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn last_part(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } } #[inline] pub fn set_last_part(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(last_area: u32, last_part: u32) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let last_area: u32 = unsafe { ::core::mem::transmute(last_area) }; last_area as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let last_part: u32 = unsafe { ::core::mem::transmute(last_part) }; last_part as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub struct _disp_drv_t { pub hor_res: lv_coord_t, pub ver_res: lv_coord_t, pub buffer: *mut lv_disp_buf_t, pub _bitfield_align_1: [u16; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub flush_cb: ::core::option::Option< unsafe extern "C" fn( disp_drv: *mut _disp_drv_t, area: *const lv_area_t, color_p: *mut lv_color_t, ), >, pub rounder_cb: ::core::option::Option< unsafe extern "C" fn(disp_drv: *mut _disp_drv_t, area: *mut lv_area_t), >, pub set_px_cb: ::core::option::Option< unsafe extern "C" fn( disp_drv: *mut _disp_drv_t, buf: *mut u8, buf_w: lv_coord_t, x: lv_coord_t, y: lv_coord_t, color: lv_color_t, opa: lv_opa_t, ), >, pub monitor_cb: ::core::option::Option< unsafe extern "C" fn(disp_drv: *mut _disp_drv_t, time: u32, px: u32), >, pub wait_cb: ::core::option::Option, pub clean_dcache_cb: ::core::option::Option, pub gpu_wait_cb: ::core::option::Option, pub gpu_blend_cb: ::core::option::Option< unsafe extern "C" fn( disp_drv: *mut _disp_drv_t, dest: *mut lv_color_t, src: *const lv_color_t, length: u32, opa: lv_opa_t, ), >, pub gpu_fill_cb: ::core::option::Option< unsafe extern "C" fn( disp_drv: *mut _disp_drv_t, dest_buf: *mut lv_color_t, dest_width: lv_coord_t, fill_area: *const lv_area_t, color: lv_color_t, ), >, pub color_chroma_key: lv_color_t, pub user_data: lv_disp_drv_user_data_t, } impl _disp_drv_t { #[inline] pub fn antialiasing(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } } #[inline] pub fn set_antialiasing(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn rotated(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } } #[inline] pub fn set_rotated(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn dpi(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 10u8) as u32) } } #[inline] pub fn set_dpi(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 10u8, val as u64) } } #[inline] pub fn new_bitfield_1( antialiasing: u32, rotated: u32, dpi: u32, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let antialiasing: u32 = unsafe { ::core::mem::transmute(antialiasing) }; antialiasing as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let rotated: u32 = unsafe { ::core::mem::transmute(rotated) }; rotated as u64 }); __bindgen_bitfield_unit.set(2usize, 10u8, { let dpi: u32 = unsafe { ::core::mem::transmute(dpi) }; dpi as u64 }); __bindgen_bitfield_unit } } pub type lv_disp_drv_t = _disp_drv_t; #[repr(C)] #[derive(Copy, Clone)] pub struct _disp_t { pub driver: lv_disp_drv_t, pub refr_task: *mut lv_task_t, pub scr_ll: lv_ll_t, pub act_scr: *mut _lv_obj_t, pub prev_scr: *mut _lv_obj_t, pub scr_to_load: *mut _lv_obj_t, pub top_layer: *mut _lv_obj_t, pub sys_layer: *mut _lv_obj_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub bg_color: lv_color_t, pub bg_img: *const cty::c_void, pub bg_opa: lv_opa_t, pub inv_areas: [lv_area_t; 32usize], pub inv_area_joined: [u8; 32usize], pub _bitfield_align_2: [u16; 0], pub _bitfield_2: __BindgenBitfieldUnit<[u8; 2usize]>, pub last_activity_time: u32, } impl _disp_t { #[inline] pub fn del_prev(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_del_prev(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(del_prev: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let del_prev: u8 = unsafe { ::core::mem::transmute(del_prev) }; del_prev as u64 }); __bindgen_bitfield_unit } #[inline] pub fn inv_p(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 10u8) as u32) } } #[inline] pub fn set_inv_p(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_2.set(0usize, 10u8, val as u64) } } #[inline] pub fn new_bitfield_2(inv_p: u32) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 10u8, { let inv_p: u32 = unsafe { ::core::mem::transmute(inv_p) }; inv_p as u64 }); __bindgen_bitfield_unit } } pub type lv_disp_t = _disp_t; pub const lv_disp_size_t_LV_DISP_SIZE_SMALL: lv_disp_size_t = 0; pub const lv_disp_size_t_LV_DISP_SIZE_MEDIUM: lv_disp_size_t = 1; pub const lv_disp_size_t_LV_DISP_SIZE_LARGE: lv_disp_size_t = 2; pub const lv_disp_size_t_LV_DISP_SIZE_EXTRA_LARGE: lv_disp_size_t = 3; pub type lv_disp_size_t = cty::c_uint; extern "C" { pub fn lv_disp_drv_init(driver: *mut lv_disp_drv_t); } extern "C" { pub fn lv_disp_buf_init( disp_buf: *mut lv_disp_buf_t, buf1: *mut cty::c_void, buf2: *mut cty::c_void, size_in_px_cnt: u32, ); } extern "C" { pub fn lv_disp_drv_register(driver: *mut lv_disp_drv_t) -> *mut lv_disp_t; } extern "C" { pub fn lv_disp_drv_update(disp: *mut lv_disp_t, new_drv: *mut lv_disp_drv_t); } extern "C" { pub fn lv_disp_remove(disp: *mut lv_disp_t); } extern "C" { pub fn lv_disp_set_default(disp: *mut lv_disp_t); } extern "C" { pub fn lv_disp_get_default() -> *mut lv_disp_t; } extern "C" { pub fn lv_disp_get_hor_res(disp: *mut lv_disp_t) -> lv_coord_t; } extern "C" { pub fn lv_disp_get_ver_res(disp: *mut lv_disp_t) -> lv_coord_t; } extern "C" { pub fn lv_disp_get_antialiasing(disp: *mut lv_disp_t) -> bool; } extern "C" { pub fn lv_disp_get_dpi(disp: *mut lv_disp_t) -> lv_coord_t; } extern "C" { pub fn lv_disp_get_size_category(disp: *mut lv_disp_t) -> lv_disp_size_t; } extern "C" { pub fn lv_disp_flush_ready(disp_drv: *mut lv_disp_drv_t); } extern "C" { pub fn lv_disp_flush_is_last(disp_drv: *mut lv_disp_drv_t) -> bool; } extern "C" { pub fn lv_disp_get_next(disp: *mut lv_disp_t) -> *mut lv_disp_t; } extern "C" { pub fn lv_disp_get_buf(disp: *mut lv_disp_t) -> *mut lv_disp_buf_t; } extern "C" { pub fn lv_disp_get_inv_buf_size(disp: *mut lv_disp_t) -> u16; } extern "C" { pub fn _lv_disp_pop_from_inv_buf(disp: *mut lv_disp_t, num: u16); } extern "C" { pub fn lv_disp_is_double_buf(disp: *mut lv_disp_t) -> bool; } extern "C" { pub fn lv_disp_is_true_double_buf(disp: *mut lv_disp_t) -> bool; } pub const LV_INDEV_TYPE_NONE: cty::c_uint = 0; pub const LV_INDEV_TYPE_POINTER: cty::c_uint = 1; pub const LV_INDEV_TYPE_KEYPAD: cty::c_uint = 2; pub const LV_INDEV_TYPE_BUTTON: cty::c_uint = 3; pub const LV_INDEV_TYPE_ENCODER: cty::c_uint = 4; pub type _bindgen_ty_5 = cty::c_uint; pub type lv_indev_type_t = u8; pub const LV_INDEV_STATE_REL: cty::c_uint = 0; pub const LV_INDEV_STATE_PR: cty::c_uint = 1; pub type _bindgen_ty_6 = cty::c_uint; pub type lv_indev_state_t = u8; pub const LV_DRAG_DIR_HOR: cty::c_uint = 1; pub const LV_DRAG_DIR_VER: cty::c_uint = 2; pub const LV_DRAG_DIR_BOTH: cty::c_uint = 3; pub const LV_DRAG_DIR_ONE: cty::c_uint = 4; pub type _bindgen_ty_7 = cty::c_uint; pub type lv_drag_dir_t = u8; pub const LV_GESTURE_DIR_TOP: cty::c_uint = 0; pub const LV_GESTURE_DIR_BOTTOM: cty::c_uint = 1; pub const LV_GESTURE_DIR_LEFT: cty::c_uint = 2; pub const LV_GESTURE_DIR_RIGHT: cty::c_uint = 3; pub type _bindgen_ty_8 = cty::c_uint; pub type lv_gesture_dir_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_indev_data_t { pub point: lv_point_t, pub key: u32, pub btn_id: u32, pub enc_diff: i16, pub state: lv_indev_state_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_indev_drv_t { pub type_: lv_indev_type_t, pub read_cb: ::core::option::Option< unsafe extern "C" fn(indev_drv: *mut _lv_indev_drv_t, data: *mut lv_indev_data_t) -> bool, >, pub feedback_cb: ::core::option::Option, pub user_data: lv_indev_drv_user_data_t, pub disp: *mut _disp_t, pub read_task: *mut lv_task_t, pub drag_limit: u8, pub drag_throw: u8, pub gesture_min_velocity: u8, pub gesture_limit: u8, pub long_press_time: u16, pub long_press_rep_time: u16, } pub type lv_indev_drv_t = _lv_indev_drv_t; #[repr(C)] #[derive(Copy, Clone)] pub struct _lv_indev_proc_t { pub state: lv_indev_state_t, pub types: _lv_indev_proc_t__bindgen_ty_1, pub pr_timestamp: u32, pub longpr_rep_timestamp: u32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } #[repr(C)] #[derive(Copy, Clone)] pub union _lv_indev_proc_t__bindgen_ty_1 { pub pointer: _lv_indev_proc_t__bindgen_ty_1__bindgen_ty_1, pub keypad: _lv_indev_proc_t__bindgen_ty_1__bindgen_ty_2, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_indev_proc_t__bindgen_ty_1__bindgen_ty_1 { pub act_point: lv_point_t, pub last_point: lv_point_t, pub vect: lv_point_t, pub drag_sum: lv_point_t, pub drag_throw_vect: lv_point_t, pub act_obj: *mut _lv_obj_t, pub last_obj: *mut _lv_obj_t, pub last_pressed: *mut _lv_obj_t, pub gesture_dir: lv_gesture_dir_t, pub gesture_sum: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u8, } impl _lv_indev_proc_t__bindgen_ty_1__bindgen_ty_1 { #[inline] pub fn drag_limit_out(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_drag_limit_out(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn drag_in_prog(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_drag_in_prog(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn drag_dir(&self) -> lv_drag_dir_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 3u8) as u8) } } #[inline] pub fn set_drag_dir(&mut self, val: lv_drag_dir_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 3u8, val as u64) } } #[inline] pub fn gesture_sent(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u8) } } #[inline] pub fn set_gesture_sent(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( drag_limit_out: u8, drag_in_prog: u8, drag_dir: lv_drag_dir_t, gesture_sent: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let drag_limit_out: u8 = unsafe { ::core::mem::transmute(drag_limit_out) }; drag_limit_out as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let drag_in_prog: u8 = unsafe { ::core::mem::transmute(drag_in_prog) }; drag_in_prog as u64 }); __bindgen_bitfield_unit.set(2usize, 3u8, { let drag_dir: u8 = unsafe { ::core::mem::transmute(drag_dir) }; drag_dir as u64 }); __bindgen_bitfield_unit.set(5usize, 1u8, { let gesture_sent: u8 = unsafe { ::core::mem::transmute(gesture_sent) }; gesture_sent as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_indev_proc_t__bindgen_ty_1__bindgen_ty_2 { pub last_state: lv_indev_state_t, pub last_key: u32, } impl _lv_indev_proc_t { #[inline] pub fn long_pr_sent(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_long_pr_sent(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn reset_query(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_reset_query(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn disabled(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_disabled(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn wait_until_release(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_wait_until_release(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( long_pr_sent: u8, reset_query: u8, disabled: u8, wait_until_release: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let long_pr_sent: u8 = unsafe { ::core::mem::transmute(long_pr_sent) }; long_pr_sent as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let reset_query: u8 = unsafe { ::core::mem::transmute(reset_query) }; reset_query as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let disabled: u8 = unsafe { ::core::mem::transmute(disabled) }; disabled as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let wait_until_release: u8 = unsafe { ::core::mem::transmute(wait_until_release) }; wait_until_release as u64 }); __bindgen_bitfield_unit } } pub type lv_indev_proc_t = _lv_indev_proc_t; #[repr(C)] #[derive(Copy, Clone)] pub struct _lv_indev_t { pub driver: lv_indev_drv_t, pub proc_: lv_indev_proc_t, pub cursor: *mut _lv_obj_t, pub group: *mut _lv_group_t, pub btn_points: *const lv_point_t, } pub type lv_indev_t = _lv_indev_t; extern "C" { pub fn lv_indev_drv_init(driver: *mut lv_indev_drv_t); } extern "C" { pub fn lv_indev_drv_register(driver: *mut lv_indev_drv_t) -> *mut lv_indev_t; } extern "C" { pub fn lv_indev_drv_update(indev: *mut lv_indev_t, new_drv: *mut lv_indev_drv_t); } extern "C" { pub fn lv_indev_get_next(indev: *mut lv_indev_t) -> *mut lv_indev_t; } extern "C" { pub fn _lv_indev_read(indev: *mut lv_indev_t, data: *mut lv_indev_data_t) -> bool; } extern "C" { pub fn lv_tick_inc(tick_period: u32); } extern "C" { pub fn lv_tick_get() -> u32; } extern "C" { pub fn lv_tick_elaps(prev_tick: u32) -> u32; } pub const _LV_STR_SYMBOL_AUDIO: cty::c_uint = 0; pub const _LV_STR_SYMBOL_VIDEO: cty::c_uint = 1; pub const _LV_STR_SYMBOL_LIST: cty::c_uint = 2; pub const _LV_STR_SYMBOL_OK: cty::c_uint = 3; pub const _LV_STR_SYMBOL_CLOSE: cty::c_uint = 4; pub const _LV_STR_SYMBOL_POWER: cty::c_uint = 5; pub const _LV_STR_SYMBOL_SETTINGS: cty::c_uint = 6; pub const _LV_STR_SYMBOL_HOME: cty::c_uint = 7; pub const _LV_STR_SYMBOL_DOWNLOAD: cty::c_uint = 8; pub const _LV_STR_SYMBOL_DRIVE: cty::c_uint = 9; pub const _LV_STR_SYMBOL_REFRESH: cty::c_uint = 10; pub const _LV_STR_SYMBOL_MUTE: cty::c_uint = 11; pub const _LV_STR_SYMBOL_VOLUME_MID: cty::c_uint = 12; pub const _LV_STR_SYMBOL_VOLUME_MAX: cty::c_uint = 13; pub const _LV_STR_SYMBOL_IMAGE: cty::c_uint = 14; pub const _LV_STR_SYMBOL_EDIT: cty::c_uint = 15; pub const _LV_STR_SYMBOL_PREV: cty::c_uint = 16; pub const _LV_STR_SYMBOL_PLAY: cty::c_uint = 17; pub const _LV_STR_SYMBOL_PAUSE: cty::c_uint = 18; pub const _LV_STR_SYMBOL_STOP: cty::c_uint = 19; pub const _LV_STR_SYMBOL_NEXT: cty::c_uint = 20; pub const _LV_STR_SYMBOL_EJECT: cty::c_uint = 21; pub const _LV_STR_SYMBOL_LEFT: cty::c_uint = 22; pub const _LV_STR_SYMBOL_RIGHT: cty::c_uint = 23; pub const _LV_STR_SYMBOL_PLUS: cty::c_uint = 24; pub const _LV_STR_SYMBOL_MINUS: cty::c_uint = 25; pub const _LV_STR_SYMBOL_EYE_OPEN: cty::c_uint = 26; pub const _LV_STR_SYMBOL_EYE_CLOSE: cty::c_uint = 27; pub const _LV_STR_SYMBOL_WARNING: cty::c_uint = 28; pub const _LV_STR_SYMBOL_SHUFFLE: cty::c_uint = 29; pub const _LV_STR_SYMBOL_UP: cty::c_uint = 30; pub const _LV_STR_SYMBOL_DOWN: cty::c_uint = 31; pub const _LV_STR_SYMBOL_LOOP: cty::c_uint = 32; pub const _LV_STR_SYMBOL_DIRECTORY: cty::c_uint = 33; pub const _LV_STR_SYMBOL_UPLOAD: cty::c_uint = 34; pub const _LV_STR_SYMBOL_CALL: cty::c_uint = 35; pub const _LV_STR_SYMBOL_CUT: cty::c_uint = 36; pub const _LV_STR_SYMBOL_COPY: cty::c_uint = 37; pub const _LV_STR_SYMBOL_SAVE: cty::c_uint = 38; pub const _LV_STR_SYMBOL_CHARGE: cty::c_uint = 39; pub const _LV_STR_SYMBOL_PASTE: cty::c_uint = 40; pub const _LV_STR_SYMBOL_BELL: cty::c_uint = 41; pub const _LV_STR_SYMBOL_KEYBOARD: cty::c_uint = 42; pub const _LV_STR_SYMBOL_GPS: cty::c_uint = 43; pub const _LV_STR_SYMBOL_FILE: cty::c_uint = 44; pub const _LV_STR_SYMBOL_WIFI: cty::c_uint = 45; pub const _LV_STR_SYMBOL_BATTERY_FULL: cty::c_uint = 46; pub const _LV_STR_SYMBOL_BATTERY_3: cty::c_uint = 47; pub const _LV_STR_SYMBOL_BATTERY_2: cty::c_uint = 48; pub const _LV_STR_SYMBOL_BATTERY_1: cty::c_uint = 49; pub const _LV_STR_SYMBOL_BATTERY_EMPTY: cty::c_uint = 50; pub const _LV_STR_SYMBOL_USB: cty::c_uint = 51; pub const _LV_STR_SYMBOL_BLUETOOTH: cty::c_uint = 52; pub const _LV_STR_SYMBOL_TRASH: cty::c_uint = 53; pub const _LV_STR_SYMBOL_BACKSPACE: cty::c_uint = 54; pub const _LV_STR_SYMBOL_SD_CARD: cty::c_uint = 55; pub const _LV_STR_SYMBOL_NEW_LINE: cty::c_uint = 56; pub const _LV_STR_SYMBOL_DUMMY: cty::c_uint = 57; pub const _LV_STR_SYMBOL_BULLET: cty::c_uint = 58; pub type _bindgen_ty_9 = cty::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_font_glyph_dsc_t { pub adv_w: u16, pub box_w: u16, pub box_h: u16, pub ofs_x: i16, pub ofs_y: i16, pub bpp: u8, } pub const LV_FONT_SUBPX_NONE: cty::c_uint = 0; pub const LV_FONT_SUBPX_HOR: cty::c_uint = 1; pub const LV_FONT_SUBPX_VER: cty::c_uint = 2; pub const LV_FONT_SUBPX_BOTH: cty::c_uint = 3; pub type _bindgen_ty_10 = cty::c_uint; pub type lv_font_subpx_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_font_struct { pub get_glyph_dsc: ::core::option::Option< unsafe extern "C" fn( arg1: *const _lv_font_struct, arg2: *mut lv_font_glyph_dsc_t, letter: u32, letter_next: u32, ) -> bool, >, pub get_glyph_bitmap: ::core::option::Option< unsafe extern "C" fn(arg1: *const _lv_font_struct, arg2: u32) -> *const u8, >, pub line_height: lv_coord_t, pub base_line: lv_coord_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub underline_position: i8, pub underline_thickness: i8, pub dsc: *mut cty::c_void, pub user_data: lv_font_user_data_t, } impl _lv_font_struct { #[inline] pub fn subpx(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_subpx(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1(subpx: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let subpx: u8 = unsafe { ::core::mem::transmute(subpx) }; subpx as u64 }); __bindgen_bitfield_unit } } pub type lv_font_t = _lv_font_struct; extern "C" { pub fn lv_font_get_glyph_bitmap(font_p: *const lv_font_t, letter: u32) -> *const u8; } extern "C" { pub fn lv_font_get_glyph_dsc( font_p: *const lv_font_t, dsc_out: *mut lv_font_glyph_dsc_t, letter: u32, letter_next: u32, ) -> bool; } extern "C" { pub fn lv_font_get_glyph_width(font: *const lv_font_t, letter: u32, letter_next: u32) -> u16; } extern "C" { pub static mut lv_font_montserrat_16: lv_font_t; } pub const LV_ANIM_OFF: cty::c_uint = 0; pub const LV_ANIM_ON: cty::c_uint = 1; pub type _bindgen_ty_11 = cty::c_uint; pub type lv_anim_enable_t = u8; pub type lv_anim_value_t = lv_coord_t; pub type lv_anim_path_cb_t = ::core::option::Option< unsafe extern "C" fn(arg1: *const _lv_anim_path_t, arg2: *const _lv_anim_t) -> lv_anim_value_t, >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_anim_path_t { pub cb: lv_anim_path_cb_t, pub user_data: *mut cty::c_void, } pub type lv_anim_path_t = _lv_anim_path_t; pub type lv_anim_exec_xcb_t = ::core::option::Option; pub type lv_anim_custom_exec_cb_t = ::core::option::Option; pub type lv_anim_ready_cb_t = ::core::option::Option; pub type lv_anim_start_cb_t = ::core::option::Option; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_anim_t { pub var: *mut cty::c_void, pub exec_cb: lv_anim_exec_xcb_t, pub start_cb: lv_anim_start_cb_t, pub ready_cb: lv_anim_ready_cb_t, pub path: lv_anim_path_t, pub start: i32, pub current: i32, pub end: i32, pub time: i32, pub act_time: i32, pub playback_delay: u32, pub playback_time: u32, pub repeat_delay: u32, pub repeat_cnt: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub user_data: lv_anim_user_data_t, pub time_orig: u32, pub _bitfield_align_2: [u8; 0], pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl _lv_anim_t { #[inline] pub fn early_apply(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_early_apply(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(early_apply: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let early_apply: u8 = unsafe { ::core::mem::transmute(early_apply) }; early_apply as u64 }); __bindgen_bitfield_unit } #[inline] pub fn playback_now(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 1u8) as u8) } } #[inline] pub fn set_playback_now(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_2.set(0usize, 1u8, val as u64) } } #[inline] pub fn has_run(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_2.get(1usize, 1u8) as u32) } } #[inline] pub fn set_has_run(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_2.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_2(playback_now: u8, has_run: u32) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let playback_now: u8 = unsafe { ::core::mem::transmute(playback_now) }; playback_now as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let has_run: u32 = unsafe { ::core::mem::transmute(has_run) }; has_run as u64 }); __bindgen_bitfield_unit } } pub type lv_anim_t = _lv_anim_t; extern "C" { pub fn _lv_anim_core_init(); } extern "C" { pub fn lv_anim_init(a: *mut lv_anim_t); } extern "C" { pub fn lv_anim_start(a: *mut lv_anim_t); } extern "C" { pub fn lv_anim_del(var: *mut cty::c_void, exec_cb: lv_anim_exec_xcb_t) -> bool; } extern "C" { pub fn lv_anim_get(var: *mut cty::c_void, exec_cb: lv_anim_exec_xcb_t) -> *mut lv_anim_t; } extern "C" { pub fn lv_anim_count_running() -> u16; } extern "C" { pub fn lv_anim_speed_to_time(speed: u16, start: lv_anim_value_t, end: lv_anim_value_t) -> u16; } extern "C" { pub fn lv_anim_refr_now(); } extern "C" { pub fn lv_anim_path_linear(path: *const lv_anim_path_t, a: *const lv_anim_t) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_ease_in( path: *const lv_anim_path_t, a: *const lv_anim_t, ) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_ease_out( path: *const lv_anim_path_t, a: *const lv_anim_t, ) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_ease_in_out( path: *const lv_anim_path_t, a: *const lv_anim_t, ) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_overshoot( path: *const lv_anim_path_t, a: *const lv_anim_t, ) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_bounce(path: *const lv_anim_path_t, a: *const lv_anim_t) -> lv_anim_value_t; } extern "C" { pub fn lv_anim_path_step(path: *const lv_anim_path_t, a: *const lv_anim_t) -> lv_anim_value_t; } extern "C" { pub static lv_anim_path_def: lv_anim_path_t; } extern "C" { pub fn lv_debug_check_null(p: *const cty::c_void) -> bool; } extern "C" { pub fn lv_debug_check_mem_integrity() -> bool; } extern "C" { pub fn lv_debug_check_str(str_: *const cty::c_void) -> bool; } extern "C" { pub fn lv_debug_log_error(msg: *const cty::c_char, value: u64); } pub const LV_DRAW_MASK_RES_TRANSP: cty::c_uint = 0; pub const LV_DRAW_MASK_RES_FULL_COVER: cty::c_uint = 1; pub const LV_DRAW_MASK_RES_CHANGED: cty::c_uint = 2; pub const LV_DRAW_MASK_RES_UNKNOWN: cty::c_uint = 3; pub type _bindgen_ty_12 = cty::c_uint; pub type lv_draw_mask_res_t = u8; pub const LV_DRAW_MASK_TYPE_LINE: cty::c_uint = 0; pub const LV_DRAW_MASK_TYPE_ANGLE: cty::c_uint = 1; pub const LV_DRAW_MASK_TYPE_RADIUS: cty::c_uint = 2; pub const LV_DRAW_MASK_TYPE_FADE: cty::c_uint = 3; pub const LV_DRAW_MASK_TYPE_MAP: cty::c_uint = 4; pub type _bindgen_ty_13 = cty::c_uint; pub type lv_draw_mask_type_t = u8; pub const LV_DRAW_MASK_LINE_SIDE_LEFT: cty::c_uint = 0; pub const LV_DRAW_MASK_LINE_SIDE_RIGHT: cty::c_uint = 1; pub const LV_DRAW_MASK_LINE_SIDE_TOP: cty::c_uint = 2; pub const LV_DRAW_MASK_LINE_SIDE_BOTTOM: cty::c_uint = 3; pub type _bindgen_ty_14 = cty::c_uint; pub type lv_draw_mask_xcb_t = ::core::option::Option< unsafe extern "C" fn( mask_buf: *mut lv_opa_t, abs_x: lv_coord_t, abs_y: lv_coord_t, len: lv_coord_t, p: *mut cty::c_void, ) -> lv_draw_mask_res_t, >; pub type lv_draw_mask_line_side_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_common_dsc_t { pub cb: lv_draw_mask_xcb_t, pub type_: lv_draw_mask_type_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_line_param_t { pub dsc: lv_draw_mask_common_dsc_t, pub cfg: lv_draw_mask_line_param_t__bindgen_ty_1, pub origo: lv_point_t, pub xy_steep: i32, pub yx_steep: i32, pub steep: i32, pub spx: i32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_line_param_t__bindgen_ty_1 { pub p1: lv_point_t, pub p2: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u8, } impl lv_draw_mask_line_param_t__bindgen_ty_1 { #[inline] pub fn side(&self) -> lv_draw_mask_line_side_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_side(&mut self, val: lv_draw_mask_line_side_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1(side: lv_draw_mask_line_side_t) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let side: u8 = unsafe { ::core::mem::transmute(side) }; side as u64 }); __bindgen_bitfield_unit } } impl lv_draw_mask_line_param_t { #[inline] pub fn flat(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_flat(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn inv(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_inv(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(flat: u8, inv: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let flat: u8 = unsafe { ::core::mem::transmute(flat) }; flat as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let inv: u8 = unsafe { ::core::mem::transmute(inv) }; inv as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_angle_param_t { pub dsc: lv_draw_mask_common_dsc_t, pub cfg: lv_draw_mask_angle_param_t__bindgen_ty_1, pub start_line: lv_draw_mask_line_param_t, pub end_line: lv_draw_mask_line_param_t, pub delta_deg: u16, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_angle_param_t__bindgen_ty_1 { pub vertex_p: lv_point_t, pub start_angle: lv_coord_t, pub end_angle: lv_coord_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_radius_param_t { pub dsc: lv_draw_mask_common_dsc_t, pub cfg: lv_draw_mask_radius_param_t__bindgen_ty_1, pub y_prev: i32, pub y_prev_x: lv_sqrt_res_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_radius_param_t__bindgen_ty_1 { pub rect: lv_area_t, pub radius: lv_coord_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u8, } impl lv_draw_mask_radius_param_t__bindgen_ty_1 { #[inline] pub fn outer(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_outer(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(outer: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let outer: u8 = unsafe { ::core::mem::transmute(outer) }; outer as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_fade_param_t { pub dsc: lv_draw_mask_common_dsc_t, pub cfg: lv_draw_mask_fade_param_t__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_mask_fade_param_t__bindgen_ty_1 { pub coords: lv_area_t, pub y_top: lv_coord_t, pub y_bottom: lv_coord_t, pub opa_top: lv_opa_t, pub opa_bottom: lv_opa_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_draw_mask_map_param_t { pub dsc: lv_draw_mask_common_dsc_t, pub cfg: _lv_draw_mask_map_param_t__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_draw_mask_map_param_t__bindgen_ty_1 { pub coords: lv_area_t, pub map: *const lv_opa_t, } pub type lv_draw_mask_map_param_t = _lv_draw_mask_map_param_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_draw_mask_saved_t { pub param: *mut cty::c_void, pub custom_id: *mut cty::c_void, } pub type _lv_draw_mask_saved_arr_t = [_lv_draw_mask_saved_t; 16usize]; extern "C" { pub fn lv_draw_mask_add(param: *mut cty::c_void, custom_id: *mut cty::c_void) -> i16; } extern "C" { pub fn lv_draw_mask_apply( mask_buf: *mut lv_opa_t, abs_x: lv_coord_t, abs_y: lv_coord_t, len: lv_coord_t, ) -> lv_draw_mask_res_t; } extern "C" { pub fn lv_draw_mask_remove_id(id: i16) -> *mut cty::c_void; } extern "C" { pub fn lv_draw_mask_remove_custom(custom_id: *mut cty::c_void) -> *mut cty::c_void; } extern "C" { pub fn lv_draw_mask_get_cnt() -> u8; } extern "C" { pub fn lv_draw_mask_line_points_init( param: *mut lv_draw_mask_line_param_t, p1x: lv_coord_t, p1y: lv_coord_t, p2x: lv_coord_t, p2y: lv_coord_t, side: lv_draw_mask_line_side_t, ); } extern "C" { pub fn lv_draw_mask_line_angle_init( param: *mut lv_draw_mask_line_param_t, p1x: lv_coord_t, py: lv_coord_t, angle: i16, side: lv_draw_mask_line_side_t, ); } extern "C" { pub fn lv_draw_mask_angle_init( param: *mut lv_draw_mask_angle_param_t, vertex_x: lv_coord_t, vertex_y: lv_coord_t, start_angle: lv_coord_t, end_angle: lv_coord_t, ); } extern "C" { pub fn lv_draw_mask_radius_init( param: *mut lv_draw_mask_radius_param_t, rect: *const lv_area_t, radius: lv_coord_t, inv: bool, ); } extern "C" { pub fn lv_draw_mask_fade_init( param: *mut lv_draw_mask_fade_param_t, coords: *const lv_area_t, opa_top: lv_opa_t, y_top: lv_coord_t, opa_bottom: lv_opa_t, y_bottom: lv_coord_t, ); } extern "C" { pub fn lv_draw_mask_map_init( param: *mut lv_draw_mask_map_param_t, coords: *const lv_area_t, map: *const lv_opa_t, ); } pub const LV_BLEND_MODE_NORMAL: cty::c_uint = 0; pub const LV_BLEND_MODE_ADDITIVE: cty::c_uint = 1; pub const LV_BLEND_MODE_SUBTRACTIVE: cty::c_uint = 2; pub type _bindgen_ty_15 = cty::c_uint; pub type lv_blend_mode_t = u8; extern "C" { pub fn _lv_blend_fill( clip_area: *const lv_area_t, fill_area: *const lv_area_t, color: lv_color_t, mask: *mut lv_opa_t, mask_res: lv_draw_mask_res_t, opa: lv_opa_t, mode: lv_blend_mode_t, ); } extern "C" { pub fn _lv_blend_map( clip_area: *const lv_area_t, map_area: *const lv_area_t, map_buf: *const lv_color_t, mask: *mut lv_opa_t, mask_res: lv_draw_mask_res_t, opa: lv_opa_t, mode: lv_blend_mode_t, ); } pub const LV_BORDER_SIDE_NONE: cty::c_uint = 0; pub const LV_BORDER_SIDE_BOTTOM: cty::c_uint = 1; pub const LV_BORDER_SIDE_TOP: cty::c_uint = 2; pub const LV_BORDER_SIDE_LEFT: cty::c_uint = 4; pub const LV_BORDER_SIDE_RIGHT: cty::c_uint = 8; pub const LV_BORDER_SIDE_FULL: cty::c_uint = 15; pub const LV_BORDER_SIDE_INTERNAL: cty::c_uint = 16; pub const _LV_BORDER_SIDE_LAST: cty::c_uint = 17; pub type _bindgen_ty_16 = cty::c_uint; pub type lv_border_side_t = u8; pub const LV_GRAD_DIR_NONE: cty::c_uint = 0; pub const LV_GRAD_DIR_VER: cty::c_uint = 1; pub const LV_GRAD_DIR_HOR: cty::c_uint = 2; pub const _LV_GRAD_DIR_LAST: cty::c_uint = 3; pub type _bindgen_ty_17 = cty::c_uint; pub type lv_grad_dir_t = u8; pub const LV_TEXT_DECOR_NONE: cty::c_uint = 0; pub const LV_TEXT_DECOR_UNDERLINE: cty::c_uint = 1; pub const LV_TEXT_DECOR_STRIKETHROUGH: cty::c_uint = 2; pub const _LV_TEXT_DECOR_LAST: cty::c_uint = 3; pub type _bindgen_ty_18 = cty::c_uint; pub type lv_text_decor_t = u8; pub type lv_style_attr_t = u8; pub const LV_STYLE_RADIUS: cty::c_uint = 1; pub const LV_STYLE_CLIP_CORNER: cty::c_uint = 2; pub const LV_STYLE_SIZE: cty::c_uint = 3; pub const LV_STYLE_TRANSFORM_WIDTH: cty::c_uint = 4; pub const LV_STYLE_TRANSFORM_HEIGHT: cty::c_uint = 5; pub const LV_STYLE_TRANSFORM_ANGLE: cty::c_uint = 6; pub const LV_STYLE_TRANSFORM_ZOOM: cty::c_uint = 7; pub const LV_STYLE_OPA_SCALE: cty::c_uint = 32780; pub const LV_STYLE_PAD_TOP: cty::c_uint = 16; pub const LV_STYLE_PAD_BOTTOM: cty::c_uint = 17; pub const LV_STYLE_PAD_LEFT: cty::c_uint = 18; pub const LV_STYLE_PAD_RIGHT: cty::c_uint = 19; pub const LV_STYLE_PAD_INNER: cty::c_uint = 20; pub const LV_STYLE_MARGIN_TOP: cty::c_uint = 21; pub const LV_STYLE_MARGIN_BOTTOM: cty::c_uint = 22; pub const LV_STYLE_MARGIN_LEFT: cty::c_uint = 23; pub const LV_STYLE_MARGIN_RIGHT: cty::c_uint = 24; pub const LV_STYLE_BG_BLEND_MODE: cty::c_uint = 32; pub const LV_STYLE_BG_MAIN_STOP: cty::c_uint = 33; pub const LV_STYLE_BG_GRAD_STOP: cty::c_uint = 34; pub const LV_STYLE_BG_GRAD_DIR: cty::c_uint = 35; pub const LV_STYLE_BG_COLOR: cty::c_uint = 41; pub const LV_STYLE_BG_GRAD_COLOR: cty::c_uint = 42; pub const LV_STYLE_BG_OPA: cty::c_uint = 44; pub const LV_STYLE_BORDER_WIDTH: cty::c_uint = 48; pub const LV_STYLE_BORDER_SIDE: cty::c_uint = 49; pub const LV_STYLE_BORDER_BLEND_MODE: cty::c_uint = 50; pub const LV_STYLE_BORDER_POST: cty::c_uint = 51; pub const LV_STYLE_BORDER_COLOR: cty::c_uint = 57; pub const LV_STYLE_BORDER_OPA: cty::c_uint = 60; pub const LV_STYLE_OUTLINE_WIDTH: cty::c_uint = 64; pub const LV_STYLE_OUTLINE_PAD: cty::c_uint = 65; pub const LV_STYLE_OUTLINE_BLEND_MODE: cty::c_uint = 66; pub const LV_STYLE_OUTLINE_COLOR: cty::c_uint = 73; pub const LV_STYLE_OUTLINE_OPA: cty::c_uint = 76; pub const LV_STYLE_SHADOW_WIDTH: cty::c_uint = 80; pub const LV_STYLE_SHADOW_OFS_X: cty::c_uint = 81; pub const LV_STYLE_SHADOW_OFS_Y: cty::c_uint = 82; pub const LV_STYLE_SHADOW_SPREAD: cty::c_uint = 83; pub const LV_STYLE_SHADOW_BLEND_MODE: cty::c_uint = 84; pub const LV_STYLE_SHADOW_COLOR: cty::c_uint = 89; pub const LV_STYLE_SHADOW_OPA: cty::c_uint = 92; pub const LV_STYLE_PATTERN_BLEND_MODE: cty::c_uint = 96; pub const LV_STYLE_PATTERN_REPEAT: cty::c_uint = 97; pub const LV_STYLE_PATTERN_RECOLOR: cty::c_uint = 105; pub const LV_STYLE_PATTERN_OPA: cty::c_uint = 108; pub const LV_STYLE_PATTERN_RECOLOR_OPA: cty::c_uint = 109; pub const LV_STYLE_PATTERN_IMAGE: cty::c_uint = 110; pub const LV_STYLE_VALUE_LETTER_SPACE: cty::c_uint = 112; pub const LV_STYLE_VALUE_LINE_SPACE: cty::c_uint = 113; pub const LV_STYLE_VALUE_BLEND_MODE: cty::c_uint = 114; pub const LV_STYLE_VALUE_OFS_X: cty::c_uint = 115; pub const LV_STYLE_VALUE_OFS_Y: cty::c_uint = 116; pub const LV_STYLE_VALUE_ALIGN: cty::c_uint = 117; pub const LV_STYLE_VALUE_COLOR: cty::c_uint = 121; pub const LV_STYLE_VALUE_OPA: cty::c_uint = 124; pub const LV_STYLE_VALUE_FONT: cty::c_uint = 126; pub const LV_STYLE_VALUE_STR: cty::c_uint = 127; pub const LV_STYLE_TEXT_LETTER_SPACE: cty::c_uint = 32896; pub const LV_STYLE_TEXT_LINE_SPACE: cty::c_uint = 32897; pub const LV_STYLE_TEXT_DECOR: cty::c_uint = 32898; pub const LV_STYLE_TEXT_BLEND_MODE: cty::c_uint = 32899; pub const LV_STYLE_TEXT_COLOR: cty::c_uint = 32905; pub const LV_STYLE_TEXT_SEL_COLOR: cty::c_uint = 32906; pub const LV_STYLE_TEXT_SEL_BG_COLOR: cty::c_uint = 32907; pub const LV_STYLE_TEXT_OPA: cty::c_uint = 32908; pub const LV_STYLE_TEXT_FONT: cty::c_uint = 32910; pub const LV_STYLE_LINE_WIDTH: cty::c_uint = 144; pub const LV_STYLE_LINE_BLEND_MODE: cty::c_uint = 145; pub const LV_STYLE_LINE_DASH_WIDTH: cty::c_uint = 146; pub const LV_STYLE_LINE_DASH_GAP: cty::c_uint = 147; pub const LV_STYLE_LINE_ROUNDED: cty::c_uint = 148; pub const LV_STYLE_LINE_COLOR: cty::c_uint = 153; pub const LV_STYLE_LINE_OPA: cty::c_uint = 156; pub const LV_STYLE_IMAGE_BLEND_MODE: cty::c_uint = 32928; pub const LV_STYLE_IMAGE_RECOLOR: cty::c_uint = 32937; pub const LV_STYLE_IMAGE_OPA: cty::c_uint = 32940; pub const LV_STYLE_IMAGE_RECOLOR_OPA: cty::c_uint = 32941; pub const LV_STYLE_TRANSITION_TIME: cty::c_uint = 176; pub const LV_STYLE_TRANSITION_DELAY: cty::c_uint = 177; pub const LV_STYLE_TRANSITION_PROP_1: cty::c_uint = 178; pub const LV_STYLE_TRANSITION_PROP_2: cty::c_uint = 179; pub const LV_STYLE_TRANSITION_PROP_3: cty::c_uint = 180; pub const LV_STYLE_TRANSITION_PROP_4: cty::c_uint = 181; pub const LV_STYLE_TRANSITION_PROP_5: cty::c_uint = 182; pub const LV_STYLE_TRANSITION_PROP_6: cty::c_uint = 183; pub const LV_STYLE_TRANSITION_PATH: cty::c_uint = 190; pub const LV_STYLE_SCALE_WIDTH: cty::c_uint = 192; pub const LV_STYLE_SCALE_BORDER_WIDTH: cty::c_uint = 193; pub const LV_STYLE_SCALE_END_BORDER_WIDTH: cty::c_uint = 194; pub const LV_STYLE_SCALE_END_LINE_WIDTH: cty::c_uint = 195; pub const LV_STYLE_SCALE_GRAD_COLOR: cty::c_uint = 201; pub const LV_STYLE_SCALE_END_COLOR: cty::c_uint = 202; pub type _bindgen_ty_19 = cty::c_uint; pub type lv_style_property_t = u16; pub type lv_style_state_t = u16; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_style_t { pub map: *mut u8, } pub type lv_style_int_t = i16; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_style_list_t { pub style_list: *mut *mut lv_style_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub __bindgen_padding_0: u32, } impl lv_style_list_t { #[inline] pub fn style_cnt(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 6u8) as u32) } } #[inline] pub fn set_style_cnt(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 6u8, val as u64) } } #[inline] pub fn has_local(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) } } #[inline] pub fn set_has_local(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(6usize, 1u8, val as u64) } } #[inline] pub fn has_trans(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) } } #[inline] pub fn set_has_trans(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(7usize, 1u8, val as u64) } } #[inline] pub fn skip_trans(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) } } #[inline] pub fn set_skip_trans(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 1u8, val as u64) } } #[inline] pub fn ignore_trans(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) } } #[inline] pub fn set_ignore_trans(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(9usize, 1u8, val as u64) } } #[inline] pub fn valid_cache(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) } } #[inline] pub fn set_valid_cache(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(10usize, 1u8, val as u64) } } #[inline] pub fn ignore_cache(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) } } #[inline] pub fn set_ignore_cache(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(11usize, 1u8, val as u64) } } #[inline] pub fn radius_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) } } #[inline] pub fn set_radius_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(12usize, 1u8, val as u64) } } #[inline] pub fn opa_scale_cover(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) } } #[inline] pub fn set_opa_scale_cover(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(13usize, 1u8, val as u64) } } #[inline] pub fn clip_corner_off(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) } } #[inline] pub fn set_clip_corner_off(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(14usize, 1u8, val as u64) } } #[inline] pub fn transform_all_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) } } #[inline] pub fn set_transform_all_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(15usize, 1u8, val as u64) } } #[inline] pub fn pad_all_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) } } #[inline] pub fn set_pad_all_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(16usize, 1u8, val as u64) } } #[inline] pub fn margin_all_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) } } #[inline] pub fn set_margin_all_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(17usize, 1u8, val as u64) } } #[inline] pub fn blend_mode_all_normal(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) } } #[inline] pub fn set_blend_mode_all_normal(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(18usize, 1u8, val as u64) } } #[inline] pub fn bg_opa_transp(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) } } #[inline] pub fn set_bg_opa_transp(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(19usize, 1u8, val as u64) } } #[inline] pub fn bg_opa_cover(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) } } #[inline] pub fn set_bg_opa_cover(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(20usize, 1u8, val as u64) } } #[inline] pub fn border_width_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) } } #[inline] pub fn set_border_width_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(21usize, 1u8, val as u64) } } #[inline] pub fn border_side_full(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) } } #[inline] pub fn set_border_side_full(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(22usize, 1u8, val as u64) } } #[inline] pub fn border_post_off(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) } } #[inline] pub fn set_border_post_off(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(23usize, 1u8, val as u64) } } #[inline] pub fn outline_width_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) } } #[inline] pub fn set_outline_width_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 1u8, val as u64) } } #[inline] pub fn pattern_img_null(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) } } #[inline] pub fn set_pattern_img_null(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(25usize, 1u8, val as u64) } } #[inline] pub fn shadow_width_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) } } #[inline] pub fn set_shadow_width_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(26usize, 1u8, val as u64) } } #[inline] pub fn value_txt_str(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) } } #[inline] pub fn set_value_txt_str(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(27usize, 1u8, val as u64) } } #[inline] pub fn img_recolor_opa_transp(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) } } #[inline] pub fn set_img_recolor_opa_transp(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(28usize, 1u8, val as u64) } } #[inline] pub fn text_space_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u32) } } #[inline] pub fn set_text_space_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(29usize, 1u8, val as u64) } } #[inline] pub fn text_decor_none(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(30usize, 1u8) as u32) } } #[inline] pub fn set_text_decor_none(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(30usize, 1u8, val as u64) } } #[inline] pub fn text_font_normal(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u32) } } #[inline] pub fn set_text_font_normal(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(31usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( style_cnt: u32, has_local: u32, has_trans: u32, skip_trans: u32, ignore_trans: u32, valid_cache: u32, ignore_cache: u32, radius_zero: u32, opa_scale_cover: u32, clip_corner_off: u32, transform_all_zero: u32, pad_all_zero: u32, margin_all_zero: u32, blend_mode_all_normal: u32, bg_opa_transp: u32, bg_opa_cover: u32, border_width_zero: u32, border_side_full: u32, border_post_off: u32, outline_width_zero: u32, pattern_img_null: u32, shadow_width_zero: u32, value_txt_str: u32, img_recolor_opa_transp: u32, text_space_zero: u32, text_decor_none: u32, text_font_normal: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 6u8, { let style_cnt: u32 = unsafe { ::core::mem::transmute(style_cnt) }; style_cnt as u64 }); __bindgen_bitfield_unit.set(6usize, 1u8, { let has_local: u32 = unsafe { ::core::mem::transmute(has_local) }; has_local as u64 }); __bindgen_bitfield_unit.set(7usize, 1u8, { let has_trans: u32 = unsafe { ::core::mem::transmute(has_trans) }; has_trans as u64 }); __bindgen_bitfield_unit.set(8usize, 1u8, { let skip_trans: u32 = unsafe { ::core::mem::transmute(skip_trans) }; skip_trans as u64 }); __bindgen_bitfield_unit.set(9usize, 1u8, { let ignore_trans: u32 = unsafe { ::core::mem::transmute(ignore_trans) }; ignore_trans as u64 }); __bindgen_bitfield_unit.set(10usize, 1u8, { let valid_cache: u32 = unsafe { ::core::mem::transmute(valid_cache) }; valid_cache as u64 }); __bindgen_bitfield_unit.set(11usize, 1u8, { let ignore_cache: u32 = unsafe { ::core::mem::transmute(ignore_cache) }; ignore_cache as u64 }); __bindgen_bitfield_unit.set(12usize, 1u8, { let radius_zero: u32 = unsafe { ::core::mem::transmute(radius_zero) }; radius_zero as u64 }); __bindgen_bitfield_unit.set(13usize, 1u8, { let opa_scale_cover: u32 = unsafe { ::core::mem::transmute(opa_scale_cover) }; opa_scale_cover as u64 }); __bindgen_bitfield_unit.set(14usize, 1u8, { let clip_corner_off: u32 = unsafe { ::core::mem::transmute(clip_corner_off) }; clip_corner_off as u64 }); __bindgen_bitfield_unit.set(15usize, 1u8, { let transform_all_zero: u32 = unsafe { ::core::mem::transmute(transform_all_zero) }; transform_all_zero as u64 }); __bindgen_bitfield_unit.set(16usize, 1u8, { let pad_all_zero: u32 = unsafe { ::core::mem::transmute(pad_all_zero) }; pad_all_zero as u64 }); __bindgen_bitfield_unit.set(17usize, 1u8, { let margin_all_zero: u32 = unsafe { ::core::mem::transmute(margin_all_zero) }; margin_all_zero as u64 }); __bindgen_bitfield_unit.set(18usize, 1u8, { let blend_mode_all_normal: u32 = unsafe { ::core::mem::transmute(blend_mode_all_normal) }; blend_mode_all_normal as u64 }); __bindgen_bitfield_unit.set(19usize, 1u8, { let bg_opa_transp: u32 = unsafe { ::core::mem::transmute(bg_opa_transp) }; bg_opa_transp as u64 }); __bindgen_bitfield_unit.set(20usize, 1u8, { let bg_opa_cover: u32 = unsafe { ::core::mem::transmute(bg_opa_cover) }; bg_opa_cover as u64 }); __bindgen_bitfield_unit.set(21usize, 1u8, { let border_width_zero: u32 = unsafe { ::core::mem::transmute(border_width_zero) }; border_width_zero as u64 }); __bindgen_bitfield_unit.set(22usize, 1u8, { let border_side_full: u32 = unsafe { ::core::mem::transmute(border_side_full) }; border_side_full as u64 }); __bindgen_bitfield_unit.set(23usize, 1u8, { let border_post_off: u32 = unsafe { ::core::mem::transmute(border_post_off) }; border_post_off as u64 }); __bindgen_bitfield_unit.set(24usize, 1u8, { let outline_width_zero: u32 = unsafe { ::core::mem::transmute(outline_width_zero) }; outline_width_zero as u64 }); __bindgen_bitfield_unit.set(25usize, 1u8, { let pattern_img_null: u32 = unsafe { ::core::mem::transmute(pattern_img_null) }; pattern_img_null as u64 }); __bindgen_bitfield_unit.set(26usize, 1u8, { let shadow_width_zero: u32 = unsafe { ::core::mem::transmute(shadow_width_zero) }; shadow_width_zero as u64 }); __bindgen_bitfield_unit.set(27usize, 1u8, { let value_txt_str: u32 = unsafe { ::core::mem::transmute(value_txt_str) }; value_txt_str as u64 }); __bindgen_bitfield_unit.set(28usize, 1u8, { let img_recolor_opa_transp: u32 = unsafe { ::core::mem::transmute(img_recolor_opa_transp) }; img_recolor_opa_transp as u64 }); __bindgen_bitfield_unit.set(29usize, 1u8, { let text_space_zero: u32 = unsafe { ::core::mem::transmute(text_space_zero) }; text_space_zero as u64 }); __bindgen_bitfield_unit.set(30usize, 1u8, { let text_decor_none: u32 = unsafe { ::core::mem::transmute(text_decor_none) }; text_decor_none as u64 }); __bindgen_bitfield_unit.set(31usize, 1u8, { let text_font_normal: u32 = unsafe { ::core::mem::transmute(text_font_normal) }; text_font_normal as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_style_init(style: *mut lv_style_t); } extern "C" { pub fn lv_style_copy(style_dest: *mut lv_style_t, style_src: *const lv_style_t); } extern "C" { pub fn lv_style_list_init(list: *mut lv_style_list_t); } extern "C" { pub fn lv_style_list_copy(list_dest: *mut lv_style_list_t, list_src: *const lv_style_list_t); } extern "C" { pub fn _lv_style_list_add_style(list: *mut lv_style_list_t, style: *mut lv_style_t); } extern "C" { pub fn _lv_style_list_remove_style(list: *mut lv_style_list_t, style: *mut lv_style_t); } extern "C" { pub fn _lv_style_list_reset(style_list: *mut lv_style_list_t); } extern "C" { pub fn lv_style_reset(style: *mut lv_style_t); } extern "C" { pub fn _lv_style_get_mem_size(style: *const lv_style_t) -> u16; } extern "C" { pub fn lv_style_remove_prop(style: *mut lv_style_t, prop: lv_style_property_t) -> bool; } extern "C" { pub fn _lv_style_set_int( style: *mut lv_style_t, prop: lv_style_property_t, value: lv_style_int_t, ); } extern "C" { pub fn _lv_style_set_color( style: *mut lv_style_t, prop: lv_style_property_t, color: lv_color_t, ); } extern "C" { pub fn _lv_style_set_opa(style: *mut lv_style_t, prop: lv_style_property_t, opa: lv_opa_t); } extern "C" { pub fn _lv_style_set_ptr( style: *mut lv_style_t, prop: lv_style_property_t, p: *const cty::c_void, ); } extern "C" { pub fn _lv_style_get_int( style: *const lv_style_t, prop: lv_style_property_t, res: *mut cty::c_void, ) -> i16; } extern "C" { pub fn _lv_style_get_color( style: *const lv_style_t, prop: lv_style_property_t, res: *mut cty::c_void, ) -> i16; } extern "C" { pub fn _lv_style_get_opa( style: *const lv_style_t, prop: lv_style_property_t, res: *mut cty::c_void, ) -> i16; } extern "C" { pub fn _lv_style_get_ptr( style: *const lv_style_t, prop: lv_style_property_t, res: *mut cty::c_void, ) -> i16; } extern "C" { pub fn lv_style_list_get_local_style(list: *mut lv_style_list_t) -> *mut lv_style_t; } extern "C" { pub fn _lv_style_list_get_transition_style(list: *mut lv_style_list_t) -> *mut lv_style_t; } extern "C" { pub fn _lv_style_list_add_trans_style(list: *mut lv_style_list_t) -> *mut lv_style_t; } extern "C" { pub fn _lv_style_list_set_local_int( list: *mut lv_style_list_t, prop: lv_style_property_t, value: lv_style_int_t, ); } extern "C" { pub fn _lv_style_list_set_local_color( list: *mut lv_style_list_t, prop: lv_style_property_t, value: lv_color_t, ); } extern "C" { pub fn _lv_style_list_set_local_opa( list: *mut lv_style_list_t, prop: lv_style_property_t, value: lv_opa_t, ); } extern "C" { pub fn _lv_style_list_set_local_ptr( list: *mut lv_style_list_t, prop: lv_style_property_t, value: *const cty::c_void, ); } extern "C" { pub fn _lv_style_list_get_int( list: *mut lv_style_list_t, prop: lv_style_property_t, res: *mut lv_style_int_t, ) -> lv_res_t; } extern "C" { pub fn _lv_style_list_get_color( list: *mut lv_style_list_t, prop: lv_style_property_t, res: *mut lv_color_t, ) -> lv_res_t; } extern "C" { pub fn _lv_style_list_get_opa( list: *mut lv_style_list_t, prop: lv_style_property_t, res: *mut lv_opa_t, ) -> lv_res_t; } extern "C" { pub fn _lv_style_list_get_ptr( list: *mut lv_style_list_t, prop: lv_style_property_t, res: *mut *const cty::c_void, ) -> lv_res_t; } extern "C" { pub fn lv_debug_check_style(style: *const lv_style_t) -> bool; } extern "C" { pub fn lv_debug_check_style_list(list: *const lv_style_list_t) -> bool; } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_draw_rect_dsc_t { pub radius: lv_style_int_t, pub bg_color: lv_color_t, pub bg_grad_color: lv_color_t, pub bg_grad_dir: lv_grad_dir_t, pub bg_main_color_stop: lv_style_int_t, pub bg_grad_color_stop: lv_style_int_t, pub bg_opa: lv_opa_t, pub bg_blend_mode: lv_blend_mode_t, pub border_color: lv_color_t, pub border_width: lv_style_int_t, pub border_side: lv_style_int_t, pub border_opa: lv_opa_t, pub border_blend_mode: lv_blend_mode_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub outline_color: lv_color_t, pub outline_width: lv_style_int_t, pub outline_pad: lv_style_int_t, pub outline_opa: lv_opa_t, pub outline_blend_mode: lv_blend_mode_t, pub shadow_color: lv_color_t, pub shadow_width: lv_style_int_t, pub shadow_ofs_x: lv_style_int_t, pub shadow_ofs_y: lv_style_int_t, pub shadow_spread: lv_style_int_t, pub shadow_opa: lv_opa_t, pub shadow_blend_mode: lv_blend_mode_t, pub pattern_image: *const cty::c_void, pub pattern_font: *const lv_font_t, pub pattern_recolor: lv_color_t, pub pattern_opa: lv_opa_t, pub pattern_recolor_opa: lv_opa_t, pub _bitfield_align_2: [u8; 0], pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>, pub pattern_blend_mode: lv_blend_mode_t, pub value_str: *const cty::c_char, pub value_font: *const lv_font_t, pub value_opa: lv_opa_t, pub value_color: lv_color_t, pub value_ofs_x: lv_style_int_t, pub value_ofs_y: lv_style_int_t, pub value_letter_space: lv_style_int_t, pub value_line_space: lv_style_int_t, pub value_align: lv_align_t, pub value_blend_mode: lv_blend_mode_t, } impl lv_draw_rect_dsc_t { #[inline] pub fn border_post(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_border_post(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(border_post: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let border_post: u8 = unsafe { ::core::mem::transmute(border_post) }; border_post as u64 }); __bindgen_bitfield_unit } #[inline] pub fn pattern_repeat(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 1u8) as u8) } } #[inline] pub fn set_pattern_repeat(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_2.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_2(pattern_repeat: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let pattern_repeat: u8 = unsafe { ::core::mem::transmute(pattern_repeat) }; pattern_repeat as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_draw_rect_dsc_init(dsc: *mut lv_draw_rect_dsc_t); } extern "C" { pub fn lv_draw_rect( coords: *const lv_area_t, mask: *const lv_area_t, dsc: *const lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_draw_px( point: *const lv_point_t, clip_area: *const lv_area_t, style: *const lv_style_t, ); } pub const LV_BIDI_DIR_LTR: cty::c_uint = 0; pub const LV_BIDI_DIR_RTL: cty::c_uint = 1; pub const LV_BIDI_DIR_AUTO: cty::c_uint = 2; pub const LV_BIDI_DIR_INHERIT: cty::c_uint = 3; pub const LV_BIDI_DIR_NEUTRAL: cty::c_uint = 32; pub const LV_BIDI_DIR_WEAK: cty::c_uint = 33; pub type _bindgen_ty_20 = cty::c_uint; pub type lv_bidi_dir_t = u8; pub type va_list = __builtin_va_list; pub type __gnuc_va_list = __builtin_va_list; extern "C" { pub fn lv_snprintf( buffer: *mut cty::c_char, count: size_t, format: *const cty::c_char, ... ) -> cty::c_int; } extern "C" { pub fn lv_vsnprintf( buffer: *mut cty::c_char, count: size_t, format: *const cty::c_char, va: *mut __va_list_tag, ) -> cty::c_int; } pub const LV_TXT_FLAG_NONE: cty::c_uint = 0; pub const LV_TXT_FLAG_RECOLOR: cty::c_uint = 1; pub const LV_TXT_FLAG_EXPAND: cty::c_uint = 2; pub const LV_TXT_FLAG_CENTER: cty::c_uint = 4; pub const LV_TXT_FLAG_RIGHT: cty::c_uint = 8; pub const LV_TXT_FLAG_FIT: cty::c_uint = 16; pub type _bindgen_ty_21 = cty::c_uint; pub type lv_txt_flag_t = u8; pub const LV_TXT_CMD_STATE_WAIT: cty::c_uint = 0; pub const LV_TXT_CMD_STATE_PAR: cty::c_uint = 1; pub const LV_TXT_CMD_STATE_IN: cty::c_uint = 2; pub type _bindgen_ty_22 = cty::c_uint; pub type lv_txt_cmd_state_t = u8; extern "C" { pub fn _lv_txt_get_size( size_res: *mut lv_point_t, text: *const cty::c_char, font: *const lv_font_t, letter_space: lv_coord_t, line_space: lv_coord_t, max_width: lv_coord_t, flag: lv_txt_flag_t, ); } extern "C" { pub fn _lv_txt_get_next_line( txt: *const cty::c_char, font: *const lv_font_t, letter_space: lv_coord_t, max_width: lv_coord_t, flag: lv_txt_flag_t, ) -> u32; } extern "C" { pub fn _lv_txt_get_width( txt: *const cty::c_char, length: u32, font: *const lv_font_t, letter_space: lv_coord_t, flag: lv_txt_flag_t, ) -> lv_coord_t; } extern "C" { pub fn _lv_txt_is_cmd(state: *mut lv_txt_cmd_state_t, c: u32) -> bool; } extern "C" { pub fn _lv_txt_ins(txt_buf: *mut cty::c_char, pos: u32, ins_txt: *const cty::c_char); } extern "C" { pub fn _lv_txt_cut(txt: *mut cty::c_char, pos: u32, len: u32); } extern "C" { pub fn _lv_txt_set_text_vfmt( fmt: *const cty::c_char, ap: *mut __va_list_tag, ) -> *mut cty::c_char; } extern "C" { pub static mut _lv_txt_encoded_size: ::core::option::Option u8>; } extern "C" { pub static mut _lv_txt_unicode_to_encoded: ::core::option::Option u32>; } extern "C" { pub static mut _lv_txt_encoded_conv_wc: ::core::option::Option u32>; } extern "C" { pub static mut _lv_txt_encoded_next: ::core::option::Option< unsafe extern "C" fn(arg1: *const cty::c_char, arg2: *mut u32) -> u32, >; } extern "C" { pub static mut _lv_txt_encoded_prev: ::core::option::Option< unsafe extern "C" fn(arg1: *const cty::c_char, arg2: *mut u32) -> u32, >; } extern "C" { pub static mut _lv_txt_encoded_get_byte_id: ::core::option::Option u32>; } extern "C" { pub static mut _lv_txt_encoded_get_char_id: ::core::option::Option u32>; } extern "C" { pub static mut _lv_txt_get_encoded_length: ::core::option::Option u32>; } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_draw_label_dsc_t { pub color: lv_color_t, pub sel_color: lv_color_t, pub sel_bg_color: lv_color_t, pub font: *const lv_font_t, pub opa: lv_opa_t, pub line_space: lv_style_int_t, pub letter_space: lv_style_int_t, pub sel_start: u32, pub sel_end: u32, pub ofs_x: lv_coord_t, pub ofs_y: lv_coord_t, pub bidi_dir: lv_bidi_dir_t, pub flag: lv_txt_flag_t, pub decor: lv_text_decor_t, pub blend_mode: lv_blend_mode_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_draw_label_hint_t { pub line_start: i32, pub y: i32, pub coord_y: i32, } extern "C" { pub fn lv_draw_label_dsc_init(dsc: *mut lv_draw_label_dsc_t); } extern "C" { pub fn lv_draw_label( coords: *const lv_area_t, mask: *const lv_area_t, dsc: *const lv_draw_label_dsc_t, txt: *const cty::c_char, hint: *mut lv_draw_label_hint_t, ); } extern "C" { pub static mut _lv_bpp2_opa_table: [u8; 0usize]; } extern "C" { pub static mut _lv_bpp3_opa_table: [u8; 0usize]; } extern "C" { pub static mut _lv_bpp1_opa_table: [u8; 0usize]; } extern "C" { pub static mut _lv_bpp4_opa_table: [u8; 0usize]; } extern "C" { pub static mut _lv_bpp8_opa_table: [u8; 0usize]; } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_draw_line_dsc_t { pub color: lv_color_t, pub width: lv_style_int_t, pub dash_width: lv_style_int_t, pub dash_gap: lv_style_int_t, pub opa: lv_opa_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_draw_line_dsc_t { #[inline] pub fn blend_mode(&self) -> lv_blend_mode_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_blend_mode(&mut self, val: lv_blend_mode_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn round_start(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_round_start(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn round_end(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_round_end(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn raw_end(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) } } #[inline] pub fn set_raw_end(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( blend_mode: lv_blend_mode_t, round_start: u8, round_end: u8, raw_end: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let blend_mode: u8 = unsafe { ::core::mem::transmute(blend_mode) }; blend_mode as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let round_start: u8 = unsafe { ::core::mem::transmute(round_start) }; round_start as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let round_end: u8 = unsafe { ::core::mem::transmute(round_end) }; round_end as u64 }); __bindgen_bitfield_unit.set(4usize, 1u8, { let raw_end: u8 = unsafe { ::core::mem::transmute(raw_end) }; raw_end as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_draw_line( point1: *const lv_point_t, point2: *const lv_point_t, clip: *const lv_area_t, dsc: *const lv_draw_line_dsc_t, ); } extern "C" { pub fn lv_draw_line_dsc_init(dsc: *mut lv_draw_line_dsc_t); } pub const LV_IMG_CF_UNKNOWN: cty::c_uint = 0; pub const LV_IMG_CF_RAW: cty::c_uint = 1; pub const LV_IMG_CF_RAW_ALPHA: cty::c_uint = 2; pub const LV_IMG_CF_RAW_CHROMA_KEYED: cty::c_uint = 3; pub const LV_IMG_CF_TRUE_COLOR: cty::c_uint = 4; pub const LV_IMG_CF_TRUE_COLOR_ALPHA: cty::c_uint = 5; pub const LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED: cty::c_uint = 6; pub const LV_IMG_CF_INDEXED_1BIT: cty::c_uint = 7; pub const LV_IMG_CF_INDEXED_2BIT: cty::c_uint = 8; pub const LV_IMG_CF_INDEXED_4BIT: cty::c_uint = 9; pub const LV_IMG_CF_INDEXED_8BIT: cty::c_uint = 10; pub const LV_IMG_CF_ALPHA_1BIT: cty::c_uint = 11; pub const LV_IMG_CF_ALPHA_2BIT: cty::c_uint = 12; pub const LV_IMG_CF_ALPHA_4BIT: cty::c_uint = 13; pub const LV_IMG_CF_ALPHA_8BIT: cty::c_uint = 14; pub const LV_IMG_CF_RESERVED_15: cty::c_uint = 15; pub const LV_IMG_CF_RESERVED_16: cty::c_uint = 16; pub const LV_IMG_CF_RESERVED_17: cty::c_uint = 17; pub const LV_IMG_CF_RESERVED_18: cty::c_uint = 18; pub const LV_IMG_CF_RESERVED_19: cty::c_uint = 19; pub const LV_IMG_CF_RESERVED_20: cty::c_uint = 20; pub const LV_IMG_CF_RESERVED_21: cty::c_uint = 21; pub const LV_IMG_CF_RESERVED_22: cty::c_uint = 22; pub const LV_IMG_CF_RESERVED_23: cty::c_uint = 23; pub const LV_IMG_CF_USER_ENCODED_0: cty::c_uint = 24; pub const LV_IMG_CF_USER_ENCODED_1: cty::c_uint = 25; pub const LV_IMG_CF_USER_ENCODED_2: cty::c_uint = 26; pub const LV_IMG_CF_USER_ENCODED_3: cty::c_uint = 27; pub const LV_IMG_CF_USER_ENCODED_4: cty::c_uint = 28; pub const LV_IMG_CF_USER_ENCODED_5: cty::c_uint = 29; pub const LV_IMG_CF_USER_ENCODED_6: cty::c_uint = 30; pub const LV_IMG_CF_USER_ENCODED_7: cty::c_uint = 31; pub type _bindgen_ty_23 = cty::c_uint; pub type lv_img_cf_t = u8; #[repr(C)] #[repr(align(4))] #[derive(Debug, Copy, Clone)] pub struct lv_img_header_t { pub _bitfield_align_1: [u16; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, } impl lv_img_header_t { #[inline] pub fn cf(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 5u8) as u32) } } #[inline] pub fn set_cf(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 5u8, val as u64) } } #[inline] pub fn always_zero(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 3u8) as u32) } } #[inline] pub fn set_always_zero(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 3u8, val as u64) } } #[inline] pub fn reserved(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 2u8) as u32) } } #[inline] pub fn set_reserved(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 2u8, val as u64) } } #[inline] pub fn w(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 11u8) as u32) } } #[inline] pub fn set_w(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(10usize, 11u8, val as u64) } } #[inline] pub fn h(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 11u8) as u32) } } #[inline] pub fn set_h(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(21usize, 11u8, val as u64) } } #[inline] pub fn new_bitfield_1( cf: u32, always_zero: u32, reserved: u32, w: u32, h: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 5u8, { let cf: u32 = unsafe { ::core::mem::transmute(cf) }; cf as u64 }); __bindgen_bitfield_unit.set(5usize, 3u8, { let always_zero: u32 = unsafe { ::core::mem::transmute(always_zero) }; always_zero as u64 }); __bindgen_bitfield_unit.set(8usize, 2u8, { let reserved: u32 = unsafe { ::core::mem::transmute(reserved) }; reserved as u64 }); __bindgen_bitfield_unit.set(10usize, 11u8, { let w: u32 = unsafe { ::core::mem::transmute(w) }; w as u64 }); __bindgen_bitfield_unit.set(21usize, 11u8, { let h: u32 = unsafe { ::core::mem::transmute(h) }; h as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_img_dsc_t { pub header: lv_img_header_t, pub data_size: u32, pub data: *const u8, } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_img_transform_dsc_t { pub cfg: lv_img_transform_dsc_t__bindgen_ty_1, pub res: lv_img_transform_dsc_t__bindgen_ty_2, pub tmp: lv_img_transform_dsc_t__bindgen_ty_3, } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_img_transform_dsc_t__bindgen_ty_1 { pub src: *const cty::c_void, pub src_w: lv_coord_t, pub src_h: lv_coord_t, pub pivot_x: lv_coord_t, pub pivot_y: lv_coord_t, pub angle: i16, pub zoom: u16, pub color: lv_color_t, pub cf: lv_img_cf_t, pub antialias: bool, } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_img_transform_dsc_t__bindgen_ty_2 { pub color: lv_color_t, pub opa: lv_opa_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_img_transform_dsc_t__bindgen_ty_3 { pub img_dsc: lv_img_dsc_t, pub pivot_x_256: i32, pub pivot_y_256: i32, pub sinma: i32, pub cosma: i32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub zoom_inv: u32, pub xs: lv_coord_t, pub ys: lv_coord_t, pub xs_int: lv_coord_t, pub ys_int: lv_coord_t, pub pxi: u32, pub px_size: u8, } impl lv_img_transform_dsc_t__bindgen_ty_3 { #[inline] pub fn chroma_keyed(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_chroma_keyed(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn has_alpha(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_has_alpha(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn native_color(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_native_color(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( chroma_keyed: u8, has_alpha: u8, native_color: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let chroma_keyed: u8 = unsafe { ::core::mem::transmute(chroma_keyed) }; chroma_keyed as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let has_alpha: u8 = unsafe { ::core::mem::transmute(has_alpha) }; has_alpha as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let native_color: u8 = unsafe { ::core::mem::transmute(native_color) }; native_color as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_img_buf_alloc(w: lv_coord_t, h: lv_coord_t, cf: lv_img_cf_t) -> *mut lv_img_dsc_t; } extern "C" { pub fn lv_img_buf_get_px_color( dsc: *mut lv_img_dsc_t, x: lv_coord_t, y: lv_coord_t, color: lv_color_t, ) -> lv_color_t; } extern "C" { pub fn lv_img_buf_get_px_alpha( dsc: *mut lv_img_dsc_t, x: lv_coord_t, y: lv_coord_t, ) -> lv_opa_t; } extern "C" { pub fn lv_img_buf_set_px_color( dsc: *mut lv_img_dsc_t, x: lv_coord_t, y: lv_coord_t, c: lv_color_t, ); } extern "C" { pub fn lv_img_buf_set_px_alpha( dsc: *mut lv_img_dsc_t, x: lv_coord_t, y: lv_coord_t, opa: lv_opa_t, ); } extern "C" { pub fn lv_img_buf_set_palette(dsc: *mut lv_img_dsc_t, id: u8, c: lv_color_t); } extern "C" { pub fn lv_img_buf_free(dsc: *mut lv_img_dsc_t); } extern "C" { pub fn lv_img_buf_get_img_size(w: lv_coord_t, h: lv_coord_t, cf: lv_img_cf_t) -> u32; } extern "C" { pub fn _lv_img_buf_transform_init(dsc: *mut lv_img_transform_dsc_t); } extern "C" { pub fn _lv_img_buf_transform_anti_alias(dsc: *mut lv_img_transform_dsc_t) -> bool; } extern "C" { pub fn _lv_img_buf_get_transformed_area( res: *mut lv_area_t, w: lv_coord_t, h: lv_coord_t, angle: i16, zoom: u16, pivot: *const lv_point_t, ); } pub const LV_FS_RES_OK: cty::c_uint = 0; pub const LV_FS_RES_HW_ERR: cty::c_uint = 1; pub const LV_FS_RES_FS_ERR: cty::c_uint = 2; pub const LV_FS_RES_NOT_EX: cty::c_uint = 3; pub const LV_FS_RES_FULL: cty::c_uint = 4; pub const LV_FS_RES_LOCKED: cty::c_uint = 5; pub const LV_FS_RES_DENIED: cty::c_uint = 6; pub const LV_FS_RES_BUSY: cty::c_uint = 7; pub const LV_FS_RES_TOUT: cty::c_uint = 8; pub const LV_FS_RES_NOT_IMP: cty::c_uint = 9; pub const LV_FS_RES_OUT_OF_MEM: cty::c_uint = 10; pub const LV_FS_RES_INV_PARAM: cty::c_uint = 11; pub const LV_FS_RES_UNKNOWN: cty::c_uint = 12; pub type _bindgen_ty_24 = cty::c_uint; pub type lv_fs_res_t = u8; pub const LV_FS_MODE_WR: cty::c_uint = 1; pub const LV_FS_MODE_RD: cty::c_uint = 2; pub type _bindgen_ty_25 = cty::c_uint; pub type lv_fs_mode_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_fs_drv_t { pub letter: cty::c_char, pub file_size: u16, pub rddir_size: u16, pub ready_cb: ::core::option::Option bool>, pub open_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, path: *const cty::c_char, mode: lv_fs_mode_t, ) -> lv_fs_res_t, >, pub close_cb: ::core::option::Option< unsafe extern "C" fn(drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void) -> lv_fs_res_t, >, pub remove_cb: ::core::option::Option< unsafe extern "C" fn(drv: *mut _lv_fs_drv_t, fn_: *const cty::c_char) -> lv_fs_res_t, >, pub read_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, buf: *mut cty::c_void, btr: u32, br: *mut u32, ) -> lv_fs_res_t, >, pub write_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, buf: *const cty::c_void, btw: u32, bw: *mut u32, ) -> lv_fs_res_t, >, pub seek_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, pos: u32, ) -> lv_fs_res_t, >, pub tell_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, pos_p: *mut u32, ) -> lv_fs_res_t, >, pub trunc_cb: ::core::option::Option< unsafe extern "C" fn(drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void) -> lv_fs_res_t, >, pub size_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, file_p: *mut cty::c_void, size_p: *mut u32, ) -> lv_fs_res_t, >, pub rename_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, oldname: *const cty::c_char, newname: *const cty::c_char, ) -> lv_fs_res_t, >, pub free_space_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, total_p: *mut u32, free_p: *mut u32, ) -> lv_fs_res_t, >, pub dir_open_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, rddir_p: *mut cty::c_void, path: *const cty::c_char, ) -> lv_fs_res_t, >, pub dir_read_cb: ::core::option::Option< unsafe extern "C" fn( drv: *mut _lv_fs_drv_t, rddir_p: *mut cty::c_void, fn_: *mut cty::c_char, ) -> lv_fs_res_t, >, pub dir_close_cb: ::core::option::Option< unsafe extern "C" fn(drv: *mut _lv_fs_drv_t, rddir_p: *mut cty::c_void) -> lv_fs_res_t, >, pub user_data: lv_fs_drv_user_data_t, } pub type lv_fs_drv_t = _lv_fs_drv_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_fs_file_t { pub file_d: *mut cty::c_void, pub drv: *mut lv_fs_drv_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_fs_dir_t { pub dir_d: *mut cty::c_void, pub drv: *mut lv_fs_drv_t, } extern "C" { pub fn _lv_fs_init(); } extern "C" { pub fn lv_fs_drv_init(drv: *mut lv_fs_drv_t); } extern "C" { pub fn lv_fs_drv_register(drv_p: *mut lv_fs_drv_t); } extern "C" { pub fn lv_fs_get_drv(letter: cty::c_char) -> *mut lv_fs_drv_t; } extern "C" { pub fn lv_fs_is_ready(letter: cty::c_char) -> bool; } extern "C" { pub fn lv_fs_open( file_p: *mut lv_fs_file_t, path: *const cty::c_char, mode: lv_fs_mode_t, ) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_close(file_p: *mut lv_fs_file_t) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_remove(path: *const cty::c_char) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_read( file_p: *mut lv_fs_file_t, buf: *mut cty::c_void, btr: u32, br: *mut u32, ) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_write( file_p: *mut lv_fs_file_t, buf: *const cty::c_void, btw: u32, bw: *mut u32, ) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_seek(file_p: *mut lv_fs_file_t, pos: u32) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_tell(file_p: *mut lv_fs_file_t, pos: *mut u32) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_trunc(file_p: *mut lv_fs_file_t) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_size(file_p: *mut lv_fs_file_t, size: *mut u32) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_rename(oldname: *const cty::c_char, newname: *const cty::c_char) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_dir_open(rddir_p: *mut lv_fs_dir_t, path: *const cty::c_char) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_dir_read(rddir_p: *mut lv_fs_dir_t, fn_: *mut cty::c_char) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_dir_close(rddir_p: *mut lv_fs_dir_t) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_free_space( letter: cty::c_char, total_p: *mut u32, free_p: *mut u32, ) -> lv_fs_res_t; } extern "C" { pub fn lv_fs_get_letters(buf: *mut cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn lv_fs_get_ext(fn_: *const cty::c_char) -> *const cty::c_char; } extern "C" { pub fn lv_fs_up(path: *mut cty::c_char) -> *mut cty::c_char; } extern "C" { pub fn lv_fs_get_last(path: *const cty::c_char) -> *const cty::c_char; } pub const LV_IMG_SRC_VARIABLE: cty::c_uint = 0; pub const LV_IMG_SRC_FILE: cty::c_uint = 1; pub const LV_IMG_SRC_SYMBOL: cty::c_uint = 2; pub const LV_IMG_SRC_UNKNOWN: cty::c_uint = 3; pub type _bindgen_ty_26 = cty::c_uint; pub type lv_img_src_t = u8; pub type lv_img_decoder_info_f_t = ::core::option::Option< unsafe extern "C" fn( decoder: *mut _lv_img_decoder, src: *const cty::c_void, header: *mut lv_img_header_t, ) -> lv_res_t, >; pub type lv_img_decoder_open_f_t = ::core::option::Option< unsafe extern "C" fn(decoder: *mut _lv_img_decoder, dsc: *mut _lv_img_decoder_dsc) -> lv_res_t, >; pub type lv_img_decoder_read_line_f_t = ::core::option::Option< unsafe extern "C" fn( decoder: *mut _lv_img_decoder, dsc: *mut _lv_img_decoder_dsc, x: lv_coord_t, y: lv_coord_t, len: lv_coord_t, buf: *mut u8, ) -> lv_res_t, >; pub type lv_img_decoder_close_f_t = ::core::option::Option< unsafe extern "C" fn(decoder: *mut _lv_img_decoder, dsc: *mut _lv_img_decoder_dsc), >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_img_decoder { pub info_cb: lv_img_decoder_info_f_t, pub open_cb: lv_img_decoder_open_f_t, pub read_line_cb: lv_img_decoder_read_line_f_t, pub close_cb: lv_img_decoder_close_f_t, pub user_data: lv_img_decoder_user_data_t, } pub type lv_img_decoder_t = _lv_img_decoder; #[repr(C)] #[derive(Copy, Clone)] pub struct _lv_img_decoder_dsc { pub decoder: *mut lv_img_decoder_t, pub src: *const cty::c_void, pub color: lv_color_t, pub src_type: lv_img_src_t, pub header: lv_img_header_t, pub img_data: *const u8, pub time_to_open: u32, pub error_msg: *const cty::c_char, pub user_data: *mut cty::c_void, } pub type lv_img_decoder_dsc_t = _lv_img_decoder_dsc; extern "C" { pub fn _lv_img_decoder_init(); } extern "C" { pub fn lv_img_decoder_get_info( src: *const cty::c_char, header: *mut lv_img_header_t, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_open( dsc: *mut lv_img_decoder_dsc_t, src: *const cty::c_void, color: lv_color_t, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_read_line( dsc: *mut lv_img_decoder_dsc_t, x: lv_coord_t, y: lv_coord_t, len: lv_coord_t, buf: *mut u8, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_close(dsc: *mut lv_img_decoder_dsc_t); } extern "C" { pub fn lv_img_decoder_create() -> *mut lv_img_decoder_t; } extern "C" { pub fn lv_img_decoder_delete(decoder: *mut lv_img_decoder_t); } extern "C" { pub fn lv_img_decoder_set_info_cb( decoder: *mut lv_img_decoder_t, info_cb: lv_img_decoder_info_f_t, ); } extern "C" { pub fn lv_img_decoder_set_open_cb( decoder: *mut lv_img_decoder_t, open_cb: lv_img_decoder_open_f_t, ); } extern "C" { pub fn lv_img_decoder_set_read_line_cb( decoder: *mut lv_img_decoder_t, read_line_cb: lv_img_decoder_read_line_f_t, ); } extern "C" { pub fn lv_img_decoder_set_close_cb( decoder: *mut lv_img_decoder_t, close_cb: lv_img_decoder_close_f_t, ); } extern "C" { pub fn lv_img_decoder_built_in_info( decoder: *mut lv_img_decoder_t, src: *const cty::c_void, header: *mut lv_img_header_t, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_built_in_open( decoder: *mut lv_img_decoder_t, dsc: *mut lv_img_decoder_dsc_t, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_built_in_read_line( decoder: *mut lv_img_decoder_t, dsc: *mut lv_img_decoder_dsc_t, x: lv_coord_t, y: lv_coord_t, len: lv_coord_t, buf: *mut u8, ) -> lv_res_t; } extern "C" { pub fn lv_img_decoder_built_in_close( decoder: *mut lv_img_decoder_t, dsc: *mut lv_img_decoder_dsc_t, ); } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_draw_img_dsc_t { pub opa: lv_opa_t, pub angle: u16, pub pivot: lv_point_t, pub zoom: u16, pub recolor_opa: lv_opa_t, pub recolor: lv_color_t, pub blend_mode: lv_blend_mode_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_draw_img_dsc_t { #[inline] pub fn antialias(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_antialias(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(antialias: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let antialias: u8 = unsafe { ::core::mem::transmute(antialias) }; antialias as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_draw_img_dsc_init(dsc: *mut lv_draw_img_dsc_t); } extern "C" { pub fn lv_draw_img( coords: *const lv_area_t, mask: *const lv_area_t, src: *const cty::c_void, dsc: *const lv_draw_img_dsc_t, ); } extern "C" { pub fn lv_img_src_get_type(src: *const cty::c_void) -> lv_img_src_t; } extern "C" { pub fn lv_img_cf_get_px_size(cf: lv_img_cf_t) -> u8; } extern "C" { pub fn lv_img_cf_is_chroma_keyed(cf: lv_img_cf_t) -> bool; } extern "C" { pub fn lv_img_cf_has_alpha(cf: lv_img_cf_t) -> bool; } pub const LV_DESIGN_DRAW_MAIN: cty::c_uint = 0; pub const LV_DESIGN_DRAW_POST: cty::c_uint = 1; pub const LV_DESIGN_COVER_CHK: cty::c_uint = 2; pub type _bindgen_ty_27 = cty::c_uint; pub type lv_design_mode_t = u8; pub const LV_DESIGN_RES_OK: cty::c_uint = 0; pub const LV_DESIGN_RES_COVER: cty::c_uint = 1; pub const LV_DESIGN_RES_NOT_COVER: cty::c_uint = 2; pub const LV_DESIGN_RES_MASKED: cty::c_uint = 3; pub type _bindgen_ty_28 = cty::c_uint; pub type lv_design_res_t = u8; pub type lv_design_cb_t = ::core::option::Option< unsafe extern "C" fn( obj: *mut _lv_obj_t, clip_area: *const lv_area_t, mode: lv_design_mode_t, ) -> lv_design_res_t, >; pub const LV_EVENT_PRESSED: cty::c_uint = 0; pub const LV_EVENT_PRESSING: cty::c_uint = 1; pub const LV_EVENT_PRESS_LOST: cty::c_uint = 2; pub const LV_EVENT_SHORT_CLICKED: cty::c_uint = 3; pub const LV_EVENT_LONG_PRESSED: cty::c_uint = 4; pub const LV_EVENT_LONG_PRESSED_REPEAT: cty::c_uint = 5; pub const LV_EVENT_CLICKED: cty::c_uint = 6; pub const LV_EVENT_RELEASED: cty::c_uint = 7; pub const LV_EVENT_DRAG_BEGIN: cty::c_uint = 8; pub const LV_EVENT_DRAG_END: cty::c_uint = 9; pub const LV_EVENT_DRAG_THROW_BEGIN: cty::c_uint = 10; pub const LV_EVENT_GESTURE: cty::c_uint = 11; pub const LV_EVENT_KEY: cty::c_uint = 12; pub const LV_EVENT_FOCUSED: cty::c_uint = 13; pub const LV_EVENT_DEFOCUSED: cty::c_uint = 14; pub const LV_EVENT_LEAVE: cty::c_uint = 15; pub const LV_EVENT_VALUE_CHANGED: cty::c_uint = 16; pub const LV_EVENT_INSERT: cty::c_uint = 17; pub const LV_EVENT_REFRESH: cty::c_uint = 18; pub const LV_EVENT_APPLY: cty::c_uint = 19; pub const LV_EVENT_CANCEL: cty::c_uint = 20; pub const LV_EVENT_DELETE: cty::c_uint = 21; pub const _LV_EVENT_LAST: cty::c_uint = 22; pub type _bindgen_ty_29 = cty::c_uint; pub type lv_event_t = u8; pub type lv_event_cb_t = ::core::option::Option; pub const LV_SIGNAL_CLEANUP: cty::c_uint = 0; pub const LV_SIGNAL_CHILD_CHG: cty::c_uint = 1; pub const LV_SIGNAL_COORD_CHG: cty::c_uint = 2; pub const LV_SIGNAL_PARENT_SIZE_CHG: cty::c_uint = 3; pub const LV_SIGNAL_STYLE_CHG: cty::c_uint = 4; pub const LV_SIGNAL_BASE_DIR_CHG: cty::c_uint = 5; pub const LV_SIGNAL_REFR_EXT_DRAW_PAD: cty::c_uint = 6; pub const LV_SIGNAL_GET_TYPE: cty::c_uint = 7; pub const LV_SIGNAL_GET_STYLE: cty::c_uint = 8; pub const LV_SIGNAL_GET_STATE_DSC: cty::c_uint = 9; pub const LV_SIGNAL_HIT_TEST: cty::c_uint = 10; pub const LV_SIGNAL_PRESSED: cty::c_uint = 11; pub const LV_SIGNAL_PRESSING: cty::c_uint = 12; pub const LV_SIGNAL_PRESS_LOST: cty::c_uint = 13; pub const LV_SIGNAL_RELEASED: cty::c_uint = 14; pub const LV_SIGNAL_LONG_PRESS: cty::c_uint = 15; pub const LV_SIGNAL_LONG_PRESS_REP: cty::c_uint = 16; pub const LV_SIGNAL_DRAG_BEGIN: cty::c_uint = 17; pub const LV_SIGNAL_DRAG_THROW_BEGIN: cty::c_uint = 18; pub const LV_SIGNAL_DRAG_END: cty::c_uint = 19; pub const LV_SIGNAL_GESTURE: cty::c_uint = 20; pub const LV_SIGNAL_LEAVE: cty::c_uint = 21; pub const LV_SIGNAL_FOCUS: cty::c_uint = 22; pub const LV_SIGNAL_DEFOCUS: cty::c_uint = 23; pub const LV_SIGNAL_CONTROL: cty::c_uint = 24; pub const LV_SIGNAL_GET_EDITABLE: cty::c_uint = 25; pub type _bindgen_ty_30 = cty::c_uint; pub type lv_signal_t = u8; pub type lv_signal_cb_t = ::core::option::Option< unsafe extern "C" fn( obj: *mut _lv_obj_t, sign: lv_signal_t, param: *mut cty::c_void, ) -> lv_res_t, >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_realign_t { pub base: *const _lv_obj_t, pub xofs: lv_coord_t, pub yofs: lv_coord_t, pub align: lv_align_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u16, } impl lv_realign_t { #[inline] pub fn auto_realign(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_auto_realign(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn mid_align(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_mid_align(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(auto_realign: u8, mid_align: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let auto_realign: u8 = unsafe { ::core::mem::transmute(auto_realign) }; auto_realign as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let mid_align: u8 = unsafe { ::core::mem::transmute(mid_align) }; mid_align as u64 }); __bindgen_bitfield_unit } } pub const LV_PROTECT_NONE: cty::c_uint = 0; pub const LV_PROTECT_CHILD_CHG: cty::c_uint = 1; pub const LV_PROTECT_PARENT: cty::c_uint = 2; pub const LV_PROTECT_POS: cty::c_uint = 4; pub const LV_PROTECT_FOLLOW: cty::c_uint = 8; pub const LV_PROTECT_PRESS_LOST: cty::c_uint = 16; pub const LV_PROTECT_CLICK_FOCUS: cty::c_uint = 32; pub const LV_PROTECT_EVENT_TO_DISABLED: cty::c_uint = 64; pub type _bindgen_ty_31 = cty::c_uint; pub type lv_protect_t = u8; pub const LV_STATE_DEFAULT: cty::c_uint = 0; pub const LV_STATE_CHECKED: cty::c_uint = 1; pub const LV_STATE_FOCUSED: cty::c_uint = 2; pub const LV_STATE_EDITED: cty::c_uint = 4; pub const LV_STATE_HOVERED: cty::c_uint = 8; pub const LV_STATE_PRESSED: cty::c_uint = 16; pub const LV_STATE_DISABLED: cty::c_uint = 32; pub type _bindgen_ty_32 = cty::c_uint; pub type lv_state_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_obj_t { pub parent: *mut _lv_obj_t, pub child_ll: lv_ll_t, pub coords: lv_area_t, pub event_cb: lv_event_cb_t, pub signal_cb: lv_signal_cb_t, pub design_cb: lv_design_cb_t, pub ext_attr: *mut cty::c_void, pub style_list: lv_style_list_t, pub ext_click_pad_hor: u8, pub ext_click_pad_ver: u8, pub ext_draw_pad: lv_coord_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub group_p: *mut cty::c_void, pub protect: u8, pub state: lv_state_t, pub realign: lv_realign_t, pub user_data: lv_obj_user_data_t, } impl _lv_obj_t { #[inline] pub fn click(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_click(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn drag(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_drag(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn drag_throw(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_drag_throw(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn drag_parent(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_drag_parent(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn hidden(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) } } #[inline] pub fn set_hidden(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 1u8, val as u64) } } #[inline] pub fn top(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u8) } } #[inline] pub fn set_top(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 1u8, val as u64) } } #[inline] pub fn parent_event(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u8) } } #[inline] pub fn set_parent_event(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(6usize, 1u8, val as u64) } } #[inline] pub fn adv_hittest(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u8) } } #[inline] pub fn set_adv_hittest(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(7usize, 1u8, val as u64) } } #[inline] pub fn gesture_parent(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) } } #[inline] pub fn set_gesture_parent(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 1u8, val as u64) } } #[inline] pub fn focus_parent(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u8) } } #[inline] pub fn set_focus_parent(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(9usize, 1u8, val as u64) } } #[inline] pub fn drag_dir(&self) -> lv_drag_dir_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 3u8) as u8) } } #[inline] pub fn set_drag_dir(&mut self, val: lv_drag_dir_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(10usize, 3u8, val as u64) } } #[inline] pub fn base_dir(&self) -> lv_bidi_dir_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 2u8) as u8) } } #[inline] pub fn set_base_dir(&mut self, val: lv_bidi_dir_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(13usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1( click: u8, drag: u8, drag_throw: u8, drag_parent: u8, hidden: u8, top: u8, parent_event: u8, adv_hittest: u8, gesture_parent: u8, focus_parent: u8, drag_dir: lv_drag_dir_t, base_dir: lv_bidi_dir_t, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let click: u8 = unsafe { ::core::mem::transmute(click) }; click as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let drag: u8 = unsafe { ::core::mem::transmute(drag) }; drag as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let drag_throw: u8 = unsafe { ::core::mem::transmute(drag_throw) }; drag_throw as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let drag_parent: u8 = unsafe { ::core::mem::transmute(drag_parent) }; drag_parent as u64 }); __bindgen_bitfield_unit.set(4usize, 1u8, { let hidden: u8 = unsafe { ::core::mem::transmute(hidden) }; hidden as u64 }); __bindgen_bitfield_unit.set(5usize, 1u8, { let top: u8 = unsafe { ::core::mem::transmute(top) }; top as u64 }); __bindgen_bitfield_unit.set(6usize, 1u8, { let parent_event: u8 = unsafe { ::core::mem::transmute(parent_event) }; parent_event as u64 }); __bindgen_bitfield_unit.set(7usize, 1u8, { let adv_hittest: u8 = unsafe { ::core::mem::transmute(adv_hittest) }; adv_hittest as u64 }); __bindgen_bitfield_unit.set(8usize, 1u8, { let gesture_parent: u8 = unsafe { ::core::mem::transmute(gesture_parent) }; gesture_parent as u64 }); __bindgen_bitfield_unit.set(9usize, 1u8, { let focus_parent: u8 = unsafe { ::core::mem::transmute(focus_parent) }; focus_parent as u64 }); __bindgen_bitfield_unit.set(10usize, 3u8, { let drag_dir: u8 = unsafe { ::core::mem::transmute(drag_dir) }; drag_dir as u64 }); __bindgen_bitfield_unit.set(13usize, 2u8, { let base_dir: u8 = unsafe { ::core::mem::transmute(base_dir) }; base_dir as u64 }); __bindgen_bitfield_unit } } pub type lv_obj_t = _lv_obj_t; pub const LV_OBJ_PART_MAIN: cty::c_uint = 0; pub const _LV_OBJ_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const _LV_OBJ_PART_REAL_LAST: cty::c_uint = 64; pub const LV_OBJ_PART_ALL: cty::c_uint = 255; pub type _bindgen_ty_33 = cty::c_uint; pub type lv_obj_part_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_obj_type_t { pub type_: [*const cty::c_char; 8usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_hit_test_info_t { pub point: *mut lv_point_t, pub result: bool, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_get_style_info_t { pub part: u8, pub result: *mut lv_style_list_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_get_state_info_t { pub part: u8, pub result: lv_state_t, } extern "C" { pub fn lv_init(); } extern "C" { pub fn lv_deinit(); } extern "C" { pub fn lv_obj_create(parent: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_del(obj: *mut lv_obj_t) -> lv_res_t; } extern "C" { pub fn lv_obj_del_anim_ready_cb(a: *mut lv_anim_t); } extern "C" { pub fn lv_obj_del_async(obj: *mut _lv_obj_t); } extern "C" { pub fn lv_obj_clean(obj: *mut lv_obj_t); } extern "C" { pub fn lv_obj_invalidate_area(obj: *const lv_obj_t, area: *const lv_area_t); } extern "C" { pub fn lv_obj_invalidate(obj: *const lv_obj_t); } extern "C" { pub fn lv_obj_area_is_visible(obj: *const lv_obj_t, area: *mut lv_area_t) -> bool; } extern "C" { pub fn lv_obj_is_visible(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_set_parent(obj: *mut lv_obj_t, parent: *mut lv_obj_t); } extern "C" { pub fn lv_obj_move_foreground(obj: *mut lv_obj_t); } extern "C" { pub fn lv_obj_move_background(obj: *mut lv_obj_t); } extern "C" { pub fn lv_obj_set_pos(obj: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t); } extern "C" { pub fn lv_obj_set_x(obj: *mut lv_obj_t, x: lv_coord_t); } extern "C" { pub fn lv_obj_set_y(obj: *mut lv_obj_t, y: lv_coord_t); } extern "C" { pub fn lv_obj_set_size(obj: *mut lv_obj_t, w: lv_coord_t, h: lv_coord_t); } extern "C" { pub fn lv_obj_set_width(obj: *mut lv_obj_t, w: lv_coord_t); } extern "C" { pub fn lv_obj_set_height(obj: *mut lv_obj_t, h: lv_coord_t); } extern "C" { pub fn lv_obj_set_width_fit(obj: *mut lv_obj_t, w: lv_coord_t); } extern "C" { pub fn lv_obj_set_height_fit(obj: *mut lv_obj_t, h: lv_coord_t); } extern "C" { pub fn lv_obj_set_width_margin(obj: *mut lv_obj_t, w: lv_coord_t); } extern "C" { pub fn lv_obj_set_height_margin(obj: *mut lv_obj_t, h: lv_coord_t); } extern "C" { pub fn lv_obj_align( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, x_ofs: lv_coord_t, y_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_align_x( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, x_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_align_y( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, y_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_align_mid( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, x_ofs: lv_coord_t, y_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_align_mid_x( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, x_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_align_mid_y( obj: *mut lv_obj_t, base: *const lv_obj_t, align: lv_align_t, y_ofs: lv_coord_t, ); } extern "C" { pub fn lv_obj_realign(obj: *mut lv_obj_t); } extern "C" { pub fn lv_obj_set_auto_realign(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_ext_click_area( obj: *mut lv_obj_t, left: lv_coord_t, right: lv_coord_t, top: lv_coord_t, bottom: lv_coord_t, ); } extern "C" { pub fn lv_obj_add_style(obj: *mut lv_obj_t, part: u8, style: *mut lv_style_t); } extern "C" { pub fn lv_obj_remove_style(obj: *mut lv_obj_t, part: u8, style: *mut lv_style_t); } extern "C" { pub fn lv_obj_clean_style_list(obj: *mut lv_obj_t, part: u8); } extern "C" { pub fn lv_obj_reset_style_list(obj: *mut lv_obj_t, part: u8); } extern "C" { pub fn lv_obj_refresh_style(obj: *mut lv_obj_t, part: u8, prop: lv_style_property_t); } extern "C" { pub fn lv_obj_report_style_mod(style: *mut lv_style_t); } extern "C" { pub fn _lv_obj_set_style_local_color( obj: *mut lv_obj_t, type_: u8, prop: lv_style_property_t, color: lv_color_t, ); } extern "C" { pub fn _lv_obj_set_style_local_int( obj: *mut lv_obj_t, type_: u8, prop: lv_style_property_t, value: lv_style_int_t, ); } extern "C" { pub fn _lv_obj_set_style_local_opa( obj: *mut lv_obj_t, type_: u8, prop: lv_style_property_t, opa: lv_opa_t, ); } extern "C" { pub fn _lv_obj_set_style_local_ptr( obj: *mut lv_obj_t, type_: u8, prop: lv_style_property_t, value: *const cty::c_void, ); } extern "C" { pub fn lv_obj_remove_style_local_prop( obj: *mut lv_obj_t, part: u8, prop: lv_style_property_t, ) -> bool; } extern "C" { pub fn _lv_obj_disable_style_caching(obj: *mut lv_obj_t, dis: bool); } extern "C" { pub fn lv_obj_set_hidden(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_adv_hittest(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_click(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_top(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_drag(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_drag_dir(obj: *mut lv_obj_t, drag_dir: lv_drag_dir_t); } extern "C" { pub fn lv_obj_set_drag_throw(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_drag_parent(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_focus_parent(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_gesture_parent(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_parent_event(obj: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_obj_set_base_dir(obj: *mut lv_obj_t, dir: lv_bidi_dir_t); } extern "C" { pub fn lv_obj_add_protect(obj: *mut lv_obj_t, prot: u8); } extern "C" { pub fn lv_obj_clear_protect(obj: *mut lv_obj_t, prot: u8); } extern "C" { pub fn lv_obj_set_state(obj: *mut lv_obj_t, state: lv_state_t); } extern "C" { pub fn lv_obj_add_state(obj: *mut lv_obj_t, state: lv_state_t); } extern "C" { pub fn lv_obj_clear_state(obj: *mut lv_obj_t, state: lv_state_t); } extern "C" { pub fn lv_obj_finish_transitions(obj: *mut lv_obj_t, part: u8); } extern "C" { pub fn lv_obj_set_event_cb(obj: *mut lv_obj_t, event_cb: lv_event_cb_t); } extern "C" { pub fn lv_event_send( obj: *mut lv_obj_t, event: lv_event_t, data: *const cty::c_void, ) -> lv_res_t; } extern "C" { pub fn lv_event_send_refresh(obj: *mut lv_obj_t) -> lv_res_t; } extern "C" { pub fn lv_event_send_refresh_recursive(obj: *mut lv_obj_t); } extern "C" { pub fn lv_event_send_func( event_xcb: lv_event_cb_t, obj: *mut lv_obj_t, event: lv_event_t, data: *const cty::c_void, ) -> lv_res_t; } extern "C" { pub fn lv_event_get_data() -> *const cty::c_void; } extern "C" { pub fn lv_obj_set_signal_cb(obj: *mut lv_obj_t, signal_cb: lv_signal_cb_t); } extern "C" { pub fn lv_signal_send( obj: *mut lv_obj_t, signal: lv_signal_t, param: *mut cty::c_void, ) -> lv_res_t; } extern "C" { pub fn lv_obj_set_design_cb(obj: *mut lv_obj_t, design_cb: lv_design_cb_t); } extern "C" { pub fn lv_obj_allocate_ext_attr(obj: *mut lv_obj_t, ext_size: u16) -> *mut cty::c_void; } extern "C" { pub fn lv_obj_refresh_ext_draw_pad(obj: *mut lv_obj_t); } extern "C" { pub fn lv_obj_get_screen(obj: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_get_disp(obj: *const lv_obj_t) -> *mut lv_disp_t; } extern "C" { pub fn lv_obj_get_parent(obj: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_get_child(obj: *const lv_obj_t, child: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_get_child_back(obj: *const lv_obj_t, child: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_count_children(obj: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_obj_count_children_recursive(obj: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_obj_get_coords(obj: *const lv_obj_t, cords_p: *mut lv_area_t); } extern "C" { pub fn lv_obj_get_inner_coords(obj: *const lv_obj_t, coords_p: *mut lv_area_t); } extern "C" { pub fn lv_obj_get_x(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_y(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_width(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_height(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_width_fit(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_height_fit(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_height_margin(obj: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_width_margin(obj: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_width_grid(obj: *mut lv_obj_t, div: u8, span: u8) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_height_grid(obj: *mut lv_obj_t, div: u8, span: u8) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_auto_realign(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_ext_click_pad_left(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_ext_click_pad_right(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_ext_click_pad_top(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_ext_click_pad_bottom(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_ext_draw_pad(obj: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_obj_get_style_list(obj: *const lv_obj_t, part: u8) -> *mut lv_style_list_t; } extern "C" { pub fn _lv_obj_get_style_int( obj: *const lv_obj_t, part: u8, prop: lv_style_property_t, ) -> lv_style_int_t; } extern "C" { pub fn _lv_obj_get_style_color( obj: *const lv_obj_t, part: u8, prop: lv_style_property_t, ) -> lv_color_t; } extern "C" { pub fn _lv_obj_get_style_opa( obj: *const lv_obj_t, part: u8, prop: lv_style_property_t, ) -> lv_opa_t; } extern "C" { pub fn _lv_obj_get_style_ptr( obj: *const lv_obj_t, part: u8, prop: lv_style_property_t, ) -> *const cty::c_void; } extern "C" { pub fn lv_obj_get_local_style(obj: *mut lv_obj_t, part: u8) -> *mut lv_style_t; } extern "C" { pub fn lv_obj_get_hidden(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_adv_hittest(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_click(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_top(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_drag(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_drag_dir(obj: *const lv_obj_t) -> lv_drag_dir_t; } extern "C" { pub fn lv_obj_get_drag_throw(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_drag_parent(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_focus_parent(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_parent_event(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_gesture_parent(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_base_dir(obj: *const lv_obj_t) -> lv_bidi_dir_t; } extern "C" { pub fn lv_obj_get_protect(obj: *const lv_obj_t) -> u8; } extern "C" { pub fn lv_obj_is_protected(obj: *const lv_obj_t, prot: u8) -> bool; } extern "C" { pub fn lv_obj_get_state(obj: *const lv_obj_t, part: u8) -> lv_state_t; } extern "C" { pub fn lv_obj_get_signal_cb(obj: *const lv_obj_t) -> lv_signal_cb_t; } extern "C" { pub fn lv_obj_get_design_cb(obj: *const lv_obj_t) -> lv_design_cb_t; } extern "C" { pub fn lv_obj_get_event_cb(obj: *const lv_obj_t) -> lv_event_cb_t; } extern "C" { pub fn lv_obj_is_point_on_coords(obj: *mut lv_obj_t, point: *const lv_point_t) -> bool; } extern "C" { pub fn lv_obj_hittest(obj: *mut lv_obj_t, point: *mut lv_point_t) -> bool; } extern "C" { pub fn lv_obj_get_ext_attr(obj: *const lv_obj_t) -> *mut cty::c_void; } extern "C" { pub fn lv_obj_get_type(obj: *const lv_obj_t, buf: *mut lv_obj_type_t); } extern "C" { pub fn lv_obj_get_user_data(obj: *const lv_obj_t) -> lv_obj_user_data_t; } extern "C" { pub fn lv_obj_get_user_data_ptr(obj: *const lv_obj_t) -> *mut lv_obj_user_data_t; } extern "C" { pub fn lv_obj_set_user_data(obj: *mut lv_obj_t, data: lv_obj_user_data_t); } extern "C" { pub fn lv_obj_get_group(obj: *const lv_obj_t) -> *mut cty::c_void; } extern "C" { pub fn lv_obj_is_focused(obj: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_obj_get_focused_obj(obj: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_obj_handle_get_type_signal( buf: *mut lv_obj_type_t, name: *const cty::c_char, ) -> lv_res_t; } extern "C" { pub fn lv_obj_init_draw_rect_dsc( obj: *mut lv_obj_t, type_: u8, draw_dsc: *mut lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_obj_init_draw_label_dsc( obj: *mut lv_obj_t, type_: u8, draw_dsc: *mut lv_draw_label_dsc_t, ); } extern "C" { pub fn lv_obj_init_draw_img_dsc(obj: *mut lv_obj_t, part: u8, draw_dsc: *mut lv_draw_img_dsc_t); } extern "C" { pub fn lv_obj_init_draw_line_dsc( obj: *mut lv_obj_t, part: u8, draw_dsc: *mut lv_draw_line_dsc_t, ); } extern "C" { pub fn lv_obj_get_draw_rect_ext_pad_size(obj: *mut lv_obj_t, part: u8) -> lv_coord_t; } extern "C" { pub fn lv_obj_fade_in(obj: *mut lv_obj_t, time: u32, delay: u32); } extern "C" { pub fn lv_obj_fade_out(obj: *mut lv_obj_t, time: u32, delay: u32); } extern "C" { pub fn lv_debug_check_obj_type(obj: *const lv_obj_t, obj_type: *const cty::c_char) -> bool; } extern "C" { pub fn lv_debug_check_obj_valid(obj: *const lv_obj_t) -> bool; } pub const LV_KEY_UP: cty::c_uint = 17; pub const LV_KEY_DOWN: cty::c_uint = 18; pub const LV_KEY_RIGHT: cty::c_uint = 19; pub const LV_KEY_LEFT: cty::c_uint = 20; pub const LV_KEY_ESC: cty::c_uint = 27; pub const LV_KEY_DEL: cty::c_uint = 127; pub const LV_KEY_BACKSPACE: cty::c_uint = 8; pub const LV_KEY_ENTER: cty::c_uint = 10; pub const LV_KEY_NEXT: cty::c_uint = 9; pub const LV_KEY_PREV: cty::c_uint = 11; pub const LV_KEY_HOME: cty::c_uint = 2; pub const LV_KEY_END: cty::c_uint = 3; pub type _bindgen_ty_34 = cty::c_uint; pub type lv_key_t = u8; pub type lv_group_style_mod_cb_t = ::core::option::Option; pub type lv_group_focus_cb_t = ::core::option::Option; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _lv_group_t { pub obj_ll: lv_ll_t, pub obj_focus: *mut *mut lv_obj_t, pub focus_cb: lv_group_focus_cb_t, pub user_data: lv_group_user_data_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl _lv_group_t { #[inline] pub fn frozen(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_frozen(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn editing(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_editing(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn click_focus(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_click_focus(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn refocus_policy(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_refocus_policy(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn wrap(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) } } #[inline] pub fn set_wrap(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( frozen: u8, editing: u8, click_focus: u8, refocus_policy: u8, wrap: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let frozen: u8 = unsafe { ::core::mem::transmute(frozen) }; frozen as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let editing: u8 = unsafe { ::core::mem::transmute(editing) }; editing as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let click_focus: u8 = unsafe { ::core::mem::transmute(click_focus) }; click_focus as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let refocus_policy: u8 = unsafe { ::core::mem::transmute(refocus_policy) }; refocus_policy as u64 }); __bindgen_bitfield_unit.set(4usize, 1u8, { let wrap: u8 = unsafe { ::core::mem::transmute(wrap) }; wrap as u64 }); __bindgen_bitfield_unit } } pub type lv_group_t = _lv_group_t; pub const LV_GROUP_REFOCUS_POLICY_NEXT: cty::c_uint = 0; pub const LV_GROUP_REFOCUS_POLICY_PREV: cty::c_uint = 1; pub type _bindgen_ty_35 = cty::c_uint; pub type lv_group_refocus_policy_t = u8; extern "C" { pub fn _lv_group_init(); } extern "C" { pub fn lv_group_create() -> *mut lv_group_t; } extern "C" { pub fn lv_group_del(group: *mut lv_group_t); } extern "C" { pub fn lv_group_add_obj(group: *mut lv_group_t, obj: *mut lv_obj_t); } extern "C" { pub fn lv_group_remove_obj(obj: *mut lv_obj_t); } extern "C" { pub fn lv_group_remove_all_objs(group: *mut lv_group_t); } extern "C" { pub fn lv_group_focus_obj(obj: *mut lv_obj_t); } extern "C" { pub fn lv_group_focus_next(group: *mut lv_group_t); } extern "C" { pub fn lv_group_focus_prev(group: *mut lv_group_t); } extern "C" { pub fn lv_group_focus_freeze(group: *mut lv_group_t, en: bool); } extern "C" { pub fn lv_group_send_data(group: *mut lv_group_t, c: u32) -> lv_res_t; } extern "C" { pub fn lv_group_set_focus_cb(group: *mut lv_group_t, focus_cb: lv_group_focus_cb_t); } extern "C" { pub fn lv_group_set_refocus_policy(group: *mut lv_group_t, policy: lv_group_refocus_policy_t); } extern "C" { pub fn lv_group_set_editing(group: *mut lv_group_t, edit: bool); } extern "C" { pub fn lv_group_set_click_focus(group: *mut lv_group_t, en: bool); } extern "C" { pub fn lv_group_set_wrap(group: *mut lv_group_t, en: bool); } extern "C" { pub fn lv_group_get_focused(group: *const lv_group_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_group_get_user_data(group: *mut lv_group_t) -> *mut lv_group_user_data_t; } extern "C" { pub fn lv_group_get_focus_cb(group: *const lv_group_t) -> lv_group_focus_cb_t; } extern "C" { pub fn lv_group_get_editing(group: *const lv_group_t) -> bool; } extern "C" { pub fn lv_group_get_click_focus(group: *const lv_group_t) -> bool; } extern "C" { pub fn lv_group_get_wrap(group: *mut lv_group_t) -> bool; } extern "C" { pub fn _lv_indev_init(); } extern "C" { pub fn _lv_indev_read_task(task: *mut lv_task_t); } extern "C" { pub fn lv_indev_get_act() -> *mut lv_indev_t; } extern "C" { pub fn lv_indev_get_type(indev: *const lv_indev_t) -> lv_indev_type_t; } extern "C" { pub fn lv_indev_reset(indev: *mut lv_indev_t, obj: *mut lv_obj_t); } extern "C" { pub fn lv_indev_reset_long_press(indev: *mut lv_indev_t); } extern "C" { pub fn lv_indev_enable(indev: *mut lv_indev_t, en: bool); } extern "C" { pub fn lv_indev_set_cursor(indev: *mut lv_indev_t, cur_obj: *mut lv_obj_t); } extern "C" { pub fn lv_indev_set_group(indev: *mut lv_indev_t, group: *mut lv_group_t); } extern "C" { pub fn lv_indev_set_button_points(indev: *mut lv_indev_t, points: *const lv_point_t); } extern "C" { pub fn lv_indev_get_point(indev: *const lv_indev_t, point: *mut lv_point_t); } extern "C" { pub fn lv_indev_get_gesture_dir(indev: *const lv_indev_t) -> lv_gesture_dir_t; } extern "C" { pub fn lv_indev_get_key(indev: *const lv_indev_t) -> u32; } extern "C" { pub fn lv_indev_is_dragging(indev: *const lv_indev_t) -> bool; } extern "C" { pub fn lv_indev_get_vect(indev: *const lv_indev_t, point: *mut lv_point_t); } extern "C" { pub fn lv_indev_finish_drag(indev: *mut lv_indev_t) -> lv_res_t; } extern "C" { pub fn lv_indev_wait_release(indev: *mut lv_indev_t); } extern "C" { pub fn lv_indev_get_obj_act() -> *mut lv_obj_t; } extern "C" { pub fn lv_indev_search_obj(obj: *mut lv_obj_t, point: *mut lv_point_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_indev_get_read_task(indev: *mut lv_disp_t) -> *mut lv_task_t; } extern "C" { pub fn _lv_refr_init(); } extern "C" { pub fn lv_refr_now(disp: *mut lv_disp_t); } extern "C" { pub fn _lv_inv_area(disp: *mut lv_disp_t, area_p: *const lv_area_t); } extern "C" { pub fn _lv_refr_get_disp_refreshing() -> *mut lv_disp_t; } extern "C" { pub fn _lv_refr_set_disp_refreshing(disp: *mut lv_disp_t); } extern "C" { pub fn _lv_disp_refr_task(task: *mut lv_task_t); } pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_NONE: lv_scr_load_anim_t = 0; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_OVER_LEFT: lv_scr_load_anim_t = 1; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_OVER_RIGHT: lv_scr_load_anim_t = 2; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_OVER_TOP: lv_scr_load_anim_t = 3; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_OVER_BOTTOM: lv_scr_load_anim_t = 4; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_MOVE_LEFT: lv_scr_load_anim_t = 5; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_MOVE_RIGHT: lv_scr_load_anim_t = 6; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_MOVE_TOP: lv_scr_load_anim_t = 7; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_MOVE_BOTTOM: lv_scr_load_anim_t = 8; pub const lv_scr_load_anim_t_LV_SCR_LOAD_ANIM_FADE_ON: lv_scr_load_anim_t = 9; pub type lv_scr_load_anim_t = cty::c_uint; extern "C" { pub fn lv_disp_get_scr_act(disp: *mut lv_disp_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_disp_get_scr_prev(disp: *mut lv_disp_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_disp_load_scr(scr: *mut lv_obj_t); } extern "C" { pub fn lv_disp_get_layer_top(disp: *mut lv_disp_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_disp_get_layer_sys(disp: *mut lv_disp_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_disp_assign_screen(disp: *mut lv_disp_t, scr: *mut lv_obj_t); } extern "C" { pub fn lv_disp_set_bg_color(disp: *mut lv_disp_t, color: lv_color_t); } extern "C" { pub fn lv_disp_set_bg_image(disp: *mut lv_disp_t, img_src: *const cty::c_void); } extern "C" { pub fn lv_disp_set_bg_opa(disp: *mut lv_disp_t, opa: lv_opa_t); } extern "C" { pub fn lv_scr_load_anim( scr: *mut lv_obj_t, anim_type: lv_scr_load_anim_t, time: u32, delay: u32, auto_del: bool, ); } extern "C" { pub fn lv_disp_get_inactive_time(disp: *const lv_disp_t) -> u32; } extern "C" { pub fn lv_disp_trig_activity(disp: *mut lv_disp_t); } extern "C" { pub fn lv_disp_clean_dcache(disp: *mut lv_disp_t); } extern "C" { pub fn _lv_disp_get_refr_task(disp: *mut lv_disp_t) -> *mut lv_task_t; } pub const lv_theme_style_t_LV_THEME_NONE: lv_theme_style_t = 0; pub const lv_theme_style_t_LV_THEME_SCR: lv_theme_style_t = 1; pub const lv_theme_style_t_LV_THEME_OBJ: lv_theme_style_t = 2; pub const lv_theme_style_t_LV_THEME_ARC: lv_theme_style_t = 3; pub const lv_theme_style_t_LV_THEME_BAR: lv_theme_style_t = 4; pub const lv_theme_style_t_LV_THEME_BTN: lv_theme_style_t = 5; pub const lv_theme_style_t_LV_THEME_BTNMATRIX: lv_theme_style_t = 6; pub const lv_theme_style_t_LV_THEME_CALENDAR: lv_theme_style_t = 7; pub const lv_theme_style_t_LV_THEME_CANVAS: lv_theme_style_t = 8; pub const lv_theme_style_t_LV_THEME_CHECKBOX: lv_theme_style_t = 9; pub const lv_theme_style_t_LV_THEME_CHART: lv_theme_style_t = 10; pub const lv_theme_style_t_LV_THEME_CONT: lv_theme_style_t = 11; pub const lv_theme_style_t_LV_THEME_CPICKER: lv_theme_style_t = 12; pub const lv_theme_style_t_LV_THEME_DROPDOWN: lv_theme_style_t = 13; pub const lv_theme_style_t_LV_THEME_GAUGE: lv_theme_style_t = 14; pub const lv_theme_style_t_LV_THEME_IMAGE: lv_theme_style_t = 15; pub const lv_theme_style_t_LV_THEME_IMGBTN: lv_theme_style_t = 16; pub const lv_theme_style_t_LV_THEME_KEYBOARD: lv_theme_style_t = 17; pub const lv_theme_style_t_LV_THEME_LABEL: lv_theme_style_t = 18; pub const lv_theme_style_t_LV_THEME_LED: lv_theme_style_t = 19; pub const lv_theme_style_t_LV_THEME_LINE: lv_theme_style_t = 20; pub const lv_theme_style_t_LV_THEME_LIST: lv_theme_style_t = 21; pub const lv_theme_style_t_LV_THEME_LIST_BTN: lv_theme_style_t = 22; pub const lv_theme_style_t_LV_THEME_LINEMETER: lv_theme_style_t = 23; pub const lv_theme_style_t_LV_THEME_MSGBOX: lv_theme_style_t = 24; pub const lv_theme_style_t_LV_THEME_MSGBOX_BTNS: lv_theme_style_t = 25; pub const lv_theme_style_t_LV_THEME_OBJMASK: lv_theme_style_t = 26; pub const lv_theme_style_t_LV_THEME_PAGE: lv_theme_style_t = 27; pub const lv_theme_style_t_LV_THEME_ROLLER: lv_theme_style_t = 28; pub const lv_theme_style_t_LV_THEME_SLIDER: lv_theme_style_t = 29; pub const lv_theme_style_t_LV_THEME_SPINBOX: lv_theme_style_t = 30; pub const lv_theme_style_t_LV_THEME_SPINBOX_BTN: lv_theme_style_t = 31; pub const lv_theme_style_t_LV_THEME_SPINNER: lv_theme_style_t = 32; pub const lv_theme_style_t_LV_THEME_SWITCH: lv_theme_style_t = 33; pub const lv_theme_style_t_LV_THEME_TABLE: lv_theme_style_t = 34; pub const lv_theme_style_t_LV_THEME_TABVIEW: lv_theme_style_t = 35; pub const lv_theme_style_t_LV_THEME_TABVIEW_PAGE: lv_theme_style_t = 36; pub const lv_theme_style_t_LV_THEME_TEXTAREA: lv_theme_style_t = 37; pub const lv_theme_style_t_LV_THEME_TILEVIEW: lv_theme_style_t = 38; pub const lv_theme_style_t_LV_THEME_WIN: lv_theme_style_t = 39; pub const lv_theme_style_t_LV_THEME_WIN_BTN: lv_theme_style_t = 40; pub const lv_theme_style_t__LV_THEME_BUILTIN_LAST: lv_theme_style_t = 41; pub const lv_theme_style_t_LV_THEME_CUSTOM_START: lv_theme_style_t = 41; pub const lv_theme_style_t__LV_THEME_CUSTOM_LAST: lv_theme_style_t = 65535; pub type lv_theme_style_t = cty::c_uint; pub type lv_theme_apply_cb_t = ::core::option::Option< unsafe extern "C" fn(arg1: *mut _lv_theme_t, arg2: *mut lv_obj_t, arg3: lv_theme_style_t), >; pub type lv_theme_apply_xcb_t = ::core::option::Option; #[repr(C)] #[derive(Copy, Clone)] pub struct _lv_theme_t { pub apply_cb: lv_theme_apply_cb_t, pub apply_xcb: lv_theme_apply_xcb_t, pub base: *mut _lv_theme_t, pub color_primary: lv_color_t, pub color_secondary: lv_color_t, pub font_small: *const lv_font_t, pub font_normal: *const lv_font_t, pub font_subtitle: *const lv_font_t, pub font_title: *const lv_font_t, pub flags: u32, pub user_data: *mut cty::c_void, } pub type lv_theme_t = _lv_theme_t; extern "C" { pub fn lv_theme_set_act(th: *mut lv_theme_t); } extern "C" { pub fn lv_theme_get_act() -> *mut lv_theme_t; } extern "C" { pub fn lv_theme_apply(obj: *mut lv_obj_t, name: lv_theme_style_t); } extern "C" { pub fn lv_theme_copy(theme: *mut lv_theme_t, copy: *const lv_theme_t); } extern "C" { pub fn lv_theme_set_base(new_theme: *mut lv_theme_t, base: *mut lv_theme_t); } extern "C" { pub fn lv_theme_set_apply_cb(theme: *mut lv_theme_t, apply_cb: lv_theme_apply_cb_t); } extern "C" { pub fn lv_theme_get_font_small() -> *const lv_font_t; } extern "C" { pub fn lv_theme_get_font_normal() -> *const lv_font_t; } extern "C" { pub fn lv_theme_get_font_subtitle() -> *const lv_font_t; } extern "C" { pub fn lv_theme_get_font_title() -> *const lv_font_t; } extern "C" { pub fn lv_theme_get_color_primary() -> lv_color_t; } extern "C" { pub fn lv_theme_get_color_secondary() -> lv_color_t; } extern "C" { pub fn lv_theme_get_flags() -> u32; } extern "C" { pub fn lv_theme_empty_init( color_primary: lv_color_t, color_secondary: lv_color_t, flags: u32, font_small: *const lv_font_t, font_normal: *const lv_font_t, font_subtitle: *const lv_font_t, font_title: *const lv_font_t, ) -> *mut lv_theme_t; } extern "C" { pub fn lv_theme_template_init( color_primary: lv_color_t, color_secondary: lv_color_t, flags: u32, font_small: *const lv_font_t, font_normal: *const lv_font_t, font_subtitle: *const lv_font_t, font_title: *const lv_font_t, ) -> *mut lv_theme_t; } pub const lv_theme_material_flag_t_LV_THEME_MATERIAL_FLAG_DARK: lv_theme_material_flag_t = 1; pub const lv_theme_material_flag_t_LV_THEME_MATERIAL_FLAG_LIGHT: lv_theme_material_flag_t = 2; pub const lv_theme_material_flag_t_LV_THEME_MATERIAL_FLAG_NO_TRANSITION: lv_theme_material_flag_t = 16; pub const lv_theme_material_flag_t_LV_THEME_MATERIAL_FLAG_NO_FOCUS: lv_theme_material_flag_t = 32; pub type lv_theme_material_flag_t = cty::c_uint; extern "C" { pub fn lv_theme_material_init( color_primary: lv_color_t, color_secondary: lv_color_t, flags: u32, font_small: *const lv_font_t, font_normal: *const lv_font_t, font_subtitle: *const lv_font_t, font_title: *const lv_font_t, ) -> *mut lv_theme_t; } extern "C" { pub fn lv_theme_mono_init( color_primary: lv_color_t, color_secondary: lv_color_t, flags: u32, font_small: *const lv_font_t, font_normal: *const lv_font_t, font_subtitle: *const lv_font_t, font_title: *const lv_font_t, ) -> *mut lv_theme_t; } extern "C" { pub fn lv_font_load(fontName: *const cty::c_char) -> *mut lv_font_t; } extern "C" { pub fn lv_font_free(font: *mut lv_font_t); } #[repr(C)] #[repr(align(4))] #[derive(Debug, Copy, Clone)] pub struct lv_font_fmt_txt_glyph_dsc_t { pub _bitfield_align_1: [u32; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub box_w: u8, pub box_h: u8, pub ofs_x: i8, pub ofs_y: i8, } impl lv_font_fmt_txt_glyph_dsc_t { #[inline] pub fn bitmap_index(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 20u8) as u32) } } #[inline] pub fn set_bitmap_index(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 20u8, val as u64) } } #[inline] pub fn adv_w(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 12u8) as u32) } } #[inline] pub fn set_adv_w(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(20usize, 12u8, val as u64) } } #[inline] pub fn new_bitfield_1(bitmap_index: u32, adv_w: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 20u8, { let bitmap_index: u32 = unsafe { ::core::mem::transmute(bitmap_index) }; bitmap_index as u64 }); __bindgen_bitfield_unit.set(20usize, 12u8, { let adv_w: u32 = unsafe { ::core::mem::transmute(adv_w) }; adv_w as u64 }); __bindgen_bitfield_unit } } pub const LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL: cty::c_uint = 0; pub const LV_FONT_FMT_TXT_CMAP_SPARSE_FULL: cty::c_uint = 1; pub const LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY: cty::c_uint = 2; pub const LV_FONT_FMT_TXT_CMAP_SPARSE_TINY: cty::c_uint = 3; pub type _bindgen_ty_36 = cty::c_uint; pub type lv_font_fmt_txt_cmap_type_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_font_fmt_txt_cmap_t { pub range_start: u32, pub range_length: u16, pub glyph_id_start: u16, pub unicode_list: *const u16, pub glyph_id_ofs_list: *const cty::c_void, pub list_length: u16, pub type_: lv_font_fmt_txt_cmap_type_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_font_fmt_txt_kern_pair_t { pub glyph_ids: *const cty::c_void, pub values: *const i8, pub _bitfield_align_1: [u32; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub __bindgen_padding_0: u32, } impl lv_font_fmt_txt_kern_pair_t { #[inline] pub fn pair_cnt(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 30u8) as u32) } } #[inline] pub fn set_pair_cnt(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 30u8, val as u64) } } #[inline] pub fn glyph_ids_size(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(30usize, 2u8) as u32) } } #[inline] pub fn set_glyph_ids_size(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(30usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1( pair_cnt: u32, glyph_ids_size: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 30u8, { let pair_cnt: u32 = unsafe { ::core::mem::transmute(pair_cnt) }; pair_cnt as u64 }); __bindgen_bitfield_unit.set(30usize, 2u8, { let glyph_ids_size: u32 = unsafe { ::core::mem::transmute(glyph_ids_size) }; glyph_ids_size as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_font_fmt_txt_kern_classes_t { pub class_pair_values: *const i8, pub left_class_mapping: *const u8, pub right_class_mapping: *const u8, pub left_class_cnt: u8, pub right_class_cnt: u8, } pub const lv_font_fmt_txt_bitmap_format_t_LV_FONT_FMT_TXT_PLAIN: lv_font_fmt_txt_bitmap_format_t = 0; pub const lv_font_fmt_txt_bitmap_format_t_LV_FONT_FMT_TXT_COMPRESSED: lv_font_fmt_txt_bitmap_format_t = 1; pub const lv_font_fmt_txt_bitmap_format_t_LV_FONT_FMT_TXT_COMPRESSED_NO_PREFILTER: lv_font_fmt_txt_bitmap_format_t = 1; pub type lv_font_fmt_txt_bitmap_format_t = cty::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_font_fmt_txt_dsc_t { pub glyph_bitmap: *const u8, pub glyph_dsc: *const lv_font_fmt_txt_glyph_dsc_t, pub cmaps: *const lv_font_fmt_txt_cmap_t, pub kern_dsc: *const cty::c_void, pub kern_scale: u16, pub _bitfield_align_1: [u16; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub last_letter: u32, pub last_glyph_id: u32, } impl lv_font_fmt_txt_dsc_t { #[inline] pub fn cmap_num(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 9u8) as u16) } } #[inline] pub fn set_cmap_num(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 9u8, val as u64) } } #[inline] pub fn bpp(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 4u8) as u16) } } #[inline] pub fn set_bpp(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(9usize, 4u8, val as u64) } } #[inline] pub fn kern_classes(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) } } #[inline] pub fn set_kern_classes(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(13usize, 1u8, val as u64) } } #[inline] pub fn bitmap_format(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 2u8) as u16) } } #[inline] pub fn set_bitmap_format(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(14usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1( cmap_num: u16, bpp: u16, kern_classes: u16, bitmap_format: u16, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 9u8, { let cmap_num: u16 = unsafe { ::core::mem::transmute(cmap_num) }; cmap_num as u64 }); __bindgen_bitfield_unit.set(9usize, 4u8, { let bpp: u16 = unsafe { ::core::mem::transmute(bpp) }; bpp as u64 }); __bindgen_bitfield_unit.set(13usize, 1u8, { let kern_classes: u16 = unsafe { ::core::mem::transmute(kern_classes) }; kern_classes as u64 }); __bindgen_bitfield_unit.set(14usize, 2u8, { let bitmap_format: u16 = unsafe { ::core::mem::transmute(bitmap_format) }; bitmap_format as u64 }); __bindgen_bitfield_unit } } extern "C" { pub fn lv_font_get_bitmap_fmt_txt(font: *const lv_font_t, letter: u32) -> *const u8; } extern "C" { pub fn lv_font_get_glyph_dsc_fmt_txt( font: *const lv_font_t, dsc_out: *mut lv_font_glyph_dsc_t, unicode_letter: u32, unicode_letter_next: u32, ) -> bool; } extern "C" { pub fn _lv_font_clean_up_fmt_txt(); } pub const LV_LAYOUT_OFF: cty::c_uint = 0; pub const LV_LAYOUT_CENTER: cty::c_uint = 1; pub const LV_LAYOUT_COLUMN_LEFT: cty::c_uint = 2; pub const LV_LAYOUT_COLUMN_MID: cty::c_uint = 3; pub const LV_LAYOUT_COLUMN_RIGHT: cty::c_uint = 4; pub const LV_LAYOUT_ROW_TOP: cty::c_uint = 5; pub const LV_LAYOUT_ROW_MID: cty::c_uint = 6; pub const LV_LAYOUT_ROW_BOTTOM: cty::c_uint = 7; pub const LV_LAYOUT_PRETTY_TOP: cty::c_uint = 8; pub const LV_LAYOUT_PRETTY_MID: cty::c_uint = 9; pub const LV_LAYOUT_PRETTY_BOTTOM: cty::c_uint = 10; pub const LV_LAYOUT_GRID: cty::c_uint = 11; pub const _LV_LAYOUT_LAST: cty::c_uint = 12; pub type _bindgen_ty_37 = cty::c_uint; pub type lv_layout_t = u8; pub const LV_FIT_NONE: cty::c_uint = 0; pub const LV_FIT_TIGHT: cty::c_uint = 1; pub const LV_FIT_PARENT: cty::c_uint = 2; pub const LV_FIT_MAX: cty::c_uint = 3; pub const _LV_FIT_LAST: cty::c_uint = 4; pub type _bindgen_ty_38 = cty::c_uint; pub type lv_fit_t = u8; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct lv_cont_ext_t { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, } impl lv_cont_ext_t { #[inline] pub fn layout(&self) -> lv_layout_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } } #[inline] pub fn set_layout(&mut self, val: lv_layout_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 4u8, val as u64) } } #[inline] pub fn fit_left(&self) -> lv_fit_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) } } #[inline] pub fn set_fit_left(&mut self, val: lv_fit_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 2u8, val as u64) } } #[inline] pub fn fit_right(&self) -> lv_fit_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) } } #[inline] pub fn set_fit_right(&mut self, val: lv_fit_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(6usize, 2u8, val as u64) } } #[inline] pub fn fit_top(&self) -> lv_fit_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 2u8) as u8) } } #[inline] pub fn set_fit_top(&mut self, val: lv_fit_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 2u8, val as u64) } } #[inline] pub fn fit_bottom(&self) -> lv_fit_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 2u8) as u8) } } #[inline] pub fn set_fit_bottom(&mut self, val: lv_fit_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(10usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1( layout: lv_layout_t, fit_left: lv_fit_t, fit_right: lv_fit_t, fit_top: lv_fit_t, fit_bottom: lv_fit_t, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 4u8, { let layout: u8 = unsafe { ::core::mem::transmute(layout) }; layout as u64 }); __bindgen_bitfield_unit.set(4usize, 2u8, { let fit_left: u8 = unsafe { ::core::mem::transmute(fit_left) }; fit_left as u64 }); __bindgen_bitfield_unit.set(6usize, 2u8, { let fit_right: u8 = unsafe { ::core::mem::transmute(fit_right) }; fit_right as u64 }); __bindgen_bitfield_unit.set(8usize, 2u8, { let fit_top: u8 = unsafe { ::core::mem::transmute(fit_top) }; fit_top as u64 }); __bindgen_bitfield_unit.set(10usize, 2u8, { let fit_bottom: u8 = unsafe { ::core::mem::transmute(fit_bottom) }; fit_bottom as u64 }); __bindgen_bitfield_unit } } pub const LV_CONT_PART_MAIN: cty::c_uint = 0; pub const _LV_CONT_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const _LV_CONT_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_39 = cty::c_uint; extern "C" { pub fn lv_cont_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_cont_set_layout(cont: *mut lv_obj_t, layout: lv_layout_t); } extern "C" { pub fn lv_cont_set_fit4( cont: *mut lv_obj_t, left: lv_fit_t, right: lv_fit_t, top: lv_fit_t, bottom: lv_fit_t, ); } extern "C" { pub fn lv_cont_get_layout(cont: *const lv_obj_t) -> lv_layout_t; } extern "C" { pub fn lv_cont_get_fit_left(cont: *const lv_obj_t) -> lv_fit_t; } extern "C" { pub fn lv_cont_get_fit_right(cont: *const lv_obj_t) -> lv_fit_t; } extern "C" { pub fn lv_cont_get_fit_top(cont: *const lv_obj_t) -> lv_fit_t; } extern "C" { pub fn lv_cont_get_fit_bottom(cont: *const lv_obj_t) -> lv_fit_t; } pub const LV_BTN_STATE_RELEASED: cty::c_uint = 0; pub const LV_BTN_STATE_PRESSED: cty::c_uint = 1; pub const LV_BTN_STATE_DISABLED: cty::c_uint = 2; pub const LV_BTN_STATE_CHECKED_RELEASED: cty::c_uint = 3; pub const LV_BTN_STATE_CHECKED_PRESSED: cty::c_uint = 4; pub const LV_BTN_STATE_CHECKED_DISABLED: cty::c_uint = 5; pub const _LV_BTN_STATE_LAST: cty::c_uint = 6; pub type _bindgen_ty_40 = cty::c_uint; pub type lv_btn_state_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_btn_ext_t { pub cont: lv_cont_ext_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_btn_ext_t { #[inline] pub fn checkable(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_checkable(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(checkable: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let checkable: u8 = unsafe { ::core::mem::transmute(checkable) }; checkable as u64 }); __bindgen_bitfield_unit } } pub const LV_BTN_PART_MAIN: cty::c_uint = 0; pub const _LV_BTN_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const _LV_BTN_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_41 = cty::c_uint; pub type lv_btn_part_t = u8; extern "C" { pub fn lv_btn_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_btn_set_checkable(btn: *mut lv_obj_t, tgl: bool); } extern "C" { pub fn lv_btn_set_state(btn: *mut lv_obj_t, state: lv_btn_state_t); } extern "C" { pub fn lv_btn_toggle(btn: *mut lv_obj_t); } extern "C" { pub fn lv_btn_get_state(btn: *const lv_obj_t) -> lv_btn_state_t; } extern "C" { pub fn lv_btn_get_checkable(btn: *const lv_obj_t) -> bool; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_imgbtn_ext_t { pub btn: lv_btn_ext_t, pub img_src_mid: [*const cty::c_void; 6usize], pub act_cf: lv_img_cf_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u16; 3usize], } impl lv_imgbtn_ext_t { #[inline] pub fn tiled(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_tiled(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(tiled: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let tiled: u8 = unsafe { ::core::mem::transmute(tiled) }; tiled as u64 }); __bindgen_bitfield_unit } } pub const LV_IMGBTN_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_42 = cty::c_uint; pub type lv_imgbtn_part_t = u8; extern "C" { pub fn lv_imgbtn_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_imgbtn_set_src(imgbtn: *mut lv_obj_t, state: lv_btn_state_t, src: *const cty::c_void); } extern "C" { pub fn lv_imgbtn_set_state(imgbtn: *mut lv_obj_t, state: lv_btn_state_t); } extern "C" { pub fn lv_imgbtn_toggle(imgbtn: *mut lv_obj_t); } extern "C" { pub fn lv_imgbtn_get_src(imgbtn: *mut lv_obj_t, state: lv_btn_state_t) -> *const cty::c_void; } extern "C" { pub fn lv_draw_triangle( points: *const lv_point_t, clip: *const lv_area_t, draw_dsc: *const lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_draw_polygon( points: *const lv_point_t, point_cnt: u16, mask: *const lv_area_t, draw_dsc: *const lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_draw_arc( center_x: lv_coord_t, center_y: lv_coord_t, radius: u16, start_angle: u16, end_angle: u16, clip_area: *const lv_area_t, dsc: *const lv_draw_line_dsc_t, ); } pub const LV_LABEL_LONG_EXPAND: cty::c_uint = 0; pub const LV_LABEL_LONG_BREAK: cty::c_uint = 1; pub const LV_LABEL_LONG_DOT: cty::c_uint = 2; pub const LV_LABEL_LONG_SROLL: cty::c_uint = 3; pub const LV_LABEL_LONG_SROLL_CIRC: cty::c_uint = 4; pub const LV_LABEL_LONG_CROP: cty::c_uint = 5; pub type _bindgen_ty_43 = cty::c_uint; pub type lv_label_long_mode_t = u8; pub const LV_LABEL_ALIGN_LEFT: cty::c_uint = 0; pub const LV_LABEL_ALIGN_CENTER: cty::c_uint = 1; pub const LV_LABEL_ALIGN_RIGHT: cty::c_uint = 2; pub const LV_LABEL_ALIGN_AUTO: cty::c_uint = 3; pub type _bindgen_ty_44 = cty::c_uint; pub type lv_label_align_t = u8; #[repr(C)] #[derive(Copy, Clone)] pub struct lv_label_ext_t { pub text: *mut cty::c_char, pub dot: lv_label_ext_t__bindgen_ty_1, pub dot_end: u32, pub anim_speed: u16, pub offset: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub __bindgen_padding_0: u32, } #[repr(C)] #[derive(Copy, Clone)] pub union lv_label_ext_t__bindgen_ty_1 { pub tmp_ptr: *mut cty::c_char, pub tmp: [cty::c_char; 4usize], } impl lv_label_ext_t { #[inline] pub fn long_mode(&self) -> lv_label_long_mode_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u8) } } #[inline] pub fn set_long_mode(&mut self, val: lv_label_long_mode_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 3u8, val as u64) } } #[inline] pub fn static_txt(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_static_txt(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn align(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) } } #[inline] pub fn set_align(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 2u8, val as u64) } } #[inline] pub fn recolor(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u8) } } #[inline] pub fn set_recolor(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(6usize, 1u8, val as u64) } } #[inline] pub fn expand(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u8) } } #[inline] pub fn set_expand(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(7usize, 1u8, val as u64) } } #[inline] pub fn dot_tmp_alloc(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) } } #[inline] pub fn set_dot_tmp_alloc(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( long_mode: lv_label_long_mode_t, static_txt: u8, align: u8, recolor: u8, expand: u8, dot_tmp_alloc: u8, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 3u8, { let long_mode: u8 = unsafe { ::core::mem::transmute(long_mode) }; long_mode as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let static_txt: u8 = unsafe { ::core::mem::transmute(static_txt) }; static_txt as u64 }); __bindgen_bitfield_unit.set(4usize, 2u8, { let align: u8 = unsafe { ::core::mem::transmute(align) }; align as u64 }); __bindgen_bitfield_unit.set(6usize, 1u8, { let recolor: u8 = unsafe { ::core::mem::transmute(recolor) }; recolor as u64 }); __bindgen_bitfield_unit.set(7usize, 1u8, { let expand: u8 = unsafe { ::core::mem::transmute(expand) }; expand as u64 }); __bindgen_bitfield_unit.set(8usize, 1u8, { let dot_tmp_alloc: u8 = unsafe { ::core::mem::transmute(dot_tmp_alloc) }; dot_tmp_alloc as u64 }); __bindgen_bitfield_unit } } pub const LV_LABEL_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_45 = cty::c_uint; pub type lv_label_part_t = u8; extern "C" { pub fn lv_label_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_label_set_text(label: *mut lv_obj_t, text: *const cty::c_char); } extern "C" { pub fn lv_label_set_text_fmt(label: *mut lv_obj_t, fmt: *const cty::c_char, ...); } extern "C" { pub fn lv_label_set_text_static(label: *mut lv_obj_t, text: *const cty::c_char); } extern "C" { pub fn lv_label_set_long_mode(label: *mut lv_obj_t, long_mode: lv_label_long_mode_t); } extern "C" { pub fn lv_label_set_align(label: *mut lv_obj_t, align: lv_label_align_t); } extern "C" { pub fn lv_label_set_recolor(label: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_label_set_anim_speed(label: *mut lv_obj_t, anim_speed: u16); } extern "C" { pub fn lv_label_set_text_sel_start(label: *mut lv_obj_t, index: u32); } extern "C" { pub fn lv_label_set_text_sel_end(label: *mut lv_obj_t, index: u32); } extern "C" { pub fn lv_label_get_text(label: *const lv_obj_t) -> *mut cty::c_char; } extern "C" { pub fn lv_label_get_long_mode(label: *const lv_obj_t) -> lv_label_long_mode_t; } extern "C" { pub fn lv_label_get_align(label: *const lv_obj_t) -> lv_label_align_t; } extern "C" { pub fn lv_label_get_recolor(label: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_label_get_anim_speed(label: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_label_get_letter_pos(label: *const lv_obj_t, index: u32, pos: *mut lv_point_t); } extern "C" { pub fn lv_label_get_letter_on(label: *const lv_obj_t, pos: *mut lv_point_t) -> u32; } extern "C" { pub fn lv_label_is_char_under_pos(label: *const lv_obj_t, pos: *mut lv_point_t) -> bool; } extern "C" { pub fn lv_label_get_text_sel_start(label: *const lv_obj_t) -> u32; } extern "C" { pub fn lv_label_get_text_sel_end(label: *const lv_obj_t) -> u32; } extern "C" { pub fn lv_label_get_style(label: *mut lv_obj_t, type_: u8) -> *mut lv_style_list_t; } extern "C" { pub fn lv_label_ins_text(label: *mut lv_obj_t, pos: u32, txt: *const cty::c_char); } extern "C" { pub fn lv_label_cut_text(label: *mut lv_obj_t, pos: u32, cnt: u32); } extern "C" { pub fn lv_label_refr_text(label: *mut lv_obj_t); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_img_ext_t { pub src: *const cty::c_void, pub offset: lv_point_t, pub w: lv_coord_t, pub h: lv_coord_t, pub angle: u16, pub pivot: lv_point_t, pub zoom: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub __bindgen_padding_0: [u16; 3usize], } impl lv_img_ext_t { #[inline] pub fn src_type(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_src_type(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn auto_size(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_auto_size(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn cf(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 5u8) as u8) } } #[inline] pub fn set_cf(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 5u8, val as u64) } } #[inline] pub fn antialias(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) } } #[inline] pub fn set_antialias(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( src_type: u8, auto_size: u8, cf: u8, antialias: u8, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let src_type: u8 = unsafe { ::core::mem::transmute(src_type) }; src_type as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let auto_size: u8 = unsafe { ::core::mem::transmute(auto_size) }; auto_size as u64 }); __bindgen_bitfield_unit.set(3usize, 5u8, { let cf: u8 = unsafe { ::core::mem::transmute(cf) }; cf as u64 }); __bindgen_bitfield_unit.set(8usize, 1u8, { let antialias: u8 = unsafe { ::core::mem::transmute(antialias) }; antialias as u64 }); __bindgen_bitfield_unit } } pub const LV_IMG_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_46 = cty::c_uint; pub type lv_img_part_t = u8; extern "C" { pub fn lv_img_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_img_set_src(img: *mut lv_obj_t, src_img: *const cty::c_void); } extern "C" { pub fn lv_img_set_auto_size(img: *mut lv_obj_t, autosize_en: bool); } extern "C" { pub fn lv_img_set_offset_x(img: *mut lv_obj_t, x: lv_coord_t); } extern "C" { pub fn lv_img_set_offset_y(img: *mut lv_obj_t, y: lv_coord_t); } extern "C" { pub fn lv_img_set_pivot(img: *mut lv_obj_t, pivot_x: lv_coord_t, pivot_y: lv_coord_t); } extern "C" { pub fn lv_img_set_angle(img: *mut lv_obj_t, angle: i16); } extern "C" { pub fn lv_img_set_zoom(img: *mut lv_obj_t, zoom: u16); } extern "C" { pub fn lv_img_set_antialias(img: *mut lv_obj_t, antialias: bool); } extern "C" { pub fn lv_img_get_src(img: *mut lv_obj_t) -> *const cty::c_void; } extern "C" { pub fn lv_img_get_file_name(img: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_img_get_auto_size(img: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_img_get_offset_x(img: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_img_get_offset_y(img: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_img_get_angle(img: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_img_get_pivot(img: *mut lv_obj_t, center: *mut lv_point_t); } extern "C" { pub fn lv_img_get_zoom(img: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_img_get_antialias(img: *mut lv_obj_t) -> bool; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_line_ext_t { pub point_array: *const lv_point_t, pub point_num: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 5usize], } impl lv_line_ext_t { #[inline] pub fn auto_size(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_auto_size(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn y_inv(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_y_inv(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(auto_size: u8, y_inv: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let auto_size: u8 = unsafe { ::core::mem::transmute(auto_size) }; auto_size as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let y_inv: u8 = unsafe { ::core::mem::transmute(y_inv) }; y_inv as u64 }); __bindgen_bitfield_unit } } pub const LV_LINE_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_47 = cty::c_uint; pub type lv_line_style_t = u8; extern "C" { pub fn lv_line_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_line_set_points(line: *mut lv_obj_t, point_a: *const lv_point_t, point_num: u16); } extern "C" { pub fn lv_line_set_auto_size(line: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_line_set_y_invert(line: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_line_get_auto_size(line: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_line_get_y_invert(line: *const lv_obj_t) -> bool; } pub const LV_SCROLLBAR_MODE_OFF: cty::c_uint = 0; pub const LV_SCROLLBAR_MODE_ON: cty::c_uint = 1; pub const LV_SCROLLBAR_MODE_DRAG: cty::c_uint = 2; pub const LV_SCROLLBAR_MODE_AUTO: cty::c_uint = 3; pub const LV_SCROLLBAR_MODE_HIDE: cty::c_uint = 4; pub const LV_SCROLLBAR_MODE_UNHIDE: cty::c_uint = 8; pub type _bindgen_ty_48 = cty::c_uint; pub type lv_scrollbar_mode_t = u8; pub const LV_PAGE_EDGE_LEFT: cty::c_uint = 1; pub const LV_PAGE_EDGE_TOP: cty::c_uint = 2; pub const LV_PAGE_EDGE_RIGHT: cty::c_uint = 4; pub const LV_PAGE_EDGE_BOTTOM: cty::c_uint = 8; pub type _bindgen_ty_49 = cty::c_uint; pub type lv_page_edge_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_page_ext_t { pub bg: lv_cont_ext_t, pub scrl: *mut lv_obj_t, pub scrlbar: lv_page_ext_t__bindgen_ty_1, pub edge_flash: lv_page_ext_t__bindgen_ty_2, pub anim_time: u16, pub scroll_prop_obj: *mut lv_obj_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_page_ext_t__bindgen_ty_1 { pub style: lv_style_list_t, pub hor_area: lv_area_t, pub ver_area: lv_area_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_page_ext_t__bindgen_ty_1 { #[inline] pub fn hor_draw(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_hor_draw(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn ver_draw(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_ver_draw(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn mode(&self) -> lv_scrollbar_mode_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 3u8) as u8) } } #[inline] pub fn set_mode(&mut self, val: lv_scrollbar_mode_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 3u8, val as u64) } } #[inline] pub fn new_bitfield_1( hor_draw: u8, ver_draw: u8, mode: lv_scrollbar_mode_t, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let hor_draw: u8 = unsafe { ::core::mem::transmute(hor_draw) }; hor_draw as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let ver_draw: u8 = unsafe { ::core::mem::transmute(ver_draw) }; ver_draw as u64 }); __bindgen_bitfield_unit.set(2usize, 3u8, { let mode: u8 = unsafe { ::core::mem::transmute(mode) }; mode as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_page_ext_t__bindgen_ty_2 { pub state: lv_anim_value_t, pub style: lv_style_list_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_page_ext_t__bindgen_ty_2 { #[inline] pub fn enabled(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_enabled(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn top_ip(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_top_ip(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn bottom_ip(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_bottom_ip(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn right_ip(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_right_ip(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn left_ip(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) } } #[inline] pub fn set_left_ip(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( enabled: u8, top_ip: u8, bottom_ip: u8, right_ip: u8, left_ip: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let enabled: u8 = unsafe { ::core::mem::transmute(enabled) }; enabled as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let top_ip: u8 = unsafe { ::core::mem::transmute(top_ip) }; top_ip as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let bottom_ip: u8 = unsafe { ::core::mem::transmute(bottom_ip) }; bottom_ip as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let right_ip: u8 = unsafe { ::core::mem::transmute(right_ip) }; right_ip as u64 }); __bindgen_bitfield_unit.set(4usize, 1u8, { let left_ip: u8 = unsafe { ::core::mem::transmute(left_ip) }; left_ip as u64 }); __bindgen_bitfield_unit } } impl lv_page_ext_t { #[inline] pub fn scroll_prop(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_scroll_prop(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(scroll_prop: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let scroll_prop: u8 = unsafe { ::core::mem::transmute(scroll_prop) }; scroll_prop as u64 }); __bindgen_bitfield_unit } } pub const LV_PAGE_PART_BG: cty::c_uint = 0; pub const LV_PAGE_PART_SCROLLBAR: cty::c_uint = 1; pub const LV_PAGE_PART_EDGE_FLASH: cty::c_uint = 2; pub const _LV_PAGE_PART_VIRTUAL_LAST: cty::c_uint = 3; pub const LV_PAGE_PART_SCROLLABLE: cty::c_uint = 64; pub const _LV_PAGE_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_50 = cty::c_uint; pub type lv_part_style_t = u8; extern "C" { pub fn lv_page_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_page_clean(page: *mut lv_obj_t); } extern "C" { pub fn lv_page_get_scrollable(page: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_page_get_anim_time(page: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_page_set_scrollbar_mode(page: *mut lv_obj_t, sb_mode: lv_scrollbar_mode_t); } extern "C" { pub fn lv_page_set_anim_time(page: *mut lv_obj_t, anim_time: u16); } extern "C" { pub fn lv_page_set_scroll_propagation(page: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_page_set_edge_flash(page: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_page_get_scrollbar_mode(page: *const lv_obj_t) -> lv_scrollbar_mode_t; } extern "C" { pub fn lv_page_get_scroll_propagation(page: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_page_get_edge_flash(page: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_page_get_width_fit(page: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_page_get_height_fit(page: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_page_get_width_grid(page: *mut lv_obj_t, div: u8, span: u8) -> lv_coord_t; } extern "C" { pub fn lv_page_get_height_grid(page: *mut lv_obj_t, div: u8, span: u8) -> lv_coord_t; } extern "C" { pub fn lv_page_on_edge(page: *mut lv_obj_t, edge: lv_page_edge_t) -> bool; } extern "C" { pub fn lv_page_glue_obj(obj: *mut lv_obj_t, glue: bool); } extern "C" { pub fn lv_page_focus(page: *mut lv_obj_t, obj: *const lv_obj_t, anim_en: lv_anim_enable_t); } extern "C" { pub fn lv_page_scroll_hor(page: *mut lv_obj_t, dist: lv_coord_t); } extern "C" { pub fn lv_page_scroll_ver(page: *mut lv_obj_t, dist: lv_coord_t); } extern "C" { pub fn lv_page_start_edge_flash(page: *mut lv_obj_t, edge: lv_page_edge_t); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_list_ext_t { pub page: lv_page_ext_t, pub last_sel_btn: *mut lv_obj_t, pub act_sel_btn: *mut lv_obj_t, } pub const LV_LIST_PART_BG: cty::c_uint = 0; pub const LV_LIST_PART_SCROLLBAR: cty::c_uint = 1; pub const LV_LIST_PART_EDGE_FLASH: cty::c_uint = 2; pub const _LV_LIST_PART_VIRTUAL_LAST: cty::c_uint = 3; pub const LV_LIST_PART_SCROLLABLE: cty::c_uint = 64; pub const _LV_LIST_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_51 = cty::c_uint; pub type lv_list_style_t = u8; extern "C" { pub fn lv_list_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_clean(list: *mut lv_obj_t); } extern "C" { pub fn lv_list_add_btn( list: *mut lv_obj_t, img_src: *const cty::c_void, txt: *const cty::c_char, ) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_remove(list: *const lv_obj_t, index: u16) -> bool; } extern "C" { pub fn lv_list_focus_btn(list: *mut lv_obj_t, btn: *mut lv_obj_t); } extern "C" { pub fn lv_list_set_layout(list: *mut lv_obj_t, layout: lv_layout_t); } extern "C" { pub fn lv_list_get_btn_text(btn: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_list_get_btn_label(btn: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_get_btn_img(btn: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_get_prev_btn(list: *const lv_obj_t, prev_btn: *mut lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_get_next_btn(list: *const lv_obj_t, prev_btn: *mut lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_get_btn_index(list: *const lv_obj_t, btn: *const lv_obj_t) -> i32; } extern "C" { pub fn lv_list_get_size(list: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_list_get_btn_selected(list: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_list_get_layout(list: *mut lv_obj_t) -> lv_layout_t; } extern "C" { pub fn lv_list_up(list: *const lv_obj_t); } extern "C" { pub fn lv_list_down(list: *const lv_obj_t); } extern "C" { pub fn lv_list_focus(btn: *const lv_obj_t, anim: lv_anim_enable_t); } pub const LV_CHART_TYPE_NONE: cty::c_uint = 0; pub const LV_CHART_TYPE_LINE: cty::c_uint = 1; pub const LV_CHART_TYPE_COLUMN: cty::c_uint = 2; pub type _bindgen_ty_52 = cty::c_uint; pub type lv_chart_type_t = u8; pub const LV_CHART_UPDATE_MODE_SHIFT: cty::c_uint = 0; pub const LV_CHART_UPDATE_MODE_CIRCULAR: cty::c_uint = 1; pub type _bindgen_ty_53 = cty::c_uint; pub type lv_chart_update_mode_t = u8; pub const LV_CHART_AXIS_PRIMARY_Y: cty::c_uint = 0; pub const LV_CHART_AXIS_SECONDARY_Y: cty::c_uint = 1; pub const _LV_CHART_AXIS_LAST: cty::c_uint = 2; pub type _bindgen_ty_54 = cty::c_uint; pub type lv_chart_axis_t = u8; pub const LV_CHART_CURSOR_NONE: cty::c_uint = 0; pub const LV_CHART_CURSOR_RIGHT: cty::c_uint = 1; pub const LV_CHART_CURSOR_UP: cty::c_uint = 2; pub const LV_CHART_CURSOR_LEFT: cty::c_uint = 4; pub const LV_CHART_CURSOR_DOWN: cty::c_uint = 8; pub type _bindgen_ty_55 = cty::c_uint; pub type lv_cursor_direction_t = u8; #[repr(C)] #[derive(Copy, Clone)] pub struct lv_chart_series_t { pub points: *mut lv_coord_t, pub color: lv_color_t, pub start_point: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl lv_chart_series_t { #[inline] pub fn ext_buf_assigned(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_ext_buf_assigned(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn hidden(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_hidden(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn y_axis(&self) -> lv_chart_axis_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_y_axis(&mut self, val: lv_chart_axis_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( ext_buf_assigned: u8, hidden: u8, y_axis: lv_chart_axis_t, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let ext_buf_assigned: u8 = unsafe { ::core::mem::transmute(ext_buf_assigned) }; ext_buf_assigned as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let hidden: u8 = unsafe { ::core::mem::transmute(hidden) }; hidden as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let y_axis: u8 = unsafe { ::core::mem::transmute(y_axis) }; y_axis as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_chart_cursor_t { pub point: lv_point_t, pub color: lv_color_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u8, } impl lv_chart_cursor_t { #[inline] pub fn axes(&self) -> lv_cursor_direction_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } } #[inline] pub fn set_axes(&mut self, val: lv_cursor_direction_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 4u8, val as u64) } } #[inline] pub fn new_bitfield_1(axes: lv_cursor_direction_t) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 4u8, { let axes: u8 = unsafe { ::core::mem::transmute(axes) }; axes as u64 }); __bindgen_bitfield_unit } } pub const LV_CHART_AXIS_SKIP_LAST_TICK: cty::c_uint = 0; pub const LV_CHART_AXIS_DRAW_LAST_TICK: cty::c_uint = 1; pub const LV_CHART_AXIS_INVERSE_LABELS_ORDER: cty::c_uint = 2; pub type _bindgen_ty_56 = cty::c_uint; pub type lv_chart_axis_options_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_chart_axis_cfg_t { pub list_of_values: *const cty::c_char, pub options: lv_chart_axis_options_t, pub num_tick_marks: u8, pub major_tick_len: u8, pub minor_tick_len: u8, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_chart_ext_t { pub series_ll: lv_ll_t, pub cursors_ll: lv_ll_t, pub ymin: [lv_coord_t; 2usize], pub ymax: [lv_coord_t; 2usize], pub hdiv_cnt: u8, pub vdiv_cnt: u8, pub point_cnt: u16, pub style_series_bg: lv_style_list_t, pub style_series: lv_style_list_t, pub style_cursors: lv_style_list_t, pub type_: lv_chart_type_t, pub y_axis: lv_chart_axis_cfg_t, pub x_axis: lv_chart_axis_cfg_t, pub secondary_y_axis: lv_chart_axis_cfg_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_chart_ext_t { #[inline] pub fn update_mode(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_update_mode(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(update_mode: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let update_mode: u8 = unsafe { ::core::mem::transmute(update_mode) }; update_mode as u64 }); __bindgen_bitfield_unit } } pub const LV_CHART_PART_BG: cty::c_uint = 0; pub const LV_CHART_PART_SERIES_BG: cty::c_uint = 1; pub const LV_CHART_PART_SERIES: cty::c_uint = 2; pub const LV_CHART_PART_CURSOR: cty::c_uint = 3; pub type _bindgen_ty_57 = cty::c_uint; extern "C" { pub fn lv_chart_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_chart_add_series(chart: *mut lv_obj_t, color: lv_color_t) -> *mut lv_chart_series_t; } extern "C" { pub fn lv_chart_remove_series(chart: *mut lv_obj_t, series: *mut lv_chart_series_t); } extern "C" { pub fn lv_chart_add_cursor( chart: *mut lv_obj_t, color: lv_color_t, dir: lv_cursor_direction_t, ) -> *mut lv_chart_cursor_t; } extern "C" { pub fn lv_chart_clear_series(chart: *mut lv_obj_t, series: *mut lv_chart_series_t); } extern "C" { pub fn lv_chart_hide_series(chart: *mut lv_obj_t, series: *mut lv_chart_series_t, hide: bool); } extern "C" { pub fn lv_chart_set_div_line_count(chart: *mut lv_obj_t, hdiv: u8, vdiv: u8); } extern "C" { pub fn lv_chart_set_y_range( chart: *mut lv_obj_t, axis: lv_chart_axis_t, ymin: lv_coord_t, ymax: lv_coord_t, ); } extern "C" { pub fn lv_chart_set_type(chart: *mut lv_obj_t, type_: lv_chart_type_t); } extern "C" { pub fn lv_chart_set_point_count(chart: *mut lv_obj_t, point_cnt: u16); } extern "C" { pub fn lv_chart_init_points(chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, y: lv_coord_t); } extern "C" { pub fn lv_chart_set_points( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, y_array: *mut lv_coord_t, ); } extern "C" { pub fn lv_chart_set_next(chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, y: lv_coord_t); } extern "C" { pub fn lv_chart_set_update_mode(chart: *mut lv_obj_t, update_mode: lv_chart_update_mode_t); } extern "C" { pub fn lv_chart_set_x_tick_length(chart: *mut lv_obj_t, major_tick_len: u8, minor_tick_len: u8); } extern "C" { pub fn lv_chart_set_y_tick_length(chart: *mut lv_obj_t, major_tick_len: u8, minor_tick_len: u8); } extern "C" { pub fn lv_chart_set_secondary_y_tick_length( chart: *mut lv_obj_t, major_tick_len: u8, minor_tick_len: u8, ); } extern "C" { pub fn lv_chart_set_x_tick_texts( chart: *mut lv_obj_t, list_of_values: *const cty::c_char, num_tick_marks: u8, options: lv_chart_axis_options_t, ); } extern "C" { pub fn lv_chart_set_secondary_y_tick_texts( chart: *mut lv_obj_t, list_of_values: *const cty::c_char, num_tick_marks: u8, options: lv_chart_axis_options_t, ); } extern "C" { pub fn lv_chart_set_y_tick_texts( chart: *mut lv_obj_t, list_of_values: *const cty::c_char, num_tick_marks: u8, options: lv_chart_axis_options_t, ); } extern "C" { pub fn lv_chart_set_x_start_point(chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, id: u16); } extern "C" { pub fn lv_chart_set_ext_array( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, array: *mut lv_coord_t, point_cnt: u16, ); } extern "C" { pub fn lv_chart_set_point_id( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, value: lv_coord_t, id: u16, ); } extern "C" { pub fn lv_chart_set_series_axis( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, axis: lv_chart_axis_t, ); } extern "C" { pub fn lv_chart_set_cursor_point( chart: *mut lv_obj_t, cursor: *mut lv_chart_cursor_t, point: *mut lv_point_t, ); } extern "C" { pub fn lv_chart_get_type(chart: *const lv_obj_t) -> lv_chart_type_t; } extern "C" { pub fn lv_chart_get_point_count(chart: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_chart_get_x_start_point(ser: *mut lv_chart_series_t) -> u16; } extern "C" { pub fn lv_chart_get_point_id( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, id: u16, ) -> lv_coord_t; } extern "C" { pub fn lv_chart_get_series_axis( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, ) -> lv_chart_axis_t; } extern "C" { pub fn lv_chart_get_series_area(chart: *mut lv_obj_t, series_area: *mut lv_area_t); } extern "C" { pub fn lv_chart_get_cursor_point( chart: *mut lv_obj_t, cursor: *mut lv_chart_cursor_t, ) -> lv_point_t; } extern "C" { pub fn lv_chart_get_nearest_index_from_coord(chart: *mut lv_obj_t, x: lv_coord_t) -> u16; } extern "C" { pub fn lv_chart_get_x_from_index( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, id: u16, ) -> lv_coord_t; } extern "C" { pub fn lv_chart_get_y_from_index( chart: *mut lv_obj_t, ser: *mut lv_chart_series_t, id: u16, ) -> lv_coord_t; } extern "C" { pub fn lv_chart_refresh(chart: *mut lv_obj_t); } #[repr(C)] #[derive(Copy, Clone)] pub union lv_table_cell_format_t { pub s: lv_table_cell_format_t__bindgen_ty_1, pub format_byte: u8, } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct lv_table_cell_format_t__bindgen_ty_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, } impl lv_table_cell_format_t__bindgen_ty_1 { #[inline] pub fn align(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_align(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn right_merge(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_right_merge(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn type_(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 4u8) as u8) } } #[inline] pub fn set_type(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 4u8, val as u64) } } #[inline] pub fn crop(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u8) } } #[inline] pub fn set_crop(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(7usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( align: u8, right_merge: u8, type_: u8, crop: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let align: u8 = unsafe { ::core::mem::transmute(align) }; align as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let right_merge: u8 = unsafe { ::core::mem::transmute(right_merge) }; right_merge as u64 }); __bindgen_bitfield_unit.set(3usize, 4u8, { let type_: u8 = unsafe { ::core::mem::transmute(type_) }; type_ as u64 }); __bindgen_bitfield_unit.set(7usize, 1u8, { let crop: u8 = unsafe { ::core::mem::transmute(crop) }; crop as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_table_ext_t { pub col_cnt: u16, pub row_cnt: u16, pub cell_data: *mut *mut cty::c_char, pub row_h: *mut lv_coord_t, pub cell_style: [lv_style_list_t; 4usize], pub col_w: [lv_coord_t; 12usize], pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_table_ext_t { #[inline] pub fn cell_types(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } } #[inline] pub fn set_cell_types(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 4u8, val as u64) } } #[inline] pub fn new_bitfield_1(cell_types: u16) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 4u8, { let cell_types: u16 = unsafe { ::core::mem::transmute(cell_types) }; cell_types as u64 }); __bindgen_bitfield_unit } } pub const LV_TABLE_PART_BG: cty::c_uint = 0; pub const LV_TABLE_PART_CELL1: cty::c_uint = 1; pub const LV_TABLE_PART_CELL2: cty::c_uint = 2; pub const LV_TABLE_PART_CELL3: cty::c_uint = 3; pub const LV_TABLE_PART_CELL4: cty::c_uint = 4; pub type _bindgen_ty_58 = cty::c_uint; extern "C" { pub fn lv_table_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_table_set_cell_value( table: *mut lv_obj_t, row: u16, col: u16, txt: *const cty::c_char, ); } extern "C" { pub fn lv_table_set_cell_value_fmt( table: *mut lv_obj_t, row: u16, col: u16, fmt: *const cty::c_char, ... ); } extern "C" { pub fn lv_table_set_row_cnt(table: *mut lv_obj_t, row_cnt: u16); } extern "C" { pub fn lv_table_set_col_cnt(table: *mut lv_obj_t, col_cnt: u16); } extern "C" { pub fn lv_table_set_col_width(table: *mut lv_obj_t, col_id: u16, w: lv_coord_t); } extern "C" { pub fn lv_table_set_cell_align( table: *mut lv_obj_t, row: u16, col: u16, align: lv_label_align_t, ); } extern "C" { pub fn lv_table_set_cell_type(table: *mut lv_obj_t, row: u16, col: u16, type_: u8); } extern "C" { pub fn lv_table_set_cell_crop(table: *mut lv_obj_t, row: u16, col: u16, crop: bool); } extern "C" { pub fn lv_table_set_cell_merge_right(table: *mut lv_obj_t, row: u16, col: u16, en: bool); } extern "C" { pub fn lv_table_get_cell_value(table: *mut lv_obj_t, row: u16, col: u16) -> *const cty::c_char; } extern "C" { pub fn lv_table_get_row_cnt(table: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_table_get_col_cnt(table: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_table_get_col_width(table: *mut lv_obj_t, col_id: u16) -> lv_coord_t; } extern "C" { pub fn lv_table_get_cell_align(table: *mut lv_obj_t, row: u16, col: u16) -> lv_label_align_t; } extern "C" { pub fn lv_table_get_cell_type(table: *mut lv_obj_t, row: u16, col: u16) -> lv_label_align_t; } extern "C" { pub fn lv_table_get_cell_crop(table: *mut lv_obj_t, row: u16, col: u16) -> lv_label_align_t; } extern "C" { pub fn lv_table_get_cell_merge_right(table: *mut lv_obj_t, row: u16, col: u16) -> bool; } extern "C" { pub fn lv_table_get_pressed_cell( table: *mut lv_obj_t, row: *mut u16, col: *mut u16, ) -> lv_res_t; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_checkbox_ext_t { pub bg_btn: lv_btn_ext_t, pub bullet: *mut lv_obj_t, pub label: *mut lv_obj_t, } pub const LV_CHECKBOX_PART_BG: cty::c_uint = 0; pub const _LV_CHECKBOX_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const LV_CHECKBOX_PART_BULLET: cty::c_uint = 64; pub const _LV_CHECKBOX_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_59 = cty::c_uint; pub type lv_checkbox_style_t = u8; extern "C" { pub fn lv_checkbox_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_checkbox_set_text(cb: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_checkbox_set_text_static(cb: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_checkbox_set_checked(cb: *mut lv_obj_t, checked: bool); } extern "C" { pub fn lv_checkbox_set_disabled(cb: *mut lv_obj_t); } extern "C" { pub fn lv_checkbox_set_state(cb: *mut lv_obj_t, state: lv_btn_state_t); } extern "C" { pub fn lv_checkbox_get_text(cb: *const lv_obj_t) -> *const cty::c_char; } pub const LV_CPICKER_TYPE_RECT: cty::c_uint = 0; pub const LV_CPICKER_TYPE_DISC: cty::c_uint = 1; pub type _bindgen_ty_60 = cty::c_uint; pub type lv_cpicker_type_t = u8; pub const LV_CPICKER_COLOR_MODE_HUE: cty::c_uint = 0; pub const LV_CPICKER_COLOR_MODE_SATURATION: cty::c_uint = 1; pub const LV_CPICKER_COLOR_MODE_VALUE: cty::c_uint = 2; pub type _bindgen_ty_61 = cty::c_uint; pub type lv_cpicker_color_mode_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_cpicker_ext_t { pub hsv: lv_color_hsv_t, pub knob: lv_cpicker_ext_t__bindgen_ty_1, pub last_click_time: u32, pub last_change_time: u32, pub last_press_point: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_cpicker_ext_t__bindgen_ty_1 { pub style_list: lv_style_list_t, pub pos: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl lv_cpicker_ext_t__bindgen_ty_1 { #[inline] pub fn colored(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_colored(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(colored: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let colored: u8 = unsafe { ::core::mem::transmute(colored) }; colored as u64 }); __bindgen_bitfield_unit } } impl lv_cpicker_ext_t { #[inline] pub fn color_mode(&self) -> lv_cpicker_color_mode_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_color_mode(&mut self, val: lv_cpicker_color_mode_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn color_mode_fixed(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_color_mode_fixed(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn type_(&self) -> lv_cpicker_type_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_type(&mut self, val: lv_cpicker_type_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( color_mode: lv_cpicker_color_mode_t, color_mode_fixed: u8, type_: lv_cpicker_type_t, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let color_mode: u8 = unsafe { ::core::mem::transmute(color_mode) }; color_mode as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let color_mode_fixed: u8 = unsafe { ::core::mem::transmute(color_mode_fixed) }; color_mode_fixed as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let type_: u8 = unsafe { ::core::mem::transmute(type_) }; type_ as u64 }); __bindgen_bitfield_unit } } pub const LV_CPICKER_PART_MAIN: cty::c_uint = 0; pub const LV_CPICKER_PART_KNOB: cty::c_uint = 1; pub const _LV_CPICKER_PART_VIRTUAL_LAST: cty::c_uint = 2; pub const _LV_CPICKER_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_62 = cty::c_uint; extern "C" { pub fn lv_cpicker_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_cpicker_set_type(cpicker: *mut lv_obj_t, type_: lv_cpicker_type_t); } extern "C" { pub fn lv_cpicker_set_hue(cpicker: *mut lv_obj_t, hue: u16) -> bool; } extern "C" { pub fn lv_cpicker_set_saturation(cpicker: *mut lv_obj_t, saturation: u8) -> bool; } extern "C" { pub fn lv_cpicker_set_value(cpicker: *mut lv_obj_t, val: u8) -> bool; } extern "C" { pub fn lv_cpicker_set_hsv(cpicker: *mut lv_obj_t, hsv: lv_color_hsv_t) -> bool; } extern "C" { pub fn lv_cpicker_set_color(cpicker: *mut lv_obj_t, color: lv_color_t) -> bool; } extern "C" { pub fn lv_cpicker_set_color_mode(cpicker: *mut lv_obj_t, mode: lv_cpicker_color_mode_t); } extern "C" { pub fn lv_cpicker_set_color_mode_fixed(cpicker: *mut lv_obj_t, fixed: bool); } extern "C" { pub fn lv_cpicker_set_knob_colored(cpicker: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_cpicker_get_color_mode(cpicker: *mut lv_obj_t) -> lv_cpicker_color_mode_t; } extern "C" { pub fn lv_cpicker_get_color_mode_fixed(cpicker: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_cpicker_get_hue(cpicker: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_cpicker_get_saturation(cpicker: *mut lv_obj_t) -> u8; } extern "C" { pub fn lv_cpicker_get_value(cpicker: *mut lv_obj_t) -> u8; } extern "C" { pub fn lv_cpicker_get_hsv(cpicker: *mut lv_obj_t) -> lv_color_hsv_t; } extern "C" { pub fn lv_cpicker_get_color(cpicker: *mut lv_obj_t) -> lv_color_t; } extern "C" { pub fn lv_cpicker_get_knob_colored(cpicker: *mut lv_obj_t) -> bool; } pub const LV_BAR_TYPE_NORMAL: cty::c_uint = 0; pub const LV_BAR_TYPE_SYMMETRICAL: cty::c_uint = 1; pub const LV_BAR_TYPE_CUSTOM: cty::c_uint = 2; pub type _bindgen_ty_63 = cty::c_uint; pub type lv_bar_type_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_bar_anim_t { pub bar: *mut lv_obj_t, pub anim_start: lv_anim_value_t, pub anim_end: lv_anim_value_t, pub anim_state: lv_anim_value_t, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_bar_ext_t { pub cur_value: i16, pub min_value: i16, pub max_value: i16, pub start_value: i16, pub indic_area: lv_area_t, pub anim_time: lv_anim_value_t, pub cur_value_anim: lv_bar_anim_t, pub start_value_anim: lv_bar_anim_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub style_indic: lv_style_list_t, } impl lv_bar_ext_t { #[inline] pub fn type_(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_type(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1(type_: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let type_: u8 = unsafe { ::core::mem::transmute(type_) }; type_ as u64 }); __bindgen_bitfield_unit } } pub const LV_BAR_PART_BG: cty::c_uint = 0; pub const LV_BAR_PART_INDIC: cty::c_uint = 1; pub const _LV_BAR_PART_VIRTUAL_LAST: cty::c_uint = 2; pub type _bindgen_ty_64 = cty::c_uint; pub type lv_bar_part_t = u8; extern "C" { pub fn lv_bar_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_bar_set_value(bar: *mut lv_obj_t, value: i16, anim: lv_anim_enable_t); } extern "C" { pub fn lv_bar_set_start_value(bar: *mut lv_obj_t, start_value: i16, anim: lv_anim_enable_t); } extern "C" { pub fn lv_bar_set_range(bar: *mut lv_obj_t, min: i16, max: i16); } extern "C" { pub fn lv_bar_set_type(bar: *mut lv_obj_t, type_: lv_bar_type_t); } extern "C" { pub fn lv_bar_set_anim_time(bar: *mut lv_obj_t, anim_time: u16); } extern "C" { pub fn lv_bar_get_value(bar: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_bar_get_start_value(bar: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_bar_get_min_value(bar: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_bar_get_max_value(bar: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_bar_get_type(bar: *mut lv_obj_t) -> lv_bar_type_t; } extern "C" { pub fn lv_bar_get_anim_time(bar: *const lv_obj_t) -> u16; } pub const LV_SLIDER_TYPE_NORMAL: cty::c_uint = 0; pub const LV_SLIDER_TYPE_SYMMETRICAL: cty::c_uint = 1; pub const LV_SLIDER_TYPE_RANGE: cty::c_uint = 2; pub type _bindgen_ty_65 = cty::c_uint; pub type lv_slider_type_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_slider_ext_t { pub bar: lv_bar_ext_t, pub style_knob: lv_style_list_t, pub left_knob_area: lv_area_t, pub right_knob_area: lv_area_t, pub value_to_set: *mut i16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_slider_ext_t { #[inline] pub fn dragging(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_dragging(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn left_knob_focus(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_left_knob_focus(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( dragging: u8, left_knob_focus: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let dragging: u8 = unsafe { ::core::mem::transmute(dragging) }; dragging as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let left_knob_focus: u8 = unsafe { ::core::mem::transmute(left_knob_focus) }; left_knob_focus as u64 }); __bindgen_bitfield_unit } } pub const LV_SLIDER_PART_BG: cty::c_uint = 0; pub const LV_SLIDER_PART_INDIC: cty::c_uint = 1; pub const LV_SLIDER_PART_KNOB: cty::c_uint = 2; pub type _bindgen_ty_66 = cty::c_uint; extern "C" { pub fn lv_slider_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_slider_get_value(slider: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_slider_is_dragged(slider: *const lv_obj_t) -> bool; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_led_ext_t { pub bright: u8, } pub const LV_LED_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_67 = cty::c_uint; pub type lv_led_part_t = u8; extern "C" { pub fn lv_led_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_led_set_bright(led: *mut lv_obj_t, bright: u8); } extern "C" { pub fn lv_led_on(led: *mut lv_obj_t); } extern "C" { pub fn lv_led_off(led: *mut lv_obj_t); } extern "C" { pub fn lv_led_toggle(led: *mut lv_obj_t); } extern "C" { pub fn lv_led_get_bright(led: *const lv_obj_t) -> u8; } pub const LV_BTNMATRIX_CTRL_HIDDEN: cty::c_uint = 8; pub const LV_BTNMATRIX_CTRL_NO_REPEAT: cty::c_uint = 16; pub const LV_BTNMATRIX_CTRL_DISABLED: cty::c_uint = 32; pub const LV_BTNMATRIX_CTRL_CHECKABLE: cty::c_uint = 64; pub const LV_BTNMATRIX_CTRL_CHECK_STATE: cty::c_uint = 128; pub const LV_BTNMATRIX_CTRL_CLICK_TRIG: cty::c_uint = 256; pub type _bindgen_ty_68 = cty::c_uint; pub type lv_btnmatrix_ctrl_t = u16; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_btnmatrix_ext_t { pub map_p: *mut *const cty::c_char, pub button_areas: *mut lv_area_t, pub ctrl_bits: *mut lv_btnmatrix_ctrl_t, pub style_btn: lv_style_list_t, pub btn_cnt: u16, pub btn_id_pr: u16, pub btn_id_focused: u16, pub btn_id_act: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_btnmatrix_ext_t { #[inline] pub fn recolor(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_recolor(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn one_check(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_one_check(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn align(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 2u8) as u8) } } #[inline] pub fn set_align(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 2u8, val as u64) } } #[inline] pub fn new_bitfield_1( recolor: u8, one_check: u8, align: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let recolor: u8 = unsafe { ::core::mem::transmute(recolor) }; recolor as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let one_check: u8 = unsafe { ::core::mem::transmute(one_check) }; one_check as u64 }); __bindgen_bitfield_unit.set(2usize, 2u8, { let align: u8 = unsafe { ::core::mem::transmute(align) }; align as u64 }); __bindgen_bitfield_unit } } pub const LV_BTNMATRIX_PART_BG: cty::c_uint = 0; pub const LV_BTNMATRIX_PART_BTN: cty::c_uint = 1; pub type _bindgen_ty_69 = cty::c_uint; pub type lv_btnmatrix_part_t = u8; extern "C" { pub fn lv_btnmatrix_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_btnmatrix_set_map(btnm: *mut lv_obj_t, map: *mut *const cty::c_char); } extern "C" { pub fn lv_btnmatrix_set_ctrl_map(btnm: *mut lv_obj_t, ctrl_map: *const lv_btnmatrix_ctrl_t); } extern "C" { pub fn lv_btnmatrix_set_focused_btn(btnm: *mut lv_obj_t, id: u16); } extern "C" { pub fn lv_btnmatrix_set_recolor(btnm: *const lv_obj_t, en: bool); } extern "C" { pub fn lv_btnmatrix_set_btn_ctrl(btnm: *mut lv_obj_t, btn_id: u16, ctrl: lv_btnmatrix_ctrl_t); } extern "C" { pub fn lv_btnmatrix_clear_btn_ctrl( btnm: *const lv_obj_t, btn_id: u16, ctrl: lv_btnmatrix_ctrl_t, ); } extern "C" { pub fn lv_btnmatrix_set_btn_ctrl_all(btnm: *mut lv_obj_t, ctrl: lv_btnmatrix_ctrl_t); } extern "C" { pub fn lv_btnmatrix_clear_btn_ctrl_all(btnm: *mut lv_obj_t, ctrl: lv_btnmatrix_ctrl_t); } extern "C" { pub fn lv_btnmatrix_set_btn_width(btnm: *mut lv_obj_t, btn_id: u16, width: u8); } extern "C" { pub fn lv_btnmatrix_set_one_check(btnm: *mut lv_obj_t, one_chk: bool); } extern "C" { pub fn lv_btnmatrix_set_align(btnm: *mut lv_obj_t, align: lv_label_align_t); } extern "C" { pub fn lv_btnmatrix_get_map_array(btnm: *const lv_obj_t) -> *mut *const cty::c_char; } extern "C" { pub fn lv_btnmatrix_get_recolor(btnm: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_btnmatrix_get_active_btn(btnm: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_btnmatrix_get_active_btn_text(btnm: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_btnmatrix_get_focused_btn(btnm: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_btnmatrix_get_btn_text(btnm: *const lv_obj_t, btn_id: u16) -> *const cty::c_char; } extern "C" { pub fn lv_btnmatrix_get_btn_ctrl( btnm: *mut lv_obj_t, btn_id: u16, ctrl: lv_btnmatrix_ctrl_t, ) -> bool; } extern "C" { pub fn lv_btnmatrix_get_one_check(btnm: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_btnmatrix_get_align(btnm: *const lv_obj_t) -> lv_label_align_t; } pub const LV_KEYBOARD_MODE_TEXT_LOWER: cty::c_uint = 0; pub const LV_KEYBOARD_MODE_TEXT_UPPER: cty::c_uint = 1; pub const LV_KEYBOARD_MODE_SPECIAL: cty::c_uint = 2; pub const LV_KEYBOARD_MODE_NUM: cty::c_uint = 3; pub type _bindgen_ty_70 = cty::c_uint; pub type lv_keyboard_mode_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_keyboard_ext_t { pub btnm: lv_btnmatrix_ext_t, pub ta: *mut lv_obj_t, pub mode: lv_keyboard_mode_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u16; 3usize], } impl lv_keyboard_ext_t { #[inline] pub fn cursor_mng(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_cursor_mng(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(cursor_mng: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let cursor_mng: u8 = unsafe { ::core::mem::transmute(cursor_mng) }; cursor_mng as u64 }); __bindgen_bitfield_unit } } pub const LV_KEYBOARD_PART_BG: cty::c_uint = 0; pub const LV_KEYBOARD_PART_BTN: cty::c_uint = 1; pub type _bindgen_ty_71 = cty::c_uint; pub type lv_keyboard_style_t = u8; extern "C" { pub fn lv_keyboard_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_keyboard_set_textarea(kb: *mut lv_obj_t, ta: *mut lv_obj_t); } extern "C" { pub fn lv_keyboard_set_mode(kb: *mut lv_obj_t, mode: lv_keyboard_mode_t); } extern "C" { pub fn lv_keyboard_set_cursor_manage(kb: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_keyboard_set_map( kb: *mut lv_obj_t, mode: lv_keyboard_mode_t, map: *mut *const cty::c_char, ); } extern "C" { pub fn lv_keyboard_set_ctrl_map( kb: *mut lv_obj_t, mode: lv_keyboard_mode_t, ctrl_map: *const lv_btnmatrix_ctrl_t, ); } extern "C" { pub fn lv_keyboard_get_textarea(kb: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_keyboard_get_mode(kb: *const lv_obj_t) -> lv_keyboard_mode_t; } extern "C" { pub fn lv_keyboard_get_cursor_manage(kb: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_keyboard_def_event_cb(kb: *mut lv_obj_t, event: lv_event_t); } pub const LV_DROPDOWN_DIR_DOWN: cty::c_uint = 0; pub const LV_DROPDOWN_DIR_UP: cty::c_uint = 1; pub const LV_DROPDOWN_DIR_LEFT: cty::c_uint = 2; pub const LV_DROPDOWN_DIR_RIGHT: cty::c_uint = 3; pub type _bindgen_ty_72 = cty::c_uint; pub type lv_dropdown_dir_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_dropdown_ext_t { pub page: *mut lv_obj_t, pub text: *const cty::c_char, pub symbol: *const cty::c_char, pub options: *mut cty::c_char, pub style_selected: lv_style_list_t, pub style_page: lv_style_list_t, pub style_scrlbar: lv_style_list_t, pub max_height: lv_coord_t, pub option_cnt: u16, pub sel_opt_id: u16, pub sel_opt_id_orig: u16, pub pr_opt_id: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 5usize], } impl lv_dropdown_ext_t { #[inline] pub fn dir(&self) -> lv_dropdown_dir_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_dir(&mut self, val: lv_dropdown_dir_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn show_selected(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_show_selected(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn static_txt(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_static_txt(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( dir: lv_dropdown_dir_t, show_selected: u8, static_txt: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let dir: u8 = unsafe { ::core::mem::transmute(dir) }; dir as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let show_selected: u8 = unsafe { ::core::mem::transmute(show_selected) }; show_selected as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let static_txt: u8 = unsafe { ::core::mem::transmute(static_txt) }; static_txt as u64 }); __bindgen_bitfield_unit } } pub const LV_DROPDOWN_PART_MAIN: cty::c_uint = 0; pub const LV_DROPDOWN_PART_LIST: cty::c_uint = 64; pub const LV_DROPDOWN_PART_SCROLLBAR: cty::c_uint = 65; pub const LV_DROPDOWN_PART_SELECTED: cty::c_uint = 66; pub type _bindgen_ty_73 = cty::c_uint; pub type lv_dropdown_part_t = u8; extern "C" { pub fn lv_dropdown_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_dropdown_set_text(ddlist: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_dropdown_clear_options(ddlist: *mut lv_obj_t); } extern "C" { pub fn lv_dropdown_set_options(ddlist: *mut lv_obj_t, options: *const cty::c_char); } extern "C" { pub fn lv_dropdown_set_options_static(ddlist: *mut lv_obj_t, options: *const cty::c_char); } extern "C" { pub fn lv_dropdown_add_option(ddlist: *mut lv_obj_t, option: *const cty::c_char, pos: u32); } extern "C" { pub fn lv_dropdown_set_selected(ddlist: *mut lv_obj_t, sel_opt: u16); } extern "C" { pub fn lv_dropdown_set_dir(ddlist: *mut lv_obj_t, dir: lv_dropdown_dir_t); } extern "C" { pub fn lv_dropdown_set_max_height(ddlist: *mut lv_obj_t, h: lv_coord_t); } extern "C" { pub fn lv_dropdown_set_symbol(ddlist: *mut lv_obj_t, symbol: *const cty::c_char); } extern "C" { pub fn lv_dropdown_set_show_selected(ddlist: *mut lv_obj_t, show: bool); } extern "C" { pub fn lv_dropdown_get_text(ddlist: *mut lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_dropdown_get_options(ddlist: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_dropdown_get_selected(ddlist: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_dropdown_get_option_cnt(ddlist: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_dropdown_get_selected_str( ddlist: *const lv_obj_t, buf: *mut cty::c_char, buf_size: u32, ); } extern "C" { pub fn lv_dropdown_get_max_height(ddlist: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_dropdown_get_symbol(ddlist: *mut lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_dropdown_get_dir(ddlist: *const lv_obj_t) -> lv_dropdown_dir_t; } extern "C" { pub fn lv_dropdown_get_show_selected(ddlist: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_dropdown_open(ddlist: *mut lv_obj_t); } extern "C" { pub fn lv_dropdown_close(ddlist: *mut lv_obj_t); } pub const LV_ROLLER_MODE_NORMAL: cty::c_uint = 0; pub const LV_ROLLER_MODE_INFINITE: cty::c_uint = 1; pub type _bindgen_ty_74 = cty::c_uint; pub type lv_roller_mode_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_roller_ext_t { pub page: lv_page_ext_t, pub style_sel: lv_style_list_t, pub option_cnt: u16, pub sel_opt_id: u16, pub sel_opt_id_ori: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: u8, } impl lv_roller_ext_t { #[inline] pub fn mode(&self) -> lv_roller_mode_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_mode(&mut self, val: lv_roller_mode_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn auto_fit(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_auto_fit(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( mode: lv_roller_mode_t, auto_fit: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let mode: u8 = unsafe { ::core::mem::transmute(mode) }; mode as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let auto_fit: u8 = unsafe { ::core::mem::transmute(auto_fit) }; auto_fit as u64 }); __bindgen_bitfield_unit } } pub const LV_ROLLER_PART_BG: cty::c_uint = 0; pub const LV_ROLLER_PART_SELECTED: cty::c_uint = 3; pub const _LV_ROLLER_PART_VIRTUAL_LAST: cty::c_uint = 4; pub type _bindgen_ty_75 = cty::c_uint; pub type lv_roller_part_t = u8; extern "C" { pub fn lv_roller_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_roller_set_options( roller: *mut lv_obj_t, options: *const cty::c_char, mode: lv_roller_mode_t, ); } extern "C" { pub fn lv_roller_set_align(roller: *mut lv_obj_t, align: lv_label_align_t); } extern "C" { pub fn lv_roller_set_selected(roller: *mut lv_obj_t, sel_opt: u16, anim: lv_anim_enable_t); } extern "C" { pub fn lv_roller_set_visible_row_count(roller: *mut lv_obj_t, row_cnt: u8); } extern "C" { pub fn lv_roller_set_auto_fit(roller: *mut lv_obj_t, auto_fit: bool); } extern "C" { pub fn lv_roller_get_selected(roller: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_roller_get_option_cnt(roller: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_roller_get_selected_str( roller: *const lv_obj_t, buf: *mut cty::c_char, buf_size: u32, ); } extern "C" { pub fn lv_roller_get_align(roller: *const lv_obj_t) -> lv_label_align_t; } extern "C" { pub fn lv_roller_get_auto_fit(roller: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_roller_get_options(roller: *const lv_obj_t) -> *const cty::c_char; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_textarea_ext_t { pub page: lv_page_ext_t, pub label: *mut lv_obj_t, pub placeholder_txt: *mut cty::c_char, pub style_placeholder: lv_style_list_t, pub pwd_tmp: *mut cty::c_char, pub accepted_chars: *const cty::c_char, pub max_length: u32, pub pwd_show_time: u16, pub cursor: lv_textarea_ext_t__bindgen_ty_1, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_textarea_ext_t__bindgen_ty_1 { pub style: lv_style_list_t, pub valid_x: lv_coord_t, pub pos: u32, pub blink_time: u16, pub area: lv_area_t, pub txt_byte_pos: u32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_textarea_ext_t__bindgen_ty_1 { #[inline] pub fn state(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_state(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn hidden(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_hidden(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn click_pos(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_click_pos(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( state: u8, hidden: u8, click_pos: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let state: u8 = unsafe { ::core::mem::transmute(state) }; state as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let hidden: u8 = unsafe { ::core::mem::transmute(hidden) }; hidden as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let click_pos: u8 = unsafe { ::core::mem::transmute(click_pos) }; click_pos as u64 }); __bindgen_bitfield_unit } } impl lv_textarea_ext_t { #[inline] pub fn pwd_mode(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_pwd_mode(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn one_line(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_one_line(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(pwd_mode: u8, one_line: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let pwd_mode: u8 = unsafe { ::core::mem::transmute(pwd_mode) }; pwd_mode as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let one_line: u8 = unsafe { ::core::mem::transmute(one_line) }; one_line as u64 }); __bindgen_bitfield_unit } } pub const LV_TEXTAREA_PART_BG: cty::c_uint = 0; pub const LV_TEXTAREA_PART_SCROLLBAR: cty::c_uint = 1; pub const LV_TEXTAREA_PART_EDGE_FLASH: cty::c_uint = 2; pub const LV_TEXTAREA_PART_CURSOR: cty::c_uint = 3; pub const LV_TEXTAREA_PART_PLACEHOLDER: cty::c_uint = 4; pub const _LV_TEXTAREA_PART_VIRTUAL_LAST: cty::c_uint = 5; pub const _LV_TEXTAREA_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_76 = cty::c_uint; pub type lv_textarea_style_t = u8; extern "C" { pub fn lv_textarea_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_textarea_add_char(ta: *mut lv_obj_t, c: u32); } extern "C" { pub fn lv_textarea_add_text(ta: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_textarea_del_char(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_del_char_forward(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_set_text(ta: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_textarea_set_placeholder_text(ta: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_textarea_set_cursor_pos(ta: *mut lv_obj_t, pos: i32); } extern "C" { pub fn lv_textarea_set_cursor_hidden(ta: *mut lv_obj_t, hide: bool); } extern "C" { pub fn lv_textarea_set_cursor_click_pos(ta: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_textarea_set_pwd_mode(ta: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_textarea_set_one_line(ta: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_textarea_set_text_align(ta: *mut lv_obj_t, align: lv_label_align_t); } extern "C" { pub fn lv_textarea_set_accepted_chars(ta: *mut lv_obj_t, list: *const cty::c_char); } extern "C" { pub fn lv_textarea_set_max_length(ta: *mut lv_obj_t, num: u32); } extern "C" { pub fn lv_textarea_set_insert_replace(ta: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_textarea_set_text_sel(ta: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_textarea_set_pwd_show_time(ta: *mut lv_obj_t, time: u16); } extern "C" { pub fn lv_textarea_set_cursor_blink_time(ta: *mut lv_obj_t, time: u16); } extern "C" { pub fn lv_textarea_get_text(ta: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_textarea_get_placeholder_text(ta: *mut lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_textarea_get_label(ta: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_textarea_get_cursor_pos(ta: *const lv_obj_t) -> u32; } extern "C" { pub fn lv_textarea_get_cursor_hidden(ta: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_cursor_click_pos(ta: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_pwd_mode(ta: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_one_line(ta: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_accepted_chars(ta: *mut lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_textarea_get_max_length(ta: *mut lv_obj_t) -> u32; } extern "C" { pub fn lv_textarea_text_is_selected(ta: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_text_sel_en(ta: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_textarea_get_pwd_show_time(ta: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_textarea_get_cursor_blink_time(ta: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_textarea_clear_selection(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_cursor_right(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_cursor_left(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_cursor_down(ta: *mut lv_obj_t); } extern "C" { pub fn lv_textarea_cursor_up(ta: *mut lv_obj_t); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_canvas_ext_t { pub img: lv_img_ext_t, pub dsc: lv_img_dsc_t, } pub const LV_CANVAS_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_77 = cty::c_uint; pub type lv_canvas_part_t = u8; extern "C" { pub fn lv_canvas_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_canvas_set_buffer( canvas: *mut lv_obj_t, buf: *mut cty::c_void, w: lv_coord_t, h: lv_coord_t, cf: lv_img_cf_t, ); } extern "C" { pub fn lv_canvas_set_px(canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, c: lv_color_t); } extern "C" { pub fn lv_canvas_set_palette(canvas: *mut lv_obj_t, id: u8, c: lv_color_t); } extern "C" { pub fn lv_canvas_get_px(canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t) -> lv_color_t; } extern "C" { pub fn lv_canvas_get_img(canvas: *mut lv_obj_t) -> *mut lv_img_dsc_t; } extern "C" { pub fn lv_canvas_copy_buf( canvas: *mut lv_obj_t, to_copy: *const cty::c_void, x: lv_coord_t, y: lv_coord_t, w: lv_coord_t, h: lv_coord_t, ); } extern "C" { pub fn lv_canvas_transform( canvas: *mut lv_obj_t, img: *mut lv_img_dsc_t, angle: i16, zoom: u16, offset_x: lv_coord_t, offset_y: lv_coord_t, pivot_x: i32, pivot_y: i32, antialias: bool, ); } extern "C" { pub fn lv_canvas_blur_hor(canvas: *mut lv_obj_t, area: *const lv_area_t, r: u16); } extern "C" { pub fn lv_canvas_blur_ver(canvas: *mut lv_obj_t, area: *const lv_area_t, r: u16); } extern "C" { pub fn lv_canvas_fill_bg(canvas: *mut lv_obj_t, color: lv_color_t, opa: lv_opa_t); } extern "C" { pub fn lv_canvas_draw_rect( canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, w: lv_coord_t, h: lv_coord_t, rect_dsc: *const lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_canvas_draw_text( canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, max_w: lv_coord_t, label_draw_dsc: *mut lv_draw_label_dsc_t, txt: *const cty::c_char, align: lv_label_align_t, ); } extern "C" { pub fn lv_canvas_draw_img( canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, src: *const cty::c_void, img_draw_dsc: *const lv_draw_img_dsc_t, ); } extern "C" { pub fn lv_canvas_draw_line( canvas: *mut lv_obj_t, points: *const lv_point_t, point_cnt: u32, line_draw_dsc: *const lv_draw_line_dsc_t, ); } extern "C" { pub fn lv_canvas_draw_polygon( canvas: *mut lv_obj_t, points: *const lv_point_t, point_cnt: u32, poly_draw_dsc: *const lv_draw_rect_dsc_t, ); } extern "C" { pub fn lv_canvas_draw_arc( canvas: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, r: lv_coord_t, start_angle: i32, end_angle: i32, arc_draw_dsc: *const lv_draw_line_dsc_t, ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_win_ext_t { pub page: *mut lv_obj_t, pub header: *mut lv_obj_t, pub title_txt: *mut cty::c_char, pub btn_w: lv_coord_t, pub title_txt_align: u8, } pub const LV_WIN_PART_BG: cty::c_uint = 0; pub const _LV_WIN_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const LV_WIN_PART_HEADER: cty::c_uint = 64; pub const LV_WIN_PART_CONTENT_SCROLLABLE: cty::c_uint = 65; pub const LV_WIN_PART_SCROLLBAR: cty::c_uint = 66; pub const _LV_WIN_PART_REAL_LAST: cty::c_uint = 67; pub type _bindgen_ty_78 = cty::c_uint; extern "C" { pub fn lv_win_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_win_clean(win: *mut lv_obj_t); } extern "C" { pub fn lv_win_add_btn_right(win: *mut lv_obj_t, img_src: *const cty::c_void) -> *mut lv_obj_t; } extern "C" { pub fn lv_win_add_btn_left(win: *mut lv_obj_t, img_src: *const cty::c_void) -> *mut lv_obj_t; } extern "C" { pub fn lv_win_close_event_cb(btn: *mut lv_obj_t, event: lv_event_t); } extern "C" { pub fn lv_win_set_title(win: *mut lv_obj_t, title: *const cty::c_char); } extern "C" { pub fn lv_win_set_header_height(win: *mut lv_obj_t, size: lv_coord_t); } extern "C" { pub fn lv_win_set_btn_width(win: *mut lv_obj_t, width: lv_coord_t); } extern "C" { pub fn lv_win_set_content_size(win: *mut lv_obj_t, w: lv_coord_t, h: lv_coord_t); } extern "C" { pub fn lv_win_set_layout(win: *mut lv_obj_t, layout: lv_layout_t); } extern "C" { pub fn lv_win_set_scrollbar_mode(win: *mut lv_obj_t, sb_mode: lv_scrollbar_mode_t); } extern "C" { pub fn lv_win_set_anim_time(win: *mut lv_obj_t, anim_time: u16); } extern "C" { pub fn lv_win_set_drag(win: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_win_title_set_alignment(win: *mut lv_obj_t, alignment: u8); } extern "C" { pub fn lv_win_get_title(win: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_win_get_content(win: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_win_get_header_height(win: *const lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_win_get_btn_width(win: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_win_get_from_btn(ctrl_btn: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_win_get_layout(win: *mut lv_obj_t) -> lv_layout_t; } extern "C" { pub fn lv_win_get_sb_mode(win: *mut lv_obj_t) -> lv_scrollbar_mode_t; } extern "C" { pub fn lv_win_get_anim_time(win: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_win_get_width(win: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_win_title_get_alignment(win: *mut lv_obj_t) -> u8; } extern "C" { pub fn lv_win_focus(win: *mut lv_obj_t, obj: *mut lv_obj_t, anim_en: lv_anim_enable_t); } pub const LV_TABVIEW_TAB_POS_NONE: cty::c_uint = 0; pub const LV_TABVIEW_TAB_POS_TOP: cty::c_uint = 1; pub const LV_TABVIEW_TAB_POS_BOTTOM: cty::c_uint = 2; pub const LV_TABVIEW_TAB_POS_LEFT: cty::c_uint = 3; pub const LV_TABVIEW_TAB_POS_RIGHT: cty::c_uint = 4; pub type _bindgen_ty_79 = cty::c_uint; pub type lv_tabview_btns_pos_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_tabview_ext_t { pub btns: *mut lv_obj_t, pub indic: *mut lv_obj_t, pub content: *mut lv_obj_t, pub tab_name_ptr: *mut *const cty::c_char, pub point_last: lv_point_t, pub tab_cur: u16, pub tab_cnt: u16, pub anim_time: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 5usize], } impl lv_tabview_ext_t { #[inline] pub fn btns_pos(&self) -> lv_tabview_btns_pos_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u8) } } #[inline] pub fn set_btns_pos(&mut self, val: lv_tabview_btns_pos_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 3u8, val as u64) } } #[inline] pub fn new_bitfield_1(btns_pos: lv_tabview_btns_pos_t) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 3u8, { let btns_pos: u8 = unsafe { ::core::mem::transmute(btns_pos) }; btns_pos as u64 }); __bindgen_bitfield_unit } } pub const LV_TABVIEW_PART_BG: cty::c_uint = 0; pub const _LV_TABVIEW_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const LV_TABVIEW_PART_BG_SCROLLABLE: cty::c_uint = 64; pub const LV_TABVIEW_PART_TAB_BG: cty::c_uint = 65; pub const LV_TABVIEW_PART_TAB_BTN: cty::c_uint = 66; pub const LV_TABVIEW_PART_INDIC: cty::c_uint = 67; pub const _LV_TABVIEW_PART_REAL_LAST: cty::c_uint = 68; pub type _bindgen_ty_80 = cty::c_uint; pub type lv_tabview_part_t = u8; extern "C" { pub fn lv_tabview_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_tabview_add_tab(tabview: *mut lv_obj_t, name: *const cty::c_char) -> *mut lv_obj_t; } extern "C" { pub fn lv_tabview_clean_tab(tab: *mut lv_obj_t); } extern "C" { pub fn lv_tabview_set_tab_act(tabview: *mut lv_obj_t, id: u16, anim: lv_anim_enable_t); } extern "C" { pub fn lv_tabview_set_tab_name(tabview: *mut lv_obj_t, id: u16, name: *mut cty::c_char); } extern "C" { pub fn lv_tabview_set_anim_time(tabview: *mut lv_obj_t, anim_time: u16); } extern "C" { pub fn lv_tabview_set_btns_pos(tabview: *mut lv_obj_t, btns_pos: lv_tabview_btns_pos_t); } extern "C" { pub fn lv_tabview_get_tab_act(tabview: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_tabview_get_tab_count(tabview: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_tabview_get_tab(tabview: *const lv_obj_t, id: u16) -> *mut lv_obj_t; } extern "C" { pub fn lv_tabview_get_anim_time(tabview: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_tabview_get_btns_pos(tabview: *const lv_obj_t) -> lv_tabview_btns_pos_t; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_tileview_ext_t { pub page: lv_page_ext_t, pub valid_pos: *const lv_point_t, pub valid_pos_cnt: u16, pub anim_time: u16, pub act_id: lv_point_t, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 7usize], } impl lv_tileview_ext_t { #[inline] pub fn drag_top_en(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_drag_top_en(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn drag_bottom_en(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u8) } } #[inline] pub fn set_drag_bottom_en(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 1u8, val as u64) } } #[inline] pub fn drag_left_en(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_drag_left_en(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn drag_right_en(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) } } #[inline] pub fn set_drag_right_en(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( drag_top_en: u8, drag_bottom_en: u8, drag_left_en: u8, drag_right_en: u8, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let drag_top_en: u8 = unsafe { ::core::mem::transmute(drag_top_en) }; drag_top_en as u64 }); __bindgen_bitfield_unit.set(1usize, 1u8, { let drag_bottom_en: u8 = unsafe { ::core::mem::transmute(drag_bottom_en) }; drag_bottom_en as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let drag_left_en: u8 = unsafe { ::core::mem::transmute(drag_left_en) }; drag_left_en as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let drag_right_en: u8 = unsafe { ::core::mem::transmute(drag_right_en) }; drag_right_en as u64 }); __bindgen_bitfield_unit } } pub const LV_TILEVIEW_PART_BG: cty::c_uint = 0; pub const LV_TILEVIEW_PART_SCROLLBAR: cty::c_uint = 1; pub const LV_TILEVIEW_PART_EDGE_FLASH: cty::c_uint = 2; pub const _LV_TILEVIEW_PART_VIRTUAL_LAST: cty::c_uint = 3; pub const _LV_TILEVIEW_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_81 = cty::c_uint; extern "C" { pub fn lv_tileview_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_tileview_add_element(tileview: *mut lv_obj_t, element: *mut lv_obj_t); } extern "C" { pub fn lv_tileview_set_valid_positions( tileview: *mut lv_obj_t, valid_pos: *const lv_point_t, valid_pos_cnt: u16, ); } extern "C" { pub fn lv_tileview_set_tile_act( tileview: *mut lv_obj_t, x: lv_coord_t, y: lv_coord_t, anim: lv_anim_enable_t, ); } extern "C" { pub fn lv_tileview_get_tile_act( tileview: *mut lv_obj_t, x: *mut lv_coord_t, y: *mut lv_coord_t, ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_msgbox_ext_t { pub bg: lv_cont_ext_t, pub text: *mut lv_obj_t, pub btnm: *mut lv_obj_t, pub anim_time: u16, } pub const LV_MSGBOX_PART_BG: cty::c_uint = 0; pub const LV_MSGBOX_PART_BTN_BG: cty::c_uint = 64; pub const LV_MSGBOX_PART_BTN: cty::c_uint = 65; pub type _bindgen_ty_82 = cty::c_uint; pub type lv_msgbox_style_t = u8; extern "C" { pub fn lv_msgbox_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_msgbox_add_btns(mbox: *mut lv_obj_t, btn_mapaction: *mut *const cty::c_char); } extern "C" { pub fn lv_msgbox_set_text(mbox: *mut lv_obj_t, txt: *const cty::c_char); } extern "C" { pub fn lv_msgbox_set_text_fmt(mbox: *mut lv_obj_t, fmt: *const cty::c_char, ...); } extern "C" { pub fn lv_msgbox_set_anim_time(mbox: *mut lv_obj_t, anim_time: u16); } extern "C" { pub fn lv_msgbox_start_auto_close(mbox: *mut lv_obj_t, delay: u16); } extern "C" { pub fn lv_msgbox_stop_auto_close(mbox: *mut lv_obj_t); } extern "C" { pub fn lv_msgbox_set_recolor(mbox: *mut lv_obj_t, en: bool); } extern "C" { pub fn lv_msgbox_get_text(mbox: *const lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_msgbox_get_active_btn(mbox: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_msgbox_get_active_btn_text(mbox: *mut lv_obj_t) -> *const cty::c_char; } extern "C" { pub fn lv_msgbox_get_anim_time(mbox: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_msgbox_get_recolor(mbox: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_msgbox_get_btnmatrix(mbox: *mut lv_obj_t) -> *mut lv_obj_t; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_objmask_mask_t { pub param: *mut cty::c_void, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_objmask_ext_t { pub cont: lv_cont_ext_t, pub mask_ll: lv_ll_t, } pub const LV_OBJMASK_PART_MAIN: cty::c_uint = 0; pub type _bindgen_ty_83 = cty::c_uint; pub type lv_objmask_part_t = u8; extern "C" { pub fn lv_objmask_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_objmask_add_mask( objmask: *mut lv_obj_t, param: *mut cty::c_void, ) -> *mut lv_objmask_mask_t; } extern "C" { pub fn lv_objmask_update_mask( objmask: *mut lv_obj_t, mask: *mut lv_objmask_mask_t, param: *mut cty::c_void, ); } extern "C" { pub fn lv_objmask_remove_mask(objmask: *mut lv_obj_t, mask: *mut lv_objmask_mask_t); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_linemeter_ext_t { pub scale_angle: u16, pub angle_ofs: u16, pub line_cnt: u16, pub cur_value: i32, pub min_value: i32, pub max_value: i32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl lv_linemeter_ext_t { #[inline] pub fn mirrored(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_mirrored(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1(mirrored: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let mirrored: u8 = unsafe { ::core::mem::transmute(mirrored) }; mirrored as u64 }); __bindgen_bitfield_unit } } pub const LV_LINEMETER_PART_MAIN: cty::c_uint = 0; pub const _LV_LINEMETER_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const _LV_LINEMETER_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_84 = cty::c_uint; pub type lv_linemeter_part_t = u8; extern "C" { pub fn lv_linemeter_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_linemeter_set_value(lmeter: *mut lv_obj_t, value: i32); } extern "C" { pub fn lv_linemeter_set_range(lmeter: *mut lv_obj_t, min: i32, max: i32); } extern "C" { pub fn lv_linemeter_set_scale(lmeter: *mut lv_obj_t, angle: u16, line_cnt: u16); } extern "C" { pub fn lv_linemeter_set_angle_offset(lmeter: *mut lv_obj_t, angle: u16); } extern "C" { pub fn lv_linemeter_set_mirror(lmeter: *mut lv_obj_t, mirror: bool); } extern "C" { pub fn lv_linemeter_get_value(lmeter: *const lv_obj_t) -> i32; } extern "C" { pub fn lv_linemeter_get_min_value(lmeter: *const lv_obj_t) -> i32; } extern "C" { pub fn lv_linemeter_get_max_value(lmeter: *const lv_obj_t) -> i32; } extern "C" { pub fn lv_linemeter_get_line_count(lmeter: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_linemeter_get_scale_angle(lmeter: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_linemeter_get_angle_offset(lmeter: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_linemeter_draw_scale(lmeter: *mut lv_obj_t, clip_area: *const lv_area_t, part: u8); } extern "C" { pub fn lv_linemeter_get_mirror(lmeter: *mut lv_obj_t) -> bool; } pub type lv_gauge_format_cb_t = ::core::option::Option< unsafe extern "C" fn( gauge: *mut lv_obj_t, buf: *mut cty::c_char, bufsize: cty::c_int, value: i32, ), >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_gauge_ext_t { pub lmeter: lv_linemeter_ext_t, pub values: *mut i32, pub needle_colors: *const lv_color_t, pub needle_img: *const cty::c_void, pub needle_img_pivot: lv_point_t, pub style_needle: lv_style_list_t, pub style_strong: lv_style_list_t, pub needle_count: u8, pub label_count: u8, pub format_cb: lv_gauge_format_cb_t, } pub const LV_GAUGE_PART_MAIN: cty::c_uint = 0; pub const LV_GAUGE_PART_MAJOR: cty::c_uint = 1; pub const LV_GAUGE_PART_NEEDLE: cty::c_uint = 2; pub const _LV_GAUGE_PART_VIRTUAL_LAST: cty::c_uint = 1; pub const _LV_GAUGE_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_85 = cty::c_uint; pub type lv_gauge_style_t = u8; extern "C" { pub fn lv_gauge_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_gauge_set_needle_count( gauge: *mut lv_obj_t, needle_cnt: u8, colors: *const lv_color_t, ); } extern "C" { pub fn lv_gauge_set_value(gauge: *mut lv_obj_t, needle_id: u8, value: i32); } extern "C" { pub fn lv_gauge_set_scale(gauge: *mut lv_obj_t, angle: u16, line_cnt: u8, label_cnt: u8); } extern "C" { pub fn lv_gauge_set_needle_img( gauge: *mut lv_obj_t, img: *const cty::c_void, pivot_x: lv_coord_t, pivot_y: lv_coord_t, ); } extern "C" { pub fn lv_gauge_set_formatter_cb(gauge: *mut lv_obj_t, format_cb: lv_gauge_format_cb_t); } extern "C" { pub fn lv_gauge_get_value(gauge: *const lv_obj_t, needle: u8) -> i32; } extern "C" { pub fn lv_gauge_get_needle_count(gauge: *const lv_obj_t) -> u8; } extern "C" { pub fn lv_gauge_get_label_count(gauge: *const lv_obj_t) -> u8; } extern "C" { pub fn lv_gauge_get_needle_img(gauge: *mut lv_obj_t) -> *const cty::c_void; } extern "C" { pub fn lv_gauge_get_needle_img_pivot_x(gauge: *mut lv_obj_t) -> lv_coord_t; } extern "C" { pub fn lv_gauge_get_needle_img_pivot_y(gauge: *mut lv_obj_t) -> lv_coord_t; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_switch_ext_t { pub bar: lv_bar_ext_t, pub style_knob: lv_style_list_t, } pub const LV_SWITCH_PART_BG: cty::c_uint = 0; pub const LV_SWITCH_PART_INDIC: cty::c_uint = 1; pub const LV_SWITCH_PART_KNOB: cty::c_uint = 2; pub const _LV_SWITCH_PART_VIRTUAL_LAST: cty::c_uint = 3; pub type _bindgen_ty_86 = cty::c_uint; pub type lv_switch_part_t = u8; extern "C" { pub fn lv_switch_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_switch_on(sw: *mut lv_obj_t, anim: lv_anim_enable_t); } extern "C" { pub fn lv_switch_off(sw: *mut lv_obj_t, anim: lv_anim_enable_t); } extern "C" { pub fn lv_switch_toggle(sw: *mut lv_obj_t, anim: lv_anim_enable_t) -> bool; } pub const LV_ARC_TYPE_NORMAL: cty::c_uint = 0; pub const LV_ARC_TYPE_SYMMETRIC: cty::c_uint = 1; pub const LV_ARC_TYPE_REVERSE: cty::c_uint = 2; pub type _bindgen_ty_87 = cty::c_uint; pub type lv_arc_type_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_arc_ext_t { pub rotation_angle: u16, pub arc_angle_start: u16, pub arc_angle_end: u16, pub bg_angle_start: u16, pub bg_angle_end: u16, pub style_arc: lv_style_list_t, pub style_knob: lv_style_list_t, pub cur_value: i16, pub min_value: i16, pub max_value: i16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub chg_rate: u16, pub last_tick: u32, pub last_angle: i16, } impl lv_arc_ext_t { #[inline] pub fn dragging(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } } #[inline] pub fn set_dragging(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn type_(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u16) } } #[inline] pub fn set_type(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 2u8, val as u64) } } #[inline] pub fn adjustable(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u16) } } #[inline] pub fn set_adjustable(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(3usize, 1u8, val as u64) } } #[inline] pub fn min_close(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u16) } } #[inline] pub fn set_min_close(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(4usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( dragging: u16, type_: u16, adjustable: u16, min_close: u16, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let dragging: u16 = unsafe { ::core::mem::transmute(dragging) }; dragging as u64 }); __bindgen_bitfield_unit.set(1usize, 2u8, { let type_: u16 = unsafe { ::core::mem::transmute(type_) }; type_ as u64 }); __bindgen_bitfield_unit.set(3usize, 1u8, { let adjustable: u16 = unsafe { ::core::mem::transmute(adjustable) }; adjustable as u64 }); __bindgen_bitfield_unit.set(4usize, 1u8, { let min_close: u16 = unsafe { ::core::mem::transmute(min_close) }; min_close as u64 }); __bindgen_bitfield_unit } } pub const LV_ARC_PART_BG: cty::c_uint = 0; pub const LV_ARC_PART_INDIC: cty::c_uint = 1; pub const LV_ARC_PART_KNOB: cty::c_uint = 2; pub const _LV_ARC_PART_VIRTUAL_LAST: cty::c_uint = 3; pub const _LV_ARC_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_88 = cty::c_uint; pub type lv_arc_part_t = u8; extern "C" { pub fn lv_arc_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_arc_set_start_angle(arc: *mut lv_obj_t, start: u16); } extern "C" { pub fn lv_arc_set_end_angle(arc: *mut lv_obj_t, end: u16); } extern "C" { pub fn lv_arc_set_angles(arc: *mut lv_obj_t, start: u16, end: u16); } extern "C" { pub fn lv_arc_set_bg_start_angle(arc: *mut lv_obj_t, start: u16); } extern "C" { pub fn lv_arc_set_bg_end_angle(arc: *mut lv_obj_t, end: u16); } extern "C" { pub fn lv_arc_set_bg_angles(arc: *mut lv_obj_t, start: u16, end: u16); } extern "C" { pub fn lv_arc_set_rotation(arc: *mut lv_obj_t, rotation_angle: u16); } extern "C" { pub fn lv_arc_set_type(arc: *mut lv_obj_t, type_: lv_arc_type_t); } extern "C" { pub fn lv_arc_set_value(arc: *mut lv_obj_t, value: i16); } extern "C" { pub fn lv_arc_set_range(arc: *mut lv_obj_t, min: i16, max: i16); } extern "C" { pub fn lv_arc_set_chg_rate(arc: *mut lv_obj_t, threshold: u16); } extern "C" { pub fn lv_arc_set_adjustable(arc: *mut lv_obj_t, adjustable: bool); } extern "C" { pub fn lv_arc_get_angle_start(arc: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_arc_get_angle_end(arc: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_arc_get_bg_angle_start(arc: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_arc_get_bg_angle_end(arc: *mut lv_obj_t) -> u16; } extern "C" { pub fn lv_arc_get_type(arc: *const lv_obj_t) -> lv_arc_type_t; } extern "C" { pub fn lv_arc_get_value(arc: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_arc_get_min_value(arc: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_arc_get_max_value(arc: *const lv_obj_t) -> i16; } extern "C" { pub fn lv_arc_is_dragged(arc: *const lv_obj_t) -> bool; } extern "C" { pub fn lv_arc_get_adjustable(arc: *mut lv_obj_t) -> bool; } pub const LV_SPINNER_TYPE_SPINNING_ARC: cty::c_uint = 0; pub const LV_SPINNER_TYPE_FILLSPIN_ARC: cty::c_uint = 1; pub const LV_SPINNER_TYPE_CONSTANT_ARC: cty::c_uint = 2; pub type _bindgen_ty_89 = cty::c_uint; pub type lv_spinner_type_t = u8; pub const LV_SPINNER_DIR_FORWARD: cty::c_uint = 0; pub const LV_SPINNER_DIR_BACKWARD: cty::c_uint = 1; pub type _bindgen_ty_90 = cty::c_uint; pub type lv_spinner_dir_t = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_spinner_ext_t { pub arc: lv_arc_ext_t, pub arc_length: lv_anim_value_t, pub time: u16, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, pub __bindgen_padding_0: [u8; 3usize], } impl lv_spinner_ext_t { #[inline] pub fn anim_type(&self) -> lv_spinner_type_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u8) } } #[inline] pub fn set_anim_type(&mut self, val: lv_spinner_type_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 2u8, val as u64) } } #[inline] pub fn anim_dir(&self) -> lv_spinner_dir_t { unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u8) } } #[inline] pub fn set_anim_dir(&mut self, val: lv_spinner_dir_t) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(2usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( anim_type: lv_spinner_type_t, anim_dir: lv_spinner_dir_t, ) -> __BindgenBitfieldUnit<[u8; 1usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 2u8, { let anim_type: u8 = unsafe { ::core::mem::transmute(anim_type) }; anim_type as u64 }); __bindgen_bitfield_unit.set(2usize, 1u8, { let anim_dir: u8 = unsafe { ::core::mem::transmute(anim_dir) }; anim_dir as u64 }); __bindgen_bitfield_unit } } pub const LV_SPINNER_PART_BG: cty::c_uint = 0; pub const LV_SPINNER_PART_INDIC: cty::c_uint = 1; pub const _LV_SPINNER_PART_VIRTUAL_LAST: cty::c_uint = 2; pub const _LV_SPINNER_PART_REAL_LAST: cty::c_uint = 64; pub type _bindgen_ty_91 = cty::c_uint; pub type lv_spinner_style_t = u8; extern "C" { pub fn lv_spinner_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_spinner_set_arc_length(spinner: *mut lv_obj_t, deg: lv_anim_value_t); } extern "C" { pub fn lv_spinner_set_spin_time(spinner: *mut lv_obj_t, time: u16); } extern "C" { pub fn lv_spinner_set_type(spinner: *mut lv_obj_t, type_: lv_spinner_type_t); } extern "C" { pub fn lv_spinner_set_dir(spinner: *mut lv_obj_t, dir: lv_spinner_dir_t); } extern "C" { pub fn lv_spinner_get_arc_length(spinner: *const lv_obj_t) -> lv_anim_value_t; } extern "C" { pub fn lv_spinner_get_spin_time(spinner: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_spinner_get_type(spinner: *mut lv_obj_t) -> lv_spinner_type_t; } extern "C" { pub fn lv_spinner_get_dir(spinner: *mut lv_obj_t) -> lv_spinner_dir_t; } extern "C" { pub fn lv_spinner_anim_cb(ptr: *mut cty::c_void, val: lv_anim_value_t); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_calendar_date_t { pub year: u16, pub month: i8, pub day: i8, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_calendar_ext_t { pub today: lv_calendar_date_t, pub showed_date: lv_calendar_date_t, pub highlighted_dates: *mut lv_calendar_date_t, pub btn_pressing: i8, pub highlighted_dates_num: u16, pub pressed_date: lv_calendar_date_t, pub day_names: *mut *const cty::c_char, pub month_names: *mut *const cty::c_char, pub style_header: lv_style_list_t, pub style_day_names: lv_style_list_t, pub style_date_nums: lv_style_list_t, } pub const LV_CALENDAR_PART_BG: cty::c_uint = 0; pub const LV_CALENDAR_PART_HEADER: cty::c_uint = 1; pub const LV_CALENDAR_PART_DAY_NAMES: cty::c_uint = 2; pub const LV_CALENDAR_PART_DATE: cty::c_uint = 3; pub type _bindgen_ty_92 = cty::c_uint; pub type lv_calendar_part_t = u8; extern "C" { pub fn lv_calendar_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_calendar_set_today_date(calendar: *mut lv_obj_t, today: *mut lv_calendar_date_t); } extern "C" { pub fn lv_calendar_set_showed_date(calendar: *mut lv_obj_t, showed: *mut lv_calendar_date_t); } extern "C" { pub fn lv_calendar_set_highlighted_dates( calendar: *mut lv_obj_t, highlighted: *mut lv_calendar_date_t, date_num: u16, ); } extern "C" { pub fn lv_calendar_set_day_names(calendar: *mut lv_obj_t, day_names: *mut *const cty::c_char); } extern "C" { pub fn lv_calendar_set_month_names( calendar: *mut lv_obj_t, month_names: *mut *const cty::c_char, ); } extern "C" { pub fn lv_calendar_get_today_date(calendar: *const lv_obj_t) -> *mut lv_calendar_date_t; } extern "C" { pub fn lv_calendar_get_showed_date(calendar: *const lv_obj_t) -> *mut lv_calendar_date_t; } extern "C" { pub fn lv_calendar_get_pressed_date(calendar: *const lv_obj_t) -> *mut lv_calendar_date_t; } extern "C" { pub fn lv_calendar_get_highlighted_dates(calendar: *const lv_obj_t) -> *mut lv_calendar_date_t; } extern "C" { pub fn lv_calendar_get_highlighted_dates_num(calendar: *const lv_obj_t) -> u16; } extern "C" { pub fn lv_calendar_get_day_names(calendar: *const lv_obj_t) -> *mut *const cty::c_char; } extern "C" { pub fn lv_calendar_get_month_names(calendar: *const lv_obj_t) -> *mut *const cty::c_char; } extern "C" { pub fn lv_calendar_get_day_of_week(year: u32, month: u32, day: u32) -> u8; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct lv_spinbox_ext_t { pub ta: lv_textarea_ext_t, pub value: i32, pub range_max: i32, pub range_min: i32, pub step: i32, pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, pub __bindgen_padding_0: [u16; 3usize], } impl lv_spinbox_ext_t { #[inline] pub fn rollover(&self) -> u8 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) } } #[inline] pub fn set_rollover(&mut self, val: u8) { unsafe { let val: u8 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 1u8, val as u64) } } #[inline] pub fn digit_count(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 4u8) as u16) } } #[inline] pub fn set_digit_count(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(1usize, 4u8, val as u64) } } #[inline] pub fn dec_point_pos(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 4u8) as u16) } } #[inline] pub fn set_dec_point_pos(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(5usize, 4u8, val as u64) } } #[inline] pub fn digit_padding_left(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 4u8) as u16) } } #[inline] pub fn set_digit_padding_left(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(9usize, 4u8, val as u64) } } #[inline] pub fn new_bitfield_1( rollover: u8, digit_count: u16, dec_point_pos: u16, digit_padding_left: u16, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 1u8, { let rollover: u8 = unsafe { ::core::mem::transmute(rollover) }; rollover as u64 }); __bindgen_bitfield_unit.set(1usize, 4u8, { let digit_count: u16 = unsafe { ::core::mem::transmute(digit_count) }; digit_count as u64 }); __bindgen_bitfield_unit.set(5usize, 4u8, { let dec_point_pos: u16 = unsafe { ::core::mem::transmute(dec_point_pos) }; dec_point_pos as u64 }); __bindgen_bitfield_unit.set(9usize, 4u8, { let digit_padding_left: u16 = unsafe { ::core::mem::transmute(digit_padding_left) }; digit_padding_left as u64 }); __bindgen_bitfield_unit } } pub const LV_SPINBOX_PART_BG: cty::c_uint = 0; pub const LV_SPINBOX_PART_CURSOR: cty::c_uint = 3; pub const _LV_SPINBOX_PART_VIRTUAL_LAST: cty::c_uint = 5; pub const _LV_SPINBOX_PART_REAL_LAST: cty::c_uint = 65; pub type _bindgen_ty_93 = cty::c_uint; pub type lv_spinbox_part_t = u8; extern "C" { pub fn lv_spinbox_create(par: *mut lv_obj_t, copy: *const lv_obj_t) -> *mut lv_obj_t; } extern "C" { pub fn lv_spinbox_set_rollover(spinbox: *mut lv_obj_t, b: bool); } extern "C" { pub fn lv_spinbox_set_value(spinbox: *mut lv_obj_t, i: i32); } extern "C" { pub fn lv_spinbox_set_digit_format( spinbox: *mut lv_obj_t, digit_count: u8, separator_position: u8, ); } extern "C" { pub fn lv_spinbox_set_step(spinbox: *mut lv_obj_t, step: u32); } extern "C" { pub fn lv_spinbox_set_range(spinbox: *mut lv_obj_t, range_min: i32, range_max: i32); } extern "C" { pub fn lv_spinbox_set_padding_left(spinbox: *mut lv_obj_t, padding: u8); } extern "C" { pub fn lv_spinbox_get_rollover(spinbox: *mut lv_obj_t) -> bool; } extern "C" { pub fn lv_spinbox_get_value(spinbox: *mut lv_obj_t) -> i32; } extern "C" { pub fn lv_spinbox_step_next(spinbox: *mut lv_obj_t); } extern "C" { pub fn lv_spinbox_step_prev(spinbox: *mut lv_obj_t); } extern "C" { pub fn lv_spinbox_increment(spinbox: *mut lv_obj_t); } extern "C" { pub fn lv_spinbox_decrement(spinbox: *mut lv_obj_t); } #[repr(C)] #[derive(Copy, Clone)] pub struct lv_img_cache_entry_t { pub dec_dsc: lv_img_decoder_dsc_t, pub life: i32, } extern "C" { pub fn _lv_img_cache_open( src: *const cty::c_void, color: lv_color_t, ) -> *mut lv_img_cache_entry_t; } extern "C" { pub fn lv_img_cache_set_size(new_slot_num: u16); } extern "C" { pub fn lv_img_cache_invalidate_src(src: *const cty::c_void); } extern "C" { pub fn _LV_COLOR_MAKE(r: u8, g: u8, b: u8) -> lv_color_t; } extern "C" { pub fn _LV_COLOR_GET_R(color: lv_color_t) -> u16; } extern "C" { pub fn _LV_COLOR_GET_G(color: lv_color_t) -> u16; } extern "C" { pub fn _LV_COLOR_GET_B(color: lv_color_t) -> u16; } extern "C" { pub fn _LV_COLOR_GET_A(color: lv_color_t) -> u16; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __locale_data { pub _address: u8, } pub type __builtin_va_list = [__va_list_tag; 1usize]; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __va_list_tag { pub gp_offset: cty::c_uint, pub fp_offset: cty::c_uint, pub overflow_arg_area: *mut cty::c_void, pub reg_save_area: *mut cty::c_void, }