| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-render-draw-line): New procedure.
* sdl2/render.scm (render-draw-line): New procedure.
* doc/api.texi (Rendering): Document it.
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-render-draw-line): New procedure.
* sdl2/render.scm (render-draw-line): New procedure.
* doc/api.texi: Document it.
|
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-point): New variable.
(sdl-render-copy-ex): New procedure.
* sdl2/render.scm (render-copy): Add optional arguments, angle and
center.
* doc/api.texi (Rendering): Document it.
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-fill-rect): New procedure.
* sdl2/surface.scm (fill-rect): New procedure.
* doc/api.texi (Surfaces): Document it.
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-blit-scaled): New procedure.
* sdl2/surface.scm (blit-scaled): New procedure.
* doc/api.texi (Surfaces): Document it.
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-blit-surface): New procedure.
* sdl2/surface.scm (blit-surface): New procedure.
|
|
|
|
|
| |
* sdl2/rect.scm: New file.
* Makefile.am (SOURCES): Add it.
|
|
|
|
| |
* sdl2/input/game-controller.scm (axis-symbol->int): Fix typo!
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-set-render-draw-color): New procedure.
* sdl2/render.scm (set-render-draw-color): New procedure.
|
|
|
|
| |
* sdl2/input/mouse.scm (mouse-button-released?): New procedure.
|
|
|
|
|
| |
* sdl2/input/mouse.scm: New file.
* Makefile.am (SOURCES): Add it.
|
|
|
|
|
| |
* sdl2/render.scm (render-copy): Make srcrect and dstrect optional and
do not use nil? to check them.
|
|
|
|
|
|
| |
No high-level wrapper yet, though.
* sdl2/bindings.scm (sdl-get-mouse-state): New procedure.
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-get-clipboard-text, sdl-set-clipboard-text,
sdl-has-clipboard-text): New procedures.
* sdl2/clipboard.scm: New file.
* Makefile.am (SOURCES): Add it.
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-game-controller-add-mappings-from-file): New
procedure.
* sdl2/input/game-controller.scm (load-game-controller-mappings!): New
procedure.
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-rect): New variable.
* sdl2/render.scm (render-copy): Add srcrect and dstrect arguments.
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-get-keyboard-state): New procedure.
* sdl2/input/keyboard.scm: New file.
* Makefile.am (SOURCES): Add it.
|
|
|
|
| |
* sdl2/surface.scm: Export pixel-format-name.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sdl2/surface.scm (color?, make-color, color-r, color-g, color-b,
color-a, palette?, palette-length, palette-colors, pixel-format?,
pixel-format-bits-per-pixel, pixel-format-bytes-per-pixel,
pixel-format-red-mask, pixel-format-green-mask, pixel-format-blue-mask,
pixel-format-alpha-mask, surface-pixel-format, wrap-palette,
unwrap-palette, wrap-pixel-format, unwrap-pixel-format): New procedures.
(<color>, <palette>, <pixel-format>): New types.
(%palette-types, %pixel-format-types): New variables.
(palette-parse-match, pixel-format-parse-match): New syntax.
* .dir-locals.el: Add indent rules for new macros.
|
|
|
|
|
|
|
|
| |
* sdl2/events.scm (<keyboard-event>): Rename "repeat" field to
"repeat?"
(keyboard-event-repeat): Replace with...
(keyboard-event-repeat?): ... this.
(parse-keyboard-event): Parse "repeat" field as a boolean.
|
|
|
|
|
| |
* sdl2/events.scm (controller-added-event?, controller-removed-event?,
controller-remapped-event?): New procedures.
|
|
|
|
|
| |
* sdl2/events.scm (poll-event): Reuse the same event structure for each
call.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sdl2.scm (%default-init-flags): Add 'joystick' to default flags.
(sdl-init): Translate to 'joystick' to SDL2 init bit flag.
* sdl2/bindings.scm (SDL_INIT_JOYSTICK, SDL_JOYSTICK_POWER_UNKNOWN,
SDL_JOYSTICK_POWER_EMPTY, SDL_JOYSTICK_POWER_LOW,
SDL_JOYSTICK_POWER_MEDIUM, SDL_JOYSTICK_POWER_FULL,
SDL_JOYSTICK_POWER_WIRED, SDL_JOYSTICK_POWER_MAX,
SDL_CONTROLLER_AXIS_INVALID, SDL_CONTROLLER_AXIS_LEFTX,
SDL_CONTROLLER_AXIS_LEFTY, SDL_CONTROLLER_AXIS_RIGHTX,
SDL_CONTROLLER_AXIS_RIGHTY, SDL_CONTROLLER_AXIS_TRIGGERLEFT,
SDL_CONTROLLER_AXIS_TRIGGERRIGHT, SDL_CONTROLLER_AXIS_MAX,
SDL_CONTROLLER_BUTTON_INVALID, SDL_CONTROLLER_BUTTON_A,
SDL_CONTROLLER_BUTTON_B, SDL_CONTROLLER_BUTTON_X,
SDL_CONTROLLER_BUTTON_Y, SDL_CONTROLLER_BUTTON_BACK,
SDL_CONTROLLER_BUTTON_GUIDE, SDL_CONTROLLER_BUTTON_START,
SDL_CONTROLLER_BUTTON_LEFTSTICK, SDL_CONTROLLER_BUTTON_RIGHTSTICK,
SDL_CONTROLLER_BUTTON_LEFTSHOULDER, SDL_CONTROLLER_BUTTON_RIGHTSHOULDER,
SDL_CONTROLLER_BUTTON_DPAD_UP, SDL_CONTROLLER_BUTTON_DPAD_DOWN,
SDL_CONTROLLER_BUTTON_DPAD_LEFT, SDL_CONTROLLER_BUTTON_DPAD_RIGHT,
SDL_CONTROLLER_BUTTON_MAX): New variables.
(sdl-joystick-open, sdl-joystick-close,
sdl-joystick-current-power-level, sdl-joystick-event-state,
sdl-joystick-from-instance-id, sdl-joystick-get-attached,
sdl-joystick-get-axis, sdl-joystick-get-ball, sdl-joystick-get-button,
sdl-joystick-get-device-guid, sdl-joystick-get-guide,
sdl-joystick-get-guid-from-string, sdl-joystick-get-guid-string,
sdl-joystick-get-hat, sdl-joystick-instance-id, sdl-joystick-name,
sdl-joystick-name-for-index, sdl-joystick-num-axes,
sdl-joystick-num-balls, sdl-joystick-num-buttons, sdl-joystick-num-hats,
sdl-num-joysticks, sdl-joystick-update, sdl-game-controller-add-mapping,
sdl-game-controller-open, sdl-game-controller-close,
sdl-game-controller-event-state, sdl-game-controller-from-instance-id,
sdl-game-controller-get-attached, sdl-game-controller-get-axis,
sdl-game-controller-get-axis-from-string,
sdl-game-controller-get-string-from-axis,
sdl-game-controller-get-string-for-axis, sdl-game-controller-get-button,
sdl-game-controller-get-button-from-string,
sdl-game-controller-get-string-from-button,
sdl-game-controller-get-joystick, sdl-game-controller-mapping,
sdl-game-controller-mapping-for-guid, sdl-game-controller-name,
sdl-game-controller-name-for-index, sdl-game-controller-update,
sdl-is-game-controller): New procedures.
* sdl2/events.scm (make-joystick-ball-event, joystick-ball-event?,
joystick-ball-event-timestamp, joystick-ball-event-which,
joystick-ball-event-ball, joystick-ball-event-x-rel,
joystick-ball-event-y-rel, make-joystick-hat-event, joystick-hat-event?,
joystick-hat-event-timestamp, joystick-hat-event-which,
joystick-hat-event-hat, joystick-hat-event-value,
make-joystick-device-event, joystick-device-event?,
joystick-device-event-timestamp, joystick-device-event-which,
joystick-device-event-action, make-controller-axis-event,
controller-axis-event?, controller-axis-event-timestamp,
controller-axis-event-which, controller-axis-event-axis,
controller-axis-event-value, make-controller-button-event,
controller-button-event?, controller-button-down-event?,
controller-button-up-event?, controller-button-event-timestamp,
controller-button-event-which, controller-button-event-button,
controller-button-event-pressed?, make-controller-device-event,
controller-device-event?, controller-device-event-timestamp,
controller-device-event-which, controller-device-event-action,
parse-joystick-ball-event, parse-joystick-hat-event,
parse-joystick-device-event, parse-controller-axis-event,
parse-controller-button-event, parse-controller-device-event): New
procedures.
(poll-event): Parse joystick/controller events.
* sdl2/input/joystick.scm: New file.
* sdl2/input/game-controller.scm: New file.
* Makefile.am (SOURCES): Add them
|
|
|
|
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-start-text-input, sdl-stop-text-input,
sdl-is-text-input-active): New procedures.
* sdl2/events.scm (<text-input-event>): New record type.
(make-text-input-event, text-input-event?, text-input-event-timestamp,
text-input-event-window-id, text-input-event-text,
parse-text-input-event): New procedures.
* sdl2/input/text.scm: New file.
* Makefile.am (SOURCES): Add it.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-set-window-fullscreen): New procedure.
* sdl2/video.scm (set-window-fullscreen!): New procedure.
|
|
|
|
|
| |
* sdl2/video.scm (set-gl-attribute!):
s/contet-minor-version/context-minor-version/
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-gl-set-swap-interval): New procedure.
* sdl2/video.scm (set-gl-swap-interval!): New procedure.
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-get-set-attribute): New procedure.
* sdl2/video.scm (set-gl-attribute!): New procedure.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code worked fine on Guile 2.0.11, but Guile master revealed how bad
it was to use 'sizeof' to calculate byte offsets into structs due to the
padding calculations it does. On Guile master, the offset for surface
height and pitch were the same, and that lead to bad news when trying to
use that incorrectly parsed data to inspect the pixel buffer.
* sdl2/surface.scm (%width-offset, %height-offset, %pitch-offset)
(%pixels-offset): Delete.
(%surface-types): New variable.
(surface-parse-match): New syntax.
(surface-width, surface-height, surface-pitch, surface-pixels): Use new
struct parsing method.
* .dirlocals.el: Add new indenting rule.
|
| |
|
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_UNDEFINED):
New variables.
* sdl2/video.scm (make-window): Accept #f and 'center' as valid
coordinates for undefined and centered positioning, respectively. Use
an undefined position by default.
|
|
|
|
|
|
|
| |
Was trying to wrap the wrong thing. -_-
* sdl2/surface.scm (convert-surface-format): Wrap the new pointer, not
the old surface object. Oops.
|
|
|
|
|
|
| |
* sdl2/bindings.scm: Add a ton of pixel format constants.
* sdl2/surface.scm: (symbol->sdl-pixel-format, convert-surface-format):
New procedures.
|
|
|
|
|
|
|
| |
This is consistent with representing coordinate pairs as lists
elsewhere in the library.
* sdl2/events.scm (parse-window-event): Change vector from pair to list.
|
|
|
|
|
|
|
|
|
| |
* sdl2/events.scm (window-shown-event?, window-hidden-event?,
window-exposed-event?, window-moved-event?, window-resized-event?,
window-size-changed-event?, window-minimized-event?,
window-maximized-event?, window-restored-event?, window-enter-event?,
window-leave-event?, window-focus-gained-event?,
window-focus-lost-event?, window-closed-event?): New procedures.
|
|
|
|
|
|
|
| |
* sdl2/events.scm (<quit-event>): New record type.
(make-quit-event, quit-event?, quit-event-timestamp, parse-quit-event):
New procedures.
(poll-event): Add support for SDL_QUIT events.
|
|
|
|
|
|
|
|
|
| |
Exported the wrong symbol for the key symbol, and forgot to export
symbols for selecting scancode and modifiers.
* sdl2/events.scm: Remove export to nonexistent keyboard-event-keysym.
Export keyboard-event-key, keyboard-event-scancode, and
keyboard-event-modifiers.
|
|
|
|
|
|
|
| |
* sdl2/surface.scm (pointer-int-ref, surface-width, surface-height)
(surface-pitch, surface-pixels): New procedures.
(%int-size, %pointer-size, %width-offset, %height-offset, %pitch-offset)
(%pixels-offset): New variables.
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm: Add "AUDIO_*" constants.
* sdl2/bindings/mixer.scm: New file.
* sdl2/mixer.scm: New file.
* Makefile.am (SOURCES): Add new files.
|
| |
|
|
|
|
|
|
| |
* sdl2/bindings/ttf.scm: New file.
* sdl2/ttf.scm: New file.
* Makefile.am (SOURCES): Add them.
|
|
|
|
|
| |
* sdl2/surface.scm (<surface>): s/context/surface/ in record type
printer.
|
|
|
|
|
|
|
| |
* sdl2/bindings.scm (sdl-color): New variable.
* sdl2.scm (<color>): New record type.
(make-color, color?, color-r, color-g, color-b, color-a, color->struct): New
procedures.
|
| |
|
|
|
|
|
|
| |
* sdl2/bindings/image.scm: New file.
* sdl2/image.scm: New file.
* Makefile.am (SOURCES): Add them.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* sdl2/events.scm (<joystick-button-event>): New record type.
(make-joystick-button-event, joystick-button-event?,
joystick-button-down-event?, joystick-button-up-event?,
joystick-button-event-timestamp, joystick-button-event-which,
joystick-button-event-button, joystick-button-event-pressed?,
parse-joystick-button-event): New procedures.
(poll-event): Add support for joystick button events.
|