diff options
| author | jussi | 2023-11-28 22:39:10 +0200 |
|---|---|---|
| committer | jussi | 2023-11-28 22:39:10 +0200 |
| commit | 21eb3f90c427b3b84801754e92bebb418a8d9391 (patch) | |
| tree | 5bb8662bcdaf4709b1b486323bd610e863e5816f /src | |
| parent | 2b330bbadbeb35807b4831ab6275f6e2867029b5 (diff) | |
| download | reilua-enhanced-21eb3f90c427b3b84801754e92bebb418a8d9391.tar.gz reilua-enhanced-21eb3f90c427b3b84801754e92bebb418a8d9391.tar.bz2 reilua-enhanced-21eb3f90c427b3b84801754e92bebb418a8d9391.zip | |
Platform specific API documentation generation.
Diffstat (limited to 'src')
| -rw-r--r-- | src/gl.c | 2 | ||||
| -rw-r--r-- | src/lua_core.c | 87 | ||||
| -rw-r--r-- | src/platforms/core_desktop.c | 116 | ||||
| -rw-r--r-- | src/platforms/core_desktop_sdl.c | 110 |
4 files changed, 235 insertions, 80 deletions
@@ -12,7 +12,7 @@ > RL.glBlitFramebuffer( RenderTexture srcTex, RenderTexture dstTex, Rectangle srcRect, Rectangle dstRect, int mask, int filter ) Copy a block of pixels from one framebuffer object to another. -Use -1 RenderTexture for window framebuffer. +Use -1 RenderTexture for window framebuffer */ int lglBlitFramebuffer( lua_State *L ) { if ( !( lua_isuserdata( L, 1 ) || lua_isnil( L, 1 ) ) || !( lua_isuserdata( L, 2 ) || lua_isnil( L, 2 ) ) ) { diff --git a/src/lua_core.c b/src/lua_core.c index e29a943..0874613 100644 --- a/src/lua_core.c +++ b/src/lua_core.c @@ -325,9 +325,9 @@ static void defineGlobals() { lua_setglobal( L, "RL" ); lua_getglobal( L, "RL" ); -/* Note! Docgen relyes on this line format. Splits info based on spaces. */ -/*DOC_START*/ - /* ConfigFlags */ +/* Note! Docgen relyes on this line format. */ +/*DOC_DEFINES_START*/ + /* System/Window config flags */ assignGlobalInt( FLAG_VSYNC_HINT, "FLAG_VSYNC_HINT" ); // Set to try enabling V-Sync on GPU assignGlobalInt( FLAG_FULLSCREEN_MODE, "FLAG_FULLSCREEN_MODE" ); // Set to run program in fullscreen assignGlobalInt( FLAG_WINDOW_RESIZABLE, "FLAG_WINDOW_RESIZABLE" ); // Set to allow resizable window @@ -343,7 +343,7 @@ static void defineGlobals() { assignGlobalInt( FLAG_WINDOW_MOUSE_PASSTHROUGH, "FLAG_WINDOW_MOUSE_PASSTHROUGH" ); // Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED assignGlobalInt( FLAG_MSAA_4X_HINT, "FLAG_MSAA_4X_HINT" ); // Set to try enabling MSAA 4X assignGlobalInt( FLAG_INTERLACED_HINT, "FLAG_INTERLACED_HINT" ); // Set to try enabling interlaced video format (for V3D) - /* TraceLogLevel */ + /* Trace log level */ assignGlobalInt( LOG_ALL, "LOG_ALL" ); // Display all logs assignGlobalInt( LOG_TRACE, "LOG_TRACE" ); // Trace logging, intended for internal use only assignGlobalInt( LOG_DEBUG, "LOG_DEBUG" ); // Debug logging, used for internal debugging, it should be disabled on release builds @@ -352,7 +352,7 @@ static void defineGlobals() { assignGlobalInt( LOG_ERROR, "LOG_ERROR" ); // Error logging, used on unrecoverable failures assignGlobalInt( LOG_FATAL, "LOG_FATAL" ); // Fatal logging, used to abort program: exit(EXIT_FAILURE) assignGlobalInt( LOG_NONE, "LOG_NONE" ); // Disable logging - /* KeyboardKey */ + /* Keyboard keys (US keyboard layout) */ assignGlobalInt( KEY_NULL, "KEY_NULL" ); // Key: NULL, used for no key pressed assignGlobalInt( KEY_APOSTROPHE, "KEY_APOSTROPHE" ); // Key: ' assignGlobalInt( KEY_COMMA, "KEY_COMMA" ); // Key: , @@ -463,7 +463,7 @@ static void defineGlobals() { assignGlobalInt( KEY_MENU, "KEY_MENU" ); // Key: Android menu button assignGlobalInt( KEY_VOLUME_UP, "KEY_VOLUME_UP" ); // Key: Android volume up button assignGlobalInt( KEY_VOLUME_DOWN, "KEY_VOLUME_DOWN" ); // Key: Android volume down button - /* MouseButtons */ + /* Mouse buttons */ assignGlobalInt( MOUSE_BUTTON_LEFT, "MOUSE_BUTTON_LEFT" ); // Mouse button left assignGlobalInt( MOUSE_BUTTON_RIGHT, "MOUSE_BUTTON_RIGHT" ); // Mouse button right assignGlobalInt( MOUSE_BUTTON_MIDDLE, "MOUSE_BUTTON_MIDDLE" ); // Mouse button middle (pressed wheel) @@ -471,7 +471,7 @@ static void defineGlobals() { assignGlobalInt( MOUSE_BUTTON_EXTRA, "MOUSE_BUTTON_EXTRA" ); // Mouse button extra (advanced mouse device) assignGlobalInt( MOUSE_BUTTON_FORWARD, "MOUSE_BUTTON_FORWARD" ); // Mouse button forward (advanced mouse device) assignGlobalInt( MOUSE_BUTTON_BACK, "MOUSE_BUTTON_BACK" ); // Mouse button back (advanced mouse device) - /* MouseCursor */ + /* Mouse cursor */ assignGlobalInt( MOUSE_CURSOR_DEFAULT, "MOUSE_CURSOR_DEFAULT" ); // Default pointer shape assignGlobalInt( MOUSE_CURSOR_ARROW, "MOUSE_CURSOR_ARROW" ); // Arrow shape assignGlobalInt( MOUSE_CURSOR_IBEAM, "MOUSE_CURSOR_IBEAM" ); // Text writing cursor shape @@ -483,7 +483,7 @@ static void defineGlobals() { assignGlobalInt( MOUSE_CURSOR_RESIZE_NESW, "MOUSE_CURSOR_RESIZE_NESW" ); // The top-right to bottom-left diagonal resize/move arrow shape assignGlobalInt( MOUSE_CURSOR_RESIZE_ALL, "MOUSE_CURSOR_RESIZE_ALL" ); // The omnidirectional resize/move cursor shape assignGlobalInt( MOUSE_CURSOR_NOT_ALLOWED, "MOUSE_CURSOR_NOT_ALLOWED" ); // The operation-not-allowed shape - /* GamepadButtons */ + /* Gamepad buttons */ assignGlobalInt( GAMEPAD_BUTTON_UNKNOWN, "GAMEPAD_BUTTON_UNKNOWN" ); // Unknown button, just for error checking assignGlobalInt( GAMEPAD_BUTTON_LEFT_FACE_UP, "GAMEPAD_BUTTON_LEFT_FACE_UP" ); // Gamepad left DPAD up button assignGlobalInt( GAMEPAD_BUTTON_LEFT_FACE_RIGHT, "GAMEPAD_BUTTON_LEFT_FACE_RIGHT" ); // Gamepad left DPAD right button @@ -502,14 +502,14 @@ static void defineGlobals() { assignGlobalInt( GAMEPAD_BUTTON_MIDDLE_RIGHT, "GAMEPAD_BUTTON_MIDDLE_RIGHT" ); // Gamepad center buttons, right one (i.e. PS3: Start) assignGlobalInt( GAMEPAD_BUTTON_LEFT_THUMB, "GAMEPAD_BUTTON_LEFT_THUMB" ); // Gamepad joystick pressed button left assignGlobalInt( GAMEPAD_BUTTON_RIGHT_THUMB, "GAMEPAD_BUTTON_RIGHT_THUMB" ); // Gamepad joystick pressed button right - /* GamepadAxis */ + /* Gamepad axis */ assignGlobalInt( GAMEPAD_AXIS_LEFT_X, "GAMEPAD_AXIS_LEFT_X" ); // Gamepad left stick X axis assignGlobalInt( GAMEPAD_AXIS_LEFT_Y, "GAMEPAD_AXIS_LEFT_Y" ); // Gamepad left stick Y axis assignGlobalInt( GAMEPAD_AXIS_RIGHT_X, "GAMEPAD_AXIS_RIGHT_X" ); // Gamepad right stick X axis assignGlobalInt( GAMEPAD_AXIS_RIGHT_Y, "GAMEPAD_AXIS_RIGHT_Y" ); // Gamepad right stick Y axis assignGlobalInt( GAMEPAD_AXIS_LEFT_TRIGGER, "GAMEPAD_AXIS_LEFT_TRIGGER" ); // Gamepad back trigger left, pressure level: [1..-1] assignGlobalInt( GAMEPAD_AXIS_RIGHT_TRIGGER, "GAMEPAD_AXIS_RIGHT_TRIGGER" ); // Gamepad back trigger right, pressure level: [1..-1] - /* MapTypes */ + /* Material map index */ assignGlobalInt( MATERIAL_MAP_ALBEDO, "MATERIAL_MAP_ALBEDO" ); // Albedo material (same as: MATERIAL_MAP_DIFFUSE) assignGlobalInt( MATERIAL_MAP_METALNESS, "MATERIAL_MAP_METALNESS" ); // Metalness material (same as: MATERIAL_MAP_SPECULAR) assignGlobalInt( MATERIAL_MAP_NORMAL, "MATERIAL_MAP_NORMAL" ); // Normal material @@ -523,7 +523,7 @@ static void defineGlobals() { assignGlobalInt( MATERIAL_MAP_BRDF, "MATERIAL_MAP_BRDF" ); // Brdf material assignGlobalInt( MATERIAL_MAP_DIFFUSE, "MATERIAL_MAP_DIFFUSE" ); // Diffuce material (same as: MATERIAL_MAP_ALBEDO) assignGlobalInt( MATERIAL_MAP_SPECULAR, "MATERIAL_MAP_SPECULAR" ); // Specular material (same as: MATERIAL_MAP_METALNESS) - /* ShaderLocationIndex */ + /* Shader location index */ assignGlobalInt( SHADER_LOC_VERTEX_POSITION, "SHADER_LOC_VERTEX_POSITION" ); // Shader location: vertex attribute: position assignGlobalInt( SHADER_LOC_VERTEX_TEXCOORD01, "SHADER_LOC_VERTEX_TEXCOORD01" ); // Shader location: vertex attribute: texcoord01 assignGlobalInt( SHADER_LOC_VERTEX_TEXCOORD02, "SHADER_LOC_VERTEX_TEXCOORD02" ); // Shader location: vertex attribute: texcoord02 @@ -552,7 +552,7 @@ static void defineGlobals() { assignGlobalInt( SHADER_LOC_MAP_BRDF, "SHADER_LOC_MAP_BRDF" ); // Shader location: sampler2d texture: brdf assignGlobalInt( SHADER_LOC_MAP_DIFFUSE, "SHADER_LOC_MAP_DIFFUSE" ); // Shader location: sampler2d texture: diffuce (same as: SHADER_LOC_MAP_ALBEDO) assignGlobalInt( SHADER_LOC_MAP_SPECULAR, "SHADER_LOC_MAP_SPECULAR" ); // Shader location: sampler2d texture: specular (same as: SHADER_LOC_MAP_METALNESS) - /* ShaderUniformDataType */ + /* Shader uniform data type */ assignGlobalInt( SHADER_UNIFORM_FLOAT, "SHADER_UNIFORM_FLOAT" ); // Shader uniform type: float assignGlobalInt( SHADER_UNIFORM_VEC2, "SHADER_UNIFORM_VEC2" ); // Shader uniform type: vec2 (2 float) assignGlobalInt( SHADER_UNIFORM_VEC3, "SHADER_UNIFORM_VEC3" ); // Shader uniform type: vec3 (3 float) @@ -562,12 +562,12 @@ static void defineGlobals() { assignGlobalInt( SHADER_UNIFORM_IVEC3, "SHADER_UNIFORM_IVEC3" ); // Shader uniform type: ivec3 (3 int) assignGlobalInt( SHADER_UNIFORM_IVEC4, "SHADER_UNIFORM_IVEC4" ); // Shader uniform type: ivec4 (4 int) assignGlobalInt( SHADER_UNIFORM_SAMPLER2D, "SHADER_UNIFORM_SAMPLER2D" ); // Shader uniform type: sampler2d - /* ShaderAttributeDataTypes */ + /* Shader attribute data types */ assignGlobalInt( SHADER_ATTRIB_FLOAT, "SHADER_ATTRIB_FLOAT" ); // Shader attribute type: float assignGlobalInt( SHADER_ATTRIB_VEC2, "SHADER_ATTRIB_VEC2" ); // Shader attribute type: vec2 (2 float) assignGlobalInt( SHADER_ATTRIB_VEC3, "SHADER_ATTRIB_VEC3" ); // Shader attribute type: vec3 (3 float) assignGlobalInt( SHADER_ATTRIB_VEC4, "SHADER_ATTRIB_VEC4" ); // Shader attribute type: vec4 (4 float) - /* PixelFormats */ + /* Pixel formats */ assignGlobalInt( PIXELFORMAT_UNCOMPRESSED_GRAYSCALE, "PIXELFORMAT_UNCOMPRESSED_GRAYSCALE" ); // 8 bit per pixel (no alpha) assignGlobalInt( PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA, "PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA" ); // 8*2 bpp (2 channels) assignGlobalInt( PIXELFORMAT_UNCOMPRESSED_R5G6B5, "PIXELFORMAT_UNCOMPRESSED_R5G6B5" ); // 16 bpp @@ -589,30 +589,30 @@ static void defineGlobals() { assignGlobalInt( PIXELFORMAT_COMPRESSED_PVRT_RGBA, "PIXELFORMAT_COMPRESSED_PVRT_RGBA" ); // 4 bpp assignGlobalInt( PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA, "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA" ); // 8 bpp assignGlobalInt( PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA, "PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA" ); // 2 bpp - /* TextureFilters */ + /* Texture parameters: filter mode */ assignGlobalInt( TEXTURE_FILTER_POINT, "TEXTURE_FILTER_POINT" ); // No filter, just pixel approximation assignGlobalInt( TEXTURE_FILTER_BILINEAR, "TEXTURE_FILTER_BILINEAR" ); // Linear filtering assignGlobalInt( TEXTURE_FILTER_TRILINEAR, "TEXTURE_FILTER_TRILINEAR" ); // Trilinear filtering (linear with mipmaps) assignGlobalInt( TEXTURE_FILTER_ANISOTROPIC_4X, "TEXTURE_FILTER_ANISOTROPIC_4X" ); // Anisotropic filtering 4x assignGlobalInt( TEXTURE_FILTER_ANISOTROPIC_8X, "TEXTURE_FILTER_ANISOTROPIC_8X" ); // Anisotropic filtering 8x assignGlobalInt( TEXTURE_FILTER_ANISOTROPIC_16X, "TEXTURE_FILTER_ANISOTROPIC_16X" ); // Anisotropic filtering 16x - /* TextureWrap */ + /* Texture parameters: wrap mode */ assignGlobalInt( TEXTURE_WRAP_REPEAT, "TEXTURE_WRAP_REPEAT" ); // Repeats texture in tiled mode assignGlobalInt( TEXTURE_WRAP_CLAMP, "TEXTURE_WRAP_CLAMP" ); // Clamps texture to edge pixel in tiled mode assignGlobalInt( TEXTURE_WRAP_MIRROR_REPEAT, "TEXTURE_WRAP_MIRROR_REPEAT" ); // Mirrors and repeats the texture in tiled mode assignGlobalInt( TEXTURE_WRAP_MIRROR_CLAMP, "TEXTURE_WRAP_MIRROR_CLAMP" ); // Mirrors and clamps to border the texture in tiled mode - /* CubemapLayout */ + /* Cubemap layouts */ assignGlobalInt( CUBEMAP_LAYOUT_AUTO_DETECT, "CUBEMAP_LAYOUT_AUTO_DETECT" ); // Automatically detect layout type assignGlobalInt( CUBEMAP_LAYOUT_LINE_VERTICAL, "CUBEMAP_LAYOUT_LINE_VERTICAL" ); // Layout is defined by a vertical line with faces assignGlobalInt( CUBEMAP_LAYOUT_LINE_HORIZONTAL, "CUBEMAP_LAYOUT_LINE_HORIZONTAL" ); // Layout is defined by a horizontal line with faces assignGlobalInt( CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR, "CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR" ); // Layout is defined by a 3x4 cross with cubemap faces assignGlobalInt( CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE, "CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE" ); // Layout is defined by a 4x3 cross with cubemap faces assignGlobalInt( CUBEMAP_LAYOUT_PANORAMA, "CUBEMAP_LAYOUT_PANORAMA" ); // Layout is defined by a panorama image (equirrectangular map) - /* FontType */ + /* Font type, defines generation method */ assignGlobalInt( FONT_DEFAULT, "FONT_DEFAULT" ); // Default font generation, anti-aliased assignGlobalInt( FONT_BITMAP, "FONT_BITMAP" ); // Bitmap font generation, no anti-aliasing assignGlobalInt( FONT_SDF, "FONT_SDF" ); // SDF font generation, requires external shader - /* BlendModes */ + /* Color blending modes (pre-defined) */ assignGlobalInt( BLEND_ALPHA, "BLEND_ALPHA" ); // Blend textures considering alpha (default) assignGlobalInt( BLEND_ADDITIVE, "BLEND_ADDITIVE" ); // Blend textures adding colors assignGlobalInt( BLEND_MULTIPLIED, "BLEND_MULTIPLIED" ); // Blend textures multiplying colors @@ -633,16 +633,16 @@ static void defineGlobals() { assignGlobalInt( GESTURE_SWIPE_DOWN, "GESTURE_SWIPE_DOWN" ); // Swipe down gesture assignGlobalInt( GESTURE_PINCH_IN, "GESTURE_PINCH_IN" ); // Pinch in gesture assignGlobalInt( GESTURE_PINCH_OUT, "GESTURE_PINCH_OUT" ); // Pinch out gesture - /* CameraMode */ + /* Camera system modes */ assignGlobalInt( CAMERA_CUSTOM, "CAMERA_CUSTOM" ); // Custom camera assignGlobalInt( CAMERA_FREE, "CAMERA_FREE" ); // Free camera assignGlobalInt( CAMERA_ORBITAL, "CAMERA_ORBITAL" ); // Orbital camera assignGlobalInt( CAMERA_FIRST_PERSON, "CAMERA_FIRST_PERSON" ); // First person camera assignGlobalInt( CAMERA_THIRD_PERSON, "CAMERA_THIRD_PERSON" ); // Third person camera - /* CameraProjections */ + /* Camera projection */ assignGlobalInt( CAMERA_PERSPECTIVE, "CAMERA_PERSPECTIVE" ); // Perspective projection assignGlobalInt( CAMERA_ORTHOGRAPHIC, "CAMERA_ORTHOGRAPHIC" ); // Orthographic projection - /* N-patchLayout */ + /* N-patch layout */ assignGlobalInt( NPATCH_NINE_PATCH, "NPATCH_NINE_PATCH" ); // Npatch layout: 3x3 tiles assignGlobalInt( NPATCH_THREE_PATCH_VERTICAL, "NPATCH_THREE_PATCH_VERTICAL" ); // Npatch layout: 1x3 tiles assignGlobalInt( NPATCH_THREE_PATCH_HORIZONTAL, "NPATCH_THREE_PATCH_HORIZONTAL" ); // Npatch layout: 3x1 tiles @@ -677,24 +677,24 @@ static void defineGlobals() { assignGlobalFloat( PI, "PI" ); // Pi assignGlobalFloat( DEG2RAD, "DEG2RAD" ); // Degrees to radians assignGlobalFloat( RAD2DEG, "RAD2DEG" ); // Radians to degrees - /* GuiControlState */ + /* Gui control state */ assignGlobalInt( STATE_NORMAL, "STATE_NORMAL" ); assignGlobalInt( STATE_FOCUSED, "STATE_FOCUSED" ); assignGlobalInt( STATE_PRESSED, "STATE_PRESSED" ); assignGlobalInt( STATE_DISABLED, "STATE_DISABLED" ); - /* GuiControlTextAlignment */ + /* Gui control text alignment */ assignGlobalInt( TEXT_ALIGN_LEFT, "TEXT_ALIGN_LEFT" ); assignGlobalInt( TEXT_ALIGN_CENTER, "TEXT_ALIGN_CENTER" ); assignGlobalInt( TEXT_ALIGN_RIGHT, "TEXT_ALIGN_RIGHT" ); - /* GuiControlTextAlignmentVertical */ + /* Gui control text alignment vertical */ assignGlobalInt( TEXT_ALIGN_TOP, "TEXT_ALIGN_TOP" ); assignGlobalInt( TEXT_ALIGN_MIDDLE, "TEXT_ALIGN_MIDDLE" ); assignGlobalInt( TEXT_ALIGN_BOTTOM, "TEXT_ALIGN_BOTTOM" ); - /* GuiControlTextWrapMode */ + /* Gui control text wrap mode */ assignGlobalInt( TEXT_WRAP_NONE, "TEXT_WRAP_NONE" ); assignGlobalInt( TEXT_WRAP_CHAR, "TEXT_WRAP_CHAR" ); assignGlobalInt( TEXT_WRAP_WORD, "TEXT_WRAP_WORD" ); - /* GuiControl */ + /* Gui controls */ assignGlobalInt( DEFAULT, "DEFAULT" ); assignGlobalInt( LABEL, "LABEL" ); // Used also for: LABELBUTTON assignGlobalInt( BUTTON, "BUTTON" ); @@ -711,7 +711,7 @@ static void defineGlobals() { assignGlobalInt( COLORPICKER, "COLORPICKER" ); assignGlobalInt( SCROLLBAR, "SCROLLBAR" ); assignGlobalInt( STATUSBAR, "STATUSBAR" ); - /* GuiControlProperty */ + /* Gui base properties for every control */ assignGlobalInt( BORDER_COLOR_NORMAL, "BORDER_COLOR_NORMAL" ); assignGlobalInt( BASE_COLOR_NORMAL, "BASE_COLOR_NORMAL" ); assignGlobalInt( TEXT_COLOR_NORMAL, "TEXT_COLOR_NORMAL" ); @@ -727,7 +727,7 @@ static void defineGlobals() { assignGlobalInt( BORDER_WIDTH, "BORDER_WIDTH" ); assignGlobalInt( TEXT_PADDING, "TEXT_PADDING" ); assignGlobalInt( TEXT_ALIGNMENT, "TEXT_ALIGNMENT" ); - /* GuiDefaultProperty */ + /* Gui extended properties depend on control */ assignGlobalInt( TEXT_SIZE, "TEXT_SIZE" ); // Text size (glyphs max height) assignGlobalInt( TEXT_SPACING, "TEXT_SPACING" ); // Text spacing between glyphs assignGlobalInt( LINE_COLOR, "LINE_COLOR" ); // Line control color @@ -735,45 +735,45 @@ static void defineGlobals() { assignGlobalInt( TEXT_LINE_SPACING, "TEXT_LINE_SPACING" ); // Text spacing between lines assignGlobalInt( TEXT_ALIGNMENT_VERTICAL, "TEXT_ALIGNMENT_VERTICAL" ); // Text vertical alignment inside text bounds (after border and padding) assignGlobalInt( TEXT_WRAP_MODE, "TEXT_WRAP_MODE" ); // Text wrap-mode inside text bounds - /* GuiToggleProperty */ + /* Gui Toggle/ToggleGroup */ assignGlobalInt( GROUP_PADDING, "GROUP_PADDING" ); // ToggleGroup separation between toggles - /* GuiSliderProperty */ + /* Gui Slider/SliderBar */ assignGlobalInt( SLIDER_WIDTH, "SLIDER_WIDTH" ); // Slider size of internal bar assignGlobalInt( SLIDER_PADDING, "SLIDER_PADDING" ); // Slider/SliderBar internal bar padding - /* GuiProgressBarProperty */ + /* Gui ProgressBar */ assignGlobalInt( PROGRESS_PADDING, "PROGRESS_PADDING" ); // ProgressBar internal padding - /* GuiScrollBarProperty */ + /* Gui ScrollBar */ assignGlobalInt( ARROWS_SIZE, "ARROWS_SIZE" ); assignGlobalInt( ARROWS_VISIBLE, "ARROWS_VISIBLE" ); assignGlobalInt( SCROLL_SLIDER_PADDING, "SCROLL_SLIDER_PADDING" ); // (SLIDERBAR, SLIDER_PADDING) assignGlobalInt( SCROLL_SLIDER_SIZE, "SCROLL_SLIDER_SIZE" ); assignGlobalInt( SCROLL_PADDING, "SCROLL_PADDING" ); assignGlobalInt( SCROLL_SPEED, "SCROLL_SPEED" ); - /* GuiCheckBoxProperty */ + /* Gui CheckBox */ assignGlobalInt( CHECK_PADDING, "CHECK_PADDING" ); // CheckBox internal check padding - /* GuiComboBoxProperty */ + /* Gui ComboBox */ assignGlobalInt( COMBO_BUTTON_WIDTH, "COMBO_BUTTON_WIDTH" ); // ComboBox right button width assignGlobalInt( COMBO_BUTTON_SPACING, "COMBO_BUTTON_SPACING" ); // ComboBox button separation - /* GuiDropdownBoxProperty */ + /* Gui DropdownBox */ assignGlobalInt( ARROW_PADDING, "ARROW_PADDING" ); // DropdownBox arrow separation from border and items assignGlobalInt( DROPDOWN_ITEMS_SPACING, "DROPDOWN_ITEMS_SPACING" ); // DropdownBox items separation - /* TextBox/TextBoxMulti/ValueBox/Spinner */ + /* Gui TextBox/TextBoxMulti/ValueBox/Spinner */ assignGlobalInt( TEXT_READONLY, "TEXT_READONLY" ); // TextBox in read-only mode: 0-text editable, 1-text no-editable - /* GuiSpinnerProperty */ + /* Gui Spinner */ assignGlobalInt( SPIN_BUTTON_WIDTH, "SPIN_BUTTON_WIDTH" ); // Spinner left/right buttons width assignGlobalInt( SPIN_BUTTON_SPACING, "SPIN_BUTTON_SPACING" ); // Spinner buttons separation - /* GuiListViewProperty */ + /* Gui ListView */ assignGlobalInt( LIST_ITEMS_HEIGHT, "LIST_ITEMS_HEIGHT" ); // ListView items height assignGlobalInt( LIST_ITEMS_SPACING, "LIST_ITEMS_SPACING" ); // ListView items separation assignGlobalInt( SCROLLBAR_WIDTH, "SCROLLBAR_WIDTH" ); // ListView scrollbar size (usually width) assignGlobalInt( SCROLLBAR_SIDE, "SCROLLBAR_SIDE" ); // ListView scrollbar side (0-left, 1-right) - /* GuiColorPickerProperty */ + /* Gui ColorPicker */ assignGlobalInt( COLOR_SELECTOR_SIZE, "COLOR_SELECTOR_SIZE" ); assignGlobalInt( HUEBAR_WIDTH, "HUEBAR_WIDTH" ); // ColorPicker right hue bar width assignGlobalInt( HUEBAR_PADDING, "HUEBAR_PADDING" ); // ColorPicker right hue bar separation from panel assignGlobalInt( HUEBAR_SELECTOR_HEIGHT, "HUEBAR_SELECTOR_HEIGHT" ); // ColorPicker right hue bar selector height assignGlobalInt( HUEBAR_SELECTOR_OVERFLOW, "HUEBAR_SELECTOR_OVERFLOW" ); // ColorPicker right hue bar selector overflow - /* LightType */ + /* Light type */ assignGlobalInt( LIGHT_DIRECTIONAL, "LIGHT_DIRECTIONAL" ); // Directional light assignGlobalInt( LIGHT_POINT, "LIGHT_POINT" ); // Point light /* RLGL Default internal render batch elements limits */ @@ -895,7 +895,7 @@ static void defineGlobals() { assignGlobalInt( GL_STENCIL_BUFFER_BIT, "GL_STENCIL_BUFFER_BIT" ); assignGlobalInt( GL_NEAREST, "GL_NEAREST" ); assignGlobalInt( GL_LINEAR, "GL_LINEAR" ); - /* CBuffer Data Types */ + /* CBuffer Data types */ assignGlobalInt( BUFFER_UNSIGNED_CHAR, "BUFFER_UNSIGNED_CHAR" ); // C type unsigned char assignGlobalInt( BUFFER_UNSIGNED_SHORT, "BUFFER_UNSIGNED_SHORT" ); // C type unsigned short assignGlobalInt( BUFFER_UNSIGNED_INT, "BUFFER_UNSIGNED_INT" ); // C type unsigned int @@ -904,8 +904,7 @@ static void defineGlobals() { assignGlobalInt( BUFFER_INT, "BUFFER_INT" ); // C type int assignGlobalInt( BUFFER_FLOAT, "BUFFER_FLOAT" ); // C type float assignGlobalInt( BUFFER_DOUBLE, "BUFFER_DOUBLE" ); // C type double -/*DOC_END*/ - +/*DOC_DEFINES_END*/ lua_pop( L, -1 ); } diff --git a/src/platforms/core_desktop.c b/src/platforms/core_desktop.c index 4ea871a..614062d 100644 --- a/src/platforms/core_desktop.c +++ b/src/platforms/core_desktop.c @@ -7,22 +7,22 @@ static void platformDefineGlobals() { lua_State *L = state->luaState; lua_getglobal( L, "RL" ); - - /* KeyboardKey */ +/*DOC_DEFINES_START*/ + /* Keyboard keys (US keyboard layout) */ assignGlobalInt( GLFW_KEY_UNKNOWN, "GLFW_KEY_UNKNOWN" ); // Key: Unknown - /* GLFW API tokens. */ + /* GLFW API tokens. */ assignGlobalInt( GLFW_RELEASE, "GLFW_RELEASE" ); // The key or mouse button was released assignGlobalInt( GLFW_PRESS, "GLFW_PRESS" ); // The key or mouse button was pressed assignGlobalInt( GLFW_REPEAT, "GLFW_REPEAT" ); // The key was held down until it repeated assignGlobalInt( GLFW_CONNECTED, "GLFW_CONNECTED" ); // Joystick connected assignGlobalInt( GLFW_DISCONNECTED, "GLFW_DISCONNECTED" ); // Joystick disconnected - /* Window Events. */ + /* GLFW Window Events. */ assignGlobalInt( GLFW_WINDOW_SIZE_EVENT, "GLFW_WINDOW_SIZE_EVENT" ); // GLFW event window size changed assignGlobalInt( GLFW_WINDOW_MAXIMIZE_EVENT, "GLFW_WINDOW_MAXIMIZE_EVENT" ); // GLFW event window maximize assignGlobalInt( GLFW_WINDOW_ICONYFY_EVENT, "GLFW_WINDOW_ICONYFY_EVENT" ); // GLFW event window iconify assignGlobalInt( GLFW_WINDOW_FOCUS_EVENT, "GLFW_WINDOW_FOCUS_EVENT" ); // GLFW event window focus assignGlobalInt( GLFW_WINDOW_DROP_EVENT, "GLFW_WINDOW_DROP_EVENT" ); // GLFW event window drop - /* Input Events. */ + /* GLFW Input Events. */ assignGlobalInt( GLFW_KEY_EVENT, "GLFW_KEY_EVENT" ); // GLFW event keyboard key assignGlobalInt( GLFW_CHAR_EVENT, "GLFW_CHAR_EVENT" ); // GLFW event Unicode character assignGlobalInt( GLFW_MOUSE_BUTTON_EVENT, "GLFW_MOUSE_BUTTON_EVENT" ); // GLFW event mouse button @@ -30,31 +30,24 @@ static void platformDefineGlobals() { assignGlobalInt( GLFW_MOUSE_SCROLL_EVENT, "GLFW_MOUSE_SCROLL_EVENT" ); // GLFW event mouse scroll assignGlobalInt( GLFW_CURSOR_ENTER_EVENT, "GLFW_CURSOR_ENTER_EVENT" ); // GLFW event cursor enter/leave assignGlobalInt( GLFW_JOYSTICK_EVENT, "GLFW_JOYSTICK_EVENT" ); // GLFW event joystick - /* Pen Tablet Events. NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445. */ + /* GLFW Pen Tablet Events. NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445. */ // assignGlobalInt( GLFW_PEN_TABLET_DATA_EVENT, "GLFW_PEN_TABLET_DATA_EVENT" ); // GLFW event pen tablet data // assignGlobalInt( GLFW_PEN_TABLET_CURSOR_EVENT, "GLFW_PEN_TABLET_CURSOR_EVENT" ); // GLFW event pen tablet cursor // assignGlobalInt( GLFW_PEN_TABLET_PROXIMITY_EVENT, "GLFW_PEN_TABLET_PROXIMITY_EVENT" ); // GLFW event pen tablet proximity - +/*DOC_DEFINES_END*/ lua_pop( L, -1 ); } /* Functions. */ /* -## Core - Input-related functions: keyboard. +## GLFW Core - Input-related functions: keyboard */ /* > keyName = RL.GetKeyName( int key, int scancode ) This function returns the name of the specified printable key, encoded as UTF-8. -This is typically the character that key would produce without any modifier keys, -intended for displaying key bindings to the user. For dead keys, it is typically -the diacritic it would add to a character. - -Do not use this function for text input. You will break text input for many -languages even if it happens to work for yours. - If the key is KEY_UNKNOWN, the scancode is used to identify the key, otherwise the scancode is ignored. If you specify a non-printable key, or KEY_UNKNOWN and a scancode that maps to a non-printable key, @@ -107,8 +100,15 @@ static void luaPlatformRegister() { /* Events. */ -/* Window events. */ +/* +## Window events +*/ + +/* +> GLFWwindowsizeEvent = { int type, int width, int height } +Called when the window is resized. Type GLFW_WINDOW_SIZE_EVENT +*/ static void windowSizeEvent( GLFWwindow *window, int width, int height ) { /* Pass through to raylib callback. */ state->raylibWindowSizeCallback( window, width, height ); @@ -140,6 +140,11 @@ static void windowSizeEvent( GLFWwindow *window, int width, int height ) { #if !defined( PLATFORM_WEB ) +/* +> GLFWwindowmaximizeEvent = { int type, int maximized } + +Called when the window is maximized or restored. Type GLFW_WINDOW_MAXIMIZE_EVENT +*/ static void windowMaximizeEvent( GLFWwindow *window, int maximized ) { /* Pass through to raylib callback. */ state->raylibWindowMaximizeCallback( window, maximized ); @@ -169,6 +174,11 @@ static void windowMaximizeEvent( GLFWwindow *window, int maximized ) { #endif +/* +> GLFWwindowiconifyEvent = { int type, int iconified } + +Called when the window is iconified or restored. Type GLFW_WINDOW_ICONYFY_EVENT +*/ static void windowIconyfyEvent( GLFWwindow *window, int iconified ) { /* Pass through to raylib callback. */ state->raylibWindowIconifyCallback( window, iconified ); @@ -196,6 +206,11 @@ static void windowIconyfyEvent( GLFWwindow *window, int iconified ) { lua_pop( L, -1 ); } +/* +> GLFWwindowfocusEvent = { int type, int focused } + +Called when the window gains or loses input focus. Type GLFW_WINDOW_FOCUS_EVENT +*/ static void windowFocusEvent( GLFWwindow *window, int focused ) { /* Pass through to raylib callback. */ state->raylibWindowFocusCallback( window, focused ); @@ -223,6 +238,11 @@ static void windowFocusEvent( GLFWwindow *window, int focused ) { lua_pop( L, -1 ); } +/* +> GLFWdropEvent = { int type, int count, string{} paths } + +Called when files are dropped to the window. Type GLFW_WINDOW_DROP_EVENT +*/ static void windowDropEvent( GLFWwindow *window, int count, const char **paths ) { /* Pass through to raylib callback. */ state->raylibWindowDropCallback( window, count, paths ); @@ -258,8 +278,15 @@ static void windowDropEvent( GLFWwindow *window, int count, const char **paths ) lua_pop( L, -1 ); } -/* Input events. */ +/* +## Input events +*/ + +/* +> GLFWkeyEvent = { int type, int key, int scancode, int action, int mods } +Called when a physical key is pressed or released or when it repeats. Type GLFW_KEY_EVENT +*/ static void keyInputEvent( GLFWwindow* window, int key, int scancode, int action, int mods ) { /* Pass through to raylib callback. */ state->raylibKeyCallback( window, key, scancode, action, mods ); @@ -293,6 +320,11 @@ static void keyInputEvent( GLFWwindow* window, int key, int scancode, int action lua_pop( L, -1 ); } +/* +> GLFWcharEvent = { int type, int key } + +Unicode code points for key events that would have led to regular text input and generally behaves as a standard text field on that platform. Type GLFW_CHAR_EVENT +*/ static void charInputEvent( GLFWwindow* window, unsigned int key ) { /* Pass through to raylib callback. */ state->raylibCharCallback( window, key ); @@ -320,6 +352,11 @@ static void charInputEvent( GLFWwindow* window, unsigned int key ) { lua_pop( L, -1 ); } +/* +> GLFWmousebuttonEvent = { int type, int button, int action, int mods } + +Called when a mouse button is pressed or released. Type GLFW_MOUSE_BUTTON_EVENT +*/ static void mouseButtonInputEvent( GLFWwindow* window, int button, int action, int mods ) { /* Pass through to raylib callback. */ state->raylibMouseButtonCallback( window, button, action, mods ); @@ -351,6 +388,11 @@ static void mouseButtonInputEvent( GLFWwindow* window, int button, int action, i lua_pop( L, -1 ); } +/* +> GLFWcursorposEvent = { int type, float x, float y } + +Called when the cursor moves over the window. Type GLFW_MOUSE_CURSOR_POS_EVENT +*/ static void mouseCursorPosInputEvent( GLFWwindow* window, double x, double y ) { /* Pass through to raylib callback. */ state->raylibMouseCursorPosCallback( window, x, y ); @@ -380,6 +422,11 @@ static void mouseCursorPosInputEvent( GLFWwindow* window, double x, double y ) { lua_pop( L, -1 ); } +/* +> GLFWscrollEvent = { int type, float xoffset, float yoffset } + +Called when the user scrolls, whether with a mouse wheel or touchpad gesture. Type GLFW_MOUSE_SCROLL_EVENT +*/ static void mouseScrollInputEvent( GLFWwindow* window, double xoffset, double yoffset ) { /* Pass through to raylib callback. */ state->raylibMouseScrollCallback( window, xoffset, yoffset ); @@ -409,6 +456,11 @@ static void mouseScrollInputEvent( GLFWwindow* window, double xoffset, double yo lua_pop( L, -1 ); } +/* +> GLFWcursorenterEvent = { int type, int enter } + +Called when the cursor enters or leaves the content area of a window. Type GLFW_CURSOR_ENTER_EVENT +*/ static void cursorEnterInputEvent( GLFWwindow* window, int enter ) { /* Pass through to raylib callback. */ state->raylibCursorEnterCallback( window, enter ); @@ -436,7 +488,12 @@ static void cursorEnterInputEvent( GLFWwindow* window, int enter ) { lua_pop( L, -1 ); } -static void joystickInputEvent( int jid, int event ) { +/* +> GLFWjoystickEvent = { int type, int jid, int event } + +Called when a joystick is connected or disconnected. Type GLFW_JOYSTICK_EVENT +*/ +static void joystickEvent( int jid, int event ) { /* Pass through to raylib callback. */ if ( state->raylibJoystickCallback != NULL ) { state->raylibJoystickCallback( jid, event ); @@ -467,7 +524,12 @@ static void joystickInputEvent( int jid, int event ) { lua_pop( L, -1 ); } -// /* NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 */ +/* +> GLFWpentabletdataEvent = { int type, float x, float y, float z, float pressure, float pitch, float yaw, float roll } + +Called when the pen tablet data is updated. Type GLFW_PEN_TABLET_DATA_EVENT +NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 +*/ // static void penTabletDataEvent( double x, double y, double z, double pressure, double pitch, double yaw, double roll ) { // lua_State *L = state->luaState; @@ -504,7 +566,12 @@ static void joystickInputEvent( int jid, int event ) { // lua_pop( L, -1 ); // } -// /* NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 */ +/* +> GLFWpentabletcursorEvent = { int type, int identifier } + +Called when the pen tablet cursor has changed. Type GLFW_PEN_TABLET_CURSOR_EVENT +NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 +*/ // static void penTabletCursorEvent( unsigned int identifier ) { // lua_State *L = state->luaState; @@ -529,7 +596,12 @@ static void joystickInputEvent( int jid, int event ) { // lua_pop( L, -1 ); // } -// /* NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 */ +/* +> GLFWpentabletproximityEvent = { int type, int proxState } + +Called when the pen tablet proximity has changed. Type GLFW_PEN_TABLET_PROXIMITY_EVENT +NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 +*/ // static void penTabletProximityEvent( int proxState ) { // lua_State *L = state->luaState; @@ -571,7 +643,7 @@ static void platformRegisterEvents() { state->raylibMouseCursorPosCallback = glfwSetCursorPosCallback( GetWindowHandle(), mouseCursorPosInputEvent ); state->raylibMouseScrollCallback = glfwSetScrollCallback( GetWindowHandle(), mouseScrollInputEvent ); state->raylibCursorEnterCallback = glfwSetCursorEnterCallback( GetWindowHandle(), cursorEnterInputEvent ); - state->raylibJoystickCallback = glfwSetJoystickCallback( joystickInputEvent ); + state->raylibJoystickCallback = glfwSetJoystickCallback( joystickEvent ); /* NOTE! Experimental. Needs glfw PR https://github.com/glfw/glfw/pull/1445 */ // state->glfwtabletDataCallback = glfwSetPenTabletDataCallback( penTabletDataEvent ); // state->glfwtabletCursorCallback = glfwSetPenTabletCursorCallback( penTabletCursorEvent ); diff --git a/src/platforms/core_desktop_sdl.c b/src/platforms/core_desktop_sdl.c index aacccf5..f1483e5 100644 --- a/src/platforms/core_desktop_sdl.c +++ b/src/platforms/core_desktop_sdl.c @@ -7,18 +7,18 @@ static void platformDefineGlobals() { lua_State *L = state->luaState; lua_getglobal( L, "RL" ); - - /* KeyboardEvents */ +/*DOC_DEFINES_START*/ + /* Keyboard events */ assignGlobalInt( SDL_KEYDOWN, "SDL_KEYDOWN" ); // Key pressed assignGlobalInt( SDL_KEYUP, "SDL_KEYUP" ); // Key released - /* WindowEvents */ + /* Window events */ assignGlobalInt( SDL_WINDOWEVENT, "SDL_WINDOWEVENT" ); // Window state change - /* MouseEvents */ + /* Mouse events */ assignGlobalInt( SDL_MOUSEMOTION, "SDL_MOUSEMOTION" ); // Mouse moved assignGlobalInt( SDL_MOUSEBUTTONDOWN, "SDL_MOUSEBUTTONDOWN" ); // Mouse button pressed assignGlobalInt( SDL_MOUSEBUTTONUP, "SDL_MOUSEBUTTONUP" ); // Mouse button released assignGlobalInt( SDL_MOUSEWHEEL, "SDL_MOUSEWHEEL" ); // Mouse wheel motion - /* JoystickEvents */ + /* Joystick events */ assignGlobalInt( SDL_JOYAXISMOTION, "SDL_JOYAXISMOTION" ); // Joystick axis motion assignGlobalInt( SDL_JOYBALLMOTION, "SDL_JOYBALLMOTION" ); // Joystick trackball motion assignGlobalInt( SDL_JOYHATMOTION, "SDL_JOYHATMOTION" ); @@ -26,22 +26,22 @@ static void platformDefineGlobals() { assignGlobalInt( SDL_JOYBUTTONUP, "SDL_JOYBUTTONUP" ); // Joystick button released assignGlobalInt( SDL_JOYDEVICEADDED, "SDL_JOYDEVICEADDED" ); // Joystick connected assignGlobalInt( SDL_JOYDEVICEREMOVED, "SDL_JOYDEVICEREMOVED" ); // Joystick disconnected - /* ControllerEvents */ + /* Controller events */ assignGlobalInt( SDL_CONTROLLERAXISMOTION, "SDL_CONTROLLERAXISMOTION" ); // Controller axis motion assignGlobalInt( SDL_CONTROLLERBUTTONDOWN, "SDL_CONTROLLERBUTTONDOWN" ); // Controller button pressed assignGlobalInt( SDL_CONTROLLERBUTTONUP, "SDL_CONTROLLERBUTTONUP" ); // Controller button released assignGlobalInt( SDL_CONTROLLERDEVICEADDED, "SDL_CONTROLLERDEVICEADDED" ); // Controller connected assignGlobalInt( SDL_CONTROLLERDEVICEREMOVED, "SDL_CONTROLLERDEVICEREMOVED" ); // Controller disconnected assignGlobalInt( SDL_CONTROLLERDEVICEREMAPPED, "SDL_CONTROLLERDEVICEREMAPPED" ); // Controller mapping updated - /* TouchEvents */ + /* Touch events */ assignGlobalInt( SDL_FINGERDOWN, "SDL_FINGERDOWN" ); // User has touched input device assignGlobalInt( SDL_FINGERUP, "SDL_FINGERUP" ); // User stopped touching input device assignGlobalInt( SDL_FINGERMOTION, "SDL_FINGERMOTION" ); // User is dragging finger on input device - /* GestureEvents */ + /* Gesture events */ assignGlobalInt( SDL_DOLLARGESTURE, "SDL_DOLLARGESTURE" ); assignGlobalInt( SDL_DOLLARRECORD, "SDL_DOLLARRECORD" ); assignGlobalInt( SDL_MULTIGESTURE, "SDL_MULTIGESTURE" ); - /* WindowEventIDs */ + /* Window states */ assignGlobalInt( SDL_WINDOWEVENT_SHOWN, "SDL_WINDOWEVENT_SHOWN" ); assignGlobalInt( SDL_WINDOWEVENT_HIDDEN, "SDL_WINDOWEVENT_HIDDEN" ); assignGlobalInt( SDL_WINDOWEVENT_EXPOSED, "SDL_WINDOWEVENT_EXPOSED" ); @@ -58,10 +58,10 @@ static void platformDefineGlobals() { assignGlobalInt( SDL_WINDOWEVENT_CLOSE, "SDL_WINDOWEVENT_CLOSE" ); assignGlobalInt( SDL_WINDOWEVENT_TAKE_FOCUS, "SDL_WINDOWEVENT_TAKE_FOCUS" ); assignGlobalInt( SDL_WINDOWEVENT_HIT_TEST, "SDL_WINDOWEVENT_HIT_TEST" ); - /* KeyboardAndMouseState */ + /* Keyboard and mouse states */ assignGlobalInt( SDL_RELEASED, "SDL_RELEASED" ); assignGlobalInt( SDL_PRESSED, "SDL_PRESSED" ); - /* JoystickHatMotion */ + /* Joystick hat motion */ assignGlobalInt( SDL_HAT_LEFTUP, "SDL_HAT_LEFTUP" ); assignGlobalInt( SDL_HAT_UP, "SDL_HAT_UP" ); assignGlobalInt( SDL_HAT_RIGHTUP, "SDL_HAT_RIGHTUP" ); @@ -71,14 +71,14 @@ static void platformDefineGlobals() { assignGlobalInt( SDL_HAT_LEFTDOWN, "SDL_HAT_LEFTDOWN" ); assignGlobalInt( SDL_HAT_DOWN, "SDL_HAT_DOWN" ); assignGlobalInt( SDL_HAT_RIGHTDOWN, "SDL_HAT_RIGHTDOWN" ); - +/*DOC_DEFINES_END*/ lua_pop( L, -1 ); } /* Functions. */ /* -## Core - Input-related functions: keyboard. +## SDL Core - Input-related functions: keyboard. */ /* @@ -124,6 +124,10 @@ static void luaPlatformRegister() { /* Events. */ +/* +## SDL Events +*/ + /* This function is not thread safe so we don't use Lua inside it directly. It only adds events to another queue. */ static int SDLEventFilter( void *userdata, SDL_Event *event ) { /* SDL_EVENT_POLL_SENTINEL = 0x7F00, /**< Signals the end of an event poll cycle */ @@ -163,6 +167,11 @@ static void platformSendEvents() { SDL_Event event = state->SDL_eventQueue[i]; switch ( event.type ) { +/* +> SDL_KeyboardEvent = { int type, int timestamp, int state, int repeat, int scancode, int sym, int mod } + +Event occurs whenever a user presses or releases a button on a keyboard. Type SDL_KEYUP or SDL_KEYDOWN +*/ case SDL_KEYUP: case SDL_KEYDOWN: { @@ -184,6 +193,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_WindowEvent = { int type, int timestamp, int event, int data1, int data2 } + +Event occurs when an event of type SDL_WINDOWEVENT is reported. Type SDL_WINDOWEVENT +*/ case SDL_WINDOWEVENT: { lua_createtable( L, 5, 0 ); @@ -200,6 +214,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_MouseMotionEvent = { int type, int timestamp, int which, int state, int x, int y, int xrel, int yrel } + +Event occurs whenever a user moves the mouse within the application window or when SDL_WarpMouseInWindow() is called. Type SDL_MOUSEMOTION +*/ case SDL_MOUSEMOTION: { lua_createtable( L, 8, 0 ); @@ -222,6 +241,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_MouseButtonEvent = { int type, int timestamp, int which, int button, int state, int x, int y } + +Event occurs whenever a user presses or releases a button on a mouse. Type SDL_MOUSEBUTTONDOWN or SDL_MOUSEBUTTONUP +*/ case SDL_MOUSEBUTTONDOWN: case SDL_MOUSEBUTTONUP: { @@ -243,6 +267,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_MouseWheelEvent = { int type, int timestamp, int which, int x, int y } + +Event occurs whenever a user moves the mouse wheel. Type SDL_MOUSEWHEEL +*/ case SDL_MOUSEWHEEL: { lua_createtable( L, 5, 0 ); @@ -259,6 +288,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_JoyAxisEvent = { int type, int timestamp, int which, int axis, int value } + +Event occurs whenever a user moves an axis on the joystick. Type SDL_JOYAXISMOTION +*/ case SDL_JOYAXISMOTION: { lua_createtable( L, 5, 0 ); @@ -275,6 +309,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_JoyBallEvent = { int type, int timestamp, int which, int ball, int xrel, int yrel } + +Event occurs when a user moves a trackball on the joystick. Type SDL_JOYBALLMOTION +*/ case SDL_JOYBALLMOTION: { lua_createtable( L, 6, 0 ); @@ -293,6 +332,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_JoyHatEvent = { int type, int timestamp, int which, int hat, int value } + +Event occurs whenever a user moves a hat on the joystick. Type SDL_JOYHATMOTION +*/ case SDL_JOYHATMOTION: { lua_createtable( L, 5, 0 ); @@ -309,6 +353,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_JoyButtonEvent = { int type, int timestamp, int which, int button, int state } + +Event occurs whenever a user presses or releases a button on a joystick. Type SDL_JOYBUTTONDOWN or SDL_JOYBUTTONUP +*/ case SDL_JOYBUTTONDOWN: case SDL_JOYBUTTONUP: { @@ -326,6 +375,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_JoyDeviceEvent = { int type, int timestamp, int which } + +Event occurs whenever a user connects or disconnects a joystick. Type SDL_JOYDEVICEADDED or SDL_JOYDEVICEREMOVED +*/ case SDL_JOYDEVICEADDED: case SDL_JOYDEVICEREMOVED: { @@ -339,6 +393,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_ControllerAxisEvent = { int type, int timestamp, int which, int axis, int value } + +Event occurs whenever a user moves an axis on the controller. Type SDL_CONTROLLERAXISMOTION +*/ case SDL_CONTROLLERAXISMOTION: { lua_createtable( L, 5, 0 ); @@ -355,6 +414,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_ControllerButtonEvent = { int type, int timestamp, int which, int button, int state } + +Event occurs whenever a user presses or releases a button on a controller. Type SDL_CONTROLLERBUTTONDOWN or SDL_CONTROLLERBUTTONUP +*/ case SDL_CONTROLLERBUTTONDOWN: case SDL_CONTROLLERBUTTONUP: { @@ -372,6 +436,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_ControllerDeviceEvent = { int type, int timestamp, int which } + +Event occurs whenever a user connects, disconnects or remaps a controller. Type SDL_CONTROLLERDEVICEADDED, SDL_CONTROLLERDEVICEREMOVED or SDL_CONTROLLERDEVICEREMAPPED +*/ case SDL_CONTROLLERDEVICEADDED: case SDL_CONTROLLERDEVICEREMOVED: case SDL_CONTROLLERDEVICEREMAPPED: @@ -386,6 +455,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_TouchFingerEvent = { int type, int timestamp, int touchId, int fingerId, float x, float y, float dx, float dy, float pressure } + +Event occurs when an event of type SDL_FINGERMOTION, SDL_FINGERDOWN, or SDL_FINGERUP is reported. Type SDL_FINGERMOTION, SDL_FINGERDOWN or SDL_FINGERUP +*/ case SDL_FINGERMOTION: case SDL_FINGERDOWN: case SDL_FINGERUP: @@ -412,6 +486,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_MultiGestureEvent = { int type, int timestamp, int touchId, float dTheta, float dDist, float x, float y, int numFingers } + +Event occurs when type SDL_MULTIGESTURE is reported. Type SDL_MULTIGESTURE +*/ case SDL_MULTIGESTURE: { lua_createtable( L, 8, 0 ); @@ -434,6 +513,11 @@ static void platformSendEvents() { call = true; } break; +/* +> SDL_DollarGestureEvent = { int type, int timestamp, int touchId, int gestureId, int numFingers, float error, float x, float y } + +Event occurs an event of type SDL_DOLLARGESTURE or SDL_DOLLARRECORD is reported. Type SDL_DOLLARGESTURE or SDL_DOLLARRECORD +*/ case SDL_DOLLARGESTURE: case SDL_DOLLARRECORD: { |
