wm.h
changeset 0 491f34c11291
child 2 a79188fe4a40
equal deleted inserted replaced
-1:000000000000 0:491f34c11291
       
     1 /*
       
     2  * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
       
     3  * See LICENSE file for license details.
       
     4  */
       
     5 
       
     6 #include <X11/Xlib.h>
       
     7 #include <X11/Xutil.h>
       
     8 
       
     9 /* WM atoms */
       
    10 enum { WMState, WMProtocols, WMDelete, WMLast };
       
    11 
       
    12 /* NET atoms */
       
    13 enum { NetSupported, NetWMName, NetLast };
       
    14 
       
    15 /* Cursor */
       
    16 enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
       
    17 
       
    18 /* Rects */
       
    19 enum { RFloat, RGrid, RLast };
       
    20 
       
    21 typedef struct Client Client;
       
    22 typedef struct Tag Tag;
       
    23 
       
    24 struct Client {
       
    25 	Tag *tag;
       
    26 	char name[256];
       
    27 	int proto;
       
    28 	Window win;
       
    29 	Window trans;
       
    30 	Window title;
       
    31 	GC gc;
       
    32 	XSizeHints size;
       
    33 	XRectangle r[RLast];
       
    34 	Client *next;
       
    35 	Client *tnext;
       
    36 	Client *tprev;
       
    37 };
       
    38 
       
    39 struct Tag {
       
    40 	char name[256];
       
    41 	Client *clients;
       
    42 	Client *sel;
       
    43 	XRectangle r;
       
    44 };
       
    45 
       
    46 extern Display *dpy;
       
    47 extern Window root;
       
    48 extern XRectangle rect;
       
    49 extern int screen, sel_screen;
       
    50 extern unsigned int kmask, numlock_mask;
       
    51 extern Atom wm_atom[WMLast];
       
    52 extern Atom net_atom[NetLast];
       
    53 extern Cursor cursor[CurLast];
       
    54 extern Pixmap pmap;
       
    55 
       
    56 /* wm.c */
       
    57 extern void error(char *errstr, ...);