wm.h
changeset 18 1efa34c6e1b6
parent 16 359b6e563b95
child 19 b5510d0c6d43
equal deleted inserted replaced
17:aaf520f53110 18:1efa34c6e1b6
     9 
     9 
    10 #include <X11/Xutil.h>
    10 #include <X11/Xutil.h>
    11 
    11 
    12 #define WM_PROTOCOL_DELWIN 1
    12 #define WM_PROTOCOL_DELWIN 1
    13 
    13 
       
    14 typedef struct Client Client;
       
    15 typedef struct Key Key;
       
    16 typedef enum Align Align;
       
    17 
       
    18 enum Align {
       
    19 	NORTH = 0x01,
       
    20 	EAST  = 0x02,
       
    21 	SOUTH = 0x04,
       
    22 	WEST  = 0x08,
       
    23 	NEAST = NORTH | EAST,
       
    24 	NWEST = NORTH | WEST,
       
    25 	SEAST = SOUTH | EAST,
       
    26 	SWEST = SOUTH | WEST,
       
    27 	CENTER = NEAST | SWEST
       
    28 };
       
    29 
    14 /* atoms */
    30 /* atoms */
    15 enum { WMProtocols, WMDelete, WMLast };
    31 enum { WMProtocols, WMDelete, WMLast };
    16 enum { NetSupported, NetWMName, NetLast };
    32 enum { NetSupported, NetWMName, NetLast };
    17 
    33 
    18 /* cursor */
    34 /* cursor */
    19 enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
    35 enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
    20 
    36 
    21 /* rects */
    37 /* rects */
    22 enum { RFloat, RGrid, RLast };
    38 enum { RFloat, RGrid, RLast };
    23 
       
    24 typedef struct Client Client;
       
    25 typedef struct Key Key;
       
    26 
    39 
    27 struct Client {
    40 struct Client {
    28 	char name[256];
    41 	char name[256];
    29 	char tag[256];
    42 	char tag[256];
    30 	unsigned int border;
    43 	unsigned int border;
    73 extern void unmanage(Client *c);
    86 extern void unmanage(Client *c);
    74 extern Client *getclient(Window w);
    87 extern Client *getclient(Window w);
    75 extern void focus(Client *c);
    88 extern void focus(Client *c);
    76 extern void update_name(Client *c);
    89 extern void update_name(Client *c);
    77 extern void draw_client(Client *c);
    90 extern void draw_client(Client *c);
       
    91 extern void resize(Client *c);
    78 
    92 
    79 /* event.c */
    93 /* event.c */
    80 extern unsigned int flush_events(long even_mask);
    94 extern unsigned int discard_events(long even_mask);
    81 
    95 
    82 /* key.c */
    96 /* key.c */
    83 extern void update_keys();
    97 extern void update_keys();
    84 extern void keypress(XEvent *e);
    98 extern void keypress(XEvent *e);
    85 
    99 
       
   100 /* mouse.c */
       
   101 extern void mresize(Client *c);
       
   102 extern void mmove(Client *c);
       
   103 
    86 /* wm.c */
   104 /* wm.c */
    87 extern int error_handler(Display *dpy, XErrorEvent *error);
   105 extern int error_handler(Display *dpy, XErrorEvent *error);
    88 extern void send_message(Window w, Atom a, long value);
   106 extern void send_message(Window w, Atom a, long value);
    89 extern int win_proto(Window w);
   107 extern int win_proto(Window w);