1 /* xstroke.h - toplevel data for xstroke 2 3 Copyright 2001 Carl Worth 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2, or (at your option) 8 any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 */ 15 16 #ifndef XSTROKE_H 17 #define XSTROKE_H 18 19 /* 20 #define XSTROKE_DEBUG 21 */ 22 23 #ifdef XSTROKE_DEBUG 24 # define XSTROKE_SYNCHRONOUS 25 # define XSTROKE_NOGRAB_SERVER 26 /* 27 # define REC_PARSE_DEBUG 28 # define XSTROKE_DEBUG_ROTATION 29 */ 30 #endif 31 32 #include <X11/Xlib.h> 33 34 #include "backing.h" 35 #include "brush.h" 36 #include "control_win.h" 37 #include "rec.h" 38 #include "args.h" 39 #include "action.h" 40 #include "xlp_win.h" 41 42 struct xstroke 43 { 44 xlp_t xlp; 45 46 XModifierKeymap *modifier_map; 47 48 control_win_t control_win; 49 backing_t backing; 50 brush_t brush; 51 52 rec_t rec; 53 action_key_data_t modifiers[8]; 54 }; 55 typedef struct xstroke xstroke_t; 56 57 void xstroke_exit(xstroke_t *xstroke, int exit_code); 58 void xstroke_reload(xstroke_t *xstroke); 59 void xstroke_button_press(xstroke_t *xstroke, XButtonEvent *bev); 60 void xstroke_motion_notify(xstroke_t *xstroke, XMotionEvent *mev); 61 void xstroke_button_release(xstroke_t *xstroke, XButtonEvent *bev); 62 63 #endif /* XSTROKE_H */ 64