package core:engine/component

⌘K
Ctrl+K
or
/

    Types

    button ¶

    button :: struct {
    	using _:               engine.itransform_object,
    	area:                  linalg.Area($T=f32),
    	ref_viewport:          ^engine.viewport,
    	state:                 button_state,
    	pointerIdx:            runtime.Maybe($T=u8),
    	button_up_callback:    proc(self: ^button, mousePos: [2]f32),
    	button_down_callback:  proc(self: ^button, mousePos: [2]f32),
    	button_move_callback:  proc(self: ^button, mousePos: [2]f32),
    	pointer_down_callback: proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    	pointer_up_callback:   proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    	pointer_move_callback: proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    }
    Related Procedures With Parameters
    Procedures Through `using` From iobject

    button_state ¶

    button_state :: enum int {
    	UP, 
    	OVER, 
    	DOWN, 
    }

    button_vtable ¶

    button_vtable :: struct {
    	using _:       engine.iobject_vtable,
    	button_up:     proc(self: ^button, mousePos: [2]f32),
    	button_down:   proc(self: ^button, mousePos: [2]f32),
    	button_move:   proc(self: ^button, mousePos: [2]f32),
    	pointer_down:  proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    	pointer_up:    proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    	pointer_move:  proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8),
    	__over_exists: proc(self: ^button) -> bool,
    	__down_exists: proc(self: ^button) -> bool,
    	__up_exists:   proc(self: ^button) -> bool,
    }
    Related Procedures With Parameters

    Constants

    This section is empty.

    Variables

    This section is empty.

    Procedures

    button_down ¶

    button_down :: proc(self: ^button, mousePos: [2]f32) {…}

    button_move ¶

    button_move :: proc(self: ^button, mousePos: [2]f32) {…}

    button_pointer_down ¶

    button_pointer_down :: proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8) {…}

    button_pointer_move ¶

    button_pointer_move :: proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8) {…}

    button_pointer_up ¶

    button_pointer_up :: proc(self: ^button, pointerPos: [2]f32, pointerIdx: u8) {…}

    button_unregister ¶

    button_unregister :: proc(self: ^button) {…}

    button_up ¶

    button_up :: proc(self: ^button, mousePos: [2]f32) {…}

    image_button_down_exists ¶

    image_button_down_exists :: proc(self: ^image_button) -> bool {…}

    image_button_init ¶

    image_button_init :: proc(
    	self:           ^image_button, 
    	up:             ^engine.texture = nil, 
    	over:           ^engine.texture = nil, 
    	down:           ^engine.texture = nil, 
    	colorTransform: ^engine.color_transform = nil, 
    	vtable:         ^button_vtable = nil, 
    	ref_viewport:   ^engine.viewport = nil, 
    ) {…}

    image_button_over_exists ¶

    image_button_over_exists :: proc(self: ^image_button) -> bool {…}

    image_button_up_exists ¶

    image_button_up_exists :: proc(self: ^image_button) -> bool {…}

    shape_button_down_exists ¶

    shape_button_down_exists :: proc(self: ^shape_button) -> bool {…}

    shape_button_init ¶

    shape_button_init :: proc(
    	self:           ^shape_button, 
    	up:             ^shape.shape_src = nil, 
    	over:           ^shape.shape_src = nil, 
    	down:           ^shape.shape_src = nil, 
    	colorTransform: ^engine.color_transform = nil, 
    	vtable:         ^button_vtable = nil, 
    	ref_viewport:   ^engine.viewport = nil, 
    ) {…}

    shape_button_over_exists ¶

    shape_button_over_exists :: proc(self: ^shape_button) -> bool {…}

    shape_button_up_exists ¶

    shape_button_up_exists :: proc(self: ^shape_button) -> bool {…}

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-v0.0.1 (vendor "odin") Linux_amd64 @ 2026-01-30 10:23:15.870870445 +0000 UTC