Skip to content

GuiDrawContext

Callback context typessource

-- Draw the level boundaries
set_callback(function(draw_ctx)
local xmin, ymax, xmax, ymin = get_bounds()
local sx, sy = screen_position(xmin, ymax) -- top left
local sx2, sy2 = screen_position(xmax, ymin) -- bottom right
draw_ctx:draw_rect(sx, sy, sx2, sy2, 4, 0, rgba(255, 255, 255, 255))
end, ON.GUIFRAME)

Used in register_option_callback and set_callback with ON.GUIFRAME

Methods

draw_bezier_cubic

function GuiDrawContext:draw_bezier_cubic(p1: Vec2, p2: Vec2, p3: Vec2, p4: Vec2, thickness: number, color: uColor)
p1: Vec2
p2: Vec2
p3: Vec2
p4: Vec2
thickness: number
color: uColor
source

draw_bezier_quadratic

function GuiDrawContext:draw_bezier_quadratic(p1: Vec2, p2: Vec2, p3: Vec2, thickness: number, color: uColor)
p1: Vec2
p2: Vec2
p3: Vec2
thickness: number
color: uColor
source

draw_circle

function GuiDrawContext:draw_circle(x: number, y: number, radius: number, thickness: number, color: uColor)
x: number
y: number
radius: number
thickness: number
color: uColor
source

draw_circle_filled

function GuiDrawContext:draw_circle_filled(x: number, y: number, radius: number, color: uColor)
x: number
y: number
radius: number
color: uColor
source

draw_image

function GuiDrawContext:draw_image(image: IMAGE, left: number, top: number, right: number, bottom: number, uvx1: number, uvy1: number, uvx2: number, uvy2: number, color: uColor)
image: IMAGE
left: number
top: number
right: number
bottom: number
uvx1: number
uvy1: number
uvx2: number
uvy2: number
color: uColor
function GuiDrawContext:draw_image(image: IMAGE, rect: AABB, uv_rect: AABB, color: uColor)
image: IMAGE
rect: AABB
uv_rect: AABB
color: uColor
source

draw_image_rotated

function GuiDrawContext:draw_image_rotated(image: IMAGE, left: number, top: number, right: number, bottom: number, uvx1: number, uvy1: number, uvx2: number, uvy2: number, color: uColor, angle: number, px: number, py: number)
image: IMAGE
left: number
top: number
right: number
bottom: number
uvx1: number
uvy1: number
uvx2: number
uvy2: number
color: uColor
angle: number
px: number
py: number
function GuiDrawContext:draw_image_rotated(image: IMAGE, rect: AABB, uv_rect: AABB, color: uColor, angle: number, px: number, py: number)
image: IMAGE
rect: AABB
uv_rect: AABB
color: uColor
angle: number
px: number
py: number
source

draw_layer

function GuiDrawContext:draw_layer(layer: DRAW_LAYER)
layer: DRAW_LAYER
source

draw_line

function GuiDrawContext:draw_line(x1: number, y1: number, x2: number, y2: number, thickness: number, color: uColor)
x1: number
y1: number
x2: number
y2: number
thickness: number
color: uColor
source

draw_poly

function GuiDrawContext:draw_poly(points: Vec2[], thickness: number, color: uColor)
points: Vec2[]
thickness: number
color: uColor
source

draw_poly_filled

function GuiDrawContext:draw_poly_filled(points: Vec2[], color: uColor)
points: Vec2[]
color: uColor
source

draw_rect

function GuiDrawContext:draw_rect(left: number, top: number, right: number, bottom: number, thickness: number, rounding: number, color: uColor)
left: number
top: number
right: number
bottom: number
thickness: number
rounding: number
color: uColor
function GuiDrawContext:draw_rect(rect: AABB, thickness: number, rounding: number, color: uColor)
rect: AABB
thickness: number
rounding: number
color: uColor
source

draw_rect_filled

function GuiDrawContext:draw_rect_filled(left: number, top: number, right: number, bottom: number, rounding: number, color: uColor)
left: number
top: number
right: number
bottom: number
rounding: number
color: uColor
function GuiDrawContext:draw_rect_filled(rect: AABB, rounding: number, color: uColor)
rect: AABB
rounding: number
color: uColor
source

draw_text

function GuiDrawContext:draw_text(x: number, y: number, size: number, text: string, color: uColor)
x: number
y: number
size: number
text: string
color: uColor
source

draw_triangle

function GuiDrawContext:draw_triangle(p1: Vec2, p2: Vec2, p3: Vec2, thickness: number, color: uColor)
p1: Vec2
p2: Vec2
p3: Vec2
thickness: number
color: uColor
source

draw_triangle_filled

function GuiDrawContext:draw_triangle_filled(p1: Vec2, p2: Vec2, p3: Vec2, color: uColor)
p1: Vec2
p2: Vec2
p3: Vec2
color: uColor
source

key_picker

function GuiDrawContext:key_picker(message: string, flags: KEY_TYPE): integer
message: string
flags: KEY_TYPE

Returns integer

source

win_button

function GuiDrawContext:win_button(text: string): boolean
text: string

Returns boolean

source

win_check

function GuiDrawContext:win_check(label: string, value: boolean): boolean
label: string
value: boolean

Returns boolean

source

win_combo

function GuiDrawContext:win_combo(label: string, selected: integer, opts: string): integer
label: string
selected: integer
opts: string

Returns integer

source

win_drag_float

function GuiDrawContext:win_drag_float(label: string, value: number, min: number, max: number): number
label: string
value: number
min: number
max: number

Returns number

source

win_drag_int

function GuiDrawContext:win_drag_int(label: string, value: integer, min: integer, max: integer): integer
label: string
value: integer
min: integer
max: integer

Returns integer

source

win_image

function GuiDrawContext:win_image(image: IMAGE, width: number, height: number)
image: IMAGE
width: number
height: number
source

win_imagebutton

function GuiDrawContext:win_imagebutton(label: string, image: IMAGE, width: number, height: number, uvx1: number, uvy1: number, uvx2: number, uvy2: number): boolean
label: string
image: IMAGE
width: number
height: number
uvx1: number
uvy1: number
uvx2: number
uvy2: number

Returns boolean

source

win_indent

function GuiDrawContext:win_indent(width: number)
width: number
source

win_inline

function GuiDrawContext:win_inline()
source

win_input_float

function GuiDrawContext:win_input_float(label: string, value: number): number
label: string
value: number

Returns number

source

win_input_int

function GuiDrawContext:win_input_int(label: string, value: integer): integer
label: string
value: integer

Returns integer

source

win_input_text

function GuiDrawContext:win_input_text(label: string, value: string): string
label: string
value: string

Returns string

source

win_popid

function GuiDrawContext:win_popid()
source

win_pushid

function GuiDrawContext:win_pushid(id: integer)
id: integer
function GuiDrawContext:win_pushid(id: string)
id: string
source

win_sameline

function GuiDrawContext:win_sameline(offset: number, spacing: number)
offset: number
spacing: number
source

win_section

function GuiDrawContext:win_section(title: string, callback: fun())
title: string
callback: fun()
source

win_separator

function GuiDrawContext:win_separator()
source

win_separator_text

function GuiDrawContext:win_separator_text(text: string)
text: string
source

win_slider_float

function GuiDrawContext:win_slider_float(label: string, value: number, min: number, max: number): number
label: string
value: number
min: number
max: number

Returns number

source

win_slider_int

function GuiDrawContext:win_slider_int(label: string, value: integer, min: integer, max: integer): integer
label: string
value: integer
min: integer
max: integer

Returns integer

source

win_text

function GuiDrawContext:win_text(text: string)
text: string
source

win_width

function GuiDrawContext:win_width(width: number)
width: number
source

window

function GuiDrawContext:window(title: string, x: number, y: number, w: number, h: number, movable: boolean, callback: fun(p1: GuiDrawContext?, p2: Vec2, p3: Vec2)): boolean
title: string
x: number
y: number
w: number
h: number
movable: boolean
callback: fun(p1: GuiDrawContext?, p2: Vec2, p3: Vec2)

Returns boolean

source