ref: e3a3564affde308600a8bd534df38a0e9229efba
dir: /sample.lua/
#!/bin/ape/lua9 -- lua libdraw sample function rect(x0, y0, x1, y1) return { min = { x = x0, y = y0 }, max = { x = x1, y = y1 } } end function pt(x, y) return { x = x, y = y } end local ZP = pt(0, 0) local red = nil function eresized() draw.draw(screen, screen.r, display.white, nil, ZP) draw.draw(screen, rect(50, 150, 100, 200), display.black, nil, ZP) draw.string(screen, pt(110, 160), display.black, nil, font, 'Hello LUA') draw.line(screen, pt(50, 210), pt(150, 210), draw.Endsquare, draw.Endarrow, 1, display.black, ZP) draw.ellipse(screen, pt(300, 300), 200, 100, 2, display.black, ZP) draw.fillellipse(screen, pt(300, 300), 20, 50, red, ZP) end draw.initdraw('lua sample') draw.einit(draw.Emouse|draw.Ekeyboard) red = draw.allocimage(display, rect(0,0,1,1), screen.chan, 1, 0xFF0000FF) eresized() while true do local e, ev = draw.event() if e == draw.Emouse then --print 'Mouse event' elseif e == draw.Ekeyboard then if key.eq(ev.kbdc, 'q') or ev.kbdc == key.DEL then os.exit() end end end