pub struct ImGui { /* private fields */ }Implementations
sourceimpl ImGui
impl ImGui
pub fn align_text_to_frame_padding(&self)
pub fn begin(
&self,
name: &CStr,
p_open: &mut bool,
flags: ImGuiWindowFlags
) -> bool
pub fn begin_child(
&self,
str_id: &CStr,
size: ImVec2,
border: bool,
flags: ImGuiWindowFlags
) -> bool
pub fn begin_child_id(
&self,
id: ImGuiID,
size: ImVec2,
border: bool,
flags: ImGuiWindowFlags
) -> bool
pub fn begin_child_frame(
&self,
id: ImGuiID,
size: ImVec2,
flags: ImGuiWindowFlags
) -> bool
pub fn begin_combo(
&self,
label: &CStr,
preview_value: &CStr,
flags: ImGuiComboFlags
) -> bool
pub fn begin_drag_drop_source(&self, flags: ImGuiDragDropFlags) -> bool
pub fn begin_drag_drop_target(&self) -> bool
pub fn begin_group(&self)
pub fn begin_popup(&self, str_id: &CStr, flags: ImGuiWindowFlags) -> bool
pub fn begin_popup_context_item(&self, str_id: &CStr, mouse_button: i32) -> bool
pub fn begin_popup_context_void(&self, str_id: &CStr, mouse_button: i32) -> bool
pub fn begin_popup_context_window(
&self,
str_id: &CStr,
mouse_button: i32,
also_over_items: bool
) -> bool
pub fn begin_popup_modal(
&self,
name: &CStr,
p_open: &mut bool,
flags: ImGuiWindowFlags
) -> bool
pub fn begin_tooltip(&self)
pub fn bullet(&self)
pub fn bullet_text(&self, fmtstr: &CStr)
pub fn calc_item_width(&self) -> f32
pub fn calc_list_clipping(
&self,
items_count: i32,
items_height: f32,
out_items_display_start: &mut i32,
out_items_display_end: &mut i32
)
pub fn calc_text_size(
&self,
text: &CStr,
text_end: &CStr,
hide_text_after_double_hash: bool,
wrap_width: f32
) -> ImVec2
pub fn capture_keyboard_from_app(&self, capture: bool)
pub fn capture_mouse_from_app(&self, capture: bool)
pub fn checkbox(&self, label: &CStr, v: &mut bool) -> bool
pub fn checkbox_flags(
&self,
label: &CStr,
flags: &mut u32,
flags_value: u32
) -> bool
pub fn close_current_popup(&self)
pub fn collapsing_header(&self, label: &CStr, flags: ImGuiTreeNodeFlags) -> bool
pub fn collapsing_header_bool_ptr(
&self,
label: &CStr,
p_open: &mut bool,
flags: ImGuiTreeNodeFlags
) -> bool
pub fn color_convert_float4_to_u32(&self, _in: ImVec4) -> u32
pub fn color_convert_hs_vto_rgb(
&self,
h: f32,
s: f32,
v: f32,
out_r: &mut f32,
out_g: &mut f32,
out_b: &mut f32
)
pub fn color_convert_rg_bto_hsv(
&self,
r: f32,
g: f32,
b: f32,
out_h: &mut f32,
out_s: &mut f32,
out_v: &mut f32
)
pub fn color_convert_u32_to_float4(&self, _in: u32) -> ImVec4
pub fn color_edit3(
&self,
label: &CStr,
col: &mut [f32; 3],
flags: ImGuiColorEditFlags
) -> bool
pub fn color_edit4(
&self,
label: &CStr,
col: &mut [f32; 4],
flags: ImGuiColorEditFlags
) -> bool
pub fn color_picker3(
&self,
label: &CStr,
col: &mut [f32; 3],
flags: ImGuiColorEditFlags
) -> bool
pub fn color_picker4(
&self,
label: &CStr,
col: &mut [f32; 4],
flags: ImGuiColorEditFlags,
ref_col: &f32
) -> bool
pub fn columns(&self, count: i32, id: &CStr, border: bool)
pub fn combo_str(
&self,
label: &CStr,
current_item: &mut i32,
items_separated_by_zeros: &CStr,
popup_max_height_in_items: i32
) -> bool
pub fn debug_check_version_and_data_layout(
&self,
version_str: &CStr,
sz_io: usize,
sz_style: usize,
sz_vec2: usize,
sz_vec4: usize,
sz_drawvert: usize
) -> bool
pub fn drag_float(
&self,
label: &CStr,
v: &mut f32,
v_speed: f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn drag_float2(
&self,
label: &CStr,
v: &mut [f32; 2],
v_speed: f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn drag_float3(
&self,
label: &CStr,
v: &mut [f32; 3],
v_speed: f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn drag_float4(
&self,
label: &CStr,
v: &mut [f32; 4],
v_speed: f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn drag_float_range2(
&self,
label: &CStr,
v_current_min: &mut f32,
v_current_max: &mut f32,
v_speed: f32,
v_min: f32,
v_max: f32,
format: &CStr,
format_max: &CStr,
power: f32
) -> bool
pub fn drag_int(
&self,
label: &CStr,
v: &mut i32,
v_speed: f32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn drag_int2(
&self,
label: &CStr,
v: &mut [i32; 2],
v_speed: f32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn drag_int3(
&self,
label: &CStr,
v: &mut [i32; 3],
v_speed: f32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn drag_int4(
&self,
label: &CStr,
v: &mut [i32; 4],
v_speed: f32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn drag_int_range2(
&self,
label: &CStr,
v_current_min: &mut i32,
v_current_max: &mut i32,
v_speed: f32,
v_min: i32,
v_max: i32,
format: &CStr,
format_max: &CStr
) -> bool
pub fn dummy(&self, size: ImVec2)
pub fn end(&self)
pub fn end_child(&self)
pub fn end_child_frame(&self)
pub fn end_combo(&self)
pub fn end_drag_drop_source(&self)
pub fn end_drag_drop_target(&self)
pub fn end_frame(&self)
pub fn end_group(&self)
pub fn end_popup(&self)
pub fn end_tooltip(&self)
pub fn get_clipboard_text(&self) -> String
pub fn get_color_u32(&self, idx: ImGuiCol, alpha_mul: f32) -> u32
pub fn get_color_u32_vec4(&self, col: ImVec4) -> u32
pub fn get_color_u32_u32(&self, col: u32) -> u32
pub fn get_column_index(&self) -> i32
pub fn get_column_offset(&self, column_index: i32) -> f32
pub fn get_column_width(&self, column_index: i32) -> f32
pub fn get_columns_count(&self) -> i32
pub fn get_content_region_avail(&self) -> ImVec2
pub fn get_content_region_avail_width(&self) -> f32
pub fn get_content_region_max(&self) -> ImVec2
pub fn get_cursor_pos(&self) -> ImVec2
pub fn get_cursor_pos_x(&self) -> f32
pub fn get_cursor_pos_y(&self) -> f32
pub fn get_cursor_screen_pos(&self) -> ImVec2
pub fn get_cursor_start_pos(&self) -> ImVec2
pub fn get_font_size(&self) -> f32
pub fn get_font_tex_uv_white_pixel(&self) -> ImVec2
pub fn get_frame_count(&self) -> i32
pub fn get_frame_height(&self) -> f32
pub fn get_frame_height_with_spacing(&self) -> f32
pub fn get_id_str(&self, str_id: &CStr) -> ImGuiID
pub fn get_id_range(&self, str_id_begin: &CStr, str_id_end: &CStr) -> ImGuiID
pub fn get_item_rect_max(&self) -> ImVec2
pub fn get_item_rect_min(&self) -> ImVec2
pub fn get_item_rect_size(&self) -> ImVec2
pub fn get_key_index(&self, imgui_key: ImGuiKey) -> i32
pub fn get_key_pressed_amount(
&self,
key_index: i32,
repeat_delay: f32,
rate: f32
) -> i32
pub fn get_mouse_cursor(&self) -> ImGuiMouseCursor
pub fn get_mouse_drag_delta(&self, button: i32, lock_threshold: f32) -> ImVec2
pub fn get_mouse_pos(&self) -> ImVec2
pub fn get_mouse_pos_on_opening_current_popup(&self) -> ImVec2
pub fn get_scroll_max_x(&self) -> f32
pub fn get_scroll_max_y(&self) -> f32
pub fn get_scroll_x(&self) -> f32
pub fn get_scroll_y(&self) -> f32
pub fn get_style_color_name(&self, idx: ImGuiCol) -> String
pub fn get_text_line_height(&self) -> f32
pub fn get_text_line_height_with_spacing(&self) -> f32
pub fn get_time(&self) -> f64
pub fn get_tree_node_to_label_spacing(&self) -> f32
pub fn get_version(&self) -> String
pub fn get_window_content_region_max(&self) -> ImVec2
pub fn get_window_content_region_min(&self) -> ImVec2
pub fn get_window_content_region_width(&self) -> f32
pub fn get_window_height(&self) -> f32
pub fn get_window_pos(&self) -> ImVec2
pub fn get_window_size(&self) -> ImVec2
pub fn get_window_width(&self) -> f32
pub fn image(
&self,
user_texture_id: ImTextureID,
size: ImVec2,
uv0: ImVec2,
uv1: ImVec2,
tint_col: ImVec4,
border_col: ImVec4
)
pub fn indent(&self, indent_w: f32)
pub fn input_double(
&self,
label: &CStr,
v: &mut f64,
step: f64,
step_fast: f64,
format: &CStr,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_float(
&self,
label: &CStr,
v: &mut f32,
step: f32,
step_fast: f32,
format: &CStr,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_float2(
&self,
label: &CStr,
v: &mut [f32; 2],
format: &CStr,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_float3(
&self,
label: &CStr,
v: &mut [f32; 3],
format: &CStr,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_float4(
&self,
label: &CStr,
v: &mut [f32; 4],
format: &CStr,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_int(
&self,
label: &CStr,
v: &mut i32,
step: i32,
step_fast: i32,
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_int2(
&self,
label: &CStr,
v: &mut [i32; 2],
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_int3(
&self,
label: &CStr,
v: &mut [i32; 3],
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn input_int4(
&self,
label: &CStr,
v: &mut [i32; 4],
extra_flags: ImGuiInputTextFlags
) -> bool
pub fn is_any_item_active(&self) -> bool
pub fn is_any_item_focused(&self) -> bool
pub fn is_any_item_hovered(&self) -> bool
pub fn is_any_mouse_down(&self) -> bool
pub fn is_item_active(&self) -> bool
pub fn is_item_clicked(&self, mouse_button: i32) -> bool
pub fn is_item_deactivated(&self) -> bool
pub fn is_item_deactivated_after_edit(&self) -> bool
pub fn is_item_edited(&self) -> bool
pub fn is_item_focused(&self) -> bool
pub fn is_item_hovered(&self, flags: ImGuiHoveredFlags) -> bool
pub fn is_item_visible(&self) -> bool
pub fn is_key_down(&self, user_key_index: i32) -> bool
pub fn is_key_pressed(&self, user_key_index: i32, repeat: bool) -> bool
pub fn is_key_released(&self, user_key_index: i32) -> bool
pub fn is_mouse_clicked(&self, button: i32, repeat: bool) -> bool
pub fn is_mouse_double_clicked(&self, button: i32) -> bool
pub fn is_mouse_down(&self, button: i32) -> bool
pub fn is_mouse_dragging(&self, button: i32, lock_threshold: f32) -> bool
pub fn is_mouse_hovering_rect(
&self,
r_min: ImVec2,
r_max: ImVec2,
clip: bool
) -> bool
pub fn is_mouse_pos_valid(&self, mouse_pos: &ImVec2) -> bool
pub fn is_mouse_released(&self, button: i32) -> bool
pub fn is_popup_open(&self, str_id: &CStr) -> bool
pub fn is_rect_visible(&self, size: ImVec2) -> bool
pub fn is_rect_visible_vec2(&self, rect_min: ImVec2, rect_max: ImVec2) -> bool
pub fn is_window_appearing(&self) -> bool
pub fn is_window_collapsed(&self) -> bool
pub fn is_window_focused(&self, flags: ImGuiFocusedFlags) -> bool
pub fn is_window_hovered(&self, flags: ImGuiHoveredFlags) -> bool
pub fn label_text(&self, label: &CStr, fmtstr: &CStr)
pub fn list_box_header_vec2(&self, label: &CStr, size: ImVec2) -> bool
pub fn list_box_header_int(
&self,
label: &CStr,
items_count: i32,
height_in_items: i32
) -> bool
pub fn load_ini_settings_from_disk(&self, ini_filename: &CStr)
pub fn load_ini_settings_from_memory(&self, ini_data: &CStr, ini_size: usize)
pub fn log_finish(&self)
pub fn log_text(&self, fmtstr: &CStr)
pub fn log_to_clipboard(&self, max_depth: i32)
pub fn log_to_file(&self, max_depth: i32, filename: &CStr)
pub fn log_to_tty(&self, max_depth: i32)
pub fn new_frame(&self)
pub fn new_line(&self)
pub fn next_column(&self)
pub fn open_popup(&self, str_id: &CStr)
pub fn open_popup_on_item_click(&self, str_id: &CStr, mouse_button: i32) -> bool
pub fn plot_histogram_float_ptr(
&self,
label: &CStr,
values: &f32,
values_count: i32,
values_offset: i32,
overlay_text: &CStr,
scale_min: f32,
scale_max: f32,
graph_size: ImVec2,
stride: i32
)
pub fn plot_lines(
&self,
label: &CStr,
values: &f32,
values_count: i32,
values_offset: i32,
overlay_text: &CStr,
scale_min: f32,
scale_max: f32,
graph_size: ImVec2,
stride: i32
)
pub fn pop_allow_keyboard_focus(&self)
pub fn pop_clip_rect(&self)
pub fn pop_font(&self)
pub fn pop_id(&self)
pub fn pop_item_width(&self)
pub fn pop_style_color(&self, count: i32)
pub fn pop_style_var(&self, count: i32)
pub fn pop_text_wrap_pos(&self)
pub fn progress_bar(&self, fraction: f32, size_arg: ImVec2, overlay: &CStr)
pub fn push_allow_keyboard_focus(&self, allow_keyboard_focus: bool)
pub fn push_clip_rect(
&self,
clip_rect_min: ImVec2,
clip_rect_max: ImVec2,
intersect_with_current_clip_rect: bool
)
pub fn push_id_str(&self, str_id: &CStr)
pub fn push_id_range(&self, str_id_begin: &CStr, str_id_end: &CStr)
pub fn push_id_int(&self, int_id: i32)
pub fn push_item_width(&self, item_width: f32)
pub fn push_style_color_u32(&self, idx: ImGuiCol, col: u32)
pub fn push_style_color(&self, idx: ImGuiCol, col: ImVec4)
pub fn push_style_var_float(&self, idx: ImGuiStyleVar, val: f32)
pub fn push_style_var_vec2(&self, idx: ImGuiStyleVar, val: ImVec2)
pub fn push_text_wrap_pos(&self, wrap_pos_x: f32)
pub fn render(&self)
pub fn reset_mouse_drag_delta(&self, button: i32)
pub fn same_line(&self, pos_x: f32, spacing_w: f32)
pub fn save_ini_settings_to_disk(&self, ini_filename: &CStr)
pub fn save_ini_settings_to_memory(&self, out_ini_size: &mut usize) -> String
pub fn selectable(
&self,
label: &CStr,
selected: bool,
flags: ImGuiSelectableFlags,
size: ImVec2
) -> bool
pub fn selectable_bool_ptr(
&self,
label: &CStr,
p_selected: &mut bool,
flags: ImGuiSelectableFlags,
size: ImVec2
) -> bool
pub fn separator(&self)
pub fn set_clipboard_text(&self, text: &CStr)
pub fn set_color_edit_options(&self, flags: ImGuiColorEditFlags)
pub fn set_column_offset(&self, column_index: i32, offset_x: f32)
pub fn set_column_width(&self, column_index: i32, width: f32)
pub fn set_cursor_pos(&self, local_pos: ImVec2)
pub fn set_cursor_pos_x(&self, x: f32)
pub fn set_cursor_pos_y(&self, y: f32)
pub fn set_cursor_screen_pos(&self, screen_pos: ImVec2)
pub fn set_item_allow_overlap(&self)
pub fn set_item_default_focus(&self)
pub fn set_keyboard_focus_here(&self, offset: i32)
pub fn set_mouse_cursor(&self, _type: ImGuiMouseCursor)
pub fn set_next_tree_node_open(&self, is_open: bool, cond: ImGuiCond)
pub fn set_next_window_bg_alpha(&self, alpha: f32)
pub fn set_next_window_collapsed(&self, collapsed: bool, cond: ImGuiCond)
pub fn set_next_window_content_size(&self, size: ImVec2)
pub fn set_next_window_focus(&self)
pub fn set_next_window_pos(&self, pos: ImVec2, cond: ImGuiCond, pivot: ImVec2)
pub fn set_next_window_size(&self, size: ImVec2, cond: ImGuiCond)
pub fn set_scroll_from_pos_y(&self, pos_y: f32, center_y_ratio: f32)
pub fn set_scroll_here_y(&self, center_y_ratio: f32)
pub fn set_scroll_x(&self, scroll_x: f32)
pub fn set_scroll_y(&self, scroll_y: f32)
pub fn set_tooltip(&self, fmtstr: &CStr)
pub fn set_window_collapsed_bool(&self, collapsed: bool, cond: ImGuiCond)
pub fn set_window_collapsed_str(
&self,
name: &CStr,
collapsed: bool,
cond: ImGuiCond
)
pub fn set_window_focus(&self)
pub fn set_window_focus_str(&self, name: &CStr)
pub fn set_window_font_scale(&self, scale: f32)
pub fn set_window_pos_vec2(&self, pos: ImVec2, cond: ImGuiCond)
pub fn set_window_pos_str(&self, name: &CStr, pos: ImVec2, cond: ImGuiCond)
pub fn set_window_size_vec2(&self, size: ImVec2, cond: ImGuiCond)
pub fn set_window_size_str(&self, name: &CStr, size: ImVec2, cond: ImGuiCond)
pub fn show_about_window(&self, p_open: &mut bool)
pub fn show_demo_window(&self, p_open: &mut bool)
pub fn show_font_selector(&self, label: &CStr)
pub fn show_metrics_window(&self, p_open: &mut bool)
pub fn show_style_selector(&self, label: &CStr) -> bool
pub fn show_user_guide(&self)
pub fn slider_angle(
&self,
label: &CStr,
v_rad: &mut f32,
v_degrees_min: f32,
v_degrees_max: f32,
format: &CStr
) -> bool
pub fn slider_float(
&self,
label: &CStr,
v: &mut f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn slider_float2(
&self,
label: &CStr,
v: &mut [f32; 2],
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn slider_float3(
&self,
label: &CStr,
v: &mut [f32; 3],
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn slider_float4(
&self,
label: &CStr,
v: &mut [f32; 4],
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn slider_int(
&self,
label: &CStr,
v: &mut i32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn slider_int2(
&self,
label: &CStr,
v: &mut [i32; 2],
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn slider_int3(
&self,
label: &CStr,
v: &mut [i32; 3],
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn slider_int4(
&self,
label: &CStr,
v: &mut [i32; 4],
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn spacing(&self)
pub fn text(&self, fmtstr: &CStr)
pub fn text_colored(&self, col: ImVec4, fmtstr: &CStr)
pub fn text_disabled(&self, fmtstr: &CStr)
pub fn text_unformatted(&self, text: &CStr, text_end: &CStr)
pub fn text_wrapped(&self, fmtstr: &CStr)
pub fn tree_advance_to_label_pos(&self)
pub fn tree_node_str(&self, label: &CStr) -> bool
pub fn tree_node_str_str(&self, str_id: &CStr, fmtstr: &CStr) -> bool
pub fn tree_node_ex_str(&self, label: &CStr, flags: ImGuiTreeNodeFlags) -> bool
pub fn tree_node_ex_str_str(
&self,
str_id: &CStr,
flags: ImGuiTreeNodeFlags,
fmtstr: &CStr
) -> bool
pub fn tree_pop(&self)
pub fn tree_push_str(&self, str_id: &CStr)
pub fn unindent(&self, indent_w: f32)
pub fn v_slider_float(
&self,
label: &CStr,
size: ImVec2,
v: &mut f32,
v_min: f32,
v_max: f32,
format: &CStr,
power: f32
) -> bool
pub fn v_slider_int(
&self,
label: &CStr,
size: ImVec2,
v: &mut i32,
v_min: i32,
v_max: i32,
format: &CStr
) -> bool
pub fn value_bool(&self, prefix: &CStr, b: bool)
pub fn value_int(&self, prefix: &CStr, v: i32)
pub fn value_uint(&self, prefix: &CStr, v: u32)
pub fn value_float(&self, prefix: &CStr, v: f32, float_format: &CStr)
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ImGui
impl !Send for ImGui
impl !Sync for ImGui
impl Unpin for ImGui
impl UnwindSafe for ImGui
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more