1 
2 /*
3  *  Diverse Bristol audio routines.
4  *  Copyright (c) by Nick Copeland <nickycopeland@hotmail.com> 1996,2012
5  *
6  *
7  *   This program is free software; you can redistribute it and/or modify
8  *   it under the terms of the GNU General Public License as published by
9  *   the Free Software Foundation; either version 3 of the License, or
10  *   (at your option) any later version.
11  *
12  *   This program is distributed in the hope that it will be useful,
13  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *   GNU General Public License for more details.
16  *
17  *   You should have received a copy of the GNU General Public License
18  *   along with this program; if not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef BRIGHTONEVENTS_H
23 #define BRIGHTONEVENTS_H
24 
25 #define BLASTEvent 35
26 
27 typedef struct BrightonKey {
28 	short code, mod;
29 } brightonKey;
30 
31 typedef struct BrightonCoord {
32 	short x, y;
33 } brightonCoord;
34 
35 typedef struct BrightonSize {
36 	int x, y, width, height;
37 } brightonSize;
38 
39 #define BRIGHTON_FLOAT 0
40 #define BRIGHTON_MEM 1
41 #define BRIGHTON_INT 2
42 
43 #define BRIGHTON_NONE -1
44 #define BRIGHTON_RESIZE 0
45 #define BRIGHTON_MOTION 1
46 #define BRIGHTON_BUTTONPRESS 2
47 #define BRIGHTON_BUTTONRELEASE 3
48 #define BRIGHTON_PARAMCHANGE 4
49 #define BRIGHTON_KEYPRESS 5
50 #define BRIGHTON_KEYRELEASE 6
51 #define BRIGHTON_ENTER 7
52 #define BRIGHTON_LEAVE 8
53 #define BRIGHTON_FOCUS_IN 9
54 #define BRIGHTON_FOCUS_OUT 10
55 #define BRIGHTON_CONFIGURE 22 // 9
56 #define BRIGHTON_CONFIGURE_REQ 23 // 10
57 #define BRIGHTON_EXPOSE 11
58 #define BRIGHTON_GEXPOSE 12
59 #define BRIGHTON_CLIENT 15
60 #define BRIGHTON_DESTROY 17
61 #define BRIGHTON_LINK 18 /* Patch cable control */
62 #define BRIGHTON_UNLINK 19 /* Patch cable control */
63 #define BRIGHTON_SLOW_TIMER 20 /* 500ms timer sequence with ID - flashing LED */
64 #define BRIGHTON_FAST_TIMER 21 /* ms timer sequence with ID - sequencer*/
65 
66 #define BRIGHTON_BUTTON1 1
67 #define BRIGHTON_BUTTON2 2
68 #define BRIGHTON_BUTTON3 3
69 
70 #define BRIGHTON_MOD_SHIFT 1
71 #define BRIGHTON_MOD_CONTROL 4
72 
73 /*
74  * This is an oversimplified conversion of the XEvent strcture for brighton use
75  */
76 typedef struct BrightonEvent {
77 	unsigned int flags;
78 	struct BrightonEvent *next;
79 	int wid;
80 	int type;
81 	int command;
82 	int x, y, w, h;
83 	int key;
84 	int mod;
85 	float value;
86 	int intvalue;
87 	void *m;
88 	//int ox, oy;
89 } brightonEvent;
90 
91 
92 #endif /* BRIGHTONEVENTS_H */
93 
94