sdl

package
v0.0.0-...-e6da677 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2013 License: GPL-3.0 Imports: 13 Imported by: 0

Documentation

Overview

Package sdl provides partial bindings for the SDL multimedia library.

Index

Constants

View Source
const (
	KMOD_NONE   KeyMod = C.KMOD_NONE
	KMOD_LSHIFT        = C.KMOD_LSHIFT
	KMOD_RSHIFT        = C.KMOD_RSHIFT
	KMOD_LCTRL         = C.KMOD_LCTRL
	KMOD_RCTRL         = C.KMOD_RCTRL
	KMOD_LALT          = C.KMOD_LALT
	KMOD_RALT          = C.KMOD_RALT
	KMOD_LMETA         = C.KMOD_LMETA
	KMOD_RMETA         = C.KMOD_RMETA
	KMOD_NUM           = C.KMOD_NUM
	KMOD_CAPS          = C.KMOD_CAPS
	KMOD_MODE          = C.KMOD_MODE

	KMOD_CTRL  = KMOD_LCTRL | KMOD_RCTRL
	KMOD_SHIFT = KMOD_LSHIFT | KMOD_RSHIFT
	KMOD_ALT   = KMOD_LALT | KMOD_RALT
	KMOD_META  = KMOD_RMETA | KMOD_LMETA
)

SDL key modifiers

View Source
const (
	K_UNKNOWN      KeySym = C.SDLK_UNKNOWN
	K_FIRST               = C.SDLK_FIRST
	K_BACKSPACE           = C.SDLK_BACKSPACE
	K_TAB                 = C.SDLK_TAB
	K_CLEAR               = C.SDLK_CLEAR
	K_RETURN              = C.SDLK_RETURN
	K_PAUSE               = C.SDLK_PAUSE
	K_ESCAPE              = C.SDLK_ESCAPE
	K_SPACE               = C.SDLK_SPACE
	K_EXCLAIM             = C.SDLK_EXCLAIM
	K_QUOTEDBL            = C.SDLK_QUOTEDBL
	K_HASH                = C.SDLK_HASH
	K_DOLLAR              = C.SDLK_DOLLAR
	K_AMPERSAND           = C.SDLK_AMPERSAND
	K_QUOTE               = C.SDLK_QUOTE
	K_LEFTPAREN           = C.SDLK_LEFTPAREN
	K_RIGHTPAREN          = C.SDLK_RIGHTPAREN
	K_ASTERISK            = C.SDLK_ASTERISK
	K_PLUS                = C.SDLK_PLUS
	K_COMMA               = C.SDLK_COMMA
	K_MINUS               = C.SDLK_MINUS
	K_PERIOD              = C.SDLK_PERIOD
	K_SLASH               = C.SDLK_SLASH
	K_0                   = C.SDLK_0
	K_1                   = C.SDLK_1
	K_2                   = C.SDLK_2
	K_3                   = C.SDLK_3
	K_4                   = C.SDLK_4
	K_5                   = C.SDLK_5
	K_6                   = C.SDLK_6
	K_7                   = C.SDLK_7
	K_8                   = C.SDLK_8
	K_9                   = C.SDLK_9
	K_COLON               = C.SDLK_COLON
	K_SEMICOLON           = C.SDLK_SEMICOLON
	K_LESS                = C.SDLK_LESS
	K_EQUALS              = C.SDLK_EQUALS
	K_GREATER             = C.SDLK_GREATER
	K_QUESTION            = C.SDLK_QUESTION
	K_AT                  = C.SDLK_AT
	K_LEFTBRACKET         = C.SDLK_LEFTBRACKET
	K_BACKSLASH           = C.SDLK_BACKSLASH
	K_RIGHTBRACKET        = C.SDLK_RIGHTBRACKET
	K_CARET               = C.SDLK_CARET
	K_UNDERSCORE          = C.SDLK_UNDERSCORE
	K_BACKQUOTE           = C.SDLK_BACKQUOTE
	K_a                   = C.SDLK_a
	K_b                   = C.SDLK_b
	K_c                   = C.SDLK_c
	K_d                   = C.SDLK_d
	K_e                   = C.SDLK_e
	K_f                   = C.SDLK_f
	K_g                   = C.SDLK_g
	K_h                   = C.SDLK_h
	K_i                   = C.SDLK_i
	K_j                   = C.SDLK_j
	K_k                   = C.SDLK_k
	K_l                   = C.SDLK_l
	K_m                   = C.SDLK_m
	K_n                   = C.SDLK_n
	K_o                   = C.SDLK_o
	K_p                   = C.SDLK_p
	K_q                   = C.SDLK_q
	K_r                   = C.SDLK_r
	K_s                   = C.SDLK_s
	K_t                   = C.SDLK_t
	K_u                   = C.SDLK_u
	K_v                   = C.SDLK_v
	K_w                   = C.SDLK_w
	K_x                   = C.SDLK_x
	K_y                   = C.SDLK_y
	K_z                   = C.SDLK_z
	K_DELETE              = C.SDLK_DELETE
	K_KP0                 = C.SDLK_KP0
	K_KP1                 = C.SDLK_KP1
	K_KP2                 = C.SDLK_KP2
	K_KP3                 = C.SDLK_KP3
	K_KP4                 = C.SDLK_KP4
	K_KP5                 = C.SDLK_KP5
	K_KP6                 = C.SDLK_KP6
	K_KP7                 = C.SDLK_KP7
	K_KP8                 = C.SDLK_KP8
	K_KP9                 = C.SDLK_KP9
	K_KP_PERIOD           = C.SDLK_KP_PERIOD
	K_KP_DIVIDE           = C.SDLK_KP_DIVIDE
	K_KP_MULTIPLY         = C.SDLK_KP_MULTIPLY
	K_KP_MINUS            = C.SDLK_KP_MINUS
	K_KP_PLUS             = C.SDLK_KP_PLUS
	K_KP_ENTER            = C.SDLK_KP_ENTER
	K_KP_EQUALS           = C.SDLK_KP_EQUALS
	K_UP                  = C.SDLK_UP
	K_DOWN                = C.SDLK_DOWN
	K_RIGHT               = C.SDLK_RIGHT
	K_LEFT                = C.SDLK_LEFT
	K_INSERT              = C.SDLK_INSERT
	K_HOME                = C.SDLK_HOME
	K_END                 = C.SDLK_END
	K_PAGEUP              = C.SDLK_PAGEUP
	K_PAGEDOWN            = C.SDLK_PAGEDOWN
	K_F1                  = C.SDLK_F1
	K_F2                  = C.SDLK_F2
	K_F3                  = C.SDLK_F3
	K_F4                  = C.SDLK_F4
	K_F5                  = C.SDLK_F5
	K_F6                  = C.SDLK_F6
	K_F7                  = C.SDLK_F7
	K_F8                  = C.SDLK_F8
	K_F9                  = C.SDLK_F9
	K_F10                 = C.SDLK_F10
	K_F11                 = C.SDLK_F11
	K_F12                 = C.SDLK_F12
	K_F13                 = C.SDLK_F13
	K_F14                 = C.SDLK_F14
	K_F15                 = C.SDLK_F15
	K_NUMLOCK             = C.SDLK_NUMLOCK
	K_CAPSLOCK            = C.SDLK_CAPSLOCK
	K_SCROLLOCK           = C.SDLK_SCROLLOCK
	K_RSHIFT              = C.SDLK_RSHIFT
	K_LSHIFT              = C.SDLK_LSHIFT
	K_RCTRL               = C.SDLK_RCTRL
	K_LCTRL               = C.SDLK_LCTRL
	K_RALT                = C.SDLK_RALT
	K_LALT                = C.SDLK_LALT
	K_RMETA               = C.SDLK_RMETA
	K_LMETA               = C.SDLK_LMETA
	K_LSUPER              = C.SDLK_LSUPER
	K_RSUPER              = C.SDLK_RSUPER
	K_MODE                = C.SDLK_MODE
	K_COMPOSE             = C.SDLK_COMPOSE
	K_HELP                = C.SDLK_HELP
	K_PRINT               = C.SDLK_PRINT
	K_SYSREQ              = C.SDLK_SYSREQ
	K_BREAK               = C.SDLK_BREAK
	K_MENU                = C.SDLK_MENU
	K_POWER               = C.SDLK_POWER
	K_EURO                = C.SDLK_EURO
	K_UNDO                = C.SDLK_UNDO
	K_LAST                = C.SDLK_LAST
)

SDL keysym constants

View Source
const SamplingRate = 11025

Variables

View Source
var Events = make(chan interface{})

Functions

func BufferAudio

func BufferAudio(sound []int8)

BufferAudio adds 8-bit audio to the play buffer.

func ClearAudioBuffer

func ClearAudioBuffer()

func Flip

func Flip()

Flip swaps screen buffers with a double-buffered display mode. Use it to make the changes you made to the screen become visible.

func IsKeyDown

func IsKeyDown(key KeySym) bool

func Play

func Play(input io.Reader) error

func Run

func Run(width, height int)

Run starts a SDL application.

func SetFrame

func SetFrame(surface *Surface)

SetFrame sets the default frame buffer to draw to.

func Stop

func Stop()

Stop stops a running SDL application.

Types

type FocusEvent

type FocusEvent bool

True if focus was gained, false if it was lost.

type KeyEvent

type KeyEvent struct {
	Print   rune // Printable character
	Sym     KeySym
	Code    Scancode
	Mod     KeyMod
	KeyDown bool // False if the key is being raised
}

func (KeyEvent) FixedSym

func (evt KeyEvent) FixedSym() KeySym

FixedKeySym tries to use the scancode of the key event to get a keyboard layout invariant keysym. If this fails, it returns the unchanged keysym.

type KeyMod

type KeyMod int

func (KeyMod) String

func (m KeyMod) String() string

type KeySym

type KeySym int

Denotes a key on the keyboard, like 'a' or 'up arrow'.

func TranslateScancode

func TranslateScancode(code Scancode) KeySym

func (KeySym) String

func (sym KeySym) String() string

type MouseEvent

type MouseEvent struct {
	Pos     image.Point
	Buttons int8
}

type Palette

type Palette []struct {
	R, G, B byte
	Unused  byte
}

func MakePalette

func MakePalette(colors []color.Color) (result Palette)

type QuitEvent

type QuitEvent struct{}

type ResizeEvent

type ResizeEvent image.Point

type Scancode

type Scancode int

Denotes a nonportable hardware scancode for a keyboard key. Independent of keyboard layout.

type Surface

type Surface struct {
	// contains filtered or unexported fields
}

func Frame

func Frame() *Surface

func NewPaletteSurface

func NewPaletteSurface(w, h int) (s *Surface)

func NewSurface

func NewSurface(w, h int) (s *Surface)

func ToSurface

func ToSurface(img image.Image) (s *Surface)

func Video

func Video() *Surface

Video returns the surface for the base SDL window.

func (*Surface) At

func (s *Surface) At(x, y int) (c color.Color)

func (*Surface) BPP

func (s *Surface) BPP() int

BPP returns the bytes per pixel of the surface.

func (*Surface) Blit

func (s *Surface) Blit(bounds image.Rectangle, x, y int, target *Surface)

func (*Surface) Bounds

func (s *Surface) Bounds() image.Rectangle

func (*Surface) Clear

func (s *Surface) Clear(color color.Color)

func (*Surface) ClearClipRect

func (s *Surface) ClearClipRect()

func (*Surface) ColorModel

func (s *Surface) ColorModel() color.Model

func (*Surface) FillRect

func (s *Surface) FillRect(rect image.Rectangle, color color.Color)

func (*Surface) GetColor

func (s *Surface) GetColor(c32 uint32) color.Color

func (*Surface) IsPalettized

func (s *Surface) IsPalettized() bool

func (*Surface) MapColor

func (s *Surface) MapColor(c color.Color) uint32

func (*Surface) Pitch32

func (s *Surface) Pitch32() int

Pitch32 returns the span of a horizontal line in the surface in 32-bit units.

func (*Surface) Pixels32

func (s *Surface) Pixels32() (result []uint32)

Pixels32 maps an array of 32-bit values to the pixels of a 32-bit surface.

func (*Surface) Pixels8

func (s *Surface) Pixels8() (result []uint8)

func (*Surface) Set

func (s *Surface) Set(x, y int, c color.Color)

func (*Surface) SetClipRect

func (s *Surface) SetClipRect(rect image.Rectangle)

func (*Surface) SetColorKey

func (s *Surface) SetColorKey(c color.Color)

func (*Surface) SetColors

func (s *Surface) SetColors(pal Palette)

Jump to

Keyboard shortcuts

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