MCPcopy Create free account
hub / github.com/cococry/leif / div_container

Function div_container

leif.c:660–684  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

658
659}
660LfClickableItemState div_container(vec2s pos, vec2s size, LfUIElementProps props, LfColor color, float border_width, bool click_color, bool hover_color) {
661 if(item_should_cull((LfAABB){.pos = pos, .size = size})) {
662 return LF_IDLE;
663 }
664
665 LfColor hover_color_rgb = hover_color ? (props.hover_color.a == 0.0f ? lf_color_brightness(color, 1.5) : props.hover_color) : color;
666 LfColor held_color_rgb = click_color ? lf_color_brightness(color, 1.8) : color;
667
668 bool is_hovered = lf_hovered(pos, size);
669 if(is_hovered && lf_mouse_button_is_released(GLFW_MOUSE_BUTTON_LEFT)) {
670 lf_rect_render(pos, size, hover_color_rgb, props.border_color, border_width, props.corner_radius);
671 return LF_CLICKED;
672 }
673 if(is_hovered && lf_mouse_button_is_down(GLFW_MOUSE_BUTTON_LEFT)) {
674 lf_rect_render(pos, size, held_color_rgb, props.border_color, border_width, props.corner_radius);
675 return LF_HELD;
676 }
677 if(is_hovered && (!lf_mouse_button_went_down(GLFW_MOUSE_BUTTON_LEFT) && !lf_mouse_button_is_down(GLFW_MOUSE_BUTTON_LEFT))) {
678 lf_rect_render(pos, size, hover_color ? hover_color_rgb : color, props.border_color, border_width, props.corner_radius);
679 return LF_HOVERED;
680 }
681 lf_rect_render(pos, size, color, props.border_color, border_width, props.corner_radius);
682 return LF_IDLE;
683
684}
685
686void next_line_on_overflow(vec2s size, float xoffset) {
687 if(!state.line_overflow) return;

Callers 1

_lf_div_begin_locFunction · 0.85

Calls 7

item_should_cullFunction · 0.85
lf_color_brightnessFunction · 0.85
lf_hoveredFunction · 0.85
lf_rect_renderFunction · 0.85
lf_mouse_button_is_downFunction · 0.85

Tested by

no test coverage detected