Merge pull request #365 from Gekkio/feature/imgui-1.78

Upgrade to cimgui/imgui 1.78
This commit is contained in:
Joonas Javanainen 2020-09-19 13:34:50 +03:00 committed by GitHub
commit 4ce852a87c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 1245 additions and 713 deletions

View File

@ -14,7 +14,7 @@
### Changed
- Upgrade to cimgui / imgui 1.77
- Upgrade to cimgui / imgui 1.78
- Store per-texture sampler parameters in imgui-glium-renderer to support
customizing them

View File

@ -4,7 +4,7 @@
Minimum Rust version: 1.40
Wrapped Dear ImGui version: 1.77
Wrapped Dear ImGui version: 1.78
[![Build Status](https://github.com/Gekkio/imgui-rs/workflows/ci/badge.svg)](https://github.com/Gekkio/imgui-rs/actions)
[![Latest release on crates.io](https://meritbadge.herokuapp.com/imgui)](https://crates.io/crates/imgui)

View File

@ -10,7 +10,7 @@ license = "MIT/Apache-2.0"
publish = false
[dependencies]
bindgen = "0.54"
bindgen = "0.55"
serde = "1.0"
serde_derive = "1.0"
serde_json = "1.0"

View File

@ -1,4 +1,4 @@
/* automatically generated by rust-bindgen 0.54.1 */
/* automatically generated by rust-bindgen 0.55.1 */
#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
@ -108,6 +108,7 @@ 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 ImGuiButtonFlags = ::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;
@ -118,6 +119,7 @@ pub type ImGuiInputTextFlags = ::std::os::raw::c_int;
pub type ImGuiKeyModFlags = ::std::os::raw::c_int;
pub type ImGuiPopupFlags = ::std::os::raw::c_int;
pub type ImGuiSelectableFlags = ::std::os::raw::c_int;
pub type ImGuiSliderFlags = ::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;
@ -1182,7 +1184,7 @@ 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 type ImGuiWindowFlags_ = ::std::os::raw::c_uint;
pub const ImGuiInputTextFlags_None: ImGuiInputTextFlags_ = 0;
pub const ImGuiInputTextFlags_CharsDecimal: ImGuiInputTextFlags_ = 1;
pub const ImGuiInputTextFlags_CharsHexadecimal: ImGuiInputTextFlags_ = 2;
@ -1205,7 +1207,7 @@ 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 type ImGuiInputTextFlags_ = ::std::os::raw::c_uint;
pub const ImGuiTreeNodeFlags_None: ImGuiTreeNodeFlags_ = 0;
pub const ImGuiTreeNodeFlags_Selected: ImGuiTreeNodeFlags_ = 1;
pub const ImGuiTreeNodeFlags_Framed: ImGuiTreeNodeFlags_ = 2;
@ -1222,7 +1224,7 @@ 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 type ImGuiTreeNodeFlags_ = ::std::os::raw::c_uint;
pub const ImGuiPopupFlags_None: ImGuiPopupFlags_ = 0;
pub const ImGuiPopupFlags_MouseButtonLeft: ImGuiPopupFlags_ = 0;
pub const ImGuiPopupFlags_MouseButtonRight: ImGuiPopupFlags_ = 1;
@ -1234,14 +1236,14 @@ pub const ImGuiPopupFlags_NoOpenOverItems: ImGuiPopupFlags_ = 64;
pub const ImGuiPopupFlags_AnyPopupId: ImGuiPopupFlags_ = 128;
pub const ImGuiPopupFlags_AnyPopupLevel: ImGuiPopupFlags_ = 256;
pub const ImGuiPopupFlags_AnyPopup: ImGuiPopupFlags_ = 384;
pub type ImGuiPopupFlags_ = u32;
pub type ImGuiPopupFlags_ = ::std::os::raw::c_uint;
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 type ImGuiSelectableFlags_ = ::std::os::raw::c_uint;
pub const ImGuiComboFlags_None: ImGuiComboFlags_ = 0;
pub const ImGuiComboFlags_PopupAlignLeft: ImGuiComboFlags_ = 1;
pub const ImGuiComboFlags_HeightSmall: ImGuiComboFlags_ = 2;
@ -1251,7 +1253,7 @@ 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 type ImGuiComboFlags_ = ::std::os::raw::c_uint;
pub const ImGuiTabBarFlags_None: ImGuiTabBarFlags_ = 0;
pub const ImGuiTabBarFlags_Reorderable: ImGuiTabBarFlags_ = 1;
pub const ImGuiTabBarFlags_AutoSelectNewTabs: ImGuiTabBarFlags_ = 2;
@ -1263,20 +1265,20 @@ 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 type ImGuiTabBarFlags_ = ::std::os::raw::c_uint;
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 const ImGuiTabItemFlags_NoTooltip: ImGuiTabItemFlags_ = 16;
pub type ImGuiTabItemFlags_ = u32;
pub type ImGuiTabItemFlags_ = ::std::os::raw::c_uint;
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 type ImGuiFocusedFlags_ = ::std::os::raw::c_uint;
pub const ImGuiHoveredFlags_None: ImGuiHoveredFlags_ = 0;
pub const ImGuiHoveredFlags_ChildWindows: ImGuiHoveredFlags_ = 1;
pub const ImGuiHoveredFlags_RootWindow: ImGuiHoveredFlags_ = 2;
@ -1287,7 +1289,7 @@ 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 type ImGuiHoveredFlags_ = ::std::os::raw::c_uint;
pub const ImGuiDragDropFlags_None: ImGuiDragDropFlags_ = 0;
pub const ImGuiDragDropFlags_SourceNoPreviewTooltip: ImGuiDragDropFlags_ = 1;
pub const ImGuiDragDropFlags_SourceNoDisableHover: ImGuiDragDropFlags_ = 2;
@ -1299,7 +1301,7 @@ 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 type ImGuiDragDropFlags_ = ::std::os::raw::c_uint;
pub const ImGuiDataType_S8: ImGuiDataType_ = 0;
pub const ImGuiDataType_U8: ImGuiDataType_ = 1;
pub const ImGuiDataType_S16: ImGuiDataType_ = 2;
@ -1311,14 +1313,14 @@ 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 type ImGuiDataType_ = ::std::os::raw::c_uint;
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 type ImGuiDir_ = ::std::os::raw::c_int;
pub const ImGuiKey_Tab: ImGuiKey_ = 0;
pub const ImGuiKey_LeftArrow: ImGuiKey_ = 1;
pub const ImGuiKey_RightArrow: ImGuiKey_ = 2;
@ -1342,13 +1344,13 @@ 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 type ImGuiKey_ = ::std::os::raw::c_uint;
pub const ImGuiKeyModFlags_None: ImGuiKeyModFlags_ = 0;
pub const ImGuiKeyModFlags_Ctrl: ImGuiKeyModFlags_ = 1;
pub const ImGuiKeyModFlags_Shift: ImGuiKeyModFlags_ = 2;
pub const ImGuiKeyModFlags_Alt: ImGuiKeyModFlags_ = 4;
pub const ImGuiKeyModFlags_Super: ImGuiKeyModFlags_ = 8;
pub type ImGuiKeyModFlags_ = u32;
pub type ImGuiKeyModFlags_ = ::std::os::raw::c_uint;
pub const ImGuiNavInput_Activate: ImGuiNavInput_ = 0;
pub const ImGuiNavInput_Cancel: ImGuiNavInput_ = 1;
pub const ImGuiNavInput_Input: ImGuiNavInput_ = 2;
@ -1372,7 +1374,7 @@ 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 type ImGuiNavInput_ = ::std::os::raw::c_uint;
pub const ImGuiConfigFlags_None: ImGuiConfigFlags_ = 0;
pub const ImGuiConfigFlags_NavEnableKeyboard: ImGuiConfigFlags_ = 1;
pub const ImGuiConfigFlags_NavEnableGamepad: ImGuiConfigFlags_ = 2;
@ -1382,13 +1384,13 @@ 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 type ImGuiConfigFlags_ = ::std::os::raw::c_uint;
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 type ImGuiBackendFlags_ = ::std::os::raw::c_uint;
pub const ImGuiCol_Text: ImGuiCol_ = 0;
pub const ImGuiCol_TextDisabled: ImGuiCol_ = 1;
pub const ImGuiCol_WindowBg: ImGuiCol_ = 2;
@ -1438,7 +1440,7 @@ 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 type ImGuiCol_ = ::std::os::raw::c_uint;
pub const ImGuiStyleVar_Alpha: ImGuiStyleVar_ = 0;
pub const ImGuiStyleVar_WindowPadding: ImGuiStyleVar_ = 1;
pub const ImGuiStyleVar_WindowRounding: ImGuiStyleVar_ = 2;
@ -1463,7 +1465,14 @@ 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 type ImGuiStyleVar_ = ::std::os::raw::c_uint;
pub const ImGuiButtonFlags_None: ImGuiButtonFlags_ = 0;
pub const ImGuiButtonFlags_MouseButtonLeft: ImGuiButtonFlags_ = 1;
pub const ImGuiButtonFlags_MouseButtonRight: ImGuiButtonFlags_ = 2;
pub const ImGuiButtonFlags_MouseButtonMiddle: ImGuiButtonFlags_ = 4;
pub const ImGuiButtonFlags_MouseButtonMask_: ImGuiButtonFlags_ = 7;
pub const ImGuiButtonFlags_MouseButtonDefault_: ImGuiButtonFlags_ = 1;
pub type ImGuiButtonFlags_ = ::std::os::raw::c_uint;
pub const ImGuiColorEditFlags_None: ImGuiColorEditFlags_ = 0;
pub const ImGuiColorEditFlags_NoAlpha: ImGuiColorEditFlags_ = 2;
pub const ImGuiColorEditFlags_NoPicker: ImGuiColorEditFlags_ = 4;
@ -1493,12 +1502,19 @@ 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 type ImGuiColorEditFlags_ = ::std::os::raw::c_uint;
pub const ImGuiSliderFlags_None: ImGuiSliderFlags_ = 0;
pub const ImGuiSliderFlags_ClampOnInput: ImGuiSliderFlags_ = 16;
pub const ImGuiSliderFlags_Logarithmic: ImGuiSliderFlags_ = 32;
pub const ImGuiSliderFlags_NoRoundToFormat: ImGuiSliderFlags_ = 64;
pub const ImGuiSliderFlags_NoInput: ImGuiSliderFlags_ = 128;
pub const ImGuiSliderFlags_InvalidMask_: ImGuiSliderFlags_ = 1879048207;
pub type ImGuiSliderFlags_ = ::std::os::raw::c_uint;
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 type ImGuiMouseButton_ = ::std::os::raw::c_uint;
pub const ImGuiMouseCursor_None: ImGuiMouseCursor_ = -1;
pub const ImGuiMouseCursor_Arrow: ImGuiMouseCursor_ = 0;
pub const ImGuiMouseCursor_TextInput: ImGuiMouseCursor_ = 1;
@ -1510,13 +1526,13 @@ 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 type ImGuiMouseCursor_ = ::std::os::raw::c_int;
pub const ImGuiCond_None: ImGuiCond_ = 0;
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;
pub type ImGuiCond_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ImGuiStyle {
@ -1543,6 +1559,7 @@ pub struct ImGuiStyle {
pub ScrollbarRounding: f32,
pub GrabMinSize: f32,
pub GrabRounding: f32,
pub LogSliderDeadzone: f32,
pub TabRounding: f32,
pub TabBorderSize: f32,
pub TabMinWidthForUnselectedCloseButton: f32,
@ -1553,6 +1570,7 @@ pub struct ImGuiStyle {
pub DisplaySafeAreaPadding: ImVec2,
pub MouseCursorScale: f32,
pub AntiAliasedLines: bool,
pub AntiAliasedLinesUseTex: bool,
pub AntiAliasedFill: bool,
pub CurveTessellationTol: f32,
pub CircleSegmentMaxError: f32,
@ -1562,7 +1580,7 @@ pub struct ImGuiStyle {
fn bindgen_test_layout_ImGuiStyle() {
assert_eq!(
::std::mem::size_of::<ImGuiStyle>(),
952usize,
956usize,
concat!("Size of: ", stringify!(ImGuiStyle))
);
assert_eq!(
@ -1803,8 +1821,18 @@ fn bindgen_test_layout_ImGuiStyle() {
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabRounding as *const _ as usize },
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).LogSliderDeadzone as *const _ as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
"::",
stringify!(LogSliderDeadzone)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabRounding as *const _ as usize },
124usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1814,7 +1842,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabBorderSize as *const _ as usize },
124usize,
128usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1827,7 +1855,7 @@ fn bindgen_test_layout_ImGuiStyle() {
&(*(::std::ptr::null::<ImGuiStyle>())).TabMinWidthForUnselectedCloseButton as *const _
as usize
},
128usize,
132usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1837,7 +1865,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).ColorButtonPosition as *const _ as usize },
132usize,
136usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1847,7 +1875,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).ButtonTextAlign as *const _ as usize },
136usize,
140usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1857,7 +1885,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).SelectableTextAlign as *const _ as usize },
144usize,
148usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1867,7 +1895,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).DisplayWindowPadding as *const _ as usize },
152usize,
156usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1879,7 +1907,7 @@ fn bindgen_test_layout_ImGuiStyle() {
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).DisplaySafeAreaPadding as *const _ as usize
},
160usize,
164usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1889,7 +1917,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).MouseCursorScale as *const _ as usize },
168usize,
172usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1899,7 +1927,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedLines as *const _ as usize },
172usize,
176usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1907,9 +1935,21 @@ fn bindgen_test_layout_ImGuiStyle() {
stringify!(AntiAliasedLines)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedLinesUseTex as *const _ as usize
},
177usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
"::",
stringify!(AntiAliasedLinesUseTex)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedFill as *const _ as usize },
173usize,
178usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1919,7 +1959,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).CurveTessellationTol as *const _ as usize },
176usize,
180usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1931,7 +1971,7 @@ fn bindgen_test_layout_ImGuiStyle() {
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).CircleSegmentMaxError as *const _ as usize
},
180usize,
184usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1941,7 +1981,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).Colors as *const _ as usize },
184usize,
188usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1957,7 +1997,7 @@ impl Default for ImGuiStyle {
}
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: {:?}, TabMinWidthForUnselectedCloseButton: {:?}, 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 . TabMinWidthForUnselectedCloseButton , 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 > ( ) )
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: {:?}, LogSliderDeadzone: {:?}, TabRounding: {:?}, TabBorderSize: {:?}, TabMinWidthForUnselectedCloseButton: {:?}, ColorButtonPosition: {:?}, ButtonTextAlign: {:?}, SelectableTextAlign: {:?}, DisplayWindowPadding: {:?}, DisplaySafeAreaPadding: {:?}, MouseCursorScale: {:?}, AntiAliasedLines: {:?}, AntiAliasedLinesUseTex: {:?}, 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 . LogSliderDeadzone , self . TabRounding , self . TabBorderSize , self . TabMinWidthForUnselectedCloseButton , self . ColorButtonPosition , self . ButtonTextAlign , self . SelectableTextAlign , self . DisplayWindowPadding , self . DisplaySafeAreaPadding , self . MouseCursorScale , self . AntiAliasedLines , self . AntiAliasedLinesUseTex , self . AntiAliasedFill , self . CurveTessellationTol , self . CircleSegmentMaxError , self . Colors . iter () . enumerate () . map (| (i , v) | format ! ("{}{:?}" , if i > 0 { ", " } else { "" } , v)) . collect :: < String > ())
}
}
#[repr(C)]
@ -2888,7 +2928,7 @@ impl Default for ImGuiIO {
}
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: {:?}, KeyMods: {:?}, MousePosPrev: {:?}, MouseClickedPos: {:?}, MouseClickedTime: {:?}, MouseClicked: {:?}, MouseDoubleClicked: {:?}, MouseReleased: {:?}, MouseDownOwned: {:?}, MouseDownWasDoubleClick: {:?}, MouseDownDuration: {:?}, MouseDownDurationPrev: {:?}, MouseDragMaxDistanceAbs: {:?}, MouseDragMaxDistanceSqr: {:?}, KeysDownDuration: [{}], KeysDownDurationPrev: [{}], NavInputsDownDuration: {:?}, NavInputsDownDurationPrev: {:?}, PenPressure: {:?}, InputQueueSurrogate: {:?}, 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 . KeyMods , 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 . PenPressure , self . InputQueueSurrogate , self . InputQueueCharacters )
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: {:?}, KeyMods: {:?}, MousePosPrev: {:?}, MouseClickedPos: {:?}, MouseClickedTime: {:?}, MouseClicked: {:?}, MouseDoubleClicked: {:?}, MouseReleased: {:?}, MouseDownOwned: {:?}, MouseDownWasDoubleClick: {:?}, MouseDownDuration: {:?}, MouseDownDurationPrev: {:?}, MouseDragMaxDistanceAbs: {:?}, MouseDragMaxDistanceSqr: {:?}, KeysDownDuration: [{}], KeysDownDurationPrev: [{}], NavInputsDownDuration: {:?}, NavInputsDownDurationPrev: {:?}, PenPressure: {:?}, InputQueueSurrogate: {:?}, 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 . KeyMods , 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 . PenPressure , self . InputQueueSurrogate , self . InputQueueCharacters)
}
}
#[repr(C)]
@ -3250,7 +3290,7 @@ impl Default for ImGuiPayload {
}
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 )
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)]
@ -3786,12 +3826,13 @@ 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 type ImDrawCornerFlags_ = ::std::os::raw::c_uint;
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;
pub const ImDrawListFlags_AntiAliasedLinesUseTex: ImDrawListFlags_ = 2;
pub const ImDrawListFlags_AntiAliasedFill: ImDrawListFlags_ = 4;
pub const ImDrawListFlags_AllowVtxOffset: ImDrawListFlags_ = 8;
pub type ImDrawListFlags_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
pub struct ImDrawList {
@ -4313,7 +4354,7 @@ impl Default for ImFontConfig {
}
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 )
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)]
@ -4626,9 +4667,10 @@ impl Default for ImFontAtlasCustomRect {
pub const ImFontAtlasFlags_None: ImFontAtlasFlags_ = 0;
pub const ImFontAtlasFlags_NoPowerOfTwoHeight: ImFontAtlasFlags_ = 1;
pub const ImFontAtlasFlags_NoMouseCursors: ImFontAtlasFlags_ = 2;
pub type ImFontAtlasFlags_ = u32;
pub const ImFontAtlasFlags_NoBakedLines: ImFontAtlasFlags_ = 4;
pub type ImFontAtlasFlags_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
#[derive(Copy, Clone)]
pub struct ImFontAtlas {
pub Locked: bool,
pub Flags: ImFontAtlasFlags,
@ -4644,13 +4686,15 @@ pub struct ImFontAtlas {
pub Fonts: ImVector_ImFontPtr,
pub CustomRects: ImVector_ImFontAtlasCustomRect,
pub ConfigData: ImVector_ImFontConfig,
pub CustomRectIds: [::std::os::raw::c_int; 1usize],
pub TexUvLines: [ImVec4; 64usize],
pub PackIdMouseCursors: ::std::os::raw::c_int,
pub PackIdLines: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_ImFontAtlas() {
assert_eq!(
::std::mem::size_of::<ImFontAtlas>(),
120usize,
1144usize,
concat!("Size of: ", stringify!(ImFontAtlas))
);
assert_eq!(
@ -4799,13 +4843,33 @@ fn bindgen_test_layout_ImFontAtlas() {
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).CustomRectIds as *const _ as usize },
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).TexUvLines as *const _ as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(CustomRectIds)
stringify!(TexUvLines)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).PackIdMouseCursors as *const _ as usize },
1136usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(PackIdMouseCursors)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).PackIdLines as *const _ as usize },
1140usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(PackIdLines)
)
);
}
@ -4814,6 +4878,11 @@ impl Default for ImFontAtlas {
unsafe { ::std::mem::zeroed() }
}
}
impl ::std::fmt::Debug for ImFontAtlas {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
write ! (f , "ImFontAtlas {{ Locked: {:?}, Flags: {:?}, TexID: {:?}, TexDesiredWidth: {:?}, TexGlyphPadding: {:?}, TexPixelsAlpha8: {:?}, TexPixelsRGBA32: {:?}, TexWidth: {:?}, TexHeight: {:?}, TexUvScale: {:?}, TexUvWhitePixel: {:?}, Fonts: {:?}, CustomRects: {:?}, ConfigData: {:?}, TexUvLines: [{}], PackIdMouseCursors: {:?}, PackIdLines: {:?} }}" , self . Locked , self . Flags , self . TexID , self . TexDesiredWidth , self . TexGlyphPadding , self . TexPixelsAlpha8 , self . TexPixelsRGBA32 , self . TexWidth , self . TexHeight , self . TexUvScale , self . TexUvWhitePixel , self . Fonts , self . CustomRects , self . ConfigData , self . TexUvLines . iter () . enumerate () . map (| (i , v) | format ! ("{}{:?}" , if i > 0 { ", " } else { "" } , v)) . collect :: < String > () , self . PackIdMouseCursors , self . PackIdLines)
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
pub struct ImFont {
@ -5632,7 +5701,11 @@ extern "C" {
pub fn igSmallButton(label: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn igInvisibleButton(str_id: *const ::std::os::raw::c_char, size: ImVec2) -> bool;
pub fn igInvisibleButton(
str_id: *const ::std::os::raw::c_char,
size: ImVec2,
flags: ImGuiButtonFlags,
) -> bool;
}
extern "C" {
pub fn igArrowButton(str_id: *const ::std::os::raw::c_char, dir: ImGuiDir) -> bool;
@ -5735,7 +5808,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5746,7 +5819,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5757,7 +5830,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5768,7 +5841,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5781,7 +5854,7 @@ extern "C" {
v_max: f32,
format: *const ::std::os::raw::c_char,
format_max: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5792,6 +5865,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5802,6 +5876,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5812,6 +5887,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5822,6 +5898,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5834,6 +5911,7 @@ extern "C" {
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
format_max: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5845,7 +5923,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5858,7 +5936,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5868,7 +5946,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5878,7 +5956,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5888,7 +5966,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5898,7 +5976,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5908,6 +5986,7 @@ extern "C" {
v_degrees_min: f32,
v_degrees_max: f32,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5917,6 +5996,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5926,6 +6006,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5935,6 +6016,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5944,6 +6026,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5954,7 +6037,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5966,7 +6049,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5977,7 +6060,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5988,6 +6071,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -5999,7 +6083,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
extern "C" {
@ -7750,7 +7834,7 @@ extern "C" {
pub fn ImFontAtlas_GetCustomRectByIndex(
self_: *mut ImFontAtlas,
index: ::std::os::raw::c_int,
) -> *const ImFontAtlasCustomRect;
) -> *mut ImFontAtlasCustomRect;
}
extern "C" {
pub fn ImFontAtlas_CalcCustomRectUV(
@ -7848,6 +7932,7 @@ extern "C" {
extern "C" {
pub fn ImFont_AddGlyph(
self_: *mut ImFont,
src_cfg: *mut ImFontConfig,
c: ImWchar,
x0: f32,
y0: f32,

View File

@ -1,4 +1,4 @@
/* automatically generated by rust-bindgen 0.54.1 */
/* automatically generated by rust-bindgen 0.55.1 */
#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
@ -108,6 +108,7 @@ 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 ImGuiButtonFlags = ::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;
@ -118,6 +119,7 @@ pub type ImGuiInputTextFlags = ::std::os::raw::c_int;
pub type ImGuiKeyModFlags = ::std::os::raw::c_int;
pub type ImGuiPopupFlags = ::std::os::raw::c_int;
pub type ImGuiSelectableFlags = ::std::os::raw::c_int;
pub type ImGuiSliderFlags = ::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;
@ -1182,7 +1184,7 @@ 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 type ImGuiWindowFlags_ = ::std::os::raw::c_uint;
pub const ImGuiInputTextFlags_None: ImGuiInputTextFlags_ = 0;
pub const ImGuiInputTextFlags_CharsDecimal: ImGuiInputTextFlags_ = 1;
pub const ImGuiInputTextFlags_CharsHexadecimal: ImGuiInputTextFlags_ = 2;
@ -1205,7 +1207,7 @@ 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 type ImGuiInputTextFlags_ = ::std::os::raw::c_uint;
pub const ImGuiTreeNodeFlags_None: ImGuiTreeNodeFlags_ = 0;
pub const ImGuiTreeNodeFlags_Selected: ImGuiTreeNodeFlags_ = 1;
pub const ImGuiTreeNodeFlags_Framed: ImGuiTreeNodeFlags_ = 2;
@ -1222,7 +1224,7 @@ 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 type ImGuiTreeNodeFlags_ = ::std::os::raw::c_uint;
pub const ImGuiPopupFlags_None: ImGuiPopupFlags_ = 0;
pub const ImGuiPopupFlags_MouseButtonLeft: ImGuiPopupFlags_ = 0;
pub const ImGuiPopupFlags_MouseButtonRight: ImGuiPopupFlags_ = 1;
@ -1234,14 +1236,14 @@ pub const ImGuiPopupFlags_NoOpenOverItems: ImGuiPopupFlags_ = 64;
pub const ImGuiPopupFlags_AnyPopupId: ImGuiPopupFlags_ = 128;
pub const ImGuiPopupFlags_AnyPopupLevel: ImGuiPopupFlags_ = 256;
pub const ImGuiPopupFlags_AnyPopup: ImGuiPopupFlags_ = 384;
pub type ImGuiPopupFlags_ = u32;
pub type ImGuiPopupFlags_ = ::std::os::raw::c_uint;
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 type ImGuiSelectableFlags_ = ::std::os::raw::c_uint;
pub const ImGuiComboFlags_None: ImGuiComboFlags_ = 0;
pub const ImGuiComboFlags_PopupAlignLeft: ImGuiComboFlags_ = 1;
pub const ImGuiComboFlags_HeightSmall: ImGuiComboFlags_ = 2;
@ -1251,7 +1253,7 @@ 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 type ImGuiComboFlags_ = ::std::os::raw::c_uint;
pub const ImGuiTabBarFlags_None: ImGuiTabBarFlags_ = 0;
pub const ImGuiTabBarFlags_Reorderable: ImGuiTabBarFlags_ = 1;
pub const ImGuiTabBarFlags_AutoSelectNewTabs: ImGuiTabBarFlags_ = 2;
@ -1263,20 +1265,20 @@ 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 type ImGuiTabBarFlags_ = ::std::os::raw::c_uint;
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 const ImGuiTabItemFlags_NoTooltip: ImGuiTabItemFlags_ = 16;
pub type ImGuiTabItemFlags_ = u32;
pub type ImGuiTabItemFlags_ = ::std::os::raw::c_uint;
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 type ImGuiFocusedFlags_ = ::std::os::raw::c_uint;
pub const ImGuiHoveredFlags_None: ImGuiHoveredFlags_ = 0;
pub const ImGuiHoveredFlags_ChildWindows: ImGuiHoveredFlags_ = 1;
pub const ImGuiHoveredFlags_RootWindow: ImGuiHoveredFlags_ = 2;
@ -1287,7 +1289,7 @@ 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 type ImGuiHoveredFlags_ = ::std::os::raw::c_uint;
pub const ImGuiDragDropFlags_None: ImGuiDragDropFlags_ = 0;
pub const ImGuiDragDropFlags_SourceNoPreviewTooltip: ImGuiDragDropFlags_ = 1;
pub const ImGuiDragDropFlags_SourceNoDisableHover: ImGuiDragDropFlags_ = 2;
@ -1299,7 +1301,7 @@ 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 type ImGuiDragDropFlags_ = ::std::os::raw::c_uint;
pub const ImGuiDataType_S8: ImGuiDataType_ = 0;
pub const ImGuiDataType_U8: ImGuiDataType_ = 1;
pub const ImGuiDataType_S16: ImGuiDataType_ = 2;
@ -1311,14 +1313,14 @@ 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 type ImGuiDataType_ = ::std::os::raw::c_uint;
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 type ImGuiDir_ = ::std::os::raw::c_int;
pub const ImGuiKey_Tab: ImGuiKey_ = 0;
pub const ImGuiKey_LeftArrow: ImGuiKey_ = 1;
pub const ImGuiKey_RightArrow: ImGuiKey_ = 2;
@ -1342,13 +1344,13 @@ 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 type ImGuiKey_ = ::std::os::raw::c_uint;
pub const ImGuiKeyModFlags_None: ImGuiKeyModFlags_ = 0;
pub const ImGuiKeyModFlags_Ctrl: ImGuiKeyModFlags_ = 1;
pub const ImGuiKeyModFlags_Shift: ImGuiKeyModFlags_ = 2;
pub const ImGuiKeyModFlags_Alt: ImGuiKeyModFlags_ = 4;
pub const ImGuiKeyModFlags_Super: ImGuiKeyModFlags_ = 8;
pub type ImGuiKeyModFlags_ = u32;
pub type ImGuiKeyModFlags_ = ::std::os::raw::c_uint;
pub const ImGuiNavInput_Activate: ImGuiNavInput_ = 0;
pub const ImGuiNavInput_Cancel: ImGuiNavInput_ = 1;
pub const ImGuiNavInput_Input: ImGuiNavInput_ = 2;
@ -1372,7 +1374,7 @@ 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 type ImGuiNavInput_ = ::std::os::raw::c_uint;
pub const ImGuiConfigFlags_None: ImGuiConfigFlags_ = 0;
pub const ImGuiConfigFlags_NavEnableKeyboard: ImGuiConfigFlags_ = 1;
pub const ImGuiConfigFlags_NavEnableGamepad: ImGuiConfigFlags_ = 2;
@ -1382,13 +1384,13 @@ 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 type ImGuiConfigFlags_ = ::std::os::raw::c_uint;
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 type ImGuiBackendFlags_ = ::std::os::raw::c_uint;
pub const ImGuiCol_Text: ImGuiCol_ = 0;
pub const ImGuiCol_TextDisabled: ImGuiCol_ = 1;
pub const ImGuiCol_WindowBg: ImGuiCol_ = 2;
@ -1438,7 +1440,7 @@ 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 type ImGuiCol_ = ::std::os::raw::c_uint;
pub const ImGuiStyleVar_Alpha: ImGuiStyleVar_ = 0;
pub const ImGuiStyleVar_WindowPadding: ImGuiStyleVar_ = 1;
pub const ImGuiStyleVar_WindowRounding: ImGuiStyleVar_ = 2;
@ -1463,7 +1465,14 @@ 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 type ImGuiStyleVar_ = ::std::os::raw::c_uint;
pub const ImGuiButtonFlags_None: ImGuiButtonFlags_ = 0;
pub const ImGuiButtonFlags_MouseButtonLeft: ImGuiButtonFlags_ = 1;
pub const ImGuiButtonFlags_MouseButtonRight: ImGuiButtonFlags_ = 2;
pub const ImGuiButtonFlags_MouseButtonMiddle: ImGuiButtonFlags_ = 4;
pub const ImGuiButtonFlags_MouseButtonMask_: ImGuiButtonFlags_ = 7;
pub const ImGuiButtonFlags_MouseButtonDefault_: ImGuiButtonFlags_ = 1;
pub type ImGuiButtonFlags_ = ::std::os::raw::c_uint;
pub const ImGuiColorEditFlags_None: ImGuiColorEditFlags_ = 0;
pub const ImGuiColorEditFlags_NoAlpha: ImGuiColorEditFlags_ = 2;
pub const ImGuiColorEditFlags_NoPicker: ImGuiColorEditFlags_ = 4;
@ -1493,12 +1502,19 @@ 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 type ImGuiColorEditFlags_ = ::std::os::raw::c_uint;
pub const ImGuiSliderFlags_None: ImGuiSliderFlags_ = 0;
pub const ImGuiSliderFlags_ClampOnInput: ImGuiSliderFlags_ = 16;
pub const ImGuiSliderFlags_Logarithmic: ImGuiSliderFlags_ = 32;
pub const ImGuiSliderFlags_NoRoundToFormat: ImGuiSliderFlags_ = 64;
pub const ImGuiSliderFlags_NoInput: ImGuiSliderFlags_ = 128;
pub const ImGuiSliderFlags_InvalidMask_: ImGuiSliderFlags_ = 1879048207;
pub type ImGuiSliderFlags_ = ::std::os::raw::c_uint;
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 type ImGuiMouseButton_ = ::std::os::raw::c_uint;
pub const ImGuiMouseCursor_None: ImGuiMouseCursor_ = -1;
pub const ImGuiMouseCursor_Arrow: ImGuiMouseCursor_ = 0;
pub const ImGuiMouseCursor_TextInput: ImGuiMouseCursor_ = 1;
@ -1510,13 +1526,13 @@ 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 type ImGuiMouseCursor_ = ::std::os::raw::c_int;
pub const ImGuiCond_None: ImGuiCond_ = 0;
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;
pub type ImGuiCond_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ImGuiStyle {
@ -1543,6 +1559,7 @@ pub struct ImGuiStyle {
pub ScrollbarRounding: f32,
pub GrabMinSize: f32,
pub GrabRounding: f32,
pub LogSliderDeadzone: f32,
pub TabRounding: f32,
pub TabBorderSize: f32,
pub TabMinWidthForUnselectedCloseButton: f32,
@ -1553,6 +1570,7 @@ pub struct ImGuiStyle {
pub DisplaySafeAreaPadding: ImVec2,
pub MouseCursorScale: f32,
pub AntiAliasedLines: bool,
pub AntiAliasedLinesUseTex: bool,
pub AntiAliasedFill: bool,
pub CurveTessellationTol: f32,
pub CircleSegmentMaxError: f32,
@ -1562,7 +1580,7 @@ pub struct ImGuiStyle {
fn bindgen_test_layout_ImGuiStyle() {
assert_eq!(
::std::mem::size_of::<ImGuiStyle>(),
952usize,
956usize,
concat!("Size of: ", stringify!(ImGuiStyle))
);
assert_eq!(
@ -1803,8 +1821,18 @@ fn bindgen_test_layout_ImGuiStyle() {
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabRounding as *const _ as usize },
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).LogSliderDeadzone as *const _ as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
"::",
stringify!(LogSliderDeadzone)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabRounding as *const _ as usize },
124usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1814,7 +1842,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).TabBorderSize as *const _ as usize },
124usize,
128usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1827,7 +1855,7 @@ fn bindgen_test_layout_ImGuiStyle() {
&(*(::std::ptr::null::<ImGuiStyle>())).TabMinWidthForUnselectedCloseButton as *const _
as usize
},
128usize,
132usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1837,7 +1865,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).ColorButtonPosition as *const _ as usize },
132usize,
136usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1847,7 +1875,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).ButtonTextAlign as *const _ as usize },
136usize,
140usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1857,7 +1885,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).SelectableTextAlign as *const _ as usize },
144usize,
148usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1867,7 +1895,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).DisplayWindowPadding as *const _ as usize },
152usize,
156usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1879,7 +1907,7 @@ fn bindgen_test_layout_ImGuiStyle() {
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).DisplaySafeAreaPadding as *const _ as usize
},
160usize,
164usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1889,7 +1917,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).MouseCursorScale as *const _ as usize },
168usize,
172usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1899,7 +1927,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedLines as *const _ as usize },
172usize,
176usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1907,9 +1935,21 @@ fn bindgen_test_layout_ImGuiStyle() {
stringify!(AntiAliasedLines)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedLinesUseTex as *const _ as usize
},
177usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
"::",
stringify!(AntiAliasedLinesUseTex)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).AntiAliasedFill as *const _ as usize },
173usize,
178usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1919,7 +1959,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).CurveTessellationTol as *const _ as usize },
176usize,
180usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1931,7 +1971,7 @@ fn bindgen_test_layout_ImGuiStyle() {
unsafe {
&(*(::std::ptr::null::<ImGuiStyle>())).CircleSegmentMaxError as *const _ as usize
},
180usize,
184usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1941,7 +1981,7 @@ fn bindgen_test_layout_ImGuiStyle() {
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImGuiStyle>())).Colors as *const _ as usize },
184usize,
188usize,
concat!(
"Offset of field: ",
stringify!(ImGuiStyle),
@ -1957,7 +1997,7 @@ impl Default for ImGuiStyle {
}
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: {:?}, TabMinWidthForUnselectedCloseButton: {:?}, 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 . TabMinWidthForUnselectedCloseButton , 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 > ( ) )
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: {:?}, LogSliderDeadzone: {:?}, TabRounding: {:?}, TabBorderSize: {:?}, TabMinWidthForUnselectedCloseButton: {:?}, ColorButtonPosition: {:?}, ButtonTextAlign: {:?}, SelectableTextAlign: {:?}, DisplayWindowPadding: {:?}, DisplaySafeAreaPadding: {:?}, MouseCursorScale: {:?}, AntiAliasedLines: {:?}, AntiAliasedLinesUseTex: {:?}, 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 . LogSliderDeadzone , self . TabRounding , self . TabBorderSize , self . TabMinWidthForUnselectedCloseButton , self . ColorButtonPosition , self . ButtonTextAlign , self . SelectableTextAlign , self . DisplayWindowPadding , self . DisplaySafeAreaPadding , self . MouseCursorScale , self . AntiAliasedLines , self . AntiAliasedLinesUseTex , self . AntiAliasedFill , self . CurveTessellationTol , self . CircleSegmentMaxError , self . Colors . iter () . enumerate () . map (| (i , v) | format ! ("{}{:?}" , if i > 0 { ", " } else { "" } , v)) . collect :: < String > ())
}
}
#[repr(C)]
@ -2888,7 +2928,7 @@ impl Default for ImGuiIO {
}
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: {:?}, KeyMods: {:?}, MousePosPrev: {:?}, MouseClickedPos: {:?}, MouseClickedTime: {:?}, MouseClicked: {:?}, MouseDoubleClicked: {:?}, MouseReleased: {:?}, MouseDownOwned: {:?}, MouseDownWasDoubleClick: {:?}, MouseDownDuration: {:?}, MouseDownDurationPrev: {:?}, MouseDragMaxDistanceAbs: {:?}, MouseDragMaxDistanceSqr: {:?}, KeysDownDuration: [{}], KeysDownDurationPrev: [{}], NavInputsDownDuration: {:?}, NavInputsDownDurationPrev: {:?}, PenPressure: {:?}, InputQueueSurrogate: {:?}, 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 . KeyMods , 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 . PenPressure , self . InputQueueSurrogate , self . InputQueueCharacters )
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: {:?}, KeyMods: {:?}, MousePosPrev: {:?}, MouseClickedPos: {:?}, MouseClickedTime: {:?}, MouseClicked: {:?}, MouseDoubleClicked: {:?}, MouseReleased: {:?}, MouseDownOwned: {:?}, MouseDownWasDoubleClick: {:?}, MouseDownDuration: {:?}, MouseDownDurationPrev: {:?}, MouseDragMaxDistanceAbs: {:?}, MouseDragMaxDistanceSqr: {:?}, KeysDownDuration: [{}], KeysDownDurationPrev: [{}], NavInputsDownDuration: {:?}, NavInputsDownDurationPrev: {:?}, PenPressure: {:?}, InputQueueSurrogate: {:?}, 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 . KeyMods , 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 . PenPressure , self . InputQueueSurrogate , self . InputQueueCharacters)
}
}
#[repr(C)]
@ -3250,7 +3290,7 @@ impl Default for ImGuiPayload {
}
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 )
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)]
@ -3786,12 +3826,13 @@ 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 type ImDrawCornerFlags_ = ::std::os::raw::c_uint;
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;
pub const ImDrawListFlags_AntiAliasedLinesUseTex: ImDrawListFlags_ = 2;
pub const ImDrawListFlags_AntiAliasedFill: ImDrawListFlags_ = 4;
pub const ImDrawListFlags_AllowVtxOffset: ImDrawListFlags_ = 8;
pub type ImDrawListFlags_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
pub struct ImDrawList {
@ -4313,7 +4354,7 @@ impl Default for ImFontConfig {
}
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 )
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)]
@ -4626,9 +4667,10 @@ impl Default for ImFontAtlasCustomRect {
pub const ImFontAtlasFlags_None: ImFontAtlasFlags_ = 0;
pub const ImFontAtlasFlags_NoPowerOfTwoHeight: ImFontAtlasFlags_ = 1;
pub const ImFontAtlasFlags_NoMouseCursors: ImFontAtlasFlags_ = 2;
pub type ImFontAtlasFlags_ = u32;
pub const ImFontAtlasFlags_NoBakedLines: ImFontAtlasFlags_ = 4;
pub type ImFontAtlasFlags_ = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
#[derive(Copy, Clone)]
pub struct ImFontAtlas {
pub Locked: bool,
pub Flags: ImFontAtlasFlags,
@ -4644,13 +4686,15 @@ pub struct ImFontAtlas {
pub Fonts: ImVector_ImFontPtr,
pub CustomRects: ImVector_ImFontAtlasCustomRect,
pub ConfigData: ImVector_ImFontConfig,
pub CustomRectIds: [::std::os::raw::c_int; 1usize],
pub TexUvLines: [ImVec4; 64usize],
pub PackIdMouseCursors: ::std::os::raw::c_int,
pub PackIdLines: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_ImFontAtlas() {
assert_eq!(
::std::mem::size_of::<ImFontAtlas>(),
120usize,
1144usize,
concat!("Size of: ", stringify!(ImFontAtlas))
);
assert_eq!(
@ -4799,13 +4843,33 @@ fn bindgen_test_layout_ImFontAtlas() {
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).CustomRectIds as *const _ as usize },
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).TexUvLines as *const _ as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(CustomRectIds)
stringify!(TexUvLines)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).PackIdMouseCursors as *const _ as usize },
1136usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(PackIdMouseCursors)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ImFontAtlas>())).PackIdLines as *const _ as usize },
1140usize,
concat!(
"Offset of field: ",
stringify!(ImFontAtlas),
"::",
stringify!(PackIdLines)
)
);
}
@ -4814,6 +4878,11 @@ impl Default for ImFontAtlas {
unsafe { ::std::mem::zeroed() }
}
}
impl ::std::fmt::Debug for ImFontAtlas {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
write ! (f , "ImFontAtlas {{ Locked: {:?}, Flags: {:?}, TexID: {:?}, TexDesiredWidth: {:?}, TexGlyphPadding: {:?}, TexPixelsAlpha8: {:?}, TexPixelsRGBA32: {:?}, TexWidth: {:?}, TexHeight: {:?}, TexUvScale: {:?}, TexUvWhitePixel: {:?}, Fonts: {:?}, CustomRects: {:?}, ConfigData: {:?}, TexUvLines: [{}], PackIdMouseCursors: {:?}, PackIdLines: {:?} }}" , self . Locked , self . Flags , self . TexID , self . TexDesiredWidth , self . TexGlyphPadding , self . TexPixelsAlpha8 , self . TexPixelsRGBA32 , self . TexWidth , self . TexHeight , self . TexUvScale , self . TexUvWhitePixel , self . Fonts , self . CustomRects , self . ConfigData , self . TexUvLines . iter () . enumerate () . map (| (i , v) | format ! ("{}{:?}" , if i > 0 { ", " } else { "" } , v)) . collect :: < String > () , self . PackIdMouseCursors , self . PackIdLines)
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq)]
pub struct ImFont {
@ -5770,7 +5839,11 @@ extern "C" {
}
#[link(wasm_import_module = "imgui-sys-v0")]
extern "C" {
pub fn igInvisibleButton(str_id: *const ::std::os::raw::c_char, size: ImVec2) -> bool;
pub fn igInvisibleButton(
str_id: *const ::std::os::raw::c_char,
size: ImVec2,
flags: ImGuiButtonFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
extern "C" {
@ -5888,7 +5961,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5900,7 +5973,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5912,7 +5985,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5924,7 +5997,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5938,7 +6011,7 @@ extern "C" {
v_max: f32,
format: *const ::std::os::raw::c_char,
format_max: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5950,6 +6023,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5961,6 +6035,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5972,6 +6047,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5983,6 +6059,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -5996,6 +6073,7 @@ extern "C" {
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
format_max: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6008,7 +6086,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6022,7 +6100,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6033,7 +6111,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6044,7 +6122,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6055,7 +6133,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6066,7 +6144,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6077,6 +6155,7 @@ extern "C" {
v_degrees_min: f32,
v_degrees_max: f32,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6087,6 +6166,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6097,6 +6177,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6107,6 +6188,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6117,6 +6199,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6128,7 +6211,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6141,7 +6224,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6153,7 +6236,7 @@ extern "C" {
v_min: f32,
v_max: f32,
format: *const ::std::os::raw::c_char,
power: f32,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6165,6 +6248,7 @@ extern "C" {
v_min: ::std::os::raw::c_int,
v_max: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -6177,7 +6261,7 @@ extern "C" {
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,
flags: ImGuiSliderFlags,
) -> bool;
}
#[link(wasm_import_module = "imgui-sys-v0")]
@ -8282,7 +8366,7 @@ extern "C" {
pub fn ImFontAtlas_GetCustomRectByIndex(
self_: *mut ImFontAtlas,
index: ::std::os::raw::c_int,
) -> *const ImFontAtlasCustomRect;
) -> *mut ImFontAtlasCustomRect;
}
#[link(wasm_import_module = "imgui-sys-v0")]
extern "C" {
@ -8397,6 +8481,7 @@ extern "C" {
extern "C" {
pub fn ImFont_AddGlyph(
self_: *mut ImFont,
src_cfg: *mut ImFontConfig,
c: ImWchar,
x0: f32,
y0: f32,

View File

@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.77" from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.78" from Dear ImGui https://github.com/ocornut/imgui
#include "./imgui/imgui.h"
#include "./imgui/imgui_internal.h"
@ -597,9 +597,9 @@ CIMGUI_API bool igSmallButton(const char* label)
{
return ImGui::SmallButton(label);
}
CIMGUI_API bool igInvisibleButton(const char* str_id,const ImVec2 size)
CIMGUI_API bool igInvisibleButton(const char* str_id,const ImVec2 size,ImGuiButtonFlags flags)
{
return ImGui::InvisibleButton(str_id,size);
return ImGui::InvisibleButton(str_id,size,flags);
}
CIMGUI_API bool igArrowButton(const char* str_id,ImGuiDir dir)
{
@ -657,109 +657,109 @@ CIMGUI_API bool igComboFnBoolPtr(const char* label,int* current_item,bool(*items
{
return ImGui::Combo(label,current_item,items_getter,data,items_count,popup_max_height_in_items);
}
CIMGUI_API bool igDragFloat(const char* label,float* v,float v_speed,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igDragFloat(const char* label,float* v,float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragFloat(label,v,v_speed,v_min,v_max,format,power);
return ImGui::DragFloat(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragFloat2(const char* label,float v[2],float v_speed,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igDragFloat2(const char* label,float v[2],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragFloat2(label,v,v_speed,v_min,v_max,format,power);
return ImGui::DragFloat2(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragFloat3(const char* label,float v[3],float v_speed,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igDragFloat3(const char* label,float v[3],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragFloat3(label,v,v_speed,v_min,v_max,format,power);
return ImGui::DragFloat3(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragFloat4(const char* label,float v[4],float v_speed,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igDragFloat4(const char* label,float v[4],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragFloat4(label,v,v_speed,v_min,v_max,format,power);
return ImGui::DragFloat4(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragFloatRange2(const char* label,float* v_current_min,float* v_current_max,float v_speed,float v_min,float v_max,const char* format,const char* format_max,float power)
CIMGUI_API bool igDragFloatRange2(const char* label,float* v_current_min,float* v_current_max,float v_speed,float v_min,float v_max,const char* format,const char* format_max,ImGuiSliderFlags flags)
{
return ImGui::DragFloatRange2(label,v_current_min,v_current_max,v_speed,v_min,v_max,format,format_max,power);
return ImGui::DragFloatRange2(label,v_current_min,v_current_max,v_speed,v_min,v_max,format,format_max,flags);
}
CIMGUI_API bool igDragInt(const char* label,int* v,float v_speed,int v_min,int v_max,const char* format)
CIMGUI_API bool igDragInt(const char* label,int* v,float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragInt(label,v,v_speed,v_min,v_max,format);
return ImGui::DragInt(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragInt2(const char* label,int v[2],float v_speed,int v_min,int v_max,const char* format)
CIMGUI_API bool igDragInt2(const char* label,int v[2],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragInt2(label,v,v_speed,v_min,v_max,format);
return ImGui::DragInt2(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragInt3(const char* label,int v[3],float v_speed,int v_min,int v_max,const char* format)
CIMGUI_API bool igDragInt3(const char* label,int v[3],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragInt3(label,v,v_speed,v_min,v_max,format);
return ImGui::DragInt3(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragInt4(const char* label,int v[4],float v_speed,int v_min,int v_max,const char* format)
CIMGUI_API bool igDragInt4(const char* label,int v[4],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragInt4(label,v,v_speed,v_min,v_max,format);
return ImGui::DragInt4(label,v,v_speed,v_min,v_max,format,flags);
}
CIMGUI_API bool igDragIntRange2(const char* label,int* v_current_min,int* v_current_max,float v_speed,int v_min,int v_max,const char* format,const char* format_max)
CIMGUI_API bool igDragIntRange2(const char* label,int* v_current_min,int* v_current_max,float v_speed,int v_min,int v_max,const char* format,const char* format_max,ImGuiSliderFlags flags)
{
return ImGui::DragIntRange2(label,v_current_min,v_current_max,v_speed,v_min,v_max,format,format_max);
return ImGui::DragIntRange2(label,v_current_min,v_current_max,v_speed,v_min,v_max,format,format_max,flags);
}
CIMGUI_API bool igDragScalar(const char* label,ImGuiDataType data_type,void* p_data,float v_speed,const void* p_min,const void* p_max,const char* format,float power)
CIMGUI_API bool igDragScalar(const char* label,ImGuiDataType data_type,void* p_data,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragScalar(label,data_type,p_data,v_speed,p_min,p_max,format,power);
return ImGui::DragScalar(label,data_type,p_data,v_speed,p_min,p_max,format,flags);
}
CIMGUI_API bool igDragScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,float v_speed,const void* p_min,const void* p_max,const char* format,float power)
CIMGUI_API bool igDragScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::DragScalarN(label,data_type,p_data,components,v_speed,p_min,p_max,format,power);
return ImGui::DragScalarN(label,data_type,p_data,components,v_speed,p_min,p_max,format,flags);
}
CIMGUI_API bool igSliderFloat(const char* label,float* v,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igSliderFloat(const char* label,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderFloat(label,v,v_min,v_max,format,power);
return ImGui::SliderFloat(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderFloat2(const char* label,float v[2],float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igSliderFloat2(const char* label,float v[2],float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderFloat2(label,v,v_min,v_max,format,power);
return ImGui::SliderFloat2(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderFloat3(const char* label,float v[3],float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igSliderFloat3(const char* label,float v[3],float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderFloat3(label,v,v_min,v_max,format,power);
return ImGui::SliderFloat3(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderFloat4(const char* label,float v[4],float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igSliderFloat4(const char* label,float v[4],float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderFloat4(label,v,v_min,v_max,format,power);
return ImGui::SliderFloat4(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderAngle(const char* label,float* v_rad,float v_degrees_min,float v_degrees_max,const char* format)
CIMGUI_API bool igSliderAngle(const char* label,float* v_rad,float v_degrees_min,float v_degrees_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderAngle(label,v_rad,v_degrees_min,v_degrees_max,format);
return ImGui::SliderAngle(label,v_rad,v_degrees_min,v_degrees_max,format,flags);
}
CIMGUI_API bool igSliderInt(const char* label,int* v,int v_min,int v_max,const char* format)
CIMGUI_API bool igSliderInt(const char* label,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderInt(label,v,v_min,v_max,format);
return ImGui::SliderInt(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderInt2(const char* label,int v[2],int v_min,int v_max,const char* format)
CIMGUI_API bool igSliderInt2(const char* label,int v[2],int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderInt2(label,v,v_min,v_max,format);
return ImGui::SliderInt2(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderInt3(const char* label,int v[3],int v_min,int v_max,const char* format)
CIMGUI_API bool igSliderInt3(const char* label,int v[3],int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderInt3(label,v,v_min,v_max,format);
return ImGui::SliderInt3(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderInt4(const char* label,int v[4],int v_min,int v_max,const char* format)
CIMGUI_API bool igSliderInt4(const char* label,int v[4],int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderInt4(label,v,v_min,v_max,format);
return ImGui::SliderInt4(label,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igSliderScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,float power)
CIMGUI_API bool igSliderScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderScalar(label,data_type,p_data,p_min,p_max,format,power);
return ImGui::SliderScalar(label,data_type,p_data,p_min,p_max,format,flags);
}
CIMGUI_API bool igSliderScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_min,const void* p_max,const char* format,float power)
CIMGUI_API bool igSliderScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::SliderScalarN(label,data_type,p_data,components,p_min,p_max,format,power);
return ImGui::SliderScalarN(label,data_type,p_data,components,p_min,p_max,format,flags);
}
CIMGUI_API bool igVSliderFloat(const char* label,const ImVec2 size,float* v,float v_min,float v_max,const char* format,float power)
CIMGUI_API bool igVSliderFloat(const char* label,const ImVec2 size,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::VSliderFloat(label,size,v,v_min,v_max,format,power);
return ImGui::VSliderFloat(label,size,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igVSliderInt(const char* label,const ImVec2 size,int* v,int v_min,int v_max,const char* format)
CIMGUI_API bool igVSliderInt(const char* label,const ImVec2 size,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::VSliderInt(label,size,v,v_min,v_max,format);
return ImGui::VSliderInt(label,size,v,v_min,v_max,format,flags);
}
CIMGUI_API bool igVSliderScalar(const char* label,const ImVec2 size,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,float power)
CIMGUI_API bool igVSliderScalar(const char* label,const ImVec2 size,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags)
{
return ImGui::VSliderScalar(label,size,data_type,p_data,p_min,p_max,format,power);
return ImGui::VSliderScalar(label,size,data_type,p_data,p_min,p_max,format,flags);
}
CIMGUI_API bool igInputText(const char* label,char* buf,size_t buf_size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data)
{
@ -2216,7 +2216,7 @@ CIMGUI_API int ImFontAtlas_AddCustomRectFontGlyph(ImFontAtlas* self,ImFont* font
{
return self->AddCustomRectFontGlyph(font,id,width,height,advance_x,offset);
}
CIMGUI_API const ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index)
CIMGUI_API ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index)
{
return self->GetCustomRectByIndex(index);
}
@ -2284,9 +2284,9 @@ CIMGUI_API void ImFont_GrowIndex(ImFont* self,int new_size)
{
return self->GrowIndex(new_size);
}
CIMGUI_API void ImFont_AddGlyph(ImFont* self,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x)
CIMGUI_API void ImFont_AddGlyph(ImFont* self,ImFontConfig* src_cfg,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x)
{
return self->AddGlyph(c,x0,y0,x1,y1,u0,v0,u1,v1,advance_x);
return self->AddGlyph(src_cfg,c,x0,y0,x1,y1,u0,v0,u1,v1,advance_x);
}
CIMGUI_API void ImFont_AddRemapChar(ImFont* self,ImWchar dst,ImWchar src,bool overwrite_dst)
{

View File

@ -1,5 +1,5 @@
//This file is automatically generated by generator.lua from https://github.com/cimgui/cimgui
//based on imgui.h file version "1.77" from Dear ImGui https://github.com/ocornut/imgui
//based on imgui.h file version "1.78" from Dear ImGui https://github.com/ocornut/imgui
#ifndef CIMGUI_INCLUDED
#define CIMGUI_INCLUDED
#include <stdio.h>
@ -107,6 +107,7 @@ typedef int ImDrawCornerFlags;
typedef int ImDrawListFlags;
typedef int ImFontAtlasFlags;
typedef int ImGuiBackendFlags;
typedef int ImGuiButtonFlags;
typedef int ImGuiColorEditFlags;
typedef int ImGuiConfigFlags;
typedef int ImGuiComboFlags;
@ -117,13 +118,14 @@ typedef int ImGuiInputTextFlags;
typedef int ImGuiKeyModFlags;
typedef int ImGuiPopupFlags;
typedef int ImGuiSelectableFlags;
typedef int ImGuiSliderFlags;
typedef int ImGuiTabBarFlags;
typedef int ImGuiTabItemFlags;
typedef int ImGuiTreeNodeFlags;
typedef int ImGuiWindowFlags;
typedef void* ImTextureID;
typedef unsigned int ImGuiID;
typedef int (*ImGuiInputTextCallback)(ImGuiInputTextCallbackData *data);
typedef int (*ImGuiInputTextCallback)(ImGuiInputTextCallbackData* data);
typedef void (*ImGuiSizeCallback)(ImGuiSizeCallbackData* data);
typedef unsigned short ImWchar16;
typedef unsigned int ImWchar32;
@ -497,6 +499,14 @@ typedef enum {
ImGuiStyleVar_SelectableTextAlign,
ImGuiStyleVar_COUNT
}ImGuiStyleVar_;
typedef enum {
ImGuiButtonFlags_None = 0,
ImGuiButtonFlags_MouseButtonLeft = 1 << 0,
ImGuiButtonFlags_MouseButtonRight = 1 << 1,
ImGuiButtonFlags_MouseButtonMiddle = 1 << 2,
ImGuiButtonFlags_MouseButtonMask_ = ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle,
ImGuiButtonFlags_MouseButtonDefault_ = ImGuiButtonFlags_MouseButtonLeft
}ImGuiButtonFlags_;
typedef enum {
ImGuiColorEditFlags_None = 0,
ImGuiColorEditFlags_NoAlpha = 1 << 1,
@ -522,12 +532,20 @@ typedef enum {
ImGuiColorEditFlags_PickerHueWheel = 1 << 26,
ImGuiColorEditFlags_InputRGB = 1 << 27,
ImGuiColorEditFlags_InputHSV = 1 << 28,
ImGuiColorEditFlags__OptionsDefault = ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_PickerHueBar,
ImGuiColorEditFlags__DisplayMask = ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_DisplayHSV|ImGuiColorEditFlags_DisplayHex,
ImGuiColorEditFlags__DataTypeMask = ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_Float,
ImGuiColorEditFlags__PickerMask = ImGuiColorEditFlags_PickerHueWheel|ImGuiColorEditFlags_PickerHueBar,
ImGuiColorEditFlags__InputMask = ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_InputHSV
ImGuiColorEditFlags__OptionsDefault = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar,
ImGuiColorEditFlags__DisplayMask = ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex,
ImGuiColorEditFlags__DataTypeMask = ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float,
ImGuiColorEditFlags__PickerMask = ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar,
ImGuiColorEditFlags__InputMask = ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV
}ImGuiColorEditFlags_;
typedef enum {
ImGuiSliderFlags_None = 0,
ImGuiSliderFlags_ClampOnInput = 1 << 4,
ImGuiSliderFlags_Logarithmic = 1 << 5,
ImGuiSliderFlags_NoRoundToFormat = 1 << 6,
ImGuiSliderFlags_NoInput = 1 << 7,
ImGuiSliderFlags_InvalidMask_ = 0x7000000F
}ImGuiSliderFlags_;
typedef enum {
ImGuiMouseButton_Left = 0,
ImGuiMouseButton_Right = 1,
@ -579,6 +597,7 @@ struct ImGuiStyle
float ScrollbarRounding;
float GrabMinSize;
float GrabRounding;
float LogSliderDeadzone;
float TabRounding;
float TabBorderSize;
float TabMinWidthForUnselectedCloseButton;
@ -589,6 +608,7 @@ struct ImGuiStyle
ImVec2 DisplaySafeAreaPadding;
float MouseCursorScale;
bool AntiAliasedLines;
bool AntiAliasedLinesUseTex;
bool AntiAliasedFill;
float CurveTessellationTol;
float CircleSegmentMaxError;
@ -706,7 +726,7 @@ struct ImGuiPayload
ImGuiID SourceId;
ImGuiID SourceParentId;
int DataFrameCount;
char DataType[32+1];
char DataType[32 + 1];
bool Preview;
bool Delivery;
};
@ -782,8 +802,9 @@ typedef enum {
typedef enum {
ImDrawListFlags_None = 0,
ImDrawListFlags_AntiAliasedLines = 1 << 0,
ImDrawListFlags_AntiAliasedFill = 1 << 1,
ImDrawListFlags_AllowVtxOffset = 1 << 2
ImDrawListFlags_AntiAliasedLinesUseTex = 1 << 1,
ImDrawListFlags_AntiAliasedFill = 1 << 2,
ImDrawListFlags_AllowVtxOffset = 1 << 3
}ImDrawListFlags_;
struct ImDrawList
{
@ -859,7 +880,8 @@ struct ImFontAtlasCustomRect
typedef enum {
ImFontAtlasFlags_None = 0,
ImFontAtlasFlags_NoPowerOfTwoHeight = 1 << 0,
ImFontAtlasFlags_NoMouseCursors = 1 << 1
ImFontAtlasFlags_NoMouseCursors = 1 << 1,
ImFontAtlasFlags_NoBakedLines = 1 << 2
}ImFontAtlasFlags_;
struct ImFontAtlas
{
@ -877,7 +899,9 @@ struct ImFontAtlas
ImVector_ImFontPtr Fonts;
ImVector_ImFontAtlasCustomRect CustomRects;
ImVector_ImFontConfig ConfigData;
int CustomRectIds[1];
ImVec4 TexUvLines[(63) + 1];
int PackIdMouseCursors;
int PackIdLines;
};
struct ImFont
{
@ -1079,7 +1103,7 @@ CIMGUI_API void igBulletText(const char* fmt,...);
CIMGUI_API void igBulletTextV(const char* fmt,va_list args);
CIMGUI_API bool igButton(const char* label,const ImVec2 size);
CIMGUI_API bool igSmallButton(const char* label);
CIMGUI_API bool igInvisibleButton(const char* str_id,const ImVec2 size);
CIMGUI_API bool igInvisibleButton(const char* str_id,const ImVec2 size,ImGuiButtonFlags flags);
CIMGUI_API bool igArrowButton(const char* str_id,ImGuiDir dir);
CIMGUI_API void igImage(ImTextureID user_texture_id,const ImVec2 size,const ImVec2 uv0,const ImVec2 uv1,const ImVec4 tint_col,const ImVec4 border_col);
CIMGUI_API bool igImageButton(ImTextureID user_texture_id,const ImVec2 size,const ImVec2 uv0,const ImVec2 uv1,int frame_padding,const ImVec4 bg_col,const ImVec4 tint_col);
@ -1094,32 +1118,32 @@ CIMGUI_API void igEndCombo(void);
CIMGUI_API bool igComboStr_arr(const char* label,int* current_item,const char* const items[],int items_count,int popup_max_height_in_items);
CIMGUI_API bool igComboStr(const char* label,int* current_item,const char* items_separated_by_zeros,int popup_max_height_in_items);
CIMGUI_API bool igComboFnBoolPtr(const char* label,int* current_item,bool(*items_getter)(void* data,int idx,const char** out_text),void* data,int items_count,int popup_max_height_in_items);
CIMGUI_API bool igDragFloat(const char* label,float* v,float v_speed,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igDragFloat2(const char* label,float v[2],float v_speed,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igDragFloat3(const char* label,float v[3],float v_speed,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igDragFloat4(const char* label,float v[4],float v_speed,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igDragFloatRange2(const char* label,float* v_current_min,float* v_current_max,float v_speed,float v_min,float v_max,const char* format,const char* format_max,float power);
CIMGUI_API bool igDragInt(const char* label,int* v,float v_speed,int v_min,int v_max,const char* format);
CIMGUI_API bool igDragInt2(const char* label,int v[2],float v_speed,int v_min,int v_max,const char* format);
CIMGUI_API bool igDragInt3(const char* label,int v[3],float v_speed,int v_min,int v_max,const char* format);
CIMGUI_API bool igDragInt4(const char* label,int v[4],float v_speed,int v_min,int v_max,const char* format);
CIMGUI_API bool igDragIntRange2(const char* label,int* v_current_min,int* v_current_max,float v_speed,int v_min,int v_max,const char* format,const char* format_max);
CIMGUI_API bool igDragScalar(const char* label,ImGuiDataType data_type,void* p_data,float v_speed,const void* p_min,const void* p_max,const char* format,float power);
CIMGUI_API bool igDragScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,float v_speed,const void* p_min,const void* p_max,const char* format,float power);
CIMGUI_API bool igSliderFloat(const char* label,float* v,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igSliderFloat2(const char* label,float v[2],float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igSliderFloat3(const char* label,float v[3],float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igSliderFloat4(const char* label,float v[4],float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igSliderAngle(const char* label,float* v_rad,float v_degrees_min,float v_degrees_max,const char* format);
CIMGUI_API bool igSliderInt(const char* label,int* v,int v_min,int v_max,const char* format);
CIMGUI_API bool igSliderInt2(const char* label,int v[2],int v_min,int v_max,const char* format);
CIMGUI_API bool igSliderInt3(const char* label,int v[3],int v_min,int v_max,const char* format);
CIMGUI_API bool igSliderInt4(const char* label,int v[4],int v_min,int v_max,const char* format);
CIMGUI_API bool igSliderScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,float power);
CIMGUI_API bool igSliderScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_min,const void* p_max,const char* format,float power);
CIMGUI_API bool igVSliderFloat(const char* label,const ImVec2 size,float* v,float v_min,float v_max,const char* format,float power);
CIMGUI_API bool igVSliderInt(const char* label,const ImVec2 size,int* v,int v_min,int v_max,const char* format);
CIMGUI_API bool igVSliderScalar(const char* label,const ImVec2 size,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,float power);
CIMGUI_API bool igDragFloat(const char* label,float* v,float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragFloat2(const char* label,float v[2],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragFloat3(const char* label,float v[3],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragFloat4(const char* label,float v[4],float v_speed,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragFloatRange2(const char* label,float* v_current_min,float* v_current_max,float v_speed,float v_min,float v_max,const char* format,const char* format_max,ImGuiSliderFlags flags);
CIMGUI_API bool igDragInt(const char* label,int* v,float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragInt2(const char* label,int v[2],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragInt3(const char* label,int v[3],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragInt4(const char* label,int v[4],float v_speed,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragIntRange2(const char* label,int* v_current_min,int* v_current_max,float v_speed,int v_min,int v_max,const char* format,const char* format_max,ImGuiSliderFlags flags);
CIMGUI_API bool igDragScalar(const char* label,ImGuiDataType data_type,void* p_data,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igDragScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,float v_speed,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderFloat(const char* label,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderFloat2(const char* label,float v[2],float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderFloat3(const char* label,float v[3],float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderFloat4(const char* label,float v[4],float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderAngle(const char* label,float* v_rad,float v_degrees_min,float v_degrees_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderInt(const char* label,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderInt2(const char* label,int v[2],int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderInt3(const char* label,int v[3],int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderInt4(const char* label,int v[4],int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderScalar(const char* label,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igSliderScalarN(const char* label,ImGuiDataType data_type,void* p_data,int components,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igVSliderFloat(const char* label,const ImVec2 size,float* v,float v_min,float v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igVSliderInt(const char* label,const ImVec2 size,int* v,int v_min,int v_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igVSliderScalar(const char* label,const ImVec2 size,ImGuiDataType data_type,void* p_data,const void* p_min,const void* p_max,const char* format,ImGuiSliderFlags flags);
CIMGUI_API bool igInputText(const char* label,char* buf,size_t buf_size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data);
CIMGUI_API bool igInputTextMultiline(const char* label,char* buf,size_t buf_size,const ImVec2 size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data);
CIMGUI_API bool igInputTextWithHint(const char* label,const char* hint,char* buf,size_t buf_size,ImGuiInputTextFlags flags,ImGuiInputTextCallback callback,void* user_data);
@ -1479,7 +1503,7 @@ CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesThai(ImFontAtlas* self);
CIMGUI_API const ImWchar* ImFontAtlas_GetGlyphRangesVietnamese(ImFontAtlas* self);
CIMGUI_API int ImFontAtlas_AddCustomRectRegular(ImFontAtlas* self,int width,int height);
CIMGUI_API int ImFontAtlas_AddCustomRectFontGlyph(ImFontAtlas* self,ImFont* font,ImWchar id,int width,int height,float advance_x,const ImVec2 offset);
CIMGUI_API const ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index);
CIMGUI_API ImFontAtlasCustomRect* ImFontAtlas_GetCustomRectByIndex(ImFontAtlas* self,int index);
CIMGUI_API void ImFontAtlas_CalcCustomRectUV(ImFontAtlas* self,const ImFontAtlasCustomRect* rect,ImVec2* out_uv_min,ImVec2* out_uv_max);
CIMGUI_API bool ImFontAtlas_GetMouseCursorTexData(ImFontAtlas* self,ImGuiMouseCursor cursor,ImVec2* out_offset,ImVec2* out_size,ImVec2 out_uv_border[2],ImVec2 out_uv_fill[2]);
CIMGUI_API ImFont* ImFont_ImFont(void);
@ -1496,7 +1520,7 @@ CIMGUI_API void ImFont_RenderText(ImFont* self,ImDrawList* draw_list,float size,
CIMGUI_API void ImFont_BuildLookupTable(ImFont* self);
CIMGUI_API void ImFont_ClearOutputData(ImFont* self);
CIMGUI_API void ImFont_GrowIndex(ImFont* self,int new_size);
CIMGUI_API void ImFont_AddGlyph(ImFont* self,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x);
CIMGUI_API void ImFont_AddGlyph(ImFont* self,ImFontConfig* src_cfg,ImWchar c,float x0,float y0,float x1,float y1,float u0,float v0,float u1,float v1,float advance_x);
CIMGUI_API void ImFont_AddRemapChar(ImFont* self,ImWchar dst,ImWchar src,bool overwrite_dst);
CIMGUI_API void ImFont_SetGlyphVisible(ImFont* self,ImWchar c,bool visible);
CIMGUI_API void ImFont_SetFallbackChar(ImFont* self,ImWchar c);

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1 +1 @@
Subproject commit 9418dcb69355558f70de260483424412c5ca2fce
Subproject commit 95c99aaa4be611716093edcb6b01146ab9483f30

View File

@ -65,13 +65,18 @@
},
{
"calc_value": 2,
"name": "ImDrawListFlags_AntiAliasedFill",
"name": "ImDrawListFlags_AntiAliasedLinesUseTex",
"value": "1 << 1"
},
{
"calc_value": 4,
"name": "ImDrawListFlags_AllowVtxOffset",
"name": "ImDrawListFlags_AntiAliasedFill",
"value": "1 << 2"
},
{
"calc_value": 8,
"name": "ImDrawListFlags_AllowVtxOffset",
"value": "1 << 3"
}
],
"ImFontAtlasFlags_": [
@ -89,6 +94,11 @@
"calc_value": 2,
"name": "ImFontAtlasFlags_NoMouseCursors",
"value": "1 << 1"
},
{
"calc_value": 4,
"name": "ImFontAtlasFlags_NoBakedLines",
"value": "1 << 2"
}
],
"ImGuiBackendFlags_": [
@ -118,6 +128,38 @@
"value": "1 << 3"
}
],
"ImGuiButtonFlags_": [
{
"calc_value": 0,
"name": "ImGuiButtonFlags_None",
"value": "0"
},
{
"calc_value": 1,
"name": "ImGuiButtonFlags_MouseButtonLeft",
"value": "1 << 0"
},
{
"calc_value": 2,
"name": "ImGuiButtonFlags_MouseButtonRight",
"value": "1 << 1"
},
{
"calc_value": 4,
"name": "ImGuiButtonFlags_MouseButtonMiddle",
"value": "1 << 2"
},
{
"calc_value": 7,
"name": "ImGuiButtonFlags_MouseButtonMask_",
"value": "ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle"
},
{
"calc_value": 1,
"name": "ImGuiButtonFlags_MouseButtonDefault_",
"value": "ImGuiButtonFlags_MouseButtonLeft"
}
],
"ImGuiCol_": [
{
"calc_value": 0,
@ -489,27 +531,27 @@
{
"calc_value": 177209344,
"name": "ImGuiColorEditFlags__OptionsDefault",
"value": "ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_PickerHueBar"
"value": "ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar"
},
{
"calc_value": 7340032,
"name": "ImGuiColorEditFlags__DisplayMask",
"value": "ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_DisplayHSV|ImGuiColorEditFlags_DisplayHex"
"value": "ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex"
},
{
"calc_value": 25165824,
"name": "ImGuiColorEditFlags__DataTypeMask",
"value": "ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_Float"
"value": "ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float"
},
{
"calc_value": 100663296,
"name": "ImGuiColorEditFlags__PickerMask",
"value": "ImGuiColorEditFlags_PickerHueWheel|ImGuiColorEditFlags_PickerHueBar"
"value": "ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar"
},
{
"calc_value": 402653184,
"name": "ImGuiColorEditFlags__InputMask",
"value": "ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_InputHSV"
"value": "ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV"
}
],
"ImGuiComboFlags_": [
@ -1399,6 +1441,38 @@
"value": "1 << 4"
}
],
"ImGuiSliderFlags_": [
{
"calc_value": 0,
"name": "ImGuiSliderFlags_None",
"value": "0"
},
{
"calc_value": 16,
"name": "ImGuiSliderFlags_ClampOnInput",
"value": "1 << 4"
},
{
"calc_value": 32,
"name": "ImGuiSliderFlags_Logarithmic",
"value": "1 << 5"
},
{
"calc_value": 64,
"name": "ImGuiSliderFlags_NoRoundToFormat",
"value": "1 << 6"
},
{
"calc_value": 128,
"name": "ImGuiSliderFlags_NoInput",
"value": "1 << 7"
},
{
"calc_value": 1879048207,
"name": "ImGuiSliderFlags_InvalidMask_",
"value": "0x7000000F"
}
],
"ImGuiStyleVar_": [
{
"calc_value": 0,
@ -1863,6 +1937,7 @@
"ImFontGlyph": "imgui",
"ImFontGlyphRangesBuilder": "imgui",
"ImGuiBackendFlags_": "imgui",
"ImGuiButtonFlags_": "imgui",
"ImGuiCol_": "imgui",
"ImGuiColorEditFlags_": "imgui",
"ImGuiComboFlags_": "imgui",
@ -1887,6 +1962,7 @@
"ImGuiPopupFlags_": "imgui",
"ImGuiSelectableFlags_": "imgui",
"ImGuiSizeCallbackData": "imgui",
"ImGuiSliderFlags_": "imgui",
"ImGuiStorage": "imgui",
"ImGuiStoragePair": "imgui",
"ImGuiStyle": "imgui",
@ -2216,8 +2292,16 @@
"type": "ImVector_ImFontConfig"
},
{
"name": "CustomRectIds[1]",
"size": 1,
"name": "TexUvLines[(63)+1]",
"size": 64,
"type": "ImVec4"
},
{
"name": "PackIdMouseCursors",
"type": "int"
},
{
"name": "PackIdLines",
"type": "int"
}
],
@ -2976,6 +3060,10 @@
"name": "GrabRounding",
"type": "float"
},
{
"name": "LogSliderDeadzone",
"type": "float"
},
{
"name": "TabRounding",
"type": "float"
@ -3016,6 +3104,10 @@
"name": "AntiAliasedLines",
"type": "bool"
},
{
"name": "AntiAliasedLinesUseTex",
"type": "bool"
},
{
"name": "AntiAliasedFill",
"type": "bool"

View File

@ -52,12 +52,16 @@ defs["enums"]["ImDrawListFlags_"][2]["name"] = "ImDrawListFlags_AntiAliasedLines
defs["enums"]["ImDrawListFlags_"][2]["value"] = "1 << 0"
defs["enums"]["ImDrawListFlags_"][3] = {}
defs["enums"]["ImDrawListFlags_"][3]["calc_value"] = 2
defs["enums"]["ImDrawListFlags_"][3]["name"] = "ImDrawListFlags_AntiAliasedFill"
defs["enums"]["ImDrawListFlags_"][3]["name"] = "ImDrawListFlags_AntiAliasedLinesUseTex"
defs["enums"]["ImDrawListFlags_"][3]["value"] = "1 << 1"
defs["enums"]["ImDrawListFlags_"][4] = {}
defs["enums"]["ImDrawListFlags_"][4]["calc_value"] = 4
defs["enums"]["ImDrawListFlags_"][4]["name"] = "ImDrawListFlags_AllowVtxOffset"
defs["enums"]["ImDrawListFlags_"][4]["name"] = "ImDrawListFlags_AntiAliasedFill"
defs["enums"]["ImDrawListFlags_"][4]["value"] = "1 << 2"
defs["enums"]["ImDrawListFlags_"][5] = {}
defs["enums"]["ImDrawListFlags_"][5]["calc_value"] = 8
defs["enums"]["ImDrawListFlags_"][5]["name"] = "ImDrawListFlags_AllowVtxOffset"
defs["enums"]["ImDrawListFlags_"][5]["value"] = "1 << 3"
defs["enums"]["ImFontAtlasFlags_"] = {}
defs["enums"]["ImFontAtlasFlags_"][1] = {}
defs["enums"]["ImFontAtlasFlags_"][1]["calc_value"] = 0
@ -71,6 +75,10 @@ defs["enums"]["ImFontAtlasFlags_"][3] = {}
defs["enums"]["ImFontAtlasFlags_"][3]["calc_value"] = 2
defs["enums"]["ImFontAtlasFlags_"][3]["name"] = "ImFontAtlasFlags_NoMouseCursors"
defs["enums"]["ImFontAtlasFlags_"][3]["value"] = "1 << 1"
defs["enums"]["ImFontAtlasFlags_"][4] = {}
defs["enums"]["ImFontAtlasFlags_"][4]["calc_value"] = 4
defs["enums"]["ImFontAtlasFlags_"][4]["name"] = "ImFontAtlasFlags_NoBakedLines"
defs["enums"]["ImFontAtlasFlags_"][4]["value"] = "1 << 2"
defs["enums"]["ImGuiBackendFlags_"] = {}
defs["enums"]["ImGuiBackendFlags_"][1] = {}
defs["enums"]["ImGuiBackendFlags_"][1]["calc_value"] = 0
@ -92,6 +100,31 @@ defs["enums"]["ImGuiBackendFlags_"][5] = {}
defs["enums"]["ImGuiBackendFlags_"][5]["calc_value"] = 8
defs["enums"]["ImGuiBackendFlags_"][5]["name"] = "ImGuiBackendFlags_RendererHasVtxOffset"
defs["enums"]["ImGuiBackendFlags_"][5]["value"] = "1 << 3"
defs["enums"]["ImGuiButtonFlags_"] = {}
defs["enums"]["ImGuiButtonFlags_"][1] = {}
defs["enums"]["ImGuiButtonFlags_"][1]["calc_value"] = 0
defs["enums"]["ImGuiButtonFlags_"][1]["name"] = "ImGuiButtonFlags_None"
defs["enums"]["ImGuiButtonFlags_"][1]["value"] = "0"
defs["enums"]["ImGuiButtonFlags_"][2] = {}
defs["enums"]["ImGuiButtonFlags_"][2]["calc_value"] = 1
defs["enums"]["ImGuiButtonFlags_"][2]["name"] = "ImGuiButtonFlags_MouseButtonLeft"
defs["enums"]["ImGuiButtonFlags_"][2]["value"] = "1 << 0"
defs["enums"]["ImGuiButtonFlags_"][3] = {}
defs["enums"]["ImGuiButtonFlags_"][3]["calc_value"] = 2
defs["enums"]["ImGuiButtonFlags_"][3]["name"] = "ImGuiButtonFlags_MouseButtonRight"
defs["enums"]["ImGuiButtonFlags_"][3]["value"] = "1 << 1"
defs["enums"]["ImGuiButtonFlags_"][4] = {}
defs["enums"]["ImGuiButtonFlags_"][4]["calc_value"] = 4
defs["enums"]["ImGuiButtonFlags_"][4]["name"] = "ImGuiButtonFlags_MouseButtonMiddle"
defs["enums"]["ImGuiButtonFlags_"][4]["value"] = "1 << 2"
defs["enums"]["ImGuiButtonFlags_"][5] = {}
defs["enums"]["ImGuiButtonFlags_"][5]["calc_value"] = 7
defs["enums"]["ImGuiButtonFlags_"][5]["name"] = "ImGuiButtonFlags_MouseButtonMask_"
defs["enums"]["ImGuiButtonFlags_"][5]["value"] = "ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle"
defs["enums"]["ImGuiButtonFlags_"][6] = {}
defs["enums"]["ImGuiButtonFlags_"][6]["calc_value"] = 1
defs["enums"]["ImGuiButtonFlags_"][6]["name"] = "ImGuiButtonFlags_MouseButtonDefault_"
defs["enums"]["ImGuiButtonFlags_"][6]["value"] = "ImGuiButtonFlags_MouseButtonLeft"
defs["enums"]["ImGuiCol_"] = {}
defs["enums"]["ImGuiCol_"][1] = {}
defs["enums"]["ImGuiCol_"][1]["calc_value"] = 0
@ -389,23 +422,23 @@ defs["enums"]["ImGuiColorEditFlags_"][24]["value"] = "1 << 28"
defs["enums"]["ImGuiColorEditFlags_"][25] = {}
defs["enums"]["ImGuiColorEditFlags_"][25]["calc_value"] = 177209344
defs["enums"]["ImGuiColorEditFlags_"][25]["name"] = "ImGuiColorEditFlags__OptionsDefault"
defs["enums"]["ImGuiColorEditFlags_"][25]["value"] = "ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_PickerHueBar"
defs["enums"]["ImGuiColorEditFlags_"][25]["value"] = "ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_PickerHueBar"
defs["enums"]["ImGuiColorEditFlags_"][26] = {}
defs["enums"]["ImGuiColorEditFlags_"][26]["calc_value"] = 7340032
defs["enums"]["ImGuiColorEditFlags_"][26]["name"] = "ImGuiColorEditFlags__DisplayMask"
defs["enums"]["ImGuiColorEditFlags_"][26]["value"] = "ImGuiColorEditFlags_DisplayRGB|ImGuiColorEditFlags_DisplayHSV|ImGuiColorEditFlags_DisplayHex"
defs["enums"]["ImGuiColorEditFlags_"][26]["value"] = "ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV | ImGuiColorEditFlags_DisplayHex"
defs["enums"]["ImGuiColorEditFlags_"][27] = {}
defs["enums"]["ImGuiColorEditFlags_"][27]["calc_value"] = 25165824
defs["enums"]["ImGuiColorEditFlags_"][27]["name"] = "ImGuiColorEditFlags__DataTypeMask"
defs["enums"]["ImGuiColorEditFlags_"][27]["value"] = "ImGuiColorEditFlags_Uint8|ImGuiColorEditFlags_Float"
defs["enums"]["ImGuiColorEditFlags_"][27]["value"] = "ImGuiColorEditFlags_Uint8 | ImGuiColorEditFlags_Float"
defs["enums"]["ImGuiColorEditFlags_"][28] = {}
defs["enums"]["ImGuiColorEditFlags_"][28]["calc_value"] = 100663296
defs["enums"]["ImGuiColorEditFlags_"][28]["name"] = "ImGuiColorEditFlags__PickerMask"
defs["enums"]["ImGuiColorEditFlags_"][28]["value"] = "ImGuiColorEditFlags_PickerHueWheel|ImGuiColorEditFlags_PickerHueBar"
defs["enums"]["ImGuiColorEditFlags_"][28]["value"] = "ImGuiColorEditFlags_PickerHueWheel | ImGuiColorEditFlags_PickerHueBar"
defs["enums"]["ImGuiColorEditFlags_"][29] = {}
defs["enums"]["ImGuiColorEditFlags_"][29]["calc_value"] = 402653184
defs["enums"]["ImGuiColorEditFlags_"][29]["name"] = "ImGuiColorEditFlags__InputMask"
defs["enums"]["ImGuiColorEditFlags_"][29]["value"] = "ImGuiColorEditFlags_InputRGB|ImGuiColorEditFlags_InputHSV"
defs["enums"]["ImGuiColorEditFlags_"][29]["value"] = "ImGuiColorEditFlags_InputRGB | ImGuiColorEditFlags_InputHSV"
defs["enums"]["ImGuiComboFlags_"] = {}
defs["enums"]["ImGuiComboFlags_"][1] = {}
defs["enums"]["ImGuiComboFlags_"][1]["calc_value"] = 0
@ -1106,6 +1139,31 @@ defs["enums"]["ImGuiSelectableFlags_"][6] = {}
defs["enums"]["ImGuiSelectableFlags_"][6]["calc_value"] = 16
defs["enums"]["ImGuiSelectableFlags_"][6]["name"] = "ImGuiSelectableFlags_AllowItemOverlap"
defs["enums"]["ImGuiSelectableFlags_"][6]["value"] = "1 << 4"
defs["enums"]["ImGuiSliderFlags_"] = {}
defs["enums"]["ImGuiSliderFlags_"][1] = {}
defs["enums"]["ImGuiSliderFlags_"][1]["calc_value"] = 0
defs["enums"]["ImGuiSliderFlags_"][1]["name"] = "ImGuiSliderFlags_None"
defs["enums"]["ImGuiSliderFlags_"][1]["value"] = "0"
defs["enums"]["ImGuiSliderFlags_"][2] = {}
defs["enums"]["ImGuiSliderFlags_"][2]["calc_value"] = 16
defs["enums"]["ImGuiSliderFlags_"][2]["name"] = "ImGuiSliderFlags_ClampOnInput"
defs["enums"]["ImGuiSliderFlags_"][2]["value"] = "1 << 4"
defs["enums"]["ImGuiSliderFlags_"][3] = {}
defs["enums"]["ImGuiSliderFlags_"][3]["calc_value"] = 32
defs["enums"]["ImGuiSliderFlags_"][3]["name"] = "ImGuiSliderFlags_Logarithmic"
defs["enums"]["ImGuiSliderFlags_"][3]["value"] = "1 << 5"
defs["enums"]["ImGuiSliderFlags_"][4] = {}
defs["enums"]["ImGuiSliderFlags_"][4]["calc_value"] = 64
defs["enums"]["ImGuiSliderFlags_"][4]["name"] = "ImGuiSliderFlags_NoRoundToFormat"
defs["enums"]["ImGuiSliderFlags_"][4]["value"] = "1 << 6"
defs["enums"]["ImGuiSliderFlags_"][5] = {}
defs["enums"]["ImGuiSliderFlags_"][5]["calc_value"] = 128
defs["enums"]["ImGuiSliderFlags_"][5]["name"] = "ImGuiSliderFlags_NoInput"
defs["enums"]["ImGuiSliderFlags_"][5]["value"] = "1 << 7"
defs["enums"]["ImGuiSliderFlags_"][6] = {}
defs["enums"]["ImGuiSliderFlags_"][6]["calc_value"] = 1879048207
defs["enums"]["ImGuiSliderFlags_"][6]["name"] = "ImGuiSliderFlags_InvalidMask_"
defs["enums"]["ImGuiSliderFlags_"][6]["value"] = "0x7000000F"
defs["enums"]["ImGuiStyleVar_"] = {}
defs["enums"]["ImGuiStyleVar_"][1] = {}
defs["enums"]["ImGuiStyleVar_"][1]["calc_value"] = 0
@ -1477,6 +1535,7 @@ defs["locations"]["ImFontConfig"] = "imgui"
defs["locations"]["ImFontGlyph"] = "imgui"
defs["locations"]["ImFontGlyphRangesBuilder"] = "imgui"
defs["locations"]["ImGuiBackendFlags_"] = "imgui"
defs["locations"]["ImGuiButtonFlags_"] = "imgui"
defs["locations"]["ImGuiCol_"] = "imgui"
defs["locations"]["ImGuiColorEditFlags_"] = "imgui"
defs["locations"]["ImGuiComboFlags_"] = "imgui"
@ -1501,6 +1560,7 @@ defs["locations"]["ImGuiPayload"] = "imgui"
defs["locations"]["ImGuiPopupFlags_"] = "imgui"
defs["locations"]["ImGuiSelectableFlags_"] = "imgui"
defs["locations"]["ImGuiSizeCallbackData"] = "imgui"
defs["locations"]["ImGuiSliderFlags_"] = "imgui"
defs["locations"]["ImGuiStorage"] = "imgui"
defs["locations"]["ImGuiStoragePair"] = "imgui"
defs["locations"]["ImGuiStyle"] = "imgui"
@ -1751,9 +1811,15 @@ defs["structs"]["ImFontAtlas"][14]["name"] = "ConfigData"
defs["structs"]["ImFontAtlas"][14]["template_type"] = "ImFontConfig"
defs["structs"]["ImFontAtlas"][14]["type"] = "ImVector_ImFontConfig"
defs["structs"]["ImFontAtlas"][15] = {}
defs["structs"]["ImFontAtlas"][15]["name"] = "CustomRectIds[1]"
defs["structs"]["ImFontAtlas"][15]["size"] = 1
defs["structs"]["ImFontAtlas"][15]["type"] = "int"
defs["structs"]["ImFontAtlas"][15]["name"] = "TexUvLines[(63)+1]"
defs["structs"]["ImFontAtlas"][15]["size"] = 64
defs["structs"]["ImFontAtlas"][15]["type"] = "ImVec4"
defs["structs"]["ImFontAtlas"][16] = {}
defs["structs"]["ImFontAtlas"][16]["name"] = "PackIdMouseCursors"
defs["structs"]["ImFontAtlas"][16]["type"] = "int"
defs["structs"]["ImFontAtlas"][17] = {}
defs["structs"]["ImFontAtlas"][17]["name"] = "PackIdLines"
defs["structs"]["ImFontAtlas"][17]["type"] = "int"
defs["structs"]["ImFontAtlasCustomRect"] = {}
defs["structs"]["ImFontAtlasCustomRect"][1] = {}
defs["structs"]["ImFontAtlasCustomRect"][1]["name"] = "Width"
@ -2322,48 +2388,54 @@ defs["structs"]["ImGuiStyle"][23] = {}
defs["structs"]["ImGuiStyle"][23]["name"] = "GrabRounding"
defs["structs"]["ImGuiStyle"][23]["type"] = "float"
defs["structs"]["ImGuiStyle"][24] = {}
defs["structs"]["ImGuiStyle"][24]["name"] = "TabRounding"
defs["structs"]["ImGuiStyle"][24]["name"] = "LogSliderDeadzone"
defs["structs"]["ImGuiStyle"][24]["type"] = "float"
defs["structs"]["ImGuiStyle"][25] = {}
defs["structs"]["ImGuiStyle"][25]["name"] = "TabBorderSize"
defs["structs"]["ImGuiStyle"][25]["name"] = "TabRounding"
defs["structs"]["ImGuiStyle"][25]["type"] = "float"
defs["structs"]["ImGuiStyle"][26] = {}
defs["structs"]["ImGuiStyle"][26]["name"] = "TabMinWidthForUnselectedCloseButton"
defs["structs"]["ImGuiStyle"][26]["name"] = "TabBorderSize"
defs["structs"]["ImGuiStyle"][26]["type"] = "float"
defs["structs"]["ImGuiStyle"][27] = {}
defs["structs"]["ImGuiStyle"][27]["name"] = "ColorButtonPosition"
defs["structs"]["ImGuiStyle"][27]["type"] = "ImGuiDir"
defs["structs"]["ImGuiStyle"][27]["name"] = "TabMinWidthForUnselectedCloseButton"
defs["structs"]["ImGuiStyle"][27]["type"] = "float"
defs["structs"]["ImGuiStyle"][28] = {}
defs["structs"]["ImGuiStyle"][28]["name"] = "ButtonTextAlign"
defs["structs"]["ImGuiStyle"][28]["type"] = "ImVec2"
defs["structs"]["ImGuiStyle"][28]["name"] = "ColorButtonPosition"
defs["structs"]["ImGuiStyle"][28]["type"] = "ImGuiDir"
defs["structs"]["ImGuiStyle"][29] = {}
defs["structs"]["ImGuiStyle"][29]["name"] = "SelectableTextAlign"
defs["structs"]["ImGuiStyle"][29]["name"] = "ButtonTextAlign"
defs["structs"]["ImGuiStyle"][29]["type"] = "ImVec2"
defs["structs"]["ImGuiStyle"][30] = {}
defs["structs"]["ImGuiStyle"][30]["name"] = "DisplayWindowPadding"
defs["structs"]["ImGuiStyle"][30]["name"] = "SelectableTextAlign"
defs["structs"]["ImGuiStyle"][30]["type"] = "ImVec2"
defs["structs"]["ImGuiStyle"][31] = {}
defs["structs"]["ImGuiStyle"][31]["name"] = "DisplaySafeAreaPadding"
defs["structs"]["ImGuiStyle"][31]["name"] = "DisplayWindowPadding"
defs["structs"]["ImGuiStyle"][31]["type"] = "ImVec2"
defs["structs"]["ImGuiStyle"][32] = {}
defs["structs"]["ImGuiStyle"][32]["name"] = "MouseCursorScale"
defs["structs"]["ImGuiStyle"][32]["type"] = "float"
defs["structs"]["ImGuiStyle"][32]["name"] = "DisplaySafeAreaPadding"
defs["structs"]["ImGuiStyle"][32]["type"] = "ImVec2"
defs["structs"]["ImGuiStyle"][33] = {}
defs["structs"]["ImGuiStyle"][33]["name"] = "AntiAliasedLines"
defs["structs"]["ImGuiStyle"][33]["type"] = "bool"
defs["structs"]["ImGuiStyle"][33]["name"] = "MouseCursorScale"
defs["structs"]["ImGuiStyle"][33]["type"] = "float"
defs["structs"]["ImGuiStyle"][34] = {}
defs["structs"]["ImGuiStyle"][34]["name"] = "AntiAliasedFill"
defs["structs"]["ImGuiStyle"][34]["name"] = "AntiAliasedLines"
defs["structs"]["ImGuiStyle"][34]["type"] = "bool"
defs["structs"]["ImGuiStyle"][35] = {}
defs["structs"]["ImGuiStyle"][35]["name"] = "CurveTessellationTol"
defs["structs"]["ImGuiStyle"][35]["type"] = "float"
defs["structs"]["ImGuiStyle"][35]["name"] = "AntiAliasedLinesUseTex"
defs["structs"]["ImGuiStyle"][35]["type"] = "bool"
defs["structs"]["ImGuiStyle"][36] = {}
defs["structs"]["ImGuiStyle"][36]["name"] = "CircleSegmentMaxError"
defs["structs"]["ImGuiStyle"][36]["type"] = "float"
defs["structs"]["ImGuiStyle"][36]["name"] = "AntiAliasedFill"
defs["structs"]["ImGuiStyle"][36]["type"] = "bool"
defs["structs"]["ImGuiStyle"][37] = {}
defs["structs"]["ImGuiStyle"][37]["name"] = "Colors[ImGuiCol_COUNT]"
defs["structs"]["ImGuiStyle"][37]["size"] = 48
defs["structs"]["ImGuiStyle"][37]["type"] = "ImVec4"
defs["structs"]["ImGuiStyle"][37]["name"] = "CurveTessellationTol"
defs["structs"]["ImGuiStyle"][37]["type"] = "float"
defs["structs"]["ImGuiStyle"][38] = {}
defs["structs"]["ImGuiStyle"][38]["name"] = "CircleSegmentMaxError"
defs["structs"]["ImGuiStyle"][38]["type"] = "float"
defs["structs"]["ImGuiStyle"][39] = {}
defs["structs"]["ImGuiStyle"][39]["name"] = "Colors[ImGuiCol_COUNT]"
defs["structs"]["ImGuiStyle"][39]["size"] = 48
defs["structs"]["ImGuiStyle"][39]["type"] = "ImVec4"
defs["structs"]["ImGuiTextBuffer"] = {}
defs["structs"]["ImGuiTextBuffer"][1] = {}
defs["structs"]["ImGuiTextBuffer"][1]["name"] = "Buf"

View File

@ -19,6 +19,7 @@
"ImFontGlyph": "struct ImFontGlyph",
"ImFontGlyphRangesBuilder": "struct ImFontGlyphRangesBuilder",
"ImGuiBackendFlags": "int",
"ImGuiButtonFlags": "int",
"ImGuiCol": "int",
"ImGuiColorEditFlags": "int",
"ImGuiComboFlags": "int",
@ -32,7 +33,7 @@
"ImGuiHoveredFlags": "int",
"ImGuiID": "unsigned int",
"ImGuiIO": "struct ImGuiIO",
"ImGuiInputTextCallback": "int(*)(ImGuiInputTextCallbackData *data);",
"ImGuiInputTextCallback": "int(*)(ImGuiInputTextCallbackData* data);",
"ImGuiInputTextCallbackData": "struct ImGuiInputTextCallbackData",
"ImGuiInputTextFlags": "int",
"ImGuiKey": "int",
@ -47,6 +48,7 @@
"ImGuiSelectableFlags": "int",
"ImGuiSizeCallback": "void(*)(ImGuiSizeCallbackData* data);",
"ImGuiSizeCallbackData": "struct ImGuiSizeCallbackData",
"ImGuiSliderFlags": "int",
"ImGuiStorage": "struct ImGuiStorage",
"ImGuiStoragePair": "struct ImGuiStoragePair",
"ImGuiStyle": "struct ImGuiStyle",

View File

@ -19,6 +19,7 @@ defs["ImFontConfig"] = "struct ImFontConfig"
defs["ImFontGlyph"] = "struct ImFontGlyph"
defs["ImFontGlyphRangesBuilder"] = "struct ImFontGlyphRangesBuilder"
defs["ImGuiBackendFlags"] = "int"
defs["ImGuiButtonFlags"] = "int"
defs["ImGuiCol"] = "int"
defs["ImGuiColorEditFlags"] = "int"
defs["ImGuiComboFlags"] = "int"
@ -32,7 +33,7 @@ defs["ImGuiFocusedFlags"] = "int"
defs["ImGuiHoveredFlags"] = "int"
defs["ImGuiID"] = "unsigned int"
defs["ImGuiIO"] = "struct ImGuiIO"
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData *data);"
defs["ImGuiInputTextCallback"] = "int(*)(ImGuiInputTextCallbackData* data);"
defs["ImGuiInputTextCallbackData"] = "struct ImGuiInputTextCallbackData"
defs["ImGuiInputTextFlags"] = "int"
defs["ImGuiKey"] = "int"
@ -47,6 +48,7 @@ defs["ImGuiPopupFlags"] = "int"
defs["ImGuiSelectableFlags"] = "int"
defs["ImGuiSizeCallback"] = "void(*)(ImGuiSizeCallbackData* data);"
defs["ImGuiSizeCallbackData"] = "struct ImGuiSizeCallbackData"
defs["ImGuiSliderFlags"] = "int"
defs["ImGuiStorage"] = "struct ImGuiStorage"
defs["ImGuiStoragePair"] = "struct ImGuiStoragePair"
defs["ImGuiStyle"] = "struct ImGuiStyle"

View File

@ -23,16 +23,6 @@ macro_rules! impl_speed {
};
}
macro_rules! impl_power {
($InputType:ident) => {
#[inline]
pub fn power(mut self, value: f32) -> Self {
self.power = value;
self
}
};
}
macro_rules! impl_min_max {
($InputType:ident, $Value:ty) => {
#[inline]
@ -57,7 +47,6 @@ pub struct DragFloat<'ui, 'p> {
min: f32,
max: f32,
display_format: &'p ImStr,
power: f32,
_phantom: PhantomData<&'ui Ui<'ui>>,
}
@ -70,7 +59,6 @@ impl<'ui, 'p> DragFloat<'ui, 'p> {
min: 0.0,
max: 0.0,
display_format: unsafe { ImStr::from_utf8_with_nul_unchecked(b"%.3f\0") },
power: 1.0,
_phantom: PhantomData,
}
}
@ -84,7 +72,7 @@ impl<'ui, 'p> DragFloat<'ui, 'p> {
self.min,
self.max,
self.display_format.as_ptr(),
self.power,
0,
)
}
}
@ -92,7 +80,6 @@ impl<'ui, 'p> DragFloat<'ui, 'p> {
impl_display_format!(DragFloat);
impl_min_max!(DragFloat, f32);
impl_speed!(DragFloat);
impl_power!(DragFloat);
}
macro_rules! impl_drag_floatn {
@ -105,7 +92,6 @@ macro_rules! impl_drag_floatn {
min: f32,
max: f32,
display_format: &'p ImStr,
power: f32,
_phantom: PhantomData<&'ui Ui<'ui>>,
}
@ -118,7 +104,6 @@ macro_rules! impl_drag_floatn {
min: 0.0,
max: 0.0,
display_format: unsafe { ImStr::from_utf8_with_nul_unchecked(b"%.3f\0") },
power: 1.0,
_phantom: PhantomData,
}
}
@ -132,7 +117,7 @@ macro_rules! impl_drag_floatn {
self.min,
self.max,
self.display_format.as_ptr(),
self.power,
0,
)
}
}
@ -140,7 +125,6 @@ macro_rules! impl_drag_floatn {
impl_display_format!(DragFloat);
impl_min_max!(DragFloat, f32);
impl_speed!(DragFloat);
impl_power!(DragFloat);
}
};
}
@ -159,7 +143,6 @@ pub struct DragFloatRange2<'ui, 'p> {
max: f32,
display_format: &'p ImStr,
display_format_max: Option<&'p ImStr>,
power: f32,
_phantom: PhantomData<&'ui Ui<'ui>>,
}
@ -179,7 +162,6 @@ impl<'ui, 'p> DragFloatRange2<'ui, 'p> {
max: 0.0,
display_format: unsafe { ImStr::from_utf8_with_nul_unchecked(b"%.3f\0") },
display_format_max: None,
power: 1.0,
_phantom: PhantomData,
}
}
@ -195,7 +177,7 @@ impl<'ui, 'p> DragFloatRange2<'ui, 'p> {
self.max,
self.display_format.as_ptr(),
self.display_format_max.map_or(ptr::null(), |f| f.as_ptr()),
self.power,
0,
)
}
}
@ -209,7 +191,6 @@ impl<'ui, 'p> DragFloatRange2<'ui, 'p> {
impl_display_format!(DragFloatRange2);
impl_min_max!(DragFloatRange2, f32);
impl_speed!(DragFloatRange2);
impl_power!(DragFloatRange2);
}
#[must_use]
@ -245,6 +226,7 @@ impl<'ui, 'p> DragInt<'ui, 'p> {
self.min,
self.max,
self.display_format.as_ptr(),
0,
)
}
}
@ -289,6 +271,7 @@ macro_rules! impl_drag_intn {
self.min,
self.max,
self.display_format.as_ptr(),
0,
)
}
}
@ -348,6 +331,7 @@ impl<'ui, 'p> DragIntRange2<'ui, 'p> {
self.max,
self.display_format.as_ptr(),
self.display_format_max.map_or(ptr::null(), |f| f.as_ptr()),
0,
)
}
}

View File

@ -16,8 +16,12 @@ bitflags! {
/// Font atlas configuration flags
#[repr(transparent)]
pub struct FontAtlasFlags: u32 {
/// Don't round the height to next power of two
const NO_POWER_OF_TWO_HEIGHT = sys::ImFontAtlasFlags_NoPowerOfTwoHeight;
/// Don't build software mouse cursors into the atlas
const NO_MOUSE_CURSORS = sys::ImFontAtlasFlags_NoMouseCursors;
/// Don't build thick line textures into the atlas
const NO_BAKED_LINES = sys::ImFontAtlasFlags_NoBakedLines;
}
}
@ -53,7 +57,9 @@ pub struct FontAtlas {
fonts: ImVector<*mut Font>,
custom_rects: sys::ImVector_ImFontAtlasCustomRect,
config_data: sys::ImVector_ImFontConfig,
custom_rect_ids: [i32; 1],
tex_uv_lines: [[f32; 4]; 64],
pack_id_mouse_cursors: i32,
pack_id_lines: i32,
}
unsafe impl RawCast<sys::ImFontAtlas> for FontAtlas {}
@ -253,7 +259,9 @@ fn test_font_atlas_memory_layout() {
assert_field_offset!(fonts, Fonts);
assert_field_offset!(custom_rects, CustomRects);
assert_field_offset!(config_data, ConfigData);
assert_field_offset!(custom_rect_ids, CustomRectIds);
assert_field_offset!(tex_uv_lines, TexUvLines);
assert_field_offset!(pack_id_mouse_cursors, PackIdMouseCursors);
assert_field_offset!(pack_id_lines, PackIdLines);
}
/// A source for binary font data

View File

@ -70,7 +70,9 @@ bitflags!(
#[repr(C)]
pub struct ImDrawListFlags: c_int {
const AntiAliasedLines = 1;
const AntiAliasedFill = 1 << 1;
const AntiAliasedLinesUseTex = 1 << 1;
const AntiAliasedFill = 1 << 2;
const AllowVtxOffset = 1 << 3;
}
);

View File

@ -85,7 +85,7 @@ pub fn dear_imgui_version() -> &'static str {
#[test]
fn test_version() {
assert_eq!(dear_imgui_version(), "1.77");
assert_eq!(dear_imgui_version(), "1.78");
}
impl Context {

View File

@ -84,6 +84,8 @@ pub struct Style {
///
/// Set to 0.0 to have rectangular slider grabs.
pub grab_rounding: f32,
/// The size in pixels of the dead-zone around zero on logarithmic sliders that cross zero
pub log_slider_deadzone: f32,
/// Rounding radius of upper corners of tabs.
///
/// Set to 0.0 to have rectangular tabs.
@ -105,7 +107,8 @@ pub struct Style {
///
/// Defaults to [0.5, 0.5] (top-left aligned).
pub selectable_text_align: [f32; 2],
/// Window positions are clamped to be visible within the display area by at least this amount.
/// Window positions are clamped to be visible within the display area or monitors by at least
/// this amount.
///
/// Only applies to regular windows.
pub display_window_padding: [f32; 2],
@ -117,11 +120,17 @@ pub struct Style {
///
/// May be removed later.
pub mouse_cursor_scale: f32,
/// Enable anti-aliasing on lines/borders.
/// Enable anti-aliased lines/borders.
///
/// Disable if you are really tight on CPU/GPU.
/// Disable if you are really tight on CPU/GPU. Latched at the beginning of the frame.
pub anti_aliased_lines: bool,
/// Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.)
/// Enable anti-aliased lines/borders using textures where possible.
///
/// Require back-end to render with bilinear filtering. Latched at the beginning of the frame.
pub anti_aliased_lines_use_tex: bool,
/// Enable anti-aliased edges around filled shapes (rounded recatngles, circles, etc.).
///
/// Disable if you are really tight on CPU/GPU. Latched at the beginning of the frame.
pub anti_aliased_fill: bool,
/// Tessellation tolerance when using path_bezier_curve_to without a specific number of
/// segments.
@ -374,6 +383,7 @@ fn test_style_scaling() {
style.scrollbar_rounding = 20.0;
style.grab_min_size = 21.0;
style.grab_rounding = 22.0;
style.log_slider_deadzone = 29.0;
style.tab_rounding = 23.0;
style.display_window_padding = [24.0, 25.0];
style.display_safe_area_padding = [26.0, 27.0];
@ -395,6 +405,7 @@ fn test_style_scaling() {
assert_eq!(style.scrollbar_rounding, 40.0);
assert_eq!(style.grab_min_size, 42.0);
assert_eq!(style.grab_rounding, 44.0);
assert_eq!(style.log_slider_deadzone, 58.0);
assert_eq!(style.tab_rounding, 46.0);
assert_eq!(style.display_window_padding, [48.0, 50.0]);
assert_eq!(style.display_safe_area_padding, [52.0, 54.0]);
@ -446,6 +457,7 @@ fn test_style_memory_layout() {
assert_field_offset!(scrollbar_rounding, ScrollbarRounding);
assert_field_offset!(grab_min_size, GrabMinSize);
assert_field_offset!(grab_rounding, GrabRounding);
assert_field_offset!(log_slider_deadzone, LogSliderDeadzone);
assert_field_offset!(tab_rounding, TabRounding);
assert_field_offset!(tab_border_size, TabBorderSize);
assert_field_offset!(
@ -459,6 +471,7 @@ fn test_style_memory_layout() {
assert_field_offset!(display_safe_area_padding, DisplaySafeAreaPadding);
assert_field_offset!(mouse_cursor_scale, MouseCursorScale);
assert_field_offset!(anti_aliased_lines, AntiAliasedLines);
assert_field_offset!(anti_aliased_lines_use_tex, AntiAliasedLinesUseTex);
assert_field_offset!(anti_aliased_fill, AntiAliasedFill);
assert_field_offset!(curve_tessellation_tol, CurveTessellationTol);
assert_field_offset!(circle_segment_max_error, CircleSegmentMaxError);

View File

@ -1,9 +1,23 @@
use bitflags::bitflags;
use std::ops::{BitAnd, BitAndAssign, BitOrAssign, Not};
use crate::string::ImStr;
use crate::sys;
use crate::{Direction, Ui};
bitflags!(
/// Flags for invisible buttons
#[repr(transparent)]
pub struct ButtonFlags: u32 {
/// React on left mouse button
const MOUSE_BUTTON_LEFT = sys::ImGuiButtonFlags_MouseButtonLeft;
/// React on right mouse button
const MOUSE_BUTTON_RIGHT = sys::ImGuiButtonFlags_MouseButtonRight;
/// React on middle mouse button
const MOUSE_BUTTON_MIDDLE = sys::ImGuiButtonFlags_MouseButtonMiddle;
}
);
/// # Widgets: Miscellaneous
impl<'ui> Ui<'ui> {
/// Renders a clickable button.
@ -18,11 +32,17 @@ impl<'ui> Ui<'ui> {
pub fn small_button(&self, label: &ImStr) -> bool {
unsafe { sys::igSmallButton(label.as_ptr()) }
}
/// Renders a button behaviour without the visual look.
/// Renders a widget with button behaviour without the visual look.
///
/// Returns true if this button was clicked.
pub fn invisible_button(&self, id: &ImStr, size: [f32; 2]) -> bool {
unsafe { sys::igInvisibleButton(id.as_ptr(), size.into()) }
unsafe { sys::igInvisibleButton(id.as_ptr(), size.into(), 0) }
}
/// Renders a widget with button behaviour without the visual look.
///
/// Returns true if this button was clicked.
pub fn invisible_button_flags(&self, id: &ImStr, size: [f32; 2], flags: ButtonFlags) -> bool {
unsafe { sys::igInvisibleButton(id.as_ptr(), size.into(), flags.bits() as i32) }
}
/// Renders a square button with an arrow shape.
///

View File

@ -1,3 +1,4 @@
use bitflags::bitflags;
use std::ops::RangeInclusive;
use std::os::raw::c_void;
use std::ptr;
@ -7,6 +8,23 @@ use crate::string::ImStr;
use crate::sys;
use crate::Ui;
bitflags!(
/// Flags for sliders
#[repr(transparent)]
pub struct SliderFlags: u32 {
/// Clamp value to min/max bounds when input manually with CTRL+Click.
///
/// By default CTRL+click allows going out of bounds.
const CLAMP_ON_INPUT = sys::ImGuiSliderFlags_ClampOnInput;
/// Make the widget logarithmic instead of linear
const LOGARITHMIC = sys::ImGuiSliderFlags_Logarithmic;
/// Disable rounding underlying value to match precision of the display format string
const NO_ROUND_TO_FORMAT = sys::ImGuiSliderFlags_NoRoundToFormat;
/// Disable CTRL+Click or Enter key allowing to input text directly into the widget
const NO_INPUT = sys::ImGuiSliderFlags_NoInput;
}
);
/// Builder for a slider widget.
#[derive(Copy, Clone, Debug)]
#[must_use]
@ -15,7 +33,7 @@ pub struct Slider<'a, T: DataTypeKind> {
min: T,
max: T,
display_format: Option<&'a ImStr>,
power: f32,
flags: SliderFlags,
}
impl<'a, T: DataTypeKind> Slider<'a, T> {
@ -26,7 +44,7 @@ impl<'a, T: DataTypeKind> Slider<'a, T> {
min: *range.start(),
max: *range.end(),
display_format: None,
power: 1.0,
flags: SliderFlags::empty(),
}
}
/// Sets the display format using *a C-style printf string*
@ -35,10 +53,10 @@ impl<'a, T: DataTypeKind> Slider<'a, T> {
self.display_format = Some(display_format);
self
}
/// Sets the power (exponent) of the slider values
/// Replaces all current settings with the given flags
#[inline]
pub fn power(mut self, power: f32) -> Self {
self.power = power;
pub fn flags(mut self, flags: SliderFlags) -> Self {
self.flags = flags;
self
}
/// Builds a slider that is bound to the given value.
@ -55,7 +73,7 @@ impl<'a, T: DataTypeKind> Slider<'a, T> {
self.display_format
.map(ImStr::as_ptr)
.unwrap_or(ptr::null()),
self.power,
self.flags.bits() as i32,
)
}
}
@ -74,7 +92,7 @@ impl<'a, T: DataTypeKind> Slider<'a, T> {
self.display_format
.map(ImStr::as_ptr)
.unwrap_or(ptr::null()),
self.power,
self.flags.bits() as i32,
)
}
}
@ -89,7 +107,7 @@ pub struct VerticalSlider<'a, T: DataTypeKind + Copy> {
min: T,
max: T,
display_format: Option<&'a ImStr>,
power: f32,
flags: SliderFlags,
}
impl<'a, T: DataTypeKind> VerticalSlider<'a, T> {
@ -101,7 +119,7 @@ impl<'a, T: DataTypeKind> VerticalSlider<'a, T> {
min: *range.start(),
max: *range.end(),
display_format: None,
power: 1.0,
flags: SliderFlags::empty(),
}
}
/// Sets the display format using *a C-style printf string*
@ -110,10 +128,10 @@ impl<'a, T: DataTypeKind> VerticalSlider<'a, T> {
self.display_format = Some(display_format);
self
}
/// Sets the power (exponent) of the slider values
/// Replaces all current settings with the given flags
#[inline]
pub fn power(mut self, power: f32) -> Self {
self.power = power;
pub fn flags(mut self, flags: SliderFlags) -> Self {
self.flags = flags;
self
}
/// Builds a vertical slider that is bound to the given value.
@ -131,7 +149,7 @@ impl<'a, T: DataTypeKind> VerticalSlider<'a, T> {
self.display_format
.map(ImStr::as_ptr)
.unwrap_or(ptr::null()),
self.power,
self.flags.bits() as i32,
)
}
}
@ -145,6 +163,7 @@ pub struct AngleSlider<'a> {
min_degrees: f32,
max_degrees: f32,
display_format: &'a ImStr,
flags: SliderFlags,
}
impl<'a> AngleSlider<'a> {
@ -156,6 +175,7 @@ impl<'a> AngleSlider<'a> {
min_degrees: -360.0,
max_degrees: 360.0,
display_format: im_str!("%.0f deg"),
flags: SliderFlags::empty(),
}
}
/// Sets the minimum value (in degrees)
@ -176,6 +196,12 @@ impl<'a> AngleSlider<'a> {
self.display_format = display_format;
self
}
/// Replaces all current settings with the given flags
#[inline]
pub fn flags(mut self, flags: SliderFlags) -> Self {
self.flags = flags;
self
}
/// Builds an angle slider that is bound to the given value (in radians).
///
/// Returns true if the slider value was changed.
@ -187,6 +213,7 @@ impl<'a> AngleSlider<'a> {
self.min_degrees,
self.max_degrees,
self.display_format.as_ptr(),
self.flags.bits() as i32,
)
}
}

View File

@ -517,14 +517,14 @@ impl<'ui> Circle<'ui> {
center,
radius,
color: color.into(),
num_segments: 12,
num_segments: 0,
thickness: 1.0,
filled: false,
draw_list,
}
}
/// Set number of segment used to draw the circle, default to 12.
/// Set number of segment used to draw the circle, default to 0.
/// Add more segments if you want a smoother circle.
pub fn num_segments(mut self, num_segments: u32) -> Self {
self.num_segments = num_segments;