summaryrefslogtreecommitdiff
path: root/lib/RGFW.hsc
blob: 24d3132009de435af89670df2917c6d68c78190c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
#include <bindings.dsl.h>
module RGFW where
import Foreign.Ptr
#strict_import
#include <RGFW.h>

-- | DEPRECATED, please use a CUChar instead.
#synonym_t u8 , CChar

#synonym_t RGFW_bool , CUChar

--------------------------------------------------------------------------------
-- OPAQUE TYPES
--------------------------------------------------------------------------------
#opaque_t RGFW_window

--------------------------------------------------------------------------------
-- ENUMS
--------------------------------------------------------------------------------
#synonym_t RGFW_windowFlags , CUInt
#num RGFW_windowNoBorder
#num RGFW_windowNoResize
#num RGFW_windowAllowDND
#num RGFW_windowHideMouse
#num RGFW_windowFullscreen
#num RGFW_windowTransparent
#num RGFW_windowCenter
#num RGFW_windowRawMouse
#num RGFW_windowScaleToMonitor
#num RGFW_windowHide
#num RGFW_windowMaximize
#num RGFW_windowCenterCursor
#num RGFW_windowFloating
#num RGFW_windowFocusOnShow
#num RGFW_windowMinimize
#num RGFW_windowFocus
#num RGFW_windowOpenGL
#num RGFW_windowEGL
#num RGFW_windowedFullscreen

#synonym_t RGFW_keymod , CUChar
#num RGFW_modCapsLock
#num RGFW_modNumLock
#num RGFW_modControl
#num RGFW_modAlt
#num RGFW_modShift
#num RGFW_modSuper
#num RGFW_modScrollLock

#synonym_t RGFW_key , CUChar
#num RGFW_keyNULL
#num RGFW_escape
#num RGFW_backtick
#num RGFW_0
#num RGFW_1
#num RGFW_2
#num RGFW_3
#num RGFW_4
#num RGFW_5
#num RGFW_6
#num RGFW_7
#num RGFW_8
#num RGFW_9
#num RGFW_minus
#num RGFW_equals
#num RGFW_backSpace
#num RGFW_tab
#num RGFW_space
#num RGFW_a
#num RGFW_b
#num RGFW_c
#num RGFW_d
#num RGFW_e
#num RGFW_f
#num RGFW_g
#num RGFW_h
#num RGFW_i
#num RGFW_j
#num RGFW_k
#num RGFW_l
#num RGFW_m
#num RGFW_n
#num RGFW_o
#num RGFW_p
#num RGFW_q
#num RGFW_r
#num RGFW_s
#num RGFW_t
#num RGFW_u
#num RGFW_v
#num RGFW_w
#num RGFW_x
#num RGFW_y
#num RGFW_z
#num RGFW_period
#num RGFW_comma
#num RGFW_slash
#num RGFW_bracket
#num RGFW_closeBracket
#num RGFW_semicolon
#num RGFW_apostrophe
#num RGFW_backSlash
#num RGFW_return
#num RGFW_enter
#num RGFW_delete
#num RGFW_F1
#num RGFW_F2
#num RGFW_F3
#num RGFW_F4
#num RGFW_F5
#num RGFW_F6
#num RGFW_F7
#num RGFW_F8
#num RGFW_F9
#num RGFW_F10
#num RGFW_F11
#num RGFW_F12
#num RGFW_F13
#num RGFW_F14
#num RGFW_F15
#num RGFW_F16
#num RGFW_F17
#num RGFW_F18
#num RGFW_F19
#num RGFW_F20
#num RGFW_F21
#num RGFW_F22
#num RGFW_F23
#num RGFW_F24
#num RGFW_F25
#num RGFW_capsLock
#num RGFW_shiftL
#num RGFW_controlL
#num RGFW_altL
#num RGFW_superL
#num RGFW_shiftR
#num RGFW_controlR
#num RGFW_altR
#num RGFW_superR
#num RGFW_up
#num RGFW_down
#num RGFW_left
#num RGFW_right
#num RGFW_insert
#num RGFW_menu
#num RGFW_end
#num RGFW_home
#num RGFW_pageUp
#num RGFW_pageDown
#num RGFW_numLock
#num RGFW_kpSlash
#num RGFW_kpMultiply
#num RGFW_kpPlus
#num RGFW_kpMinus
#num RGFW_kpEqual
#num RGFW_kp1
#num RGFW_kp2
#num RGFW_kp3
#num RGFW_kp4
#num RGFW_kp5
#num RGFW_kp6
#num RGFW_kp7
#num RGFW_kp8
#num RGFW_kp9
#num RGFW_kp0
#num RGFW_kpPeriod
#num RGFW_kpReturn
#num RGFW_scrollLock
#num RGFW_printScreen
#num RGFW_pause
#num RGFW_world1
#num RGFW_world2
#num RGFW_keyLast

--------------------------------------------------------------------------------
-- FUNCTIONS : WINDOWING
--------------------------------------------------------------------------------
#ccall RGFW_createWindow , CString -> CInt -> CInt -> CInt -> CInt -> CUInt -> IO (Ptr <struct RGFW_window>)
#ccall RGFW_window_shouldClose , Ptr <struct RGFW_window> -> IO CUChar
#ccall RGFW_window_swapBuffers_OpenGL , Ptr <struct RGFW_window> -> IO ()
#ccall RGFW_window_setShouldClose , Ptr <struct RGFW_window> -> CUChar -> IO ()

--------------------------------------------------------------------------------
-- FUNCTIONS : EVENTS
--------------------------------------------------------------------------------
#ccall RGFW_pollEvents , IO ()
#callback RGFW_keyfunc , Ptr <struct RGFW_window> -> CUChar -> CUChar -> CUChar -> CUChar -> CUChar -> IO ()
#ccall RGFW_setKeyCallback , <RGFW_keyfunc> -> IO <RGFW_keyfunc>