From d6f244f7d9f52462bafb608f23494707eeb24751 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sun, 20 Apr 2014 22:57:28 -0400 Subject: clean up the directory structure a bit --- src/window-xlib.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/window-xlib.h (limited to 'src/window-xlib.h') diff --git a/src/window-xlib.h b/src/window-xlib.h new file mode 100644 index 0000000..c7b8960 --- /dev/null +++ b/src/window-xlib.h @@ -0,0 +1,46 @@ +#ifndef _RUNES_WINDOW_XLIB_H +#define _RUNES_XLIB_H + +#include + +enum runes_atoms { + RUNES_ATOM_WM_DELETE_WINDOW, + RUNES_ATOM_NET_WM_PING, + RUNES_NUM_PROTOCOL_ATOMS, + RUNES_ATOM_NET_WM_PID = 2, + RUNES_ATOM_NET_WM_ICON_NAME, + RUNES_ATOM_NET_WM_NAME, + RUNES_ATOM_UTF8_STRING, + RUNES_ATOM_WM_PROTOCOLS, + RUNES_ATOM_RUNES_FLUSH, + RUNES_ATOM_RUNES_VISUAL_BELL, + RUNES_ATOM_RUNES_AUDIBLE_BELL, + RUNES_NUM_ATOMS +}; + +struct runes_window { + Display *dpy; + Window w; + XIC ic; + + Atom atoms[RUNES_NUM_ATOMS]; +}; + +typedef struct { + RunesLoopData data; + XEvent e; +} RunesXlibLoopData; + +void runes_window_backend_create_window(RunesTerm *t, int argc, char *argv[]); +void runes_window_backend_start_loop(RunesTerm *t); +void runes_window_backend_request_flush(RunesTerm *t); +void runes_window_backend_request_visual_bell(RunesTerm *t); +void runes_window_backend_request_audible_bell(RunesTerm *t); +void runes_window_backend_request_close(RunesTerm *t); +void runes_window_backend_get_size(RunesTerm *t, int *xpixel, int *ypixel); +void runes_window_backend_set_icon_name(RunesTerm *t, char *name, size_t len); +void runes_window_backend_set_window_title( + RunesTerm *t, char *name, size_t len); +void runes_window_backend_cleanup(RunesTerm *t); + +#endif -- cgit v1.2.3-54-g00ecf