Window creation/X11: Difference between revisions
Content added Content deleted
(Added Kotlin) |
mNo edit summary |
||
Line 575: | Line 575: | ||
} |
} |
||
}</lang> |
}</lang> |
||
=={{header|Julia}}== |
|||
This was based on https://en.wikipedia.org/wiki/Xlib, and mostly quoted from from the XLib.jl test2() testing code function. |
|||
<lang julia> |
|||
using Xlib |
|||
function x11demo() |
|||
# Open connection to the server. |
|||
dpy = XOpenDisplay(C_NULL) |
|||
dpy == C_NULL && error("unable to open display") |
|||
scr = DefaultScreen(dpy) |
|||
# Create a window. |
|||
win = XCreateSimpleWindow(dpy, RootWindow(dpy, scr), 10, 10, 300, 100, 1, |
|||
BlackPixel(dpy, scr), WhitePixel(dpy, scr)) |
|||
# Select the kind of events we are interested in. |
|||
XSelectInput(dpy, win, ExposureMask | KeyPressMask) |
|||
# Show or in x11 terms map window. |
|||
XMapWindow(dpy, win) |
|||
# Run event loop. |
|||
evt = Ref(XEvent()) |
|||
while true |
|||
XNextEvent(dpy, evt) |
|||
# Draw or redraw the window. |
|||
if EventType(evt) == Expose |
|||
XFillRectangle(dpy, win, DefaultGC(dpy, scr), 24, 24, 16, 16) |
|||
XDrawString(dpy, win, DefaultGC(dpy, scr), 50, 50, "Hello, World! Press any key to exit.") |
|||
end |
|||
# Exit whenever a key is pressed. |
|||
if EventType(evt) == KeyPress |
|||
break |
|||
end |
|||
end |
|||
# Shutdown server connection |
|||
XCloseDisplay(dpy) |
|||
end |
|||
x11demo() |
|||
</lang> |
|||
=={{header|Kotlin}}== |
=={{header|Kotlin}}== |