|
| enum class | TreeNodeFlag : unsigned {
None = 0
, DefaultOpen = 1<<0
, OpenOnArrow = 1<<1
, Leaf = 1<<2
,
Bullet = 1<<3
, DrawLinesToNodes = 1<<4
, DrawLinesFull = 1<<5
, NUM_FLAGS = 6
} |
| |
| enum class | TabItemFlag : unsigned {
None = 0
, NoReorder = 1<<0
, NoCloseButton = 1<<1
, UnsavedDocument = 1<<2
,
SetSelected = 1<<3
, NUM_FLAGS = 4
} |
| |
| enum class | MouseButton { Left
, Right
, Middle
, NUM_OPTIONS
} |
| |
| enum class | SliderFlag : unsigned {
None = 0
, Logarithmic = 1<<0
, AlwaysClamp = 1<<1
, NoInput = 1<<2
,
NUM_FLAGS = 3
} |
| |
| enum class | DataType { Float
, NUM_OPTIONS
} |
| |
| enum class | TextInputFlag : unsigned { None = 0
, ReadOnly = 1<<0
, EnterReturnsTrue = 1<<1
, NUM_FLAGS = 2
} |
| |
| enum class | ComboFlag : unsigned { None = 0
, NoArrowButton = 1<<0
, NUM_FLAGS = 1
} |
| |
| enum class | PanelFlag : unsigned {
None = 0
, NoMove = 1<<0
, NoTitleBar = 1<<1
, NoResize = 1<<2
,
NoSavedSettings = 1<<3
, NoScrollbar = 1<<4
, NoInputs = 1<<5
, NoBackground = 1<<6
,
NoCollapse = 1<<7
, NoDecoration = 1<<8
, NoDocking = 1<<9
, NoNav = 1<<10
,
MenuBar = 1<<11
, AlwaysAutoResize = 1<<12
, HorizontalScrollbar = 1<<13
, AlwaysVerticalScrollbar = 1<<14
,
NUM_FLAGS = 15
} |
| |
| enum class | ChildPanelFlag : unsigned { None = 0
, Border = 1<<0
, NUM_FLAGS = 1
} |
| |
| enum class | Conditional { Always
, Once
, Appearing
, NUM_OPTIONS
} |
| |
| enum class | HoveredFlag : unsigned {
None = 0
, AllowWhenDisabled = 1<<0
, AllowWhenBlockedByPopup = 1<<1
, AllowWhenBlockedByActiveItem = 1<<2
,
AllowWhenOverlapped = 1<<3
, DelayNormal = 1<<4
, ForTooltip = 1<<5
, RootAndChildPanels = 1<<6
,
ChildPanels = 1<<7
, NUM_FLAGS = 8
} |
| |
| enum class | ItemFlag : unsigned { None = 0
, Disabled = 1<<0
, Inputable = 1<<1
, NUM_FLAGS = 2
} |
| |
| enum class | ColorVar {
Text
, Button
, ButtonActive
, ButtonHovered
,
FrameBg
, PopupBg
, FrameBgHovered
, FrameBgActive
,
CheckMark
, SliderGrab
, PanelBg
, NUM_OPTIONS
} |
| |
| enum class | StyleVar {
Alpha
, ButtonTextAlign
, CellPadding
, DisabledAlpha
,
FramePadding
, FrameRounding
, ItemInnerSpacing
, ItemSpacing
,
TabRounding
, PanelPadding
, NUM_OPTIONS
} |
| |
| enum class | PopupFlag : unsigned { None = 0
, MouseButtonLeft = 1<<0
, MouseButtonRight = 1<<1
, NUM_FLAGS = 2
} |
| |
| enum class | TableFlag : unsigned {
None = 0
, BordersInner = 1<<0
, BordersInnerV = 1<<1
, NoSavedSettings = 1<<2
,
PadOuterX = 1<<3
, Resizable = 1<<4
, ScrollY = 1<<5
, SizingStretchProp = 1<<6
,
SizingStretchSame = 1<<7
, Sortable = 1<<8
, SortTristate = 1<<9
, NUM_FLAGS = 10
} |
| |
| enum class | SortDirection { None
, Ascending
, Descending
, NUM_OPTIONS
} |
| |
| enum class | ColumnFlag : unsigned { None = 0
, NoSort = 1<<0
, WidthStretch = 1<<1
, NUM_FLAGS = 2
} |
| |
| enum class | GizmoOperation : unsigned {
None = 0
, Translate = 1<<0
, Rotate = 1<<1
, Scale = 1<<2
,
NUM_FLAGS = 3
} |
| |
| enum class | GizmoMode { Local
, World
, NUM_OPTIONS
} |
| |
|
| void | align_text_to_frame_padding () |
| |
| void | draw_text (CStringView) |
| |
| template<typename... Args> |
| void | draw_text (CStringView fmt, Args &&... args) |
| |
| void | draw_text_disabled (CStringView) |
| |
| template<typename... Args> |
| void | draw_text_disabled (CStringView fmt, Args &&... args) |
| |
| void | draw_text_wrapped (CStringView) |
| |
| template<typename... Args> |
| void | draw_text_wrapped (CStringView fmt, Args &&... args) |
| |
| void | draw_text_bullet_pointed (CStringView) |
| |
| bool | draw_text_link (CStringView) |
| |
| void | draw_bullet_point () |
| |
| bool | draw_tree_node_ex (CStringView, TreeNodeFlags={}) |
| |
| float | get_tree_node_to_label_spacing () |
| |
| void | tree_pop () |
| |
| void | draw_progress_bar (float fraction) |
| |
| bool | begin_menu (CStringView sv, bool enabled=true) |
| |
| void | end_menu () |
| |
| bool | draw_menu_item (CStringView label, std::optional< KeyCombination > shortcut={}, bool selected=false, bool enabled=true) |
| |
| bool | draw_menu_item (CStringView label, std::optional< KeyCombination > shortcut, bool *p_selected, bool enabled=true) |
| |
| bool | begin_tab_bar (CStringView str_id) |
| |
| void | end_tab_bar () |
| |
| bool | begin_tab_item (CStringView label, bool *p_open=nullptr, TabItemFlags={}) |
| |
| void | end_tab_item () |
| |
| bool | draw_tab_item_button (CStringView label) |
| |
| void | set_num_columns (int count=1, std::optional< CStringView > id=std::nullopt, bool border=true) |
| |
| float | get_column_width (int column_index=-1) |
| |
| void | next_column () |
| |
| void | same_line (float offset_from_start_x=0.0f, float spacing=-1.0f) |
| |
| bool | is_mouse_clicked (MouseButton, bool repeat=false) |
| |
| bool | is_mouse_clicked (MouseButton, ID owner_id) |
| |
| bool | is_mouse_released (MouseButton) |
| |
| bool | is_mouse_down (MouseButton) |
| |
| bool | is_mouse_dragging (MouseButton, float lock_threshold=-1.0f) |
| |
| bool | draw_selectable (CStringView label, bool *p_selected) |
| |
| bool | draw_selectable (CStringView label, bool selected=false) |
| |
| bool | draw_checkbox (CStringView label, bool *v) |
| |
| bool | draw_float_slider (CStringView label, float *v, float v_min, float v_max, const char *format="%.3f", SliderFlags={}) |
| |
| bool | draw_scalar_input (CStringView label, DataType data_type, void *p_data, const void *p_step=nullptr, const void *p_step_fast=nullptr, const char *format=nullptr, TextInputFlags={}) |
| |
| bool | draw_int_input (CStringView label, int *v, int step=1, int step_fast=100, TextInputFlags={}) |
| |
| bool | draw_size_t_input (CStringView label, size_t *v, size_t step=1, size_t step_fast=100, TextInputFlags={}) |
| |
| bool | draw_double_input (CStringView label, double *v, double step=0.0, double step_fast=0.0, const char *format="%.6f", TextInputFlags={}) |
| |
| bool | draw_float_input (CStringView label, float *v, float step=0.0f, float step_fast=0.0f, const char *format="%.3f", TextInputFlags={}) |
| |
| bool | draw_float3_input (CStringView label, float v[3], const char *format="%.3f", TextInputFlags={}) |
| |
| bool | draw_vector3_input (CStringView label, Vector3 &v, const char *format="%.3f", TextInputFlags={}) |
| |
| bool | draw_rgb_color_editor (CStringView label, Color &color) |
| |
| bool | draw_rgba_color_editor (CStringView label, Color &color) |
| |
| bool | draw_button (CStringView label, const Vector2 &size={}) |
| |
| bool | draw_small_button (CStringView label) |
| |
| bool | draw_arrow_down_button (CStringView label) |
| |
| bool | draw_invisible_button (CStringView label, Vector2 size={}) |
| |
| bool | draw_radio_button (CStringView label, bool active) |
| |
| bool | draw_collapsing_header (CStringView label, TreeNodeFlags={}) |
| |
| void | draw_dummy (const Vector2 &size) |
| |
| void | draw_vertical_spacer (float num_lines) |
| |
| bool | begin_combobox (CStringView label, CStringView preview_value, ComboFlags={}) |
| |
| void | end_combobox () |
| |
| bool | begin_listbox (CStringView label) |
| |
| void | end_listbox () |
| |
| void | enable_dockspace_over_main_window () |
| |
| bool | begin_panel (CStringView name, bool *p_open=nullptr, PanelFlags={}) |
| |
| void | end_panel () |
| |
| bool | begin_child_panel (CStringView str_id, const Vector2 &size={}, ChildPanelFlags child_flags={}, PanelFlags panel_flags={}) |
| |
| void | end_child_panel () |
| |
| void | close_current_popup () |
| |
| void | set_tooltip (CStringView fmt,...) |
| |
| void | set_scroll_y_here () |
| |
| float | get_frame_height () |
| |
| Vector2 | get_content_region_available () |
| |
| Vector2 | get_cursor_start_panel_position () |
| |
| Vector2 | get_cursor_panel_position () |
| |
| void | set_cursor_panel_position (Vector2) |
| |
| float | get_cursor_panel_x () |
| |
| void | set_cursor_panel_x (float local_x) |
| |
| Vector2 | get_cursor_ui_position () |
| |
| void | set_cursor_ui_position (Vector2) |
| |
| void | set_next_panel_ui_position (Vector2, Conditional=Conditional::Always, Vector2 pivot={}) |
| |
| void | set_next_panel_size (Vector2 size, Conditional=Conditional::Always) |
| |
| void | set_next_panel_size_constraints (Vector2 size_min, Vector2 size_max) |
| |
| void | set_next_panel_bg_alpha (float alpha) |
| |
| bool | is_panel_hovered (HoveredFlags={}) |
| |
| void | begin_disabled (bool disabled=true) |
| |
| void | end_disabled () |
| |
| bool | begin_tooltip_nowrap () |
| |
| void | end_tooltip_nowrap () |
| |
| void | push_id (UID) |
| |
| void | push_id (int) |
| |
| template<std::integral T> |
| void | push_id (T number) |
| |
| void | push_id (std::string_view) |
| |
| void | push_id (const void *) |
| |
| void | pop_id () |
| |
| ID | get_id (std::string_view) |
| |
| void | set_next_item_size (Rect) |
| |
| bool | add_item (Rect bounds, ID) |
| |
| bool | is_item_hoverable (Rect bounds, ID) |
| |
| void | draw_separator () |
| |
| void | start_new_line () |
| |
| void | indent (float indent_w=0.0f) |
| |
| void | unindent (float indent_w=0.0f) |
| |
| void | set_keyboard_focus_here () |
| |
| bool | is_key_pressed (Key, bool repeat=true) |
| |
| bool | is_key_released (Key) |
| |
| bool | is_key_down (Key) |
| |
| Color | get_style_color (ColorVar) |
| |
| Vector2 | get_style_frame_padding () |
| |
| float | get_style_frame_border_size () |
| |
| Vector2 | get_style_panel_padding () |
| |
| Vector2 | get_style_item_spacing () |
| |
| Vector2 | get_style_item_inner_spacing () |
| |
| float | get_style_alpha () |
| |
| float | get_framerate () |
| |
| bool | wants_keyboard () |
| |
| void | push_style_var (StyleVar, Vector2) |
| |
| void | push_style_var (StyleVar, float) |
| |
| void | pop_style_var (int count=1) |
| |
| void | open_popup (CStringView str_id, PopupFlags={}) |
| |
| bool | begin_popup (CStringView str_id, PanelFlags={}) |
| |
| bool | begin_popup_context_menu (CStringView str_id={}, PopupFlags=PopupFlag::MouseButtonRight) |
| |
| bool | begin_popup_modal (CStringView name, bool *p_open=nullptr, PanelFlags={}) |
| |
| void | end_popup () |
| |
| Vector2 | get_mouse_ui_position () |
| |
| float | get_mouse_wheel_amount () |
| |
| bool | begin_menu_bar () |
| |
| void | end_menu_bar () |
| |
| void | hide_mouse_cursor () |
| |
| void | show_mouse_cursor () |
| |
| void | set_next_item_width (float item_width) |
| |
| void | set_next_item_open (bool is_open) |
| |
| void | push_item_flag (ItemFlags flags, bool enabled) |
| |
| void | pop_item_flag () |
| |
| bool | is_item_clicked (MouseButton=MouseButton::Left) |
| |
| bool | is_item_hovered (HoveredFlags={}) |
| |
| bool | is_item_deactivated_after_edit () |
| |
| Rect | get_item_ui_rect () |
| |
| Vector2 | get_item_top_left_ui_position () |
| |
| Vector2 | get_item_bottom_right_ui_position () |
| |
| bool | begin_table (CStringView str_id, int column, TableFlags={}, const Vector2 &outer_size={}, float inner_width=0.0f) |
| |
| void | table_setup_scroll_freeze (int cols, int rows) |
| |
| bool | table_column_sort_specs_are_dirty () |
| |
| std::vector< TableColumnSortSpec > | get_table_column_sort_specs () |
| |
| void | table_headers_row () |
| |
| bool | table_set_column_index (int column_n) |
| |
| void | table_next_row () |
| |
| void | table_setup_column (CStringView label, ColumnFlags={}, float init_width_or_weight=0.0f, ID=ID{}) |
| |
| void | end_table () |
| |
| void | push_style_color (ColorVar, const Color &) |
| |
| void | pop_style_color (int count=1) |
| |
| Color | get_color (ColorVar) |
| |
| float | get_text_line_height_in_current_panel () |
| |
| float | get_text_line_height_with_spacing_in_current_panel () |
| |
| float | get_font_base_size () |
| |
| float | get_font_base_size_with_spacing () |
| |
| std::optional< Texture2D > | get_font_texture () |
| |
| Vector2 | calc_text_size (CStringView text, bool hide_text_after_double_hash=false) |
| |
| Vector2 | get_panel_size () |
| |
| DrawListView | get_panel_draw_list () |
| |
| DrawListView | get_foreground_draw_list () |
| |
| void | show_demo_panel () |
| |
| void | apply_dark_theme () |
| |
| bool | update_polar_camera_from_keyboard_inputs (PolarPerspectiveCamera &, const Rect &viewport_rect, std::optional< AABB > maybe_scene_world_space_aabb) |
| |
| bool | update_polar_camera_from_all_inputs (PolarPerspectiveCamera &, const Rect &viewport_rect, std::optional< AABB > maybe_scene_world_space_aabb) |
| |
| void | update_camera_from_all_inputs (Camera &, EulerAngles &) |
| |
| Rect | get_content_region_available_ui_rect () |
| |
| void | draw_image (const Texture2D &texture, std::optional< Vector2 > dimensions=std::nullopt, const Rect ®ion_uv_coordinates=Rect::from_corners({0.0f, 0.0f}, {1.0f, 1.0f})) |
| |
| void | draw_image (const RenderTexture &) |
| |
| void | draw_image (const RenderTexture &, Vector2 dimensions) |
| |
| Vector2 | calc_button_size (CStringView) |
| |
| float | calc_button_width (CStringView) |
| |
| bool | draw_button_nobg (CStringView, Vector2 dimensions={0.0f, 0.0f}) |
| |
| bool | draw_image_button (CStringView, const Texture2D &, Vector2 dimensions, const Rect &texture_coordinates) |
| |
| bool | draw_image_button (CStringView, const Texture2D &, Vector2 dimensions) |
| |
| Rect | get_last_drawn_item_ui_rect () |
| |
| Rect | get_last_drawn_item_screen_rect () |
| |
| void | add_screenshot_annotation_to_last_drawn_item (std::string_view label) |
| |
| HittestResult | hittest_last_drawn_item () |
| |
| HittestResult | hittest_last_drawn_item (float drag_threshold) |
| |
| bool | any_of_keys_down (std::span< const Key >) |
| |
| bool | any_of_keys_down (std::initializer_list< const Key >) |
| |
| bool | any_of_keys_pressed (std::span< const Key >) |
| |
| bool | any_of_keys_pressed (std::initializer_list< const Key >) |
| |
| bool | is_ctrl_down () |
| |
| bool | is_ctrl_or_super_down () |
| |
| bool | is_shift_down () |
| |
| bool | is_alt_down () |
| |
| bool | is_mouse_released_without_dragging (MouseButton) |
| |
| bool | is_mouse_released_without_dragging (MouseButton, float drag_threshold) |
| |
| bool | is_mouse_dragging_with_any_button_down () |
| |
| void | begin_tooltip (std::optional< float > wrap_width=std::nullopt) |
| |
| void | end_tooltip (std::optional< float > wrap_width=std::nullopt) |
| |
| void | draw_tooltip_header_text (CStringView) |
| |
| void | draw_tooltip_description_spacer () |
| |
| void | draw_tooltip_description_text (CStringView) |
| |
| void | draw_tooltip_body_only (CStringView) |
| |
| void | draw_tooltip_body_only_if_item_hovered (CStringView, HoveredFlags=HoveredFlag::ForTooltip) |
| |
| void | draw_tooltip (CStringView header, CStringView description={}) |
| |
| void | draw_tooltip_if_item_hovered (CStringView header, CStringView description={}, HoveredFlags=HoveredFlag::ForTooltip) |
| |
| void | draw_help_marker (CStringView header, CStringView description) |
| |
| void | draw_help_marker (CStringView) |
| |
| bool | draw_string_input (CStringView label, std::string &edited_string, TextInputFlags={}) |
| |
| bool | draw_string_input_with_hint (CStringView label, CStringView hint, std::string &edited_string, TextInputFlags={}) |
| |
| bool | draw_float_meters_input (CStringView label, float &v, float step=0.0f, float step_fast=0.0f, TextInputFlags={}) |
| |
| bool | draw_float3_meters_input (CStringView label, Vector3 &, TextInputFlags={}) |
| |
| bool | draw_float_meters_slider (CStringView label, float &v, float v_min, float v_max, SliderFlags flags={}) |
| |
| bool | draw_float_kilogram_input (CStringView label, float &v, float step=0.0f, float step_fast=0.0f, TextInputFlags={}) |
| |
| bool | draw_angle_input (CStringView label, Radians &v) |
| |
| bool | draw_angle3_input (CStringView label, Vector< Radians, 3 > &, CStringView format="%.3f") |
| |
| bool | draw_angle_slider (CStringView label, Radians &v, Radians min, Radians max) |
| |
| PanelFlags | get_minimal_panel_flags () |
| |
| bool | main_window_has_workspace () |
| |
| Rect | get_main_window_workspace_ui_rect () |
| |
| Rect | get_main_window_workspace_screen_space_rect () |
| |
| Vector2 | get_main_window_workspace_dimensions () |
| |
| float | get_main_window_workspace_aspect_ratio () |
| |
| bool | is_mouse_in_main_window_workspace () |
| |
| bool | begin_main_window_top_bar (CStringView label, float height=ui::get_frame_height(), PanelFlags={PanelFlag::NoScrollbar, PanelFlag::NoSavedSettings, PanelFlag::MenuBar}) |
| |
| bool | begin_main_window_bottom_bar (CStringView) |
| |
| bool | draw_button_centered (CStringView) |
| |
| void | draw_text_centered (CStringView) |
| |
| void | draw_text_panel_centered (CStringView) |
| |
| void | draw_text_disabled_and_centered (CStringView) |
| |
| void | draw_text_disabled_and_panel_centered (CStringView) |
| |
| void | draw_text_column_centered (CStringView) |
| |
| void | draw_text_faded (CStringView) |
| |
| void | draw_text_warning (CStringView) |
| |
| bool | should_save_last_drawn_item_value () |
| |
| void | pop_item_flags (int n=1) |
| |
| bool | draw_combobox (CStringView label, size_t *current, size_t size, const std::function< CStringView(size_t)> &accessor) |
| |
| bool | draw_combobox (CStringView label, size_t *current, std::span< const CStringView > items) |
| |
| void | draw_vertical_separator () |
| |
| void | draw_same_line_with_vertical_separator () |
| |
| bool | draw_float_circular_slider (CStringView label, float *v, float min, float max, CStringView format="%.3f", SliderFlags={}) |
| |
| bool | update_polar_camera_from_mouse_inputs (PolarPerspectiveCamera &, Vector2 viewport_dimensions) |
| |
| constexpr float | gizmo_annotation_offset () |
| |
| bool | draw_gizmo_mode_selector (Gizmo &) |
| |
| bool | draw_gizmo_mode_selector (GizmoMode &) |
| |
| bool | draw_gizmo_operation_selector (Gizmo &, bool can_translate=true, bool can_rotate=true, bool can_scale=true, CStringView translate_button_text="T", CStringView rotate_button_text="R", CStringView scale_button_text="S") |
| |
| bool | draw_gizmo_operation_selector (GizmoOperation &, bool can_translate=true, bool can_rotate=true, bool can_scale=true, CStringView translate_button_text="T", CStringView rotate_button_text="R", CStringView scale_button_text="S") |
| |