diff --git a/.travis.yml b/.travis.yml index e917e21..929230d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ rust: - stable - beta - nightly - - 1.19.0 + - 1.20.0 os: - linux - osx diff --git a/README.markdown b/README.markdown index d72beac..d61bb23 100644 --- a/README.markdown +++ b/README.markdown @@ -2,7 +2,7 @@ **Still fairly experimental!** -Minimum Rust version: 1.19 +Minimum Rust version: 1.20 [![Build Status](https://travis-ci.org/Gekkio/imgui-rs.svg?branch=master)](https://travis-ci.org/Gekkio/imgui-rs) [![Latest release on crates.io](https://meritbadge.herokuapp.com/imgui)](https://crates.io/crates/imgui) @@ -11,7 +11,7 @@ Minimum Rust version: 1.19 ```rust ui.window(im_str!("Hello world")) - .size((300.0, 100.0), ImGuiSetCond_FirstUseEver) + .size((300.0, 100.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("Hello world!")); ui.text(im_str!("This...is...imgui-rs!")); diff --git a/imgui-examples/examples/hello_gfx.rs b/imgui-examples/examples/hello_gfx.rs index 0c379ff..5bcdc48 100644 --- a/imgui-examples/examples/hello_gfx.rs +++ b/imgui-examples/examples/hello_gfx.rs @@ -15,7 +15,7 @@ fn main() { support_gfx::run("hello_gfx.rs".to_owned(), CLEAR_COLOR, hello_world fn hello_world<'a>(ui: &Ui<'a>) -> bool { ui.window(im_str!("Hello world")) - .size((300.0, 100.0), ImGuiCond_FirstUseEver) + .size((300.0, 100.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("Hello world!")); ui.text(im_str!("This...is...imgui-rs!")); diff --git a/imgui-examples/examples/hello_world.rs b/imgui-examples/examples/hello_world.rs index 68b6373..eec0e78 100644 --- a/imgui-examples/examples/hello_world.rs +++ b/imgui-examples/examples/hello_world.rs @@ -13,7 +13,7 @@ fn main() { support::run("hellow_world.rs".to_owned(), CLEAR_COLOR, hello_world) fn hello_world<'a>(ui: &Ui<'a>) -> bool { ui.window(im_str!("Hello world")) - .size((300.0, 100.0), ImGuiCond_FirstUseEver) + .size((300.0, 100.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("Hello world!")); ui.text(im_str!("This...is...imgui-rs!")); diff --git a/imgui-examples/examples/test_window_impl.rs b/imgui-examples/examples/test_window_impl.rs index 193a982..5072ee9 100644 --- a/imgui-examples/examples/test_window_impl.rs +++ b/imgui-examples/examples/test_window_impl.rs @@ -177,7 +177,7 @@ fn show_test_window<'a>(ui: &Ui<'a>, state: &mut State, opened: &mut bool) { .collapsible(!state.no_collapse) .menu_bar(!state.no_menu) .bg_alpha(state.bg_alpha) - .size((550.0, 680.0), ImGuiCond_FirstUseEver) + .size((550.0, 680.0), ImGuiCond::FirstUseEver) .opened(opened) .build(|| { ui.text(im_str!("ImGui says hello.")); @@ -520,13 +520,13 @@ fn show_example_app_fixed_overlay<'a>(ui: &Ui<'a>, opened: &mut bool) { fn show_example_app_manipulating_window_title<'a>(ui: &Ui<'a>) { ui.window(im_str!("Same title as another window##1")) - .position((100.0, 100.0), ImGuiCond_FirstUseEver) + .position((100.0, 100.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("This is window 1. My title is the same as window 2, but my identifier is unique.")); }); ui.window(im_str!("Same title as another window##2")) - .position((100.0, 200.0), ImGuiCond_FirstUseEver) + .position((100.0, 200.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("This is window 2. My title is the same as window 1, but my identifier is unique.")); @@ -536,6 +536,6 @@ My title is the same as window 1, but my identifier is unique.")); let num = ui.imgui().get_frame_count(); // The C++ version uses rand() here let title = im_str!("Animated title {} {}###AnimatedTitle", chars[ch_idx], num); ui.window(title) - .position((100.0, 300.0), ImGuiCond_FirstUseEver) + .position((100.0, 300.0), ImGuiCond::FirstUseEver) .build(|| { ui.text(im_str!("This window has a changing title")); }); } diff --git a/imgui-sys/Cargo.toml b/imgui-sys/Cargo.toml index 9cd20b0..b74152d 100644 --- a/imgui-sys/Cargo.toml +++ b/imgui-sys/Cargo.toml @@ -13,7 +13,7 @@ build = "build.rs" travis-ci = { repository = "Gekkio/imgui-rs" } [dependencies] -bitflags = "0.9" +bitflags = "1.0" glium = { version = "0.18", default-features = false, optional = true } gfx = { version = "0.16", optional = true } diff --git a/imgui-sys/src/lib.rs b/imgui-sys/src/lib.rs index 519d457..0aa5b4a 100644 --- a/imgui-sys/src/lib.rs +++ b/imgui-sys/src/lib.rs @@ -143,25 +143,25 @@ bitflags!( /// Color edit flags #[repr(C)] pub struct ImGuiColorEditFlags: c_int { - const ImGuiColorEditFlags_NoAlpha = 1 << 1; - const ImGuiColorEditFlags_NoPicker = 1 << 2; - const ImGuiColorEditFlags_NoOptions = 1 << 3; - const ImGuiColorEditFlags_NoSmallPreview = 1 << 4; - const ImGuiColorEditFlags_NoInputs = 1 << 5; - const ImGuiColorEditFlags_NoTooltip = 1 << 6; - const ImGuiColorEditFlags_NoLabel = 1 << 7; - const ImGuiColorEditFlags_NoSidePreview = 1 << 8; - const ImGuiColorEditFlags_AlphaBar = 1 << 9; - const ImGuiColorEditFlags_AlphaPreview = 1 << 10; - const ImGuiColorEditFlags_AlphaPreviewHalf= 1 << 11; - const ImGuiColorEditFlags_HDR = 1 << 12; - const ImGuiColorEditFlags_RGB = 1 << 13; - const ImGuiColorEditFlags_HSV = 1 << 14; - const ImGuiColorEditFlags_HEX = 1 << 15; - const ImGuiColorEditFlags_Uint8 = 1 << 16; - const ImGuiColorEditFlags_Float = 1 << 17; - const ImGuiColorEditFlags_PickerHueBar = 1 << 18; - const ImGuiColorEditFlags_PickerHueWheel = 1 << 19; + const NoAlpha = 1 << 1; + const NoPicker = 1 << 2; + const NoOptions = 1 << 3; + const NoSmallPreview = 1 << 4; + const NoInputs = 1 << 5; + const NoTooltip = 1 << 6; + const NoLabel = 1 << 7; + const NoSidePreview = 1 << 8; + const AlphaBar = 1 << 9; + const AlphaPreview = 1 << 10; + const AlphaPreviewHalf= 1 << 11; + const HDR = 1 << 12; + const RGB = 1 << 13; + const HSV = 1 << 14; + const HEX = 1 << 15; + const Uint8 = 1 << 16; + const Float = 1 << 17; + const PickerHueBar = 1 << 18; + const PickerHueWheel = 1 << 19; } ); @@ -184,67 +184,115 @@ bitflags!( /// Window flags #[repr(C)] pub struct ImGuiWindowFlags: c_int { - const ImGuiWindowFlags_NoTitleBar = 1 << 0; - const ImGuiWindowFlags_NoResize = 1 << 1; - const ImGuiWindowFlags_NoMove = 1 << 2; - const ImGuiWindowFlags_NoScrollbar = 1 << 3; - const ImGuiWindowFlags_NoScrollWithMouse = 1 << 4; - const ImGuiWindowFlags_NoCollapse = 1 << 5; - const ImGuiWindowFlags_AlwaysAutoResize = 1 << 6; - const ImGuiWindowFlags_ShowBorders = 1 << 7; - const ImGuiWindowFlags_NoSavedSettings = 1 << 8; - const ImGuiWindowFlags_NoInputs = 1 << 9; - const ImGuiWindowFlags_MenuBar = 1 << 10; - const ImGuiWindowFlags_HorizontalScrollbar = 1 << 11; - const ImGuiWindowFlags_NoFocusOnAppearing = 1 << 12; - const ImGuiWindowFlags_NoBringToFrontOnFocus = 1 << 13; - const ImGuiWindowFlags_AlwaysVerticalScrollbar = 1 << 14; - const ImGuiWindowFlags_AlwaysHorizontalScrollbar = 1 << 15; - const ImGuiWindowFlags_AlwaysUseWindowPadding = 1 << 16; + const NoTitleBar = 1 << 0; + const NoResize = 1 << 1; + const NoMove = 1 << 2; + const NoScrollbar = 1 << 3; + const NoScrollWithMouse = 1 << 4; + const NoCollapse = 1 << 5; + const AlwaysAutoResize = 1 << 6; + const ShowBorders = 1 << 7; + const NoSavedSettings = 1 << 8; + const NoInputs = 1 << 9; + const MenuBar = 1 << 10; + const HorizontalScrollbar = 1 << 11; + const NoFocusOnAppearing = 1 << 12; + const NoBringToFrontOnFocus = 1 << 13; + const AlwaysVerticalScrollbar = 1 << 14; + const AlwaysHorizontalScrollbar = 1 << 15; + const AlwaysUseWindowPadding = 1 << 16; - const ImGuiWindowFlags_ChildWindow = 1 << 22; - const ImGuiWindowFlags_ComboBox = 1 << 23; - const ImGuiWindowFlags_Tooltip = 1 << 24; - const ImGuiWindowFlags_Popup = 1 << 25; - const ImGuiWindowFlags_Modal = 1 << 26; - const ImGuiWindowFlags_ChildMenu = 1 << 27; + const ChildWindow = 1 << 22; + const ComboBox = 1 << 23; + const Tooltip = 1 << 24; + const Popup = 1 << 25; + const Modal = 1 << 26; + const ChildMenu = 1 << 27; } ); +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoTitleBar instead")] +pub const ImGuiWindowFlags_NoTitleBar: ImGuiWindowFlags = ImGuiWindowFlags::NoTitleBar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoResize instead")] +pub const ImGuiWindowFlags_NoResize: ImGuiWindowFlags = ImGuiWindowFlags::NoResize; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoMove instead")] +pub const ImGuiWindowFlags_NoMove: ImGuiWindowFlags = ImGuiWindowFlags::NoMove; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoScrollbar instead")] +pub const ImGuiWindowFlags_NoScrollbar: ImGuiWindowFlags = ImGuiWindowFlags::NoScrollbar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoScrollWithMouse instead")] +pub const ImGuiWindowFlags_NoScrollWithMouse: ImGuiWindowFlags = ImGuiWindowFlags::NoScrollWithMouse; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoCollapse instead")] +pub const ImGuiWindowFlags_NoCollapse: ImGuiWindowFlags = ImGuiWindowFlags::NoCollapse; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::AlwaysAutoResize instead")] +pub const ImGuiWindowFlags_AlwaysAutoResize: ImGuiWindowFlags = ImGuiWindowFlags::AlwaysAutoResize; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::ShowBorders instead")] +pub const ImGuiWindowFlags_ShowBorders: ImGuiWindowFlags = ImGuiWindowFlags::ShowBorders; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoSavedSettings instead")] +pub const ImGuiWindowFlags_NoSavedSettings: ImGuiWindowFlags = ImGuiWindowFlags::NoSavedSettings; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoInputs instead")] +pub const ImGuiWindowFlags_NoInputs: ImGuiWindowFlags = ImGuiWindowFlags::NoInputs; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::MenuBar instead")] +pub const ImGuiWindowFlags_MenuBar: ImGuiWindowFlags = ImGuiWindowFlags::MenuBar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::HorizontalScrollbar instead")] +pub const ImGuiWindowFlags_HorizontalScrollbar: ImGuiWindowFlags = ImGuiWindowFlags::HorizontalScrollbar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoFocusOnAppearing instead")] +pub const ImGuiWindowFlags_NoFocusOnAppearing: ImGuiWindowFlags = ImGuiWindowFlags::NoFocusOnAppearing; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::NoBringToFrontOnFocus instead")] +pub const ImGuiWindowFlags_NoBringToFrontOnFocus: ImGuiWindowFlags = ImGuiWindowFlags::NoBringToFrontOnFocus; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::AlwaysVerticalScrollbar instead")] +pub const ImGuiWindowFlags_AlwaysVerticalScrollbar: ImGuiWindowFlags = ImGuiWindowFlags::AlwaysVerticalScrollbar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::AlwaysHorizontalScrollbar instead")] +pub const ImGuiWindowFlags_AlwaysHorizontalScrollbar: ImGuiWindowFlags = ImGuiWindowFlags::AlwaysHorizontalScrollbar; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::AlwaysUseWindowPadding instead")] +pub const ImGuiWindowFlags_AlwaysUseWindowPadding: ImGuiWindowFlags = ImGuiWindowFlags::AlwaysUseWindowPadding; + +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::ChildWindow instead")] +pub const ImGuiWindowFlags_ChildWindow: ImGuiWindowFlags = ImGuiWindowFlags::ChildWindow; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::ComboBox instead")] +pub const ImGuiWindowFlags_ComboBox: ImGuiWindowFlags = ImGuiWindowFlags::ComboBox; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::Tooltip instead")] +pub const ImGuiWindowFlags_Tooltip: ImGuiWindowFlags = ImGuiWindowFlags::Tooltip; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::Popup instead")] +pub const ImGuiWindowFlags_Popup: ImGuiWindowFlags = ImGuiWindowFlags::Popup; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::Modal instead")] +pub const ImGuiWindowFlags_Modal: ImGuiWindowFlags = ImGuiWindowFlags::Modal; +#[deprecated(since = "0.0.17", note = "please use ImGuiWindowFlags::ChildMenu instead")] +pub const ImGuiWindowFlags_ChildMenu: ImGuiWindowFlags = ImGuiWindowFlags::ChildMenu; + bitflags!( /// Condition flags #[repr(C)] pub struct ImGuiCond: c_int { - const ImGuiCond_Always = 1 << 0; - const ImGuiCond_Once = 1 << 1; - const ImGuiCond_FirstUseEver = 1 << 2; - const ImGuiCond_Appearing = 1 << 3; + const Always = 1 << 0; + const Once = 1 << 1; + const FirstUseEver = 1 << 2; + const Appearing = 1 << 3; } ); #[deprecated(since = "0.0.17", note = "please use ImGuiCond instead")] pub type ImGuiSetCond = ImGuiCond; -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Always instead")] -pub const ImGuiSetCond_Always: ImGuiCond = ImGuiCond_Always; -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Once instead")] -pub const ImGuiSetCond_Once: ImGuiCond = ImGuiCond_Once; -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_FirstUseEver instead")] -pub const ImGuiSetCond_FirstUseEver: ImGuiCond = ImGuiCond_FirstUseEver; -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Appearing instead")] -pub const ImGuiSetCond_Appearing: ImGuiCond = ImGuiCond_Appearing; +#[deprecated(since = "0.0.17", note = "please use ImGuiCond::Always instead")] +pub const ImGuiSetCond_Always: ImGuiCond = ImGuiCond::Always; +#[deprecated(since = "0.0.17", note = "please use ImGuiCond::Once instead")] +pub const ImGuiSetCond_Once: ImGuiCond = ImGuiCond::Once; +#[deprecated(since = "0.0.17", note = "please use ImGuiCond::FirstUseEver instead")] +pub const ImGuiSetCond_FirstUseEver: ImGuiCond = ImGuiCond::FirstUseEver; +#[deprecated(since = "0.0.17", note = "please use ImGuiCond::Appearing instead")] +pub const ImGuiSetCond_Appearing: ImGuiCond = ImGuiCond::Appearing; bitflags!( /// Flags for column functions #[repr(C)] pub struct ImGuiColumnsFlags: c_int { /// Disable column dividers - const ImGuiColumnsFlags_NoBorder = 1 << 0; + const NoBorder = 1 << 0; /// Disable resizing columns when clicking on the dividers - const ImGuiColumnsFlags_NoResize = 1 << 1; + const NoResize = 1 << 1; /// Disable column width preservation when adjusting columns - const ImGuiColumnsFlags_NoPreserveWidths = 1 << 2; + const NoPreserveWidths = 1 << 2; /// Disable forcing columns to fit within window - const ImGuiColumnsFlags_NoForceWithinWindow = 1 << 3; + const NoForceWithinWindow = 1 << 3; } ); @@ -252,56 +300,121 @@ bitflags!( /// Flags for text inputs #[repr(C)] pub struct ImGuiInputTextFlags: c_int { - const ImGuiInputTextFlags_CharsDecimal = 1 << 0; - const ImGuiInputTextFlags_CharsHexadecimal = 1 << 1; - const ImGuiInputTextFlags_CharsUppercase = 1 << 2; - const ImGuiInputTextFlags_CharsNoBlank = 1 << 3; - const ImGuiInputTextFlags_AutoSelectAll = 1 << 4; - const ImGuiInputTextFlags_EnterReturnsTrue = 1 << 5; - const ImGuiInputTextFlags_CallbackCompletion = 1 << 6; - const ImGuiInputTextFlags_CallbackHistory = 1 << 7; - const ImGuiInputTextFlags_CallbackAlways = 1 << 8; - const ImGuiInputTextFlags_CallbackCharFilter = 1 << 9; - const ImGuiInputTextFlags_AllowTabInput = 1 << 10; - const ImGuiInputTextFlags_CtrlEnterForNewLine = 1 << 11; - const ImGuiInputTextFlags_NoHorizontalScroll = 1 << 12; - const ImGuiInputTextFlags_AlwaysInsertMode = 1 << 13; - const ImGuiInputTextFlags_ReadOnly = 1 << 14; - const ImGuiInputTextFlags_Password = 1 << 15; + const CharsDecimal = 1 << 0; + const CharsHexadecimal = 1 << 1; + const CharsUppercase = 1 << 2; + const CharsNoBlank = 1 << 3; + const AutoSelectAll = 1 << 4; + const EnterReturnsTrue = 1 << 5; + const CallbackCompletion = 1 << 6; + const CallbackHistory = 1 << 7; + const CallbackAlways = 1 << 8; + const CallbackCharFilter = 1 << 9; + const AllowTabInput = 1 << 10; + const CtrlEnterForNewLine = 1 << 11; + const NoHorizontalScroll = 1 << 12; + const AlwaysInsertMode = 1 << 13; + const ReadOnly = 1 << 14; + const Password = 1 << 15; - const ImGuiInputTextFlags_Multiline = 1 << 20; + const Multiline = 1 << 20; } ); +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CharsDecimal instead")] +pub const ImGuiInputTextFlags_CharsDecimal: ImGuiInputTextFlags = ImGuiInputTextFlags::CharsDecimal; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CharsHexadecimal instead")] +pub const ImGuiInputTextFlags_CharsHexadecimal: ImGuiInputTextFlags = ImGuiInputTextFlags::CharsHexadecimal; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CharsUppercase instead")] +pub const ImGuiInputTextFlags_CharsUppercase: ImGuiInputTextFlags = ImGuiInputTextFlags::CharsUppercase; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CharsNoBlank instead")] +pub const ImGuiInputTextFlags_CharsNoBlank: ImGuiInputTextFlags = ImGuiInputTextFlags::CharsNoBlank; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::AutoSelectAll instead")] +pub const ImGuiInputTextFlags_AutoSelectAll: ImGuiInputTextFlags = ImGuiInputTextFlags::AutoSelectAll; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::EnterReturnsTrue instead")] +pub const ImGuiInputTextFlags_EnterReturnsTrue: ImGuiInputTextFlags = ImGuiInputTextFlags::EnterReturnsTrue; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CallbackCompletion instead")] +pub const ImGuiInputTextFlags_CallbackCompletion: ImGuiInputTextFlags = ImGuiInputTextFlags::CallbackCompletion; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CallbackHistory instead")] +pub const ImGuiInputTextFlags_CallbackHistory: ImGuiInputTextFlags = ImGuiInputTextFlags::CallbackHistory; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CallbackAlways instead")] +pub const ImGuiInputTextFlags_CallbackAlways: ImGuiInputTextFlags = ImGuiInputTextFlags::CallbackAlways; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CallbackCharFilter instead")] +pub const ImGuiInputTextFlags_CallbackCharFilter: ImGuiInputTextFlags = ImGuiInputTextFlags::CallbackCharFilter; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::AllowTabInput instead")] +pub const ImGuiInputTextFlags_AllowTabInput: ImGuiInputTextFlags = ImGuiInputTextFlags::AllowTabInput; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::CtrlEnterForNewLine instead")] +pub const ImGuiInputTextFlags_CtrlEnterForNewLine: ImGuiInputTextFlags = ImGuiInputTextFlags::CtrlEnterForNewLine; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::NoHorizontalScroll instead")] +pub const ImGuiInputTextFlags_NoHorizontalScroll: ImGuiInputTextFlags = ImGuiInputTextFlags::NoHorizontalScroll; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::AlwaysInsertMode instead")] +pub const ImGuiInputTextFlags_AlwaysInsertMode: ImGuiInputTextFlags = ImGuiInputTextFlags::AlwaysInsertMode; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::ReadOnly instead")] +pub const ImGuiInputTextFlags_ReadOnly: ImGuiInputTextFlags = ImGuiInputTextFlags::ReadOnly; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::Password instead")] +pub const ImGuiInputTextFlags_Password: ImGuiInputTextFlags = ImGuiInputTextFlags::Password; +#[deprecated(since = "0.0.17", note = "please use ImGuiInputTextFlags::Multiline instead")] +pub const ImGuiInputTextFlags_Multiline: ImGuiInputTextFlags = ImGuiInputTextFlags::Multiline; + bitflags!( /// Flags for selectables #[repr(C)] pub struct ImGuiSelectableFlags: c_int { - const ImGuiSelectableFlags_DontClosePopups = 1 << 0; - const ImGuiSelectableFlags_SpanAllColumns = 1 << 1; - const ImGuiSelectableFlags_AllowDoubleClick = 1 << 2; + const DontClosePopups = 1 << 0; + const SpanAllColumns = 1 << 1; + const AllowDoubleClick = 1 << 2; } ); +#[deprecated(since = "0.0.17", note = "please use ImGuiSelectableFlags::DontClosePopups instead")] +pub const ImGuiSelectableFlags_DontClosePopups: ImGuiSelectableFlags = ImGuiSelectableFlags::DontClosePopups; +#[deprecated(since = "0.0.17", note = "please use ImGuiSelectableFlags::SpanAllColumns instead")] +pub const ImGuiSelectableFlags_SpanAllColumns: ImGuiSelectableFlags = ImGuiSelectableFlags::SpanAllColumns; +#[deprecated(since = "0.0.17", note = "please use ImGuiSelectableFlags::AllowDoubleClick instead")] +pub const ImGuiSelectableFlags_AllowDoubleClick: ImGuiSelectableFlags = ImGuiSelectableFlags::AllowDoubleClick; + bitflags!( /// Flags for trees and collapsing headers #[repr(C)] pub struct ImGuiTreeNodeFlags: c_int { - const ImGuiTreeNodeFlags_Selected = 1 << 0; - const ImGuiTreeNodeFlags_Framed = 1 << 1; - const ImGuiTreeNodeFlags_AllowOverlapMode = 1 << 2; - const ImGuiTreeNodeFlags_NoTreePushOnOpen = 1 << 3; - const ImGuiTreeNodeFlags_NoAutoOpenOnLog = 1 << 4; - const ImGuiTreeNodeFlags_DefaultOpen = 1 << 5; - const ImGuiTreeNodeFlags_OpenOnDoubleClick = 1 << 6; - const ImGuiTreeNodeFlags_OpenOnArrow = 1 << 7; - const ImGuiTreeNodeFlags_Leaf = 1 << 8; - const ImGuiTreeNodeFlags_Bullet = 1 << 9; - const ImGuiTreeNodeFlags_CollapsingHeader = - ImGuiTreeNodeFlags_Framed.bits | ImGuiTreeNodeFlags_NoAutoOpenOnLog.bits; + const Selected = 1 << 0; + const Framed = 1 << 1; + const AllowOverlapMode = 1 << 2; + const NoTreePushOnOpen = 1 << 3; + const NoAutoOpenOnLog = 1 << 4; + const DefaultOpen = 1 << 5; + const OpenOnDoubleClick = 1 << 6; + const OpenOnArrow = 1 << 7; + const Leaf = 1 << 8; + const Bullet = 1 << 9; + const CollapsingHeader = + ImGuiTreeNodeFlags::Framed.bits | ImGuiTreeNodeFlags::NoAutoOpenOnLog.bits; } ); +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::Selected instead")] +pub const ImGuiTreeNodeFlags_Selected: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::Selected; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::Framed instead")] +pub const ImGuiTreeNodeFlags_Framed: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::Framed; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::AllowOverlapMode instead")] +pub const ImGuiTreeNodeFlags_AllowOverlapMode: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::AllowOverlapMode; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::NoTreePushOnOpen instead")] +pub const ImGuiTreeNodeFlags_NoTreePushOnOpen: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::NoTreePushOnOpen; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::NoAutoOpenOnLog instead")] +pub const ImGuiTreeNodeFlags_NoAutoOpenOnLog: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::NoAutoOpenOnLog; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::DefaultOpen instead")] +pub const ImGuiTreeNodeFlags_DefaultOpen: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::DefaultOpen; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::OpenOnDoubleClick instead")] +pub const ImGuiTreeNodeFlags_OpenOnDoubleClick: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::OpenOnDoubleClick; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::OpenOnArrow instead")] +pub const ImGuiTreeNodeFlags_OpenOnArrow: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::OpenOnArrow; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::Leaf instead")] +pub const ImGuiTreeNodeFlags_Leaf: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::Leaf; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::Bullet instead")] +pub const ImGuiTreeNodeFlags_Bullet: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::Bullet; +#[deprecated(since = "0.0.17", note = "please use ImGuiTreeNodeFlags::CollapsingHeader instead")] +pub const ImGuiTreeNodeFlags_CollapsingHeader: ImGuiTreeNodeFlags = ImGuiTreeNodeFlags::CollapsingHeader; + pub type ImGuiTextEditCallback = Option c_int>; pub type ImGuiSizeConstraintCallback = diff --git a/src/child_frame.rs b/src/child_frame.rs index dadf40c..4579214 100644 --- a/src/child_frame.rs +++ b/src/child_frame.rs @@ -2,12 +2,6 @@ use imgui_sys; use std::marker::PhantomData; use super::{ImStr, ImVec2, ImGuiWindowFlags, Ui}; -use super::{ImGuiWindowFlags_NoMove, ImGuiWindowFlags_NoScrollbar, ImGuiWindowFlags_NoScrollWithMouse, - ImGuiWindowFlags_NoCollapse, ImGuiWindowFlags_AlwaysAutoResize, - ImGuiWindowFlags_ShowBorders, ImGuiWindowFlags_NoInputs, ImGuiWindowFlags_MenuBar, - ImGuiWindowFlags_HorizontalScrollbar, ImGuiWindowFlags_NoFocusOnAppearing, - ImGuiWindowFlags_NoBringToFrontOnFocus, ImGuiWindowFlags_AlwaysVerticalScrollbar, - ImGuiWindowFlags_AlwaysHorizontalScrollbar, ImGuiWindowFlags_AlwaysUseWindowPadding}; #[must_use] pub struct ChildFrame<'ui, 'p> { @@ -28,58 +22,58 @@ impl<'ui, 'p> ChildFrame<'ui, 'p> { } #[inline] pub fn movable(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoMove, !value); + self.flags.set(ImGuiWindowFlags::NoMove, !value); self } #[inline] pub fn show_scrollbar(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoScrollbar, !value); + self.flags.set(ImGuiWindowFlags::NoScrollbar, !value); self } #[inline] pub fn show_scrollbar_with_mouse(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoScrollWithMouse, !value); + self.flags.set(ImGuiWindowFlags::NoScrollWithMouse, !value); self } #[inline] pub fn collapsible(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoCollapse, !value); + self.flags.set(ImGuiWindowFlags::NoCollapse, !value); self } #[inline] pub fn always_resizable(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_AlwaysAutoResize, value); + self.flags.set(ImGuiWindowFlags::AlwaysAutoResize, value); self } #[inline] pub fn show_borders(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_ShowBorders, value); + self.flags.set(ImGuiWindowFlags::ShowBorders, value); self } #[inline] pub fn input_allow(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoInputs, !value); + self.flags.set(ImGuiWindowFlags::NoInputs, !value); self } #[inline] pub fn show_menu(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_MenuBar, value); + self.flags.set(ImGuiWindowFlags::MenuBar, value); self } #[inline] pub fn scrollbar_horizontal(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_HorizontalScrollbar, value); + self.flags.set(ImGuiWindowFlags::HorizontalScrollbar, value); self } #[inline] pub fn focus_on_appearing(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoFocusOnAppearing, !value); + self.flags.set(ImGuiWindowFlags::NoFocusOnAppearing, !value); self } #[inline] pub fn bring_to_front_on_focus(mut self, value: bool) -> Self { self.flags.set( - ImGuiWindowFlags_NoBringToFrontOnFocus, + ImGuiWindowFlags::NoBringToFrontOnFocus, !value, ); self @@ -87,7 +81,7 @@ impl<'ui, 'p> ChildFrame<'ui, 'p> { #[inline] pub fn always_show_vertical_scroll_bar(mut self, value: bool) -> Self { self.flags.set( - ImGuiWindowFlags_AlwaysVerticalScrollbar, + ImGuiWindowFlags::AlwaysVerticalScrollbar, value, ); self @@ -95,7 +89,7 @@ impl<'ui, 'p> ChildFrame<'ui, 'p> { #[inline] pub fn always_show_horizontal_scroll_bar(mut self, value: bool) -> Self { self.flags.set( - ImGuiWindowFlags_AlwaysHorizontalScrollbar, + ImGuiWindowFlags::AlwaysHorizontalScrollbar, value, ); self @@ -103,7 +97,7 @@ impl<'ui, 'p> ChildFrame<'ui, 'p> { #[inline] pub fn always_use_window_padding(mut self, value: bool) -> Self { self.flags.set( - ImGuiWindowFlags_AlwaysUseWindowPadding, + ImGuiWindowFlags::AlwaysUseWindowPadding, value, ); self diff --git a/src/input.rs b/src/input.rs index ec34461..bc38a2d 100644 --- a/src/input.rs +++ b/src/input.rs @@ -2,15 +2,7 @@ use imgui_sys; use std::marker::PhantomData; use std::ptr; -use super::{ImGuiInputTextFlags, - ImGuiInputTextFlags_AllowTabInput /* ImGuiInputTextFlags_CtrlEnterForNewLine, */, - ImGuiInputTextFlags_AlwaysInsertMode, ImGuiInputTextFlags_AutoSelectAll, - ImGuiInputTextFlags_CallbackAlways, ImGuiInputTextFlags_CallbackCharFilter, - ImGuiInputTextFlags_CallbackCompletion, ImGuiInputTextFlags_CallbackHistory, - ImGuiInputTextFlags_CharsDecimal, ImGuiInputTextFlags_CharsHexadecimal, - ImGuiInputTextFlags_CharsNoBlank, ImGuiInputTextFlags_CharsUppercase, - ImGuiInputTextFlags_EnterReturnsTrue, ImGuiInputTextFlags_NoHorizontalScroll, ImStr, - ImString, Ui}; +use super::{ImGuiInputTextFlags, ImStr, ImString, Ui}; macro_rules! impl_text_flags { ($InputType:ident) => { @@ -22,79 +14,79 @@ macro_rules! impl_text_flags { #[inline] pub fn chars_decimal(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CharsDecimal, value); + self.flags.set(ImGuiInputTextFlags::CharsDecimal, value); self } #[inline] pub fn chars_hexadecimal(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CharsHexadecimal, value); + self.flags.set(ImGuiInputTextFlags::CharsHexadecimal, value); self } #[inline] pub fn chars_uppercase(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CharsUppercase, value); + self.flags.set(ImGuiInputTextFlags::CharsUppercase, value); self } #[inline] pub fn chars_noblank(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CharsNoBlank, value); + self.flags.set(ImGuiInputTextFlags::CharsNoBlank, value); self } #[inline] pub fn auto_select_all(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_AutoSelectAll, value); + self.flags.set(ImGuiInputTextFlags::AutoSelectAll, value); self } #[inline] pub fn enter_returns_true(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_EnterReturnsTrue, value); + self.flags.set(ImGuiInputTextFlags::EnterReturnsTrue, value); self } #[inline] pub fn callback_completion(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CallbackCompletion, value); + self.flags.set(ImGuiInputTextFlags::CallbackCompletion, value); self } #[inline] pub fn callback_history(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CallbackHistory, value); + self.flags.set(ImGuiInputTextFlags::CallbackHistory, value); self } #[inline] pub fn callback_always(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CallbackAlways, value); + self.flags.set(ImGuiInputTextFlags::CallbackAlways, value); self } #[inline] pub fn callback_char_filter(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_CallbackCharFilter, value); + self.flags.set(ImGuiInputTextFlags::CallbackCharFilter, value); self } #[inline] pub fn allow_tab_input(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_AllowTabInput, value); + self.flags.set(ImGuiInputTextFlags::AllowTabInput, value); self } #[inline] pub fn no_horizontal_scroll(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_NoHorizontalScroll, value); + self.flags.set(ImGuiInputTextFlags::NoHorizontalScroll, value); self } #[inline] pub fn always_insert_mode(mut self, value: bool) -> Self { - self.flags.set(ImGuiInputTextFlags_AlwaysInsertMode, value); + self.flags.set(ImGuiInputTextFlags::AlwaysInsertMode, value); self } } diff --git a/src/lib.rs b/src/lib.rs index 1e60e74..3ca8df1 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -6,8 +6,10 @@ use std::os::raw::{c_char, c_float, c_int, c_uchar, c_void}; use std::ptr; use std::slice; use std::str; +use imgui_sys::ImGuiStyleVar; -pub use imgui_sys::{ImDrawIdx, ImDrawVert, ImGuiInputTextFlags, ImGuiInputTextFlags_AllowTabInput, +#[allow(deprecated)] +pub use imgui_sys::{ImGuiInputTextFlags_AllowTabInput, ImGuiInputTextFlags_AlwaysInsertMode, ImGuiInputTextFlags_AutoSelectAll, ImGuiInputTextFlags_CallbackAlways, ImGuiInputTextFlags_CallbackCharFilter, ImGuiInputTextFlags_CallbackCompletion, ImGuiInputTextFlags_CallbackHistory, @@ -15,17 +17,16 @@ pub use imgui_sys::{ImDrawIdx, ImDrawVert, ImGuiInputTextFlags, ImGuiInputTextFl ImGuiInputTextFlags_CharsNoBlank, ImGuiInputTextFlags_CharsUppercase, ImGuiInputTextFlags_CtrlEnterForNewLine, ImGuiInputTextFlags_EnterReturnsTrue, ImGuiInputTextFlags_NoHorizontalScroll, ImGuiInputTextFlags_Password, - ImGuiInputTextFlags_ReadOnly, ImGuiKey, ImGuiSelectableFlags, + ImGuiInputTextFlags_ReadOnly, ImGuiSelectableFlags_DontClosePopups, ImGuiSelectableFlags_SpanAllColumns, - ImGuiCond, ImGuiCond_Always, ImGuiCond_Appearing, - ImGuiCond_FirstUseEver, ImGuiCond_Once, - ImGuiCol, ImGuiStyle, ImGuiStyleVar, ImGuiTreeNodeFlags, + ImGuiSetCond_Always, ImGuiSetCond_Appearing, + ImGuiSetCond_FirstUseEver, ImGuiSetCond_Once, ImGuiTreeNodeFlags_AllowOverlapMode, ImGuiTreeNodeFlags_Bullet, ImGuiTreeNodeFlags_CollapsingHeader, ImGuiTreeNodeFlags_DefaultOpen, ImGuiTreeNodeFlags_Framed, ImGuiTreeNodeFlags_Leaf, ImGuiTreeNodeFlags_NoAutoOpenOnLog, ImGuiTreeNodeFlags_NoTreePushOnOpen, ImGuiTreeNodeFlags_OpenOnArrow, ImGuiTreeNodeFlags_OpenOnDoubleClick, - ImGuiTreeNodeFlags_Selected, ImGuiWindowFlags, + ImGuiTreeNodeFlags_Selected, ImGuiWindowFlags_AlwaysAutoResize, ImGuiWindowFlags_AlwaysHorizontalScrollbar, ImGuiWindowFlags_AlwaysUseWindowPadding, ImGuiWindowFlags_AlwaysVerticalScrollbar, @@ -35,7 +36,11 @@ pub use imgui_sys::{ImDrawIdx, ImDrawVert, ImGuiInputTextFlags, ImGuiInputTextFl ImGuiWindowFlags_NoMove, ImGuiWindowFlags_NoResize, ImGuiWindowFlags_NoSavedSettings, ImGuiWindowFlags_NoScrollWithMouse, ImGuiWindowFlags_NoScrollbar, ImGuiWindowFlags_NoTitleBar, - ImGuiWindowFlags_ShowBorders, ImVec2, ImVec4}; + ImGuiWindowFlags_ShowBorders}; + +pub use imgui_sys::{ImDrawIdx, ImDrawVert, ImGuiInputTextFlags, ImGuiKey, ImGuiSelectableFlags, + ImGuiCond, ImGuiCol, ImGuiStyle, ImGuiTreeNodeFlags, ImGuiWindowFlags, + ImVec2, ImVec4}; pub use child_frame::ChildFrame; pub use input::{InputFloat, InputFloat2, InputFloat3, InputFloat4, InputInt, InputInt2, InputInt3, InputInt4, InputText}; pub use menus::{Menu, MenuItem}; @@ -49,22 +54,6 @@ pub use style::StyleVar; pub use trees::{CollapsingHeader, TreeNode}; pub use window::Window; -#[allow(non_upper_case_globals)] -#[deprecated(since = "0.0.17", note = "please use ImGuiCond instead")] -pub type ImGuiSetCond = ImGuiCond; -#[allow(non_upper_case_globals)] -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Always instead")] -pub const ImGuiSetCond_Always: ImGuiCond = ImGuiCond_Always; -#[allow(non_upper_case_globals)] -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Once instead")] -pub const ImGuiSetCond_Once: ImGuiCond = ImGuiCond_Once; -#[allow(non_upper_case_globals)] -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_FirstUseEver instead")] -pub const ImGuiSetCond_FirstUseEver: ImGuiCond = ImGuiCond_FirstUseEver; -#[allow(non_upper_case_globals)] -#[deprecated(since = "0.0.17", note = "please use ImGuiCond_Appearing instead")] -pub const ImGuiSetCond_Appearing: ImGuiCond = ImGuiCond_Appearing; - mod child_frame; mod input; mod menus; diff --git a/src/trees.rs b/src/trees.rs index cd6cab9..e638edd 100644 --- a/src/trees.rs +++ b/src/trees.rs @@ -1,10 +1,7 @@ use imgui_sys; use std::marker::PhantomData; -use super::{ImGuiCond, ImGuiTreeNodeFlags, ImGuiTreeNodeFlags_Bullet, - ImGuiTreeNodeFlags_DefaultOpen, ImGuiTreeNodeFlags_Leaf, - ImGuiTreeNodeFlags_OpenOnArrow, ImGuiTreeNodeFlags_OpenOnDoubleClick, - ImGuiTreeNodeFlags_Selected, ImStr, Ui}; +use super::{ImGuiCond, ImGuiTreeNodeFlags, ImStr, Ui}; #[must_use] pub struct TreeNode<'ui, 'p> { @@ -76,33 +73,33 @@ impl<'ui, 'p> CollapsingHeader<'ui, 'p> { } #[inline] pub fn selected(mut self, value: bool) -> Self { - self.flags.set(ImGuiTreeNodeFlags_Selected, value); + self.flags.set(ImGuiTreeNodeFlags::Selected, value); self } #[inline] pub fn default_open(mut self, value: bool) -> Self { - self.flags.set(ImGuiTreeNodeFlags_DefaultOpen, value); + self.flags.set(ImGuiTreeNodeFlags::DefaultOpen, value); self } #[inline] pub fn open_on_double_click(mut self, value: bool) -> Self { self.flags - .set(ImGuiTreeNodeFlags_OpenOnDoubleClick, value); + .set(ImGuiTreeNodeFlags::OpenOnDoubleClick, value); self } #[inline] pub fn open_on_arrow(mut self, value: bool) -> Self { - self.flags.set(ImGuiTreeNodeFlags_OpenOnArrow, value); + self.flags.set(ImGuiTreeNodeFlags::OpenOnArrow, value); self } #[inline] pub fn leaf(mut self, value: bool) -> Self { - self.flags.set(ImGuiTreeNodeFlags_Leaf, value); + self.flags.set(ImGuiTreeNodeFlags::Leaf, value); self } #[inline] pub fn bullet(mut self, value: bool) -> Self { - self.flags.set(ImGuiTreeNodeFlags_Bullet, value); + self.flags.set(ImGuiTreeNodeFlags::Bullet, value); self } pub fn build(self) -> bool { diff --git a/src/window.rs b/src/window.rs index 1c111d5..4e226a5 100644 --- a/src/window.rs +++ b/src/window.rs @@ -2,15 +2,7 @@ use imgui_sys; use std::marker::PhantomData; use std::ptr; -use super::{ImGuiCond, ImGuiWindowFlags, ImGuiWindowFlags_AlwaysAutoResize, - ImGuiWindowFlags_AlwaysHorizontalScrollbar, ImGuiWindowFlags_AlwaysUseWindowPadding, - ImGuiWindowFlags_AlwaysVerticalScrollbar, ImGuiWindowFlags_HorizontalScrollbar, - ImGuiWindowFlags_MenuBar, ImGuiWindowFlags_NoBringToFrontOnFocus, - ImGuiWindowFlags_NoCollapse, ImGuiWindowFlags_NoFocusOnAppearing, - ImGuiWindowFlags_NoInputs, ImGuiWindowFlags_NoMove, ImGuiWindowFlags_NoResize, - ImGuiWindowFlags_NoSavedSettings, ImGuiWindowFlags_NoScrollWithMouse, - ImGuiWindowFlags_NoScrollbar, ImGuiWindowFlags_NoTitleBar, - ImGuiWindowFlags_ShowBorders, ImStr, ImVec2, Ui}; +use super::{ImGuiCond, ImGuiWindowFlags, ImStr, ImVec2, Ui}; #[must_use] pub struct Window<'ui, 'p> { @@ -68,94 +60,94 @@ impl<'ui, 'p> Window<'ui, 'p> { } #[inline] pub fn title_bar(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoTitleBar, !value); + self.flags.set(ImGuiWindowFlags::NoTitleBar, !value); self } #[inline] pub fn resizable(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoResize, !value); + self.flags.set(ImGuiWindowFlags::NoResize, !value); self } #[inline] pub fn movable(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoMove, !value); + self.flags.set(ImGuiWindowFlags::NoMove, !value); self } #[inline] pub fn scroll_bar(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoScrollbar, !value); + self.flags.set(ImGuiWindowFlags::NoScrollbar, !value); self } #[inline] pub fn scrollable(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_NoScrollWithMouse, !value); + .set(ImGuiWindowFlags::NoScrollWithMouse, !value); self } #[inline] pub fn collapsible(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoCollapse, !value); + self.flags.set(ImGuiWindowFlags::NoCollapse, !value); self } #[inline] pub fn always_auto_resize(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_AlwaysAutoResize, value); + self.flags.set(ImGuiWindowFlags::AlwaysAutoResize, value); self } #[inline] pub fn show_borders(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_ShowBorders, value); + self.flags.set(ImGuiWindowFlags::ShowBorders, value); self } #[inline] pub fn save_settings(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoSavedSettings, !value); + self.flags.set(ImGuiWindowFlags::NoSavedSettings, !value); self } #[inline] pub fn inputs(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_NoInputs, !value); + self.flags.set(ImGuiWindowFlags::NoInputs, !value); self } #[inline] pub fn menu_bar(mut self, value: bool) -> Self { - self.flags.set(ImGuiWindowFlags_MenuBar, value); + self.flags.set(ImGuiWindowFlags::MenuBar, value); self } #[inline] pub fn horizontal_scrollbar(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_HorizontalScrollbar, value); + .set(ImGuiWindowFlags::HorizontalScrollbar, value); self } #[inline] pub fn no_focus_on_appearing(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_NoFocusOnAppearing, value); + .set(ImGuiWindowFlags::NoFocusOnAppearing, value); self } #[inline] pub fn no_bring_to_front_on_focus(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_NoBringToFrontOnFocus, value); + .set(ImGuiWindowFlags::NoBringToFrontOnFocus, value); self } #[inline] pub fn always_vertical_scrollbar(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_AlwaysVerticalScrollbar, value); + .set(ImGuiWindowFlags::AlwaysVerticalScrollbar, value); self } #[inline] pub fn always_horizontal_scrollbar(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_AlwaysHorizontalScrollbar, value); + .set(ImGuiWindowFlags::AlwaysHorizontalScrollbar, value); self } #[inline] pub fn always_use_window_padding(mut self, value: bool) -> Self { self.flags - .set(ImGuiWindowFlags_AlwaysUseWindowPadding, value); + .set(ImGuiWindowFlags::AlwaysUseWindowPadding, value); self } pub fn build(self, f: F) {