blob: c32f75b9dc6cddcedf0713f147cce7be81fe3f40 [file] [log] [blame]
#ifndef GREVENTS_H
#define GREVENTS_H
#define gr_event_none 0
#define gr_event_wait 1
#define gr_event_poll 2
#define gr_event_flush 3
#define gr_mouse_down 0x04
#define gr_mouse_move 0x08
#define gr_mouse_up 0x10
#define gr_mouse_drag 0x20
#define gr_key_down 0x40
#define gr_key_up 0x80
#define gr_event_mouse 0x3C
#define gr_event_key 0xC0
#define gr_event_type (gr_event_mouse | gr_event_key)
typedef enum grKey_
{
grKeyNone = 0,
grKeyF1,
grKeyF2,
grKeyF3,
grKeyF4,
grKeyF5,
grKeyF6,
grKeyF7,
grKeyF8,
grKeyF9,
grKeyF10,
grKeyF11,
grKeyF12,
grKeyLeft,
grKeyRight,
grKeyUp,
grKeyDown,
grKeyIns,
grKeyDel,
grKeyHome,
grKeyEnd,
grKeyPageUp,
grKeyPageDown,
grKeyEsc,
grKeyTab,
grKeyBackSpace,
grKeyReturn,
grKeyMax,
grKeyForceShort = 0x7FFF /* this forces the grKey to be stored */
/* on at least one short ! */
} grKey;
#define grKEY(c) ((grKey)(c))
#define grKeyAlt ((grKey)0x8000)
#define grKeyCtrl ((grKey)0x4000)
#define grKeyShift ((grKey)0x2000)
#define grKeyModifiers ((grKey)0xE000)
#define grKey0 grKEY('0')
#define grKey1 grKEY('1')
#define grKey2 grKEY('2')
#define grKey3 grKEY('3')
#define grKey4 grKEY('4')
#define grKey5 grKEY('5')
#define grKey6 grKEY('6')
#define grKey7 grKEY('7')
#define grKey8 grKEY('8')
#define grKey9 grKEY('9')
#define grKeyPlus grKEY('+')
#define grKeyLess grKEY('-')
#define grKeyEqual grKEY('=')
#define grKeyMult grKEY('*')
#define grKeyDollar grKEY('$')
#define grKeySmaller grKEY('<')
#define grKeyGreater grKEY('>')
#define grKeyQuestion grKEY('?')
#define grKeyComma grKEY(',')
#define grKeyDot grKEY('.')
#define grKeySemiColumn grKEY(';')
#define grKeyColumn grKEY(':')
#define grKeyDiv grKEY('/')
#define grKeyExclam grKEY('!')
#define grKeyPercent grKEY('%')
#define grKeyLeftParen grKEY('(')
#define grKeyRightParen grKEY('(')
#define grKeyAt grKEY('@')
#define grKeyUnder grKEY('_')
typedef struct grEvent_
{
int type;
grKey key;
int x, y;
} grEvent;
#endif /* GREVENTS_H */