Added a better way for drawing ui elements.
This commit is contained in:
@@ -1,11 +1,30 @@
|
||||
package gui
|
||||
|
||||
import "core:log"
|
||||
import m "../machine"
|
||||
import rl "vendor:raylib"
|
||||
|
||||
CB_PADDING :: 20
|
||||
PADDING :: 10
|
||||
|
||||
gui_control_bar :: proc(rect: rl.Rectangle, s: ^m.System) {
|
||||
rl.DrawRectangleLinesEx(rect, 1, rl.DARKGRAY)
|
||||
rl.GuiButton(rl.Rectangle{rect.x, rect.y, 100, rect.height}, "test")
|
||||
|
||||
// Small text area
|
||||
|
||||
// Control bar buttons
|
||||
btn_w : f32 = 80
|
||||
btn_h : f32 = rect.height - (PADDING * 2)
|
||||
gap : f32 = 6
|
||||
cursor : f32 = rect.x + PADDING
|
||||
|
||||
if btn(&cursor, rect, btn_h, btn_w, gap, "RUN") { log.info("RUN clicked") }
|
||||
if btn(&cursor, rect, btn_h, btn_w, gap, "PAUSE") { log.info("PAUSE clicked") }
|
||||
if btn(&cursor, rect, btn_h, btn_w, gap, "STEP") { log.info("STEP clicked") }
|
||||
if btn(&cursor, rect, btn_h, btn_w, gap, "STOP") { log.info("STOP clicked") }
|
||||
}
|
||||
|
||||
btn :: proc(cursor: ^f32, rect: rl.Rectangle, h, w, gap: f32, label: cstring) -> bool {
|
||||
r := rl.Rectangle{cursor^, rect.y + PADDING, w, h}
|
||||
cursor^ += w + gap
|
||||
return rl.GuiButton(r, label)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user