1 // Definitions common to multiple window backends.
2 // Windows.slate can use any plugin that conforms to this
3 // and is named "slate-windows".
7 # define EXPORT __declspec(dllexport)
14 typedef intptr_t slate_int_t
;
18 repaintWindowMessageType
= 0,
19 positionWindowMessageType
= 1,
20 closeWindowMessageType
= 2,
23 leftDownMessageType
= 100,
24 leftUpMessageType
= 101,
25 leftDoubleClickMessageType
= 102,
27 rightDownMessageType
= 110,
28 rightUpMessageType
= 111,
29 rightDoubleClickMessageType
= 112,
31 middleDownMessageType
= 120,
32 middleUpMessageType
= 121,
33 middleDoubleClickMessageType
= 122,
35 x1DownMessageType
= 130,
36 x1UpMessageType
= 131,
37 x1DoubleClickMessageType
= 132,
39 x2DownMessageType
= 140,
40 x2UpMessageType
= 141,
41 x2DoubleClickMessageType
= 142,
43 mouseMoveMessageType
= 150,
44 mouseEnterMessageType
= 151,
45 mouseLeaveMessageType
= 152,
47 keyDownMessageType
= 160,
48 keyUpMessageType
= 161,
49 charMessageType
= 162,
54 leftShiftKeyDown
= 0x00000001,
55 rightShiftKeyDown
= 0x00000002,
56 leftCtrlKeyDown
= 0x00000004,
57 rightCtrlKeyDown
= 0x00000008,
58 leftAltKeyDown
= 0x00000010,
59 rightAltKeyDown
= 0x00000020,
60 /*fixme.. i changed this because ISO C restricts enum to int values*/
61 leftButtonDown
= 0x01000000,
62 middleButtonDown
= 0x02000000,
63 rightButtonDown
= 0x04000000,
64 x1ButtonDown
= 0x08000000,
65 x2ButtonDown
= 0x09000000,
69 EXPORT
void shutdown();
70 EXPORT Window
*createWindow(slate_int_t width
, slate_int_t height
);
71 EXPORT slate_int_t
haveEvent();
72 EXPORT slate_int_t
waitForEvent();
73 EXPORT
void popEvent();
74 EXPORT slate_int_t
getEventType();
75 EXPORT Window
*getEventWindow();
76 EXPORT slate_int_t
getEventMouseMotionX();
77 EXPORT slate_int_t
getEventMouseMotionY();
78 EXPORT slate_int_t
getEventMouseButtonX();
79 EXPORT slate_int_t
getEventMouseButtonY();
80 EXPORT slate_int_t
getKeyboardKey();
81 EXPORT slate_int_t
getKeyboardMod();
83 Window
*dest
, slate_int_t destX
, slate_int_t destY
, slate_int_t destWidth
, slate_int_t destHeight
,
84 void *src
, slate_int_t srcX
, slate_int_t srcY
, slate_int_t srcWidth
, slate_int_t srcHeight
, slate_int_t srcStride
);