#[repr(C)]pub struct UiApi {Show 119 fields
pub create: Option<unsafe extern "C" fn(a: *mut AllocatorI) -> *mut UiO>,
pub destroy: Option<unsafe extern "C" fn(i: *mut UiO)>,
pub clear: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub release_held_state: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub set_window_status: Option<unsafe extern "C" fn(ui: *mut UiO, rect: RectT, has_focus: bool, is_under_cursor: bool)>,
pub window_rect: Option<unsafe extern "C" fn(ui: *mut UiO) -> RectT>,
pub window_has_focus: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>,
pub window_is_under_cursor: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>,
pub set_feather_width: Option<unsafe extern "C" fn(ui: *mut UiO, feather_width: f32)>,
pub feather_width: Option<unsafe extern "C" fn(ui: *const UiO) -> f32>,
pub set_scroll_wheel_lines: Option<unsafe extern "C" fn(ui: *mut UiO, scroll_speed: f32)>,
pub feed_events: Option<unsafe extern "C" fn(ui: *mut UiO, events: *const InputEventT, count: u32, offset: Vec2T, scale: Vec2T)>,
pub feed_external_edit_key: Option<unsafe extern "C" fn(ui: *mut UiO, key: u32)>,
pub merge_overlay: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub begin_overlay_draw_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub end_overlay_draw_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub drawing_in_overlay: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>,
pub cursor: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiCursor>,
pub pane: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, rect: RectT)>,
pub scrollbar_x: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32) -> bool>,
pub scrollbar_y: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32) -> bool>,
pub begin_scrollview: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiScrollviewT, scroll_x: *mut f32, scroll_y: *mut f32, content_rect: *mut RectT) -> bool>,
pub end_scrollview: Option<unsafe extern "C" fn(ui: *mut UiO, scroll_x: *mut f32, scroll_y: *mut f32, can_respond_to_keyboard: bool) -> bool>,
pub label: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiLabelT) -> RectT>,
pub text: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT) -> RectT>,
pub text_metrics: Option<unsafe extern "C" fn(style: *const UiStyleT, text: *const c_char) -> RectT>,
pub wrapped_text: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT) -> RectT>,
pub link: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiLinkT) -> bool>,
pub tooltip: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, text: *const c_char)>,
pub button: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiButtonT) -> bool>,
pub pushbutton: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiButtonT, pressed: *mut bool) -> bool>,
pub checkbox: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiCheckboxT, checked: *mut bool) -> bool>,
pub radio: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiRadioT, checked: bool) -> bool>,
pub progress: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiProgressT, fraction: f32)>,
pub slider: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiSliderT, val: *mut f32, initial: *mut f32) -> UiInteractionResultT>,
pub slider_2d: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const Ui2dSliderT, val: *mut Vec2T, initial: *mut Vec2T) -> UiInteractionResultT>,
pub spinner: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiSpinnerT, val: *mut f64, initial: *mut f64) -> UiInteractionResultT>,
pub dropdown: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiDropdownT, selected: *mut u32) -> bool>,
pub textedit: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut c_char, buffer_bytes: u32) -> bool>,
pub multiline_textedit: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut *mut c_char, a: *mut AllocatorI, caret_rect: *mut RectT) -> bool>,
pub menubar: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiMenubarT) -> UiMenuResultT>,
pub menu: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiMenuT) -> UiMenuResultT>,
pub sort_menu_items: Option<unsafe extern "C" fn(items: *mut UiMenuItemT, count: u32)>,
pub tabbar: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTabbarT, selected: *mut u32) -> UiTabbarResultT>,
pub draggedtab: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiDraggedtabT)>,
pub splitter_x: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_left: *mut RectT, content_right: *mut RectT) -> bool>,
pub splitter_x_rects: Option<unsafe extern "C" fn(c: *const UiSplitterT, bias: f32, content_left: *mut RectT, content_right: *mut RectT)>,
pub splitter_y: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_top: *mut RectT, content_bottom: *mut RectT) -> bool>,
pub splitter_y_rects: Option<unsafe extern "C" fn(c: *const UiSplitterT, bias: f32, content_top: *mut RectT, content_bottom: *mut RectT)>,
pub titlebar: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiTitlebarT) -> UiTitlebarResultT>,
pub buffers: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiBuffersT>,
pub shortcuts: Option<unsafe extern "C" fn() -> *mut *mut ShortcutI>,
pub reserve_draw_memory: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub reserve_draw_memory_detailed: Option<unsafe extern "C" fn(ui: *mut UiO, primitive_bytes: u32, main_index_bytes: u32, overlay_index_bytes: u32)>,
pub make_id: Option<unsafe extern "C" fn(ui: *mut UiO) -> u64>,
pub last_id: Option<unsafe extern "C" fn(ui: *mut UiO) -> u64>,
pub create_fixed_id_range: Option<unsafe extern "C" fn(ui: *mut UiO, size: u64) -> u64>,
pub set_id: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> u64>,
pub set_cursor: Option<unsafe extern "C" fn(ui: *mut UiO, cursor: UiCursor)>,
pub is_hovering: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, clip: u32) -> bool>,
pub set_responder_chain_root: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub begin_responder_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub end_responder_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub in_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>,
pub is_first_responder: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>,
pub set_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub pop_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>,
pub responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, count: *mut u32) -> *mut u64>,
pub is_responder_chain_empty: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>,
pub focus_on_mouse_press: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, id: u64) -> bool>,
pub consume_key: Option<unsafe extern "C" fn(ui: *mut UiO, keyboard_item: u32)>,
pub begin_tab_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>,
pub end_tab_scope: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub focus_on_tab: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, id: u64) -> bool>,
pub suppress_next_tab_focus: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub clear_active: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub set_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>,
pub is_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>,
pub lost_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>,
pub clear_lost_active: Option<unsafe extern "C" fn(ui: *mut UiO)>,
pub save_active_state: Option<unsafe extern "C" fn(ui: *mut UiO, ta: *mut TempAllocatorI) -> *mut c_void>,
pub restore_active_state: Option<unsafe extern "C" fn(ui: *mut UiO, state: *const c_void)>,
pub to_draw_style: Option<unsafe extern "C" fn(ui: *mut UiO, style: *mut Draw2dStyleT, uistyle: *const UiStyleT) -> *mut Draw2dStyleT>,
pub set_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64, carray: *mut c_char)>,
pub lookup_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64) -> *mut c_char>,
pub get_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64, size: u32) -> *mut c_void>,
pub left_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub middle_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub right_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub left_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub middle_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub right_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub double_click: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub triple_click: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>,
pub get_mouse_help_texts: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiMouseHelpTextsT>,
pub theme: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiThemeT>,
pub get_theme_colors: Option<unsafe extern "C" fn(theme: UiThemeT, theme_colors: *mut *mut ColorSrgbT, a: *mut AllocatorI)>,
pub set_theme: Option<unsafe extern "C" fn(ui: *mut UiO, theme: UiThemeT)>,
pub set_theme_colors: Option<unsafe extern "C" fn(ui: *mut UiO, colors: *const ColorSrgbT)>,
pub create_custom_theme: Option<unsafe extern "C" fn(ui: *mut UiO, tt: *mut TheTruthO) -> UiThemeT>,
pub set_parent_ui: Option<unsafe extern "C" fn(ui: *mut UiO, parent_ui: *mut UiO)>,
pub fork: Option<unsafe extern "C" fn(main: *mut UiO) -> *mut UiO>,
pub join: Option<unsafe extern "C" fn(main: *mut UiO, fork: *mut UiO)>,
pub merge_render_buffers: Option<unsafe extern "C" fn(main: *mut UiO, fork: *mut UiO)>,
pub main_ui: Option<unsafe extern "C" fn(ui: *const UiO) -> *mut UiO>,
pub add_font: Option<unsafe extern "C" fn(ui: *mut UiO, font_id: StrhashT, size: u32, font: *const FontT) -> *const Draw2dFontT>,
pub font: Option<unsafe extern "C" fn(ui: *mut UiO, font_id: StrhashT, size: u32) -> UiFontT>,
pub default_style: Option<unsafe extern "C" fn(ui: *const UiO) -> UiStyleT>,
pub create_truth_types: Option<unsafe extern "C" fn(tt: *mut TheTruthO)>,
pub register_control: Option<unsafe extern "C" fn(ui: *mut UiO, role: StrhashT, title: *const c_char, rect: RectT)>,
pub find_control: Option<unsafe extern "C" fn(ui: *mut UiO, role: StrhashT, title: *const c_char) -> RectT>,
pub automation_controls: Option<unsafe extern "C" fn(ui: *mut UiO, ta: *mut TempAllocatorI) -> *mut UiAutomationControlT>,
pub mouse_move: Option<unsafe extern "C" fn(ui: *mut UiO, pos: Vec2T)>,
pub mouse_button_state: Option<unsafe extern "C" fn(ui: *mut UiO, mouse_item: u32, down: bool)>,
pub keyboard_key_state: Option<unsafe extern "C" fn(ui: *mut UiO, keyboard_item: u32, down: bool)>,
pub text_input: Option<unsafe extern "C" fn(ui: *mut UiO, text: *const c_char)>,
pub visualize_flag: Option<unsafe extern "C" fn(ui: *mut UiO, flag: UiVisualizeFlag) -> bool>,
pub set_visualize_flag: Option<unsafe extern "C" fn(ui: *mut UiO, flag: UiVisualizeFlag, on: bool)>,
pub visualize: Option<unsafe extern "C" fn(ui: *mut UiO)>,
}
Fields§
§create: Option<unsafe extern "C" fn(a: *mut AllocatorI) -> *mut UiO>
§destroy: Option<unsafe extern "C" fn(i: *mut UiO)>
§clear: Option<unsafe extern "C" fn(ui: *mut UiO)>
§release_held_state: Option<unsafe extern "C" fn(ui: *mut UiO)>
§set_window_status: Option<unsafe extern "C" fn(ui: *mut UiO, rect: RectT, has_focus: bool, is_under_cursor: bool)>
§window_rect: Option<unsafe extern "C" fn(ui: *mut UiO) -> RectT>
§window_has_focus: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>
§window_is_under_cursor: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>
§set_feather_width: Option<unsafe extern "C" fn(ui: *mut UiO, feather_width: f32)>
§feather_width: Option<unsafe extern "C" fn(ui: *const UiO) -> f32>
§set_scroll_wheel_lines: Option<unsafe extern "C" fn(ui: *mut UiO, scroll_speed: f32)>
§feed_events: Option<unsafe extern "C" fn(ui: *mut UiO, events: *const InputEventT, count: u32, offset: Vec2T, scale: Vec2T)>
§feed_external_edit_key: Option<unsafe extern "C" fn(ui: *mut UiO, key: u32)>
§merge_overlay: Option<unsafe extern "C" fn(ui: *mut UiO)>
§begin_overlay_draw_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§end_overlay_draw_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§drawing_in_overlay: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>
§cursor: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiCursor>
§pane: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, rect: RectT)>
§scrollbar_x: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32) -> bool>
§scrollbar_y: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32) -> bool>
§begin_scrollview: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiScrollviewT, scroll_x: *mut f32, scroll_y: *mut f32, content_rect: *mut RectT) -> bool>
§end_scrollview: Option<unsafe extern "C" fn(ui: *mut UiO, scroll_x: *mut f32, scroll_y: *mut f32, can_respond_to_keyboard: bool) -> bool>
§label: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiLabelT) -> RectT>
§text: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT) -> RectT>
§text_metrics: Option<unsafe extern "C" fn(style: *const UiStyleT, text: *const c_char) -> RectT>
§wrapped_text: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT) -> RectT>
§link: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiLinkT) -> bool>
§tooltip: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, text: *const c_char)>
§checkbox: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiCheckboxT, checked: *mut bool) -> bool>
§radio: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiRadioT, checked: bool) -> bool>
§progress: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiProgressT, fraction: f32)>
§slider: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiSliderT, val: *mut f32, initial: *mut f32) -> UiInteractionResultT>
§slider_2d: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const Ui2dSliderT, val: *mut Vec2T, initial: *mut Vec2T) -> UiInteractionResultT>
§spinner: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiSpinnerT, val: *mut f64, initial: *mut f64) -> UiInteractionResultT>
§dropdown: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiDropdownT, selected: *mut u32) -> bool>
§textedit: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut c_char, buffer_bytes: u32) -> bool>
§multiline_textedit: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut *mut c_char, a: *mut AllocatorI, caret_rect: *mut RectT) -> bool>
§tabbar: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiTabbarT, selected: *mut u32) -> UiTabbarResultT>
§draggedtab: Option<unsafe extern "C" fn(ui: *mut UiO, style: *const UiStyleT, c: *const UiDraggedtabT)>
§splitter_x: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_left: *mut RectT, content_right: *mut RectT) -> bool>
§splitter_x_rects: Option<unsafe extern "C" fn(c: *const UiSplitterT, bias: f32, content_left: *mut RectT, content_right: *mut RectT)>
§splitter_y: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_top: *mut RectT, content_bottom: *mut RectT) -> bool>
§splitter_y_rects: Option<unsafe extern "C" fn(c: *const UiSplitterT, bias: f32, content_top: *mut RectT, content_bottom: *mut RectT)>
§titlebar: Option<unsafe extern "C" fn(ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiTitlebarT) -> UiTitlebarResultT>
§buffers: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiBuffersT>
§shortcuts: Option<unsafe extern "C" fn() -> *mut *mut ShortcutI>
§reserve_draw_memory: Option<unsafe extern "C" fn(ui: *mut UiO)>
§reserve_draw_memory_detailed: Option<unsafe extern "C" fn(ui: *mut UiO, primitive_bytes: u32, main_index_bytes: u32, overlay_index_bytes: u32)>
§make_id: Option<unsafe extern "C" fn(ui: *mut UiO) -> u64>
§last_id: Option<unsafe extern "C" fn(ui: *mut UiO) -> u64>
§create_fixed_id_range: Option<unsafe extern "C" fn(ui: *mut UiO, size: u64) -> u64>
§set_id: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> u64>
§set_cursor: Option<unsafe extern "C" fn(ui: *mut UiO, cursor: UiCursor)>
§is_hovering: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, clip: u32) -> bool>
§set_responder_chain_root: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§begin_responder_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§end_responder_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§in_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>
§is_first_responder: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>
§set_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§pop_responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64)>
§responder_chain: Option<unsafe extern "C" fn(ui: *mut UiO, count: *mut u32) -> *mut u64>
§is_responder_chain_empty: Option<unsafe extern "C" fn(ui: *mut UiO) -> bool>
§focus_on_mouse_press: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, id: u64) -> bool>
§consume_key: Option<unsafe extern "C" fn(ui: *mut UiO, keyboard_item: u32)>
§begin_tab_scope: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64) -> bool>
§end_tab_scope: Option<unsafe extern "C" fn(ui: *mut UiO)>
§focus_on_tab: Option<unsafe extern "C" fn(ui: *mut UiO, r: RectT, id: u64) -> bool>
§suppress_next_tab_focus: Option<unsafe extern "C" fn(ui: *mut UiO)>
§clear_active: Option<unsafe extern "C" fn(ui: *mut UiO)>
§set_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>
§is_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>
§lost_active: Option<unsafe extern "C" fn(ui: *mut UiO, id: u64, active_data_format: StrhashT) -> *mut c_void>
§clear_lost_active: Option<unsafe extern "C" fn(ui: *mut UiO)>
§save_active_state: Option<unsafe extern "C" fn(ui: *mut UiO, ta: *mut TempAllocatorI) -> *mut c_void>
§restore_active_state: Option<unsafe extern "C" fn(ui: *mut UiO, state: *const c_void)>
§to_draw_style: Option<unsafe extern "C" fn(ui: *mut UiO, style: *mut Draw2dStyleT, uistyle: *const UiStyleT) -> *mut Draw2dStyleT>
§set_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64, carray: *mut c_char)>
§lookup_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64) -> *mut c_char>
§get_cache: Option<unsafe extern "C" fn(ui: *mut UiO, key: u64, size: u32) -> *mut c_void>
§left_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§middle_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§right_mouse_pressed: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§left_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§middle_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§right_mouse_released: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§double_click: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§triple_click: Option<unsafe extern "C" fn(ui: *mut UiO, help_text: *const c_char) -> bool>
§get_mouse_help_texts: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiMouseHelpTextsT>
§theme: Option<unsafe extern "C" fn(ui: *mut UiO) -> UiThemeT>
§get_theme_colors: Option<unsafe extern "C" fn(theme: UiThemeT, theme_colors: *mut *mut ColorSrgbT, a: *mut AllocatorI)>
§set_theme: Option<unsafe extern "C" fn(ui: *mut UiO, theme: UiThemeT)>
§set_theme_colors: Option<unsafe extern "C" fn(ui: *mut UiO, colors: *const ColorSrgbT)>
§create_custom_theme: Option<unsafe extern "C" fn(ui: *mut UiO, tt: *mut TheTruthO) -> UiThemeT>
§set_parent_ui: Option<unsafe extern "C" fn(ui: *mut UiO, parent_ui: *mut UiO)>
§fork: Option<unsafe extern "C" fn(main: *mut UiO) -> *mut UiO>
§join: Option<unsafe extern "C" fn(main: *mut UiO, fork: *mut UiO)>
§merge_render_buffers: Option<unsafe extern "C" fn(main: *mut UiO, fork: *mut UiO)>
§main_ui: Option<unsafe extern "C" fn(ui: *const UiO) -> *mut UiO>
§add_font: Option<unsafe extern "C" fn(ui: *mut UiO, font_id: StrhashT, size: u32, font: *const FontT) -> *const Draw2dFontT>
§font: Option<unsafe extern "C" fn(ui: *mut UiO, font_id: StrhashT, size: u32) -> UiFontT>
§default_style: Option<unsafe extern "C" fn(ui: *const UiO) -> UiStyleT>
§create_truth_types: Option<unsafe extern "C" fn(tt: *mut TheTruthO)>
§register_control: Option<unsafe extern "C" fn(ui: *mut UiO, role: StrhashT, title: *const c_char, rect: RectT)>
§find_control: Option<unsafe extern "C" fn(ui: *mut UiO, role: StrhashT, title: *const c_char) -> RectT>
§automation_controls: Option<unsafe extern "C" fn(ui: *mut UiO, ta: *mut TempAllocatorI) -> *mut UiAutomationControlT>
§mouse_move: Option<unsafe extern "C" fn(ui: *mut UiO, pos: Vec2T)>
§keyboard_key_state: Option<unsafe extern "C" fn(ui: *mut UiO, keyboard_item: u32, down: bool)>
§text_input: Option<unsafe extern "C" fn(ui: *mut UiO, text: *const c_char)>
§visualize_flag: Option<unsafe extern "C" fn(ui: *mut UiO, flag: UiVisualizeFlag) -> bool>
§set_visualize_flag: Option<unsafe extern "C" fn(ui: *mut UiO, flag: UiVisualizeFlag, on: bool)>
§visualize: Option<unsafe extern "C" fn(ui: *mut UiO)>
Implementations§
Source§impl UiApi
impl UiApi
pub unsafe fn create(&self, a: *mut AllocatorI) -> *mut UiO
pub unsafe fn destroy(&self, i: *mut UiO)
pub unsafe fn clear(&self, ui: *mut UiO)
pub unsafe fn release_held_state(&self, ui: *mut UiO)
pub unsafe fn set_window_status( &self, ui: *mut UiO, rect: RectT, has_focus: bool, is_under_cursor: bool, )
pub unsafe fn window_rect(&self, ui: *mut UiO) -> RectT
pub unsafe fn window_has_focus(&self, ui: *mut UiO) -> bool
pub unsafe fn window_is_under_cursor(&self, ui: *mut UiO) -> bool
pub unsafe fn set_feather_width(&self, ui: *mut UiO, feather_width: f32)
pub unsafe fn feather_width(&self, ui: *const UiO) -> f32
pub unsafe fn set_scroll_wheel_lines(&self, ui: *mut UiO, scroll_speed: f32)
pub unsafe fn feed_events( &self, ui: *mut UiO, events: *const InputEventT, count: u32, offset: Vec2T, scale: Vec2T, )
pub unsafe fn feed_external_edit_key(&self, ui: *mut UiO, key: u32)
pub unsafe fn merge_overlay(&self, ui: *mut UiO)
pub unsafe fn begin_overlay_draw_scope(&self, ui: *mut UiO, id: u64)
pub unsafe fn end_overlay_draw_scope(&self, ui: *mut UiO, id: u64)
pub unsafe fn drawing_in_overlay(&self, ui: *mut UiO) -> bool
pub unsafe fn cursor(&self, ui: *mut UiO) -> UiCursor
pub unsafe fn pane(&self, ui: *mut UiO, style: *const UiStyleT, rect: RectT)
pub unsafe fn scrollbar_x( &self, ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32, ) -> bool
pub unsafe fn scrollbar_y( &self, ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiScrollbarT, scroll: *mut f32, ) -> bool
pub unsafe fn begin_scrollview( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiScrollviewT, scroll_x: *mut f32, scroll_y: *mut f32, content_rect: *mut RectT, ) -> bool
pub unsafe fn end_scrollview( &self, ui: *mut UiO, scroll_x: *mut f32, scroll_y: *mut f32, can_respond_to_keyboard: bool, ) -> bool
pub unsafe fn label( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiLabelT, ) -> RectT
pub unsafe fn text( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT, ) -> RectT
pub unsafe fn text_metrics( &self, style: *const UiStyleT, text: *const c_char, ) -> RectT
pub unsafe fn wrapped_text( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiTextT, ) -> RectT
pub unsafe fn link( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiLinkT, ) -> bool
pub unsafe fn tooltip( &self, ui: *mut UiO, style: *const UiStyleT, text: *const c_char, )
pub unsafe fn checkbox( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiCheckboxT, checked: *mut bool, ) -> bool
pub unsafe fn radio( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiRadioT, checked: bool, ) -> bool
pub unsafe fn progress( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiProgressT, fraction: f32, )
pub unsafe fn slider( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiSliderT, val: *mut f32, initial: *mut f32, ) -> UiInteractionResultT
pub unsafe fn slider_2d( &self, ui: *mut UiO, style: *const UiStyleT, c: *const Ui2dSliderT, val: *mut Vec2T, initial: *mut Vec2T, ) -> UiInteractionResultT
pub unsafe fn spinner( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiSpinnerT, val: *mut f64, initial: *mut f64, ) -> UiInteractionResultT
pub unsafe fn dropdown( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiDropdownT, selected: *mut u32, ) -> bool
pub unsafe fn textedit( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut c_char, buffer_bytes: u32, ) -> bool
pub unsafe fn multiline_textedit( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiTexteditT, buffer: *mut *mut c_char, a: *mut AllocatorI, caret_rect: *mut RectT, ) -> bool
pub unsafe fn tabbar( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiTabbarT, selected: *mut u32, ) -> UiTabbarResultT
pub unsafe fn draggedtab( &self, ui: *mut UiO, style: *const UiStyleT, c: *const UiDraggedtabT, )
pub unsafe fn splitter_x( &self, ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_left: *mut RectT, content_right: *mut RectT, ) -> bool
pub unsafe fn splitter_x_rects( &self, c: *const UiSplitterT, bias: f32, content_left: *mut RectT, content_right: *mut RectT, )
pub unsafe fn splitter_y( &self, ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiSplitterT, bias: *mut f32, content_top: *mut RectT, content_bottom: *mut RectT, ) -> bool
pub unsafe fn splitter_y_rects( &self, c: *const UiSplitterT, bias: f32, content_top: *mut RectT, content_bottom: *mut RectT, )
pub unsafe fn titlebar( &self, ui: *mut UiO, uistyle: *const UiStyleT, c: *const UiTitlebarT, ) -> UiTitlebarResultT
pub unsafe fn buffers(&self, ui: *mut UiO) -> UiBuffersT
pub unsafe fn shortcuts(&self) -> *mut *mut ShortcutI
pub unsafe fn reserve_draw_memory(&self, ui: *mut UiO)
pub unsafe fn reserve_draw_memory_detailed( &self, ui: *mut UiO, primitive_bytes: u32, main_index_bytes: u32, overlay_index_bytes: u32, )
pub unsafe fn make_id(&self, ui: *mut UiO) -> u64
pub unsafe fn last_id(&self, ui: *mut UiO) -> u64
pub unsafe fn create_fixed_id_range(&self, ui: *mut UiO, size: u64) -> u64
pub unsafe fn set_id(&self, ui: *mut UiO, id: u64) -> u64
pub unsafe fn set_cursor(&self, ui: *mut UiO, cursor: UiCursor)
pub unsafe fn is_hovering(&self, ui: *mut UiO, r: RectT, clip: u32) -> bool
pub unsafe fn set_responder_chain_root(&self, ui: *mut UiO, id: u64)
pub unsafe fn begin_responder_scope(&self, ui: *mut UiO, id: u64)
pub unsafe fn end_responder_scope(&self, ui: *mut UiO, id: u64)
pub unsafe fn in_responder_chain(&self, ui: *mut UiO, id: u64) -> bool
pub unsafe fn is_first_responder(&self, ui: *mut UiO, id: u64) -> bool
pub unsafe fn set_responder_chain(&self, ui: *mut UiO, id: u64)
pub unsafe fn pop_responder_chain(&self, ui: *mut UiO, id: u64)
pub unsafe fn responder_chain(&self, ui: *mut UiO, count: *mut u32) -> *mut u64
pub unsafe fn is_responder_chain_empty(&self, ui: *mut UiO) -> bool
pub unsafe fn focus_on_mouse_press( &self, ui: *mut UiO, r: RectT, id: u64, ) -> bool
pub unsafe fn consume_key(&self, ui: *mut UiO, keyboard_item: u32)
pub unsafe fn begin_tab_scope(&self, ui: *mut UiO, id: u64) -> bool
pub unsafe fn end_tab_scope(&self, ui: *mut UiO)
pub unsafe fn focus_on_tab(&self, ui: *mut UiO, r: RectT, id: u64) -> bool
pub unsafe fn suppress_next_tab_focus(&self, ui: *mut UiO)
pub unsafe fn clear_active(&self, ui: *mut UiO)
pub unsafe fn set_active( &self, ui: *mut UiO, id: u64, active_data_format: StrhashT, ) -> *mut c_void
pub unsafe fn is_active( &self, ui: *mut UiO, id: u64, active_data_format: StrhashT, ) -> *mut c_void
pub unsafe fn lost_active( &self, ui: *mut UiO, id: u64, active_data_format: StrhashT, ) -> *mut c_void
pub unsafe fn clear_lost_active(&self, ui: *mut UiO)
pub unsafe fn save_active_state( &self, ui: *mut UiO, ta: *mut TempAllocatorI, ) -> *mut c_void
pub unsafe fn restore_active_state(&self, ui: *mut UiO, state: *const c_void)
pub unsafe fn to_draw_style( &self, ui: *mut UiO, style: *mut Draw2dStyleT, uistyle: *const UiStyleT, ) -> *mut Draw2dStyleT
pub unsafe fn set_cache(&self, ui: *mut UiO, key: u64, carray: *mut c_char)
pub unsafe fn lookup_cache(&self, ui: *mut UiO, key: u64) -> *mut c_char
pub unsafe fn get_cache(&self, ui: *mut UiO, key: u64, size: u32) -> *mut c_void
pub unsafe fn left_mouse_pressed( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn middle_mouse_pressed( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn right_mouse_pressed( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn left_mouse_released( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn middle_mouse_released( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn right_mouse_released( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn double_click( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn triple_click( &self, ui: *mut UiO, help_text: *const c_char, ) -> bool
pub unsafe fn get_mouse_help_texts(&self, ui: *mut UiO) -> UiMouseHelpTextsT
pub unsafe fn theme(&self, ui: *mut UiO) -> UiThemeT
pub unsafe fn get_theme_colors( &self, theme: UiThemeT, theme_colors: *mut *mut ColorSrgbT, a: *mut AllocatorI, )
pub unsafe fn set_theme(&self, ui: *mut UiO, theme: UiThemeT)
pub unsafe fn set_theme_colors(&self, ui: *mut UiO, colors: *const ColorSrgbT)
pub unsafe fn create_custom_theme( &self, ui: *mut UiO, tt: *mut TheTruthO, ) -> UiThemeT
pub unsafe fn set_parent_ui(&self, ui: *mut UiO, parent_ui: *mut UiO)
pub unsafe fn fork(&self, main: *mut UiO) -> *mut UiO
pub unsafe fn join(&self, main: *mut UiO, fork: *mut UiO)
pub unsafe fn merge_render_buffers(&self, main: *mut UiO, fork: *mut UiO)
pub unsafe fn main_ui(&self, ui: *const UiO) -> *mut UiO
pub unsafe fn add_font( &self, ui: *mut UiO, font_id: StrhashT, size: u32, font: *const FontT, ) -> *const Draw2dFontT
pub unsafe fn font(&self, ui: *mut UiO, font_id: StrhashT, size: u32) -> UiFontT
pub unsafe fn default_style(&self, ui: *const UiO) -> UiStyleT
pub unsafe fn create_truth_types(&self, tt: *mut TheTruthO)
pub unsafe fn register_control( &self, ui: *mut UiO, role: StrhashT, title: *const c_char, rect: RectT, )
pub unsafe fn find_control( &self, ui: *mut UiO, role: StrhashT, title: *const c_char, ) -> RectT
pub unsafe fn automation_controls( &self, ui: *mut UiO, ta: *mut TempAllocatorI, ) -> *mut UiAutomationControlT
pub unsafe fn mouse_move(&self, ui: *mut UiO, pos: Vec2T)
pub unsafe fn keyboard_key_state( &self, ui: *mut UiO, keyboard_item: u32, down: bool, )
pub unsafe fn text_input(&self, ui: *mut UiO, text: *const c_char)
pub unsafe fn visualize_flag(&self, ui: *mut UiO, flag: UiVisualizeFlag) -> bool
pub unsafe fn set_visualize_flag( &self, ui: *mut UiO, flag: UiVisualizeFlag, on: bool, )
pub unsafe fn visualize(&self, ui: *mut UiO)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for UiApi
impl RefUnwindSafe for UiApi
impl Send for UiApi
impl Sync for UiApi
impl Unpin for UiApi
impl UnwindSafe for UiApi
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more