]> gitweb.factorcode.org Git - factor.git/commitdiff
raylib: update to Raylib 4.0
authorJohn Benediktsson <mrjbq7@gmail.com>
Sat, 25 Dec 2021 04:41:49 +0000 (20:41 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Sat, 25 Dec 2021 04:41:49 +0000 (20:41 -0800)
extra/raylib/demo/demo.factor
extra/raylib/demo/mesh-picking/mesh-picking.factor
extra/raylib/ffi/authors.txt [deleted file]
extra/raylib/ffi/ffi.factor [deleted file]
extra/raylib/ffi/util/util.factor [deleted file]
extra/raylib/gui-demo/gui-demo.factor [deleted file]
extra/raylib/gui-demo/tags.txt [deleted file]
extra/raylib/modules/gui/gui.factor [deleted file]
extra/raylib/modules/ricons/ricons.factor [deleted file]
extra/raylib/summary.txt

index 56c5ba176545aebbe2a556abb20e59a3f09abe51..1eaec46dd04ee7a011ce749f4383373e282d562a 100644 (file)
@@ -1,7 +1,8 @@
 ! Copyright (C) 2019 Jack Lucas
 ! See http://factorcode.org/license.txt for BSD license.
-USING: raylib.ffi kernel math.ranges sequences locals random combinators.random  math threads calendar namespaces accessors classes.struct combinators alien.enums ;
-IN: raylib.demo 
+USING: accessors alien.enums classes.struct combinators kernel
+math namespaces raylib ;
+IN: raylib.demo
 
 : say-hello ( -- )
     "Hello, Factor!" 200 400 60 MAGENTA draw-text ;
index daef25f63fa381e81e242ab31211ae4bf448c239..479ee8ca44f1a6bb719dbf7f3a4b02afca0860d8 100644 (file)
@@ -1,7 +1,7 @@
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors alien.enums arrays classes.struct combinators.short-circuit
 continuations destructors formatting grouping io.backend io.pathnames kernel math
-math.functions.private math.vectors namespaces raylib.ffi sequences threads
+math.functions.private math.vectors namespaces raylib sequences threads
 vocabs.metadata ;
 
 IN: raylib.demo.mesh-picking
@@ -46,7 +46,7 @@ CONSTANT: screen-height 800
 TUPLE: hit-state name color nearest-hit ;
 : <hit-state> ( -- obj )
     "None" WHITE
-    RayHitInfo <struct>
+    RayCollision <struct>
     most-positive-finite-float >>distance
     f >>hit
     hit-state boa ;
@@ -57,21 +57,23 @@ TUPLE: hit-state name color nearest-hit ;
     f >>hit drop ;
 
 : handle-ground-hit ( hit-state ray -- hit-state )
-    0 get-collision-ray-ground
-    over nearest-hit>> swap update-hit?
-    [ >>nearest-hit ] dip
-    [ GREEN >>color "Ground" >>name ] when ;
+    drop ;
+    ! FIXME: raylib 4.0 doesn't have GetCollisionRayGround
+    ! 0 get-collision-ray-ground
+    ! over nearest-hit>> swap update-hit?
+    ! [ >>nearest-hit ] dip
+    ! [ GREEN >>color "Ground" >>name ] when ;
 
 : handle-triangle-hit ( hit-state ray ta tb tc -- hit-state ? )
-    get-collision-ray-triangle
+    get-ray-collision-triangle
     over nearest-hit>> swap update-hit?
     [ [ >>nearest-hit ] dip
     [ PURPLE >>color "Triangle" >>name ] when ] keep ;
 
 : handle-mesh-hit ( hit-state ray model bbox -- hit-state ? )
-    pick swap check-collision-ray-box
+    pick swap get-ray-collision-box
     [
-      get-collision-ray-model
+      get-ray-collision-model
       over nearest-hit>> swap update-hit?
       [ >>nearest-hit ] dip
       [ ORANGE >>color "Mesh" >>name ] when
@@ -83,8 +85,8 @@ TUPLE: tower model bbox position ;
 : <tower> ( -- obj )
     "turret.obj" resource load-model &unload-model
     "turret_diffuse.png" resource load-texture &unload-texture
-    over materials>> first maps>> MAP_DIFFUSE enum>number swap nth texture<<
-    dup meshes>> first mesh-bounding-box
+    over materials>> first maps>> MATERIAL_MAP_DIFFUSE enum>number swap nth texture<<
+    dup meshes>> first get-mesh-bounding-box
     0 0 0 <Vector3> tower boa ;
 
 : init-assets ( -- tower triangle )
diff --git a/extra/raylib/ffi/authors.txt b/extra/raylib/ffi/authors.txt
deleted file mode 100644 (file)
index ef48e98..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Jack Lucas
diff --git a/extra/raylib/ffi/ffi.factor b/extra/raylib/ffi/ffi.factor
deleted file mode 100644 (file)
index bbd7387..0000000
+++ /dev/null
@@ -1,1224 +0,0 @@
-! Copyright (C) 2019 Jack Lucas
-! See http://factorcode.org/license.txt for BSD license.
-! These should be complete bindings to the Raylib library. (v2.5)
-! Most of the comments are included from the original header
-! for your convenience.
-USING: accessors alien alien.c-types alien.destructors alien.libraries
-alien.syntax classes.struct combinators kernel raylib.ffi.util sequences
-sequences.private system vocabs ;
-IN: raylib.ffi
-FROM: alien.c-types => float ;
-<<
-"raylib" {
-    { [ os windows? ] [ "raylib.dll" ] }
-    { [ os macosx? ] [ "libraylib.dylib" ] }
-    { [ os unix? ] [ "libraylib.so" ] }
-} cond cdecl add-library 
-
-"raylib" deploy-library
->>
-
-LIBRARY: raylib
-
-! Structs ----------------------------------------------------------------
-STRUCT: Vector2
-    { x float }
-    { y float } ;
-
-STRUCT: Vector3
-    { x float }
-    { y float }
-    { z float } ;
-
-STRUCT: Vector4
-    { x float }
-    { y float }
-    { z float }
-    { w float } ;
-TYPEDEF: Vector4 Quaternion ! Same as Vector4
-
-ERROR: invalid-vector-length obj exemplar ;
-
-: <Vector2> ( x y -- obj ) Vector2 <struct-boa> ; inline
-INSTANCE: Vector2 sequence
-M: Vector2 length drop 2 ; inline
-M: Vector2 nth-unsafe
-    swap 0 = [ x>> ] [ y>> ] if ;
-M: Vector2 set-nth-unsafe
-    swap 0 = [ x<< ] [ y<< ] if ;
-M: Vector2 like
-    over length 2 =
-    [ drop dup Vector2?
-      [ first2 <Vector2> ] unless
-    ] [ invalid-vector-length ] if ; inline
-M: Vector2 new-sequence
-    over 2 = [
-        2drop Vector2 (struct)
-    ] [ invalid-vector-length ] if ; inline
-
-: <Vector3> ( x y z -- obj ) Vector3 <struct-boa> ; inline
-INSTANCE: Vector3 sequence
-M: Vector3 length drop 3 ; inline
-M: Vector3 nth-unsafe
-    swap { { 0 [ x>> ] }
-           { 1 [ y>> ] }
-           { 2 [ z>> ] } } case ;
-M: Vector3 set-nth-unsafe
-    swap { { 0 [ x<< ] }
-           { 1 [ y<< ] }
-           { 2 [ z<< ] } } case ;
-M: Vector3 like
-    over length 3 =
-    [ drop dup Vector3?
-      [ first3 <Vector3> ] unless
-    ] [ invalid-vector-length ] if ; inline
-M: Vector3 new-sequence
-    over 3 = [
-        2drop Vector3 (struct)
-    ] [ invalid-vector-length ] if ; inline
-
-: <Vector4> ( x y z w -- obj ) Vector4 <struct-boa> ; inline
-INSTANCE: Vector4 sequence
-M: Vector4 length drop 4 ; inline
-M: Vector4 nth-unsafe
-    swap { { 0 [ x>> ] }
-           { 1 [ y>> ] }
-           { 2 [ z>> ] }
-           { 3 [ w>> ] } } case ;
-M: Vector4 set-nth-unsafe
-    swap { { 0 [ x<< ] }
-           { 1 [ y<< ] }
-           { 2 [ z<< ] }
-           { 3 [ w<< ] } } case ;
-M: Vector4 like
-    over length 4 =
-    [ drop dup Vector4?
-      [ first4 <Vector4> ] unless
-    ] [ invalid-vector-length ] if ; inline
-M: Vector4 new-sequence
-    over 4 = [
-        2drop Vector4 (struct)
-    ] [ invalid-vector-length ] if ; inline
-
-! Matrix type (OpenGL style 4x4 - right handed, column major)
-STRUCT: Matrix
-    { m0 float } { m4 float } { m8 float } { m12 float }
-    { m1 float } { m5 float } { m9 float } { m13 float }
-    { m2 float } { m6 float } { m10 float } { m14 float }
-    { m3 float } { m7 float } { m11 float } { m15 float } ;
-
-STRUCT: Color
-    { r uchar }
-    { g uchar }
-    { b uchar }
-    { a uchar } ;
-
-STRUCT: Rectangle
-    { x float }
-    { y float }
-    { width float }
-    { height float } ;
-
-! Image type, bpp always RGBA (32bit)
-! NOTE: Data Stored in CPU Memory (RAM)
-STRUCT: Image
-    { data void* }                     ! Image raw data
-    { width int }                      ! Image base width
-    { height int }                     ! Image base height
-    { mipmaps int }                    ! Mipmap levels, 1 by default
-    { format int } ;                   ! Data format (PixelFormat type)
-
-STRUCT: Texture2D
-    { id uint }                        ! OpenGL Texture ID
-    { width int }                      ! Texture Base Width
-    { height int }                     ! Texture Base Height
-    { mipmaps int }                    ! Mipmap Levels, 1 by default
-    { format int } ;                   ! Data Format (PixelFormat type)
-TYPEDEF: Texture2D Texture             ! Texture type same as Texture2D
-TYPEDEF: Texture2D TextureCubemap      ! Actually same as Texture2D
-
-STRUCT: RenderTexture2D
-    { id uint }                        ! OpenGL Framebuffer Object (FBO) id
-    { texture Texture2D }              ! Color buffer attachment texture
-    { depth Texture2D } ;              ! Depth buffer attachment texture
-TYPEDEF: RenderTexture2D RenderTexture ! Same as RenderTexture2D
-
-STRUCT: NPatchInfo
-    { source Rectangle }
-    { left int }
-    { top int }
-    { right int }
-    { bottom int }
-    { type int } ;
-
-STRUCT: CharInfo
-    { value int }                      ! Character value (Unicode)
-    { offsetX int }                    ! Character offset X when drawing
-    { offsetY int }                    ! Character offset Y when drawing
-    { advanceX int }                   ! Character advance position X
-    { image Image } ;                  ! Character image data
-    
-STRUCT: Font
-    { baseSize int }      ! Base Size (default chars height)
-    { charsCount int }    ! Number of characters
-    { texture Texture2D } ! Characters texture atlas
-    { recs Rectangle* }   ! Characters rectangles in texture
-    { chars CharInfo* } ; ! Characters info data
-
-TYPEDEF: Font SpriteFont
-    
-! Camera projection modes
-ENUM: CameraType
-    CAMERA_PERSPECTIVE
-    CAMERA_ORTHOGRAPHIC ;
-
-STRUCT: Camera3D
-    { position Vector3 }  ! Camera postion
-    { target Vector3 }    ! Camera target it looks-at
-    { up Vector3 }        ! Camera up vector (rotation over its axis)
-    { fovy float }        ! camera field-of-view apperature in Y (degrees) in perspective, used as near plane width in orthographic
-    { type CameraType } ;        ! Camera type, defines projection type: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC
-
-STRUCT: Camera2D
-    { offset Vector2 }    ! Camera offset (displacement from target)
-    { target Vector2 }    ! Camera target (rotation and zoom origin)
-    { rotation float }    ! Camera rotation in degrees
-    { zoom float } ;      ! Camera zoom (scaling), should be 1.0f by default
-TYPEDEF: Camera3D Camera  ! Default to 3D Camera
-
-STRUCT: Mesh
-    { vertexCount int }   ! Number of vertices stored in arrays
-    { triangleCount int } ! Number of triangles stored (indexed or not )
-    { _vertices float* }  ! Vertex position (XYZ - 3 components per vertex)
-    { _texcoords float* }  ! Vertex texture coordinates (UV - 2 components per vertex )
-    { texcoords2 float* } ! Vertex second texture coordinates (useful for lightmaps)
-    { _normals float* }    ! Vertex normals (XYZ - 3 components per vertex)
-    { tangents float* }   ! Vertex tangents (XYZW - 4 components per vertex )
-    { colors uchar* }     ! Vertex colors (RGBA - 4 components per vertex)
-    { indices ushort* }   ! Vertex indices (in case vertex data comes indexed)
-    { animVertices float* }
-    { animNormals float* }
-    { boneIds int* }
-    { boneWeights float* }
-    { vaoId uint }        ! OpenGL Vertex Array Object id
-    { vboId uint* } ;     ! OpenGL Vertex Buffer Objects id (7  types of vertex data)
-
-ARRAY-SLOT: Mesh Vector3 _vertices [ vertexCount>> ] vertices
-ARRAY-SLOT: Mesh Vector2 _texcoords [ vertexCount>> ] texcoords
-ARRAY-SLOT: Mesh Vector3 _normals [ vertexCount>> ] normals
-
-STRUCT: Shader
-    { id uint }              ! Shader program id
-    { locs int* } ;          ! Shader locations array
-                             ! This is dependant on MAX_SHADER_LOCATIONS.  Default is 32
-STRUCT: MaterialMap
-    { texture Texture2D }    ! Material map Texture
-    { color Color }          ! Material map color
-    { value float } ;        ! Material map value
-
-CONSTANT: MAX_MATERIAL_MAPS 12 ! NOTE: This seems to be a compile-time constant!
-STRUCT: Material
-    { shader Shader }        ! Material shader
-    { _maps MaterialMap* }    ! Material maps.  Uses MAX_MATERIAL_MAPS.
-    { params float* } ;      ! Material generic parameters (if required)
-ARRAY-SLOT: Material MaterialMap _maps [ drop 12 ] maps
-
-STRUCT: Transform
-    { translation Vector3 }
-    { rotation Quaternion }
-    { scale Vector3 } ;
-
-STRUCT: BoneInfo
-    { name char[32] }        ! Bone Name
-    { parent int } ;         ! Bone parent
-
-STRUCT: Model
-    { transform Matrix }
-    { meshCount int }
-    { materialCount int }
-    { _meshes Mesh* }
-    { _materials Material* }
-    { meshMaterial int* }
-    { boneCount int }
-    { _bones BoneInfo* }
-    { bindPose Transform* } ;
-
-ARRAY-SLOT: Model Material _materials [ materialCount>> ] materials
-ARRAY-SLOT: Model Mesh _meshes [ meshCount>> ] meshes
-ARRAY-SLOT: Model BoneInfo _bones [ boneCount>> ] bones
-
-STRUCT: ModelAnimation
-    { boneCount int }
-    { frameCount int }
-    { _bones BoneInfo* }
-    { framePoses Transform** } ;
-ARRAY-SLOT: ModelAnimation BoneInfo _bones [ boneCount>> ] bones
-
-STRUCT: Ray
-    { position Vector3 }    ! Ray position (origin)
-    { direction Vector3 } ; ! Ray direction
-
-STRUCT: RayHitInfo
-    { hit bool }            ! Did the ray hit something?
-    { distance float }      ! Distance to nearest hit
-    { position Vector3 }    ! Position of nearest hit
-    { normal Vector3 } ;    ! Surface normal of hit
-
-STRUCT: BoundingBox
-    { min Vector3 }       ! Minimum vertex box-corner
-    { max Vector3 } ;     ! Maximum vertex box-corner
-
-STRUCT: Wave
-    { sampleCount uint }    ! Number of samples
-    { sampleRate uint }     ! Frequency (samples per second)
-    { sampleSize uint }     ! Bit depth (bits per sample): 8,16,32
-    { channels uint }       ! Number of channels (1-mono, 2-stereo)
-    { data void* } ;        ! Buffer data pointer
-
-STRUCT: AudioStream
-    { buffer void* }    ! Pointer to internal data used by the audio system
-    { sampleRate uint } ! Frequency (samples per second)
-    { sampleSize uint } ! Bit depth (bits per sample): 8, 16, 32 (24 not supported)
-    { channels uint } ; ! Number of channels (1-mono, 2-stereo)
-
-STRUCT: Sound
-    { stream AudioStream } ! Audio stream
-    { sampleCount uint } ; ! Total number of samples
-
-STRUCT: Music
-    { stream  AudioStream }     ! Audio stream
-    { sampleCount uint }        ! Total number of samples
-    { looping bool }            ! Music looping enable
-    { ctxType int }             ! Type of music context (audio filetype)
-    { ctxData void* } ;         ! Audio context data, depends on type
-
-
-STRUCT: VrDeviceInfo
-    { hResolution int }               ! HMD horizontal resolution in pixels
-    { vResolution int }               ! HMD verticle resolution in pixels
-    { hScreenSize float }             ! HMD horizontal size in meters
-    { vScreenSize float }             ! HMD verticle size in meters
-    { vScreenCenter float }           ! HMD screen center in meters
-    { eyeToScreenDistance float }     ! HMD distance between eye and display in meters
-    { lensSeparationDistance float }  ! HMD lens separation distance in meters
-    { interpupillaryDistance float }  ! HMD IPD in meters
-    { lensDistortionValues float[4] } ! HMD lens distortion constant parameters
-    { chromaAbCorrection float[4] } ; ! HMD chromatic abberation correction parameters
-
-! Enumerations ---------------------------------------------------------
-
-! Putting some of the #define's as enums.
-ENUM: raylibConfigFlags
-    {  FLAG_SHOW_LOGO              1   }   !  Set to show raylib logo at startup
-    {  FLAG_FULLSCREEN_MODE        2   }   !  Set to run program in fullscreen
-    {  FLAG_WINDOW_RESIZABLE       4   }   !  Set to allow resizable window
-    {  FLAG_WINDOW_UNDECORATED     8   }   !  Set to disable window decoration (frame and buttons)
-    {  FLAG_WINDOW_TRANSPARENT    16   }   !  Set to allow transparent window
-    {  FLAG_WINDOW_HIDDEN        128   }
-    {  FLAG_MSAA_4X_HINT          32   }   !  Set to try enabling MSAA 4X
-    {  FLAG_VSYNC_HINT            64   } ; !  Set to try enabling V-Sync on GPU
-
-ENUM: TraceLogType
-    LOG_ALL
-    LOG_TRACE
-    LOG_DEBUG
-    LOG_INFO
-    LOG_WARNING
-    LOG_ERROR
-    LOG_FATAL
-    LOG_NONE ;
-    
-ENUM: KeyboardFunctionKeys
-    {  KEY_SPACE            32 } 
-    {  KEY_ESCAPE          256 } 
-    {  KEY_ENTER           257 } 
-    {  KEY_TAB             258 } 
-    {  KEY_BACKSPACE       259 } 
-    {  KEY_INSERT          260 } 
-    {  KEY_DELETE          261 } 
-    {  KEY_RIGHT           262 } 
-    {  KEY_LEFT            263 } 
-    {  KEY_DOWN            264 } 
-    {  KEY_UP              265 } 
-    {  KEY_PAGE_UP         266 } 
-    {  KEY_PAGE_DOWN       267 } 
-    {  KEY_HOME            268 } 
-    {  KEY_END             269 } 
-    {  KEY_CAPS_LOCK       280 } 
-    {  KEY_SCROLL_LOCK     281 } 
-    {  KEY_NUM_LOCK        282 } 
-    {  KEY_PRINT_SCREEN    283 } 
-    {  KEY_PAUSE           284 } 
-    {  KEY_F1              290 } 
-    {  KEY_F2              291 } 
-    {  KEY_F3              292 } 
-    {  KEY_F4              293 } 
-    {  KEY_F5              294 } 
-    {  KEY_F6              295 } 
-    {  KEY_F7              296 } 
-    {  KEY_F8              297 } 
-    {  KEY_F9              298 } 
-    {  KEY_F10             299 } 
-    {  KEY_F11             300 } 
-    {  KEY_F12             301 } 
-    {  KEY_LEFT_SHIFT      340 } 
-    {  KEY_LEFT_CONTROL    341 } 
-    {  KEY_LEFT_ALT        342 } 
-    {  KEY_RIGHT_SHIFT     344 } 
-    {  KEY_RIGHT_CONTROL   345 } 
-    {  KEY_RIGHT_ALT       346 } 
-    {  KEY_GRAVE            96 } 
-    {  KEY_SLASH            47 } 
-    {  KEY_BACKSLASH        92 } ;
-
-ENUM: KeyboardAlphaNumericKeys  
-    {  KEY_ZERO             48 } 
-    {  KEY_ONE              49 } 
-    {  KEY_TWO              50 } 
-    {  KEY_THREE            51 } 
-    {  KEY_FOUR             52 } 
-    {  KEY_FIVE             53 } 
-    {  KEY_SIX              54 } 
-    {  KEY_SEVEN            55 } 
-    {  KEY_EIGHT            56 } 
-    {  KEY_NINE             57 } 
-    {  KEY_A                65 } 
-    {  KEY_B                66 } 
-    {  KEY_C                67 } 
-    {  KEY_D                68 } 
-    {  KEY_E                69 } 
-    {  KEY_F                70 } 
-    {  KEY_G                71 } 
-    {  KEY_H                72 } 
-    {  KEY_I                73 } 
-    {  KEY_J                74 } 
-    {  KEY_K                75 } 
-    {  KEY_L                76 } 
-    {  KEY_M                77 } 
-    {  KEY_N                78 } 
-    {  KEY_O                79 } 
-    {  KEY_P                80 } 
-    {  KEY_Q                81 } 
-    {  KEY_R                82 } 
-    {  KEY_S                83 } 
-    {  KEY_T                84 } 
-    {  KEY_U                85 } 
-    {  KEY_V                86 } 
-    {  KEY_W                87 } 
-    {  KEY_X                88 } 
-    {  KEY_Y                89 } 
-    {  KEY_Z                90 } ;
-
-CONSTANT: LIGHTGRAY  S{ Color f 200  200  200  255  } !  Light Gray
-CONSTANT: GRAY       S{ Color f 130  130  130  255  } !  Gray
-CONSTANT: DARKGRAY   S{ Color f 80  80  80  255     } !  Dark Gray
-CONSTANT: YELLOW     S{ Color f 253  249  0  255    } !  Yellow
-CONSTANT: GOLD       S{ Color f 255  203  0  255    } !  Gold
-CONSTANT: ORANGE     S{ Color f 255  161  0  255    } !  Orange
-CONSTANT: PINK       S{ Color f 255  109  194  255  } !  Pink
-CONSTANT: RED        S{ Color f 230  41  55  255    } !  Red
-CONSTANT: MAROON     S{ Color f 190  33  55  255    } !  Maroon
-CONSTANT: GREEN      S{ Color f 0  228  48  255     } !  Green
-CONSTANT: LIME       S{ Color f 0  158  47  255     } !  Lime
-CONSTANT: DARKGREEN  S{ Color f 0  117  44  255     } !  Dark Green
-CONSTANT: SKYBLUE    S{ Color f 102  191  255  255  } !  Sky Blue
-CONSTANT: BLUE       S{ Color f 0  121  241  255    } !  Blue
-CONSTANT: DARKBLUE   S{ Color f 0  82  172  255     } !  Dark Blue
-CONSTANT: PURPLE     S{ Color f 200  122  255  255  } !  Purple
-CONSTANT: VIOLET     S{ Color f 135  60  190  255   } !  Violet
-CONSTANT: DARKPURPLE S{ Color f 112  31  126  255   } !  Dark Purple
-CONSTANT: BEIGE      S{ Color f 211  176  131  255  } !  Beige
-CONSTANT: BROWN      S{ Color f 127  106  79  255   } !  Brown
-CONSTANT: DARKBROWN  S{ Color f 76  63  47  255     } !  Dark Brown
-
-CONSTANT: WHITE      S{ Color f 255  255  255  255  } !  White
-CONSTANT: BLACK      S{ Color f 0  0  0  255        } !  Black
-CONSTANT: BLANK      S{ Color f 0  0  0  0          } !  Blank (Transparent)
-CONSTANT: MAGENTA    S{ Color f 255  0  255  255    } !  Magenta
-CONSTANT: RAYWHITE   S{ Color f 245  245  245  255  } !  My own White (raylib logo)
-
-! Leaving Android Enum out because Factor doesn't run on it
-ENUM: MouseButtons
-    MOUSE_LEFT_BUTTON
-    MOUSE_RIGHT_BUTTON
-    MOUSE_MIDDLE_BUTTON ;
-
-ENUM: GamepadNumber
-    GAMEPAD_PLAYER1
-    GAMEPAD_PLAYER2
-    GAMEPAD_PLAYER3
-    GAMEPAD_PLAYER4 ;
-
-! Shader location point type
-ENUM: ShaderLocationIndex
-    LOC_VERTEX_POSITION
-    LOC_VERTEX_TEXCOORD01
-    LOC_VERTEX_TEXCOORD02
-    LOC_VERTEX_NORMAL
-    LOC_VERTEX_TANGENT
-    LOC_VERTEX_COLOR
-    LOC_MATRIX_MVP
-    LOC_MATRIX_MODEL
-    LOC_MATRIX_VIEW
-    LOC_MATRIX_PROJECTION
-    LOC_VECTOR_VIEW
-    LOC_COLOR_DIFFUSE
-    LOC_COLOR_SPECULAR
-    LOC_COLOR_AMBIENT
-    LOC_MAP_ALBEDO         
-    LOC_MAP_METALNESS      
-    LOC_MAP_NORMAL
-    LOC_MAP_ROUGHNESS
-    LOC_MAP_OCCLUSION
-    LOC_MAP_EMISSION
-    LOC_MAP_HEIGHT
-    LOC_MAP_CUBEMAP
-    LOC_MAP_IRRADIANCE
-    LOC_MAP_PREFILTER
-    LOC_MAP_BRDF ;
-
-ENUM: ShaderUniformDataType
-    UNIFORM_FLOAT
-    UNIFORM_VEC2
-    UNIFORM_VEC3
-    UNIFORM_VEC4
-    UNIFORM_INT
-    UNIFORM_IVEC2
-    UNIFORM_IVEC3
-    UNIFORM_IVEC4
-    UNIFORM_SAMPLER2D ;
-    
-! Material map type
-ENUM: MaterialMapType
-    MAP_ALBEDO    
-    MAP_METALNESS 
-    MAP_NORMAL    
-    MAP_ROUGHNESS 
-    MAP_OCCLUSION
-    MAP_EMISSION
-    MAP_HEIGHT
-    MAP_CUBEMAP             
-    MAP_IRRADIANCE          
-    MAP_PREFILTER           
-    MAP_BRDF ;
-
-ALIAS: MAP_DIFFUSE MAP_ALBEDO
-ALIAS: MAP_SPECULAR MAP_METALNESS
-
-! Pixel formats
-! NOTE: Support depends on OpenGL version and platform
-ENUM: PixelFormat
-    { UNCOMPRESSED_GRAYSCALE   1 }      ! 8 bit per pixel (no alpha)
-    UNCOMPRESSED_GRAY_ALPHA        ! 8*2 bpp (2 channels)
-    UNCOMPRESSED_R5G6B5            ! 16 bpp
-    UNCOMPRESSED_R8G8B8            ! 24 bpp
-    UNCOMPRESSED_R5G5B5A1          ! 16 bpp (1 bit alpha)
-    UNCOMPRESSED_R4G4B4A4          ! 16 bpp (4 bit alpha)
-    UNCOMPRESSED_R8G8B8A8          ! 32 bpp
-    UNCOMPRESSED_R32               ! 32 bpp (1 channel - float)
-    UNCOMPRESSED_R32G32B32         ! 32*3 bpp (3 channels - float)
-    UNCOMPRESSED_R32G32B32A32      ! 32*4 bpp (4 channels - float)
-    COMPRESSED_DXT1_RGB            ! 4 bpp (no alpha)
-    COMPRESSED_DXT1_RGBA           ! 4 bpp (1 bit alpha)
-    COMPRESSED_DXT3_RGBA           ! 8 bpp
-    COMPRESSED_DXT5_RGBA           ! 8 bpp
-    COMPRESSED_ETC1_RGB            ! 4 bpp
-    COMPRESSED_ETC2_RGB            ! 4 bpp
-    COMPRESSED_ETC2_EAC_RGBA       ! 8 bpp
-    COMPRESSED_PVRT_RGB            ! 4 bpp
-    COMPRESSED_PVRT_RGBA           ! 4 bpp
-    COMPRESSED_ASTC_4x4_RGBA       ! 8 bpp
-    COMPRESSED_ASTC_8x8_RGBA ;     ! 2 bpp
-
-! Texture parameters: filter mode
-! NOTE 1: Filtering considers mipmaps if available in the texture
-! NOTE 2: Filter is accordingly set for minification and magnification
-ENUM: TextureFilterMode
-    FILTER_POINT                   ! No filter just pixel aproximation
-    FILTER_BILINEAR                ! Linear filtering
-    FILTER_TRILINEAR               ! Trilinear filtering (linear with mipmaps)
-    FILTER_ANISOTROPIC_4X          ! Anisotropic filtering 4x
-    FILTER_ANISOTROPIC_8X          ! Anisotropic filtering 8x
-    FILTER_ANISOTROPIC_16X ;       ! Anisotropic filtering 16x
-
-! Texture parameters: wrap mode
-ENUM: TextureWrapMode
-    WRAP_REPEAT
-    WRAP_CLAMP
-    WRAP_MIRROR_REPEAT
-    WRAP_MIRROR_CLAMP ;
-
-! Color blending modes (pre-defined)
-ENUM: BlendMode
-    BLEND_ALPHA
-    BLEND_ADDITIVE
-    BLEND_MULTIPLIED ;
-
-! Gestures type
-! NOTE: IT could be used as flags to enable only some gestures
-ENUM: Gestures
-    { GESTURE_NONE          0 }
-    { GESTURE_TAP           1 }
-    { GESTURE_DOUBLETAP     2 }
-    { GESTURE_HOLD          4 }
-    { GESTURE_DRAG          8 }
-    { GESTURE_SWIPE_RIGHT   16 }
-    { GESTURE_SWIPE_LEFT    32 }
-    { GESTURE_SWIPE_UP      64 }
-    { GESTURE_SWIPE_DOWN    128 }
-    { GESTURE_PINCH_IN      256 }
-    { GESTURE_PINCH_OUT     512 } ;
-
-! Camera system modes
-ENUM: CameraMode
-    CAMERA_CUSTOM
-    CAMERA_FREE
-    CAMERA_ORBITAL
-    CAMERA_FIRST_PERSON
-    CAMERA_THIRD_PERSON ;
-
-ENUM: NPatchType
-    NPT_9PATCH
-    NPT_3PATCH_VERTICAL
-    NPT_3PATCH_HORIZONTAL ;
-
-! Head Mounted Display devices
-ENUM: VrDeviceType
-    HMD_DEFAULT_DEVICE
-    HMD_OCULUS_RIFT_DK2
-    HMD_OCULUS_RIFT_CV1
-    HMD_OCULUS_GO
-    HMD_VALVE_HTC_VIVE
-    HMD_SONY_PSVR ;
-
-! Functions ---------------------------------------------------------------
-
-! Windowing Functions
-FUNCTION-ALIAS:  init-window void InitWindow ( int width, int height, c-string title )    ! Initialize window and OpenGL context
-FUNCTION-ALIAS:  close-window void CloseWindow ( )                                        ! Close window and unload OpenGL context
-FUNCTION-ALIAS:  is-window-ready bool IsWindowReady ( )                                   ! Check if window has been initialized successfully
-FUNCTION-ALIAS:  window-should-close bool WindowShouldClose ( )                           ! Check if KEY_ESCAPE pressed or Close icon pressed
-FUNCTION-ALIAS:  is-window-minimized bool IsWindowMinimized ( )                           ! Check if window has been minimized  ( or lost focus )
-FUNCTION-ALIAS:  is-window-resized bool IsWindowResized ( )                               ! Check if window has been resized
-FUNCTION-ALIAS:  is-window-hidden bool IsWindowHidden ( )                                 ! Check if window is currently hidden
-FUNCTION-ALIAS:  unhide-window void UnhideWindow ( )                                      ! Show the window
-FUNCTION-ALIAS:  hide-window void HideWindow ( )                                          ! Hide the window
-FUNCTION-ALIAS:  toggle-fullscreen void ToggleFullscreen ( )                              ! Toggle fullscreen mode  ( only PLATFORM_DESKTOP ) 
-FUNCTION-ALIAS:  set-window-icon void SetWindowIcon ( Image image )                       ! Set icon for window  ( only PLATFORM_DESKTOP ) 
-FUNCTION-ALIAS:  set-window-title void SetWindowTitle ( c-string title )                  ! Set title for window  ( only PLATFORM_DESKTOP ) 
-FUNCTION-ALIAS:  set-window-position void SetWindowPosition ( int x, int y )              ! Set window position on screen  ( only PLATFORM_DESKTOP ) 
-FUNCTION-ALIAS:  set-window-monitor void SetWindowMonitor ( int monitor )                 ! Set monitor for the current window  ( fullscreen mode ) 
-FUNCTION-ALIAS:  set-window-min-size void SetWindowMinSize ( int width, int height )      ! Set window minimum dimensions  ( for FLAG_WINDOW_RESIZABLE ) 
-FUNCTION-ALIAS:  set-window-size void SetWindowSize ( int width, int height )             ! Set window dimensions
-FUNCTION-ALIAS:  get-screen-width int GetScreenWidth ( )                                  ! Get current screen width
-FUNCTION-ALIAS:  get-screen-height int GetScreenHeight ( )                                ! Get current screen height
-FUNCTION-ALIAS:  get-window-handle void* GetWindowHandle ( )                              ! Get native window handle
-FUNCTION-ALIAS:  get-monitor-count int GetMonitorCount ( )                                ! Get number of connected monitors
-FUNCTION-ALIAS:  get-monitor-width int GetMonitorWidth ( int monitor )                    ! Get primary monitor width
-FUNCTION-ALIAS:  get-monitor-height int GetMonitorHeight ( int monitor )                  ! Get primary monitor height
-FUNCTION-ALIAS:  get-monitor-physical-width int GetMonitorPhysicalWidth ( int monitor )   ! Get primary monitor physical width in millimetres
-FUNCTION-ALIAS:  get-monitor-physical-height int GetMonitorPhysicalHeight ( int monitor ) ! Get primary monitor physical height in millimetres
-FUNCTION-ALIAS:  get-monitor-name c-string GetMonitorName ( int monitor )                 ! Get the human-readable, UTF-8 encoded name of the primary monitor
-FUNCTION-ALIAS:  get-clipboard-text c-string GetClipboardText ( )                         ! Get clipboard text content
-FUNCTION-ALIAS:  set-clipboard-text void SetClipboardText ( c-string text )               ! Set clipboard text content
-
-! 2.5 -> 3.5 Additions
-FUNCTION-ALIAS:  get-window-scale-dpi Vector2 GetWindowScaleDPI ( )                     ! Get window scale DPI factor
-FUNCTION-ALIAS:  is-window-maximized bool IsWindowMaximized ( )                    ! Check if window is currently maximized  ( only PLATFORM_DESKTOP)
-FUNCTION-ALIAS:  is-window-focused bool IsWindowFocused ( )                        ! Check if window is currently focused  ( only PLATFORM_DESKTOP)
-FUNCTION-ALIAS:  is-window-state bool IsWindowState ( uint flag )                       ! Check if one specific window flag is enabled
-FUNCTION-ALIAS:  set-window-state void SetWindowState ( uint flags )                    ! Set window configuration state using flags
-FUNCTION-ALIAS:  clear-window-state void ClearWindowState ( uint flags )                ! Clear window configuration state flags
-FUNCTION-ALIAS:  maximized-window void MaximizeWindow ( )                          ! Set window state: maximized, if resizable  ( only PLATFORM_DESKTOP)
-FUNCTION-ALIAS:  minimize-window void MinimizeWindow (  )                           ! Set window state: minimized, if resizable  ( only PLATFORM_DESKTOP)
-FUNCTION-ALIAS:  restore-window void RestoreWindow ( )                             ! Set window state: not minimized/maximized  ( only PLATFORM_DESKTOP)
-FUNCTION-ALIAS:  get-current-monitor int GetCurrentMonitor ( )                     ! Get current connected monitor
-FUNCTION-ALIAS:  get-monitor-position Vector2 GetMonitorPosition ( int monitor )        ! Get specified monitor position
-FUNCTION-ALIAS:  get-monitor-refresh-rate int GetMonitorRefreshRate ( int monitor )     ! Get specified monitor refresh rate
-FUNCTION-ALIAS:  get-window-position Vector2 GetWindowPosition ( )                 ! Get window position XY on monitor
-
-
-! Cursor-related functions
-FUNCTION-ALIAS:  show-cursor void ShowCursor ( )                                                  ! Shows cursor
-FUNCTION-ALIAS:  hide-cursor void HideCursor ( )                                                  ! Hides cursor
-FUNCTION-ALIAS:  is-cursor-hidden bool IsCursorHidden ( )                                         ! Check if cursor is not visible
-FUNCTION-ALIAS:  enable-cursor void EnableCursor ( )                                              ! Enables cursor  ( unlock cursor ) 
-FUNCTION-ALIAS:  disable-cursor void DisableCursor ( )                                            ! Disables cursor  ( lock cursor ) 
-FUNCTION-ALIAS:   is-cursor-on-screen  bool IsCursorOnScreen ( )                                   ! Check if cursor is on the current screen.
-
-! Drawing-related functions
-FUNCTION-ALIAS:  clear-background void ClearBackground ( Color color )                            ! Set background color  ( framebuffer clear color ) 
-FUNCTION-ALIAS:  begin-drawing void BeginDrawing ( )                                              ! Setup canvas  ( framebuffer )  to start drawing
-FUNCTION-ALIAS:  end-drawing void EndDrawing ( )                                                  ! End canvas drawing and swap buffers  ( double buffering ) 
-FUNCTION-ALIAS:  begin-mode-2d void BeginMode2D ( Camera2D camera )                               ! Initialize 2D mode with custom camera  ( 2D ) 
-FUNCTION-ALIAS:  end-mode-2d void EndMode2D ( )                                                   ! Ends 2D mode with custom camera
-FUNCTION-ALIAS:  begin-mode-3d void BeginMode3D ( Camera3D camera )                               ! Initializes 3D mode with custom camera  ( 3D ) 
-FUNCTION-ALIAS:  end-mode-3d void EndMode3D ( )                                                   ! Ends 3D mode and returns to default 2D orthographic mode
-FUNCTION-ALIAS:  begin-texture-mode void BeginTextureMode ( RenderTexture2D target )              ! Initializes render texture for drawing
-FUNCTION-ALIAS:  end-texture-mode void EndTextureMode ( )                                         ! Ends drawing to render texture
-FUNCTION-ALIAS:  begin-scissor-mode void BeginScissorMode ( int x, int y, int width, int height ) ! Begin scissor mode  ( define screen area for following drawing)
-FUNCTION-ALIAS:  end-scissor-mode void EndScissorMode ( )                                         ! End scissor mode
-
-! Screen-space-related functions
-FUNCTION-ALIAS:  get-mouse-ray Ray GetMouseRay ( Vector2 mousePosition, Camera camera )           ! Returns a ray trace from mouse position
-FUNCTION-ALIAS:  get-world-to-screen Vector2 GetWorldToScreen ( Vector3 position, Camera camera ) ! Returns the screen space position for a 3d world space position
-FUNCTION-ALIAS:  get-camera-matrix Matrix GetCameraMatrix ( Camera camera )                       ! Returns camera transform matrix  ( view matrix ) 
-
-! Timing-related functions
-FUNCTION-ALIAS:  set-target-fps void SetTargetFPS ( int fps )                                     ! Set target FPS  ( maximum ) 
-FUNCTION-ALIAS:  get-fps int GetFPS ( )                                                           ! Returns current FPS
-FUNCTION-ALIAS:  get-frame-time float GetFrameTime ( )                                            ! Returns time in seconds for last frame drawn
-FUNCTION-ALIAS:  get-time double GetTime ( )                                                      ! Returns elapsed time in seconds since InitWindow () 
-
-! Misc. functions
-FUNCTION-ALIAS:  set-config-flags void SetConfigFlags ( uchar flags )                      ! Setup window configuration flags  (view FLAGS) 
-FUNCTION-ALIAS:  set-trace-log-level void SetTraceLogLevel ( TraceLogType logType )                 ! Set the current threshold  (minimum)  log level
-FUNCTION-ALIAS:  set-trace-log-exit void SetTraceLogExit ( TraceLogType logType )                   ! Set the exit threshold  (minimum)  log level
-FUNCTION-ALIAS:  take-screenshot void TakeScreenshot ( c-string fileName )                 ! Takes a screenshot of current screen  ( saved a .png ) 
-FUNCTION-ALIAS:  get-random-value int GetRandomValue ( int min, int max )                  ! Returns a random value between min and max  ( both included ) 
-
-! Files management functions
-FUNCTION-ALIAS:  load-file-data c-string LoadFileData ( c-string fileName, uint* bytesRead )                    ! Load file data as byte array  ( read)
-FUNCTION-ALIAS:  unload-file-data void UnloadFileData ( c-string data )                                ! Unload file data allocated by LoadFileData ( )
-DESTRUCTOR: unload-file-data
-FUNCTION-ALIAS:  save-file-data bool SaveFileData ( c-string fileName, void *data, uint bytesToWrite )  ! Save data to file from byte array  ( write), returns true on success
-FUNCTION-ALIAS:  load-file-text c-string LoadFileText ( c-string fileName )                                     ! Load text data from file  ( read), returns a '\0' terminated string
-FUNCTION-ALIAS:  unload-file-text void UnloadFileText ( c-string text )                                ! Unload file text data allocated by LoadFileText ( )
-DESTRUCTOR: unload-file-text
-FUNCTION-ALIAS:  save-file-text bool SaveFileText ( c-string fileName, c-string text )                          ! Save text data to file  ( write), string must be '\0' terminated, returns true on success
-FUNCTION-ALIAS:  file-exists bool FileExists ( c-string fileName )                                              ! Check if file exists
-FUNCTION-ALIAS:  directory-exists bool DirectoryExists ( c-string dirPath )                                     ! Check if a directory path exists
-FUNCTION-ALIAS:  is-file-extension bool IsFileExtension ( c-string fileName, c-string ext )                     ! Check file extension  ( including point: .png, .wav)
-FUNCTION-ALIAS:  get-file-extension c-string GetFileExtension ( c-string fileName )                             ! Get pointer to extension for a filename string  ( including point: ".png")
-FUNCTION-ALIAS:  get-file-name c-string GetFileName ( c-string filePath )                                       ! Get pointer to filename for a path string
-FUNCTION-ALIAS:  get-file-name-without-ext c-string GetFileNameWithoutExt ( c-string filePath )                 ! Get filename string without extension  ( uses static string)
-FUNCTION-ALIAS:  get-directory-path c-string GetDirectoryPath ( c-string filePath )                             ! Get full path for a given fileName with path  ( uses static string)
-FUNCTION-ALIAS:  get-prev-directory-path c-string GetPrevDirectoryPath ( c-string dirPath )                     ! Get previous directory path for a given path  ( uses static string)
-FUNCTION-ALIAS:  get-working-directory c-string GetWorkingDirectory ( )                                    ! Get current working directory  ( uses static string)
-FUNCTION-ALIAS:  get-directory-files char** GetDirectoryFiles ( c-string dirPath, int *count )                  ! Get filenames in a directory path  ( memory should be freed)
-FUNCTION-ALIAS:  clear-directory-files void ClearDirectoryFiles ( )                                        ! Clear directory files paths buffers  ( free memory)
-FUNCTION-ALIAS:  change-directory bool ChangeDirectory ( c-string dir )                                         ! Change working directory, return true on success
-FUNCTION-ALIAS:  is-file-dropped bool IsFileDropped ( )                                                    ! Check if a file has been dropped into window
-FUNCTION-ALIAS:  get-dropped-files char** GetDroppedFiles ( int *count )                                        ! Get dropped files names  ( memory should be freed)
-FUNCTION-ALIAS:  clear-dropped-files void ClearDroppedFiles ( )                                            ! Clear dropped files paths buffer  ( free memory)
-FUNCTION-ALIAS:  get-file-mod-time long GetFileModTime ( c-string fileName )                                    ! Get file modification time  ( last write time)
-
-! Persistent storage management
-FUNCTION-ALIAS:  storage-save-value void StorageSaveValue ( int position, int value )             ! Save integer value to storage file  ( to defined position ) 
-FUNCTION-ALIAS:  storage-load-value int StorageLoadValue ( int position )                         ! Load integer value from storage file  ( from defined position ) 
-FUNCTION-ALIAS:  open-url void OpenURL ( c-string url )                                           ! Open URL with default system browser  ( if available ) 
-! ------------------------------------------------------------------------------------
-! Input Handling Functions  ( Module: core ) 
-! ------------------------------------------------------------------------------------
-
-! Input-related functions: keyboard
-FUNCTION-ALIAS:  is-key-pressed bool IsKeyPressed ( int key )                                        ! Detect if a key has been pressed once
-FUNCTION-ALIAS:  is-key-down bool IsKeyDown ( int key )                                              ! Detect if a key is being pressed
-FUNCTION-ALIAS:  is-key-released bool IsKeyReleased ( int key )                                      ! Detect if a key has been released once
-FUNCTION-ALIAS:  is-key-up bool IsKeyUp ( int key )                                                  ! Detect if a key is NOT being pressed
-FUNCTION-ALIAS:  get-key-pressed int GetKeyPressed ( )                                               ! Get latest key pressed
-FUNCTION-ALIAS:  set-exit-key void SetExitKey ( int key )                                            ! Set a custom key to exit program  ( default is ESC ) 
-
-! Input-related functions: gamepads
-FUNCTION-ALIAS:  is-gamepad-available bool IsGamepadAvailable ( int gamepad )                        ! Detect if a gamepad is available
-FUNCTION-ALIAS:  is-gamepad-name bool IsGamepadName ( int gamepad, c-string name )                   ! Check gamepad name  ( if available ) 
-FUNCTION-ALIAS:  get-gamepad-name c-string GetGamepadName ( int gamepad )                            ! Return gamepad internal name id
-FUNCTION-ALIAS:  is-gamepad-button-pressed bool IsGamepadButtonPressed ( int gamepad, int button )   ! Detect if a gamepad button has been pressed once
-FUNCTION-ALIAS:  is-gamepad-button-down bool IsGamepadButtonDown ( int gamepad, int button )         ! Detect if a gamepad button is being pressed
-FUNCTION-ALIAS:  is-gamepad-button-released bool IsGamepadButtonReleased ( int gamepad, int button ) ! Detect if a gamepad button has been released once
-FUNCTION-ALIAS:  is-gamepad-button-up bool IsGamepadButtonUp ( int gamepad, int button )             ! Detect if a gamepad button is NOT being pressed
-FUNCTION-ALIAS:  get-gamepad-button-pressed int GetGamepadButtonPressed ( )                          ! Get the last gamepad button pressed
-FUNCTION-ALIAS:  get-gamepad-axis-count int GetGamepadAxisCount ( int gamepad )                      ! Return gamepad axis count for a gamepad
-FUNCTION-ALIAS:  get-gamepad-axis-movement float GetGamepadAxisMovement ( int gamepad, int axis )    ! Return axis movement value for a gamepad axis
-
-! Input-related functions: mouse
-FUNCTION-ALIAS:  is-mouse-button-pressed bool IsMouseButtonPressed ( int button )                    ! Detect if a mouse button has been pressed once
-FUNCTION-ALIAS:  is-mouse-button-down bool IsMouseButtonDown ( int button )                          ! Detect if a mouse button is being pressed
-FUNCTION-ALIAS:  is-mouse-button-released bool IsMouseButtonReleased ( int button )                  ! Detect if a mouse button has been released once
-FUNCTION-ALIAS:  is-mouse-button-up bool IsMouseButtonUp ( int button )                              ! Detect if a mouse button is NOT being pressed
-FUNCTION-ALIAS:  get-mouse-x int GetMouseX ( )                                                       ! Returns mouse position X
-FUNCTION-ALIAS:  get-mouse-y int GetMouseY ( )                                                       ! Returns mouse position Y
-FUNCTION-ALIAS:  get-mouse-position Vector2 GetMousePosition ( )                                     ! Returns mouse position XY
-FUNCTION-ALIAS:  set-mouse-position void SetMousePosition ( int x, int y )                           ! Set mouse position XY
-FUNCTION-ALIAS:  set-mouse-offset void SetMouseOffset ( int offsetX, int offsetY )                   ! Set mouse offset
-FUNCTION-ALIAS:  set-mouse-scale void SetMouseScale ( float scale )                                  ! Set mouse scaling
-FUNCTION-ALIAS:  get-mouse-wheel-move int GetMouseWheelMove ( )                                      ! Returns mouse wheel movement Y
-
-! Input-related functions: touch
-FUNCTION-ALIAS:  get-touch-x int GetTouchX ( )                                                       ! Returns touch position X for touch point 0  ( relative to screen size ) 
-FUNCTION-ALIAS:  get-touch-y int GetTouchY ( )                                                       ! Returns touch position Y for touch point 0  ( relative to screen size ) 
-FUNCTION-ALIAS:  get-touch-position Vector2 GetTouchPosition ( int index )                           ! Returns touch position XY for a touch point index  ( relative to screen size ) 
-
-! ------------------------------------------------------------------------------------
-! Gestures and Touch Handling Functions  ( Module: gestures ) 
-! ------------------------------------------------------------------------------------
-FUNCTION-ALIAS:  set-gestures-enabled void SetGesturesEnabled ( uint gestureFlags ) ! Enable a set of gestures using flags
-FUNCTION-ALIAS:  is-gesture-detected bool IsGestureDetected ( int gesture )         ! Check if a gesture have been detected
-FUNCTION-ALIAS:  get-gesture-detected int GetGestureDetected ( )                    ! Get latest detected gesture
-FUNCTION-ALIAS:  get-touch-points-count int GetTouchPointsCount ( )                 ! Get touch points count
-FUNCTION-ALIAS:  get-gesture-hold-duration float GetGestureHoldDuration ( )         ! Get gesture hold time in milliseconds
-FUNCTION-ALIAS:  get-gesture-drag-vector Vector2 GetGestureDragVector ( )           ! Get gesture drag vector
-FUNCTION-ALIAS:  get-gesture-drag-angle float GetGestureDragAngle ( )               ! Get gesture drag angle
-FUNCTION-ALIAS:  get-gesture-pinch-vector Vector2 GetGesturePinchVector ( )         ! Get gesture pinch delta
-FUNCTION-ALIAS:  get-gesture-pinch-angle float GetGesturePinchAngle ( )             ! Get gesture pinch angle
-
-! ------------------------------------------------------------------------------------ 
-! Camera System Functions  ( Module: camera ) 
-! ------------------------------------------------------------------------------------
-FUNCTION-ALIAS:  set-camera-mode void SetCameraMode ( Camera camera, CameraMode mode )                                                                       ! Set camera mode  ( multiple camera modes available ) 
-FUNCTION-ALIAS:  update-camera void UpdateCamera ( Camera* camera )                                                                                   ! Update camera position for selected mode
-FUNCTION-ALIAS:  set-camera-pan-control void SetCameraPanControl ( int panKey )                                                                       ! Set camera pan key to combine with mouse movement  ( free camera ) 
-FUNCTION-ALIAS:  set-camera-alt-control void SetCameraAltControl ( int altKey )                                                                       ! Set camera alt key to combine with mouse movement  ( free camera ) 
-FUNCTION-ALIAS:  set-camera-smooth-zoom-control void SetCameraSmoothZoomControl ( int szKey )                                                         ! Set camera smooth zoom key to combine with mouse  ( free camera ) 
-FUNCTION-ALIAS:  set-camera-move-controls void SetCameraMoveControls ( int frontKey, int backKey, int rightKey, int leftKey, int upKey, int downKey ) ! Set camera move controls  ( 1st person and 3rd person cameras ) 
-
-! ------------------------------------------------------------------------------------
-! Basic Shapes Drawing Functions  ( Module: shapes ) 
-! ------------------------------------------------------------------------------------
-
-                                                                                                                                                                      ! Basic shapes drawing functions
-FUNCTION-ALIAS:  draw-pixel void DrawPixel ( int posX, int posY, Color color )                                                                                        ! Draw a pixel
-FUNCTION-ALIAS:  draw-pixel-lv void DrawPixelV ( Vector2 position, Color color )                                                                                      ! Draw a pixel  ( Vector version ) 
-FUNCTION-ALIAS:  draw-line void DrawLine ( int startPosX, int startPosY, int endPosX, int endPosY, Color color )                                                      ! Draw a line
-FUNCTION-ALIAS:  draw-line-v void DrawLineV ( Vector2 startPos, Vector2 endPos, Color color )                                                                         ! Draw a line  ( Vector version ) 
-FUNCTION-ALIAS:  draw-line-ex void DrawLineEx ( Vector2 startPos, Vector2 endPos, float thick, Color color )                                                          ! Draw a line defining thickness
-FUNCTION-ALIAS:  draw-line-bezier void DrawLineBezier ( Vector2 startPos, Vector2 endPos, float thick, Color color )                                                  ! Draw a line using cubic-bezier curves in-out
-FUNCTION-ALIAS:  draw-circle void DrawCircle ( int centerX, int centerY, float radius, Color color )                                                                  ! Draw a color-filled circle
-FUNCTION-ALIAS:  draw-circle-sector void DrawCircleSector ( Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color )                   ! Draw a piece of a circle
-FUNCTION-ALIAS:  draw-circle-sector-lines void DrawCircleSectorLines ( Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color )        ! Draw circle sector outline
-FUNCTION-ALIAS:  draw-circle-gradient void DrawCircleGradient ( int centerX, int centerY, float radius, Color color1, Color color2 )                                  ! Draw a gradient-filled circle
-FUNCTION-ALIAS:  draw-circle-v void DrawCircleV ( Vector2 center, float radius, Color color )                                                                         ! Draw a color-filled circle  ( Vector version ) 
-FUNCTION-ALIAS:  draw-circle-lines void DrawCircleLines ( int centerX, int centerY, float radius, Color color )                                                       ! Draw circle outline
-FUNCTION-ALIAS:  draw-ring void DrawRing ( Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color )            ! Draw ring
-FUNCTION-ALIAS:  draw-ring-lines void DrawRingLines ( Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color ) ! Draw ring outline
-FUNCTION-ALIAS:  draw-rectangle void DrawRectangle ( int posX, int posY, int width, int height, Color color )                                                         ! Draw a color-filled rectangle
-FUNCTION-ALIAS:  draw-rectangle-v void DrawRectangleV ( Vector2 position, Vector2 size, Color color )                                                                 ! Draw a color-filled rectangle  ( Vector version ) 
-FUNCTION-ALIAS:  draw-rectangle-rec void DrawRectangleRec ( Rectangle rec, Color color )                                                                              ! Draw a color-filled rectangle
-FUNCTION-ALIAS:  draw-rectangle-pro void DrawRectanglePro ( Rectangle rec, Vector2 origin, float rotation, Color color )                                              ! Draw a color-filled rectangle with pro parameters
-FUNCTION-ALIAS:  draw-rectangle-gradient-v void DrawRectangleGradientV ( int posX, int posY, int width, int height, Color color1, Color color2 )                      ! Draw a vertical-gradient-filled rectangle
-FUNCTION-ALIAS:  draw-rectangle-graident-h void DrawRectangleGradientH ( int posX, int posY, int width, int height, Color color1, Color color2 )                      ! Draw a horizontal-gradient-filled rectangle
-FUNCTION-ALIAS:  draw-rectangle-gradient-ex void DrawRectangleGradientEx ( Rectangle rec, Color col1, Color col2, Color col3, Color col4 )                            ! Draw a gradient-filled rectangle with custom vertex colors
-FUNCTION-ALIAS:  draw-rectangle-lines void DrawRectangleLines ( int posX, int posY, int width, int height, Color color )                                              ! Draw rectangle outline
-FUNCTION-ALIAS:  draw-rectangle-lines-ex void DrawRectangleLinesEx ( Rectangle rec, int lineThick, Color color )                                                      ! Draw rectangle outline with extended parameters
-FUNCTION-ALIAS:  draw-rectangle-rounded void DrawRectangleRounded ( Rectangle rec, float roundness, int segments, Color color )                                       ! Draw rectangle with rounded edges
-FUNCTION-ALIAS:  draw-rectangle-rounded-lines void DrawRectangleRoundedLines ( Rectangle rec, float roundness, int segments, int lineThick, Color color )             ! Draw rectangle with rounded edges outline
-FUNCTION-ALIAS:  draw-triangle void DrawTriangle ( Vector2 v1, Vector2 v2, Vector2 v3, Color color )                                                                  ! Draw a color-filled triangle
-FUNCTION-ALIAS:  draw-triangle-lines void DrawTriangleLines ( Vector2 v1, Vector2 v2, Vector2 v3, Color color )                                                       ! Draw triangle outline
-FUNCTION-ALIAS:  draw-poly void DrawPoly ( Vector2 center, int sides, float radius, float rotation, Color color )                                                     ! Draw a regular polygon  ( Vector version ) 
-FUNCTION-ALIAS:  draw-poly-ex void DrawPolyEx ( Vector2* points, int numPoints, Color color )                                                                         ! Draw a closed polygon defined by points
-FUNCTION-ALIAS:  draw-poly-ex-lines void DrawPolyExLines ( Vector2* points, int numPoints, Color color )                                                              ! Draw polygon lines
-FUNCTION-ALIAS:  set-shapes-texture void SetShapesTexture ( Texture2D texture, Rectangle source )                                                                     ! Define default texture used to draw shapes
-
-! Basic shapes collision detection functions
-FUNCTION-ALIAS:  check-collision-recs bool CheckCollisionRecs ( Rectangle rec1, Rectangle rec2 )                                       ! Check collision between two rectangles
-FUNCTION-ALIAS:  check-collision-circles bool CheckCollisionCircles ( Vector2 center1, float radius1, Vector2 center2, float radius2 ) ! Check collision between two circles
-FUNCTION-ALIAS:  check-collision-circle-rec bool CheckCollisionCircleRec ( Vector2 center, float radius, Rectangle rec )               ! Check collision between circle and rectangle
-FUNCTION-ALIAS:  get-collision-rec Rectangle GetCollisionRec ( Rectangle rec1, Rectangle rec2 )                                        ! Get collision rectangle for two rectangles collision
-FUNCTION-ALIAS:  check-collision-point-rec bool CheckCollisionPointRec ( Vector2 point, Rectangle rec )                                ! Check if point is inside rectangle
-FUNCTION-ALIAS:  check-collision-point-circle bool CheckCollisionPointCircle ( Vector2 point, Vector2 center, float radius )           ! Check if point is inside circle
-FUNCTION-ALIAS:  check-collision-point-triangle bool CheckCollisionPointTriangle ( Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3 ) ! Check if point is inside a triangle
-
-! ------------------------------------------------------------------------------------
-! Texture Loading and Drawing Functions  ( Module: textures ) 
-! ------------------------------------------------------------------------------------
-
-! Image/Texture2D data loading/unloading/saving functions
-FUNCTION-ALIAS:  load-image Image LoadImage ( c-string fileName )                                                           ! Load image from file into CPU memory  ( RAM ) 
-FUNCTION-ALIAS:  load-image-raw Image LoadImageRaw ( c-string fileName, int width, int height, int format, int headerSize ) ! Load image from RAW file data
-FUNCTION-ALIAS:  export-image void ExportImage ( c-string fileName, Image image )                                           ! Export image as a PNG file
-FUNCTION-ALIAS:  export-image-as-code void ExportImageAsCode ( Image image, c-string fileName )                             ! Export image as code file defining an array of bytes
-FUNCTION-ALIAS:  load-texture Texture2D LoadTexture ( c-string fileName )                                                   ! Load texture from file into GPU memory  ( VRAM ) 
-FUNCTION-ALIAS:  load-texture-from-image Texture2D LoadTextureFromImage ( Image image )                                     ! Load texture from image data
-FUNCTION-ALIAS:  load-render-texture RenderTexture2D LoadRenderTexture ( int width, int height )                            ! Load texture for rendering  ( framebuffer ) 
-FUNCTION-ALIAS:  unload-image void UnloadImage ( Image image )                                                              ! Unload image from CPU memory  ( RAM ) 
-DESTRUCTOR: unload-image
-FUNCTION-ALIAS:  unload-texture void UnloadTexture ( Texture2D texture )                                                    ! Unload texture from GPU memory  ( VRAM ) 
-DESTRUCTOR: unload-texture
-FUNCTION-ALIAS:  unload-render-texture void UnloadRenderTexture ( RenderTexture2D target )                                  ! Unload render texture from GPU memory  ( VRAM ) 
-DESTRUCTOR: unload-render-texture
-FUNCTION-ALIAS:  get-image-data Color* GetImageData ( Image image )                                                         ! Get pixel data from image as a Color struct array
-FUNCTION-ALIAS:  get-image-data-normalized Vector4* GetImageDataNormalized ( Image image )                                  ! Get pixel data from image as Vector4 array  ( float normalized ) 
-FUNCTION-ALIAS:  get-pixel-datasize int GetPixelDataSize ( int width, int height, int format )                              ! Get pixel data size in bytes  ( image or texture ) 
-FUNCTION-ALIAS:  get-texture-data Image GetTextureData ( Texture2D texture )                                                ! Get pixel data from GPU texture and return an Image
-FUNCTION-ALIAS:  get-screen-data Image GetScreenData ( )                                                                    ! Get pixel data from screen buffer and return an Image  ( screenshot ) 
-FUNCTION-ALIAS:  update-texture void UpdateTexture ( Texture2D texture, void* pixels )                                      ! Update GPU texture with new data
-! FIX: Const Void *
-
-! Image manipulation functions
-FUNCTION-ALIAS:  image-copy Image ImageCopy ( Image image )                                                                                                     ! Create an image duplicate  ( useful for transformations ) 
-FUNCTION-ALIAS:  image-to-pot void ImageToPOT ( Image* image, Color fillColor )                                                                                 ! Convert image to POT  ( power-of-two ) 
-FUNCTION-ALIAS:  image-format void ImageFormat ( Image* image, int newFormat )                                                                                  ! Convert image data to desired format
-FUNCTION-ALIAS:  image-alpha-mask void ImageAlphaMask ( Image* image, Image alphaMask )                                                                         ! Apply alpha mask to image
-FUNCTION-ALIAS:  image-alpha-clear void ImageAlphaClear ( Image* image, Color color, float threshold )                                                          ! Clear alpha channel to desired color
-FUNCTION-ALIAS:  image-alpha-crop void ImageAlphaCrop ( Image* image, float threshold )                                                                         ! Crop image depending on alpha value
-FUNCTION-ALIAS:  image-alpha-premultiply void ImageAlphaPremultiply ( Image* image )                                                                            ! Premultiply alpha channel
-FUNCTION-ALIAS:  image-crop void ImageCrop ( Image* image, Rectangle crop )                                                                                     ! Crop an image to a defined rectangle
-FUNCTION-ALIAS:  image-resize void ImageResize ( Image* image, int newWidth, int newHeight )                                                                    ! Resize image  ( bilinear filtering ) 
-FUNCTION-ALIAS:  image-resize-nn void ImageResizeNN ( Image* image, int newWidth, int newHeight )                                                                ! Resize image  ( Nearest-Neighbor scaling algorithm ) 
-FUNCTION-ALIAS:  image-resize-canvas void ImageResizeCanvas ( Image* image, int newWidth, int newHeight, int offsetX, int offsetY, Color color )                ! Resize canvas and fill with color
-FUNCTION-ALIAS:  image-mipmaps void ImageMipmaps ( Image* image )                                                                                               ! Generate all mipmap levels for a provided image
-FUNCTION-ALIAS:  image-dither void ImageDither ( Image* image, int rBpp, int gBpp, int bBpp, int aBpp )                                                         ! Dither image data to 16bpp or lower  ( Floyd-Steinberg dithering ) 
-FUNCTION-ALIAS:  image-text Image ImageText ( c-string text, int fontSize, Color color )                                                                        ! Create an image from text  ( default font ) 
-FUNCTION-ALIAS:  image-text-ex Image ImageTextEx ( Font font, c-string text, float fontSize, float spacing, Color tint )                                        ! Create an image from text  ( custom sprite font ) 
-FUNCTION-ALIAS:  image-draw-rectangle void ImageDrawRectangle ( Image* dst, Vector2 position, Rectangle rec, Color color )                                      ! Draw rectangle within an image
-FUNCTION-ALIAS:  image-draw-rectangle-lines void ImageDrawRectangleLines ( Image *dst, Rectangle rec, int thick, Color color )                                  ! Draw rectangle lines within an image
-FUNCTION-ALIAS:  image-flip-vertical void ImageFlipVertical ( Image* image )                                                                                    ! Flip image vertically
-FUNCTION-ALIAS:  image-flip-horizontal void ImageFlipHorizontal ( Image* image )                                                                                ! Flip image horizontally
-FUNCTION-ALIAS:  image-rotate-cw void ImageRotateCW ( Image* image )                                                                                            ! Rotate image clockwise 90deg
-FUNCTION-ALIAS:  image-rotate-ccw void ImageRotateCCW ( Image* image )                                                                                          ! Rotate image counter-clockwise 90deg
-FUNCTION-ALIAS:  image-color-tint void ImageColorTint ( Image* image, Color color )                                                                             ! Modify image color: tint
-FUNCTION-ALIAS:  image-color-invert void ImageColorInvert ( Image* image )                                                                                      ! Modify image color: invert
-FUNCTION-ALIAS:  image-color-grayscale void ImageColorGrayscale ( Image* image )                                                                                ! Modify image color: grayscale
-FUNCTION-ALIAS:  image-color-contrast void ImageColorContrast ( Image* image, float contrast )                                                                  ! Modify image color: contrast  ( -100 to 100 ) 
-FUNCTION-ALIAS:  image-color-brightness void ImageColorBrightness ( Image* image, int brightness )                                                              ! Modify image color: brightness  ( -255 to 255 ) 
-FUNCTION-ALIAS:  image-color-replace void ImageColorReplace ( Image* image, Color color, Color replace )                                                        ! Modify image color: replace color
-
-! Image generation functions
-FUNCTION-ALIAS:  gen-image-color Image GenImageColor ( int width, int height, Color color )                                                ! Generate image: plain color
-FUNCTION-ALIAS:  gen-image-gradient-v Image GenImageGradientV ( int width, int height, Color top, Color bottom )                           ! Generate image: vertical gradient
-FUNCTION-ALIAS:  get-image-gradient-h Image GenImageGradientH ( int width, int height, Color left, Color right )                           ! Generate image: horizontal gradient
-FUNCTION-ALIAS:  gen-image-gradient-radial Image GenImageGradientRadial ( int width, int height, float density, Color inner, Color outer ) ! Generate image: radial gradient
-FUNCTION-ALIAS:  get-image-checked Image GenImageChecked ( int width, int height, int checksX, int checksY, Color col1, Color col2 )       ! Generate image: checked
-FUNCTION-ALIAS:  get-image-white-noise Image GenImageWhiteNoise ( int width, int height, float factor )                                    ! Generate image: white noise
-FUNCTION-ALIAS:  get-image-perlin-noise Image GenImagePerlinNoise ( int width, int height, int offsetX, int offsetY, float scale )         ! Generate image: perlin noise
-FUNCTION-ALIAS:  get-image-cellular Image GenImageCellular ( int width, int height, int tileSize )                                         ! Generate image: cellular algorithm. Bigger tileSize means bigger cells
-
-! Texture2D configuration functions
-FUNCTION-ALIAS:  gen-texture-mipmaps void GenTextureMipmaps ( Texture2D* texture )              ! Generate GPU mipmaps for a texture
-FUNCTION-ALIAS:  set-texture-filter void SetTextureFilter ( Texture2D texture, int filterMode ) ! Set texture scaling filter mode
-FUNCTION-ALIAS:  set-texture-wrap void SetTextureWrap ( Texture2D texture, int wrapMode )       ! Set texture wrapping mode
-
-! Texture2D drawing functions
-FUNCTION-ALIAS:  draw-texture void DrawTexture ( Texture2D texture, int posX, int posY, Color tint )                                                            ! Draw a Texture2D
-FUNCTION-ALIAS:  draw-texture-v void DrawTextureV ( Texture2D texture, Vector2 position, Color tint )                                                           ! Draw a Texture2D with position defined as Vector2
-FUNCTION-ALIAS:  draw-texture-ex void DrawTextureEx ( Texture2D texture, Vector2 position, float rotation, float scale, Color tint )                            ! Draw a Texture2D with extended parameters
-FUNCTION-ALIAS:  draw-texture-rec void DrawTextureRec ( Texture2D texture, Rectangle sourceRec, Vector2 position, Color tint )                                  ! Draw a part of a texture defined by a rectangle
-FUNCTION-ALIAS:  draw-texture-quad void DrawTextureQuad ( Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint )                       ! Draw texture quad with tiling and offset parameters
-FUNCTION-ALIAS:  draw-texture-pro void DrawTexturePro ( Texture2D texture, Rectangle sourceRec, Rectangle destRec, Vector2 origin, float rotation, Color tint ) ! Draw a part of a texture defined by a rectangle with 'pro' parameters
-FUNCTION-ALIAS:  draw-texture-n-patch void DrawTextureNPatch ( Texture2D texture, NPatchInfo nPatchInfo, Rectangle destRec, Vector2 origin, float rotation, Color tint )   ! Draws a texture  ( or part of it )  that stretches or shrinks nicely
-! ------------------------------------------------------------------------------------
-! Font Loading and Text Drawing Functions  ( Module: text ) 
-! ------------------------------------------------------------------------------------
-
-! Font loading/unloading functions
-FUNCTION-ALIAS:  get-font-default Font GetFontDefault ( )                                                                                    ! Get the default Font
-FUNCTION-ALIAS:  load-font Font LoadFont ( c-string fileName )                                                                               ! Load font from file into GPU memory  ( VRAM ) 
-FUNCTION-ALIAS:  load-font-ex Font LoadFontEx ( c-string fileName, int fontSize, int charsCount, int* fontChars )                            ! Load font from file with extended parameters
-FUNCTION-ALIAS:  load-font-data CharInfo* LoadFontData ( c-string fileName, int fontSize, int* fontChars, int charsCount, bool sdf )         ! Load font data for further use
-FUNCTION-ALIAS:  gen-image-font-atlas Image GenImageFontAtlas ( CharInfo* chars, int fontSize, int charsCount, int padding, int packMethod ) ! Generate image font atlas using chars info
-FUNCTION-ALIAS:  unload-font void UnloadFont ( Font font )                                                                                   ! Unload Font from GPU memory  ( VRAM ) 
-DESTRUCTOR: unload-font
-
-! Text drawing functions
-FUNCTION-ALIAS:  draw-fps void DrawFPS ( int posX, int posY )                                                                                         ! Shows current FPS
-FUNCTION-ALIAS:  draw-text void DrawText ( c-string text, int posX, int posY, int fontSize, Color color )                                             ! Draw text  ( using default font ) 
-FUNCTION-ALIAS:  draw-text-ex void DrawTextEx ( Font font, c-string text, Vector2 position, float fontSize, float spacing, Color tint )               ! Draw text using font and additional parameters
-FUNCTION-ALIAS:  draw-text-rec void DrawTextRec ( Font font, c-string text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint ) ! Draw text using font inside rectangle limits
-FUNCTION-ALIAS:  draw-text-rec-ex void DrawTextRecEx ( Font font, c-string text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint, int selectStart, int selectLength, Color selectText, Color selectBack )                                                               ! Draw text using font inside rectangle limits with support for text selection
-
-! Text misc. functions
-FUNCTION-ALIAS:  measure-text int MeasureText ( c-string text, int fontSize )                                      ! Measure string width for default font
-FUNCTION-ALIAS:  measure-text-ex Vector2 MeasureTextEx ( Font font, c-string text, float fontSize, float spacing ) ! Measure string size for Font
-FUNCTION-ALIAS:  get-glyph-index int GetGlyphIndex ( Font font, int character )                                    ! Get index position for a unicode character on font
-
-! Text strings management functions
-! Some of these aren't included because Factor should be able to handle most of this
-FUNCTION-ALIAS:  text-is-equal bool TextIsEqual ( c-string text1, c-string text2 )                  ! Check if two text string are equal
-FUNCTION-ALIAS:  text-length uint TextLength ( c-string text )                                      ! Get text length, checks for '\0' ending
-FUNCTION-ALIAS:  text-subtext c-string TextSubtext ( c-string text, int position, int length )      ! Get a piece of a text string
-FUNCTION-ALIAS:  text-replace c-string TextReplace ( c-string text, c-string replace, c-string by ) ! Replace text string
-FUNCTION-ALIAS:  text-insert c-string TextInsert ( c-string text, c-string insert, int position )   ! Insert text in a position 
-FUNCTION-ALIAS:  text-split c-string* TextSplit ( c-string text, char delimiter, int* count )       ! Split text into multiple strings
-FUNCTION-ALIAS:  text-append void TextAppend ( c-string text, c-string append, int* position )      ! Append text at specific position and move cursor!
-FUNCTION-ALIAS:  text-find-index int TextFindIndex ( c-string text, c-string find )                 ! Find first text occurrence within a string
-FUNCTION-ALIAS:  text-to-upper c-string TextToUpper ( c-string text )                               ! Get upper case version of provided string
-FUNCTION-ALIAS:  text-to-lower c-string TextToLower ( c-string text )                               ! Get lower case version of provided string
-FUNCTION-ALIAS:  text-to-pascal c-string TextToPascal ( c-string text )                             ! Get Pascal case notation version of provided string
-FUNCTION-ALIAS:  text-to-integer int TextToInteger ( c-string text )                                ! Get integer value from text  ( negative values not supported ) 
-! ------------------------------------------------------------------------------------
-! Basic 3d Shapes Drawing Functions  ( Module: models ) 
-! ------------------------------------------------------------------------------------
-
-! Basic geometric 3D shapes drawing functions
-FUNCTION-ALIAS:  draw-line-3d void DrawLine3D ( Vector3 startPos, Vector3 endPos, Color color )                                                              ! Draw a line in 3D world space
-FUNCTION-ALIAS:  draw-circle-3d void DrawCircle3D ( Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color )                   ! Draw a circle in 3D world space
-FUNCTION-ALIAS:  draw-cube void DrawCube ( Vector3 position, float width, float height, float length, Color color )                                          ! Draw cube
-FUNCTION-ALIAS:  draw-cube-v void DrawCubeV ( Vector3 position, Vector3 size, Color color )                                                                  ! Draw cube  ( Vector version ) 
-FUNCTION-ALIAS:  draw-cube-wires void DrawCubeWires ( Vector3 position, float width, float height, float length, Color color )                               ! Draw cube wires
-FUNCTION-ALIAS:  draw-cube-wires-v void DrawCubeWiresV ( Vector3 position, Vector3 size, Color color )                                                         ! Draw cube wires  ( Vector version ) 
-FUNCTION-ALIAS:  draw-cube-texture void DrawCubeTexture ( Texture2D texture, Vector3 position, float width, float height, float length, Color color )        ! Draw cube textured
-FUNCTION-ALIAS:  draw-sphere void DrawSphere ( Vector3 centerPos, float radius, Color color )                                                                ! Draw sphere
-FUNCTION-ALIAS:  draw-sphere-ex void DrawSphereEx ( Vector3 centerPos, float radius, int rings, int slices, Color color )                                    ! Draw sphere with extended parameters
-FUNCTION-ALIAS:  draw-sphere-wires void DrawSphereWires ( Vector3 centerPos, float radius, int rings, int slices, Color color )                              ! Draw sphere wires
-FUNCTION-ALIAS:  draw-cylinder void DrawCylinder ( Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color )            ! Draw a cylinder/cone
-FUNCTION-ALIAS:  draw-cylinder-wires void DrawCylinderWires ( Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color ) ! Draw a cylinder/cone wires
-FUNCTION-ALIAS:  draw-plane void DrawPlane ( Vector3 centerPos, Vector2 size, Color color )                                                                  ! Draw a plane XZ
-FUNCTION-ALIAS:  draw-ray void DrawRay ( Ray ray, Color color )                                                                                              ! Draw a ray line
-FUNCTION-ALIAS:  draw-grid void DrawGrid ( int slices, float spacing )                                                                                       ! Draw a grid  ( centered at  ( 0, 0, 0 )  ) 
-FUNCTION-ALIAS:  draw-gizmo void DrawGizmo ( Vector3 position )                                                                                              ! Draw simple gizmo
-
-
-! ------------------------------------------------------------------------------------
-! Model 3d Loading and Drawing Functions  ( Module: models ) 
-! ------------------------------------------------------------------------------------
-
-! Model loading/unloading functions
-FUNCTION-ALIAS:  load-model Model LoadModel ( c-string fileName )           ! Load model from files  ( mesh and material ) 
-FUNCTION-ALIAS:  load-model-from-mesh Model LoadModelFromMesh ( Mesh mesh ) ! Load model from generated mesh
-FUNCTION-ALIAS:  unload-model void UnloadModel ( Model model )              ! Unload model from memory  ( RAM and/or VRAM ) 
-DESTRUCTOR: unload-model
-
-! Mesh loading/unloading functions
-FUNCTION-ALIAS:  load-mesh Mesh* LoadMeshes ( c-string fileName, int* meshCount  )                ! Load meshes from model file
-FUNCTION-ALIAS:  unload-mesh void UnloadMesh ( Mesh* mesh )                                       ! Unload mesh from memory  ( RAM and/or VRAM ) 
-DESTRUCTOR: unload-mesh
-FUNCTION-ALIAS:  export-mesh void ExportMesh ( c-string fileName, Mesh mesh )                     ! Export mesh as an OBJ file
-
-! Mesh manipulation functions
-FUNCTION-ALIAS:  mesh-bounding-box BoundingBox MeshBoundingBox ( Mesh mesh ) ! Compute mesh bounding box limits
-FUNCTION-ALIAS:  mesh-tangents void MeshTangents ( Mesh* mesh )              ! Compute mesh tangents
-FUNCTION-ALIAS:  mesh-binormals void MeshBinormals ( Mesh* mesh )            ! Compute mesh binormals
-
-! Mesh generation functions
-FUNCTION-ALIAS:  gen-mesh-poly Mesh GenMeshPoly ( int sides, float radius )                           ! Generate polygonal mesh
-FUNCTION-ALIAS:  gen-mesh-plane Mesh GenMeshPlane ( float width, float length, int resX, int resZ )   ! Generate plane mesh  ( with subdivisions ) 
-FUNCTION-ALIAS:  gen-mesh-cube Mesh GenMeshCube ( float width, float height, float length )           ! Generate cuboid mesh
-FUNCTION-ALIAS:  gen-mesh-sphere Mesh GenMeshSphere ( float radius, int rings, int slices )           ! Generate sphere mesh  ( standard sphere ) 
-FUNCTION-ALIAS:  gen-mesh-hemisphere Mesh GenMeshHemiSphere ( float radius, int rings, int slices )   ! Generate half-sphere mesh  ( no bottom cap ) 
-FUNCTION-ALIAS:  gen-mesh-cylinder Mesh GenMeshCylinder ( float radius, float height, int slices )    ! Generate cylinder mesh
-FUNCTION-ALIAS:  gen-mesh-torus Mesh GenMeshTorus ( float radius, float size, int radSeg, int sides ) ! Generate torus mesh
-FUNCTION-ALIAS:  gen-mesh-knot Mesh GenMeshKnot ( float radius, float size, int radSeg, int sides )   ! Generate trefoil knot mesh
-FUNCTION-ALIAS:  gen-mesh-heightmap Mesh GenMeshHeightmap ( Image heightmap, Vector3 size )           ! Generate heightmap mesh from image data
-FUNCTION-ALIAS:  gen-mesh-cubicmap Mesh GenMeshCubicmap ( Image cubicmap, Vector3 cubeSize )          ! Generate cubes-based map mesh from image data
-
-! Material loading/unloading functions
-FUNCTION-ALIAS:  load-material Material LoadMaterial ( c-string fileName )                                           ! Load material from file
-FUNCTION-ALIAS:  load-material-default Material LoadMaterialDefault ( )                                              ! Load default material  ( Supports: DIFFUSE, SPECULAR, NORMAL maps ) 
-FUNCTION-ALIAS:  unload-material void UnloadMaterial ( Material material )                                           ! Unload material from GPU memory  ( VRAM ) 
-DESTRUCTOR: unload-material
-FUNCTION-ALIAS:  set-material-texture void SetMaterialTexture ( Material *material, int mapType, Texture2D texture ) ! Set texture for a material map type  ( MAP_DIFFUSE, MAP_SPECULAR... ) 
-FUNCTION-ALIAS:  set-model-mesh-material void SetModelMeshMaterial ( Model *model, int meshId, int materialId )      ! Set material for a mesh
-
-! Model animations loading/unloading functions
-FUNCTION-ALIAS:  load-model-animations ModelAnimation* LoadModelAnimations ( c-string fileName, int* animsCount ) ! Load model animations from file
-FUNCTION-ALIAS:  update-model-animation void UpdateModelAnimation ( Model model, ModelAnimation anim, int frame ) ! Update model animation pose
-FUNCTION-ALIAS:  unload-model-animation void UnloadModelAnimation ( ModelAnimation anim )                         ! Unload animation data
-DESTRUCTOR: unload-model-animation
-FUNCTION-ALIAS:  is-model-animation-valid bool IsModelAnimationValid ( Model model, ModelAnimation anim )         ! Check model animation skeleton match
-
-! Model drawing functions
-FUNCTION-ALIAS:  draw-model void DrawModel ( Model model, Vector3 position, float scale, Color tint )                                                              ! Draw a model  ( with texture if set ) 
-FUNCTION-ALIAS:  draw-model-ex void DrawModelEx ( Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint )            ! Draw a model with extended parameters
-FUNCTION-ALIAS:  draw-model-wires void DrawModelWires ( Model model, Vector3 position, float scale, Color tint )                                                   ! Draw a model wires  ( with texture if set ) 
-FUNCTION-ALIAS:  draw-model-wires-ex void DrawModelWiresEx ( Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint ) ! Draw a model wires  ( with texture if set )  with extended parameters
-FUNCTION-ALIAS:  draw-bounding-box void DrawBoundingBox ( BoundingBox box, Color color )                                                                           ! Draw bounding box  ( wires ) 
-FUNCTION-ALIAS:  draw-billboard void DrawBillboard ( Camera camera, Texture2D texture, Vector3 center, float size, Color tint )                                    ! Draw a billboard texture
-FUNCTION-ALIAS:  draw-billboard-rec void DrawBillboardRec ( Camera camera, Texture2D texture, Rectangle sourceRec, Vector3 center, float size, Color tint )        ! Draw a billboard texture defined by sourceRec
-
-! Collision detection functions
-FUNCTION-ALIAS:  check-collision-spheres bool CheckCollisionSpheres ( Vector3 centerA, float radiusA, Vector3 centerB, float radiusB )                         ! Detect collision between two spheres
-FUNCTION-ALIAS:  check-collision-boxes bool CheckCollisionBoxes ( BoundingBox box1, BoundingBox box2 )                                                         ! Detect collision between two bounding boxes
-FUNCTION-ALIAS:  check-collision-box-sphere bool CheckCollisionBoxSphere ( BoundingBox box, Vector3 centerSphere, float radiusSphere )                         ! Detect collision between box and sphere
-FUNCTION-ALIAS:  check-collision-ray-sphere bool CheckCollisionRaySphere ( Ray ray, Vector3 spherePosition, float sphereRadius )                               ! Detect collision between ray and sphere
-FUNCTION-ALIAS:  check-collision-ray-sphere-ex bool CheckCollisionRaySphereEx ( Ray ray, Vector3 spherePosition, float sphereRadius, Vector3* collisionPoint ) ! Detect collision between ray and sphere, returns collision point
-FUNCTION-ALIAS:  check-collision-ray-box bool CheckCollisionRayBox ( Ray ray, BoundingBox box )                                                                ! Detect collision between ray and box
-FUNCTION-ALIAS:  get-collision-ray-model RayHitInfo GetCollisionRayModel ( Ray ray, Model model )                                                             ! Get collision info between ray and model
-FUNCTION-ALIAS:  get-collision-ray-triangle RayHitInfo GetCollisionRayTriangle ( Ray ray, Vector3 p1, Vector3 p2, Vector3 p3 )                                 ! Get collision info between ray and triangle
-FUNCTION-ALIAS:  get-collision-ray-ground RayHitInfo GetCollisionRayGround ( Ray ray, float groundHeight )                                                     ! Get collision info between ray and ground plane  ( Y-normal plane ) 
-
-! ------------------------------------------------------------------------------------
-! Shaders System Functions  ( Module: rlgl ) 
-! NOTE: This functions are useless when using OpenGL 1.1
-! ------------------------------------------------------------------------------------
-
-! Shader loading/unloading functions
-FUNCTION-ALIAS:  load-text c-string LoadText ( c-string fileName )                          ! Load chars array from text file
-FUNCTION-ALIAS:  load-shader Shader LoadShader ( c-string vsFileName, c-string fsFileName ) ! Load shader from files and bind default locations
-FUNCTION-ALIAS:  load-shader-code Shader LoadShaderCode ( c-string vsCode, c-string fsCode )      ! Load shader from code strings and bind default locations
-FUNCTION-ALIAS:  unload-shader void UnloadShader ( Shader shader )                          ! Unload shader from GPU memory  ( VRAM ) 
-DESTRUCTOR: unload-shader
-FUNCTION-ALIAS:  get-shader-default Shader GetShaderDefault ( )                             ! Get default shader
-FUNCTION-ALIAS:  get-texture-default Texture2D GetTextureDefault ( )                        ! Get default texture
-
-! Shader configuration functions
-FUNCTION-ALIAS:  get-shader-location int GetShaderLocation ( Shader shader, c-string uniformName )                                  ! Get shader uniform location
-FUNCTION-ALIAS:  set-shader-value void SetShaderValue ( Shader shader, int uniformLoc, void* value, int uniformType )               ! Set shader uniform value
-FUNCTION-ALIAS:  set-shader-value-v void SetShaderValueV ( Shader shader, int uniformLoc, void* value, int uniformType, int count ) ! Set shader uniform value vector
-FUNCTION-ALIAS:  set-shader-value-matrix void SetShaderValueMatrix ( Shader shader, int uniformLoc, Matrix mat )                    ! Set shader uniform value  ( matrix 4x4 ) 
-FUNCTION-ALIAS:  set-shader-value-texture void SetShaderValueTexture ( Shader shader, int uniformLoc, Texture2D texture )           ! Set shader uniform value for texture
-FUNCTION-ALIAS:  set-matrix-projection void SetMatrixProjection ( Matrix proj )                                                     ! Set a custom projection matrix  ( replaces internal projection matrix ) 
-FUNCTION-ALIAS:  set-matrix-model-view void SetMatrixModelview ( Matrix view )                                                      ! Set a custom modelview matrix  ( replaces internal modelview matrix ) 
-FUNCTION-ALIAS:  get-matrix-model-view Matrix GetMatrixModelview (  )                                                               ! Get internal modelview matrix
-
-! Texture maps generation  ( PBR ) 
-! NOTE: Required shaders should be provided
-FUNCTION-ALIAS:  gen-texture-cubemap Texture2D GenTextureCubemap ( Shader shader, Texture2D skyHDR, int size )        ! Generate cubemap texture from HDR texture
-FUNCTION-ALIAS:  gen-texture-irradiance Texture2D GenTextureIrradiance ( Shader shader, Texture2D cubemap, int size ) ! Generate irradiance texture using cubemap data
-FUNCTION-ALIAS:  gen-texture-prefilter Texture2D GenTexturePrefilter ( Shader shader, Texture2D cubemap, int size )   ! Generate prefilter texture using cubemap data
-FUNCTION-ALIAS:  gen-texture-brdf Texture2D GenTextureBRDF ( Shader shader, Texture2D cubemap, int size )             ! Generate BRDF texture using cubemap data
-
-! Shading begin/end functions
-FUNCTION-ALIAS:  begin-shader-mode void BeginShaderMode ( Shader shader )                         ! Begin custom shader drawing
-FUNCTION-ALIAS:  end-shader-mode void EndShaderMode ( )                                           ! End custom shader drawing  ( use default shader ) 
-FUNCTION-ALIAS:  begin-blend-mode void BeginBlendMode ( int mode )                                ! Begin blending mode  ( alpha, additive, multiplied ) 
-FUNCTION-ALIAS:  end-blend-mode void EndBlendMode ( )                                             ! End blending mode  ( reset to default: alpha blending ) 
-
-! VR control functions
-FUNCTION-ALIAS:  init-vr-simulator void InitVrSimulator ( )                                            ! Init VR simulator for selected device parameters
-FUNCTION-ALIAS:  close-vr-simulator void CloseVrSimulator ( )                                          ! Close VR simulator for current device
-FUNCTION-ALIAS:  update-vr-tracking void UpdateVrTracking ( Camera *camera )                           ! Update VR tracking  ( position and orientation )  and camera
-FUNCTION-ALIAS:  set-vr-configuration void SetVrConfiguration ( VrDeviceInfo info, Shader distortion ) ! Set stereo rendering configuration parameters 
-FUNCTION-ALIAS:  is-vr-simulator-ready bool IsVrSimulatorReady ( )                                     ! Detect if VR simulator is ready
-FUNCTION-ALIAS:  toggle-vr-mode void ToggleVrMode ( )                                                  ! Enable/Disable VR experience
-FUNCTION-ALIAS:  begin-vr-drawing void BeginVrDrawing ( )                                              ! Begin VR simulator stereo rendering
-FUNCTION-ALIAS:  end-vr-drawing void EndVrDrawing ( )                                                  ! End VR simulator stereo rendering
-
-! ------------------------------------------------------------------------------------
-! Audio Loading and Playing Functions  ( Module: audio ) 
-! ------------------------------------------------------------------------------------
-
-! Audio device management functions
-FUNCTION-ALIAS:  init-audio-device void InitAudioDevice ( )              ! Initialize audio device and context
-FUNCTION-ALIAS:  close-audio-device void CloseAudioDevice ( )            ! Close the audio device and context
-FUNCTION-ALIAS:  is-audio-device-ready bool IsAudioDeviceReady ( )       ! Check if audio device has been initialized successfully
-FUNCTION-ALIAS:  set-master-volume void SetMasterVolume ( float volume ) ! Set master volume  ( listener ) 
-
-! Wave/Sound loading/unloading functions
-FUNCTION-ALIAS:  load-wave Wave LoadWave ( c-string fileName )                                                              ! Load wave data from file
-FUNCTION-ALIAS:  load-wave-ex Wave LoadWaveEx ( void* data, int sampleCount, int sampleRate, int sampleSize, int channels ) ! Load wave data from raw array data
-FUNCTION-ALIAS:  load-sound Sound LoadSound ( c-string fileName )                                                           ! Load sound from file
-FUNCTION-ALIAS:  load-sound-from-wave Sound LoadSoundFromWave ( Wave wave )                                                 ! Load sound from wave data
-FUNCTION-ALIAS:  update-sound void UpdateSound ( Sound sound, void* data, int samplesCount )                                ! Update sound buffer with new data
-FUNCTION-ALIAS:  unload-wave void UnloadWave ( Wave wave )                                                                  ! Unload wave data
-DESTRUCTOR: unload-wave
-FUNCTION-ALIAS:  unload-sound void UnloadSound ( Sound sound )                                                              ! Unload sound
-DESTRUCTOR: unload-sound
-FUNCTION-ALIAS:  export-wave void ExportWave ( Wave wave, c-string fileName )                                               ! Export wave data to file
-FUNCTION-ALIAS:  export-wave-as-code void ExportWaveAsCode ( Wave wave, c-string fileName )                                 ! Export wave sample data to code  ( .h ) 
-
-! Wave/Sound management functions
-FUNCTION-ALIAS:  play-sound void PlaySound ( Sound sound )                                                ! Play a sound
-FUNCTION-ALIAS:  pause-sound void PauseSound ( Sound sound )                                              ! Pause a sound
-FUNCTION-ALIAS:  resume-sound void ResumeSound ( Sound sound )                                            ! Resume a paused sound
-FUNCTION-ALIAS:  stop-sound void StopSound ( Sound sound )                                                ! Stop playing a sound
-FUNCTION-ALIAS:  is-sound-playing bool IsSoundPlaying ( Sound sound )                                     ! Check if a sound is currently playing
-FUNCTION-ALIAS:  set-sound-volume void SetSoundVolume ( Sound sound, float volume )                       ! Set volume for a sound  ( 1.0 is max level ) 
-FUNCTION-ALIAS:  set-sound-pitch void SetSoundPitch ( Sound sound, float pitch )                          ! Set pitch for a sound  ( 1.0 is base level ) 
-FUNCTION-ALIAS:  wave-format void WaveFormat ( Wave* wave, int sampleRate, int sampleSize, int channels ) ! Convert wave data to desired format
-FUNCTION-ALIAS:  wave-copy Wave WaveCopy ( Wave wave )                                                    ! Copy a wave to a new wave
-FUNCTION-ALIAS:  wave-crop void WaveCrop ( Wave* wave, int initSample, int finalSample )                  ! Crop a wave to defined samples range
-FUNCTION-ALIAS:  get-wave-data float* GetWaveData ( Wave wave )                                           ! Get samples data from wave as a floats array
-
-! Music management functions
-FUNCTION-ALIAS:  load-music-stream Music LoadMusicStream ( c-string fileName )          ! Load music stream from file
-FUNCTION-ALIAS:  unload-music-stream void UnloadMusicStream ( Music music )             ! Unload music stream
-DESTRUCTOR: unload-music-stream
-FUNCTION-ALIAS:  play-music-stream void PlayMusicStream ( Music music )                 ! Start music playing
-FUNCTION-ALIAS:  update-music-stream void UpdateMusicStream ( Music music )             ! Updates buffers for music streaming
-FUNCTION-ALIAS:  stop-music-stream void StopMusicStream ( Music music )                 ! Stop music playing
-FUNCTION-ALIAS:  pause-music-stream void PauseMusicStream ( Music music )               ! Pause music playing
-FUNCTION-ALIAS:  resume-music-stream void ResumeMusicStream ( Music music )             ! Resume playing paused music
-FUNCTION-ALIAS:  is-music-playing bool IsMusicPlaying ( Music music )                   ! Check if music is playing
-FUNCTION-ALIAS:  set-music-volume void SetMusicVolume ( Music music, float volume )     ! Set volume for music  ( 1.0 is max level ) 
-FUNCTION-ALIAS:  set-music-pitch void SetMusicPitch ( Music music, float pitch )        ! Set pitch for a music  ( 1.0 is base level ) 
-FUNCTION-ALIAS:  set-music-loop-count void SetMusicLoopCount ( Music music, int count ) ! Set music loop count  ( loop repeats ) 
-FUNCTION-ALIAS:  get-music-time-length float GetMusicTimeLength ( Music music )         ! Get music time length  ( in seconds ) 
-FUNCTION-ALIAS:  get-music-time-played float GetMusicTimePlayed ( Music music )         ! Get current music time played  ( in seconds ) 
-
-! AudioStream management functions
-FUNCTION-ALIAS:  init-audio-stream AudioStream InitAudioStream ( uint sampleRate, uint sampleSize, uint channels )                 ! Init audio stream  ( to stream raw audio pcm data ) 
-FUNCTION-ALIAS:  update-audio-stream void UpdateAudioStream ( AudioStream stream, void* data, int samplesCount )                   ! Update audio stream buffers with data
-FUNCTION-ALIAS:  close-audio-stream void CloseAudioStream ( AudioStream stream )                                                   ! Close audio stream and free memory
-FUNCTION-ALIAS:  is-audio-buffer-processed bool IsAudioBufferProcessed ( AudioStream stream )                                      ! Check if any audio stream buffers requires refill
-FUNCTION-ALIAS:  play-audio-stream void PlayAudioStream ( AudioStream stream )                                                     ! Play audio stream
-FUNCTION-ALIAS:  pause-audio-stream void PauseAudioStream ( AudioStream stream )                                                   ! Pause audio stream
-FUNCTION-ALIAS:  resume-audio-stream void ResumeAudioStream ( AudioStream stream )                                                 ! Resume audio stream
-FUNCTION-ALIAS:  is-audio-stream-playing bool IsAudioStreamPlaying ( AudioStream stream )                                          ! Check if audio stream is playing
-FUNCTION-ALIAS:  stop-audio-stream void StopAudioStream ( AudioStream stream )                                                     ! Stop audio stream
-FUNCTION-ALIAS:  set-audio-stream-volume void SetAudioStreamVolume ( AudioStream stream, float volume )                            ! Set volume for audio stream  ( 1.0 is max level ) 
-FUNCTION-ALIAS:  set-audio-stream-pitch void SetAudioStreamPitch ( AudioStream stream, float pitch )                               ! Set pitch for audio stream  ( 1.0 is base level ) 
-
-
-
-! ------------------------------
-! New or updated from 2.5 -> 3.5
-! ------------------------------
-
-FUNCTION-ALIAS:  get-world-to-screen-ex Vector2 GetWorldToScreenEx ( Vector3 position, Camera camera, int width, int height )                                           ! Returns size position for a 3d world space position
-FUNCTION-ALIAS:  get-world-to-screen-2d Vector2 GetWorldToScreen2D ( Vector2 position, Camera2D camera )                                                                ! Returns the screen space position for a 2d camera world space position
-FUNCTION-ALIAS:  get-screen-to-world2d Vector2 GetScreenToWorld2D ( Vector2 position, Camera2D camera )                                                                 ! Returns the world space position for a 2d camera screen space position
-FUNCTION-ALIAS:  compress-data uchar*  CompressData ( uchar*  data, int dataLength, int* compDataLength )                                                               ! Compress data  ( DEFLATE algorithm)
-FUNCTION-ALIAS:  decompress-data uchar*  DecompressData ( uchar*  compData, int compDataLength, int* dataLength )                                                       ! Decompress data  ( DEFLATE algorithm)
-FUNCTION-ALIAS:  get-char-pressed int GetCharPressed ( )                                                                                                           ! Get char pressed  ( unicode), call it multiple times for chars queued
-FUNCTION-ALIAS:  get-mouse-cursor int GetMouseCursor ( )                                                                                                           ! Returns mouse cursor if  ( MouseCursor enum)
-FUNCTION-ALIAS:  set-mouse-cursor void SetMouseCursor ( int cursor )                                                                                                    ! Set mouse cursor
-FUNCTION-ALIAS:  check-collision-lines bool CheckCollisionLines ( Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint )     ! Check the collision between two lines defined by two points each, returns collision point by reference
-FUNCTION-ALIAS:  load-image-anim Image LoadImageAnim ( char* fileName, int* frames )                                                                                    ! Load image sequence from file  ( frames appended to image.data)
-FUNCTION-ALIAS:  load-image-from-memory Image LoadImageFromMemory ( char* fileType, uchar*  fileData, int dataSize )                                              ! Load image from memory buffer, fileType refers to extension: i.e. "png"
-FUNCTION-ALIAS:  load-image-colors Color* LoadImageColors ( Image image )                                                                                               ! Load color data from image as a Color array  ( RGBA - 32bit)
-FUNCTION-ALIAS:  load-image-palette Color* LoadImagePalette ( Image image, int maxPaletteSize, int* colorsCount )                                                       ! Load colors palette from image as a Color array  ( RGBA - 32bit)
-FUNCTION-ALIAS:  unload-image-colors void UnloadImageColors ( Color* colors )                                                                                           ! Unload color data loaded with LoadImageColors ( )
-DESTRUCTOR: unload-image-colors
-FUNCTION-ALIAS:  unload-image-palette void UnloadImagePalette ( Color* colors )                                                                                         ! Unload colors palette loaded with LoadImagePalette ( )
-DESTRUCTOR: unload-image-palette
-FUNCTION-ALIAS:  get-image-alpha-border Rectangle GetImageAlphaBorder ( Image image, float threshold )                                                                  ! Get image alpha border rectangle
-
-
-! Image drawing functions
-! NOTE: Image software-rendering functions  (CPU)
-FUNCTION-ALIAS:  image-clear-background void ImageClearBackground ( Image* dst, Color color )                                                                   ! Clear image background with given color
-FUNCTION-ALIAS:  image-draw-pixel void ImageDrawPixel ( Image* dst, int posX, int posY, Color color )                                                           ! Draw pixel within an image
-FUNCTION-ALIAS:  image-draw-pixel-v void ImageDrawPixelV ( Image* dst, Vector2 position, Color color )                                                          ! Draw pixel within an image  ( Vector version)
-FUNCTION-ALIAS:  image-draw-line void ImageDrawLine ( Image* dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color )                         ! Draw line within an image
-FUNCTION-ALIAS:  image-draw-line-v void ImageDrawLineV ( Image* dst, Vector2 start, Vector2 end, Color color )                                                  ! Draw line within an image  ( Vector version)
-FUNCTION-ALIAS:  image-draw-circle void ImageDrawCircle ( Image* dst, int centerX, int centerY, int radius, Color color )                                       ! Draw circle within an image
-FUNCTION-ALIAS:  image-draw-circle-v void ImageDrawCircleV ( Image* dst, Vector2 center, int radius, Color color )                                              ! Draw circle within an image  ( Vector version)
-FUNCTION-ALIAS:  image-draw-rectangle-v void ImageDrawRectangleV ( Image* dst, Vector2 position, Vector2 size, Color color )                                    ! Draw rectangle within an image  ( Vector version)
-FUNCTION-ALIAS:  image-draw-rectangle-rec void ImageDrawRectangleRec ( Image* dst, Rectangle rec, Color color )                                                 ! Draw rectangle within an image
-FUNCTION-ALIAS:  image-draw void ImageDraw ( Image* dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint )                                            ! Draw a source image within a destination image  ( tint applied to source)
-FUNCTION-ALIAS:  image-draw-text void ImageDrawText ( Image* dst, char* text, int posX, int posY, int fontSize, Color color )                                   ! Draw text  ( using default font) within an image  ( destination)
-FUNCTION-ALIAS:  image-draw-text-ex void ImageDrawTextEx ( Image* dst, Font font, char* text, Vector2 position, float fontSize, float spacing, Color tint )     ! Draw text  ( custom sprite font) within an image  ( destination)
-! ----
-
-FUNCTION-ALIAS:  update-texture-rec void UpdateTextureRec ( Texture2D texture, Rectangle rec, void* pixels )                        ! Update GPU texture rectangle with new data
-
-! Color/pixel related functions
-FUNCTION-ALIAS:  fade Color Fade ( Color color, float alpha )                                   ! Returns color with alpha applied, alpha goes from 0.0f to 1.0f
-FUNCTION-ALIAS:  color-to-int int ColorToInt ( Color color )                                    ! Returns hexadecimal value for a Color
-FUNCTION-ALIAS:  color-normalize Vector4 ColorNormalize ( Color color )                         ! Returns Color normalized as float [0..1]
-FUNCTION-ALIAS:  color-from-normalized Color ColorFromNormalized ( Vector4 normalized )         ! Returns Color from normalized values [0..1]
-FUNCTION-ALIAS:  color-to-hsv Vector3 ColorToHSV ( Color color )                                ! Returns HSV values for a Color
-FUNCTION-ALIAS:  color-from-hsv Color ColorFromHSV ( float hue, float saturation, float value ) ! Returns a Color from HSV values
-FUNCTION-ALIAS:  color-alpha Color ColorAlpha ( Color color, float alpha )                      ! Returns color with alpha applied, alpha goes from 0.0f to 1.0f
-FUNCTION-ALIAS:  color-alpha-blend Color ColorAlphaBlend ( Color dst, Color src, Color tint )   ! Returns src alpha-blended into dst color with tint
-FUNCTION-ALIAS:  get-color Color GetColor ( int hexValue )                                      ! Get Color structure from hexadecimal value
-FUNCTION-ALIAS:  get-pixel-color Color GetPixelColor ( void* srcPtr, int format )               ! Get Color from a source pixel pointer of certain format
-FUNCTION-ALIAS:  set-pixel-color void SetPixelColor ( void* dstPtr, Color color, int format )   ! Set color formatted into destination pixel pointer
-
-! ---------
-
-FUNCTION-ALIAS:  get-codepoints int* GetCodepoints ( char* text, int* count )                           ! Get all codepoints in a string, codepoints count returned by parameters
-FUNCTION-ALIAS:  get-codepoints-count int GetCodepointsCount ( char* text )                             ! Get total number of characters  ( codepoints) in a UTF8 encoded string
-FUNCTION-ALIAS:  get-next-codepoint int GetNextCodepoint ( char* text, int* bytesProcessed )            ! Returns next codepoint in a UTF8 encoded string; 0x3f ( '?') is returned on failure
-FUNCTION-ALIAS:  codepoint-to-utf8 char* CodepointToUtf8 ( int codepoint, int* byteLength )             ! Encode codepoint into utf8 text  ( char array length returned as parameter)
-FUNCTION-ALIAS:  mesh-normals-smooth void MeshNormalsSmooth ( Mesh *mesh )                              ! Smooth  ( average) vertex normals
-FUNCTION-ALIAS:  get-shapes-texture Texture2D GetShapesTexture ( )                                      ! Get texture to draw shapes
-FUNCTION-ALIAS:  get-shapes-texture-rec Rectangle GetShapesTextureRec ( )                               ! Get texture rectangle to draw shapes
-FUNCTION-ALIAS:  get-matrix-projection Matrix GetMatrixProjection ( )                                   ! Get internal projection matrix
-FUNCTION-ALIAS:  load-wave-samples float* LoadWaveSamples ( Wave wave )                                 ! Load samples data from wave as a floats array
-FUNCTION-ALIAS:  unload-wave-samples void UnloadWaveSamples ( float* samples )                          ! Unload samples data loaded with LoadWaveSamples ( )
-DESTRUCTOR: unload-wave-samples
-FUNCTION-ALIAS:  set-audiostream-buffersize-default void SetAudioStreamBufferSizeDefault ( int size )   ! Default size for new audio streams
-
-
-! ------------------------------------------------------------
-! Load modules depending on what the installed dll/so supports
-! -----------------------------------------------------------
-"raylib" lookup-library dll>> dup
-! Check for ricons symbols
-"DrawIcon" swap dlsym  [ "raylib.modules.ricons" require ] when
-! Check for gui symbols
-"GuiEnable" swap dlsym [ "raylib.modules.gui"    require ] when 
-
-
diff --git a/extra/raylib/ffi/util/util.factor b/extra/raylib/ffi/util/util.factor
deleted file mode 100644 (file)
index 51ec86d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-USING: accessors alien alien.parser classes generic kernel lexer parser
-quotations sequences slots specialized-arrays specialized-arrays.private
-vocabs.parser words ;
-
-IN: raylib.ffi.util
-
-: array-word ( c-type -- str )
-    name>> "-array" append parse-word ;
-
-: array-direct-like ( c-type -- quot: ( alien len -- array ) )
-    array-word "prototype" word-prop '[ _ direct-like ] ;
-
-: ?use-vocab ( vocab -- )
-    dup using-vocab? [ drop ] [ use-vocab ] if ;
-
-: use-specialized-array ( c-type -- direct-constructor )
-    [ define-array-vocab ?use-vocab ]
-    [ array-direct-like ] bi ;
-
-! TODO: setter?
-
-:: define-array-slot ( struct-class element-type pointer-slot length-quot accessor -- )
-    element-type use-specialized-array :> cons-quot
-    accessor [ define-protocol-slot ] [ reader-word ] bi :> reader
-    struct-class reader create-method :> reader-method
-    pointer-slot reader-word 1quotation length-quot cons-quot
-    '[ [ @ >c-ptr ] _ bi @ ] reader-method swap define ;
-
-! ARRAY-SLOT: struct-class element-type-class pointer-slot length-quotation new-accessor
-SYNTAX: ARRAY-SLOT: scan-class scan-c-type scan-token scan-object quotation check-instance scan-token define-array-slot ;
diff --git a/extra/raylib/gui-demo/gui-demo.factor b/extra/raylib/gui-demo/gui-demo.factor
deleted file mode 100644 (file)
index 6afb2cd..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-! Copyright (C) 2019 Jack Lucas
-! See http://factorcode.org/license.txt for BSD license.
-USING: raylib.ffi kernel math.ranges sequences locals random combinators.random  math threads calendar namespaces accessors classes.struct combinators alien.enums raylib.modules.gui ;
-IN: raylib.gui-demo
-
-: make-window ( -- )
-    800 600 "Hello, Factor!" init-window
-    60 set-target-fps ;
-
-: button-rec ( -- button )
-    50 50 100 100 Rectangle <struct-boa> ;
-
-: white-background ( -- )
-    RAYWHITE clear-background ;
-
-: say-hello ( -- )
-    "Hello Factor!" 4 4 30 RED draw-text ;
-
-: set-button-style ( -- )
-    BUTTON enum>number
-    TEXT_ALIGNMENT enum>number
-    GUI_TEXT_ALIGN_LEFT enum>number
-    rl-gui-set-style ;
-
-: draw-button ( -- )
-    set-button-style
-    button-rec "Button"
-    rl-gui-button drop ;
-
-: render-gui ( -- )
-    rl-gui-lock
-    draw-button
-    rl-gui-unlock ;
-
-: render-loop ( -- )
-    begin-drawing white-background 
-    say-hello render-gui end-drawing ;
-
-: main ( -- )
-    make-window
-    [ render-loop
-      window-should-close not ] loop
-    close-window ;
-
-MAIN: main
diff --git a/extra/raylib/gui-demo/tags.txt b/extra/raylib/gui-demo/tags.txt
deleted file mode 100644 (file)
index cb5fc20..0000000
+++ /dev/null
@@ -1 +0,0 @@
-demos
diff --git a/extra/raylib/modules/gui/gui.factor b/extra/raylib/modules/gui/gui.factor
deleted file mode 100644 (file)
index 772ccfe..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-! Copyright (C) 2019 Jack Lucas
-! See http://factorcode.org/license.txt for BSD license.
-! These should be complete bindings to the Raygui library 2.0
-! Most of the comments are included from the original header
-! for your convenience.
-USING: alien alien.c-types alien.enums alien.libraries
-alien.libraries.finder alien.syntax classes.struct combinators
-kernel quotations system vocabs raylib.ffi ;
-IN: raylib.modules.gui
-
-! Enumerations ----------------------------------------------------------
-
-! Gui global state enum
-ENUM: GuiControlState
-    GUI_STATE_NORMAL
-    GUI_STATE_FOCUSED
-    GUI_STATE_PRESSED
-    GUI_STATE_DISABLED ;
-
-! Gui global text alignment
-ENUM: GuiTextAlignment
-    GUI_TEXT_ALIGN_LEFT
-    GUI_TEXT_ALIGN_CENTER
-    GUI_TEXT_ALIGN_RIGHT ;
-
-! Gui standard controls
-ENUM: GuiControlStandard
-    DEFAULT 
-    LABEL          ! LABELBUTTON
-    BUTTON         ! IMAGEBUTTON
-    TOGGLE         ! TOGGLEGROUP
-    SLIDER         ! SLIDERBAR
-    PROGRESSBAR
-    CHECKBOX
-    COMBOBOX
-    DROPDOWNBOX
-    TEXTBOX        ! VALUEBOX SPINNER
-    LISTVIEW
-    COLORPICKER
-    SCROLLBAR ;
-
-! Gui default properties for every control
-ENUM: GuiControlProperty
-    BORDER_COLOR_NORMAL
-    BASE_COLOR_NORMAL
-    TEXT_COLOR_NORMAL
-    BORDER_COLOR_FOCUSED
-    BASE_COLOR_FOCUSED
-    TEXT_COLOR_FOCUSED
-    BORDER_COLOR_PRESSED
-    BASE_COLOR_PRESSED
-    TEXT_COLOR_PRESSED
-    BORDER_COLOR_DISABLED
-    BASE_COLOR_DISABLED
-    TEXT_COLOR_DISABLED
-    BORDER_WIDTH
-    INNER_PADDING
-    TEXT_ALIGNMENT
-    RESERVED02 ;
-
-! Gui extended properties depending on control type
-! NOTE: We reserve a fixed size of additional properties per control (8)
-
-! Default properties
-ENUM: GuiDefaultProperty
-    { TEXT_SIZE        16 }
-    { TEXT_SPACING     17 }
-    { TEXT_COLOR       18 }
-    { BACKGROUND_COLOR 19 } ;
-
-! Toggle / ToggleGroup
-ENUM: GuiToggleProperty
-    { GROUP_PADDING 16 } ;
-
-! Slider / SliderBar
-ENUM: GuiSliderProperty
-    { SLIDER_WIDTH 16 }
-    { TEXT_PADDING 17 } ;
-
-! TextBox / ValueBox / Spinner
-ENUM: GuiTextBoxProperty
-    { MULTILINE_PADDING           16 }
-    { SPINNER_BUTTON_WIDTH        17 }
-    { SPINNER_BUTTON_PADDING      18 }
-    { SPINNER_BUTTON_BORDER_WIDTH 19 } ;
-
-! CheckBox
-ENUM: GuiCheckBoxProperty
-    { CHECK_TEXT_PADDING 16 } ;
-
-! ComboBox
-ENUM: GuiComboBoxProperty
-    { SELECTOR_WIDTH   16 }
-    { SELECTOR_PADDING 17 } ;
-
-! DropdownBox
-ENUM: GuiDropdownBoxProperty
-    { ARROW_RIGHT_PADDING 16 } ;
-
-! ColorPicker
-ENUM: GuiColorPickerProperty
-    { COLOR_SELECTOR_SIZE  16 }
-    { BAR_WIDTH            17 }   ! Lateral bar width
-    { BAR_PADDING          18 }   ! Later bar separation from panel
-    { BAR_SELECTOR_HEIGHT  19 }   ! Lateral bar selector height
-    { BAR_SELECTOR_PADDING 20 } ; ! Later bar selector outer padding
-
-! ListView
-ENUM: GuiListViewProperty
-    { ELEMENTS_HEIGHT 16 }
-    { ELEMENTS_PADDING 17 }
-    { SCROLLBAR_WIDTH 18 }
-    { SCROLLBAR_SIDE 19 } ; ! This property defines vertical scrollbar side
-
-! ScrollBar
-ENUM: GuiScrollBarProperty
-    { SCROLLBAR_BORDER               16 }
-    { SCROLLBAR_SHOW_SPINNER_BUTTONS 17 }
-    { SCROLLBAR_ARROWS_SIZE          18 }
-    { SCROLLBAR_PADDING              19 }
-    { SCROLLBAR_SLIDER_PADDING       20 }
-    { SCROLLBAR_SLIDER_SIZE          21 }
-    { SCROLLBAR_SCROLL_SPEED         22 } ;
-
-! ScrollBar side
-ENUM: GuiScrollBarSide
-    SCROLLBAR_LEFT_SIDE
-    SCROLLBAR_RIGHT_SIDE ;
-
-! Functions ---------------------------------------------------------
-
-
-! Global gui modification functions
-FUNCTION-ALIAS:  rl-gui-enable void GuiEnable ( )         ! Enable gui controls  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-disable void GuiDisable ( )       ! Disable gui controls  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-lock void GuiLock ( )             ! Lock gui controls  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-unlock void GuiUnlock ( )         ! Unlock gui controls  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-state void GuiState ( int state ) ! Set gui state  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-font void GuiFont ( Font font )   ! Set gui custom font  ( global state ) 
-FUNCTION-ALIAS:  rl-gui-fade void GuiFade ( float alpha ) ! Set gui controls alpha  ( global state ) , alpha goes from 0.0f to 1.0f
-
-! Style set/get functions
-FUNCTION-ALIAS:  rl-gui-set-style void GuiSetStyle ( int control, int property, int value ) ! Set one style property
-FUNCTION-ALIAS:  rl-gui-get-style int GuiGetStyle ( int control, int property )             ! Get one style property
-
-! Container/separator controls, useful for controls organization
-FUNCTION-ALIAS:  rl-gui-window-box bool GuiWindowBox ( Rectangle bounds, c-string text )                              ! Window Box control, shows a window that can be closed
-FUNCTION-ALIAS:  rl-gui-group-box void GuiGroupBox ( Rectangle bounds, c-string text )                                ! Group Box control with title name
-FUNCTION-ALIAS:  rl-gui-line void GuiLine ( Rectangle bounds, c-string text )                                         ! Line separator control, could contain text
-FUNCTION-ALIAS:  rl-gui-panel void GuiPanel ( Rectangle bounds )                                                      ! Panel control, useful to group controls
-FUNCTION-ALIAS:  rl-gui-scrollpanel Rectangle GuiScrollPanel ( Rectangle bounds, Rectangle content, Vector2 *scroll ) ! Scroll Panel control
-
-! Basic controls set
-FUNCTION-ALIAS:  rl-gui-label void GuiLabel ( Rectangle bounds, c-string text )                                                                            ! Label control, shows text
-FUNCTION-ALIAS:  rl-gui-button bool GuiButton ( Rectangle bounds, c-string text )                                                                          ! Button control, returns true when clicked
-FUNCTION-ALIAS:  rl-gui-label-button bool GuiLabelButton ( Rectangle bounds, c-string text )                                                               ! Label button control, show true when clicked
-FUNCTION-ALIAS:  rl-gui-image-button bool GuiImageButton ( Rectangle bounds, Texture2D texture )                                                           ! Image button control, returns true when clicked
-FUNCTION-ALIAS:  rl-gui-image-button-ex bool GuiImageButtonEx ( Rectangle bounds, Texture2D texture, Rectangle texSource, c-string text )                  ! Image button extended control, returns true when clicked
-FUNCTION-ALIAS:  rl-gui-toggle bool GuiToggle ( Rectangle bounds, c-string text, bool active )                                                             ! Toggle Button control, returns true when active
-FUNCTION-ALIAS:  rl-gui-toggle-group int GuiToggleGroup ( Rectangle bounds, c-string text, int active )                                                    ! Toggle Group control, returns active toggle index
-FUNCTION-ALIAS:  rl-gui-check-box bool GuiCheckBox ( Rectangle bounds, c-string text, bool checked )                                                       ! Check Box control, returns true when active
-FUNCTION-ALIAS:  rl-gui-combo-box int GuiComboBox ( Rectangle bounds, c-string text, int active )                                                          ! Combo Box control, returns selected item index
-FUNCTION-ALIAS:  rl-gui-dropdown-box bool GuiDropdownBox ( Rectangle bounds, c-string text, int* active, bool editMode )                                   ! Dropdown Box control, returns selected item
-FUNCTION-ALIAS:  rl-gui-spinner bool GuiSpinner ( Rectangle bounds, int* value, int minValue, int maxValue, bool editMode )                                ! Spinner control, returns selected value
-FUNCTION-ALIAS:  rl-gui-value-box bool GuiValueBox ( Rectangle bounds, int* value, int minValue, int maxValue, bool editMode )                             ! Value Box control, updates input text with numbers
-FUNCTION-ALIAS:  rl-gui-text-box bool GuiTextBox ( Rectangle bounds, char *text, int textSize, bool editMode )                                             ! Text Box control, updates input text
-FUNCTION-ALIAS:  rl-gui-text-box-multi bool GuiTextBoxMulti ( Rectangle bounds, char *text, int textSize, bool editMode )                                  ! Text Box control with multiple lines
-FUNCTION-ALIAS:  rl-gui-slider float GuiSlider ( Rectangle bounds, c-string text, float value, float minValue, float maxValue, bool showValue )            ! Slider control, returns selected value
-FUNCTION-ALIAS:  rl-gui-slider-bar float GuiSliderBar ( Rectangle bounds, c-string text, float value, float minValue, float maxValue, bool showValue )     ! Slider Bar control, returns selected value
-FUNCTION-ALIAS:  rl-gui-progress-bar float GuiProgressBar ( Rectangle bounds, c-string text, float value, float minValue, float maxValue, bool showValue ) ! Progress Bar control, shows current progress value
-FUNCTION-ALIAS:  rl-gui-status-bar void GuiStatusBar ( Rectangle bounds, c-string text )                                                                   ! Status Bar control, shows info text
-FUNCTION-ALIAS:  rl-gui-dummy-rec void GuiDummyRec ( Rectangle bounds, c-string text )                                                                     ! Dummy control for placeholders
-FUNCTION-ALIAS:  rl-gui-scroll-bar int GuiScrollBar ( Rectangle bounds, int value, int minValue, int maxValue )                                            ! Scroll Bar control
-
-! Advance controls set
-FUNCTION-ALIAS:  rl-gui-list-view bool GuiListView ( Rectangle bounds, c-string text, int* active, int* scrollIndex, bool editMode )                                            ! List View control, returns selected list element index
-FUNCTION-ALIAS:  rl-gui-list-view-ex bool GuiListViewEx ( Rectangle bounds, c-string *text, int count, int* enabled, int* active, int* focus, int* scrollIndex, bool editMode ) ! List View with extended parameters
-FUNCTION-ALIAS:  rl-gui-message-box int GuiMessageBox ( Rectangle bounds, c-string windowTitle, c-string message, c-string buttons )                                            ! Message Box control, displays a message
-FUNCTION-ALIAS:  rl-gui-color-picker Color GuiColorPicker ( Rectangle bounds, Color color )                                                                                     ! Color Picker control
-FUNCTION-ALIAS:  rl-gui-grid Vector2 GuiGrid ( Rectangle bounds, float spacing, int subdivs )                                                                                   ! Grid
-
-! Styles loading functions
-FUNCTION-ALIAS:  rl-gui-load-style void GuiLoadStyle ( c-string fileName )                ! Load style file  ( .rgs ) 
-FUNCTION-ALIAS:  rl-gui-load-style-props void GuiLoadStyleProps ( int* props, int count ) ! Load style properties from array
-FUNCTION-ALIAS:  rl-gui-load-style-default void GuiLoadStyleDefault ( )                   ! Load style default over global style
-FUNCTION-ALIAS:  rl-gui-update-style-complete void GuiUpdateStyleComplete ( )             ! Updates full style properties set with default values
-
-
-FUNCTION-ALIAS:  rl-gui-icon-text c-string GuiIconText ( int iconId, c-string text )      ! Get text with icon id prepended
diff --git a/extra/raylib/modules/ricons/ricons.factor b/extra/raylib/modules/ricons/ricons.factor
deleted file mode 100644 (file)
index 8366424..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-! Copyright (C) 2019 Jack Lucas
-! See http://factorcode.org/license.txt for BSD license.
-! These should be complete bindings to the Raylib Icons module
-USING: alien alien.c-types alien.enums alien.libraries
-alien.libraries.finder alien.syntax classes.struct combinators
-kernel quotations system vocabs raylib.ffi ;
-IN: raylib.modules.ricons
-
-FUNCTION-ALIAS: rl-draw-icon void DrawIcon ( int iconId, Vector2 position, int pixelSize, Color color )
-
-ENUM: rIconDescription
-    RICON_NONE 
-    RICON_FOLDER_FILE_OPEN
-    RICON_FILE_SAVE_CLASSIC
-    RICON_FOLDER_OPEN
-    RICON_FOLDER_SAVE
-    RICON_FILE_OPEN
-    RICON_FILE_SAVE
-    RICON_FILE_EXPORT
-    RICON_FILE_NEW
-    RICON_FILE_DELETE
-    RICON_FILETYPE_TEXT
-    RICON_FILETYPE_AUDIO
-    RICON_FILETYPE_IMAGE
-    RICON_FILETYPE_PLAY
-    RICON_FILETYPE_VIDEO
-    RICON_FILETYPE_INFO
-    RICON_FILE_COPY
-    RICON_FILE_CUT
-    RICON_FILE_PASTE
-    RICON_CURSOR_HAND
-    RICON_CURSOR_POINTER
-    RICON_CURSOR_CLASSIC
-    RICON_PENCIL
-    RICON_PENCIL_BIG
-    RICON_BRUSH_CLASSIC
-    RICON_BRUSH_PAINTER
-    RICON_WATER_DROP
-    RICON_COLOR_PICKER
-    RICON_RUBBER
-    RICON_COLOR_BUCKET
-    RICON_TEXT_T
-    RICON_TEXT_A
-    RICON_SCALE
-    RICON_RESIZE
-    RICON_FILTER_POINT
-    RICON_FILTER_BILINEAR
-    RICON_CROP
-    RICON_CROP_ALPHA
-    RICON_SQUARE_TOGGLE
-    RICON_SIMMETRY
-    RICON_SIMMETRY_HORIZONTAL
-    RICON_SIMMETRY_VERTICAL
-    RICON_LENS
-    RICON_LENS_BIG
-    RICON_EYE_ON
-    RICON_EYE_OFF
-    RICON_FILTER_TOP
-    RICON_FILTER
-    RICON_TARGET_POINT
-    RICON_TARGET_SMALL
-    RICON_TARGET_BIG
-    RICON_TARGET_MOVE
-    RICON_CURSOR_MOVE
-    RICON_CURSOR_SCALE
-    RICON_CURSOR_SCALE_RIGHT
-    RICON_CURSOR_SCALE_LEFT
-    RICON_UNDO
-    RICON_REDO
-    RICON_REREDO
-    RICON_MUTATE
-    RICON_ROTATE
-    RICON_REPEAT
-    RICON_SHUFFLE
-    RICON_EMPTYBOX
-    RICON_TARGET
-    RICON_TARGET_SMALL_FILL
-    RICON_TARGET_BIG_FILL
-    RICON_TARGET_MOVE_FILL
-    RICON_CURSOR_MOVE_FILL
-    RICON_CURSOR_SCALE_FILL
-    RICON_CURSOR_SCALE_RIGHT_FILL
-    RICON_CURSOR_SCALE_LEFT_FILL
-    RICON_UNDO_FILL
-    RICON_REDO_FILL
-    RICON_REREDO_FILL
-    RICON_MUTATE_FILL
-    RICON_ROTATE_FILL
-    RICON_REPEAT_FILL
-    RICON_SHUFFLE_FILL
-    RICON_EMPTYBOX_SMALL
-    RICON_BOX
-    RICON_BOX_TOP
-    RICON_BOX_TOP_RIGHT
-    RICON_BOX_RIGHT
-    RICON_BOX_BOTTOM_RIGHT
-    RICON_BOX_BOTTOM
-    RICON_BOX_BOTTOM_LEFT
-    RICON_BOX_LEFT
-    RICON_BOX_TOP_LEFT
-    RICON_BOX_CENTER
-    RICON_BOX_CIRCLE_MASK
-    RICON_POT
-    RICON_ALPHA_MULTIPLY
-    RICON_ALPHA_CLEAR
-    RICON_DITHERING
-    RICON_MIPMAPS
-    RICON_BOX_GRID
-    RICON_GRID
-    RICON_BOX_CORNERS_SMALL
-    RICON_BOX_CORNERS_BIG
-    RICON_FOUR_BOXES
-    RICON_GRID_FILL
-    RICON_BOX_MULTISIZE
-    RICON_ZOOM_SMALL
-    RICON_ZOOM_MEDIUM
-    RICON_ZOOM_BIG
-    RICON_ZOOM_ALL
-    RICON_ZOOM_CENTER
-    RICON_BOX_DOTS_SMALL
-    RICON_BOX_DOTS_BIG
-    RICON_BOX_CONCENTRIC
-    RICON_BOX_GRID_BIG
-    RICON_OK_TICK
-    RICON_CROSS
-    RICON_ARROW_LEFT
-    RICON_ARROW_RIGHT
-    RICON_ARROW_BOTTOM
-    RICON_ARROW_TOP
-    RICON_ARROW_LEFT_FILL
-    RICON_ARROW_RIGHT_FILL
-    RICON_ARROW_BOTTOM_FILL
-    RICON_ARROW_TOP_FILL
-    RICON_AUDIO
-    RICON_FX
-    RICON_WAVE
-    RICON_WAVE_SINUS
-    RICON_WAVE_SQUARE
-    RICON_WAVE_TRIANGULAR
-    RICON_CROSS_SMALL
-    RICON_PLAYER_PREVIOUS
-    RICON_PLAYER_PLAY_BACK
-    RICON_PLAYER_PLAY
-    RICON_PLAYER_PAUSE
-    RICON_PLAYER_STOP
-    RICON_PLAYER_NEXT
-    RICON_PLAYER_RECORD
-    RICON_MAGNET
-    RICON_LOCK_CLOSE
-    RICON_LOCK_OPEN
-    RICON_CLOCK
-    RICON_TOOLS
-    RICON_GEAR
-    RICON_GEAR_BIG
-    RICON_BIN
-    RICON_HAND_POINTER
-    RICON_LASER
-    RICON_COIN
-    RICON_EXPLOSION
-    RICON_1UP
-    RICON_PLAYER
-    RICON_PLAYER_JUMP
-    RICON_KEY
-    RICON_DEMON
-    RICON_TEXT_POPUP
-    RICON_GEAR_EX
-    RICON_CRACK
-    RICON_CRACK_POINTS
-    RICON_STAR
-    RICON_DOOR
-    RICON_EXIT
-    RICON_MODE_2D
-    RICON_MODE_3D
-    RICON_CUBE
-    RICON_CUBE_FACE_TOP
-    RICON_CUBE_FACE_LEFT
-    RICON_CUBE_FACE_FRONT
-    RICON_CUBE_FACE_BOTTOM
-    RICON_CUBE_FACE_RIGHT
-    RICON_CUBE_FACE_BACK
-    RICON_CAMERA
-    RICON_SPECIAL
-    RICON_LINK_NET
-    RICON_LINK_BOXES
-    RICON_LINK_MULTI
-    RICON_LINK
-    RICON_LINK_BROKE
-    RICON_TEXT_NOTES
-    RICON_NOTEBOOK
-    RICON_SUITCASE
-    RICON_SUITCASE_ZIP
-    RICON_MAILBOX
-    RICON_MONITOR
-    RICON_PRINTER
-    RICON_PHOTO_CAMERA
-    RICON_PHOTO_CAMERA_FLASH
-    RICON_HOUSE
-    RICON_HEART
-    RICON_CORNER
-    RICON_VERTICAL_BARS
-    RICON_VERTICAL_BARS_FILL
-    RICON_LIFE_BARS
-    RICON_INFO
-    RICON_CROSSLINE
-    RICON_HELP
-    RICON_FILETYPE_ALPHA
-    RICON_FILETYPE_HOME
-    RICON_LAYERS_VISIBLE
-    RICON_LAYERS
-    RICON_WINDOW ;
-
index 8b1f1f65d79df055f1d75c65e379f65fc8a5a52a..365a3bbe5d2dda1975c8717042cc7d39050888a6 100644 (file)
@@ -1 +1 @@
-Complete bindings for the Raylib video game library.
+Bindings for Raylib 4.0