diff --git a/imgui-examples/examples/custom_textures.rs b/imgui-examples/examples/custom_textures.rs index 6b8cfc575..fabd8a802 100644 --- a/imgui-examples/examples/custom_textures.rs +++ b/imgui-examples/examples/custom_textures.rs @@ -189,8 +189,8 @@ impl Lenna { decoder.read_image(&mut image)?; let raw = RawImage2d { data: Cow::Owned(image), - width: width as u32, - height: height as u32, + width, + height, format: ClientFormat::U8U8U8, }; let gl_texture = Texture2d::new(gl_ctx, raw)?; diff --git a/imgui-examples/examples/test_window_impl.rs b/imgui-examples/examples/test_window_impl.rs index ee9e2c04e..60523c116 100644 --- a/imgui-examples/examples/test_window_impl.rs +++ b/imgui-examples/examples/test_window_impl.rs @@ -759,7 +759,7 @@ CTRL+click on individual component to input value.\n", ); state.filter.draw(); - let lines = vec!["aaa1.c", "bbb1.c", "ccc1.c", "aaa2.cpp", "bbb2.cpp", "ccc2.cpp", "abc.h", "hello, world!"]; + let lines = ["aaa1.c", "bbb1.c", "ccc1.c", "aaa2.cpp", "bbb2.cpp", "ccc2.cpp", "abc.h", "hello, world!"]; ui.same_line(); if ui.button("Clear##clear_filter") { @@ -1285,7 +1285,7 @@ fn show_app_log(ui: &Ui, app_log: &mut Vec) { } ui.same_line(); if ui.button("Copy") { - ui.set_clipboard_text(&ImString::from(app_log.join("\n"))); + ui.set_clipboard_text(ImString::from(app_log.join("\n"))); } ui.separator(); ui.child_window("logwindow") diff --git a/imgui-examples/examples/text_callbacks.rs b/imgui-examples/examples/text_callbacks.rs index dce2c7efc..a8bd7c512 100644 --- a/imgui-examples/examples/text_callbacks.rs +++ b/imgui-examples/examples/text_callbacks.rs @@ -106,7 +106,7 @@ fn main() { if !data.str().is_empty() { data.remove_chars(0, 1); - if let Some((idx, _)) = data.str().char_indices().rev().next() { + if let Some((idx, _)) = data.str().char_indices().next_back() { data.remove_chars(idx, 1); } } @@ -118,7 +118,7 @@ fn main() { } // insert last char - if let Some((idx, _)) = self.1.char_indices().rev().next() { + if let Some((idx, _)) = self.1.char_indices().next_back() { data.push_str(&self.1[idx..]); } } diff --git a/imgui-glow-renderer/src/lib.rs b/imgui-glow-renderer/src/lib.rs index e178fa693..4b70cc662 100644 --- a/imgui-glow-renderer/src/lib.rs +++ b/imgui-glow-renderer/src/lib.rs @@ -1152,7 +1152,7 @@ fn calculate_matrix(draw_data: &DrawData, clip_origin_is_lower_left: bool) -> [f } unsafe fn to_byte_slice(slice: &[T]) -> &[u8] { - std::slice::from_raw_parts(slice.as_ptr().cast(), slice.len() * size_of::()) + std::slice::from_raw_parts(slice.as_ptr().cast(), std::mem::size_of_val(slice)) } const fn imgui_index_type_as_gl() -> u32 { diff --git a/imgui/src/context.rs b/imgui/src/context.rs index 67bb7866b..e30835048 100644 --- a/imgui/src/context.rs +++ b/imgui/src/context.rs @@ -523,7 +523,7 @@ impl Context { // we take this with an `&mut Self` here, which means // that we can't get the sharedfontatlas through safe code // otherwise - unsafe { &mut *(self.io_mut().fonts as *mut FontAtlas) } + unsafe { &mut *self.io_mut().fonts } } /// Attempts to clone the interior shared font atlas **if it exists**. diff --git a/imgui/src/draw_list.rs b/imgui/src/draw_list.rs index 3ca6eeebd..863471345 100644 --- a/imgui/src/draw_list.rs +++ b/imgui/src/draw_list.rs @@ -27,7 +27,6 @@ bitflags!( /// Options for some DrawList operations. #[repr(C)] pub struct DrawFlags: u32 { - const NONE = sys::ImDrawFlags_None; const CLOSED = sys::ImDrawFlags_Closed; const ROUND_CORNERS_TOP_LEFT = sys::ImDrawFlags_RoundCornersTopLeft; const ROUND_CORNERS_TOP_RIGHT = sys::ImDrawFlags_RoundCornersTopRight; @@ -46,7 +45,6 @@ bitflags!( /// Draw list flags #[repr(C)] pub struct DrawListFlags: u32 { - const NONE = sys::ImDrawListFlags_None; /// Enable anti-aliased lines/borders (*2 the number of triangles for 1.0f wide line or lines /// thin enough to be drawn using textures, otherwise *3 the number of triangles) const ANTI_ALIASED_LINES = sys::ImDrawListFlags_AntiAliasedLines; diff --git a/imgui/src/fonts/glyph_ranges.rs b/imgui/src/fonts/glyph_ranges.rs index b22ae5067..29ae59ac8 100644 --- a/imgui/src/fonts/glyph_ranges.rs +++ b/imgui/src/fonts/glyph_ranges.rs @@ -17,10 +17,6 @@ enum FontGlyphRangeData { #[derive(Clone, Eq, PartialEq, Debug)] pub struct FontGlyphRanges(FontGlyphRangeData); impl FontGlyphRanges { - /// The default set of glyph ranges used by imgui. - pub fn default() -> FontGlyphRanges { - FontGlyphRanges(FontGlyphRangeData::Default) - } /// A set of glyph ranges appropriate for use with simplified common Chinese text. pub fn chinese_simplified_common() -> FontGlyphRanges { FontGlyphRanges(FontGlyphRangeData::ChineseSimplifiedCommon) @@ -162,3 +158,10 @@ impl FontGlyphRanges { } } } + +impl Default for FontGlyphRanges { + /// The default set of glyph ranges used by imgui. + fn default() -> Self { + FontGlyphRanges(FontGlyphRangeData::Default) + } +} diff --git a/imgui/src/internal.rs b/imgui/src/internal.rs index d6a38a739..ad68764e8 100644 --- a/imgui/src/internal.rs +++ b/imgui/src/internal.rs @@ -1,6 +1,6 @@ //! Internal raw utilities (don't use unless you know what you're doing!) -use std::{mem::size_of, slice}; +use std::slice; /// A generic version of the raw imgui-sys ImVector struct types #[repr(C)] @@ -25,7 +25,7 @@ impl ImVector { unsafe { sys::igMemFree(self.data as *mut _); - let buffer_ptr = sys::igMemAlloc(size_of::() * data.len()) as *mut T; + let buffer_ptr = sys::igMemAlloc(std::mem::size_of_val(data)) as *mut T; buffer_ptr.copy_from_nonoverlapping(data.as_ptr(), data.len()); self.size = data.len() as i32; diff --git a/imgui/src/render/draw_data.rs b/imgui/src/render/draw_data.rs index 14fc78977..c93deb95d 100644 --- a/imgui/src/render/draw_data.rs +++ b/imgui/src/render/draw_data.rs @@ -334,7 +334,7 @@ impl From<&DrawData> for OwnedDrawData { OwnedDrawData { draw_data: unsafe { let other_ptr = value.raw(); - let mut result = sys::ImDrawData_ImDrawData(); + let result = sys::ImDrawData_ImDrawData(); (*result).Valid = other_ptr.Valid; (*result).TotalIdxCount = other_ptr.TotalIdxCount; (*result).TotalVtxCount = other_ptr.TotalVtxCount; @@ -404,7 +404,7 @@ fn test_owneddrawdata_from_drawdata() { DisplaySize: sys::ImVec2 { x: 789.0, y: 012.0 }, FramebufferScale: sys::ImVec2 { x: 3.0, y: 7.0 }, #[cfg(feature = "docking")] - OwnerViewport: unsafe { (std::ptr::null_mut() as *mut sys::ImGuiViewport).offset(123) }, + OwnerViewport: unsafe { std::ptr::null_mut::().offset(123) }, }; let draw_data = unsafe { DrawData::from_raw(&draw_data_raw) };