sdl

package
v0.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 25, 2020 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SDL_INIT_TIMER          uint32 = 0x00000001
	SDL_INIT_AUDIO          uint32 = 0x00000010
	SDL_INIT_VIDEO          uint32 = 0x00000020 /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */
	SDL_INIT_JOYSTICK       uint32 = 0x00000200 /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */
	SDL_INIT_HAPTIC         uint32 = 0x00001000
	SDL_INIT_GAMECONTROLLER uint32 = 0x00002000 /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */
	SDL_INIT_EVENTS         uint32 = 0x00004000
	SDL_INIT_NOPARACHUTE    uint32 = 0x00100000 /**< compatibility; this flag is ignored. */
	SDL_INIT_EVERYTHING     uint32 = (SDL_INIT_TIMER |
		SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC |
		SDL_INIT_GAMECONTROLLER | SDL_INIT_EVENTS)
)
View Source
const (
	SDL_FIRSTEVENT = 0 /**< Unused (do not remove) */

	/* Application events */
	SDL_QUIT = 0x100 /**< User-requested quit */

	/* These application events have special meaning on iOS see README-ios.md for details */
	SDL_APP_TERMINATING = 0x101 /**< The application is being terminated by the OS
	  Called on iOS in applicationWillTerminate()
	  Called on Android in onDestroy()
	*/
	SDL_APP_LOWMEMORY = 0x102 /**< The application is low on memory free memory if possible.
	  Called on iOS in applicationDidReceiveMemoryWarning()
	  Called on Android in onLowMemory()
	*/
	SDL_APP_WILLENTERBACKGROUND = 0x103 /**< The application is about to enter the background
	  Called on iOS in applicationWillResignActive()
	  Called on Android in onPause()
	*/
	SDL_APP_DIDENTERBACKGROUND = 0x104 /**< The application did enter the background and may not get CPU for some time
	  Called on iOS in applicationDidEnterBackground()
	  Called on Android in onPause()
	*/
	SDL_APP_WILLENTERFOREGROUND = 0x105 /**< The application is about to enter the foreground
	  Called on iOS in applicationWillEnterForeground()
	  Called on Android in onResume()
	*/
	SDL_APP_DIDENTERFOREGROUND = 0x106 /**< The application is now interactive
	  Called on iOS in applicationDidBecomeActive()
	  Called on Android in onResume()
	*/

	/* Window events */
	SDL_WINDOWEVENT = 0x200 /**< Window state change */
	SDL_SYSWMEVENT  = 0x201 /**< System specific event */

	/* Keyboard events */
	SDL_KEYDOWN       = 0x300 /**< Key pressed */
	SDL_KEYUP         = 0x301 /**< Key released */
	SDL_TEXTEDITING   = 0x302 /**< Keyboard text editing (composition) */
	SDL_TEXTINPUT     = 0x303 /**< Keyboard text input */
	SDL_KEYMAPCHANGED = 0x304 /**< Keymap changed due to a system event such as an
	  input language or keyboard layout change.
	*/

	/* Mouse events */
	SDL_MOUSEMOTION     = 0x400 /**< Mouse moved */
	SDL_MOUSEBUTTONDOWN = 0x401 /**< Mouse button pressed */
	SDL_MOUSEBUTTONUP   = 0x402 /**< Mouse button released */
	SDL_MOUSEWHEEL      = 0x403 /**< Mouse wheel motion */

	/* Joystick events */
	SDL_JOYAXISMOTION    = 0x600 /**< Joystick axis motion */
	SDL_JOYBALLMOTION    = 0x601 /**< Joystick trackball motion */
	SDL_JOYHATMOTION     = 0x602 /**< Joystick hat position change */
	SDL_JOYBUTTONDOWN    = 0x603 /**< Joystick button pressed */
	SDL_JOYBUTTONUP      = 0x604 /**< Joystick button released */
	SDL_JOYDEVICEADDED   = 0x605 /**< A new joystick has been inserted into the system */
	SDL_JOYDEVICEREMOVED = 0x606 /**< An opened joystick has been removed */

	/* Game controller events */
	SDL_CONTROLLERAXISMOTION     = 0x650 /**< Game controller axis motion */
	SDL_CONTROLLERBUTTONDOWN     = 0x651 /**< Game controller button pressed */
	SDL_CONTROLLERBUTTONUP       = 0x652 /**< Game controller button released */
	SDL_CONTROLLERDEVICEADDED    = 0x653 /**< A new Game controller has been inserted into the system */
	SDL_CONTROLLERDEVICEREMOVED  = 0x654 /**< An opened Game controller has been removed */
	SDL_CONTROLLERDEVICEREMAPPED = 0x655 /**< The controller mapping was updated */

	/* Touch events */
	SDL_FINGERDOWN   = 0x700
	SDL_FINGERUP     = 0x701
	SDL_FINGERMOTION = 0x702

	/* Gesture events */
	SDL_DOLLARGESTURE = 0x800
	SDL_DOLLARRECORD  = 0x801
	SDL_MULTIGESTURE  = 0x802

	/* Clipboard events */
	SDL_CLIPBOARDUPDATE = 0x900 /**< The clipboard changed */

	/* Drag and drop events */
	SDL_DROPFILE     = 0x1000 /**< The system requests a file open */
	SDL_DROPTEXT     = 0x1001 /**< text/plain drag-and-drop event */
	SDL_DROPBEGIN    = 0x1002 /**< A new set of drops is beginning (NULL filename) */
	SDL_DROPCOMPLETE = 0x1003 /**< Current set of drops is now complete (NULL filename) */

	/* Audio hotplug events */
	SDL_AUDIODEVICEADDED   = 0x1100 /**< A new audio device is available */
	SDL_AUDIODEVICEREMOVED = 0x1101 /**< An audio device has been removed. */

	/* Render events */
	SDL_RENDER_TARGETS_RESET = 0x2000 /**< The render targets have been reset and their contents need to be updated */
	SDL_RENDER_DEVICE_RESET  = 0x2001 /**< The device has been reset and all textures need to be recreated */

	/** Events ::SDL_USEREVENT through ::SDL_LASTEVENT are for your use
	 *  and should be allocated with SDL_RegisterEvents()
	 */
	SDL_USEREVENT = 0x8000

	/**
	 *  This last event is only for bounding internal arrays
	 */
	SDL_LASTEVENT = 0xFFFF
)

*

  • \brief The types of events that can be delivered.
View Source
const (
	SDL_PIXELTYPE_UNKNOWN  = 0
	SDL_PIXELTYPE_INDEX1   = 1
	SDL_PIXELTYPE_INDEX4   = 2
	SDL_PIXELTYPE_INDEX8   = 3
	SDL_PIXELTYPE_PACKED8  = 4
	SDL_PIXELTYPE_PACKED16 = 5
	SDL_PIXELTYPE_PACKED32 = 6
	SDL_PIXELTYPE_ARRAYU8  = 7
	SDL_PIXELTYPE_ARRAYU16 = 8
	SDL_PIXELTYPE_ARRAYU32 = 9
	SDL_PIXELTYPE_ARRAYF16 = 10
	SDL_PIXELTYPE_ARRAYF32 = 11
)

* Pixel type.

View Source
const (
	SDL_BITMAPORDER_NONE = 0
	SDL_BITMAPORDER_4321 = 1
	SDL_BITMAPORDER_1234 = 2
)

* Bitmap pixel order, high bit -> low bit.

View Source
const (
	SDL_PACKEDORDER_NONE = 0
	SDL_PACKEDORDER_XRGB = 1
	SDL_PACKEDORDER_RGBX = 2
	SDL_PACKEDORDER_ARGB = 3
	SDL_PACKEDORDER_RGBA = 4
	SDL_PACKEDORDER_XBGR = 5
	SDL_PACKEDORDER_BGRX = 6
	SDL_PACKEDORDER_ABGR = 7
	SDL_PACKEDORDER_BGRA = 8
)

* Packed component order, high bit -> low bit.

View Source
const (
	SDL_ARRAYORDER_NONE = 0
	SDL_ARRAYORDER_RGB  = 1
	SDL_ARRAYORDER_RGBA = 2
	SDL_ARRAYORDER_ARGB = 3
	SDL_ARRAYORDER_BGR  = 4
	SDL_ARRAYORDER_BGRA = 5
	SDL_ARRAYORDER_ABGR = 6
)
  • Array component order, low byte -> high byte. !!! FIXME: in 2.1, make these not overlap differently with !!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA
View Source
const (
	SDL_PACKEDLAYOUT_NONE    = 0
	SDL_PACKEDLAYOUT_332     = 1
	SDL_PACKEDLAYOUT_4444    = 2
	SDL_PACKEDLAYOUT_1555    = 3
	SDL_PACKEDLAYOUT_5551    = 4
	SDL_PACKEDLAYOUT_565     = 5
	SDL_PACKEDLAYOUT_8888    = 6
	SDL_PACKEDLAYOUT_2101010 = 7
	SDL_PACKEDLAYOUT_1010102 = 8
)

* Packed component layout.

View Source
const (
	/* !!! FIXME: change this to name = (1<<x). */
	SDL_WINDOW_FULLSCREEN         = 0x00000001 /**< fullscreen window */
	SDL_WINDOW_OPENGL             = 0x00000002 /**< window usable with OpenGL context */
	SDL_WINDOW_SHOWN              = 0x00000004 /**< window is visible */
	SDL_WINDOW_HIDDEN             = 0x00000008 /**< window is not visible */
	SDL_WINDOW_BORDERLESS         = 0x00000010 /**< no window decoration */
	SDL_WINDOW_RESIZABLE          = 0x00000020 /**< window can be resized */
	SDL_WINDOW_MINIMIZED          = 0x00000040 /**< window is minimized */
	SDL_WINDOW_MAXIMIZED          = 0x00000080 /**< window is maximized */
	SDL_WINDOW_INPUT_GRABBED      = 0x00000100 /**< window has grabbed input focus */
	SDL_WINDOW_INPUT_FOCUS        = 0x00000200 /**< window has input focus */
	SDL_WINDOW_MOUSE_FOCUS        = 0x00000400 /**< window has mouse focus */
	SDL_WINDOW_FULLSCREEN_DESKTOP = (SDL_WINDOW_FULLSCREEN | 0x00001000)
	SDL_WINDOW_FOREIGN            = 0x00000800 /**< window not created by SDL */
	SDL_WINDOW_ALLOW_HIGHDPI      = 0x00002000 /**< window should be created in high-DPI mode if supported */
	SDL_WINDOW_MOUSE_CAPTURE      = 0x00004000 /**< window has mouse captured (unrelated to INPUT_GRABBED) */
	SDL_WINDOW_ALWAYS_ON_TOP      = 0x00008000 /**< window should always be above others */
	SDL_WINDOW_SKIP_TASKBAR       = 0x00010000 /**< window should not be added to the taskbar */
	SDL_WINDOW_UTILITY            = 0x00020000 /**< window should be treated as a utility window */
	SDL_WINDOW_TOOLTIP            = 0x00040000 /**< window should be treated as a tooltip */
	SDL_WINDOW_POPUP_MENU         = 0x00080000 /**< window should be treated as a popup menu */
)

*

  • \brief The flags on a window *
  • \sa SDL_GetWindowFlags()
View Source
const (
	SDL_WINDOWPOS_UNDEFINED_MASK = 0x1FFF0000
	SDL_WINDOWPOS_UNDEFINED      = SDL_WINDOWPOS_UNDEFINED_MASK
	SDL_WINDOWPOS_CENTERED_MASK  = 0x2FFF0000
	SDL_WINDOWPOS_CENTERED       = SDL_WINDOWPOS_CENTERED_MASK
)
View Source
const SDL_TEXTEDITINGEVENT_TEXT_SIZE = 32
View Source
const SDL_TEXTINPUTEVENT_TEXT_SIZE = 32

Variables

This section is empty.

Functions

func CharPtrToString

func CharPtrToString(str *byte) string

func SDL_DestroyRenderer

func SDL_DestroyRenderer(renderer *SDL_Renderer)

func SDL_DestroyWindow

func SDL_DestroyWindow(window *SDL_Window)

func SDL_FillRect

func SDL_FillRect(dst *SDL_Surface, rect *SDL_Rect, color uint32) error

func SDL_FreeSurface

func SDL_FreeSurface(surface *SDL_Surface)

func SDL_GetError

func SDL_GetError() string

func SDL_Init

func SDL_Init(flags uint32) error

func SDL_InitSubSystem

func SDL_InitSubSystem(flags uint32) error

func SDL_PollEvent

func SDL_PollEvent(event *SDL_Event) bool

func SDL_Quit

func SDL_Quit()

func SDL_QuitSubSystem

func SDL_QuitSubSystem(flags uint32)

func SDL_RenderDrawLine

func SDL_RenderDrawLine(renderer *SDL_Renderer, x1, y1, x2, y2 int32) error

func SDL_RenderDrawRect

func SDL_RenderDrawRect(renderer *SDL_Renderer, rect *SDL_Rect) error

func SDL_RenderFillRect

func SDL_RenderFillRect(renderer *SDL_Renderer, rect *SDL_Rect) error

func SDL_WasInit

func SDL_WasInit(flags uint32) error

func StringToBytePtr

func StringToBytePtr(str string) *byte

Types

type SDL_AudioDeviceEvent

type SDL_AudioDeviceEvent struct {
	SDL_EventType        /**< ::SDL_AUDIODEVICEADDED, or ::SDL_AUDIODEVICEREMOVED */
	Timestamp     uint32 /*  */
	Which         uint32 /**< The audio device index for the ADDED event (valid until next SDL_GetNumAudioDevices() call), SDL_AudioDeviceID for the REMOVED event */
	IsCapture     uint8  /**< zero if an output device, non-zero if a capture device. */
	// contains filtered or unexported fields
}

*

  • \brief Audio device event structure (event.adevice.*)

type SDL_BlitInfo

type SDL_BlitInfo struct {
	Src       *uint8
	Src_w     int32
	Src_h     int32
	Src_pitch int32
	Src_skip  int32
	Dst       *uint8
	Dst_w     int32
	Dst_h     int32
	Dst_pitch int32
	Dst_skip  int32
	Src_fmt   *SDL_PixelFormat
	Dst_fmt   *SDL_PixelFormat
	Table     *uint8
	Flags     int32
	Colorkey  uint32
	R         uint8
	G         uint8
	B         uint8
	A         uint8
}

type SDL_BlitMap

type SDL_BlitMap struct {
	Dst      *SDL_Surface
	Identity int32
	Blit     uintptr //SDL_Blit is a function ptr
	Data     *byte
	Info     SDL_BlitInfo
}

type SDL_Color

type SDL_Color struct {
	R uint8
	G uint8
	B uint8
	A uint8
}

type SDL_CommonEvent

type SDL_CommonEvent struct {
	SDL_EventType
	Timestamp uint32
}

*

  • \brief Fields shared by every event

type SDL_ControllerAxisEvent

type SDL_ControllerAxisEvent struct {
	SDL_EventType                /**< ::SDL_CONTROLLERAXISMOTION */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Axis          uint8          /**< The joystick axis index */

	Value int16 /**< The axis value (range: -32768 to 32767) */
	// contains filtered or unexported fields
}

*

  • \brief Game controller axis motion event structure (event.caxis.*)

type SDL_ControllerButtonEvent

type SDL_ControllerButtonEvent struct {
	SDL_EventType                /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Button        uint8          /**< The controller button (SDL_GameControllerButton) */
	State         uint8          /**< ::SDL_PRESSED or ::SDL_RELEASED */
	Sat           [2]uint8       /*  */
}

*

  • \brief Game controller button event structure (event.cbutton.*)

type SDL_ControllerDeviceEvent

type SDL_ControllerDeviceEvent struct {
	SDL_EventType        /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */
	Timestamp     uint32 /*  */
	Which         int32  /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */
}

*

  • \brief Controller device event structure (event.cdevice.*)

type SDL_DisplayMode

type SDL_DisplayMode struct {
	Format       uint32
	W            int32
	H            int32
	Refresh_rate int32
	Driverdata   *byte
}

type SDL_DollarGestureEvent

type SDL_DollarGestureEvent struct {
	SDL_EventType               /**< ::SDL_DOLLARGESTURE or ::SDL_DOLLARRECORD */
	Timestamp     uint32        /*  */
	TouchId       SDL_TouchID   /**< The touch device id */
	GestureId     SDL_GestureID /*  */
	NumFingers    uint32        /*  */
	Error         float32       /*  */
	X             float32       /**< Normalized center of gesture */
	Y             float32       /**< Normalized center of gesture */
}

*

  • \brief Dollar Gesture Event (event.dgesture.*)

type SDL_DropEvent

type SDL_DropEvent struct {
	SDL_EventType        /**< ::SDL_DROPBEGIN or ::SDL_DROPFILE or ::SDL_DROPTEXT or ::SDL_DROPCOMPLETE */
	Timestamp     uint32 /*  */
	File          *byte  /**< The file name, which should be freed with SDL_free(), is NULL on begin/complete */
	WindowID      uint32 /**< The window that was dropped on, if any */
}

*

  • \brief An event used to request a file open by the system (event.drop.*)
  • This event is enabled by default, you can disable it with SDL_EventState().
  • \note If this event is enabled, you must free the filename in the event.

type SDL_Event

type SDL_Event struct {
	SDL_EventType
	// contains filtered or unexported fields
}

func (*SDL_Event) SDL_AudioDeviceEvent

func (this *SDL_Event) SDL_AudioDeviceEvent() *SDL_AudioDeviceEvent

func (*SDL_Event) SDL_CommonEvent

func (this *SDL_Event) SDL_CommonEvent() *SDL_CommonEvent

func (*SDL_Event) SDL_ControllerAxisEvent

func (this *SDL_Event) SDL_ControllerAxisEvent() *SDL_ControllerAxisEvent

func (*SDL_Event) SDL_ControllerButtonEvent

func (this *SDL_Event) SDL_ControllerButtonEvent() *SDL_ControllerButtonEvent

func (*SDL_Event) SDL_ControllerDeviceEvent

func (this *SDL_Event) SDL_ControllerDeviceEvent() *SDL_ControllerDeviceEvent

func (*SDL_Event) SDL_DollarGestureEvent

func (this *SDL_Event) SDL_DollarGestureEvent() *SDL_DollarGestureEvent

func (*SDL_Event) SDL_DropEvent

func (this *SDL_Event) SDL_DropEvent() *SDL_DropEvent

func (*SDL_Event) SDL_JoyAxisEvent

func (this *SDL_Event) SDL_JoyAxisEvent() *SDL_JoyAxisEvent

func (*SDL_Event) SDL_JoyBallEvent

func (this *SDL_Event) SDL_JoyBallEvent() *SDL_JoyBallEvent

func (*SDL_Event) SDL_JoyButtonEvent

func (this *SDL_Event) SDL_JoyButtonEvent() *SDL_JoyButtonEvent

func (*SDL_Event) SDL_JoyDeviceEvent

func (this *SDL_Event) SDL_JoyDeviceEvent() *SDL_JoyDeviceEvent

func (*SDL_Event) SDL_JoyHatEvent

func (this *SDL_Event) SDL_JoyHatEvent() *SDL_JoyHatEvent

func (*SDL_Event) SDL_KeyboardEvent

func (this *SDL_Event) SDL_KeyboardEvent() *SDL_KeyboardEvent

func (*SDL_Event) SDL_MouseButtonEvent

func (this *SDL_Event) SDL_MouseButtonEvent() *SDL_MouseButtonEvent

func (*SDL_Event) SDL_MouseMotionEvent

func (this *SDL_Event) SDL_MouseMotionEvent() *SDL_MouseMotionEvent

func (*SDL_Event) SDL_MouseWheelEvent

func (this *SDL_Event) SDL_MouseWheelEvent() *SDL_MouseWheelEvent

func (*SDL_Event) SDL_MultiGestureEvent

func (this *SDL_Event) SDL_MultiGestureEvent() *SDL_MultiGestureEvent

func (*SDL_Event) SDL_OSEvent

func (this *SDL_Event) SDL_OSEvent() *SDL_OSEvent

func (*SDL_Event) SDL_QuitEvent

func (this *SDL_Event) SDL_QuitEvent() *SDL_QuitEvent

func (*SDL_Event) SDL_TextEditingEvent

func (this *SDL_Event) SDL_TextEditingEvent() *SDL_TextEditingEvent

func (*SDL_Event) SDL_TextInputEvent

func (this *SDL_Event) SDL_TextInputEvent() *SDL_TextInputEvent

func (*SDL_Event) SDL_TouchFingerEvent

func (this *SDL_Event) SDL_TouchFingerEvent() *SDL_TouchFingerEvent

func (*SDL_Event) SDL_UserEvent

func (this *SDL_Event) SDL_UserEvent() *SDL_UserEvent

func (*SDL_Event) SDL_WindowEvent

func (this *SDL_Event) SDL_WindowEvent() *SDL_WindowEvent

type SDL_EventType

type SDL_EventType struct {
	Type uint32
}

*

  • \brief General event structure

type SDL_Finger

type SDL_Finger struct {
	Id       SDL_FingerID
	X        float32
	Y        float32
	Pressure float32
}

type SDL_FingerID

type SDL_FingerID int64

type SDL_GestureID

type SDL_GestureID int64

type SDL_JoyAxisEvent

type SDL_JoyAxisEvent struct {
	SDL_EventType                /**< ::SDL_JOYAXISMOTION */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Axis          uint8          /**< The joystick axis index */

	Value int16 /**< The axis value (range: -32768 to 32767) */
	// contains filtered or unexported fields
}

*

  • \brief Joystick axis motion event structure (event.jaxis.*)

type SDL_JoyBallEvent

type SDL_JoyBallEvent struct {
	SDL_EventType                /**< ::SDL_JOYBALLMOTION */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Ball          uint8          /**< The joystick trackball index */

	Xrel int16 /**< The relative motion in the X direction */
	Yrel int16 /**< The relative motion in the Y direction */
	// contains filtered or unexported fields
}

*

  • \brief Joystick trackball motion event structure (event.jball.*)

type SDL_JoyButtonEvent

type SDL_JoyButtonEvent struct {
	SDL_EventType                /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Button        uint8          /**< The joystick button index */
	State         uint8          /**< ::SDL_PRESSED or ::SDL_RELEASED */
	// contains filtered or unexported fields
}

*

  • \brief Joystick button event structure (event.jbutton.*)

type SDL_JoyDeviceEvent

type SDL_JoyDeviceEvent struct {
	SDL_EventType        /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */
	Timestamp     uint32 /*  */
	Which         int32  /**< The joystick device index for the ADDED event, instance id for the REMOVED event */
}

*

  • \brief Joystick device event structure (event.jdevice.*)

type SDL_JoyHatEvent

type SDL_JoyHatEvent struct {
	SDL_EventType                /**< ::SDL_JOYHATMOTION */
	Timestamp     uint32         /*  */
	Which         SDL_JoystickID /**< The joystick instance id */
	Hat           uint8          /**< The joystick hat index */
	Value         uint8          /**< The hat position value.
	 *   \sa ::SDL_HAT_LEFTUP ::SDL_HAT_UP ::SDL_HAT_RIGHTUP
	 *   \sa ::SDL_HAT_LEFT ::SDL_HAT_CENTERED ::SDL_HAT_RIGHT
	 *   \sa ::SDL_HAT_LEFTDOWN ::SDL_HAT_DOWN ::SDL_HAT_RIGHTDOWN
	 *
	 *   Note that zero means the POV is centered.
	 */
	// contains filtered or unexported fields
}

*

  • \brief Joystick hat position change event structure (event.jhat.*)

type SDL_JoystickID

type SDL_JoystickID uint32

type SDL_JoystickPowerLevel

type SDL_JoystickPowerLevel int32
const (
	SDL_JOYSTICK_POWER_UNKNOWN SDL_JoystickPowerLevel = -1
	SDL_JOYSTICK_POWER_EMPTY   SDL_JoystickPowerLevel = 0
	SDL_JOYSTICK_POWER_LOW     SDL_JoystickPowerLevel = 1
	SDL_JOYSTICK_POWER_MEDIUM  SDL_JoystickPowerLevel = 2
	SDL_JOYSTICK_POWER_FULL    SDL_JoystickPowerLevel = 3
	SDL_JOYSTICK_POWER_WIRED   SDL_JoystickPowerLevel = 4
	SDL_JOYSTICK_POWER_MAX     SDL_JoystickPowerLevel = 5
)

type SDL_KeyboardEvent

type SDL_KeyboardEvent struct {
	SDL_EventType        /**< ::SDL_KEYDOWN or ::SDL_KEYUP */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The window with keyboard focus, if any */
	State         uint8  /**< ::SDL_PRESSED or ::SDL_RELEASED */
	Repeat        uint8  /**< Non-zero if this is a key repeat */

	Keysym SDL_Keysym /**< The key that was pressed or released */
	// contains filtered or unexported fields
}

*

  • \brief Keyboard button event structure (event.key.*)

type SDL_Keycode

type SDL_Keycode int32
const (
	SDLK_SCANCODE_MASK SDL_Keycode = 1 << 30
)
var (
	SDLK_UNKNOWN SDL_Keycode = 0

	SDLK_RETURN     SDL_Keycode = '\r'
	SDLK_ESCAPE     SDL_Keycode = '\033'
	SDLK_BACKSPACE  SDL_Keycode = '\b'
	SDLK_TAB        SDL_Keycode = '\t'
	SDLK_SPACE      SDL_Keycode = ' '
	SDLK_EXCLAIM    SDL_Keycode = '!'
	SDLK_QUOTEDBL   SDL_Keycode = '"'
	SDLK_HASH       SDL_Keycode = '#'
	SDLK_PERCENT    SDL_Keycode = '%'
	SDLK_DOLLAR     SDL_Keycode = '$'
	SDLK_AMPERSAND  SDL_Keycode = '&'
	SDLK_QUOTE      SDL_Keycode = '\''
	SDLK_LEFTPAREN  SDL_Keycode = '('
	SDLK_RIGHTPAREN SDL_Keycode = ')'
	SDLK_ASTERISK   SDL_Keycode = '*'
	SDLK_PLUS       SDL_Keycode = '+'
	SDLK_COMMA      SDL_Keycode = ','
	SDLK_MINUS      SDL_Keycode = '-'
	SDLK_PERIOD     SDL_Keycode = '.'
	SDLK_SLASH      SDL_Keycode = '/'
	SDLK_0          SDL_Keycode = '0'
	SDLK_1          SDL_Keycode = '1'
	SDLK_2          SDL_Keycode = '2'
	SDLK_3          SDL_Keycode = '3'
	SDLK_4          SDL_Keycode = '4'
	SDLK_5          SDL_Keycode = '5'
	SDLK_6          SDL_Keycode = '6'
	SDLK_7          SDL_Keycode = '7'
	SDLK_8          SDL_Keycode = '8'
	SDLK_9          SDL_Keycode = '9'
	SDLK_COLON      SDL_Keycode = ':'
	SDLK_SEMICOLON  SDL_Keycode = ';'
	SDLK_LESS       SDL_Keycode = '<'
	SDLK_EQUALS     SDL_Keycode = '='
	SDLK_GREATER    SDL_Keycode = '>'
	SDLK_QUESTION   SDL_Keycode = '?'
	SDLK_AT         SDL_Keycode = '@'
	/*
	   Skip uppercase letters
	*/
	SDLK_LEFTBRACKET  SDL_Keycode = '['
	SDLK_BACKSLASH    SDL_Keycode = '\\'
	SDLK_RIGHTBRACKET SDL_Keycode = ']'
	SDLK_CARET        SDL_Keycode = '^'
	SDLK_UNDERSCORE   SDL_Keycode = '_'
	SDLK_BACKQUOTE    SDL_Keycode = '`'
	SDLK_a            SDL_Keycode = 'a'
	SDLK_b            SDL_Keycode = 'b'
	SDLK_c            SDL_Keycode = 'c'
	SDLK_d            SDL_Keycode = 'd'
	SDLK_e            SDL_Keycode = 'e'
	SDLK_f            SDL_Keycode = 'f'
	SDLK_g            SDL_Keycode = 'g'
	SDLK_h            SDL_Keycode = 'h'
	SDLK_i            SDL_Keycode = 'i'
	SDLK_j            SDL_Keycode = 'j'
	SDLK_k            SDL_Keycode = 'k'
	SDLK_l            SDL_Keycode = 'l'
	SDLK_m            SDL_Keycode = 'm'
	SDLK_n            SDL_Keycode = 'n'
	SDLK_o            SDL_Keycode = 'o'
	SDLK_p            SDL_Keycode = 'p'
	SDLK_q            SDL_Keycode = 'q'
	SDLK_r            SDL_Keycode = 'r'
	SDLK_s            SDL_Keycode = 's'
	SDLK_t            SDL_Keycode = 't'
	SDLK_u            SDL_Keycode = 'u'
	SDLK_v            SDL_Keycode = 'v'
	SDLK_w            SDL_Keycode = 'w'
	SDLK_x            SDL_Keycode = 'x'
	SDLK_y            SDL_Keycode = 'y'
	SDLK_z            SDL_Keycode = 'z'

	SDLK_CAPSLOCK SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CAPSLOCK)

	SDLK_F1  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F1)
	SDLK_F2  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F2)
	SDLK_F3  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F3)
	SDLK_F4  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F4)
	SDLK_F5  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F5)
	SDLK_F6  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F6)
	SDLK_F7  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F7)
	SDLK_F8  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F8)
	SDLK_F9  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F9)
	SDLK_F10 SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F10)
	SDLK_F11 SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F11)
	SDLK_F12 SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F12)

	SDLK_PRINTSCREEN SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRINTSCREEN)
	SDLK_SCROLLLOCK  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SCROLLLOCK)
	SDLK_PAUSE       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAUSE)
	SDLK_INSERT      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_INSERT)
	SDLK_HOME        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HOME)
	SDLK_PAGEUP      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEUP)
	SDLK_DELETE      SDL_Keycode = '\177'
	SDLK_END         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_END)
	SDLK_PAGEDOWN    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEDOWN)
	SDLK_RIGHT       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RIGHT)
	SDLK_LEFT        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LEFT)
	SDLK_DOWN        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DOWN)
	SDLK_UP          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UP)

	SDLK_NUMLOCKCLEAR SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_NUMLOCKCLEAR)
	SDLK_KP_DIVIDE    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DIVIDE)
	SDLK_KP_MULTIPLY  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MULTIPLY)
	SDLK_KP_MINUS     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MINUS)
	SDLK_KP_PLUS      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUS)
	SDLK_KP_ENTER     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_ENTER)
	SDLK_KP_1         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_1)
	SDLK_KP_2         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_2)
	SDLK_KP_3         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_3)
	SDLK_KP_4         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_4)
	SDLK_KP_5         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_5)
	SDLK_KP_6         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_6)
	SDLK_KP_7         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_7)
	SDLK_KP_8         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_8)
	SDLK_KP_9         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_9)
	SDLK_KP_0         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_0)
	SDLK_KP_PERIOD    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERIOD)

	SDLK_APPLICATION    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APPLICATION)
	SDLK_POWER          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_POWER)
	SDLK_KP_EQUALS      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALS)
	SDLK_F13            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F13)
	SDLK_F14            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F14)
	SDLK_F15            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F15)
	SDLK_F16            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F16)
	SDLK_F17            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F17)
	SDLK_F18            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F18)
	SDLK_F19            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F19)
	SDLK_F20            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F20)
	SDLK_F21            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F21)
	SDLK_F22            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F22)
	SDLK_F23            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F23)
	SDLK_F24            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F24)
	SDLK_EXECUTE        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXECUTE)
	SDLK_HELP           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HELP)
	SDLK_MENU           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MENU)
	SDLK_SELECT         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SELECT)
	SDLK_STOP           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_STOP)
	SDLK_AGAIN          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AGAIN)
	SDLK_UNDO           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UNDO)
	SDLK_CUT            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CUT)
	SDLK_COPY           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COPY)
	SDLK_PASTE          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PASTE)
	SDLK_FIND           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_FIND)
	SDLK_MUTE           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MUTE)
	SDLK_VOLUMEUP       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEUP)
	SDLK_VOLUMEDOWN     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEDOWN)
	SDLK_KP_COMMA       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COMMA)
	SDLK_KP_EQUALSAS400 SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALSAS400)

	SDLK_ALTERASE   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ALTERASE)
	SDLK_SYSREQ     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SYSREQ)
	SDLK_CANCEL     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CANCEL)
	SDLK_CLEAR      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEAR)
	SDLK_PRIOR      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRIOR)
	SDLK_RETURN2    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RETURN2)
	SDLK_SEPARATOR  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SEPARATOR)
	SDLK_OUT        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OUT)
	SDLK_OPER       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OPER)
	SDLK_CLEARAGAIN SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEARAGAIN)
	SDLK_CRSEL      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CRSEL)
	SDLK_EXSEL      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXSEL)

	SDLK_KP_00              SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_00)
	SDLK_KP_000             SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_000)
	SDLK_THOUSANDSSEPARATOR SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_THOUSANDSSEPARATOR)
	SDLK_DECIMALSEPARATOR   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DECIMALSEPARATOR)
	SDLK_CURRENCYUNIT       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYUNIT)
	SDLK_CURRENCYSUBUNIT    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYSUBUNIT)
	SDLK_KP_LEFTPAREN       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTPAREN)
	SDLK_KP_RIGHTPAREN      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTPAREN)
	SDLK_KP_LEFTBRACE       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTBRACE)
	SDLK_KP_RIGHTBRACE      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTBRACE)
	SDLK_KP_TAB             SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_TAB)
	SDLK_KP_BACKSPACE       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BACKSPACE)
	SDLK_KP_A               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_A)
	SDLK_KP_B               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_B)
	SDLK_KP_C               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_C)
	SDLK_KP_D               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_D)
	SDLK_KP_E               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_E)
	SDLK_KP_F               SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_F)
	SDLK_KP_XOR             SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_XOR)
	SDLK_KP_POWER           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_POWER)
	SDLK_KP_PERCENT         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERCENT)
	SDLK_KP_LESS            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LESS)
	SDLK_KP_GREATER         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_GREATER)
	SDLK_KP_AMPERSAND       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AMPERSAND)
	SDLK_KP_DBLAMPERSAND    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLAMPERSAND)
	SDLK_KP_VERTICALBAR     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_VERTICALBAR)
	SDLK_KP_DBLVERTICALBAR  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLVERTICALBAR)
	SDLK_KP_COLON           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COLON)
	SDLK_KP_HASH            SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HASH)
	SDLK_KP_SPACE           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_SPACE)
	SDLK_KP_AT              SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AT)
	SDLK_KP_EXCLAM          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EXCLAM)
	SDLK_KP_MEMSTORE        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSTORE)
	SDLK_KP_MEMRECALL       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMRECALL)
	SDLK_KP_MEMCLEAR        SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMCLEAR)
	SDLK_KP_MEMADD          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMADD)
	SDLK_KP_MEMSUBTRACT     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSUBTRACT)
	SDLK_KP_MEMMULTIPLY     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMMULTIPLY)
	SDLK_KP_MEMDIVIDE       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMDIVIDE)
	SDLK_KP_PLUSMINUS       SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUSMINUS)
	SDLK_KP_CLEAR           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEAR)
	SDLK_KP_CLEARENTRY      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEARENTRY)
	SDLK_KP_BINARY          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BINARY)
	SDLK_KP_OCTAL           SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_OCTAL)
	SDLK_KP_DECIMAL         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DECIMAL)
	SDLK_KP_HEXADECIMAL     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HEXADECIMAL)

	SDLK_LCTRL  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LCTRL)
	SDLK_LSHIFT SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LSHIFT)
	SDLK_LALT   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LALT)
	SDLK_LGUI   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LGUI)
	SDLK_RCTRL  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RCTRL)
	SDLK_RSHIFT SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RSHIFT)
	SDLK_RALT   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RALT)
	SDLK_RGUI   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RGUI)

	SDLK_MODE SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MODE)

	SDLK_AUDIONEXT    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIONEXT)
	SDLK_AUDIOPREV    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPREV)
	SDLK_AUDIOSTOP    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOSTOP)
	SDLK_AUDIOPLAY    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPLAY)
	SDLK_AUDIOMUTE    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOMUTE)
	SDLK_MEDIASELECT  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIASELECT)
	SDLK_WWW          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_WWW)
	SDLK_MAIL         SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MAIL)
	SDLK_CALCULATOR   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALCULATOR)
	SDLK_COMPUTER     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COMPUTER)
	SDLK_AC_SEARCH    SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_SEARCH)
	SDLK_AC_HOME      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_HOME)
	SDLK_AC_BACK      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BACK)
	SDLK_AC_FORWARD   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_FORWARD)
	SDLK_AC_STOP      SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_STOP)
	SDLK_AC_REFRESH   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_REFRESH)
	SDLK_AC_BOOKMARKS SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BOOKMARKS)

	SDLK_BRIGHTNESSDOWN SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSDOWN)
	SDLK_BRIGHTNESSUP   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSUP)
	SDLK_DISPLAYSWITCH  SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DISPLAYSWITCH)
	SDLK_KBDILLUMTOGGLE SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMTOGGLE)
	SDLK_KBDILLUMDOWN   SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMDOWN)
	SDLK_KBDILLUMUP     SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMUP)
	SDLK_EJECT          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EJECT)
	SDLK_SLEEP          SDL_Keycode = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP)
)

func SDL_SCANCODE_TO_KEYCODE

func SDL_SCANCODE_TO_KEYCODE(x SDL_Scancode) SDL_Keycode

type SDL_Keysym

type SDL_Keysym struct {
	Scancode SDL_Scancode
	Sym      SDL_Keycode
	Mod      uint16
	// contains filtered or unexported fields
}

*

  • \brief General event structure

type SDL_MouseButtonEvent

type SDL_MouseButtonEvent struct {
	SDL_EventType        /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The window with mouse focus, if any */
	Which         uint32 /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
	Button        uint8  /**< The mouse button index */
	State         uint8  /**< ::SDL_PRESSED or ::SDL_RELEASED */
	Clicks        uint8  /**< X coordinate, relative to window */

	X int32 /**< X coordinate, relative to window */
	Y int32 /**< Y coordinate, relative to window */
	// contains filtered or unexported fields
}

*

  • \brief Mouse button event structure (event.button.*)

type SDL_MouseMotionEvent

type SDL_MouseMotionEvent struct {
	SDL_EventType        /**< ::SDL_MOUSEMOTION */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The window with mouse focus, if any */
	Which         uint32 /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
	State         uint32 /**< The current button state */
	X             int32  /**< X coordinate, relative to window */
	Y             int32  /**< Y coordinate, relative to window */
	Xrel          int32  /**< The relative motion in the X direction */
	Yrel          int32  /**< The relative motion in the Y direction */
}

*

  • \brief Mouse motion event structure (event.motion.*)

type SDL_MouseWheelEvent

type SDL_MouseWheelEvent struct {
	SDL_EventType        /**< ::SDL_MOUSEWHEEL */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The window with mouse focus, if any */
	Which         uint32 /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
	X             int32  /**< The amount scrolled horizontally, positive to the right and negative to the left */
	Y             int32  /**< The amount scrolled vertically, positive away from the user and negative toward the user */
	Direction     uint32 /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */
}

*

  • \brief Mouse wheel event structure (event.wheel.*)

type SDL_MultiGestureEvent

type SDL_MultiGestureEvent struct {
	SDL_EventType             /**< ::SDL_MULTIGESTURE */
	Timestamp     uint32      /*  */
	TouchId       SDL_TouchID /**< The touch device id */
	DTheta        float32
	DDist         float32
	X             float32
	Y             float32
	NumFingers    uint16
	// contains filtered or unexported fields
}

*

  • \brief Multiple Finger Gesture Event (event.mgesture.*)

type SDL_OSEvent

type SDL_OSEvent struct {
	SDL_EventType        /**< ::SDL_QUIT */
	Timestamp     uint32 /*  */
}

*

  • \brief OS Specific event

type SDL_Palette

type SDL_Palette struct {
	Ncolors  int32
	Colors   *SDL_Color
	Version  uint32
	Refcount int32
}

type SDL_PixelFormat

type SDL_PixelFormat struct {
	Format        uint32
	Palette       *SDL_Palette
	BitsPerPixel  uint8
	BytesPerPixel uint8

	Rmask    uint32
	Gmask    uint32
	Bmask    uint32
	Amask    uint32
	Rloss    uint8
	Gloss    uint8
	Bloss    uint8
	Aloss    uint8
	Rshift   uint8
	Gshift   uint8
	Bshift   uint8
	Ashift   uint8
	Refcount int
	Next     *SDL_PixelFormat
	// contains filtered or unexported fields
}

*

  • \note Everything in the pixel format structure is read-only.

type SDL_Point

type SDL_Point struct {
	X int32
	Y int32
}

*

  • \brief The structure that defines a point *
  • \sa SDL_EnclosePoints
  • \sa SDL_PointInRect

type SDL_QuitEvent

type SDL_QuitEvent struct {
	SDL_EventType        /**< ::SDL_QUIT */
	Timestamp     uint32 /*  */
}

*

  • \brief The "quit requested" event

type SDL_Rect

type SDL_Rect struct {
	X, Y int32
	W, H int32
}

*

  • \brief A rectangle, with the origin at the upper left. *
  • \sa SDL_RectEmpty
  • \sa SDL_RectEquals
  • \sa SDL_HasIntersection
  • \sa SDL_IntersectRect
  • \sa SDL_UnionRect
  • \sa SDL_EnclosePoints

type SDL_Renderer

type SDL_Renderer struct{}

func SDL_CreateRenderer

func SDL_CreateRenderer(window *SDL_Window, index int32, flags uint32) (*SDL_Renderer, error)

func SDL_CreateSoftwareRenderer

func SDL_CreateSoftwareRenderer(surface *SDL_Surface) (*SDL_Renderer, error)

type SDL_Scancode

type SDL_Scancode int32
const (
	SDL_SCANCODE_UNKNOWN SDL_Scancode = 0

	SDL_SCANCODE_A SDL_Scancode = 4
	SDL_SCANCODE_B SDL_Scancode = 5
	SDL_SCANCODE_C SDL_Scancode = 6
	SDL_SCANCODE_D SDL_Scancode = 7
	SDL_SCANCODE_E SDL_Scancode = 8
	SDL_SCANCODE_F SDL_Scancode = 9
	SDL_SCANCODE_G SDL_Scancode = 10
	SDL_SCANCODE_H SDL_Scancode = 11
	SDL_SCANCODE_I SDL_Scancode = 12
	SDL_SCANCODE_J SDL_Scancode = 13
	SDL_SCANCODE_K SDL_Scancode = 14
	SDL_SCANCODE_L SDL_Scancode = 15
	SDL_SCANCODE_M SDL_Scancode = 16
	SDL_SCANCODE_N SDL_Scancode = 17
	SDL_SCANCODE_O SDL_Scancode = 18
	SDL_SCANCODE_P SDL_Scancode = 19
	SDL_SCANCODE_Q SDL_Scancode = 20
	SDL_SCANCODE_R SDL_Scancode = 21
	SDL_SCANCODE_S SDL_Scancode = 22
	SDL_SCANCODE_T SDL_Scancode = 23
	SDL_SCANCODE_U SDL_Scancode = 24
	SDL_SCANCODE_V SDL_Scancode = 25
	SDL_SCANCODE_W SDL_Scancode = 26
	SDL_SCANCODE_X SDL_Scancode = 27
	SDL_SCANCODE_Y SDL_Scancode = 28
	SDL_SCANCODE_Z SDL_Scancode = 29

	SDL_SCANCODE_1 SDL_Scancode = 30
	SDL_SCANCODE_2 SDL_Scancode = 31
	SDL_SCANCODE_3 SDL_Scancode = 32
	SDL_SCANCODE_4 SDL_Scancode = 33
	SDL_SCANCODE_5 SDL_Scancode = 34
	SDL_SCANCODE_6 SDL_Scancode = 35
	SDL_SCANCODE_7 SDL_Scancode = 36
	SDL_SCANCODE_8 SDL_Scancode = 37
	SDL_SCANCODE_9 SDL_Scancode = 38
	SDL_SCANCODE_0 SDL_Scancode = 39

	SDL_SCANCODE_RETURN    SDL_Scancode = 40
	SDL_SCANCODE_ESCAPE    SDL_Scancode = 41
	SDL_SCANCODE_BACKSPACE SDL_Scancode = 42
	SDL_SCANCODE_TAB       SDL_Scancode = 43
	SDL_SCANCODE_SPACE     SDL_Scancode = 44

	SDL_SCANCODE_MINUS        SDL_Scancode = 45
	SDL_SCANCODE_EQUALS       SDL_Scancode = 46
	SDL_SCANCODE_LEFTBRACKET  SDL_Scancode = 47
	SDL_SCANCODE_RIGHTBRACKET SDL_Scancode = 48
	SDL_SCANCODE_BACKSLASH    SDL_Scancode = 49 /**< Located at the lower left of the return
	 *   key on ISO keyboards and at the right end
	 *   of the QWERTY row on ANSI keyboards.
	 *   Produces REVERSE SOLIDUS (backslash) and
	 *   VERTICAL LINE in a US layout REVERSE
	 *   SOLIDUS and VERTICAL LINE in a UK Mac
	 *   layout NUMBER SIGN and TILDE in a UK
	 *   Windows layout DOLLAR SIGN and POUND SIGN
	 *   in a Swiss German layout NUMBER SIGN and
	 *   APOSTROPHE in a German layout GRAVE
	 *   ACCENT and POUND SIGN in a French Mac
	 *   layout and ASTERISK and MICRO SIGN in a
	 *   French Windows layout.
	 */
	SDL_SCANCODE_NONUSHASH SDL_Scancode = 50 /**< ISO USB keyboards actually use this code
	 *   instead of 49 for the same key but all
	 *   OSes I've seen treat the two codes
	 *   identically. So as an implementor unless
	 *   your keyboard generates both of those
	 *   codes and your OS treats them differently
	 *   you should generate SDL_SCANCODE_BACKSLASH
	 *   instead of this code. As a user you
	 *   should not rely on this code because SDL
	 *   will never generate it with most (all?)
	 *   keyboards.
	 */
	SDL_SCANCODE_SEMICOLON  SDL_Scancode = 51
	SDL_SCANCODE_APOSTROPHE SDL_Scancode = 52
	SDL_SCANCODE_GRAVE      SDL_Scancode = 53 /**< Located in the top left corner (on both ANSI
	 *   and ISO keyboards). Produces GRAVE ACCENT and
	 *   TILDE in a US Windows layout and in US and UK
	 *   Mac layouts on ANSI keyboards GRAVE ACCENT
	 *   and NOT SIGN in a UK Windows layout SECTION
	 *   SIGN and PLUS-MINUS SIGN in US and UK Mac
	 *   layouts on ISO keyboards SECTION SIGN and
	 *   DEGREE SIGN in a Swiss German layout (Mac:
	 *   only on ISO keyboards) CIRCUMFLEX ACCENT and
	 *   DEGREE SIGN in a German layout (Mac: only on
	 *   ISO keyboards) SUPERSCRIPT TWO and TILDE in a
	 *   French Windows layout COMMERCIAL AT and
	 *   NUMBER SIGN in a French Mac layout on ISO
	 *   keyboards and LESS-THAN SIGN and GREATER-THAN
	 *   SIGN in a Swiss German German or French Mac
	 *   layout on ANSI keyboards.
	 */
	SDL_SCANCODE_COMMA  SDL_Scancode = 54
	SDL_SCANCODE_PERIOD SDL_Scancode = 55
	SDL_SCANCODE_SLASH  SDL_Scancode = 56

	SDL_SCANCODE_CAPSLOCK SDL_Scancode = 57

	SDL_SCANCODE_F1  SDL_Scancode = 58
	SDL_SCANCODE_F2  SDL_Scancode = 59
	SDL_SCANCODE_F3  SDL_Scancode = 60
	SDL_SCANCODE_F4  SDL_Scancode = 61
	SDL_SCANCODE_F5  SDL_Scancode = 62
	SDL_SCANCODE_F6  SDL_Scancode = 63
	SDL_SCANCODE_F7  SDL_Scancode = 64
	SDL_SCANCODE_F8  SDL_Scancode = 65
	SDL_SCANCODE_F9  SDL_Scancode = 66
	SDL_SCANCODE_F10 SDL_Scancode = 67
	SDL_SCANCODE_F11 SDL_Scancode = 68
	SDL_SCANCODE_F12 SDL_Scancode = 69

	SDL_SCANCODE_PRINTSCREEN SDL_Scancode = 70
	SDL_SCANCODE_SCROLLLOCK  SDL_Scancode = 71
	SDL_SCANCODE_PAUSE       SDL_Scancode = 72
	SDL_SCANCODE_INSERT      SDL_Scancode = 73 /**< insert on PC help on some Mac keyboards (but
	  does send code 73 not 117) */
	SDL_SCANCODE_HOME     SDL_Scancode = 74
	SDL_SCANCODE_PAGEUP   SDL_Scancode = 75
	SDL_SCANCODE_DELETE   SDL_Scancode = 76
	SDL_SCANCODE_END      SDL_Scancode = 77
	SDL_SCANCODE_PAGEDOWN SDL_Scancode = 78
	SDL_SCANCODE_RIGHT    SDL_Scancode = 79
	SDL_SCANCODE_LEFT     SDL_Scancode = 80
	SDL_SCANCODE_DOWN     SDL_Scancode = 81
	SDL_SCANCODE_UP       SDL_Scancode = 82

	SDL_SCANCODE_NUMLOCKCLEAR SDL_Scancode = 83 /**< num lock on PC clear on Mac keyboards
	 */
	SDL_SCANCODE_KP_DIVIDE   SDL_Scancode = 84
	SDL_SCANCODE_KP_MULTIPLY SDL_Scancode = 85
	SDL_SCANCODE_KP_MINUS    SDL_Scancode = 86
	SDL_SCANCODE_KP_PLUS     SDL_Scancode = 87
	SDL_SCANCODE_KP_ENTER    SDL_Scancode = 88
	SDL_SCANCODE_KP_1        SDL_Scancode = 89
	SDL_SCANCODE_KP_2        SDL_Scancode = 90
	SDL_SCANCODE_KP_3        SDL_Scancode = 91
	SDL_SCANCODE_KP_4        SDL_Scancode = 92
	SDL_SCANCODE_KP_5        SDL_Scancode = 93
	SDL_SCANCODE_KP_6        SDL_Scancode = 94
	SDL_SCANCODE_KP_7        SDL_Scancode = 95
	SDL_SCANCODE_KP_8        SDL_Scancode = 96
	SDL_SCANCODE_KP_9        SDL_Scancode = 97
	SDL_SCANCODE_KP_0        SDL_Scancode = 98
	SDL_SCANCODE_KP_PERIOD   SDL_Scancode = 99

	SDL_SCANCODE_NONUSBACKSLASH SDL_Scancode = 100 /**< This is the additional key that ISO
	 *   keyboards have over ANSI ones
	 *   located between left shift and Y.
	 *   Produces GRAVE ACCENT and TILDE in a
	 *   US or UK Mac layout REVERSE SOLIDUS
	 *   (backslash) and VERTICAL LINE in a
	 *   US or UK Windows layout and
	 *   LESS-THAN SIGN and GREATER-THAN SIGN
	 *   in a Swiss German German or French
	 *   layout. */
	SDL_SCANCODE_APPLICATION SDL_Scancode = 101 /**< windows contextual menu compose */
	SDL_SCANCODE_POWER       SDL_Scancode = 102 /**< The USB document says this is a status flag
	 *   not a physical key - but some Mac keyboards
	 *   do have a power key. */
	SDL_SCANCODE_KP_EQUALS  SDL_Scancode = 103
	SDL_SCANCODE_F13        SDL_Scancode = 104
	SDL_SCANCODE_F14        SDL_Scancode = 105
	SDL_SCANCODE_F15        SDL_Scancode = 106
	SDL_SCANCODE_F16        SDL_Scancode = 107
	SDL_SCANCODE_F17        SDL_Scancode = 108
	SDL_SCANCODE_F18        SDL_Scancode = 109
	SDL_SCANCODE_F19        SDL_Scancode = 110
	SDL_SCANCODE_F20        SDL_Scancode = 111
	SDL_SCANCODE_F21        SDL_Scancode = 112
	SDL_SCANCODE_F22        SDL_Scancode = 113
	SDL_SCANCODE_F23        SDL_Scancode = 114
	SDL_SCANCODE_F24        SDL_Scancode = 115
	SDL_SCANCODE_EXECUTE    SDL_Scancode = 116
	SDL_SCANCODE_HELP       SDL_Scancode = 117
	SDL_SCANCODE_MENU       SDL_Scancode = 118
	SDL_SCANCODE_SELECT     SDL_Scancode = 119
	SDL_SCANCODE_STOP       SDL_Scancode = 120
	SDL_SCANCODE_AGAIN      SDL_Scancode = 121 /**< redo */
	SDL_SCANCODE_UNDO       SDL_Scancode = 122
	SDL_SCANCODE_CUT        SDL_Scancode = 123
	SDL_SCANCODE_COPY       SDL_Scancode = 124
	SDL_SCANCODE_PASTE      SDL_Scancode = 125
	SDL_SCANCODE_FIND       SDL_Scancode = 126
	SDL_SCANCODE_MUTE       SDL_Scancode = 127
	SDL_SCANCODE_VOLUMEUP   SDL_Scancode = 128
	SDL_SCANCODE_VOLUMEDOWN SDL_Scancode = 129
	/* not sure whether there's a reason to enable these */
	/*     SDL_SCANCODE_LOCKINGCAPSLOCK SDL_Scancode = 130  */
	/*     SDL_SCANCODE_LOCKINGNUMLOCK SDL_Scancode = 131 */
	/*     SDL_SCANCODE_LOCKINGSCROLLLOCK SDL_Scancode = 132 */
	SDL_SCANCODE_KP_COMMA       SDL_Scancode = 133
	SDL_SCANCODE_KP_EQUALSAS400 SDL_Scancode = 134

	SDL_SCANCODE_INTERNATIONAL1 SDL_Scancode = 135 /**< used on Asian keyboards see
	  footnotes in USB doc */
	SDL_SCANCODE_INTERNATIONAL2 SDL_Scancode = 136
	SDL_SCANCODE_INTERNATIONAL3 SDL_Scancode = 137 /**< Yen */
	SDL_SCANCODE_INTERNATIONAL4 SDL_Scancode = 138
	SDL_SCANCODE_INTERNATIONAL5 SDL_Scancode = 139
	SDL_SCANCODE_INTERNATIONAL6 SDL_Scancode = 140
	SDL_SCANCODE_INTERNATIONAL7 SDL_Scancode = 141
	SDL_SCANCODE_INTERNATIONAL8 SDL_Scancode = 142
	SDL_SCANCODE_INTERNATIONAL9 SDL_Scancode = 143
	SDL_SCANCODE_LANG1          SDL_Scancode = 144 /**< Hangul/English toggle */
	SDL_SCANCODE_LANG2          SDL_Scancode = 145 /**< Hanja conversion */
	SDL_SCANCODE_LANG3          SDL_Scancode = 146 /**< Katakana */
	SDL_SCANCODE_LANG4          SDL_Scancode = 147 /**< Hiragana */
	SDL_SCANCODE_LANG5          SDL_Scancode = 148 /**< Zenkaku/Hankaku */
	SDL_SCANCODE_LANG6          SDL_Scancode = 149 /**< reserved */
	SDL_SCANCODE_LANG7          SDL_Scancode = 150 /**< reserved */
	SDL_SCANCODE_LANG8          SDL_Scancode = 151 /**< reserved */
	SDL_SCANCODE_LANG9          SDL_Scancode = 152 /**< reserved */

	SDL_SCANCODE_ALTERASE   SDL_Scancode = 153 /**< Erase-Eaze */
	SDL_SCANCODE_SYSREQ     SDL_Scancode = 154
	SDL_SCANCODE_CANCEL     SDL_Scancode = 155
	SDL_SCANCODE_CLEAR      SDL_Scancode = 156
	SDL_SCANCODE_PRIOR      SDL_Scancode = 157
	SDL_SCANCODE_RETURN2    SDL_Scancode = 158
	SDL_SCANCODE_SEPARATOR  SDL_Scancode = 159
	SDL_SCANCODE_OUT        SDL_Scancode = 160
	SDL_SCANCODE_OPER       SDL_Scancode = 161
	SDL_SCANCODE_CLEARAGAIN SDL_Scancode = 162
	SDL_SCANCODE_CRSEL      SDL_Scancode = 163
	SDL_SCANCODE_EXSEL      SDL_Scancode = 164

	SDL_SCANCODE_KP_00              SDL_Scancode = 176
	SDL_SCANCODE_KP_000             SDL_Scancode = 177
	SDL_SCANCODE_THOUSANDSSEPARATOR SDL_Scancode = 178
	SDL_SCANCODE_DECIMALSEPARATOR   SDL_Scancode = 179
	SDL_SCANCODE_CURRENCYUNIT       SDL_Scancode = 180
	SDL_SCANCODE_CURRENCYSUBUNIT    SDL_Scancode = 181
	SDL_SCANCODE_KP_LEFTPAREN       SDL_Scancode = 182
	SDL_SCANCODE_KP_RIGHTPAREN      SDL_Scancode = 183
	SDL_SCANCODE_KP_LEFTBRACE       SDL_Scancode = 184
	SDL_SCANCODE_KP_RIGHTBRACE      SDL_Scancode = 185
	SDL_SCANCODE_KP_TAB             SDL_Scancode = 186
	SDL_SCANCODE_KP_BACKSPACE       SDL_Scancode = 187
	SDL_SCANCODE_KP_A               SDL_Scancode = 188
	SDL_SCANCODE_KP_B               SDL_Scancode = 189
	SDL_SCANCODE_KP_C               SDL_Scancode = 190
	SDL_SCANCODE_KP_D               SDL_Scancode = 191
	SDL_SCANCODE_KP_E               SDL_Scancode = 192
	SDL_SCANCODE_KP_F               SDL_Scancode = 193
	SDL_SCANCODE_KP_XOR             SDL_Scancode = 194
	SDL_SCANCODE_KP_POWER           SDL_Scancode = 195
	SDL_SCANCODE_KP_PERCENT         SDL_Scancode = 196
	SDL_SCANCODE_KP_LESS            SDL_Scancode = 197
	SDL_SCANCODE_KP_GREATER         SDL_Scancode = 198
	SDL_SCANCODE_KP_AMPERSAND       SDL_Scancode = 199
	SDL_SCANCODE_KP_DBLAMPERSAND    SDL_Scancode = 200
	SDL_SCANCODE_KP_VERTICALBAR     SDL_Scancode = 201
	SDL_SCANCODE_KP_DBLVERTICALBAR  SDL_Scancode = 202
	SDL_SCANCODE_KP_COLON           SDL_Scancode = 203
	SDL_SCANCODE_KP_HASH            SDL_Scancode = 204
	SDL_SCANCODE_KP_SPACE           SDL_Scancode = 205
	SDL_SCANCODE_KP_AT              SDL_Scancode = 206
	SDL_SCANCODE_KP_EXCLAM          SDL_Scancode = 207
	SDL_SCANCODE_KP_MEMSTORE        SDL_Scancode = 208
	SDL_SCANCODE_KP_MEMRECALL       SDL_Scancode = 209
	SDL_SCANCODE_KP_MEMCLEAR        SDL_Scancode = 210
	SDL_SCANCODE_KP_MEMADD          SDL_Scancode = 211
	SDL_SCANCODE_KP_MEMSUBTRACT     SDL_Scancode = 212
	SDL_SCANCODE_KP_MEMMULTIPLY     SDL_Scancode = 213
	SDL_SCANCODE_KP_MEMDIVIDE       SDL_Scancode = 214
	SDL_SCANCODE_KP_PLUSMINUS       SDL_Scancode = 215
	SDL_SCANCODE_KP_CLEAR           SDL_Scancode = 216
	SDL_SCANCODE_KP_CLEARENTRY      SDL_Scancode = 217
	SDL_SCANCODE_KP_BINARY          SDL_Scancode = 218
	SDL_SCANCODE_KP_OCTAL           SDL_Scancode = 219
	SDL_SCANCODE_KP_DECIMAL         SDL_Scancode = 220
	SDL_SCANCODE_KP_HEXADECIMAL     SDL_Scancode = 221

	SDL_SCANCODE_LCTRL  SDL_Scancode = 224
	SDL_SCANCODE_LSHIFT SDL_Scancode = 225
	SDL_SCANCODE_LALT   SDL_Scancode = 226 /**< alt option */
	SDL_SCANCODE_LGUI   SDL_Scancode = 227 /**< windows command (apple) meta */
	SDL_SCANCODE_RCTRL  SDL_Scancode = 228
	SDL_SCANCODE_RSHIFT SDL_Scancode = 229
	SDL_SCANCODE_RALT   SDL_Scancode = 230 /**< alt gr option */
	SDL_SCANCODE_RGUI   SDL_Scancode = 231 /**< windows command (apple) meta */

	SDL_SCANCODE_MODE SDL_Scancode = 257 /**< I'm not sure if this is really not covered
	 *   by any of the above but since there's a
	 *   special KMOD_MODE for it I'm adding it here
	 */

	SDL_SCANCODE_AUDIONEXT    SDL_Scancode = 258
	SDL_SCANCODE_AUDIOPREV    SDL_Scancode = 259
	SDL_SCANCODE_AUDIOSTOP    SDL_Scancode = 260
	SDL_SCANCODE_AUDIOPLAY    SDL_Scancode = 261
	SDL_SCANCODE_AUDIOMUTE    SDL_Scancode = 262
	SDL_SCANCODE_MEDIASELECT  SDL_Scancode = 263
	SDL_SCANCODE_WWW          SDL_Scancode = 264
	SDL_SCANCODE_MAIL         SDL_Scancode = 265
	SDL_SCANCODE_CALCULATOR   SDL_Scancode = 266
	SDL_SCANCODE_COMPUTER     SDL_Scancode = 267
	SDL_SCANCODE_AC_SEARCH    SDL_Scancode = 268
	SDL_SCANCODE_AC_HOME      SDL_Scancode = 269
	SDL_SCANCODE_AC_BACK      SDL_Scancode = 270
	SDL_SCANCODE_AC_FORWARD   SDL_Scancode = 271
	SDL_SCANCODE_AC_STOP      SDL_Scancode = 272
	SDL_SCANCODE_AC_REFRESH   SDL_Scancode = 273
	SDL_SCANCODE_AC_BOOKMARKS SDL_Scancode = 274

	SDL_SCANCODE_BRIGHTNESSDOWN SDL_Scancode = 275
	SDL_SCANCODE_BRIGHTNESSUP   SDL_Scancode = 276
	SDL_SCANCODE_DISPLAYSWITCH  SDL_Scancode = 277 /**< display mirroring/dual display
	  switch video mode switch */
	SDL_SCANCODE_KBDILLUMTOGGLE SDL_Scancode = 278
	SDL_SCANCODE_KBDILLUMDOWN   SDL_Scancode = 279
	SDL_SCANCODE_KBDILLUMUP     SDL_Scancode = 280
	SDL_SCANCODE_EJECT          SDL_Scancode = 281
	SDL_SCANCODE_SLEEP          SDL_Scancode = 282

	SDL_SCANCODE_APP1 SDL_Scancode = 283
	SDL_SCANCODE_APP2 SDL_Scancode = 284

	SDL_NUM_SCANCODES SDL_Scancode = 512 /**< not a key just marks the number of scancodes
	  for array bounds */
)

type SDL_Surface

type SDL_Surface struct {
	Flags  uint32           /**< Read-only */
	Format *SDL_PixelFormat /**< Read-only */
	W      int32            /**< Read-only */
	H      int32            /**< Read-only */
	Pitch  int32            /**< Read-only */
	Pixels *byte            /**< Read-write */

	/** Application data associated with the surface */
	Userdata *byte /**< Read-write */

	/** information needed for surfaces requiring locks */
	Locked    int32 /**< Read-only */
	Lock_data *byte /**< Read-only */

	/** clipping information */
	Clip_rect SDL_Rect /**< Read-only */

	/** info for fast blit mapping to other surfaces */
	Map *SDL_BlitMap /**< Private */

	/** Reference count -- used when freeing surface */
	Refcount int32 /**< Read-mostly */

}

func SDL_CreateRGBSurface

func SDL_CreateRGBSurface(flags uint32, width, height, depth int32, Rmask, Gmask, Bmask, Amask uint32) (*SDL_Surface, error)

type SDL_TextEditingEvent

type SDL_TextEditingEvent struct {
	SDL_EventType                                      /**< ::SDL_TEXTEDITING */
	Timestamp     uint32                               /*  */
	WindowID      uint32                               /**< The window with keyboard focus, if any */
	Text          [SDL_TEXTEDITINGEVENT_TEXT_SIZE]byte /**< The editing text */
	Start         int32                                /**< The start cursor of selected editing text */
	Length        int32                                /**< The length of selected editing text */
}

*

  • \brief Keyboard text editing event structure (event.edit.*)

type SDL_TextInputEvent

type SDL_TextInputEvent struct {
	SDL_EventType                                    /**< ::SDL_TEXTINPUT */
	Timestamp     uint32                             /*  */
	WindowID      uint32                             /**< The window with keyboard focus, if any */
	Text          [SDL_TEXTINPUTEVENT_TEXT_SIZE]byte /**< The input text */
}

*

  • \brief Keyboard text input event structure (event.text.*)

type SDL_TouchFingerEvent

type SDL_TouchFingerEvent struct {
	SDL_EventType              /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */
	Timestamp     uint32       /*  */
	TouchId       SDL_TouchID  /**< The touch device id */
	FingerId      SDL_FingerID /*  */
	X             float32      /**< Normalized in the range 0...1 */
	Y             float32      /**< Normalized in the range 0...1 */
	DX            float32      /**< Normalized in the range -1...1 */
	DY            float32      /**< Normalized in the range -1...1 */
	Pressure      float32      /**< Normalized in the range 0...1 */
}

*

  • \brief Touch finger event structure (event.tfinger.*)

type SDL_TouchID

type SDL_TouchID int64

type SDL_UserEvent

type SDL_UserEvent struct {
	SDL_EventType        /**< ::SDL_USEREVENT through ::SDL_LASTEVENT-1 */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The window that was dropped on, if any */
	Code          int32  /**< User defined event code */
	Data1         *byte  /**< User defined data pointer */
	Data2         *byte  /**< User defined data pointer */
}

*

  • \brief A user-defined event type (event.user.*)

type SDL_Window

type SDL_Window struct {
	Magic                 *byte
	Id                    uint32
	Title                 *byte
	Icon                  *SDL_Surface
	X                     int32
	Y                     int32
	W                     int32
	H                     int32
	Min_w                 int32
	Min_h                 int32
	Max_w                 int32
	Max_h                 int32
	Flags                 uint32
	Last_fullscreen_flags uint32

	/* Stored position and size for windowed mode */
	Windowed SDL_Rect

	Fullscreen_mode SDL_DisplayMode

	Opacity float32

	Brightness  float32
	Gamma       *uint16
	Saved_gamma *uint16 /* (just offset into gamma) */

	Surface       *SDL_Surface
	Surface_valid *SDL_Surface

	Is_hiding     int32 // SDL_bool
	Is_destroying int32
	Is_dropping   int32

	Shaper *SDL_WindowShaper

	Hit_test      uintptr //SDL_HitTest is a function ptr
	Hit_test_data *byte

	Data       *SDL_WindowUserData
	Driverdata *byte

	Prev *SDL_Window
	Next *SDL_Window
}

func SDL_CreateWindow

func SDL_CreateWindow(title string, x, y, w, h int32, flags uint32) (*SDL_Window, error)

type SDL_WindowEvent

type SDL_WindowEvent struct {
	SDL_EventType        /**< ::SDL_WINDOWEVENT */
	Timestamp     uint32 /*  */
	WindowID      uint32 /**< The associated window */
	Event         uint8  /**< ::SDL_WindowEventID */

	Data1 int32 /**< event dependent data */
	Data2 int32 /**< event dependent data */
	// contains filtered or unexported fields
}

*

  • \brief Window state change event data (event.window.*)

type SDL_WindowShapeMode

type SDL_WindowShapeMode struct {
	Mode       WindowShapeMode
	Parameters SDL_WindowShapeParams
}

type SDL_WindowShapeParams

type SDL_WindowShapeParams struct {
	SDL_Color
}

type SDL_WindowShaper

type SDL_WindowShaper struct {
	Window *SDL_Window /* The window associated with the shaper */
	Userx  uint32      /* The user's specified coordinates for the window, for once we give it a shape. */
	Usery  uint32
	Mode   SDL_WindowShapeMode /* The parameters for shape calculation. */

	Driverdata *byte
	// contains filtered or unexported fields
}

type SDL_WindowUserData

type SDL_WindowUserData struct {
	Name *byte
	Data *byte
	Next *SDL_WindowUserData
}

type WindowShapeMode

type WindowShapeMode int32

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL