' This is file SDL_shape.bi.
'
' Sub-FreeBasic-Header file for libSDL2 (version 2.0.1),
' translated with help of h_2_bi.bas
'
' Licence:
' (C) 2013 Thomas{dOt]Freiherr{ aT }gmx[ DoT }net
' See SDL2.bi for licence details

EXTERN "C" ' (h_2_bi -P_oCD option)

#IFNDEF _SDL_shape_h
#DEFINE _SDL_shape_h

#IFNDEF _SDL_H
#ERROR Include SDL2.bi first!
#ENDIF

#DEFINE SDL_NONSHAPEABLE_WINDOW -1
#DEFINE SDL_INVALID_SHAPE_ARGUMENT -2
#DEFINE SDL_WINDOW_LACKS_SHAPE -3

DECLARE FUNCTION SDL_CreateShapedWindow(BYVAL AS CONST ZSTRING PTR, BYVAL AS UINTEGER, BYVAL AS UINTEGER, BYVAL AS UINTEGER, BYVAL AS UINTEGER, BYVAL AS Uint32) AS SDL_Window PTR
DECLARE FUNCTION SDL_IsShapedWindow(BYVAL AS CONST SDL_Window PTR) AS SDL_bool

ENUM WindowShapeMode
	ShapeModeDefault
	ShapeModeBinarizeAlpha
	ShapeModeReverseBinarizeAlpha
	ShapeModeColorKey
END ENUM

#DEFINE SDL_SHAPEMODEALPHA(mode) IIF(mode = ShapeModeDefault ORELSE mode = ShapeModeBinarizeAlpha ORELSE mode = ShapeModeReverseBinarizeAlpha, SDL_TRUE, SDL_FALSE)

UNION SDL_WindowShapeParams
	AS Uint8 binarizationCutoff
	AS SDL_Color colorKey
END UNION

TYPE SDL_WindowShapeMode
	AS WindowShapeMode mode
	AS SDL_WindowShapeParams parameters
END TYPE

DECLARE FUNCTION SDL_SetWindowShape(BYVAL AS SDL_Window PTR, BYVAL AS SDL_Surface PTR, BYVAL AS SDL_WindowShapeMode PTR) AS INTEGER
DECLARE FUNCTION SDL_GetShapedWindowMode(BYVAL AS SDL_Window PTR, BYVAL AS SDL_WindowShapeMode PTR) AS INTEGER

#ENDIF ' _SDL_shape_h

END EXTERN ' (h_2_bi -P_oCD option)

' Translated at 13-11-02 18:48:40, by h_2_bi (version 0.2.4,
' released under GPLv3 by Thomas[ dot ]Freiherr{ at }gmx[ dot ]net)

'   Protocol: SDL_shape.bi
' Parameters: SDL_shape
'                                  Process time [s]: 0.003822094760835171
'                                  Bytes translated: 1618
'                                      Maximum deep: 1
'                                SUB/FUNCTION names: 4
'                                mangled TYPE names: 0
'                                        files done: 1
' SDL2-2.0.1/include/SDL_shape.h
'                                      files missed: 0
'                                       __FOLDERS__: 1
' SDL2-2.0.1/include/
'                                        __MACROS__: 3
' 4: #define DECLSPEC
' 4: #define SDLCALL
' 5: #define extern
'                                       __HEADERS__: 0
'                                         __TYPES__: 0
'                                     __POST_REPS__: 0
