12345678910111213141516171819202122232425262728293031323334353637 |
- package sdl2
- import "core:c"
- when ODIN_OS == "windows" { foreign import lib "SDL2.lib" }
- when ODIN_OS == "linux" { foreign import lib "system:SDL2" }
- when ODIN_OS == "darwin" { foreign import lib "system:SDL2" }
- when ODIN_OS == "freebsd" { foreign import lib "system:SDL2" }
- TouchID :: distinct i64
- FingerID :: distinct i64
- TouchDeviceType :: enum c.int {
- INVALID = -1,
- DIRECT, /* touch screen with window-relative coordinates */
- INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */
- INDIRECT_RELATIVE, /* trackpad with screen cursor-relative coordinates */
- }
- Finger :: struct {
- id: FingerID,
- x: f32,
- y: f32,
- pressure: f32,
- }
- TOUCH_MOUSEID :: ~u32(0)
- MOUSE_TOUCH_ID :: TouchID(-1)
- @(default_calling_convention="c", link_prefix="SDL_")
- foreign lib {
- GetNumTouchDevices :: proc() -> c.int ---
- GetTouchDevice :: proc(index: c.int) -> TouchID ---
- GetTouchDeviceType :: proc(touchID: TouchID) -> TouchDeviceType ---
- GetNumTouchFingers :: proc(touchID: TouchID) -> c.int ---
- GetTouchFinger :: proc(touchID: TouchID, index: c.int) -> ^Finger ---
- }
|