From d90fe8171ed197fc83a5d8fad716cbedf318cf76 Mon Sep 17 00:00:00 2001 From: Jasper Bekkers Date: Mon, 18 May 2020 20:54:30 +0200 Subject: [PATCH] WebAssembly FFI shells (#322) * Allow imgui-rs to generate wasm-ffi bindings * Missing wasm_bindings.rs file * Update wasm bindings * Take wasm import name from environment variable * Remove debug message * Formatting --- Cargo.toml | 3 + imgui-sys-bindgen/Cargo.toml | 2 +- imgui-sys-bindgen/src/lib.rs | 10 +- imgui-sys-bindgen/src/main.rs | 18 +- imgui-sys/Cargo.toml | 4 + imgui-sys/build.rs | 29 +- imgui-sys/src/lib.rs | 8 + imgui-sys/src/wasm_bindings.rs | 8481 ++++++++++++++++++++++++++++++++ src/drag.rs | 8 +- src/input_widget.rs | 13 +- 10 files changed, 8551 insertions(+), 25 deletions(-) create mode 100644 imgui-sys/src/wasm_bindings.rs diff --git a/Cargo.toml b/Cargo.toml index f7d09ef..fef562b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,6 +22,9 @@ imgui-sys = { version = "0.4.0-pre", path = "imgui-sys" } lazy_static = "1.1" parking_lot = "0.10" +[features] +wasm = ["imgui-sys/wasm"] + [dev-dependencies] memoffset = "0.5" diff --git a/imgui-sys-bindgen/Cargo.toml b/imgui-sys-bindgen/Cargo.toml index 5d6abcc..09156b2 100644 --- a/imgui-sys-bindgen/Cargo.toml +++ b/imgui-sys-bindgen/Cargo.toml @@ -13,4 +13,4 @@ bindgen = "0.53" failure = "0.1" serde = "1.0" serde_derive = "1.0" -serde_json = "1.0" +serde_json = "1.0" \ No newline at end of file diff --git a/imgui-sys-bindgen/src/lib.rs b/imgui-sys-bindgen/src/lib.rs index 7f74258..b2b624e 100644 --- a/imgui-sys-bindgen/src/lib.rs +++ b/imgui-sys-bindgen/src/lib.rs @@ -77,7 +77,10 @@ fn parse_whitelist( }) } -pub fn generate_bindings>(cimgui_path: &P) -> Result { +pub fn generate_bindings>( + cimgui_path: &P, + wasm_import_name: Option, +) -> Result { let cimgui_output_path = cimgui_path.as_ref().join("generator").join("output"); let structs_and_enums = File::open(cimgui_output_path.join("structs_and_enums.json"))?; let definitions = File::open(cimgui_output_path.join("definitions.json"))?; @@ -105,6 +108,11 @@ pub fn generate_bindings>(cimgui_path: &P) -> Result io::Result<()> { } fn main() -> io::Result<()> { - let mut build = cc::Build::new(); - build.cpp(true); - // Disabled due to linking issues - build - .define("CIMGUI_NO_EXPORT", None) - .define("IMGUI_DISABLE_WIN32_FUNCTIONS", None) - .define("IMGUI_DISABLE_OSX_FUNCTIONS", None); + #[cfg(not(feature = "wasm"))] + { + let mut build = cc::Build::new(); + build.cpp(true); + // Disabled due to linking issues + build + .define("CIMGUI_NO_EXPORT", None) + .define("IMGUI_DISABLE_WIN32_FUNCTIONS", None) + .define("IMGUI_DISABLE_OSX_FUNCTIONS", None); - build.flag_if_supported("-Wno-return-type-c-linkage"); - for path in &CPP_FILES { - assert_file_exists(path)?; - build.file(path); + build.flag_if_supported("-Wno-return-type-c-linkage"); + for path in &CPP_FILES { + assert_file_exists(path)?; + build.file(path); + } + build.compile("libcimgui.a"); } - build.compile("libcimgui.a"); Ok(()) } diff --git a/imgui-sys/src/lib.rs b/imgui-sys/src/lib.rs index 1bd9614..5eb6563 100644 --- a/imgui-sys/src/lib.rs +++ b/imgui-sys/src/lib.rs @@ -1,5 +1,13 @@ +#[cfg(feature = "wasm")] +mod wasm_bindings; + +#[cfg(feature = "wasm")] +pub use crate::wasm_bindings::*; + +#[cfg(not(feature = "wasm"))] mod bindings; +#[cfg(not(feature = "wasm"))] pub use crate::bindings::*; impl ImVec2 { diff --git a/imgui-sys/src/wasm_bindings.rs b/imgui-sys/src/wasm_bindings.rs new file mode 100644 index 0000000..7b8504e --- /dev/null +++ b/imgui-sys/src/wasm_bindings.rs @@ -0,0 +1,8481 @@ +/* automatically generated by rust-bindgen */ + +#![allow(non_upper_case_globals)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(clippy::all)] + +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImVec2_Simple { + pub x: f32, + pub y: f32, +} +#[test] +fn bindgen_test_layout_ImVec2_Simple() { + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(ImVec2_Simple)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImVec2_Simple)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).x as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVec2_Simple), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).y as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVec2_Simple), + "::", + stringify!(y) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImVec4_Simple { + pub x: f32, + pub y: f32, + pub z: f32, + pub w: f32, +} +#[test] +fn bindgen_test_layout_ImVec4_Simple() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVec4_Simple)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImVec4_Simple)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).x as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVec4_Simple), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).y as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVec4_Simple), + "::", + stringify!(y) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).z as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVec4_Simple), + "::", + stringify!(z) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).w as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImVec4_Simple), + "::", + stringify!(w) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImColor_Simple { + pub Value: ImVec4_Simple, +} +#[test] +fn bindgen_test_layout_ImColor_Simple() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImColor_Simple)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImColor_Simple)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Value as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImColor_Simple), + "::", + stringify!(Value) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ImGuiContext { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ImDrawListSharedData { + _unused: [u8; 0], +} +pub type ImTextureID = *mut ::std::os::raw::c_void; +pub type ImGuiID = ::std::os::raw::c_uint; +pub type ImWchar = ::std::os::raw::c_ushort; +pub type ImGuiCol = ::std::os::raw::c_int; +pub type ImGuiCond = ::std::os::raw::c_int; +pub type ImGuiDataType = ::std::os::raw::c_int; +pub type ImGuiDir = ::std::os::raw::c_int; +pub type ImGuiKey = ::std::os::raw::c_int; +pub type ImGuiMouseButton = ::std::os::raw::c_int; +pub type ImGuiMouseCursor = ::std::os::raw::c_int; +pub type ImGuiStyleVar = ::std::os::raw::c_int; +pub type ImDrawCornerFlags = ::std::os::raw::c_int; +pub type ImDrawListFlags = ::std::os::raw::c_int; +pub type ImFontAtlasFlags = ::std::os::raw::c_int; +pub type ImGuiBackendFlags = ::std::os::raw::c_int; +pub type ImGuiColorEditFlags = ::std::os::raw::c_int; +pub type ImGuiConfigFlags = ::std::os::raw::c_int; +pub type ImGuiComboFlags = ::std::os::raw::c_int; +pub type ImGuiDragDropFlags = ::std::os::raw::c_int; +pub type ImGuiFocusedFlags = ::std::os::raw::c_int; +pub type ImGuiHoveredFlags = ::std::os::raw::c_int; +pub type ImGuiInputTextFlags = ::std::os::raw::c_int; +pub type ImGuiSelectableFlags = ::std::os::raw::c_int; +pub type ImGuiTabBarFlags = ::std::os::raw::c_int; +pub type ImGuiTabItemFlags = ::std::os::raw::c_int; +pub type ImGuiTreeNodeFlags = ::std::os::raw::c_int; +pub type ImGuiWindowFlags = ::std::os::raw::c_int; +pub type ImGuiInputTextCallback = ::std::option::Option< + unsafe extern "C" fn(data: *mut ImGuiInputTextCallbackData) -> ::std::os::raw::c_int, +>; +pub type ImGuiSizeCallback = + ::std::option::Option; +pub type ImU32 = ::std::os::raw::c_uint; +pub type ImDrawCallback = ::std::option::Option< + unsafe extern "C" fn(parent_list: *const ImDrawList, cmd: *const ImDrawCmd), +>; +pub type ImDrawIdx = ::std::os::raw::c_ushort; +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_float { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut f32, +} +#[test] +fn bindgen_test_layout_ImVector_float() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_float)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_float)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_float), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_float), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_float), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_float { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImWchar { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImWchar, +} +#[test] +fn bindgen_test_layout_ImVector_ImWchar() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImWchar)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImWchar)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImWchar), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImWchar), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImWchar), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImWchar { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImDrawVert { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImDrawVert, +} +#[test] +fn bindgen_test_layout_ImVector_ImDrawVert() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImDrawVert)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImDrawVert)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawVert), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawVert), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawVert), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImDrawVert { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImFontGlyph { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImFontGlyph, +} +#[test] +fn bindgen_test_layout_ImVector_ImFontGlyph() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImFontGlyph)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImFontGlyph)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontGlyph), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontGlyph), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontGlyph), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImFontGlyph { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImGuiTextRange { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImGuiTextRange, +} +#[test] +fn bindgen_test_layout_ImVector_ImGuiTextRange() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImGuiTextRange)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImGuiTextRange)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiTextRange), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Capacity as *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiTextRange), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiTextRange), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImGuiTextRange { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImGuiStoragePair { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImGuiStoragePair, +} +#[test] +fn bindgen_test_layout_ImVector_ImGuiStoragePair() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImGuiStoragePair)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImGuiStoragePair)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiStoragePair), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Capacity as *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiStoragePair), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImGuiStoragePair), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImGuiStoragePair { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImDrawChannel { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImDrawChannel, +} +#[test] +fn bindgen_test_layout_ImVector_ImDrawChannel() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImDrawChannel)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImDrawChannel)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawChannel), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawChannel), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawChannel), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImDrawChannel { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_char { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_ImVector_char() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_char)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_char)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_char), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_char), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_char), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_char { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImU32 { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImU32, +} +#[test] +fn bindgen_test_layout_ImVector_ImU32() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImU32)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImU32)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImU32), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImU32), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImU32), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImU32 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImFontAtlasCustomRect { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImFontAtlasCustomRect, +} +#[test] +fn bindgen_test_layout_ImVector_ImFontAtlasCustomRect() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImFontAtlasCustomRect)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImFontAtlasCustomRect)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Size as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontAtlasCustomRect), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Capacity as *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontAtlasCustomRect), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Data as *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontAtlasCustomRect), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImFontAtlasCustomRect { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImTextureID { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImTextureID, +} +#[test] +fn bindgen_test_layout_ImVector_ImTextureID() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImTextureID)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImTextureID)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImTextureID), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImTextureID), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImTextureID), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImTextureID { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImFontConfig { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImFontConfig, +} +#[test] +fn bindgen_test_layout_ImVector_ImFontConfig() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImFontConfig)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImFontConfig)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontConfig), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontConfig), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontConfig), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImFontConfig { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImFontPtr { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut *mut ImFont, +} +#[test] +fn bindgen_test_layout_ImVector_ImFontPtr() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImFontPtr)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImFontPtr)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontPtr), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontPtr), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImFontPtr), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImFontPtr { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImDrawCmd { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImDrawCmd, +} +#[test] +fn bindgen_test_layout_ImVector_ImDrawCmd() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImDrawCmd)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImDrawCmd)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawCmd), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawCmd), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawCmd), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImDrawCmd { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImVec4 { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImVec4, +} +#[test] +fn bindgen_test_layout_ImVector_ImVec4() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImVec4)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImVec4)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec4), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec4), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec4), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImVec4 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImDrawIdx { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImDrawIdx, +} +#[test] +fn bindgen_test_layout_ImVector_ImDrawIdx() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImDrawIdx)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImDrawIdx)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawIdx), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawIdx), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImDrawIdx), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImDrawIdx { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImVector_ImVec2 { + pub Size: ::std::os::raw::c_int, + pub Capacity: ::std::os::raw::c_int, + pub Data: *mut ImVec2, +} +#[test] +fn bindgen_test_layout_ImVector_ImVec2() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVector_ImVec2)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImVector_ImVec2)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec2), + "::", + stringify!(Size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Capacity as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec2), + "::", + stringify!(Capacity) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImVector_ImVec2), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImVector_ImVec2 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImVec2 { + pub x: f32, + pub y: f32, +} +#[test] +fn bindgen_test_layout_ImVec2() { + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(ImVec2)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImVec2)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).x as *const _ as usize }, + 0usize, + concat!("Offset of field: ", stringify!(ImVec2), "::", stringify!(x)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).y as *const _ as usize }, + 4usize, + concat!("Offset of field: ", stringify!(ImVec2), "::", stringify!(y)) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImVec4 { + pub x: f32, + pub y: f32, + pub z: f32, + pub w: f32, +} +#[test] +fn bindgen_test_layout_ImVec4() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImVec4)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImVec4)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).x as *const _ as usize }, + 0usize, + concat!("Offset of field: ", stringify!(ImVec4), "::", stringify!(x)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).y as *const _ as usize }, + 4usize, + concat!("Offset of field: ", stringify!(ImVec4), "::", stringify!(y)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).z as *const _ as usize }, + 8usize, + concat!("Offset of field: ", stringify!(ImVec4), "::", stringify!(z)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).w as *const _ as usize }, + 12usize, + concat!("Offset of field: ", stringify!(ImVec4), "::", stringify!(w)) + ); +} +pub const ImGuiWindowFlags_None: ImGuiWindowFlags_ = 0; +pub const ImGuiWindowFlags_NoTitleBar: ImGuiWindowFlags_ = 1; +pub const ImGuiWindowFlags_NoResize: ImGuiWindowFlags_ = 2; +pub const ImGuiWindowFlags_NoMove: ImGuiWindowFlags_ = 4; +pub const ImGuiWindowFlags_NoScrollbar: ImGuiWindowFlags_ = 8; +pub const ImGuiWindowFlags_NoScrollWithMouse: ImGuiWindowFlags_ = 16; +pub const ImGuiWindowFlags_NoCollapse: ImGuiWindowFlags_ = 32; +pub const ImGuiWindowFlags_AlwaysAutoResize: ImGuiWindowFlags_ = 64; +pub const ImGuiWindowFlags_NoBackground: ImGuiWindowFlags_ = 128; +pub const ImGuiWindowFlags_NoSavedSettings: ImGuiWindowFlags_ = 256; +pub const ImGuiWindowFlags_NoMouseInputs: ImGuiWindowFlags_ = 512; +pub const ImGuiWindowFlags_MenuBar: ImGuiWindowFlags_ = 1024; +pub const ImGuiWindowFlags_HorizontalScrollbar: ImGuiWindowFlags_ = 2048; +pub const ImGuiWindowFlags_NoFocusOnAppearing: ImGuiWindowFlags_ = 4096; +pub const ImGuiWindowFlags_NoBringToFrontOnFocus: ImGuiWindowFlags_ = 8192; +pub const ImGuiWindowFlags_AlwaysVerticalScrollbar: ImGuiWindowFlags_ = 16384; +pub const ImGuiWindowFlags_AlwaysHorizontalScrollbar: ImGuiWindowFlags_ = 32768; +pub const ImGuiWindowFlags_AlwaysUseWindowPadding: ImGuiWindowFlags_ = 65536; +pub const ImGuiWindowFlags_NoNavInputs: ImGuiWindowFlags_ = 262144; +pub const ImGuiWindowFlags_NoNavFocus: ImGuiWindowFlags_ = 524288; +pub const ImGuiWindowFlags_UnsavedDocument: ImGuiWindowFlags_ = 1048576; +pub const ImGuiWindowFlags_NoNav: ImGuiWindowFlags_ = 786432; +pub const ImGuiWindowFlags_NoDecoration: ImGuiWindowFlags_ = 43; +pub const ImGuiWindowFlags_NoInputs: ImGuiWindowFlags_ = 786944; +pub const ImGuiWindowFlags_NavFlattened: ImGuiWindowFlags_ = 8388608; +pub const ImGuiWindowFlags_ChildWindow: ImGuiWindowFlags_ = 16777216; +pub const ImGuiWindowFlags_Tooltip: ImGuiWindowFlags_ = 33554432; +pub const ImGuiWindowFlags_Popup: ImGuiWindowFlags_ = 67108864; +pub const ImGuiWindowFlags_Modal: ImGuiWindowFlags_ = 134217728; +pub const ImGuiWindowFlags_ChildMenu: ImGuiWindowFlags_ = 268435456; +pub type ImGuiWindowFlags_ = u32; +pub const ImGuiInputTextFlags_None: ImGuiInputTextFlags_ = 0; +pub const ImGuiInputTextFlags_CharsDecimal: ImGuiInputTextFlags_ = 1; +pub const ImGuiInputTextFlags_CharsHexadecimal: ImGuiInputTextFlags_ = 2; +pub const ImGuiInputTextFlags_CharsUppercase: ImGuiInputTextFlags_ = 4; +pub const ImGuiInputTextFlags_CharsNoBlank: ImGuiInputTextFlags_ = 8; +pub const ImGuiInputTextFlags_AutoSelectAll: ImGuiInputTextFlags_ = 16; +pub const ImGuiInputTextFlags_EnterReturnsTrue: ImGuiInputTextFlags_ = 32; +pub const ImGuiInputTextFlags_CallbackCompletion: ImGuiInputTextFlags_ = 64; +pub const ImGuiInputTextFlags_CallbackHistory: ImGuiInputTextFlags_ = 128; +pub const ImGuiInputTextFlags_CallbackAlways: ImGuiInputTextFlags_ = 256; +pub const ImGuiInputTextFlags_CallbackCharFilter: ImGuiInputTextFlags_ = 512; +pub const ImGuiInputTextFlags_AllowTabInput: ImGuiInputTextFlags_ = 1024; +pub const ImGuiInputTextFlags_CtrlEnterForNewLine: ImGuiInputTextFlags_ = 2048; +pub const ImGuiInputTextFlags_NoHorizontalScroll: ImGuiInputTextFlags_ = 4096; +pub const ImGuiInputTextFlags_AlwaysInsertMode: ImGuiInputTextFlags_ = 8192; +pub const ImGuiInputTextFlags_ReadOnly: ImGuiInputTextFlags_ = 16384; +pub const ImGuiInputTextFlags_Password: ImGuiInputTextFlags_ = 32768; +pub const ImGuiInputTextFlags_NoUndoRedo: ImGuiInputTextFlags_ = 65536; +pub const ImGuiInputTextFlags_CharsScientific: ImGuiInputTextFlags_ = 131072; +pub const ImGuiInputTextFlags_CallbackResize: ImGuiInputTextFlags_ = 262144; +pub const ImGuiInputTextFlags_Multiline: ImGuiInputTextFlags_ = 1048576; +pub const ImGuiInputTextFlags_NoMarkEdited: ImGuiInputTextFlags_ = 2097152; +pub type ImGuiInputTextFlags_ = u32; +pub const ImGuiTreeNodeFlags_None: ImGuiTreeNodeFlags_ = 0; +pub const ImGuiTreeNodeFlags_Selected: ImGuiTreeNodeFlags_ = 1; +pub const ImGuiTreeNodeFlags_Framed: ImGuiTreeNodeFlags_ = 2; +pub const ImGuiTreeNodeFlags_AllowItemOverlap: ImGuiTreeNodeFlags_ = 4; +pub const ImGuiTreeNodeFlags_NoTreePushOnOpen: ImGuiTreeNodeFlags_ = 8; +pub const ImGuiTreeNodeFlags_NoAutoOpenOnLog: ImGuiTreeNodeFlags_ = 16; +pub const ImGuiTreeNodeFlags_DefaultOpen: ImGuiTreeNodeFlags_ = 32; +pub const ImGuiTreeNodeFlags_OpenOnDoubleClick: ImGuiTreeNodeFlags_ = 64; +pub const ImGuiTreeNodeFlags_OpenOnArrow: ImGuiTreeNodeFlags_ = 128; +pub const ImGuiTreeNodeFlags_Leaf: ImGuiTreeNodeFlags_ = 256; +pub const ImGuiTreeNodeFlags_Bullet: ImGuiTreeNodeFlags_ = 512; +pub const ImGuiTreeNodeFlags_FramePadding: ImGuiTreeNodeFlags_ = 1024; +pub const ImGuiTreeNodeFlags_SpanAvailWidth: ImGuiTreeNodeFlags_ = 2048; +pub const ImGuiTreeNodeFlags_SpanFullWidth: ImGuiTreeNodeFlags_ = 4096; +pub const ImGuiTreeNodeFlags_NavLeftJumpsBackHere: ImGuiTreeNodeFlags_ = 8192; +pub const ImGuiTreeNodeFlags_CollapsingHeader: ImGuiTreeNodeFlags_ = 26; +pub type ImGuiTreeNodeFlags_ = u32; +pub const ImGuiSelectableFlags_None: ImGuiSelectableFlags_ = 0; +pub const ImGuiSelectableFlags_DontClosePopups: ImGuiSelectableFlags_ = 1; +pub const ImGuiSelectableFlags_SpanAllColumns: ImGuiSelectableFlags_ = 2; +pub const ImGuiSelectableFlags_AllowDoubleClick: ImGuiSelectableFlags_ = 4; +pub const ImGuiSelectableFlags_Disabled: ImGuiSelectableFlags_ = 8; +pub const ImGuiSelectableFlags_AllowItemOverlap: ImGuiSelectableFlags_ = 16; +pub type ImGuiSelectableFlags_ = u32; +pub const ImGuiComboFlags_None: ImGuiComboFlags_ = 0; +pub const ImGuiComboFlags_PopupAlignLeft: ImGuiComboFlags_ = 1; +pub const ImGuiComboFlags_HeightSmall: ImGuiComboFlags_ = 2; +pub const ImGuiComboFlags_HeightRegular: ImGuiComboFlags_ = 4; +pub const ImGuiComboFlags_HeightLarge: ImGuiComboFlags_ = 8; +pub const ImGuiComboFlags_HeightLargest: ImGuiComboFlags_ = 16; +pub const ImGuiComboFlags_NoArrowButton: ImGuiComboFlags_ = 32; +pub const ImGuiComboFlags_NoPreview: ImGuiComboFlags_ = 64; +pub const ImGuiComboFlags_HeightMask_: ImGuiComboFlags_ = 30; +pub type ImGuiComboFlags_ = u32; +pub const ImGuiTabBarFlags_None: ImGuiTabBarFlags_ = 0; +pub const ImGuiTabBarFlags_Reorderable: ImGuiTabBarFlags_ = 1; +pub const ImGuiTabBarFlags_AutoSelectNewTabs: ImGuiTabBarFlags_ = 2; +pub const ImGuiTabBarFlags_TabListPopupButton: ImGuiTabBarFlags_ = 4; +pub const ImGuiTabBarFlags_NoCloseWithMiddleMouseButton: ImGuiTabBarFlags_ = 8; +pub const ImGuiTabBarFlags_NoTabListScrollingButtons: ImGuiTabBarFlags_ = 16; +pub const ImGuiTabBarFlags_NoTooltip: ImGuiTabBarFlags_ = 32; +pub const ImGuiTabBarFlags_FittingPolicyResizeDown: ImGuiTabBarFlags_ = 64; +pub const ImGuiTabBarFlags_FittingPolicyScroll: ImGuiTabBarFlags_ = 128; +pub const ImGuiTabBarFlags_FittingPolicyMask_: ImGuiTabBarFlags_ = 192; +pub const ImGuiTabBarFlags_FittingPolicyDefault_: ImGuiTabBarFlags_ = 64; +pub type ImGuiTabBarFlags_ = u32; +pub const ImGuiTabItemFlags_None: ImGuiTabItemFlags_ = 0; +pub const ImGuiTabItemFlags_UnsavedDocument: ImGuiTabItemFlags_ = 1; +pub const ImGuiTabItemFlags_SetSelected: ImGuiTabItemFlags_ = 2; +pub const ImGuiTabItemFlags_NoCloseWithMiddleMouseButton: ImGuiTabItemFlags_ = 4; +pub const ImGuiTabItemFlags_NoPushId: ImGuiTabItemFlags_ = 8; +pub type ImGuiTabItemFlags_ = u32; +pub const ImGuiFocusedFlags_None: ImGuiFocusedFlags_ = 0; +pub const ImGuiFocusedFlags_ChildWindows: ImGuiFocusedFlags_ = 1; +pub const ImGuiFocusedFlags_RootWindow: ImGuiFocusedFlags_ = 2; +pub const ImGuiFocusedFlags_AnyWindow: ImGuiFocusedFlags_ = 4; +pub const ImGuiFocusedFlags_RootAndChildWindows: ImGuiFocusedFlags_ = 3; +pub type ImGuiFocusedFlags_ = u32; +pub const ImGuiHoveredFlags_None: ImGuiHoveredFlags_ = 0; +pub const ImGuiHoveredFlags_ChildWindows: ImGuiHoveredFlags_ = 1; +pub const ImGuiHoveredFlags_RootWindow: ImGuiHoveredFlags_ = 2; +pub const ImGuiHoveredFlags_AnyWindow: ImGuiHoveredFlags_ = 4; +pub const ImGuiHoveredFlags_AllowWhenBlockedByPopup: ImGuiHoveredFlags_ = 8; +pub const ImGuiHoveredFlags_AllowWhenBlockedByActiveItem: ImGuiHoveredFlags_ = 32; +pub const ImGuiHoveredFlags_AllowWhenOverlapped: ImGuiHoveredFlags_ = 64; +pub const ImGuiHoveredFlags_AllowWhenDisabled: ImGuiHoveredFlags_ = 128; +pub const ImGuiHoveredFlags_RectOnly: ImGuiHoveredFlags_ = 104; +pub const ImGuiHoveredFlags_RootAndChildWindows: ImGuiHoveredFlags_ = 3; +pub type ImGuiHoveredFlags_ = u32; +pub const ImGuiDragDropFlags_None: ImGuiDragDropFlags_ = 0; +pub const ImGuiDragDropFlags_SourceNoPreviewTooltip: ImGuiDragDropFlags_ = 1; +pub const ImGuiDragDropFlags_SourceNoDisableHover: ImGuiDragDropFlags_ = 2; +pub const ImGuiDragDropFlags_SourceNoHoldToOpenOthers: ImGuiDragDropFlags_ = 4; +pub const ImGuiDragDropFlags_SourceAllowNullID: ImGuiDragDropFlags_ = 8; +pub const ImGuiDragDropFlags_SourceExtern: ImGuiDragDropFlags_ = 16; +pub const ImGuiDragDropFlags_SourceAutoExpirePayload: ImGuiDragDropFlags_ = 32; +pub const ImGuiDragDropFlags_AcceptBeforeDelivery: ImGuiDragDropFlags_ = 1024; +pub const ImGuiDragDropFlags_AcceptNoDrawDefaultRect: ImGuiDragDropFlags_ = 2048; +pub const ImGuiDragDropFlags_AcceptNoPreviewTooltip: ImGuiDragDropFlags_ = 4096; +pub const ImGuiDragDropFlags_AcceptPeekOnly: ImGuiDragDropFlags_ = 3072; +pub type ImGuiDragDropFlags_ = u32; +pub const ImGuiDataType_S8: ImGuiDataType_ = 0; +pub const ImGuiDataType_U8: ImGuiDataType_ = 1; +pub const ImGuiDataType_S16: ImGuiDataType_ = 2; +pub const ImGuiDataType_U16: ImGuiDataType_ = 3; +pub const ImGuiDataType_S32: ImGuiDataType_ = 4; +pub const ImGuiDataType_U32: ImGuiDataType_ = 5; +pub const ImGuiDataType_S64: ImGuiDataType_ = 6; +pub const ImGuiDataType_U64: ImGuiDataType_ = 7; +pub const ImGuiDataType_Float: ImGuiDataType_ = 8; +pub const ImGuiDataType_Double: ImGuiDataType_ = 9; +pub const ImGuiDataType_COUNT: ImGuiDataType_ = 10; +pub type ImGuiDataType_ = u32; +pub const ImGuiDir_None: ImGuiDir_ = -1; +pub const ImGuiDir_Left: ImGuiDir_ = 0; +pub const ImGuiDir_Right: ImGuiDir_ = 1; +pub const ImGuiDir_Up: ImGuiDir_ = 2; +pub const ImGuiDir_Down: ImGuiDir_ = 3; +pub const ImGuiDir_COUNT: ImGuiDir_ = 4; +pub type ImGuiDir_ = i32; +pub const ImGuiKey_Tab: ImGuiKey_ = 0; +pub const ImGuiKey_LeftArrow: ImGuiKey_ = 1; +pub const ImGuiKey_RightArrow: ImGuiKey_ = 2; +pub const ImGuiKey_UpArrow: ImGuiKey_ = 3; +pub const ImGuiKey_DownArrow: ImGuiKey_ = 4; +pub const ImGuiKey_PageUp: ImGuiKey_ = 5; +pub const ImGuiKey_PageDown: ImGuiKey_ = 6; +pub const ImGuiKey_Home: ImGuiKey_ = 7; +pub const ImGuiKey_End: ImGuiKey_ = 8; +pub const ImGuiKey_Insert: ImGuiKey_ = 9; +pub const ImGuiKey_Delete: ImGuiKey_ = 10; +pub const ImGuiKey_Backspace: ImGuiKey_ = 11; +pub const ImGuiKey_Space: ImGuiKey_ = 12; +pub const ImGuiKey_Enter: ImGuiKey_ = 13; +pub const ImGuiKey_Escape: ImGuiKey_ = 14; +pub const ImGuiKey_KeyPadEnter: ImGuiKey_ = 15; +pub const ImGuiKey_A: ImGuiKey_ = 16; +pub const ImGuiKey_C: ImGuiKey_ = 17; +pub const ImGuiKey_V: ImGuiKey_ = 18; +pub const ImGuiKey_X: ImGuiKey_ = 19; +pub const ImGuiKey_Y: ImGuiKey_ = 20; +pub const ImGuiKey_Z: ImGuiKey_ = 21; +pub const ImGuiKey_COUNT: ImGuiKey_ = 22; +pub type ImGuiKey_ = u32; +pub const ImGuiNavInput_Activate: ImGuiNavInput_ = 0; +pub const ImGuiNavInput_Cancel: ImGuiNavInput_ = 1; +pub const ImGuiNavInput_Input: ImGuiNavInput_ = 2; +pub const ImGuiNavInput_Menu: ImGuiNavInput_ = 3; +pub const ImGuiNavInput_DpadLeft: ImGuiNavInput_ = 4; +pub const ImGuiNavInput_DpadRight: ImGuiNavInput_ = 5; +pub const ImGuiNavInput_DpadUp: ImGuiNavInput_ = 6; +pub const ImGuiNavInput_DpadDown: ImGuiNavInput_ = 7; +pub const ImGuiNavInput_LStickLeft: ImGuiNavInput_ = 8; +pub const ImGuiNavInput_LStickRight: ImGuiNavInput_ = 9; +pub const ImGuiNavInput_LStickUp: ImGuiNavInput_ = 10; +pub const ImGuiNavInput_LStickDown: ImGuiNavInput_ = 11; +pub const ImGuiNavInput_FocusPrev: ImGuiNavInput_ = 12; +pub const ImGuiNavInput_FocusNext: ImGuiNavInput_ = 13; +pub const ImGuiNavInput_TweakSlow: ImGuiNavInput_ = 14; +pub const ImGuiNavInput_TweakFast: ImGuiNavInput_ = 15; +pub const ImGuiNavInput_KeyMenu_: ImGuiNavInput_ = 16; +pub const ImGuiNavInput_KeyLeft_: ImGuiNavInput_ = 17; +pub const ImGuiNavInput_KeyRight_: ImGuiNavInput_ = 18; +pub const ImGuiNavInput_KeyUp_: ImGuiNavInput_ = 19; +pub const ImGuiNavInput_KeyDown_: ImGuiNavInput_ = 20; +pub const ImGuiNavInput_COUNT: ImGuiNavInput_ = 21; +pub const ImGuiNavInput_InternalStart_: ImGuiNavInput_ = 16; +pub type ImGuiNavInput_ = u32; +pub const ImGuiConfigFlags_None: ImGuiConfigFlags_ = 0; +pub const ImGuiConfigFlags_NavEnableKeyboard: ImGuiConfigFlags_ = 1; +pub const ImGuiConfigFlags_NavEnableGamepad: ImGuiConfigFlags_ = 2; +pub const ImGuiConfigFlags_NavEnableSetMousePos: ImGuiConfigFlags_ = 4; +pub const ImGuiConfigFlags_NavNoCaptureKeyboard: ImGuiConfigFlags_ = 8; +pub const ImGuiConfigFlags_NoMouse: ImGuiConfigFlags_ = 16; +pub const ImGuiConfigFlags_NoMouseCursorChange: ImGuiConfigFlags_ = 32; +pub const ImGuiConfigFlags_IsSRGB: ImGuiConfigFlags_ = 1048576; +pub const ImGuiConfigFlags_IsTouchScreen: ImGuiConfigFlags_ = 2097152; +pub type ImGuiConfigFlags_ = u32; +pub const ImGuiBackendFlags_None: ImGuiBackendFlags_ = 0; +pub const ImGuiBackendFlags_HasGamepad: ImGuiBackendFlags_ = 1; +pub const ImGuiBackendFlags_HasMouseCursors: ImGuiBackendFlags_ = 2; +pub const ImGuiBackendFlags_HasSetMousePos: ImGuiBackendFlags_ = 4; +pub const ImGuiBackendFlags_RendererHasVtxOffset: ImGuiBackendFlags_ = 8; +pub type ImGuiBackendFlags_ = u32; +pub const ImGuiCol_Text: ImGuiCol_ = 0; +pub const ImGuiCol_TextDisabled: ImGuiCol_ = 1; +pub const ImGuiCol_WindowBg: ImGuiCol_ = 2; +pub const ImGuiCol_ChildBg: ImGuiCol_ = 3; +pub const ImGuiCol_PopupBg: ImGuiCol_ = 4; +pub const ImGuiCol_Border: ImGuiCol_ = 5; +pub const ImGuiCol_BorderShadow: ImGuiCol_ = 6; +pub const ImGuiCol_FrameBg: ImGuiCol_ = 7; +pub const ImGuiCol_FrameBgHovered: ImGuiCol_ = 8; +pub const ImGuiCol_FrameBgActive: ImGuiCol_ = 9; +pub const ImGuiCol_TitleBg: ImGuiCol_ = 10; +pub const ImGuiCol_TitleBgActive: ImGuiCol_ = 11; +pub const ImGuiCol_TitleBgCollapsed: ImGuiCol_ = 12; +pub const ImGuiCol_MenuBarBg: ImGuiCol_ = 13; +pub const ImGuiCol_ScrollbarBg: ImGuiCol_ = 14; +pub const ImGuiCol_ScrollbarGrab: ImGuiCol_ = 15; +pub const ImGuiCol_ScrollbarGrabHovered: ImGuiCol_ = 16; +pub const ImGuiCol_ScrollbarGrabActive: ImGuiCol_ = 17; +pub const ImGuiCol_CheckMark: ImGuiCol_ = 18; +pub const ImGuiCol_SliderGrab: ImGuiCol_ = 19; +pub const ImGuiCol_SliderGrabActive: ImGuiCol_ = 20; +pub const ImGuiCol_Button: ImGuiCol_ = 21; +pub const ImGuiCol_ButtonHovered: ImGuiCol_ = 22; +pub const ImGuiCol_ButtonActive: ImGuiCol_ = 23; +pub const ImGuiCol_Header: ImGuiCol_ = 24; +pub const ImGuiCol_HeaderHovered: ImGuiCol_ = 25; +pub const ImGuiCol_HeaderActive: ImGuiCol_ = 26; +pub const ImGuiCol_Separator: ImGuiCol_ = 27; +pub const ImGuiCol_SeparatorHovered: ImGuiCol_ = 28; +pub const ImGuiCol_SeparatorActive: ImGuiCol_ = 29; +pub const ImGuiCol_ResizeGrip: ImGuiCol_ = 30; +pub const ImGuiCol_ResizeGripHovered: ImGuiCol_ = 31; +pub const ImGuiCol_ResizeGripActive: ImGuiCol_ = 32; +pub const ImGuiCol_Tab: ImGuiCol_ = 33; +pub const ImGuiCol_TabHovered: ImGuiCol_ = 34; +pub const ImGuiCol_TabActive: ImGuiCol_ = 35; +pub const ImGuiCol_TabUnfocused: ImGuiCol_ = 36; +pub const ImGuiCol_TabUnfocusedActive: ImGuiCol_ = 37; +pub const ImGuiCol_PlotLines: ImGuiCol_ = 38; +pub const ImGuiCol_PlotLinesHovered: ImGuiCol_ = 39; +pub const ImGuiCol_PlotHistogram: ImGuiCol_ = 40; +pub const ImGuiCol_PlotHistogramHovered: ImGuiCol_ = 41; +pub const ImGuiCol_TextSelectedBg: ImGuiCol_ = 42; +pub const ImGuiCol_DragDropTarget: ImGuiCol_ = 43; +pub const ImGuiCol_NavHighlight: ImGuiCol_ = 44; +pub const ImGuiCol_NavWindowingHighlight: ImGuiCol_ = 45; +pub const ImGuiCol_NavWindowingDimBg: ImGuiCol_ = 46; +pub const ImGuiCol_ModalWindowDimBg: ImGuiCol_ = 47; +pub const ImGuiCol_COUNT: ImGuiCol_ = 48; +pub type ImGuiCol_ = u32; +pub const ImGuiStyleVar_Alpha: ImGuiStyleVar_ = 0; +pub const ImGuiStyleVar_WindowPadding: ImGuiStyleVar_ = 1; +pub const ImGuiStyleVar_WindowRounding: ImGuiStyleVar_ = 2; +pub const ImGuiStyleVar_WindowBorderSize: ImGuiStyleVar_ = 3; +pub const ImGuiStyleVar_WindowMinSize: ImGuiStyleVar_ = 4; +pub const ImGuiStyleVar_WindowTitleAlign: ImGuiStyleVar_ = 5; +pub const ImGuiStyleVar_ChildRounding: ImGuiStyleVar_ = 6; +pub const ImGuiStyleVar_ChildBorderSize: ImGuiStyleVar_ = 7; +pub const ImGuiStyleVar_PopupRounding: ImGuiStyleVar_ = 8; +pub const ImGuiStyleVar_PopupBorderSize: ImGuiStyleVar_ = 9; +pub const ImGuiStyleVar_FramePadding: ImGuiStyleVar_ = 10; +pub const ImGuiStyleVar_FrameRounding: ImGuiStyleVar_ = 11; +pub const ImGuiStyleVar_FrameBorderSize: ImGuiStyleVar_ = 12; +pub const ImGuiStyleVar_ItemSpacing: ImGuiStyleVar_ = 13; +pub const ImGuiStyleVar_ItemInnerSpacing: ImGuiStyleVar_ = 14; +pub const ImGuiStyleVar_IndentSpacing: ImGuiStyleVar_ = 15; +pub const ImGuiStyleVar_ScrollbarSize: ImGuiStyleVar_ = 16; +pub const ImGuiStyleVar_ScrollbarRounding: ImGuiStyleVar_ = 17; +pub const ImGuiStyleVar_GrabMinSize: ImGuiStyleVar_ = 18; +pub const ImGuiStyleVar_GrabRounding: ImGuiStyleVar_ = 19; +pub const ImGuiStyleVar_TabRounding: ImGuiStyleVar_ = 20; +pub const ImGuiStyleVar_ButtonTextAlign: ImGuiStyleVar_ = 21; +pub const ImGuiStyleVar_SelectableTextAlign: ImGuiStyleVar_ = 22; +pub const ImGuiStyleVar_COUNT: ImGuiStyleVar_ = 23; +pub type ImGuiStyleVar_ = u32; +pub const ImGuiColorEditFlags_None: ImGuiColorEditFlags_ = 0; +pub const ImGuiColorEditFlags_NoAlpha: ImGuiColorEditFlags_ = 2; +pub const ImGuiColorEditFlags_NoPicker: ImGuiColorEditFlags_ = 4; +pub const ImGuiColorEditFlags_NoOptions: ImGuiColorEditFlags_ = 8; +pub const ImGuiColorEditFlags_NoSmallPreview: ImGuiColorEditFlags_ = 16; +pub const ImGuiColorEditFlags_NoInputs: ImGuiColorEditFlags_ = 32; +pub const ImGuiColorEditFlags_NoTooltip: ImGuiColorEditFlags_ = 64; +pub const ImGuiColorEditFlags_NoLabel: ImGuiColorEditFlags_ = 128; +pub const ImGuiColorEditFlags_NoSidePreview: ImGuiColorEditFlags_ = 256; +pub const ImGuiColorEditFlags_NoDragDrop: ImGuiColorEditFlags_ = 512; +pub const ImGuiColorEditFlags_AlphaBar: ImGuiColorEditFlags_ = 65536; +pub const ImGuiColorEditFlags_AlphaPreview: ImGuiColorEditFlags_ = 131072; +pub const ImGuiColorEditFlags_AlphaPreviewHalf: ImGuiColorEditFlags_ = 262144; +pub const ImGuiColorEditFlags_HDR: ImGuiColorEditFlags_ = 524288; +pub const ImGuiColorEditFlags_DisplayRGB: ImGuiColorEditFlags_ = 1048576; +pub const ImGuiColorEditFlags_DisplayHSV: ImGuiColorEditFlags_ = 2097152; +pub const ImGuiColorEditFlags_DisplayHex: ImGuiColorEditFlags_ = 4194304; +pub const ImGuiColorEditFlags_Uint8: ImGuiColorEditFlags_ = 8388608; +pub const ImGuiColorEditFlags_Float: ImGuiColorEditFlags_ = 16777216; +pub const ImGuiColorEditFlags_PickerHueBar: ImGuiColorEditFlags_ = 33554432; +pub const ImGuiColorEditFlags_PickerHueWheel: ImGuiColorEditFlags_ = 67108864; +pub const ImGuiColorEditFlags_InputRGB: ImGuiColorEditFlags_ = 134217728; +pub const ImGuiColorEditFlags_InputHSV: ImGuiColorEditFlags_ = 268435456; +pub const ImGuiColorEditFlags__OptionsDefault: ImGuiColorEditFlags_ = 177209344; +pub const ImGuiColorEditFlags__DisplayMask: ImGuiColorEditFlags_ = 7340032; +pub const ImGuiColorEditFlags__DataTypeMask: ImGuiColorEditFlags_ = 25165824; +pub const ImGuiColorEditFlags__PickerMask: ImGuiColorEditFlags_ = 100663296; +pub const ImGuiColorEditFlags__InputMask: ImGuiColorEditFlags_ = 402653184; +pub type ImGuiColorEditFlags_ = u32; +pub const ImGuiMouseButton_Left: ImGuiMouseButton_ = 0; +pub const ImGuiMouseButton_Right: ImGuiMouseButton_ = 1; +pub const ImGuiMouseButton_Middle: ImGuiMouseButton_ = 2; +pub const ImGuiMouseButton_COUNT: ImGuiMouseButton_ = 5; +pub type ImGuiMouseButton_ = u32; +pub const ImGuiMouseCursor_None: ImGuiMouseCursor_ = -1; +pub const ImGuiMouseCursor_Arrow: ImGuiMouseCursor_ = 0; +pub const ImGuiMouseCursor_TextInput: ImGuiMouseCursor_ = 1; +pub const ImGuiMouseCursor_ResizeAll: ImGuiMouseCursor_ = 2; +pub const ImGuiMouseCursor_ResizeNS: ImGuiMouseCursor_ = 3; +pub const ImGuiMouseCursor_ResizeEW: ImGuiMouseCursor_ = 4; +pub const ImGuiMouseCursor_ResizeNESW: ImGuiMouseCursor_ = 5; +pub const ImGuiMouseCursor_ResizeNWSE: ImGuiMouseCursor_ = 6; +pub const ImGuiMouseCursor_Hand: ImGuiMouseCursor_ = 7; +pub const ImGuiMouseCursor_NotAllowed: ImGuiMouseCursor_ = 8; +pub const ImGuiMouseCursor_COUNT: ImGuiMouseCursor_ = 9; +pub type ImGuiMouseCursor_ = i32; +pub const ImGuiCond_Always: ImGuiCond_ = 1; +pub const ImGuiCond_Once: ImGuiCond_ = 2; +pub const ImGuiCond_FirstUseEver: ImGuiCond_ = 4; +pub const ImGuiCond_Appearing: ImGuiCond_ = 8; +pub type ImGuiCond_ = u32; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImGuiStyle { + pub Alpha: f32, + pub WindowPadding: ImVec2, + pub WindowRounding: f32, + pub WindowBorderSize: f32, + pub WindowMinSize: ImVec2, + pub WindowTitleAlign: ImVec2, + pub WindowMenuButtonPosition: ImGuiDir, + pub ChildRounding: f32, + pub ChildBorderSize: f32, + pub PopupRounding: f32, + pub PopupBorderSize: f32, + pub FramePadding: ImVec2, + pub FrameRounding: f32, + pub FrameBorderSize: f32, + pub ItemSpacing: ImVec2, + pub ItemInnerSpacing: ImVec2, + pub TouchExtraPadding: ImVec2, + pub IndentSpacing: f32, + pub ColumnsMinSpacing: f32, + pub ScrollbarSize: f32, + pub ScrollbarRounding: f32, + pub GrabMinSize: f32, + pub GrabRounding: f32, + pub TabRounding: f32, + pub TabBorderSize: f32, + pub ColorButtonPosition: ImGuiDir, + pub ButtonTextAlign: ImVec2, + pub SelectableTextAlign: ImVec2, + pub DisplayWindowPadding: ImVec2, + pub DisplaySafeAreaPadding: ImVec2, + pub MouseCursorScale: f32, + pub AntiAliasedLines: bool, + pub AntiAliasedFill: bool, + pub CurveTessellationTol: f32, + pub CircleSegmentMaxError: f32, + pub Colors: [ImVec4; 48usize], +} +#[test] +fn bindgen_test_layout_ImGuiStyle() { + assert_eq!( + ::std::mem::size_of::(), + 948usize, + concat!("Size of: ", stringify!(ImGuiStyle)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImGuiStyle)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Alpha as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(Alpha) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WindowPadding as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowPadding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WindowRounding as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WindowBorderSize as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowBorderSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WindowMinSize as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowMinSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WindowTitleAlign as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowTitleAlign) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).WindowMenuButtonPosition as *const _ as usize + }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(WindowMenuButtonPosition) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ChildRounding as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ChildRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ChildBorderSize as *const _ as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ChildBorderSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).PopupRounding as *const _ as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(PopupRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).PopupBorderSize as *const _ as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(PopupBorderSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FramePadding as *const _ as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(FramePadding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FrameRounding as *const _ as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(FrameRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FrameBorderSize as *const _ as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(FrameBorderSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ItemSpacing as *const _ as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ItemSpacing) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ItemInnerSpacing as *const _ as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ItemInnerSpacing) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TouchExtraPadding as *const _ as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(TouchExtraPadding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IndentSpacing as *const _ as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(IndentSpacing) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ColumnsMinSpacing as *const _ as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ColumnsMinSpacing) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ScrollbarSize as *const _ as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ScrollbarSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ScrollbarRounding as *const _ as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ScrollbarRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GrabMinSize as *const _ as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(GrabMinSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GrabRounding as *const _ as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(GrabRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TabRounding as *const _ as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(TabRounding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TabBorderSize as *const _ as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(TabBorderSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ColorButtonPosition as *const _ as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ColorButtonPosition) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ButtonTextAlign as *const _ as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(ButtonTextAlign) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).SelectableTextAlign as *const _ as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(SelectableTextAlign) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayWindowPadding as *const _ as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(DisplayWindowPadding) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).DisplaySafeAreaPadding as *const _ as usize + }, + 156usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(DisplaySafeAreaPadding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseCursorScale as *const _ as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(MouseCursorScale) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).AntiAliasedLines as *const _ as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(AntiAliasedLines) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).AntiAliasedFill as *const _ as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(AntiAliasedFill) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CurveTessellationTol as *const _ as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(CurveTessellationTol) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).CircleSegmentMaxError as *const _ as usize + }, + 176usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(CircleSegmentMaxError) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Colors as *const _ as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStyle), + "::", + stringify!(Colors) + ) + ); +} +impl Default for ImGuiStyle { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiStyle { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write ! ( f , "ImGuiStyle {{ Alpha: {:?}, WindowPadding: {:?}, WindowRounding: {:?}, WindowBorderSize: {:?}, WindowMinSize: {:?}, WindowTitleAlign: {:?}, WindowMenuButtonPosition: {:?}, ChildRounding: {:?}, ChildBorderSize: {:?}, PopupRounding: {:?}, PopupBorderSize: {:?}, FramePadding: {:?}, FrameRounding: {:?}, FrameBorderSize: {:?}, ItemSpacing: {:?}, ItemInnerSpacing: {:?}, TouchExtraPadding: {:?}, IndentSpacing: {:?}, ColumnsMinSpacing: {:?}, ScrollbarSize: {:?}, ScrollbarRounding: {:?}, GrabMinSize: {:?}, GrabRounding: {:?}, TabRounding: {:?}, TabBorderSize: {:?}, ColorButtonPosition: {:?}, ButtonTextAlign: {:?}, SelectableTextAlign: {:?}, DisplayWindowPadding: {:?}, DisplaySafeAreaPadding: {:?}, MouseCursorScale: {:?}, AntiAliasedLines: {:?}, AntiAliasedFill: {:?}, CurveTessellationTol: {:?}, CircleSegmentMaxError: {:?}, Colors: [{}] }}" , self . Alpha , self . WindowPadding , self . WindowRounding , self . WindowBorderSize , self . WindowMinSize , self . WindowTitleAlign , self . WindowMenuButtonPosition , self . ChildRounding , self . ChildBorderSize , self . PopupRounding , self . PopupBorderSize , self . FramePadding , self . FrameRounding , self . FrameBorderSize , self . ItemSpacing , self . ItemInnerSpacing , self . TouchExtraPadding , self . IndentSpacing , self . ColumnsMinSpacing , self . ScrollbarSize , self . ScrollbarRounding , self . GrabMinSize , self . GrabRounding , self . TabRounding , self . TabBorderSize , self . ColorButtonPosition , self . ButtonTextAlign , self . SelectableTextAlign , self . DisplayWindowPadding , self . DisplaySafeAreaPadding , self . MouseCursorScale , self . AntiAliasedLines , self . AntiAliasedFill , self . CurveTessellationTol , self . CircleSegmentMaxError , self . Colors . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) ) + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImGuiIO { + pub ConfigFlags: ImGuiConfigFlags, + pub BackendFlags: ImGuiBackendFlags, + pub DisplaySize: ImVec2, + pub DeltaTime: f32, + pub IniSavingRate: f32, + pub IniFilename: *const ::std::os::raw::c_char, + pub LogFilename: *const ::std::os::raw::c_char, + pub MouseDoubleClickTime: f32, + pub MouseDoubleClickMaxDist: f32, + pub MouseDragThreshold: f32, + pub KeyMap: [::std::os::raw::c_int; 22usize], + pub KeyRepeatDelay: f32, + pub KeyRepeatRate: f32, + pub UserData: *mut ::std::os::raw::c_void, + pub Fonts: *mut ImFontAtlas, + pub FontGlobalScale: f32, + pub FontAllowUserScaling: bool, + pub FontDefault: *mut ImFont, + pub DisplayFramebufferScale: ImVec2, + pub MouseDrawCursor: bool, + pub ConfigMacOSXBehaviors: bool, + pub ConfigInputTextCursorBlink: bool, + pub ConfigWindowsResizeFromEdges: bool, + pub ConfigWindowsMoveFromTitleBarOnly: bool, + pub ConfigWindowsMemoryCompactTimer: f32, + pub BackendPlatformName: *const ::std::os::raw::c_char, + pub BackendRendererName: *const ::std::os::raw::c_char, + pub BackendPlatformUserData: *mut ::std::os::raw::c_void, + pub BackendRendererUserData: *mut ::std::os::raw::c_void, + pub BackendLanguageUserData: *mut ::std::os::raw::c_void, + pub GetClipboardTextFn: ::std::option::Option< + unsafe extern "C" fn( + user_data: *mut ::std::os::raw::c_void, + ) -> *const ::std::os::raw::c_char, + >, + pub SetClipboardTextFn: ::std::option::Option< + unsafe extern "C" fn( + user_data: *mut ::std::os::raw::c_void, + text: *const ::std::os::raw::c_char, + ), + >, + pub ClipboardUserData: *mut ::std::os::raw::c_void, + pub ImeSetInputScreenPosFn: ::std::option::Option< + unsafe extern "C" fn(x: ::std::os::raw::c_int, y: ::std::os::raw::c_int), + >, + pub ImeWindowHandle: *mut ::std::os::raw::c_void, + pub RenderDrawListsFnUnused: *mut ::std::os::raw::c_void, + pub MousePos: ImVec2, + pub MouseDown: [bool; 5usize], + pub MouseWheel: f32, + pub MouseWheelH: f32, + pub KeyCtrl: bool, + pub KeyShift: bool, + pub KeyAlt: bool, + pub KeySuper: bool, + pub KeysDown: [bool; 512usize], + pub NavInputs: [f32; 21usize], + pub WantCaptureMouse: bool, + pub WantCaptureKeyboard: bool, + pub WantTextInput: bool, + pub WantSetMousePos: bool, + pub WantSaveIniSettings: bool, + pub NavActive: bool, + pub NavVisible: bool, + pub Framerate: f32, + pub MetricsRenderVertices: ::std::os::raw::c_int, + pub MetricsRenderIndices: ::std::os::raw::c_int, + pub MetricsRenderWindows: ::std::os::raw::c_int, + pub MetricsActiveWindows: ::std::os::raw::c_int, + pub MetricsActiveAllocations: ::std::os::raw::c_int, + pub MouseDelta: ImVec2, + pub MousePosPrev: ImVec2, + pub MouseClickedPos: [ImVec2; 5usize], + pub MouseClickedTime: [f64; 5usize], + pub MouseClicked: [bool; 5usize], + pub MouseDoubleClicked: [bool; 5usize], + pub MouseReleased: [bool; 5usize], + pub MouseDownOwned: [bool; 5usize], + pub MouseDownWasDoubleClick: [bool; 5usize], + pub MouseDownDuration: [f32; 5usize], + pub MouseDownDurationPrev: [f32; 5usize], + pub MouseDragMaxDistanceAbs: [ImVec2; 5usize], + pub MouseDragMaxDistanceSqr: [f32; 5usize], + pub KeysDownDuration: [f32; 512usize], + pub KeysDownDurationPrev: [f32; 512usize], + pub NavInputsDownDuration: [f32; 21usize], + pub NavInputsDownDurationPrev: [f32; 21usize], + pub InputQueueCharacters: ImVector_ImWchar, +} +#[test] +fn bindgen_test_layout_ImGuiIO() { + assert_eq!( + ::std::mem::size_of::(), + 5456usize, + concat!("Size of: ", stringify!(ImGuiIO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiIO)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ConfigFlags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigFlags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendFlags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendFlags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplaySize as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(DisplaySize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DeltaTime as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(DeltaTime) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IniSavingRate as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(IniSavingRate) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IniFilename as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(IniFilename) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).LogFilename as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(LogFilename) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDoubleClickTime as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDoubleClickTime) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDoubleClickMaxDist as *const _ as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDoubleClickMaxDist) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDragThreshold as *const _ as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDragThreshold) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyMap as *const _ as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyMap) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyRepeatDelay as *const _ as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyRepeatDelay) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyRepeatRate as *const _ as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyRepeatRate) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).UserData as *const _ as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(UserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Fonts as *const _ as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(Fonts) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontGlobalScale as *const _ as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(FontGlobalScale) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontAllowUserScaling as *const _ as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(FontAllowUserScaling) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontDefault as *const _ as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(FontDefault) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayFramebufferScale as *const _ as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(DisplayFramebufferScale) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDrawCursor as *const _ as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDrawCursor) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ConfigMacOSXBehaviors as *const _ as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigMacOSXBehaviors) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).ConfigInputTextCursorBlink as *const _ as usize + }, + 194usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigInputTextCursorBlink) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).ConfigWindowsResizeFromEdges as *const _ as usize + }, + 195usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigWindowsResizeFromEdges) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).ConfigWindowsMoveFromTitleBarOnly as *const _ + as usize + }, + 196usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigWindowsMoveFromTitleBarOnly) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).ConfigWindowsMemoryCompactTimer as *const _ as usize + }, + 200usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ConfigWindowsMemoryCompactTimer) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendPlatformName as *const _ as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendPlatformName) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendRendererName as *const _ as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendRendererName) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendPlatformUserData as *const _ as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendPlatformUserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendRendererUserData as *const _ as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendRendererUserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).BackendLanguageUserData as *const _ as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(BackendLanguageUserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GetClipboardTextFn as *const _ as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(GetClipboardTextFn) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).SetClipboardTextFn as *const _ as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(SetClipboardTextFn) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ClipboardUserData as *const _ as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ClipboardUserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ImeSetInputScreenPosFn as *const _ as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ImeSetInputScreenPosFn) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ImeWindowHandle as *const _ as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(ImeWindowHandle) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).RenderDrawListsFnUnused as *const _ as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(RenderDrawListsFnUnused) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MousePos as *const _ as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MousePos) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDown as *const _ as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDown) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseWheel as *const _ as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseWheel) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseWheelH as *const _ as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseWheelH) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyCtrl as *const _ as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyCtrl) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyShift as *const _ as usize }, + 321usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyShift) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeyAlt as *const _ as usize }, + 322usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeyAlt) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeySuper as *const _ as usize }, + 323usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeySuper) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeysDown as *const _ as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeysDown) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).NavInputs as *const _ as usize }, + 836usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(NavInputs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WantCaptureMouse as *const _ as usize }, + 920usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(WantCaptureMouse) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WantCaptureKeyboard as *const _ as usize }, + 921usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(WantCaptureKeyboard) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WantTextInput as *const _ as usize }, + 922usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(WantTextInput) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WantSetMousePos as *const _ as usize }, + 923usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(WantSetMousePos) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).WantSaveIniSettings as *const _ as usize }, + 924usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(WantSaveIniSettings) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).NavActive as *const _ as usize }, + 925usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(NavActive) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).NavVisible as *const _ as usize }, + 926usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(NavVisible) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Framerate as *const _ as usize }, + 928usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(Framerate) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MetricsRenderVertices as *const _ as usize }, + 932usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MetricsRenderVertices) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MetricsRenderIndices as *const _ as usize }, + 936usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MetricsRenderIndices) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MetricsRenderWindows as *const _ as usize }, + 940usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MetricsRenderWindows) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MetricsActiveWindows as *const _ as usize }, + 944usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MetricsActiveWindows) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).MetricsActiveAllocations as *const _ as usize + }, + 948usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MetricsActiveAllocations) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDelta as *const _ as usize }, + 952usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDelta) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MousePosPrev as *const _ as usize }, + 960usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MousePosPrev) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseClickedPos as *const _ as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseClickedPos) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseClickedTime as *const _ as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseClickedTime) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseClicked as *const _ as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseClicked) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDoubleClicked as *const _ as usize }, + 1053usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDoubleClicked) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseReleased as *const _ as usize }, + 1058usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseReleased) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDownOwned as *const _ as usize }, + 1063usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDownOwned) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDownWasDoubleClick as *const _ as usize }, + 1068usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDownWasDoubleClick) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDownDuration as *const _ as usize }, + 1076usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDownDuration) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDownDurationPrev as *const _ as usize }, + 1096usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDownDurationPrev) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDragMaxDistanceAbs as *const _ as usize }, + 1116usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDragMaxDistanceAbs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MouseDragMaxDistanceSqr as *const _ as usize }, + 1156usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(MouseDragMaxDistanceSqr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeysDownDuration as *const _ as usize }, + 1176usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeysDownDuration) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).KeysDownDurationPrev as *const _ as usize }, + 3224usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(KeysDownDurationPrev) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).NavInputsDownDuration as *const _ as usize }, + 5272usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(NavInputsDownDuration) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).NavInputsDownDurationPrev as *const _ as usize + }, + 5356usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(NavInputsDownDurationPrev) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).InputQueueCharacters as *const _ as usize }, + 5440usize, + concat!( + "Offset of field: ", + stringify!(ImGuiIO), + "::", + stringify!(InputQueueCharacters) + ) + ); +} +impl Default for ImGuiIO { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiIO { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write ! ( f , "ImGuiIO {{ ConfigFlags: {:?}, BackendFlags: {:?}, DisplaySize: {:?}, DeltaTime: {:?}, IniSavingRate: {:?}, IniFilename: {:?}, LogFilename: {:?}, MouseDoubleClickTime: {:?}, MouseDoubleClickMaxDist: {:?}, MouseDragThreshold: {:?}, KeyMap: {:?}, KeyRepeatDelay: {:?}, KeyRepeatRate: {:?}, UserData: {:?}, Fonts: {:?}, FontGlobalScale: {:?}, FontAllowUserScaling: {:?}, FontDefault: {:?}, DisplayFramebufferScale: {:?}, MouseDrawCursor: {:?}, ConfigMacOSXBehaviors: {:?}, ConfigInputTextCursorBlink: {:?}, ConfigWindowsResizeFromEdges: {:?}, ConfigWindowsMoveFromTitleBarOnly: {:?}, ConfigWindowsMemoryCompactTimer: {:?}, BackendPlatformName: {:?}, BackendRendererName: {:?}, BackendPlatformUserData: {:?}, BackendRendererUserData: {:?}, BackendLanguageUserData: {:?}, GetClipboardTextFn: {:?}, SetClipboardTextFn: {:?}, ClipboardUserData: {:?}, ImeSetInputScreenPosFn: {:?}, ImeWindowHandle: {:?}, RenderDrawListsFnUnused: {:?}, MousePos: {:?}, MouseDown: {:?}, MouseWheel: {:?}, MouseWheelH: {:?}, KeyCtrl: {:?}, KeyShift: {:?}, KeyAlt: {:?}, KeySuper: {:?}, KeysDown: [{}], NavInputs: {:?}, WantCaptureMouse: {:?}, WantCaptureKeyboard: {:?}, WantTextInput: {:?}, WantSetMousePos: {:?}, WantSaveIniSettings: {:?}, NavActive: {:?}, NavVisible: {:?}, Framerate: {:?}, MetricsRenderVertices: {:?}, MetricsRenderIndices: {:?}, MetricsRenderWindows: {:?}, MetricsActiveWindows: {:?}, MetricsActiveAllocations: {:?}, MouseDelta: {:?}, MousePosPrev: {:?}, MouseClickedPos: {:?}, MouseClickedTime: {:?}, MouseClicked: {:?}, MouseDoubleClicked: {:?}, MouseReleased: {:?}, MouseDownOwned: {:?}, MouseDownWasDoubleClick: {:?}, MouseDownDuration: {:?}, MouseDownDurationPrev: {:?}, MouseDragMaxDistanceAbs: {:?}, MouseDragMaxDistanceSqr: {:?}, KeysDownDuration: [{}], KeysDownDurationPrev: [{}], NavInputsDownDuration: {:?}, NavInputsDownDurationPrev: {:?}, InputQueueCharacters: {:?} }}" , self . ConfigFlags , self . BackendFlags , self . DisplaySize , self . DeltaTime , self . IniSavingRate , self . IniFilename , self . LogFilename , self . MouseDoubleClickTime , self . MouseDoubleClickMaxDist , self . MouseDragThreshold , self . KeyMap , self . KeyRepeatDelay , self . KeyRepeatRate , self . UserData , self . Fonts , self . FontGlobalScale , self . FontAllowUserScaling , self . FontDefault , self . DisplayFramebufferScale , self . MouseDrawCursor , self . ConfigMacOSXBehaviors , self . ConfigInputTextCursorBlink , self . ConfigWindowsResizeFromEdges , self . ConfigWindowsMoveFromTitleBarOnly , self . ConfigWindowsMemoryCompactTimer , self . BackendPlatformName , self . BackendRendererName , self . BackendPlatformUserData , self . BackendRendererUserData , self . BackendLanguageUserData , self . GetClipboardTextFn , self . SetClipboardTextFn , self . ClipboardUserData , self . ImeSetInputScreenPosFn , self . ImeWindowHandle , self . RenderDrawListsFnUnused , self . MousePos , self . MouseDown , self . MouseWheel , self . MouseWheelH , self . KeyCtrl , self . KeyShift , self . KeyAlt , self . KeySuper , self . KeysDown . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) , self . NavInputs , self . WantCaptureMouse , self . WantCaptureKeyboard , self . WantTextInput , self . WantSetMousePos , self . WantSaveIniSettings , self . NavActive , self . NavVisible , self . Framerate , self . MetricsRenderVertices , self . MetricsRenderIndices , self . MetricsRenderWindows , self . MetricsActiveWindows , self . MetricsActiveAllocations , self . MouseDelta , self . MousePosPrev , self . MouseClickedPos , self . MouseClickedTime , self . MouseClicked , self . MouseDoubleClicked , self . MouseReleased , self . MouseDownOwned , self . MouseDownWasDoubleClick , self . MouseDownDuration , self . MouseDownDurationPrev , self . MouseDragMaxDistanceAbs , self . MouseDragMaxDistanceSqr , self . KeysDownDuration . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) , self . KeysDownDurationPrev . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) , self . NavInputsDownDuration , self . NavInputsDownDurationPrev , self . InputQueueCharacters ) + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImGuiInputTextCallbackData { + pub EventFlag: ImGuiInputTextFlags, + pub Flags: ImGuiInputTextFlags, + pub UserData: *mut ::std::os::raw::c_void, + pub EventChar: ImWchar, + pub EventKey: ImGuiKey, + pub Buf: *mut ::std::os::raw::c_char, + pub BufTextLen: ::std::os::raw::c_int, + pub BufSize: ::std::os::raw::c_int, + pub BufDirty: bool, + pub CursorPos: ::std::os::raw::c_int, + pub SelectionStart: ::std::os::raw::c_int, + pub SelectionEnd: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ImGuiInputTextCallbackData() { + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(ImGuiInputTextCallbackData)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiInputTextCallbackData)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).EventFlag as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(EventFlag) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).Flags as *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(Flags) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).UserData as *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(UserData) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).EventChar as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(EventChar) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).EventKey as *const _ as usize + }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(EventKey) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Buf as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(Buf) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).BufTextLen as *const _ as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(BufTextLen) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).BufSize as *const _ as usize + }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(BufSize) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).BufDirty as *const _ as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(BufDirty) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).CursorPos as *const _ as usize + }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(CursorPos) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).SelectionStart as *const _ + as usize + }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(SelectionStart) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).SelectionEnd as *const _ as usize + }, + 52usize, + concat!( + "Offset of field: ", + stringify!(ImGuiInputTextCallbackData), + "::", + stringify!(SelectionEnd) + ) + ); +} +impl Default for ImGuiInputTextCallbackData { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImGuiSizeCallbackData { + pub UserData: *mut ::std::os::raw::c_void, + pub Pos: ImVec2, + pub CurrentSize: ImVec2, + pub DesiredSize: ImVec2, +} +#[test] +fn bindgen_test_layout_ImGuiSizeCallbackData() { + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(ImGuiSizeCallbackData)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiSizeCallbackData)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).UserData as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiSizeCallbackData), + "::", + stringify!(UserData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Pos as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiSizeCallbackData), + "::", + stringify!(Pos) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).CurrentSize as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiSizeCallbackData), + "::", + stringify!(CurrentSize) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).DesiredSize as *const _ as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImGuiSizeCallbackData), + "::", + stringify!(DesiredSize) + ) + ); +} +impl Default for ImGuiSizeCallbackData { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImGuiPayload { + pub Data: *mut ::std::os::raw::c_void, + pub DataSize: ::std::os::raw::c_int, + pub SourceId: ImGuiID, + pub SourceParentId: ImGuiID, + pub DataFrameCount: ::std::os::raw::c_int, + pub DataType: [::std::os::raw::c_char; 33usize], + pub Preview: bool, + pub Delivery: bool, +} +#[test] +fn bindgen_test_layout_ImGuiPayload() { + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(ImGuiPayload)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiPayload)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(Data) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DataSize as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(DataSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).SourceId as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(SourceId) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).SourceParentId as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(SourceParentId) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DataFrameCount as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(DataFrameCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DataType as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(DataType) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Preview as *const _ as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(Preview) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Delivery as *const _ as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(ImGuiPayload), + "::", + stringify!(Delivery) + ) + ); +} +impl Default for ImGuiPayload { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiPayload { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write ! ( f , "ImGuiPayload {{ Data: {:?}, DataSize: {:?}, SourceId: {:?}, SourceParentId: {:?}, DataFrameCount: {:?}, DataType: [{}], Preview: {:?}, Delivery: {:?} }}" , self . Data , self . DataSize , self . SourceId , self . SourceParentId , self . DataFrameCount , self . DataType . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) , self . Preview , self . Delivery ) + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImGuiOnceUponAFrame { + pub RefFrame: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ImGuiOnceUponAFrame() { + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(ImGuiOnceUponAFrame)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImGuiOnceUponAFrame)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).RefFrame as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiOnceUponAFrame), + "::", + stringify!(RefFrame) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImGuiTextFilter { + pub InputBuf: [::std::os::raw::c_char; 256usize], + pub Filters: ImVector_ImGuiTextRange, + pub CountGrep: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ImGuiTextFilter() { + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(ImGuiTextFilter)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiTextFilter)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).InputBuf as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextFilter), + "::", + stringify!(InputBuf) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Filters as *const _ as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextFilter), + "::", + stringify!(Filters) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CountGrep as *const _ as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextFilter), + "::", + stringify!(CountGrep) + ) + ); +} +impl Default for ImGuiTextFilter { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiTextFilter { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write!( + f, + "ImGuiTextFilter {{ InputBuf: [{}], Filters: {:?}, CountGrep: {:?} }}", + self.InputBuf + .iter() + .enumerate() + .map(|(i, v)| format!("{}{:?}", if i > 0 { ", " } else { "" }, v)) + .collect::(), + self.Filters, + self.CountGrep + ) + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImGuiTextBuffer { + pub Buf: ImVector_char, +} +#[test] +fn bindgen_test_layout_ImGuiTextBuffer() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImGuiTextBuffer)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiTextBuffer)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Buf as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextBuffer), + "::", + stringify!(Buf) + ) + ); +} +impl Default for ImGuiTextBuffer { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImGuiStorage { + pub Data: ImVector_ImGuiStoragePair, +} +#[test] +fn bindgen_test_layout_ImGuiStorage() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImGuiStorage)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiStorage)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Data as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStorage), + "::", + stringify!(Data) + ) + ); +} +impl Default for ImGuiStorage { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImGuiListClipper { + pub DisplayStart: ::std::os::raw::c_int, + pub DisplayEnd: ::std::os::raw::c_int, + pub ItemsCount: ::std::os::raw::c_int, + pub StepNo: ::std::os::raw::c_int, + pub ItemsHeight: f32, + pub StartPosY: f32, +} +#[test] +fn bindgen_test_layout_ImGuiListClipper() { + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(ImGuiListClipper)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImGuiListClipper)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayStart as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(DisplayStart) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayEnd as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(DisplayEnd) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ItemsCount as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(ItemsCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).StepNo as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(StepNo) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ItemsHeight as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(ItemsHeight) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).StartPosY as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImGuiListClipper), + "::", + stringify!(StartPosY) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImColor { + pub Value: ImVec4, +} +#[test] +fn bindgen_test_layout_ImColor() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImColor)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImColor)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Value as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImColor), + "::", + stringify!(Value) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImDrawCmd { + pub ElemCount: ::std::os::raw::c_uint, + pub ClipRect: ImVec4, + pub TextureId: ImTextureID, + pub VtxOffset: ::std::os::raw::c_uint, + pub IdxOffset: ::std::os::raw::c_uint, + pub UserCallback: ImDrawCallback, + pub UserCallbackData: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ImDrawCmd() { + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(ImDrawCmd)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImDrawCmd)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ElemCount as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(ElemCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ClipRect as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(ClipRect) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TextureId as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(TextureId) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).VtxOffset as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(VtxOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IdxOffset as *const _ as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(IdxOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).UserCallback as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(UserCallback) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).UserCallbackData as *const _ as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImDrawCmd), + "::", + stringify!(UserCallbackData) + ) + ); +} +impl Default for ImDrawCmd { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImDrawVert { + pub pos: ImVec2, + pub uv: ImVec2, + pub col: ImU32, +} +#[test] +fn bindgen_test_layout_ImDrawVert() { + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(ImDrawVert)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImDrawVert)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).pos as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawVert), + "::", + stringify!(pos) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).uv as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImDrawVert), + "::", + stringify!(uv) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).col as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImDrawVert), + "::", + stringify!(col) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImDrawChannel { + pub _CmdBuffer: ImVector_ImDrawCmd, + pub _IdxBuffer: ImVector_ImDrawIdx, +} +#[test] +fn bindgen_test_layout_ImDrawChannel() { + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(ImDrawChannel)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImDrawChannel)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._CmdBuffer as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawChannel), + "::", + stringify!(_CmdBuffer) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._IdxBuffer as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImDrawChannel), + "::", + stringify!(_IdxBuffer) + ) + ); +} +impl Default for ImDrawChannel { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImDrawListSplitter { + pub _Current: ::std::os::raw::c_int, + pub _Count: ::std::os::raw::c_int, + pub _Channels: ImVector_ImDrawChannel, +} +#[test] +fn bindgen_test_layout_ImDrawListSplitter() { + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(ImDrawListSplitter)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImDrawListSplitter)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Current as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawListSplitter), + "::", + stringify!(_Current) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Count as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImDrawListSplitter), + "::", + stringify!(_Count) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Channels as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImDrawListSplitter), + "::", + stringify!(_Channels) + ) + ); +} +impl Default for ImDrawListSplitter { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +pub const ImDrawCornerFlags_None: ImDrawCornerFlags_ = 0; +pub const ImDrawCornerFlags_TopLeft: ImDrawCornerFlags_ = 1; +pub const ImDrawCornerFlags_TopRight: ImDrawCornerFlags_ = 2; +pub const ImDrawCornerFlags_BotLeft: ImDrawCornerFlags_ = 4; +pub const ImDrawCornerFlags_BotRight: ImDrawCornerFlags_ = 8; +pub const ImDrawCornerFlags_Top: ImDrawCornerFlags_ = 3; +pub const ImDrawCornerFlags_Bot: ImDrawCornerFlags_ = 12; +pub const ImDrawCornerFlags_Left: ImDrawCornerFlags_ = 5; +pub const ImDrawCornerFlags_Right: ImDrawCornerFlags_ = 10; +pub const ImDrawCornerFlags_All: ImDrawCornerFlags_ = 15; +pub type ImDrawCornerFlags_ = u32; +pub const ImDrawListFlags_None: ImDrawListFlags_ = 0; +pub const ImDrawListFlags_AntiAliasedLines: ImDrawListFlags_ = 1; +pub const ImDrawListFlags_AntiAliasedFill: ImDrawListFlags_ = 2; +pub const ImDrawListFlags_AllowVtxOffset: ImDrawListFlags_ = 4; +pub type ImDrawListFlags_ = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImDrawList { + pub CmdBuffer: ImVector_ImDrawCmd, + pub IdxBuffer: ImVector_ImDrawIdx, + pub VtxBuffer: ImVector_ImDrawVert, + pub Flags: ImDrawListFlags, + pub _Data: *const ImDrawListSharedData, + pub _OwnerName: *const ::std::os::raw::c_char, + pub _VtxCurrentOffset: ::std::os::raw::c_uint, + pub _VtxCurrentIdx: ::std::os::raw::c_uint, + pub _VtxWritePtr: *mut ImDrawVert, + pub _IdxWritePtr: *mut ImDrawIdx, + pub _ClipRectStack: ImVector_ImVec4, + pub _TextureIdStack: ImVector_ImTextureID, + pub _Path: ImVector_ImVec2, + pub _Splitter: ImDrawListSplitter, +} +#[test] +fn bindgen_test_layout_ImDrawList() { + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(ImDrawList)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImDrawList)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CmdBuffer as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(CmdBuffer) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IdxBuffer as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(IdxBuffer) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).VtxBuffer as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(VtxBuffer) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Flags as *const _ as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(Flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Data as *const _ as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_Data) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._OwnerName as *const _ as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_OwnerName) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._VtxCurrentOffset as *const _ as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_VtxCurrentOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._VtxCurrentIdx as *const _ as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_VtxCurrentIdx) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._VtxWritePtr as *const _ as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_VtxWritePtr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._IdxWritePtr as *const _ as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_IdxWritePtr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._ClipRectStack as *const _ as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_ClipRectStack) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._TextureIdStack as *const _ as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_TextureIdStack) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Path as *const _ as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_Path) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::()))._Splitter as *const _ as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(ImDrawList), + "::", + stringify!(_Splitter) + ) + ); +} +impl Default for ImDrawList { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImDrawData { + pub Valid: bool, + pub CmdLists: *mut *mut ImDrawList, + pub CmdListsCount: ::std::os::raw::c_int, + pub TotalIdxCount: ::std::os::raw::c_int, + pub TotalVtxCount: ::std::os::raw::c_int, + pub DisplayPos: ImVec2, + pub DisplaySize: ImVec2, + pub FramebufferScale: ImVec2, +} +#[test] +fn bindgen_test_layout_ImDrawData() { + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(ImDrawData)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImDrawData)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Valid as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(Valid) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CmdLists as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(CmdLists) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CmdListsCount as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(CmdListsCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TotalIdxCount as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(TotalIdxCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TotalVtxCount as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(TotalVtxCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayPos as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(DisplayPos) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplaySize as *const _ as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(DisplaySize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FramebufferScale as *const _ as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImDrawData), + "::", + stringify!(FramebufferScale) + ) + ); +} +impl Default for ImDrawData { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImFontConfig { + pub FontData: *mut ::std::os::raw::c_void, + pub FontDataSize: ::std::os::raw::c_int, + pub FontDataOwnedByAtlas: bool, + pub FontNo: ::std::os::raw::c_int, + pub SizePixels: f32, + pub OversampleH: ::std::os::raw::c_int, + pub OversampleV: ::std::os::raw::c_int, + pub PixelSnapH: bool, + pub GlyphExtraSpacing: ImVec2, + pub GlyphOffset: ImVec2, + pub GlyphRanges: *const ImWchar, + pub GlyphMinAdvanceX: f32, + pub GlyphMaxAdvanceX: f32, + pub MergeMode: bool, + pub RasterizerFlags: ::std::os::raw::c_uint, + pub RasterizerMultiply: f32, + pub EllipsisChar: ImWchar, + pub Name: [::std::os::raw::c_char; 40usize], + pub DstFont: *mut ImFont, +} +#[test] +fn bindgen_test_layout_ImFontConfig() { + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(ImFontConfig)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImFontConfig)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontData as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(FontData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontDataSize as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(FontDataSize) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).FontDataOwnedByAtlas as *const _ as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(FontDataOwnedByAtlas) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontNo as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(FontNo) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).SizePixels as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(SizePixels) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).OversampleH as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(OversampleH) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).OversampleV as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(OversampleV) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).PixelSnapH as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(PixelSnapH) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GlyphExtraSpacing as *const _ as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(GlyphExtraSpacing) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GlyphOffset as *const _ as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(GlyphOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GlyphRanges as *const _ as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(GlyphRanges) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GlyphMinAdvanceX as *const _ as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(GlyphMinAdvanceX) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).GlyphMaxAdvanceX as *const _ as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(GlyphMaxAdvanceX) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MergeMode as *const _ as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(MergeMode) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).RasterizerFlags as *const _ as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(RasterizerFlags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).RasterizerMultiply as *const _ as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(RasterizerMultiply) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).EllipsisChar as *const _ as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(EllipsisChar) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Name as *const _ as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(Name) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DstFont as *const _ as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(ImFontConfig), + "::", + stringify!(DstFont) + ) + ); +} +impl Default for ImFontConfig { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImFontConfig { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write ! ( f , "ImFontConfig {{ FontData: {:?}, FontDataSize: {:?}, FontDataOwnedByAtlas: {:?}, FontNo: {:?}, SizePixels: {:?}, OversampleH: {:?}, OversampleV: {:?}, PixelSnapH: {:?}, GlyphExtraSpacing: {:?}, GlyphOffset: {:?}, GlyphRanges: {:?}, GlyphMinAdvanceX: {:?}, GlyphMaxAdvanceX: {:?}, MergeMode: {:?}, RasterizerFlags: {:?}, RasterizerMultiply: {:?}, EllipsisChar: {:?}, Name: [{}], DstFont: {:?} }}" , self . FontData , self . FontDataSize , self . FontDataOwnedByAtlas , self . FontNo , self . SizePixels , self . OversampleH , self . OversampleV , self . PixelSnapH , self . GlyphExtraSpacing , self . GlyphOffset , self . GlyphRanges , self . GlyphMinAdvanceX , self . GlyphMaxAdvanceX , self . MergeMode , self . RasterizerFlags , self . RasterizerMultiply , self . EllipsisChar , self . Name . iter ( ) . enumerate ( ) . map ( | ( i , v ) | format ! ( "{}{:?}" , if i > 0 { ", " } else { "" } , v ) ) . collect :: < String > ( ) , self . DstFont ) + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone, PartialEq)] +pub struct ImFontGlyph { + pub Codepoint: ImWchar, + pub AdvanceX: f32, + pub X0: f32, + pub Y0: f32, + pub X1: f32, + pub Y1: f32, + pub U0: f32, + pub V0: f32, + pub U1: f32, + pub V1: f32, +} +#[test] +fn bindgen_test_layout_ImFontGlyph() { + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(ImFontGlyph)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(ImFontGlyph)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Codepoint as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(Codepoint) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).AdvanceX as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(AdvanceX) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).X0 as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(X0) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Y0 as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(Y0) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).X1 as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(X1) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Y1 as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(Y1) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).U0 as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(U0) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).V0 as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(V0) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).U1 as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(U1) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).V1 as *const _ as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyph), + "::", + stringify!(V1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImFontGlyphRangesBuilder { + pub UsedChars: ImVector_ImU32, +} +#[test] +fn bindgen_test_layout_ImFontGlyphRangesBuilder() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImFontGlyphRangesBuilder)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImFontGlyphRangesBuilder)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).UsedChars as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFontGlyphRangesBuilder), + "::", + stringify!(UsedChars) + ) + ); +} +impl Default for ImFontGlyphRangesBuilder { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImFontAtlasCustomRect { + pub ID: ::std::os::raw::c_uint, + pub Width: ::std::os::raw::c_ushort, + pub Height: ::std::os::raw::c_ushort, + pub X: ::std::os::raw::c_ushort, + pub Y: ::std::os::raw::c_ushort, + pub GlyphAdvanceX: f32, + pub GlyphOffset: ImVec2, + pub Font: *mut ImFont, +} +#[test] +fn bindgen_test_layout_ImFontAtlasCustomRect() { + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(ImFontAtlasCustomRect)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImFontAtlasCustomRect)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ID as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(ID) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Width as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(Width) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Height as *const _ as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(Height) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).X as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(X) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Y as *const _ as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(Y) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).GlyphAdvanceX as *const _ as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(GlyphAdvanceX) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).GlyphOffset as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(GlyphOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Font as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlasCustomRect), + "::", + stringify!(Font) + ) + ); +} +impl Default for ImFontAtlasCustomRect { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +pub const ImFontAtlasFlags_None: ImFontAtlasFlags_ = 0; +pub const ImFontAtlasFlags_NoPowerOfTwoHeight: ImFontAtlasFlags_ = 1; +pub const ImFontAtlasFlags_NoMouseCursors: ImFontAtlasFlags_ = 2; +pub type ImFontAtlasFlags_ = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImFontAtlas { + pub Locked: bool, + pub Flags: ImFontAtlasFlags, + pub TexID: ImTextureID, + pub TexDesiredWidth: ::std::os::raw::c_int, + pub TexGlyphPadding: ::std::os::raw::c_int, + pub TexPixelsAlpha8: *mut ::std::os::raw::c_uchar, + pub TexPixelsRGBA32: *mut ::std::os::raw::c_uint, + pub TexWidth: ::std::os::raw::c_int, + pub TexHeight: ::std::os::raw::c_int, + pub TexUvScale: ImVec2, + pub TexUvWhitePixel: ImVec2, + pub Fonts: ImVector_ImFontPtr, + pub CustomRects: ImVector_ImFontAtlasCustomRect, + pub ConfigData: ImVector_ImFontConfig, + pub CustomRectIds: [::std::os::raw::c_int; 1usize], +} +#[test] +fn bindgen_test_layout_ImFontAtlas() { + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(ImFontAtlas)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImFontAtlas)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Locked as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(Locked) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(Flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexID as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexID) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexDesiredWidth as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexDesiredWidth) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexGlyphPadding as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexGlyphPadding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexPixelsAlpha8 as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexPixelsAlpha8) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexPixelsRGBA32 as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexPixelsRGBA32) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexWidth as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexWidth) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexHeight as *const _ as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexHeight) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexUvScale as *const _ as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexUvScale) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).TexUvWhitePixel as *const _ as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(TexUvWhitePixel) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Fonts as *const _ as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(Fonts) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CustomRects as *const _ as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(CustomRects) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ConfigData as *const _ as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(ConfigData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).CustomRectIds as *const _ as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(ImFontAtlas), + "::", + stringify!(CustomRectIds) + ) + ); +} +impl Default for ImFontAtlas { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq)] +pub struct ImFont { + pub IndexAdvanceX: ImVector_float, + pub FallbackAdvanceX: f32, + pub FontSize: f32, + pub IndexLookup: ImVector_ImWchar, + pub Glyphs: ImVector_ImFontGlyph, + pub FallbackGlyph: *const ImFontGlyph, + pub DisplayOffset: ImVec2, + pub ContainerAtlas: *mut ImFontAtlas, + pub ConfigData: *const ImFontConfig, + pub ConfigDataCount: ::std::os::raw::c_short, + pub FallbackChar: ImWchar, + pub EllipsisChar: ImWchar, + pub DirtyLookupTables: bool, + pub Scale: f32, + pub Ascent: f32, + pub Descent: f32, + pub MetricsTotalSurface: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ImFont() { + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(ImFont)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImFont)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IndexAdvanceX as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(IndexAdvanceX) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FallbackAdvanceX as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(FallbackAdvanceX) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FontSize as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(FontSize) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).IndexLookup as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(IndexLookup) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Glyphs as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(Glyphs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FallbackGlyph as *const _ as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(FallbackGlyph) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DisplayOffset as *const _ as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(DisplayOffset) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ContainerAtlas as *const _ as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(ContainerAtlas) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ConfigData as *const _ as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(ConfigData) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).ConfigDataCount as *const _ as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(ConfigDataCount) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).FallbackChar as *const _ as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(FallbackChar) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).EllipsisChar as *const _ as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(EllipsisChar) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).DirtyLookupTables as *const _ as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(DirtyLookupTables) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Scale as *const _ as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(Scale) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Ascent as *const _ as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(Ascent) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).Descent as *const _ as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(Descent) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).MetricsTotalSurface as *const _ as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(ImFont), + "::", + stringify!(MetricsTotalSurface) + ) + ); +} +impl Default for ImFont { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub struct ImGuiTextRange { + pub b: *const ::std::os::raw::c_char, + pub e: *const ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_ImGuiTextRange() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImGuiTextRange)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiTextRange)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).b as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextRange), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).e as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ImGuiTextRange), + "::", + stringify!(e) + ) + ); +} +impl Default for ImGuiTextRange { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ImGuiStoragePair { + pub key: ImGuiID, + pub __bindgen_anon_1: ImGuiStoragePair__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ImGuiStoragePair__bindgen_ty_1 { + pub val_i: ::std::os::raw::c_int, + pub val_f: f32, + pub val_p: *mut ::std::os::raw::c_void, + _bindgen_union_align: u64, +} +#[test] +fn bindgen_test_layout_ImGuiStoragePair__bindgen_ty_1() { + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(ImGuiStoragePair__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiStoragePair__bindgen_ty_1)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).val_i as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStoragePair__bindgen_ty_1), + "::", + stringify!(val_i) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).val_f as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStoragePair__bindgen_ty_1), + "::", + stringify!(val_f) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::())).val_p as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStoragePair__bindgen_ty_1), + "::", + stringify!(val_p) + ) + ); +} +impl Default for ImGuiStoragePair__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiStoragePair__bindgen_ty_1 { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write!(f, "ImGuiStoragePair__bindgen_ty_1 {{ union }}") + } +} +#[test] +fn bindgen_test_layout_ImGuiStoragePair() { + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(ImGuiStoragePair)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(ImGuiStoragePair)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::())).key as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ImGuiStoragePair), + "::", + stringify!(key) + ) + ); +} +impl Default for ImGuiStoragePair { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +impl ::std::fmt::Debug for ImGuiStoragePair { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + write!( + f, + "ImGuiStoragePair {{ key: {:?}, __bindgen_anon_1: {:?} }}", + self.key, self.__bindgen_anon_1 + ) + } +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec2_ImVec2() -> *mut ImVec2; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec2_destroy(self_: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec2_ImVec2Float(_x: f32, _y: f32) -> *mut ImVec2; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec4_ImVec4() -> *mut ImVec4; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec4_destroy(self_: *mut ImVec4); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImVec4_ImVec4Float(_x: f32, _y: f32, _z: f32, _w: f32) -> *mut ImVec4; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCreateContext(shared_font_atlas: *mut ImFontAtlas) -> *mut ImGuiContext; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDestroyContext(ctx: *mut ImGuiContext); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCurrentContext() -> *mut ImGuiContext; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetCurrentContext(ctx: *mut ImGuiContext); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDebugCheckVersionAndDataLayout( + version_str: *const ::std::os::raw::c_char, + sz_io: usize, + sz_style: usize, + sz_vec2: usize, + sz_vec4: usize, + sz_drawvert: usize, + sz_drawidx: usize, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetIO() -> *mut ImGuiIO; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetStyle() -> *mut ImGuiStyle; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igNewFrame(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndFrame(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igRender(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetDrawData() -> *mut ImDrawData; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowDemoWindow(p_open: *mut bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowAboutWindow(p_open: *mut bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowMetricsWindow(p_open: *mut bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowStyleEditor(ref_: *mut ImGuiStyle); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowStyleSelector(label: *const ::std::os::raw::c_char) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowFontSelector(label: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igShowUserGuide(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetVersion() -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igStyleColorsDark(dst: *mut ImGuiStyle); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igStyleColorsClassic(dst: *mut ImGuiStyle); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igStyleColorsLight(dst: *mut ImGuiStyle); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBegin( + name: *const ::std::os::raw::c_char, + p_open: *mut bool, + flags: ImGuiWindowFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEnd(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginChild( + str_id: *const ::std::os::raw::c_char, + size: ImVec2, + border: bool, + flags: ImGuiWindowFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginChildID(id: ImGuiID, size: ImVec2, border: bool, flags: ImGuiWindowFlags) + -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndChild(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsWindowAppearing() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsWindowCollapsed() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsWindowFocused(flags: ImGuiFocusedFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsWindowHovered(flags: ImGuiHoveredFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowDrawList() -> *mut ImDrawList; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowWidth() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowHeight() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowPos(pos: ImVec2, cond: ImGuiCond, pivot: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowSize(size: ImVec2, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowSizeConstraints( + size_min: ImVec2, + size_max: ImVec2, + custom_callback: ImGuiSizeCallback, + custom_callback_data: *mut ::std::os::raw::c_void, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowContentSize(size: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowCollapsed(collapsed: bool, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowFocus(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextWindowBgAlpha(alpha: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowPosVec2(pos: ImVec2, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowSizeVec2(size: ImVec2, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowCollapsedBool(collapsed: bool, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowFocus(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowFontScale(scale: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowPosStr(name: *const ::std::os::raw::c_char, pos: ImVec2, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowSizeStr(name: *const ::std::os::raw::c_char, size: ImVec2, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowCollapsedStr( + name: *const ::std::os::raw::c_char, + collapsed: bool, + cond: ImGuiCond, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetWindowFocusStr(name: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowContentRegionWidth() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetScrollX() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetScrollY() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetScrollMaxX() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetScrollMaxY() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollX(scroll_x: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollY(scroll_y: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollHereX(center_x_ratio: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollHereY(center_y_ratio: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollFromPosX(local_x: f32, center_x_ratio: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetScrollFromPosY(local_y: f32, center_y_ratio: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushFont(font: *mut ImFont); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopFont(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushStyleColorU32(idx: ImGuiCol, col: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushStyleColor(idx: ImGuiCol, col: ImVec4); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopStyleColor(count: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushStyleVarFloat(idx: ImGuiStyleVar, val: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushStyleVarVec2(idx: ImGuiStyleVar, val: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopStyleVar(count: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetStyleColorVec4(idx: ImGuiCol) -> *const ImVec4; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFont() -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFontSize() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColorU32(idx: ImGuiCol, alpha_mul: f32) -> ImU32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColorU32Vec4(col: ImVec4) -> ImU32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColorU32U32(col: ImU32) -> ImU32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushItemWidth(item_width: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopItemWidth(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextItemWidth(item_width: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCalcItemWidth() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushTextWrapPos(wrap_local_pos_x: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopTextWrapPos(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushAllowKeyboardFocus(allow_keyboard_focus: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopAllowKeyboardFocus(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushButtonRepeat(repeat: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopButtonRepeat(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSeparator(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSameLine(offset_from_start_x: f32, spacing: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igNewLine(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSpacing(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDummy(size: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIndent(indent_w: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igUnindent(indent_w: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginGroup(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndGroup(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorPosX() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorPosY() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetCursorPos(local_pos: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetCursorPosX(local_x: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetCursorPosY(local_y: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetCursorScreenPos(pos: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igAlignTextToFramePadding(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetTextLineHeight() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetTextLineHeightWithSpacing() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFrameHeight() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFrameHeightWithSpacing() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushIDStr(str_id: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushIDRange( + str_id_begin: *const ::std::os::raw::c_char, + str_id_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushIDPtr(ptr_id: *const ::std::os::raw::c_void); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushIDInt(int_id: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopID(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetIDStr(str_id: *const ::std::os::raw::c_char) -> ImGuiID; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetIDRange( + str_id_begin: *const ::std::os::raw::c_char, + str_id_end: *const ::std::os::raw::c_char, + ) -> ImGuiID; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetIDPtr(ptr_id: *const ::std::os::raw::c_void) -> ImGuiID; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTextUnformatted( + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igText(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTextColored(col: ImVec4, fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTextDisabled(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTextWrapped(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLabelText( + label: *const ::std::os::raw::c_char, + fmt: *const ::std::os::raw::c_char, + ... + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBulletText(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igButton(label: *const ::std::os::raw::c_char, size: ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSmallButton(label: *const ::std::os::raw::c_char) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInvisibleButton(str_id: *const ::std::os::raw::c_char, size: ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igArrowButton(str_id: *const ::std::os::raw::c_char, dir: ImGuiDir) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igImage( + user_texture_id: ImTextureID, + size: ImVec2, + uv0: ImVec2, + uv1: ImVec2, + tint_col: ImVec4, + border_col: ImVec4, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igImageButton( + user_texture_id: ImTextureID, + size: ImVec2, + uv0: ImVec2, + uv1: ImVec2, + frame_padding: ::std::os::raw::c_int, + bg_col: ImVec4, + tint_col: ImVec4, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCheckbox(label: *const ::std::os::raw::c_char, v: *mut bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCheckboxFlags( + label: *const ::std::os::raw::c_char, + flags: *mut ::std::os::raw::c_uint, + flags_value: ::std::os::raw::c_uint, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igRadioButtonBool(label: *const ::std::os::raw::c_char, active: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igRadioButtonIntPtr( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_button: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igProgressBar(fraction: f32, size_arg: ImVec2, overlay: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBullet(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginCombo( + label: *const ::std::os::raw::c_char, + preview_value: *const ::std::os::raw::c_char, + flags: ImGuiComboFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndCombo(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCombo( + label: *const ::std::os::raw::c_char, + current_item: *mut ::std::os::raw::c_int, + items: *const *const ::std::os::raw::c_char, + items_count: ::std::os::raw::c_int, + popup_max_height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igComboStr( + label: *const ::std::os::raw::c_char, + current_item: *mut ::std::os::raw::c_int, + items_separated_by_zeros: *const ::std::os::raw::c_char, + popup_max_height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igComboFnPtr( + label: *const ::std::os::raw::c_char, + current_item: *mut ::std::os::raw::c_int, + items_getter: ::std::option::Option< + unsafe extern "C" fn( + data: *mut ::std::os::raw::c_void, + idx: ::std::os::raw::c_int, + out_text: *mut *const ::std::os::raw::c_char, + ) -> bool, + >, + data: *mut ::std::os::raw::c_void, + items_count: ::std::os::raw::c_int, + popup_max_height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragFloat( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_speed: f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragFloat2( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_speed: f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragFloat3( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_speed: f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragFloat4( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_speed: f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragFloatRange2( + label: *const ::std::os::raw::c_char, + v_current_min: *mut f32, + v_current_max: *mut f32, + v_speed: f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + format_max: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragInt( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_speed: f32, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragInt2( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_speed: f32, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragInt3( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_speed: f32, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragInt4( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_speed: f32, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragIntRange2( + label: *const ::std::os::raw::c_char, + v_current_min: *mut ::std::os::raw::c_int, + v_current_max: *mut ::std::os::raw::c_int, + v_speed: f32, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + format_max: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragScalar( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + v_speed: f32, + p_min: *const ::std::os::raw::c_void, + p_max: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igDragScalarN( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + components: ::std::os::raw::c_int, + v_speed: f32, + p_min: *const ::std::os::raw::c_void, + p_max: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderFloat( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderFloat2( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderFloat3( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderFloat4( + label: *const ::std::os::raw::c_char, + v: *mut f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderAngle( + label: *const ::std::os::raw::c_char, + v_rad: *mut f32, + v_degrees_min: f32, + v_degrees_max: f32, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderInt( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderInt2( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderInt3( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderInt4( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderScalar( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + p_min: *const ::std::os::raw::c_void, + p_max: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSliderScalarN( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + components: ::std::os::raw::c_int, + p_min: *const ::std::os::raw::c_void, + p_max: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igVSliderFloat( + label: *const ::std::os::raw::c_char, + size: ImVec2, + v: *mut f32, + v_min: f32, + v_max: f32, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igVSliderInt( + label: *const ::std::os::raw::c_char, + size: ImVec2, + v: *mut ::std::os::raw::c_int, + v_min: ::std::os::raw::c_int, + v_max: ::std::os::raw::c_int, + format: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igVSliderScalar( + label: *const ::std::os::raw::c_char, + size: ImVec2, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + p_min: *const ::std::os::raw::c_void, + p_max: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + power: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputText( + label: *const ::std::os::raw::c_char, + buf: *mut ::std::os::raw::c_char, + buf_size: usize, + flags: ImGuiInputTextFlags, + callback: ImGuiInputTextCallback, + user_data: *mut ::std::os::raw::c_void, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputTextMultiline( + label: *const ::std::os::raw::c_char, + buf: *mut ::std::os::raw::c_char, + buf_size: usize, + size: ImVec2, + flags: ImGuiInputTextFlags, + callback: ImGuiInputTextCallback, + user_data: *mut ::std::os::raw::c_void, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputTextWithHint( + label: *const ::std::os::raw::c_char, + hint: *const ::std::os::raw::c_char, + buf: *mut ::std::os::raw::c_char, + buf_size: usize, + flags: ImGuiInputTextFlags, + callback: ImGuiInputTextCallback, + user_data: *mut ::std::os::raw::c_void, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputFloat( + label: *const ::std::os::raw::c_char, + v: *mut f32, + step: f32, + step_fast: f32, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputFloat2( + label: *const ::std::os::raw::c_char, + v: *mut f32, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputFloat3( + label: *const ::std::os::raw::c_char, + v: *mut f32, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputFloat4( + label: *const ::std::os::raw::c_char, + v: *mut f32, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputInt( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + step: ::std::os::raw::c_int, + step_fast: ::std::os::raw::c_int, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputInt2( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputInt3( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputInt4( + label: *const ::std::os::raw::c_char, + v: *mut ::std::os::raw::c_int, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputDouble( + label: *const ::std::os::raw::c_char, + v: *mut f64, + step: f64, + step_fast: f64, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputScalar( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + p_step: *const ::std::os::raw::c_void, + p_step_fast: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igInputScalarN( + label: *const ::std::os::raw::c_char, + data_type: ImGuiDataType, + p_data: *mut ::std::os::raw::c_void, + components: ::std::os::raw::c_int, + p_step: *const ::std::os::raw::c_void, + p_step_fast: *const ::std::os::raw::c_void, + format: *const ::std::os::raw::c_char, + flags: ImGuiInputTextFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorEdit3( + label: *const ::std::os::raw::c_char, + col: *mut f32, + flags: ImGuiColorEditFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorEdit4( + label: *const ::std::os::raw::c_char, + col: *mut f32, + flags: ImGuiColorEditFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorPicker3( + label: *const ::std::os::raw::c_char, + col: *mut f32, + flags: ImGuiColorEditFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorPicker4( + label: *const ::std::os::raw::c_char, + col: *mut f32, + flags: ImGuiColorEditFlags, + ref_col: *const f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorButton( + desc_id: *const ::std::os::raw::c_char, + col: ImVec4, + flags: ImGuiColorEditFlags, + size: ImVec2, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetColorEditOptions(flags: ImGuiColorEditFlags); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodeStr(label: *const ::std::os::raw::c_char) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodeStrStr( + str_id: *const ::std::os::raw::c_char, + fmt: *const ::std::os::raw::c_char, + ... + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodePtr( + ptr_id: *const ::std::os::raw::c_void, + fmt: *const ::std::os::raw::c_char, + ... + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodeExStr(label: *const ::std::os::raw::c_char, flags: ImGuiTreeNodeFlags) + -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodeExStrStr( + str_id: *const ::std::os::raw::c_char, + flags: ImGuiTreeNodeFlags, + fmt: *const ::std::os::raw::c_char, + ... + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreeNodeExPtr( + ptr_id: *const ::std::os::raw::c_void, + flags: ImGuiTreeNodeFlags, + fmt: *const ::std::os::raw::c_char, + ... + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreePushStr(str_id: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreePushPtr(ptr_id: *const ::std::os::raw::c_void); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igTreePop(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetTreeNodeToLabelSpacing() -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCollapsingHeader( + label: *const ::std::os::raw::c_char, + flags: ImGuiTreeNodeFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCollapsingHeaderBoolPtr( + label: *const ::std::os::raw::c_char, + p_open: *mut bool, + flags: ImGuiTreeNodeFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetNextItemOpen(is_open: bool, cond: ImGuiCond); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSelectable( + label: *const ::std::os::raw::c_char, + selected: bool, + flags: ImGuiSelectableFlags, + size: ImVec2, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSelectableBoolPtr( + label: *const ::std::os::raw::c_char, + p_selected: *mut bool, + flags: ImGuiSelectableFlags, + size: ImVec2, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igListBoxStr_arr( + label: *const ::std::os::raw::c_char, + current_item: *mut ::std::os::raw::c_int, + items: *const *const ::std::os::raw::c_char, + items_count: ::std::os::raw::c_int, + height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igListBoxFnPtr( + label: *const ::std::os::raw::c_char, + current_item: *mut ::std::os::raw::c_int, + items_getter: ::std::option::Option< + unsafe extern "C" fn( + data: *mut ::std::os::raw::c_void, + idx: ::std::os::raw::c_int, + out_text: *mut *const ::std::os::raw::c_char, + ) -> bool, + >, + data: *mut ::std::os::raw::c_void, + items_count: ::std::os::raw::c_int, + height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igListBoxHeaderVec2(label: *const ::std::os::raw::c_char, size: ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igListBoxHeaderInt( + label: *const ::std::os::raw::c_char, + items_count: ::std::os::raw::c_int, + height_in_items: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igListBoxFooter(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPlotLines( + label: *const ::std::os::raw::c_char, + values: *const f32, + values_count: ::std::os::raw::c_int, + values_offset: ::std::os::raw::c_int, + overlay_text: *const ::std::os::raw::c_char, + scale_min: f32, + scale_max: f32, + graph_size: ImVec2, + stride: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPlotLinesFnPtr( + label: *const ::std::os::raw::c_char, + values_getter: ::std::option::Option< + unsafe extern "C" fn( + data: *mut ::std::os::raw::c_void, + idx: ::std::os::raw::c_int, + ) -> f32, + >, + data: *mut ::std::os::raw::c_void, + values_count: ::std::os::raw::c_int, + values_offset: ::std::os::raw::c_int, + overlay_text: *const ::std::os::raw::c_char, + scale_min: f32, + scale_max: f32, + graph_size: ImVec2, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPlotHistogramFloatPtr( + label: *const ::std::os::raw::c_char, + values: *const f32, + values_count: ::std::os::raw::c_int, + values_offset: ::std::os::raw::c_int, + overlay_text: *const ::std::os::raw::c_char, + scale_min: f32, + scale_max: f32, + graph_size: ImVec2, + stride: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPlotHistogramFnPtr( + label: *const ::std::os::raw::c_char, + values_getter: ::std::option::Option< + unsafe extern "C" fn( + data: *mut ::std::os::raw::c_void, + idx: ::std::os::raw::c_int, + ) -> f32, + >, + data: *mut ::std::os::raw::c_void, + values_count: ::std::os::raw::c_int, + values_offset: ::std::os::raw::c_int, + overlay_text: *const ::std::os::raw::c_char, + scale_min: f32, + scale_max: f32, + graph_size: ImVec2, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igValueBool(prefix: *const ::std::os::raw::c_char, b: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igValueInt(prefix: *const ::std::os::raw::c_char, v: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igValueUint(prefix: *const ::std::os::raw::c_char, v: ::std::os::raw::c_uint); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igValueFloat( + prefix: *const ::std::os::raw::c_char, + v: f32, + float_format: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginMenuBar() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndMenuBar(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginMainMenuBar() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndMainMenuBar(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginMenu(label: *const ::std::os::raw::c_char, enabled: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndMenu(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igMenuItemBool( + label: *const ::std::os::raw::c_char, + shortcut: *const ::std::os::raw::c_char, + selected: bool, + enabled: bool, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igMenuItemBoolPtr( + label: *const ::std::os::raw::c_char, + shortcut: *const ::std::os::raw::c_char, + p_selected: *mut bool, + enabled: bool, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginTooltip(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndTooltip(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetTooltip(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igOpenPopup(str_id: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginPopup(str_id: *const ::std::os::raw::c_char, flags: ImGuiWindowFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginPopupContextItem( + str_id: *const ::std::os::raw::c_char, + mouse_button: ImGuiMouseButton, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginPopupContextWindow( + str_id: *const ::std::os::raw::c_char, + mouse_button: ImGuiMouseButton, + also_over_items: bool, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginPopupContextVoid( + str_id: *const ::std::os::raw::c_char, + mouse_button: ImGuiMouseButton, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginPopupModal( + name: *const ::std::os::raw::c_char, + p_open: *mut bool, + flags: ImGuiWindowFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndPopup(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igOpenPopupOnItemClick( + str_id: *const ::std::os::raw::c_char, + mouse_button: ImGuiMouseButton, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsPopupOpen(str_id: *const ::std::os::raw::c_char) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCloseCurrentPopup(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColumns(count: ::std::os::raw::c_int, id: *const ::std::os::raw::c_char, border: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igNextColumn(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColumnIndex() -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColumnWidth(column_index: ::std::os::raw::c_int) -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetColumnWidth(column_index: ::std::os::raw::c_int, width: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColumnOffset(column_index: ::std::os::raw::c_int) -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetColumnOffset(column_index: ::std::os::raw::c_int, offset_x: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetColumnsCount() -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginTabBar(str_id: *const ::std::os::raw::c_char, flags: ImGuiTabBarFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndTabBar(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginTabItem( + label: *const ::std::os::raw::c_char, + p_open: *mut bool, + flags: ImGuiTabItemFlags, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndTabItem(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetTabItemClosed(tab_or_docked_window_label: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogToTTY(auto_open_depth: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogToFile( + auto_open_depth: ::std::os::raw::c_int, + filename: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogToClipboard(auto_open_depth: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogFinish(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogButtons(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginDragDropSource(flags: ImGuiDragDropFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetDragDropPayload( + type_: *const ::std::os::raw::c_char, + data: *const ::std::os::raw::c_void, + sz: usize, + cond: ImGuiCond, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndDragDropSource(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginDragDropTarget() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igAcceptDragDropPayload( + type_: *const ::std::os::raw::c_char, + flags: ImGuiDragDropFlags, + ) -> *const ImGuiPayload; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndDragDropTarget(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetDragDropPayload() -> *const ImGuiPayload; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPushClipRect( + clip_rect_min: ImVec2, + clip_rect_max: ImVec2, + intersect_with_current_clip_rect: bool, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igPopClipRect(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetItemDefaultFocus(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetKeyboardFocusHere(offset: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemHovered(flags: ImGuiHoveredFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemActive() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemFocused() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemClicked(mouse_button: ImGuiMouseButton) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemVisible() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemEdited() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemActivated() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemDeactivated() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemDeactivatedAfterEdit() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsItemToggledOpen() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsAnyItemHovered() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsAnyItemActive() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsAnyItemFocused() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetItemAllowOverlap(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsRectVisible(size: ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsRectVisibleVec2(rect_min: ImVec2, rect_max: ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetTime() -> f64; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFrameCount() -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetBackgroundDrawList() -> *mut ImDrawList; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetForegroundDrawList() -> *mut ImDrawList; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetDrawListSharedData() -> *mut ImDrawListSharedData; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetStyleColorName(idx: ImGuiCol) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetStateStorage(storage: *mut ImGuiStorage); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetStateStorage() -> *mut ImGuiStorage; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCalcListClipping( + items_count: ::std::os::raw::c_int, + items_height: f32, + out_items_display_start: *mut ::std::os::raw::c_int, + out_items_display_end: *mut ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igBeginChildFrame(id: ImGuiID, size: ImVec2, flags: ImGuiWindowFlags) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igEndChildFrame(); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorConvertFloat4ToU32(in_: ImVec4) -> ImU32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetKeyIndex(imgui_key: ImGuiKey) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsKeyDown(user_key_index: ::std::os::raw::c_int) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsKeyPressed(user_key_index: ::std::os::raw::c_int, repeat: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsKeyReleased(user_key_index: ::std::os::raw::c_int) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetKeyPressedAmount( + key_index: ::std::os::raw::c_int, + repeat_delay: f32, + rate: f32, + ) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCaptureKeyboardFromApp(want_capture_keyboard_value: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseDown(button: ImGuiMouseButton) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseClicked(button: ImGuiMouseButton, repeat: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseReleased(button: ImGuiMouseButton) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseDoubleClicked(button: ImGuiMouseButton) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseHoveringRect(r_min: ImVec2, r_max: ImVec2, clip: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMousePosValid(mouse_pos: *const ImVec2) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsAnyMouseDown() -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igIsMouseDragging(button: ImGuiMouseButton, lock_threshold: f32) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igResetMouseDragDelta(button: ImGuiMouseButton); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMouseCursor() -> ImGuiMouseCursor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetMouseCursor(cursor_type: ImGuiMouseCursor); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCaptureMouseFromApp(want_capture_mouse_value: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetClipboardText() -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetClipboardText(text: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLoadIniSettingsFromDisk(ini_filename: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLoadIniSettingsFromMemory(ini_data: *const ::std::os::raw::c_char, ini_size: usize); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSaveIniSettingsToDisk(ini_filename: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSaveIniSettingsToMemory(out_ini_size: *mut usize) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igSetAllocatorFunctions( + alloc_func: ::std::option::Option< + unsafe extern "C" fn( + sz: usize, + user_data: *mut ::std::os::raw::c_void, + ) -> *mut ::std::os::raw::c_void, + >, + free_func: ::std::option::Option< + unsafe extern "C" fn( + ptr: *mut ::std::os::raw::c_void, + user_data: *mut ::std::os::raw::c_void, + ), + >, + user_data: *mut ::std::os::raw::c_void, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igMemAlloc(size: usize) -> *mut ::std::os::raw::c_void; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igMemFree(ptr: *mut ::std::os::raw::c_void); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStyle_ImGuiStyle() -> *mut ImGuiStyle; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStyle_destroy(self_: *mut ImGuiStyle); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStyle_ScaleAllSizes(self_: *mut ImGuiStyle, scale_factor: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiIO_AddInputCharacter(self_: *mut ImGuiIO, c: ::std::os::raw::c_uint); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiIO_AddInputCharactersUTF8(self_: *mut ImGuiIO, str: *const ::std::os::raw::c_char); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiIO_ClearInputCharacters(self_: *mut ImGuiIO); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiIO_ImGuiIO() -> *mut ImGuiIO; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiIO_destroy(self_: *mut ImGuiIO); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiInputTextCallbackData_ImGuiInputTextCallbackData() -> *mut ImGuiInputTextCallbackData; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiInputTextCallbackData_destroy(self_: *mut ImGuiInputTextCallbackData); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiInputTextCallbackData_DeleteChars( + self_: *mut ImGuiInputTextCallbackData, + pos: ::std::os::raw::c_int, + bytes_count: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiInputTextCallbackData_InsertChars( + self_: *mut ImGuiInputTextCallbackData, + pos: ::std::os::raw::c_int, + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiInputTextCallbackData_HasSelection(self_: *mut ImGuiInputTextCallbackData) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_ImGuiPayload() -> *mut ImGuiPayload; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_destroy(self_: *mut ImGuiPayload); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_Clear(self_: *mut ImGuiPayload); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_IsDataType( + self_: *mut ImGuiPayload, + type_: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_IsPreview(self_: *mut ImGuiPayload) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiPayload_IsDelivery(self_: *mut ImGuiPayload) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiOnceUponAFrame_ImGuiOnceUponAFrame() -> *mut ImGuiOnceUponAFrame; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiOnceUponAFrame_destroy(self_: *mut ImGuiOnceUponAFrame); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_ImGuiTextFilter( + default_filter: *const ::std::os::raw::c_char, + ) -> *mut ImGuiTextFilter; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_destroy(self_: *mut ImGuiTextFilter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_Draw( + self_: *mut ImGuiTextFilter, + label: *const ::std::os::raw::c_char, + width: f32, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_PassFilter( + self_: *mut ImGuiTextFilter, + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_Build(self_: *mut ImGuiTextFilter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_Clear(self_: *mut ImGuiTextFilter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextFilter_IsActive(self_: *mut ImGuiTextFilter) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextRange_ImGuiTextRange() -> *mut ImGuiTextRange; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextRange_destroy(self_: *mut ImGuiTextRange); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextRange_ImGuiTextRangeStr( + _b: *const ::std::os::raw::c_char, + _e: *const ::std::os::raw::c_char, + ) -> *mut ImGuiTextRange; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextRange_empty(self_: *mut ImGuiTextRange) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextRange_split( + self_: *mut ImGuiTextRange, + separator: ::std::os::raw::c_char, + out: *mut ImVector_ImGuiTextRange, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_ImGuiTextBuffer() -> *mut ImGuiTextBuffer; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_destroy(self_: *mut ImGuiTextBuffer); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_begin(self_: *mut ImGuiTextBuffer) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_end(self_: *mut ImGuiTextBuffer) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_size(self_: *mut ImGuiTextBuffer) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_empty(self_: *mut ImGuiTextBuffer) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_clear(self_: *mut ImGuiTextBuffer); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_reserve(self_: *mut ImGuiTextBuffer, capacity: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_c_str(self_: *mut ImGuiTextBuffer) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_append( + self_: *mut ImGuiTextBuffer, + str: *const ::std::os::raw::c_char, + str_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStoragePair_ImGuiStoragePairInt( + _key: ImGuiID, + _val_i: ::std::os::raw::c_int, + ) -> *mut ImGuiStoragePair; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStoragePair_destroy(self_: *mut ImGuiStoragePair); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStoragePair_ImGuiStoragePairFloat( + _key: ImGuiID, + _val_f: f32, + ) -> *mut ImGuiStoragePair; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStoragePair_ImGuiStoragePairPtr( + _key: ImGuiID, + _val_p: *mut ::std::os::raw::c_void, + ) -> *mut ImGuiStoragePair; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_Clear(self_: *mut ImGuiStorage); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetInt( + self_: *mut ImGuiStorage, + key: ImGuiID, + default_val: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_SetInt(self_: *mut ImGuiStorage, key: ImGuiID, val: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetBool(self_: *mut ImGuiStorage, key: ImGuiID, default_val: bool) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_SetBool(self_: *mut ImGuiStorage, key: ImGuiID, val: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetFloat(self_: *mut ImGuiStorage, key: ImGuiID, default_val: f32) -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_SetFloat(self_: *mut ImGuiStorage, key: ImGuiID, val: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetVoidPtr( + self_: *mut ImGuiStorage, + key: ImGuiID, + ) -> *mut ::std::os::raw::c_void; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_SetVoidPtr( + self_: *mut ImGuiStorage, + key: ImGuiID, + val: *mut ::std::os::raw::c_void, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetIntRef( + self_: *mut ImGuiStorage, + key: ImGuiID, + default_val: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetBoolRef( + self_: *mut ImGuiStorage, + key: ImGuiID, + default_val: bool, + ) -> *mut bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetFloatRef( + self_: *mut ImGuiStorage, + key: ImGuiID, + default_val: f32, + ) -> *mut f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_GetVoidPtrRef( + self_: *mut ImGuiStorage, + key: ImGuiID, + default_val: *mut ::std::os::raw::c_void, + ) -> *mut *mut ::std::os::raw::c_void; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_SetAllInt(self_: *mut ImGuiStorage, val: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiStorage_BuildSortByKey(self_: *mut ImGuiStorage); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiListClipper_ImGuiListClipper( + items_count: ::std::os::raw::c_int, + items_height: f32, + ) -> *mut ImGuiListClipper; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiListClipper_destroy(self_: *mut ImGuiListClipper); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiListClipper_Step(self_: *mut ImGuiListClipper) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiListClipper_Begin( + self_: *mut ImGuiListClipper, + items_count: ::std::os::raw::c_int, + items_height: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiListClipper_End(self_: *mut ImGuiListClipper); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_ImColor() -> *mut ImColor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_destroy(self_: *mut ImColor); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_ImColorInt( + r: ::std::os::raw::c_int, + g: ::std::os::raw::c_int, + b: ::std::os::raw::c_int, + a: ::std::os::raw::c_int, + ) -> *mut ImColor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_ImColorU32(rgba: ImU32) -> *mut ImColor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_ImColorFloat(r: f32, g: f32, b: f32, a: f32) -> *mut ImColor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_ImColorVec4(col: ImVec4) -> *mut ImColor; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_SetHSV(self_: *mut ImColor, h: f32, s: f32, v: f32, a: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawCmd_ImDrawCmd() -> *mut ImDrawCmd; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawCmd_destroy(self_: *mut ImDrawCmd); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_ImDrawListSplitter() -> *mut ImDrawListSplitter; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_destroy(self_: *mut ImDrawListSplitter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_Clear(self_: *mut ImDrawListSplitter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_ClearFreeMemory(self_: *mut ImDrawListSplitter); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_Split( + self_: *mut ImDrawListSplitter, + draw_list: *mut ImDrawList, + count: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_Merge(self_: *mut ImDrawListSplitter, draw_list: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawListSplitter_SetCurrentChannel( + self_: *mut ImDrawListSplitter, + draw_list: *mut ImDrawList, + channel_idx: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_ImDrawList(shared_data: *const ImDrawListSharedData) -> *mut ImDrawList; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_destroy(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PushClipRect( + self_: *mut ImDrawList, + clip_rect_min: ImVec2, + clip_rect_max: ImVec2, + intersect_with_current_clip_rect: bool, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PushClipRectFullScreen(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PopClipRect(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PushTextureID(self_: *mut ImDrawList, texture_id: ImTextureID); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PopTextureID(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddLine( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + col: ImU32, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddRect( + self_: *mut ImDrawList, + p_min: ImVec2, + p_max: ImVec2, + col: ImU32, + rounding: f32, + rounding_corners: ImDrawCornerFlags, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddRectFilled( + self_: *mut ImDrawList, + p_min: ImVec2, + p_max: ImVec2, + col: ImU32, + rounding: f32, + rounding_corners: ImDrawCornerFlags, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddRectFilledMultiColor( + self_: *mut ImDrawList, + p_min: ImVec2, + p_max: ImVec2, + col_upr_left: ImU32, + col_upr_right: ImU32, + col_bot_right: ImU32, + col_bot_left: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddQuad( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + p4: ImVec2, + col: ImU32, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddQuadFilled( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + p4: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddTriangle( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + col: ImU32, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddTriangleFilled( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddCircle( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + col: ImU32, + num_segments: ::std::os::raw::c_int, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddCircleFilled( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + col: ImU32, + num_segments: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddNgon( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + col: ImU32, + num_segments: ::std::os::raw::c_int, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddNgonFilled( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + col: ImU32, + num_segments: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddText( + self_: *mut ImDrawList, + pos: ImVec2, + col: ImU32, + text_begin: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddTextFontPtr( + self_: *mut ImDrawList, + font: *const ImFont, + font_size: f32, + pos: ImVec2, + col: ImU32, + text_begin: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + wrap_width: f32, + cpu_fine_clip_rect: *const ImVec4, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddPolyline( + self_: *mut ImDrawList, + points: *const ImVec2, + num_points: ::std::os::raw::c_int, + col: ImU32, + closed: bool, + thickness: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddConvexPolyFilled( + self_: *mut ImDrawList, + points: *const ImVec2, + num_points: ::std::os::raw::c_int, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddBezierCurve( + self_: *mut ImDrawList, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + p4: ImVec2, + col: ImU32, + thickness: f32, + num_segments: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddImage( + self_: *mut ImDrawList, + user_texture_id: ImTextureID, + p_min: ImVec2, + p_max: ImVec2, + uv_min: ImVec2, + uv_max: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddImageQuad( + self_: *mut ImDrawList, + user_texture_id: ImTextureID, + p1: ImVec2, + p2: ImVec2, + p3: ImVec2, + p4: ImVec2, + uv1: ImVec2, + uv2: ImVec2, + uv3: ImVec2, + uv4: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddImageRounded( + self_: *mut ImDrawList, + user_texture_id: ImTextureID, + p_min: ImVec2, + p_max: ImVec2, + uv_min: ImVec2, + uv_max: ImVec2, + col: ImU32, + rounding: f32, + rounding_corners: ImDrawCornerFlags, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathClear(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathLineTo(self_: *mut ImDrawList, pos: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathLineToMergeDuplicate(self_: *mut ImDrawList, pos: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathFillConvex(self_: *mut ImDrawList, col: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathStroke(self_: *mut ImDrawList, col: ImU32, closed: bool, thickness: f32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathArcTo( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + a_min: f32, + a_max: f32, + num_segments: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathArcToFast( + self_: *mut ImDrawList, + center: ImVec2, + radius: f32, + a_min_of_12: ::std::os::raw::c_int, + a_max_of_12: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathBezierCurveTo( + self_: *mut ImDrawList, + p2: ImVec2, + p3: ImVec2, + p4: ImVec2, + num_segments: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PathRect( + self_: *mut ImDrawList, + rect_min: ImVec2, + rect_max: ImVec2, + rounding: f32, + rounding_corners: ImDrawCornerFlags, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddCallback( + self_: *mut ImDrawList, + callback: ImDrawCallback, + callback_data: *mut ::std::os::raw::c_void, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_AddDrawCmd(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_CloneOutput(self_: *mut ImDrawList) -> *mut ImDrawList; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_ChannelsSplit(self_: *mut ImDrawList, count: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_ChannelsMerge(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_ChannelsSetCurrent(self_: *mut ImDrawList, n: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_Clear(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_ClearFreeMemory(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimReserve( + self_: *mut ImDrawList, + idx_count: ::std::os::raw::c_int, + vtx_count: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimUnreserve( + self_: *mut ImDrawList, + idx_count: ::std::os::raw::c_int, + vtx_count: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimRect(self_: *mut ImDrawList, a: ImVec2, b: ImVec2, col: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimRectUV( + self_: *mut ImDrawList, + a: ImVec2, + b: ImVec2, + uv_a: ImVec2, + uv_b: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimQuadUV( + self_: *mut ImDrawList, + a: ImVec2, + b: ImVec2, + c: ImVec2, + d: ImVec2, + uv_a: ImVec2, + uv_b: ImVec2, + uv_c: ImVec2, + uv_d: ImVec2, + col: ImU32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimWriteVtx(self_: *mut ImDrawList, pos: ImVec2, uv: ImVec2, col: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimWriteIdx(self_: *mut ImDrawList, idx: ImDrawIdx); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_PrimVtx(self_: *mut ImDrawList, pos: ImVec2, uv: ImVec2, col: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_UpdateClipRect(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_UpdateTextureID(self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawData_ImDrawData() -> *mut ImDrawData; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawData_destroy(self_: *mut ImDrawData); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawData_Clear(self_: *mut ImDrawData); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawData_DeIndexAllBuffers(self_: *mut ImDrawData); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawData_ScaleClipRects(self_: *mut ImDrawData, fb_scale: ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontConfig_ImFontConfig() -> *mut ImFontConfig; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontConfig_destroy(self_: *mut ImFontConfig); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_ImFontGlyphRangesBuilder() -> *mut ImFontGlyphRangesBuilder; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_destroy(self_: *mut ImFontGlyphRangesBuilder); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_Clear(self_: *mut ImFontGlyphRangesBuilder); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_GetBit( + self_: *mut ImFontGlyphRangesBuilder, + n: ::std::os::raw::c_int, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_SetBit( + self_: *mut ImFontGlyphRangesBuilder, + n: ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_AddChar(self_: *mut ImFontGlyphRangesBuilder, c: ImWchar); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_AddText( + self_: *mut ImFontGlyphRangesBuilder, + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_AddRanges( + self_: *mut ImFontGlyphRangesBuilder, + ranges: *const ImWchar, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontGlyphRangesBuilder_BuildRanges( + self_: *mut ImFontGlyphRangesBuilder, + out_ranges: *mut ImVector_ImWchar, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlasCustomRect_ImFontAtlasCustomRect() -> *mut ImFontAtlasCustomRect; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlasCustomRect_destroy(self_: *mut ImFontAtlasCustomRect); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlasCustomRect_IsPacked(self_: *mut ImFontAtlasCustomRect) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_ImFontAtlas() -> *mut ImFontAtlas; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_destroy(self_: *mut ImFontAtlas); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFont( + self_: *mut ImFontAtlas, + font_cfg: *const ImFontConfig, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFontDefault( + self_: *mut ImFontAtlas, + font_cfg: *const ImFontConfig, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFontFromFileTTF( + self_: *mut ImFontAtlas, + filename: *const ::std::os::raw::c_char, + size_pixels: f32, + font_cfg: *const ImFontConfig, + glyph_ranges: *const ImWchar, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFontFromMemoryTTF( + self_: *mut ImFontAtlas, + font_data: *mut ::std::os::raw::c_void, + font_size: ::std::os::raw::c_int, + size_pixels: f32, + font_cfg: *const ImFontConfig, + glyph_ranges: *const ImWchar, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFontFromMemoryCompressedTTF( + self_: *mut ImFontAtlas, + compressed_font_data: *const ::std::os::raw::c_void, + compressed_font_size: ::std::os::raw::c_int, + size_pixels: f32, + font_cfg: *const ImFontConfig, + glyph_ranges: *const ImWchar, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddFontFromMemoryCompressedBase85TTF( + self_: *mut ImFontAtlas, + compressed_font_data_base85: *const ::std::os::raw::c_char, + size_pixels: f32, + font_cfg: *const ImFontConfig, + glyph_ranges: *const ImWchar, + ) -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_ClearInputData(self_: *mut ImFontAtlas); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_ClearTexData(self_: *mut ImFontAtlas); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_ClearFonts(self_: *mut ImFontAtlas); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_Clear(self_: *mut ImFontAtlas); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_Build(self_: *mut ImFontAtlas) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetTexDataAsAlpha8( + self_: *mut ImFontAtlas, + out_pixels: *mut *mut ::std::os::raw::c_uchar, + out_width: *mut ::std::os::raw::c_int, + out_height: *mut ::std::os::raw::c_int, + out_bytes_per_pixel: *mut ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetTexDataAsRGBA32( + self_: *mut ImFontAtlas, + out_pixels: *mut *mut ::std::os::raw::c_uchar, + out_width: *mut ::std::os::raw::c_int, + out_height: *mut ::std::os::raw::c_int, + out_bytes_per_pixel: *mut ::std::os::raw::c_int, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_IsBuilt(self_: *mut ImFontAtlas) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_SetTexID(self_: *mut ImFontAtlas, id: ImTextureID); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesDefault(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesKorean(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesJapanese(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesChineseFull(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesChineseSimplifiedCommon( + self_: *mut ImFontAtlas, + ) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesCyrillic(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesThai(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetGlyphRangesVietnamese(self_: *mut ImFontAtlas) -> *const ImWchar; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddCustomRectRegular( + self_: *mut ImFontAtlas, + id: ::std::os::raw::c_uint, + width: ::std::os::raw::c_int, + height: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_AddCustomRectFontGlyph( + self_: *mut ImFontAtlas, + font: *mut ImFont, + id: ImWchar, + width: ::std::os::raw::c_int, + height: ::std::os::raw::c_int, + advance_x: f32, + offset: ImVec2, + ) -> ::std::os::raw::c_int; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetCustomRectByIndex( + self_: *mut ImFontAtlas, + index: ::std::os::raw::c_int, + ) -> *const ImFontAtlasCustomRect; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_CalcCustomRectUV( + self_: *mut ImFontAtlas, + rect: *const ImFontAtlasCustomRect, + out_uv_min: *mut ImVec2, + out_uv_max: *mut ImVec2, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFontAtlas_GetMouseCursorTexData( + self_: *mut ImFontAtlas, + cursor: ImGuiMouseCursor, + out_offset: *mut ImVec2, + out_size: *mut ImVec2, + out_uv_border: *mut ImVec2, + out_uv_fill: *mut ImVec2, + ) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_ImFont() -> *mut ImFont; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_destroy(self_: *mut ImFont); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_FindGlyph(self_: *mut ImFont, c: ImWchar) -> *const ImFontGlyph; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_FindGlyphNoFallback(self_: *mut ImFont, c: ImWchar) -> *const ImFontGlyph; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_GetCharAdvance(self_: *mut ImFont, c: ImWchar) -> f32; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_IsLoaded(self_: *mut ImFont) -> bool; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_GetDebugName(self_: *mut ImFont) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_CalcWordWrapPositionA( + self_: *mut ImFont, + scale: f32, + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + wrap_width: f32, + ) -> *const ::std::os::raw::c_char; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_RenderChar( + self_: *mut ImFont, + draw_list: *mut ImDrawList, + size: f32, + pos: ImVec2, + col: ImU32, + c: ImWchar, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_RenderText( + self_: *mut ImFont, + draw_list: *mut ImDrawList, + size: f32, + pos: ImVec2, + col: ImU32, + clip_rect: ImVec4, + text_begin: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + wrap_width: f32, + cpu_fine_clip: bool, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_BuildLookupTable(self_: *mut ImFont); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_ClearOutputData(self_: *mut ImFont); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_GrowIndex(self_: *mut ImFont, new_size: ::std::os::raw::c_int); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_AddGlyph( + self_: *mut ImFont, + c: ImWchar, + x0: f32, + y0: f32, + x1: f32, + y1: f32, + u0: f32, + v0: f32, + u1: f32, + v1: f32, + advance_x: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_AddRemapChar(self_: *mut ImFont, dst: ImWchar, src: ImWchar, overwrite_dst: bool); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_SetFallbackChar(self_: *mut ImFont, c: ImWchar); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowPos_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowPos_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowSize_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowSize_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetContentRegionMax_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetContentRegionMax_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetContentRegionAvail_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetContentRegionAvail_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowContentRegionMin_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowContentRegionMin_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowContentRegionMax_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetWindowContentRegionMax_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFontTexUvWhitePixel_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetFontTexUvWhitePixel_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorPos_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorPos_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorStartPos_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorStartPos_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorScreenPos_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetCursorScreenPos_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectMin_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectMin_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectMax_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectMax_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectSize_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetItemRectSize_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCalcTextSize_nonUDT( + pOut: *mut ImVec2, + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + hide_text_after_double_hash: bool, + wrap_width: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igCalcTextSize_nonUDT2( + text: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + hide_text_after_double_hash: bool, + wrap_width: f32, + ) -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorConvertU32ToFloat4_nonUDT(pOut: *mut ImVec4, in_: ImU32); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorConvertU32ToFloat4_nonUDT2(in_: ImU32) -> ImVec4_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMousePos_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMousePos_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMousePosOnOpeningCurrentPopup_nonUDT(pOut: *mut ImVec2); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMousePosOnOpeningCurrentPopup_nonUDT2() -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMouseDragDelta_nonUDT( + pOut: *mut ImVec2, + button: ImGuiMouseButton, + lock_threshold: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igGetMouseDragDelta_nonUDT2( + button: ImGuiMouseButton, + lock_threshold: f32, + ) -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_HSV_nonUDT( + pOut: *mut ImColor, + self_: *mut ImColor, + h: f32, + s: f32, + v: f32, + a: f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImColor_HSV_nonUDT2( + self_: *mut ImColor, + h: f32, + s: f32, + v: f32, + a: f32, + ) -> ImColor_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_GetClipRectMin_nonUDT(pOut: *mut ImVec2, self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_GetClipRectMin_nonUDT2(self_: *mut ImDrawList) -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_GetClipRectMax_nonUDT(pOut: *mut ImVec2, self_: *mut ImDrawList); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImDrawList_GetClipRectMax_nonUDT2(self_: *mut ImDrawList) -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_CalcTextSizeA_nonUDT( + pOut: *mut ImVec2, + self_: *mut ImFont, + size: f32, + max_width: f32, + wrap_width: f32, + text_begin: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + remaining: *mut *const ::std::os::raw::c_char, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImFont_CalcTextSizeA_nonUDT2( + self_: *mut ImFont, + size: f32, + max_width: f32, + wrap_width: f32, + text_begin: *const ::std::os::raw::c_char, + text_end: *const ::std::os::raw::c_char, + remaining: *mut *const ::std::os::raw::c_char, + ) -> ImVec2_Simple; +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igLogText(fmt: *const ::std::os::raw::c_char, ...); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn ImGuiTextBuffer_appendf( + buffer: *mut ImGuiTextBuffer, + fmt: *const ::std::os::raw::c_char, + ... + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorConvertRGBtoHSV( + r: f32, + g: f32, + b: f32, + out_h: *mut f32, + out_s: *mut f32, + out_v: *mut f32, + ); +} +#[link(wasm_import_module = "imgui-sys")] +extern "C" { + pub fn igColorConvertHSVtoRGB( + h: f32, + s: f32, + v: f32, + out_r: *mut f32, + out_g: *mut f32, + out_b: *mut f32, + ); +} diff --git a/src/drag.rs b/src/drag.rs index 448bbb5..ecec740 100644 --- a/src/drag.rs +++ b/src/drag.rs @@ -11,7 +11,7 @@ macro_rules! impl_display_format { self.display_format = display_format; self } - } + }; } macro_rules! impl_speed { @@ -21,7 +21,7 @@ macro_rules! impl_speed { self.speed = value; self } - } + }; } macro_rules! impl_power { @@ -31,7 +31,7 @@ macro_rules! impl_power { self.power = value; self } - } + }; } macro_rules! impl_min_max { @@ -47,7 +47,7 @@ macro_rules! impl_min_max { self.max = value; self } - } + }; } #[must_use] diff --git a/src/input_widget.rs b/src/input_widget.rs index ea197d5..d39d350 100644 --- a/src/input_widget.rs +++ b/src/input_widget.rs @@ -52,7 +52,8 @@ macro_rules! impl_text_flags { #[inline] pub fn callback_completion(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags::CallbackCompletion, value); + self.flags + .set(ImGuiInputTextFlags::CallbackCompletion, value); self } @@ -70,7 +71,8 @@ macro_rules! impl_text_flags { #[inline] pub fn callback_char_filter(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags::CallbackCharFilter, value); + self.flags + .set(ImGuiInputTextFlags::CallbackCharFilter, value); self } @@ -88,7 +90,8 @@ macro_rules! impl_text_flags { #[inline] pub fn no_horizontal_scroll(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags::NoHorizontalScroll, value); + self.flags + .set(ImGuiInputTextFlags::NoHorizontalScroll, value); self } @@ -115,7 +118,7 @@ macro_rules! impl_text_flags { self.flags.set(ImGuiInputTextFlags::NoUndoRedo, value); self } - } + }; } macro_rules! impl_step_params { @@ -131,7 +134,7 @@ macro_rules! impl_step_params { self.step_fast = value; self } - } + }; } extern "C" fn resize_callback(data: *mut sys::ImGuiInputTextCallbackData) -> c_int {