RosettaCodeData/Task/Colour-pinstripe-Display/Lua/colour-pinstripe-display.lua
2023-07-01 13:44:08 -04:00

21 lines
614 B
Lua

local nw = require("nw")
local app = nw:app()
local cw, ch = 320, 240
local win = app:window(cw, ch, "Color Pinstripe", false)
local colors = {{0,0,0}, {1,0,0}, {0,1,0}, {0,0,1}, {1,0,1}, {0,1,1}, {1,1,0}, {1,1,1}}
local unpack = unpack or table.unpack -- polyfill 5.2 vs 5.3
function win:repaint()
local cr = win:bitmap():cairo()
local ystride = ch/4
for y = 0, ch-1, ystride do
local i, xstride = 1, y/ystride+1
for x = 0, cw-1, xstride do
cr:rectangle(x, y, xstride, ystride)
cr:rgb(unpack(colors[i]))
cr:fill()
i = (i % #colors) + 1
end
end
end
win:show()
app:run()