2021-12-04 17:03:11 +00:00
|
|
|
#ifndef _DRW_H
|
|
|
|
#define _DRW_H
|
|
|
|
|
2022-09-09 22:02:45 +00:00
|
|
|
typedef struct {
|
|
|
|
Cursor cursor;
|
|
|
|
} Cur;
|
|
|
|
|
2018-03-14 16:44:53 +00:00
|
|
|
enum { ColFg, ColBg, ColBorder }; /* Clr scheme index */
|
2017-11-03 20:20:48 +00:00
|
|
|
typedef XftColor Clr;
|
2013-06-16 13:20:29 +00:00
|
|
|
|
2013-04-17 19:21:47 +00:00
|
|
|
typedef struct {
|
|
|
|
unsigned int w, h;
|
|
|
|
Display *dpy;
|
|
|
|
int screen;
|
2013-06-16 13:20:29 +00:00
|
|
|
Window root;
|
|
|
|
Drawable drawable;
|
2013-04-17 19:21:47 +00:00
|
|
|
GC gc;
|
2017-11-03 20:20:48 +00:00
|
|
|
Clr *scheme;
|
2013-04-17 19:21:47 +00:00
|
|
|
} Drw;
|
|
|
|
|
|
|
|
/* Drawable abstraction */
|
2021-12-04 17:05:41 +00:00
|
|
|
Drw *drw_create(Display *dpy, int screen, Window win, unsigned int w, unsigned int h);
|
2016-05-22 20:33:56 +00:00
|
|
|
void drw_free(Drw *drw);
|
2013-04-17 19:21:47 +00:00
|
|
|
|
2016-05-22 20:33:56 +00:00
|
|
|
/* Colorscheme abstraction */
|
2017-11-03 20:20:48 +00:00
|
|
|
Clr *drw_scm_create(Drw *drw, const char *clrnames[], size_t clrcount);
|
2013-06-16 13:20:29 +00:00
|
|
|
|
2022-09-09 22:02:45 +00:00
|
|
|
/* Cursor abstraction */
|
|
|
|
Cur *drw_cur_create(Drw *drw, int shape);
|
|
|
|
void drw_cur_free(Drw *drw, Cur *cursor);
|
|
|
|
|
2021-12-04 17:03:11 +00:00
|
|
|
#endif // _DRW_H
|