diff options
Diffstat (limited to 'projects/Notepad++')
3 files changed, 623 insertions, 143 deletions
diff --git a/projects/Notepad++/raylib_npp_parser/raylib_npp.xml b/projects/Notepad++/raylib_npp_parser/raylib_npp.xml index e04fc932..019850e1 100644 --- a/projects/Notepad++/raylib_npp_parser/raylib_npp.xml +++ b/projects/Notepad++/raylib_npp_parser/raylib_npp.xml @@ -10,21 +10,33 @@ <Param name="const char *title" /> </Overload> </KeyWord> + <KeyWord name="WindowShouldClose" func="yes"> + <Overload retVal="bool" descr="Check if KEY_ESCAPE pressed or Close icon pressed"></Overload> + </KeyWord> <KeyWord name="CloseWindow" func="yes"> <Overload retVal="void" descr="Close window and unload OpenGL context"></Overload> </KeyWord> <KeyWord name="IsWindowReady" func="yes"> <Overload retVal="bool" descr="Check if window has been initialized successfully"></Overload> </KeyWord> - <KeyWord name="WindowShouldClose" func="yes"> - <Overload retVal="bool" descr="Check if KEY_ESCAPE pressed or Close icon pressed"></Overload> - </KeyWord> <KeyWord name="IsWindowMinimized" func="yes"> <Overload retVal="bool" descr="Check if window has been minimized (or lost focus)"></Overload> </KeyWord> + <KeyWord name="IsWindowResized" func="yes"> + <Overload retVal="bool" descr="Check if window has been resized"></Overload> + </KeyWord> + <KeyWord name="IsWindowHidden" func="yes"> + <Overload retVal="bool" descr="Check if window is currently hidden"></Overload> + </KeyWord> <KeyWord name="ToggleFullscreen" func="yes"> <Overload retVal="void" descr="Toggle fullscreen mode (only PLATFORM_DESKTOP)"></Overload> </KeyWord> + <KeyWord name="UnhideWindow" func="yes"> + <Overload retVal="void" descr="Show the window"></Overload> + </KeyWord> + <KeyWord name="HideWindow" func="yes"> + <Overload retVal="void" descr="Hide the window"></Overload> + </KeyWord> <KeyWord name="SetWindowIcon" func="yes"> <Overload retVal="void" descr="Set icon for window (only PLATFORM_DESKTOP)"> <Param name="Image image" /> @@ -58,12 +70,51 @@ <Param name="int height" /> </Overload> </KeyWord> + <KeyWord name="GetWindowHandle" func="yes"> + <Overload retVal="void" descr="Get native window handle"></Overload> + </KeyWord> <KeyWord name="GetScreenWidth" func="yes"> <Overload retVal="int" descr="Get current screen width"></Overload> </KeyWord> <KeyWord name="GetScreenHeight" func="yes"> <Overload retVal="int" descr="Get current screen height"></Overload> </KeyWord> + <KeyWord name="GetMonitorCount" func="yes"> + <Overload retVal="int" descr="Get number of connected monitors"></Overload> + </KeyWord> + <KeyWord name="GetMonitorWidth" func="yes"> + <Overload retVal="int" descr="Get primary monitor width"> + <Param name="int monitor" /> + </Overload> + </KeyWord> + <KeyWord name="GetMonitorHeight" func="yes"> + <Overload retVal="int" descr="Get primary monitor height"> + <Param name="int monitor" /> + </Overload> + </KeyWord> + <KeyWord name="GetMonitorPhysicalWidth" func="yes"> + <Overload retVal="int" descr="Get primary monitor physical width in millimetres"> + <Param name="int monitor" /> + </Overload> + </KeyWord> + <KeyWord name="GetMonitorPhysicalHeight" func="yes"> + <Overload retVal="int" descr="Get primary monitor physical height in millimetres"> + <Param name="int monitor" /> + </Overload> + </KeyWord> + <KeyWord name="GetMonitorName" func="yes"> + <Overload retVal="const char" descr="Get the human-readable, UTF-8 encoded name of the primary monitor"> + <Param name="int monitor" /> + </Overload> + </KeyWord> + <KeyWord name="GetClipboardText" func="yes"> + <Overload retVal="const char" descr="Get clipboard text content"></Overload> + </KeyWord> + <KeyWord name="SetClipboardText" func="yes"> + <Overload retVal="void" descr="Set clipboard text content"> + <Param name="const char *text" /> + </Overload> + </KeyWord> <!-- Cursor-related functions --> <KeyWord name="ShowCursor" func="yes"> @@ -170,6 +221,11 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="ColorFromHSV" func="yes"> + <Overload retVal="Color" descr="Returns a Color from HSV values"> + <Param name="Vector3 hsv" /> + </Overload> + </KeyWord> <KeyWord name="GetColor" func="yes"> <Overload retVal="Color" descr="Returns a Color struct from hexadecimal value"> <Param name="int hexValue" /> @@ -183,21 +239,28 @@ </KeyWord> <!-- Misc. functions --> - <KeyWord name="ShowLogo" func="yes"> - <Overload retVal="void" descr="Activate raylib logo at startup (can be done with flags)"></Overload> - </KeyWord> <KeyWord name="SetConfigFlags" func="yes"> <Overload retVal="void" descr="Setup window configuration flags (view FLAGS)"> <Param name="unsigned char flags" /> </Overload> </KeyWord> - <KeyWord name="SetTraceLog" func="yes"> - <Overload retVal="void" descr="Enable trace log message types (bit flags based)"> - <Param name="unsigned char types" /> + <KeyWord name="SetTraceLogLevel" func="yes"> + <Overload retVal="void" descr="Set the current threshold (minimum) log level"> + <Param name="int logType" /> + </Overload> + </KeyWord> + <KeyWord name="SetTraceLogExit" func="yes"> + <Overload retVal="void" descr="Set the exit threshold (minimum) log level"> + <Param name="int logType" /> + </Overload> + </KeyWord> + <KeyWord name="SetTraceLogCallback" func="yes"> + <Overload retVal="void" descr="Set a trace log callback to enable custom logging"> + <Param name="TraceLogCallback callback" /> </Overload> </KeyWord> <KeyWord name="TraceLog" func="yes"> - <Overload retVal="void" descr="Show trace log messages (LOG_INFO, LOG_WARNING, LOG_ERROR, LOG_DEBUG)"> + <Overload retVal="void" descr="Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR)"> <Param name="int logType" /> <Param name="const char *text" /> <Param name="..." /> @@ -216,6 +279,11 @@ </KeyWord> <!-- Files management functions --> + <KeyWord name="FileExists" func="yes"> + <Overload retVal="bool" descr="Check if file exists"> + <Param name="const char *fileName" /> + </Overload> + </KeyWord> <KeyWord name="IsFileExtension" func="yes"> <Overload retVal="bool" descr="Check file extension"> <Param name="const char *fileName" /> @@ -232,6 +300,11 @@ <Param name="const char *filePath" /> </Overload> </KeyWord> + <KeyWord name="GetFileNameWithoutExt" func="yes"> + <Overload retVal="const char" descr="Get filename string without extension (memory should be freed)"> + <Param name="const char *filePath" /> + </Overload> + </KeyWord> <KeyWord name="GetDirectoryPath" func="yes"> <Overload retVal="const char" descr="Get full path for a given fileName (uses static string)"> <Param name="const char *fileName" /> @@ -240,6 +313,15 @@ <KeyWord name="GetWorkingDirectory" func="yes"> <Overload retVal="const char" descr="Get current working directory (uses static string)"></Overload> </KeyWord> + <KeyWord name="GetDirectoryFiles" func="yes"> + <Overload retVal="char" descr="Get filenames in a directory path (memory should be freed)"> + <Param name="const char *dirPath" /> + <Param name="int *count" /> + </Overload> + </KeyWord> + <KeyWord name="ClearDirectoryFiles" func="yes"> + <Overload retVal="void" descr="Clear directory files paths buffers (free memory)"></Overload> + </KeyWord> <KeyWord name="ChangeDirectory" func="yes"> <Overload retVal="bool" descr="Change working directory, returns true if success"> <Param name="const char *dir" /> @@ -249,12 +331,17 @@ <Overload retVal="bool" descr="Check if a file has been dropped into window"></Overload> </KeyWord> <KeyWord name="GetDroppedFiles" func="yes"> - <Overload retVal="char" descr="Get dropped files names"> + <Overload retVal="char" descr="Get dropped files names (memory should be freed)"> <Param name="int *count" /> </Overload> </KeyWord> <KeyWord name="ClearDroppedFiles" func="yes"> - <Overload retVal="void" descr="Clear dropped files paths buffer"></Overload> + <Overload retVal="void" descr="Clear dropped files paths buffer (free memory)"></Overload> + </KeyWord> + <KeyWord name="GetFileModTime" func="yes"> + <Overload retVal="long" descr="Get file modification time (last write time)"> + <Param name="const char *fileName" /> + </Overload> </KeyWord> <!-- Persistent storage management --> @@ -270,6 +357,12 @@ </Overload> </KeyWord> + <KeyWord name="OpenURL" func="yes"> + <Overload retVal="void" descr="Open URL with default system browser (if available)"> + <Param name="const char *url" /> + </Overload> + </KeyWord> + <!-------------------------------------------------------------------------------------- --> <!-- Input Handling Functions (Module: core) --> <!-------------------------------------------------------------------------------------- --> @@ -392,12 +485,20 @@ </KeyWord> <KeyWord name="SetMousePosition" func="yes"> <Overload retVal="void" descr="Set mouse position XY"> - <Param name="Vector2 position" /> + <Param name="int x" /> + <Param name="int y" /> + </Overload> + </KeyWord> + <KeyWord name="SetMouseOffset" func="yes"> + <Overload retVal="void" descr="Set mouse offset"> + <Param name="int offsetX" /> + <Param name="int offsetY" /> </Overload> </KeyWord> <KeyWord name="SetMouseScale" func="yes"> <Overload retVal="void" descr="Set mouse scaling"> - <Param name="float scale" /> + <Param name="float scaleX" /> + <Param name="float scaleY" /> </Overload> </KeyWord> <KeyWord name="GetMouseWheelMove" func="yes"> @@ -543,6 +644,13 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawLineStrip" func="yes"> + <Overload retVal="void" descr="Draw lines sequence"> + <Param name="Vector2 *points" /> + <Param name="int numPoints" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawCircle" func="yes"> <Overload retVal="void" descr="Draw a color-filled circle"> <Param name="int centerX" /> @@ -551,6 +659,26 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawCircleSector" func="yes"> + <Overload retVal="void" descr="Draw a piece of a circle"> + <Param name="Vector2 center" /> + <Param name="float radius" /> + <Param name="int startAngle" /> + <Param name="int endAngle" /> + <Param name="int segments" /> + <Param name="Color color" /> + </Overload> + </KeyWord> + <KeyWord name="DrawCircleSectorLines" func="yes"> + <Overload retVal="void" descr="Draw circle sector outline"> + <Param name="Vector2 center" /> + <Param name="float radius" /> + <Param name="int startAngle" /> + <Param name="int endAngle" /> + <Param name="int segments" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawCircleGradient" func="yes"> <Overload retVal="void" descr="Draw a gradient-filled circle"> <Param name="int centerX" /> @@ -575,6 +703,28 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawRing" func="yes"> + <Overload retVal="void" descr="Draw ring"> + <Param name="Vector2 center" /> + <Param name="float innerRadius" /> + <Param name="float outerRadius" /> + <Param name="int startAngle" /> + <Param name="int endAngle" /> + <Param name="int segments" /> + <Param name="Color color" /> + </Overload> + </KeyWord> + <KeyWord name="DrawRingLines" func="yes"> + <Overload retVal="void" descr="Draw ring outline"> + <Param name="Vector2 center" /> + <Param name="float innerRadius" /> + <Param name="float outerRadius" /> + <Param name="int startAngle" /> + <Param name="int endAngle" /> + <Param name="int segments" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawRectangle" func="yes"> <Overload retVal="void" descr="Draw a color-filled rectangle"> <Param name="int posX" /> @@ -650,6 +800,23 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawRectangleRounded" func="yes"> + <Overload retVal="void" descr="Draw rectangle with rounded edges"> + <Param name="Rectangle rec" /> + <Param name="float roundness" /> + <Param name="int segments" /> + <Param name="Color color" /> + </Overload> + </KeyWord> + <KeyWord name="DrawRectangleRoundedLines" func="yes"> + <Overload retVal="void" descr="Draw rectangle with rounded edges outline"> + <Param name="Rectangle rec" /> + <Param name="float roundness" /> + <Param name="int segments" /> + <Param name="int lineThick" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawTriangle" func="yes"> <Overload retVal="void" descr="Draw a color-filled triangle"> <Param name="Vector2 v1" /> @@ -666,6 +833,13 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawTriangleFan" func="yes"> + <Overload retVal="void" descr="Draw a triangle fan defined by points"> + <Param name="Vector2 *points" /> + <Param name="int numPoints" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawPoly" func="yes"> <Overload retVal="void" descr="Draw a regular polygon (Vector version)"> <Param name="Vector2 center" /> @@ -675,18 +849,11 @@ <Param name="Color color" /> </Overload> </KeyWord> - <KeyWord name="DrawPolyEx" func="yes"> - <Overload retVal="void" descr="Draw a closed polygon defined by points"> - <Param name="Vector2 *points" /> - <Param name="int numPoints" /> - <Param name="Color color" /> - </Overload> - </KeyWord> - <KeyWord name="DrawPolyExLines" func="yes"> - <Overload retVal="void" descr="Draw polygon lines"> - <Param name="Vector2 *points" /> - <Param name="int numPoints" /> - <Param name="Color color" /> + + <KeyWord name="SetShapesTexture" func="yes"> + <Overload retVal="void" descr="Define default texture used to draw shapes"> + <Param name="Texture2D texture" /> + <Param name="Rectangle source" /> </Overload> </KeyWord> @@ -770,9 +937,15 @@ </Overload> </KeyWord> <KeyWord name="ExportImage" func="yes"> - <Overload retVal="void" descr="Export image as a PNG file"> + <Overload retVal="void" descr="Export image data to file"> + <Param name="Image image" /> <Param name="const char *fileName" /> + </Overload> + </KeyWord> + <KeyWord name="ExportImageAsCode" func="yes"> + <Overload retVal="void" descr="Export image as code file defining an array of bytes"> <Param name="Image image" /> + <Param name="const char *fileName" /> </Overload> </KeyWord> <KeyWord name="LoadTexture" func="yes"> @@ -785,6 +958,12 @@ <Param name="Image image" /> </Overload> </KeyWord> + <KeyWord name="LoadTextureCubemap" func="yes"> + <Overload retVal="TextureCubemap" descr="Load cubemap from image, multiple image cubemap layouts supported"> + <Param name="Image image" /> + <Param name="int layoutType" /> + </Overload> + </KeyWord> <KeyWord name="LoadRenderTexture" func="yes"> <Overload retVal="RenderTexture2D" descr="Load texture for rendering (framebuffer)"> <Param name="int width" /> @@ -828,6 +1007,9 @@ <Param name="Texture2D texture" /> </Overload> </KeyWord> + <KeyWord name="GetScreenData" func="yes"> + <Overload retVal="Image" descr="Get pixel data from screen buffer and return an Image (screenshot)"></Overload> + </KeyWord> <KeyWord name="UpdateTexture" func="yes"> <Overload retVal="void" descr="Update GPU texture with new data"> <Param name="Texture2D texture" /> @@ -884,14 +1066,14 @@ </Overload> </KeyWord> <KeyWord name="ImageResize" func="yes"> - <Overload retVal="void" descr="Resize and image (bilinear filtering)"> + <Overload retVal="void" descr="Resize image (Bicubic scaling algorithm)"> <Param name="Image *image" /> <Param name="int newWidth" /> <Param name="int newHeight" /> </Overload> </KeyWord> <KeyWord name="ImageResizeNN" func="yes"> - <Overload retVal="void" descr="Resize and image (Nearest-Neighbor scaling algorithm)"> + <Overload retVal="void" descr="Resize image (Nearest-Neighbor scaling algorithm)"> <Param name="Image *image" /> <Param name="int newWidth" /> <Param name="int newHeight" /> @@ -921,6 +1103,13 @@ <Param name="int aBpp" /> </Overload> </KeyWord> + <KeyWord name="ImageExtractPalette" func="yes"> + <Overload retVal="Color" descr="Extract color palette from image to maximum size (memory should be freed)"> + <Param name="Image image" /> + <Param name="int maxPaletteSize" /> + <Param name="int *extractCount" /> + </Overload> + </KeyWord> <KeyWord name="ImageText" func="yes"> <Overload retVal="Image" descr="Create an image from text (default font)"> <Param name="const char *text" /> @@ -948,11 +1137,18 @@ <KeyWord name="ImageDrawRectangle" func="yes"> <Overload retVal="void" descr="Draw rectangle within an image"> <Param name="Image *dst" /> - <Param name="Vector2 position" /> <Param name="Rectangle rec" /> <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="ImageDrawRectangleLines" func="yes"> + <Overload retVal="void" descr="Draw rectangle lines within an image"> + <Param name="Image *dst" /> + <Param name="Rectangle rec" /> + <Param name="int thick" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="ImageDrawText" func="yes"> <Overload retVal="void" descr="Draw text (default font) within an image (destination)"> <Param name="Image *dst" /> @@ -1148,6 +1344,15 @@ <Param name="Color tint" /> </Overload> </KeyWord> + <KeyWord name="DrawTextureQuad" func="yes"> + <Overload retVal="void" descr="Draw texture quad with tiling and offset parameters"> + <Param name="Texture2D texture" /> + <Param name="Vector2 tiling" /> + <Param name="Vector2 offset" /> + <Param name="Rectangle quad" /> + <Param name="Color tint" /> + </Overload> + </KeyWord> <KeyWord name="DrawTexturePro" func="yes"> <Overload retVal="void" descr="Draw a part of a texture defined by a rectangle with 'pro' parameters"> <Param name="Texture2D texture" /> @@ -1158,6 +1363,16 @@ <Param name="Color tint" /> </Overload> </KeyWord> + <KeyWord name="DrawTextureNPatch" func="yes"> + <Overload retVal="void" descr="Draws a texture (or part of it) that stretches or shrinks nicely"> + <Param name="Texture2D texture" /> + <Param name="NPatchInfo nPatchInfo" /> + <Param name="Rectangle destRec" /> + <Param name="Vector2 origin" /> + <Param name="float rotation" /> + <Param name="Color tint" /> + </Overload> + </KeyWord> <!-------------------------------------------------------------------------------------- --> <!-- Font Loading and Text Drawing Functions (Module: text) --> @@ -1176,8 +1391,15 @@ <Overload retVal="Font" descr="Load font from file with extended parameters"> <Param name="const char *fileName" /> <Param name="int fontSize" /> - <Param name="int charsCount" /> <Param name="int *fontChars" /> + <Param name="int charsCount" /> + </Overload> + </KeyWord> + <KeyWord name="LoadFontFromImage" func="yes"> + <Overload retVal="Font" descr="Load font from Image (XNA style)"> + <Param name="Image image" /> + <Param name="Color key" /> + <Param name="int firstChar" /> </Overload> </KeyWord> <KeyWord name="LoadFontData" func="yes"> @@ -1186,14 +1408,14 @@ <Param name="int fontSize" /> <Param name="int *fontChars" /> <Param name="int charsCount" /> - <Param name="bool sdf" /> + <Param name="int type" /> </Overload> </KeyWord> <KeyWord name="GenImageFontAtlas" func="yes"> <Overload retVal="Image" descr="Generate image font atlas using chars info"> <Param name="CharInfo *chars" /> - <Param name="int fontSize" /> <Param name="int charsCount" /> + <Param name="int fontSize" /> <Param name="int padding" /> <Param name="int packMethod" /> </Overload> @@ -1221,15 +1443,39 @@ </Overload> </KeyWord> <KeyWord name="DrawTextEx" func="yes"> - <Overload retVal="void" descr="Draw text using Font and additional parameters"> + <Overload retVal="void" descr="Draw text using font and additional parameters"> <Param name="Font font" /> - <Param name="const char* text" /> + <Param name="const char *text" /> <Param name="Vector2 position" /> <Param name="float fontSize" /> <Param name="float spacing" /> <Param name="Color tint" /> </Overload> </KeyWord> + <KeyWord name="DrawTextRec" func="yes"> + <Overload retVal="void" descr="Draw text using font inside rectangle limits"> + <Param name="Font font" /> + <Param name="const char *text" /> + <Param name="Rectangle rec" /> + <Param name="float fontSize" /> + <Param name="float spacing" /> + <Param name="bool wordWrap" /> + <Param name="Color tint" /> + </Overload> + </KeyWord> + <KeyWord name="DrawTextRecEx" func="yes"> + <Overload retVal="void" descr="Draw text using font inside rectangle limits with support for text selection"> + <Param name="Font font" /> + <Param name="const char *text" /> + <Param name="Rectangle rec" /> + <Param name="float fontSize" /> + <Param name="float spacing" /> + <Param name="bool wordWrap" /> + <Param name="Color tint" /> + <Param name="int selectStart" /> + <Param name="int selecFont" /> + </Overload> + </KeyWord> <!-- Text misc. functions --> <KeyWord name="MeasureText" func="yes"> @@ -1246,23 +1492,109 @@ <Param name="float spacing" /> </Overload> </KeyWord> - <KeyWord name="FormatText" func="yes"> - <Overload retVal="const char" descr="Formatting of text with variables to 'embed'"> + <KeyWord name="GetGlyphIndex" func="yes"> + <Overload retVal="int" descr="Get index position for a unicode character on font"> + <Param name="Font font" /> + <Param name="int character" /> + </Overload> + </KeyWord> + <KeyWord name="GetNextCodepoint" func="yes"> + <Overload retVal="int" descr="Returns next codepoint in a UTF8 encoded string"> + <Param name="const char *text" /> + <Param name="int *count" /> + </Overload> + </KeyWord> + + <!-- Text strings management functions --> + <!-- NOTE: Some strings allocate memory internally for returned strings, just be careful! --> + <KeyWord name="TextIsEqual" func="yes"> + <Overload retVal="bool" descr="Check if two text string are equal"> + <Param name="const char *text1" /> + <Param name="const char *text2" /> + </Overload> + </KeyWord> + <KeyWord name="int TextLength" func="yes"> + <Overload retVal="unsigned" descr="Get text length, checks for '\0' ending"> + <Param name="const char *text" /> + </Overload> + </KeyWord> + <KeyWord name="int TextCountCodepoints" func="yes"> + <Overload retVal="unsigned" descr="Get total number of characters (codepoints) in a UTF8 encoded string"> + <Param name="const char *text" /> + </Overload> + </KeyWord> + <KeyWord name="TextFormat" func="yes"> + <Overload retVal="const char" descr="Text formatting with variables (sprintf style)"> <Param name="const char *text" /> <Param name="..." /> </Overload> </KeyWord> - <KeyWord name="SubText" func="yes"> + <KeyWord name="TextSubtext" func="yes"> <Overload retVal="const char" descr="Get a piece of a text string"> <Param name="const char *text" /> <Param name="int position" /> <Param name="int length" /> </Overload> </KeyWord> - <KeyWord name="GetGlyphIndex" func="yes"> - <Overload retVal="int" descr="Returns index position for a unicode character on sprite font"> - <Param name="Font font" /> - <Param name="int character" /> + <KeyWord name="TextReplace" func="yes"> + <Overload retVal="const char" descr="Replace text string (memory should be freed!)"> + <Param name="char *text" /> + <Param name="const char *replace" /> + <Param name="const char *by" /> + </Overload> + </KeyWord> + <KeyWord name="TextInsert" func="yes"> + <Overload retVal="const char" descr="Insert text in a position (memory should be freed!)"> + <Param name="const char *text" /> + <Param name="const char *insert" /> + <Param name="int position" /> + </Overload> + </KeyWord> + <KeyWord name="TextJoin" func="yes"> + <Overload retVal="const char" descr="Join text strings with delimiter"> + <Param name="const char **textList" /> + <Param name="int count" /> + <Param name="const char *delimiter" /> + </Overload> + </KeyWord> + <KeyWord name="TextSplit" func="yes"> + <Overload retVal="const char" descr="Split text into multiple strings"> + <Param name="const char *text" /> + <Param name="char delimiter" /> + <Param name="int *count" /> + </Overload> + </KeyWord> + <KeyWord name="TextAppend" func="yes"> + <Overload retVal="void" descr="Append text at specific position and move cursor!"> + <Param name="char *text" /> + <Param name="const char *append" /> + <Param name="int *position" /> + </Overload> + </KeyWord> + <KeyWord name="TextFindIndex" func="yes"> + <Overload retVal="int" descr="Find first text occurrence within a string"> + <Param name="const char *text" /> + <Param name="const char *find" /> + </Overload> + </KeyWord> + <KeyWord name="TextToUpper" func="yes"> + <Overload retVal="const char" descr="Get upper case version of provided string"> + <Param name="const char *text" /> + </Overload> + </KeyWord> + <KeyWord name="TextToLower" func="yes"> + <Overload retVal="const char" descr="Get lower case version of provided string"> + <Param name="const char *text" /> + </Overload> + </KeyWord> + <KeyWord name="TextToPascal" func="yes"> + <Overload retVal="const char" descr="Get Pascal case notation version of provided string"> + <Param name="const char *text" /> + </Overload> + </KeyWord> + <KeyWord name="TextToInteger" func="yes"> + <Overload retVal="int" descr="Get integer value from text (negative values not supported)"> + <Param name="const char *text" /> </Overload> </KeyWord> @@ -1312,6 +1644,13 @@ <Param name="Color color" /> </Overload> </KeyWord> + <KeyWord name="DrawCubeWiresV" func="yes"> + <Overload retVal="void" descr="Draw cube wires (Vector version)"> + <Param name="Vector3 position" /> + <Param name="Vector3 size" /> + <Param name="Color color" /> + </Overload> + </KeyWord> <KeyWord name="DrawCubeTexture" func="yes"> <Overload retVal="void" descr="Draw cube textured"> <Param name="Texture2D texture" /> @@ -1399,12 +1738,12 @@ <!-- Model loading/unloading functions --> <KeyWord name="LoadModel" func="yes"> - <Overload retVal="Model" descr="Load model from files (mesh and material)"> + <Overload retVal="Model" descr="Load model from files (meshes and materials)"> <Param name="const char *fileName" /> </Overload> </KeyWord> <KeyWord name="LoadModelFromMesh" func="yes"> - <Overload retVal="Model" descr="Load model from generated mesh"> + <Overload retVal="Model" descr="Load model from generated mesh (default material)"> <Param name="Mesh mesh" /> </Overload> </KeyWord> @@ -1415,8 +1754,15 @@ </KeyWord> <!-- Mesh loading/unloading functions --> - <KeyWord name="LoadMesh" func="yes"> - <Overload retVal="Mesh" descr="Load mesh from file"> + <KeyWord name="LoadMeshes" func="yes"> + <Overload retVal="Mesh" descr="Load meshes from model file"> + <Param name="const char *fileName" /> + <Param name="int *meshCount" /> + </Overload> + </KeyWord> + <KeyWord name="ExportMesh" func="yes"> + <Overload retVal="void" descr="Export mesh data to file"> + <Param name="Mesh mesh" /> <Param name="const char *fileName" /> </Overload> </KeyWord> @@ -1425,31 +1771,70 @@ <Param name="Mesh *mesh" /> </Overload> </KeyWord> - <KeyWord name="ExportMesh" func="yes"> - <Overload retVal="void" descr="Export mesh as an OBJ file"> + + <!-- Material loading/unloading functions --> + <KeyWord name="LoadMaterials" func="yes"> + <Overload retVal="Material" descr="Load materials from model file"> <Param name="const char *fileName" /> - <Param name="Mesh mesh" /> + <Param name="int *materialCount" /> + </Overload> + </KeyWord> + <KeyWord name="LoadMaterialDefault" func="yes"> + <Overload retVal="Material" descr="Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)"></Overload> + </KeyWord> + <KeyWord name="UnloadMaterial" func="yes"> + <Overload retVal="void" descr="Unload material from GPU memory (VRAM)"> + <Param name="Material material" /> + </Overload> + </KeyWord> + <KeyWord name="SetMaterialTexture" func="yes"> + <Overload retVal="void" descr="Set texture for a material map type (MAP_DIFFUSE, MAP_SPECULAR...)"> + <Param name="Material *material" /> + <Param name="int mapType" /> + <Param name="Texture2D texture" /> + </Overload> + </KeyWord> + <KeyWord name="SetModelMeshMaterial" func="yes"> + <Overload retVal="void" descr="Set material for a mesh"> + <Param name="Model *model" /> + <Param name="int meshId" /> + <Param name="int materialId" /> </Overload> </KeyWord> - <!-- Mesh manipulation functions --> - <KeyWord name="MeshBoundingBox" func="yes"> - <Overload retVal="BoundingBox" descr="Compute mesh bounding box limits"> - <Param name="Mesh mesh" /> + <!-- Model animations loading/unloading functions --> + <KeyWord name="LoadModelAnimations" func="yes"> + <Overload retVal="ModelAnimation" descr="Load model animations from file"> + <Param name="const char *fileName" /> + <Param name="int *animsCount" /> </Overload> </KeyWord> - <KeyWord name="MeshTangents" func="yes"> - <Overload retVal="void" descr="Compute mesh tangents "> - <Param name="Mesh *mesh" /> + <KeyWord name="UpdateModelAnimation" func="yes"> + <Overload retVal="void" descr="Update model animation pose"> + <Param name="Model model" /> + <Param name="ModelAnimation anim" /> + <Param name="int frame" /> </Overload> </KeyWord> - <KeyWord name="MeshBinormals" func="yes"> - <Overload retVal="void" descr="Compute mesh binormals"> - <Param name="Mesh *mesh" /> + <KeyWord name="UnloadModelAnimation" func="yes"> + <Overload retVal="void" descr="Unload animation data"> + <Param name="ModelAnimation anim" /> + </Overload> + </KeyWord> + <KeyWord name="IsModelAnimationValid" func="yes"> + <Overload retVal="bool" descr="Check model animation skeleton match"> + <Param name="Model model" /> + <Param name="ModelAnimation anim" /> </Overload> </KeyWord> <!-- Mesh generation functions --> + <KeyWord name="GenMeshPoly" func="yes"> + <Overload retVal="Mesh" descr="Generate polygonal mesh"> + <Param name="int sides" /> + <Param name="float radius" /> + </Overload> + </KeyWord> <KeyWord name="GenMeshPlane" func="yes"> <Overload retVal="Mesh" descr="Generate plane mesh (with subdivisions)"> <Param name="float width" /> @@ -1515,18 +1900,20 @@ </Overload> </KeyWord> - <!-- Material loading/unloading functions --> - <KeyWord name="LoadMaterial" func="yes"> - <Overload retVal="Material" descr="Load material from file"> - <Param name="const char *fileName" /> + <!-- Mesh manipulation functions --> + <KeyWord name="MeshBoundingBox" func="yes"> + <Overload retVal="BoundingBox" descr="Compute mesh bounding box limits"> + <Param name="Mesh mesh" /> </Overload> </KeyWord> - <KeyWord name="LoadMaterialDefault" func="yes"> - <Overload retVal="Material" descr="Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)"></Overload> + <KeyWord name="MeshTangents" func="yes"> + <Overload retVal="void" descr="Compute mesh tangents"> + <Param name="Mesh *mesh" /> + </Overload> </KeyWord> - <KeyWord name="UnloadMaterial" func="yes"> - <Overload retVal="void" descr="Unload material from GPU memory (VRAM)"> - <Param name="Material material" /> + <KeyWord name="MeshBinormals" func="yes"> + <Overload retVal="void" descr="Compute mesh binormals"> + <Param name="Mesh *mesh" /> </Overload> </KeyWord> @@ -1701,19 +2088,20 @@ </Overload> </KeyWord> <KeyWord name="SetShaderValue" func="yes"> - <Overload retVal="void" descr="Set shader uniform value (float)"> + <Overload retVal="void" descr="Set shader uniform value"> <Param name="Shader shader" /> <Param name="int uniformLoc" /> - <Param name="const float *value" /> - <Param name="int size" /> + <Param name="const void *value" /> + <Param name="int uniformType" /> </Overload> </KeyWord> - <KeyWord name="SetShaderValuei" func="yes"> - <Overload retVal="void" descr="Set shader uniform value (int)"> + <KeyWord name="SetShaderValueV" func="yes"> + <Overload retVal="void" descr="Set shader uniform value vector"> <Param name="Shader shader" /> <Param name="int uniformLoc" /> - <Param name="const int *value" /> - <Param name="int size" /> + <Param name="const void *value" /> + <Param name="int uniformType" /> + <Param name="int count" /> </Overload> </KeyWord> <KeyWord name="SetShaderValueMatrix" func="yes"> @@ -1723,6 +2111,13 @@ <Param name="Matrix mat" /> </Overload> </KeyWord> + <KeyWord name="SetShaderValueTexture" func="yes"> + <Overload retVal="void" descr="Set shader uniform value for texture"> + <Param name="Shader shader" /> + <Param name="int uniformLoc" /> + <Param name="Texture2D texture" /> + </Overload> + </KeyWord> <KeyWord name="SetMatrixProjection" func="yes"> <Overload retVal="void" descr="Set a custom projection matrix (replaces internal projection matrix)"> <Param name="Matrix proj" /> @@ -1763,9 +2158,8 @@ </Overload> </KeyWord> <KeyWord name="GenTextureBRDF" func="yes"> - <Overload retVal="Texture2D" descr="Generate BRDF texture using cubemap data"> + <Overload retVal="Texture2D" descr="Generate BRDF texture"> <Param name="Shader shader" /> - <Param name="Texture2D cubemap" /> <Param name="int size" /> </Overload> </KeyWord> @@ -1787,34 +2181,39 @@ <KeyWord name="EndBlendMode" func="yes"> <Overload retVal="void" descr="End blending mode (reset to default: alpha blending)"></Overload> </KeyWord> - - <!-- VR control functions --> - <KeyWord name="GetVrDeviceInfo" func="yes"> - <Overload retVal="VrDeviceInfo" descr="Get VR device information for some standard devices"> - <Param name="int vrDeviceType" /> + <KeyWord name="BeginScissorMode" func="yes"> + <Overload retVal="void" descr="Begin scissor mode (define screen area for following drawing)"> + <Param name="int x" /> + <Param name="int y" /> + <Param name="int width" /> + <Param name="int height" /> </Overload> </KeyWord> + <KeyWord name="EndScissorMode" func="yes"> + <Overload retVal="void" descr="End scissor mode"></Overload> + </KeyWord> + + <!-- VR control functions --> <KeyWord name="InitVrSimulator" func="yes"> - <Overload retVal="void" descr="Init VR simulator for selected device parameters"> - <Param name="VrDeviceInfo info" /> - </Overload> + <Overload retVal="void" descr="Init VR simulator for selected device parameters"></Overload> </KeyWord> <KeyWord name="CloseVrSimulator" func="yes"> <Overload retVal="void" descr="Close VR simulator for current device"></Overload> </KeyWord> - <KeyWord name="IsVrSimulatorReady" func="yes"> - <Overload retVal="bool" descr="Detect if VR simulator is ready"></Overload> - </KeyWord> - <KeyWord name="SetVrDistortionShader" func="yes"> - <Overload retVal="void" descr="Set VR distortion shader for stereoscopic rendering"> - <Param name="Shader shader" /> - </Overload> - </KeyWord> <KeyWord name="UpdateVrTracking" func="yes"> <Overload retVal="void" descr="Update VR tracking (position and orientation) and camera"> <Param name="Camera *camera" /> </Overload> </KeyWord> + <KeyWord name="SetVrConfiguration" func="yes"> + <Overload retVal="void" descr="Set stereo rendering configuration parameters "> + <Param name="VrDeviceInfo info" /> + <Param name="Shader distortion" /> + </Overload> + </KeyWord> + <KeyWord name="IsVrSimulatorReady" func="yes"> + <Overload retVal="bool" descr="Detect if VR simulator is ready"></Overload> + </KeyWord> <KeyWord name="ToggleVrMode" func="yes"> <Overload retVal="void" descr="Enable/Disable VR experience"></Overload> </KeyWord> @@ -1881,6 +2280,18 @@ <Param name="Sound sound" /> </Overload> </KeyWord> + <KeyWord name="ExportWave" func="yes"> + <Overload retVal="void" descr="Export wave data to file"> + <Param name="Wave wave" /> + <Param name="const char *fileName" /> + </Overload> + </KeyWord> + <KeyWord name="ExportWaveAsCode" func="yes"> + <Overload retVal="void" descr="Export wave sample data to code (.h)"> + <Param name="Wave wave" /> + <Param name="const char *fileName" /> + </Overload> + </KeyWord> <!-- Wave/Sound management functions --> <KeyWord name="PlaySound" func="yes"> diff --git a/projects/Notepad++/raylib_npp_parser/raylib_npp_parser.c b/projects/Notepad++/raylib_npp_parser/raylib_npp_parser.c index 7ab55189..f2c115f3 100644 --- a/projects/Notepad++/raylib_npp_parser/raylib_npp_parser.c +++ b/projects/Notepad++/raylib_npp_parser/raylib_npp_parser.c @@ -17,6 +17,8 @@ </KeyWord> NOTE: Generated XML text should be copied inside raylib\Notepad++\plugins\APIs\c.xml + + WARNING: Be careful with functions that split parameters into several lines, it breaks the process! LICENSE: zlib/libpng diff --git a/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h b/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h index 08e24c35..a572c0d6 100644 --- a/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h +++ b/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h @@ -4,22 +4,32 @@ // Window-related functions RLAPI void InitWindow(int width, int height, const char *title); // Initialize window and OpenGL context +RLAPI bool WindowShouldClose(void); // Check if KEY_ESCAPE pressed or Close icon pressed RLAPI void CloseWindow(void); // Close window and unload OpenGL context RLAPI bool IsWindowReady(void); // Check if window has been initialized successfully -RLAPI bool WindowShouldClose(void); // Check if KEY_ESCAPE pressed or Close icon pressed RLAPI bool IsWindowMinimized(void); // Check if window has been minimized (or lost focus) +RLAPI bool IsWindowResized(void); // Check if window has been resized +RLAPI bool IsWindowHidden(void); // Check if window is currently hidden RLAPI void ToggleFullscreen(void); // Toggle fullscreen mode (only PLATFORM_DESKTOP) +RLAPI void UnhideWindow(void); // Show the window +RLAPI void HideWindow(void); // Hide the window RLAPI void SetWindowIcon(Image image); // Set icon for window (only PLATFORM_DESKTOP) RLAPI void SetWindowTitle(const char *title); // Set title for window (only PLATFORM_DESKTOP) RLAPI void SetWindowPosition(int x, int y); // Set window position on screen (only PLATFORM_DESKTOP) RLAPI void SetWindowMonitor(int monitor); // Set monitor for the current window (fullscreen mode) RLAPI void SetWindowMinSize(int width, int height); // Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE) RLAPI void SetWindowSize(int width, int height); // Set window dimensions -RLAPI void ShowWindow(); // Show the window -RLAPI void HideWindow(); // Hide the window -RLAPI bool IsWindowHidden(); // Check if window is currently hidden +RLAPI void *GetWindowHandle(void); // Get native window handle RLAPI int GetScreenWidth(void); // Get current screen width RLAPI int GetScreenHeight(void); // Get current screen height +RLAPI int GetMonitorCount(void); // Get number of connected monitors +RLAPI int GetMonitorWidth(int monitor); // Get primary monitor width +RLAPI int GetMonitorHeight(int monitor); // Get primary monitor height +RLAPI int GetMonitorPhysicalWidth(int monitor); // Get primary monitor physical width in millimetres +RLAPI int GetMonitorPhysicalHeight(int monitor); // Get primary monitor physical height in millimetres +RLAPI const char *GetMonitorName(int monitor); // Get the human-readable, UTF-8 encoded name of the primary monitor +RLAPI const char *GetClipboardText(void); // Get clipboard text content +RLAPI void SetClipboardText(const char *text); // Set clipboard text content // Cursor-related functions RLAPI void ShowCursor(void); // Shows cursor @@ -54,32 +64,41 @@ RLAPI double GetTime(void); // Returns ela RLAPI int ColorToInt(Color color); // Returns hexadecimal value for a Color RLAPI Vector4 ColorNormalize(Color color); // Returns color normalized as float [0..1] RLAPI Vector3 ColorToHSV(Color color); // Returns HSV values for a Color +RLAPI Color ColorFromHSV(Vector3 hsv); // Returns a Color from HSV values RLAPI Color GetColor(int hexValue); // Returns a Color struct from hexadecimal value RLAPI Color Fade(Color color, float alpha); // Color fade-in or fade-out, alpha goes from 0.0f to 1.0f // Misc. functions -RLAPI void ShowLogo(void); // Activate raylib logo at startup (can be done with flags) RLAPI void SetConfigFlags(unsigned char flags); // Setup window configuration flags (view FLAGS) -RLAPI void SetTraceLog(unsigned char types); // Enable trace log message types (bit flags based) -RLAPI void TraceLog(int logType, const char *text, ...); // Show trace log messages (LOG_INFO, LOG_WARNING, LOG_ERROR, LOG_DEBUG) +RLAPI void SetTraceLogLevel(int logType); // Set the current threshold (minimum) log level +RLAPI void SetTraceLogExit(int logType); // Set the exit threshold (minimum) log level +RLAPI void SetTraceLogCallback(TraceLogCallback callback); // Set a trace log callback to enable custom logging +RLAPI void TraceLog(int logType, const char *text, ...); // Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR) RLAPI void TakeScreenshot(const char *fileName); // Takes a screenshot of current screen (saved a .png) RLAPI int GetRandomValue(int min, int max); // Returns a random value between min and max (both included) // Files management functions +RLAPI bool FileExists(const char *fileName); // Check if file exists RLAPI bool IsFileExtension(const char *fileName, const char *ext);// Check file extension RLAPI const char *GetExtension(const char *fileName); // Get pointer to extension for a filename string RLAPI const char *GetFileName(const char *filePath); // Get pointer to filename for a path string +RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filename string without extension (memory should be freed) RLAPI const char *GetDirectoryPath(const char *fileName); // Get full path for a given fileName (uses static string) RLAPI const char *GetWorkingDirectory(void); // Get current working directory (uses static string) +RLAPI char **GetDirectoryFiles(const char *dirPath, int *count); // Get filenames in a directory path (memory should be freed) +RLAPI void ClearDirectoryFiles(void); // Clear directory files paths buffers (free memory) RLAPI bool ChangeDirectory(const char *dir); // Change working directory, returns true if success RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window -RLAPI char **GetDroppedFiles(int *count); // Get dropped files names -RLAPI void ClearDroppedFiles(void); // Clear dropped files paths buffer +RLAPI char **GetDroppedFiles(int *count); // Get dropped files names (memory should be freed) +RLAPI void ClearDroppedFiles(void); // Clear dropped files paths buffer (free memory) +RLAPI long GetFileModTime(const char *fileName); // Get file modification time (last write time) // Persistent storage management RLAPI void StorageSaveValue(int position, int value); // Save integer value to storage file (to defined position) RLAPI int StorageLoadValue(int position); // Load integer value from storage file (from defined position) +RLAPI void OpenURL(const char *url); // Open URL with default system browser (if available) + //------------------------------------------------------------------------------------ // Input Handling Functions (Module: core) //------------------------------------------------------------------------------------ @@ -112,8 +131,9 @@ RLAPI bool IsMouseButtonUp(int button); // Detect if a mou RLAPI int GetMouseX(void); // Returns mouse position X RLAPI int GetMouseY(void); // Returns mouse position Y RLAPI Vector2 GetMousePosition(void); // Returns mouse position XY -RLAPI void SetMousePosition(Vector2 position); // Set mouse position XY -RLAPI void SetMouseScale(float scale); // Set mouse scaling +RLAPI void SetMousePosition(int x, int y); // Set mouse position XY +RLAPI void SetMouseOffset(int offsetX, int offsetY); // Set mouse offset +RLAPI void SetMouseScale(float scaleX, float scaleY); // Set mouse scaling RLAPI int GetMouseWheelMove(void); // Returns mouse wheel movement Y // Input-related functions: touch @@ -156,10 +176,15 @@ RLAPI void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Colo RLAPI void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (Vector version) RLAPI void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line defining thickness RLAPI void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line using cubic-bezier curves in-out +RLAPI void DrawLineStrip(Vector2 *points, int numPoints, Color color); // Draw lines sequence RLAPI void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle +RLAPI void DrawCircleSector(Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color); // Draw a piece of a circle +RLAPI void DrawCircleSectorLines(Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color); // Draw circle sector outline RLAPI void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2); // Draw a gradient-filled circle RLAPI void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version) RLAPI void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline +RLAPI void DrawRing(Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color); // Draw ring +RLAPI void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color); // Draw ring outline RLAPI void DrawRectangle(int posX, int posY, int width, int height, Color color); // Draw a color-filled rectangle RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version) RLAPI void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle @@ -169,11 +194,14 @@ RLAPI void DrawRectangleGradientH(int posX, int posY, int width, int height, Col RLAPI void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // Draw a gradient-filled rectangle with custom vertex colors RLAPI void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline RLAPI void DrawRectangleLinesEx(Rectangle rec, int lineThick, Color color); // Draw rectangle outline with extended parameters +RLAPI void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges +RLAPI void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, int lineThick, Color color); // Draw rectangle with rounded edges outline RLAPI void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle RLAPI void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline +RLAPI void DrawTriangleFan(Vector2 *points, int numPoints, Color color); // Draw a triangle fan defined by points RLAPI void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version) -RLAPI void DrawPolyEx(Vector2 *points, int numPoints, Color color); // Draw a closed polygon defined by points -RLAPI void DrawPolyExLines(Vector2 *points, int numPoints, Color color); // Draw polygon lines + +RLAPI void SetShapesTexture(Texture2D texture, Rectangle source); // Define default texture used to draw shapes // Basic shapes collision detection functions RLAPI bool CheckCollisionRecs(Rectangle rec1, Rectangle rec2); // Check collision between two rectangles @@ -193,9 +221,11 @@ RLAPI Image LoadImage(const char *fileName); RLAPI Image LoadImageEx(Color *pixels, int width, int height); // Load image from Color array data (RGBA - 32bit) RLAPI Image LoadImagePro(void *data, int width, int height, int format); // Load image from raw data with parameters RLAPI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data -RLAPI void ExportImage(const char *fileName, Image image); // Export image as a PNG file +RLAPI void ExportImage(Image image, const char *fileName); // Export image data to file +RLAPI void ExportImageAsCode(Image image, const char *fileName); // Export image as code file defining an array of bytes RLAPI Texture2D LoadTexture(const char *fileName); // Load texture from file into GPU memory (VRAM) RLAPI Texture2D LoadTextureFromImage(Image image); // Load texture from image data +RLAPI TextureCubemap LoadTextureCubemap(Image image, int layoutType); // Load cubemap from image, multiple image cubemap layouts supported RLAPI RenderTexture2D LoadRenderTexture(int width, int height); // Load texture for rendering (framebuffer) RLAPI void UnloadImage(Image image); // Unload image from CPU memory (RAM) RLAPI void UnloadTexture(Texture2D texture); // Unload texture from GPU memory (VRAM) @@ -204,6 +234,7 @@ RLAPI Color *GetImageData(Image image); RLAPI Vector4 *GetImageDataNormalized(Image image); // Get pixel data from image as Vector4 array (float normalized) RLAPI int GetPixelDataSize(int width, int height, int format); // Get pixel data size in bytes (image or texture) RLAPI Image GetTextureData(Texture2D texture); // Get pixel data from GPU texture and return an Image +RLAPI Image GetScreenData(void); // Get pixel data from screen buffer and return an Image (screenshot) RLAPI void UpdateTexture(Texture2D texture, const void *pixels); // Update GPU texture with new data // Image manipulation functions @@ -215,15 +246,17 @@ RLAPI void ImageAlphaClear(Image *image, Color color, float threshold); RLAPI void ImageAlphaCrop(Image *image, float threshold); // Crop image depending on alpha value RLAPI void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel RLAPI void ImageCrop(Image *image, Rectangle crop); // Crop an image to a defined rectangle -RLAPI void ImageResize(Image *image, int newWidth, int newHeight); // Resize and image (bilinear filtering) -RLAPI void ImageResizeNN(Image *image,int newWidth,int newHeight); // Resize and image (Nearest-Neighbor scaling algorithm) +RLAPI void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm) +RLAPI void ImageResizeNN(Image *image, int newWidth,int newHeight); // Resize image (Nearest-Neighbor scaling algorithm) RLAPI void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color color); // Resize canvas and fill with color RLAPI void ImageMipmaps(Image *image); // Generate all mipmap levels for a provided image RLAPI void ImageDither(Image *image, int rBpp, int gBpp, int bBpp, int aBpp); // Dither image data to 16bpp or lower (Floyd-Steinberg dithering) +RLAPI Color *ImageExtractPalette(Image image, int maxPaletteSize, int *extractCount); // Extract color palette from image to maximum size (memory should be freed) RLAPI Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font) RLAPI Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font) RLAPI void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec); // Draw a source image within a destination image -RLAPI void ImageDrawRectangle(Image *dst, Vector2 position, Rectangle rec, Color color); // Draw rectangle within an image +RLAPI void ImageDrawRectangle(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image +RLAPI void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image RLAPI void ImageDrawText(Image *dst, Vector2 position, const char *text, int fontSize, Color color); // Draw text (default font) within an image (destination) RLAPI void ImageDrawTextEx(Image *dst, Vector2 position, Font font, const char *text, float fontSize, float spacing, Color color); // Draw text (custom sprite font) within an image (destination) RLAPI void ImageFlipVertical(Image *image); // Flip image vertically @@ -257,8 +290,9 @@ RLAPI void DrawTexture(Texture2D texture, int posX, int posY, Color tint); RLAPI void DrawTextureV(Texture2D texture, Vector2 position, Color tint); // Draw a Texture2D with position defined as Vector2 RLAPI void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint); // Draw a Texture2D with extended parameters RLAPI void DrawTextureRec(Texture2D texture, Rectangle sourceRec, Vector2 position, Color tint); // Draw a part of a texture defined by a rectangle -RLAPI 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 - +RLAPI void DrawTextureQuad(Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint); // Draw texture quad with tiling and offset parameters +RLAPI 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 +RLAPI 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) @@ -267,22 +301,43 @@ RLAPI void DrawTexturePro(Texture2D texture, Rectangle sourceRec, Rectangle dest // Font loading/unloading functions RLAPI Font GetFontDefault(void); // Get the default Font RLAPI Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM) -RLAPI Font LoadFontEx(const char *fileName, int fontSize, int charsCount, int *fontChars); // Load font from file with extended parameters -RLAPI CharInfo *LoadFontData(const char *fileName, int fontSize, int *fontChars, int charsCount, bool sdf); // Load font data for further use -RLAPI Image GenImageFontAtlas(CharInfo *chars, int fontSize, int charsCount, int padding, int packMethod); // Generate image font atlas using chars info +RLAPI Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int charsCount); // Load font from file with extended parameters +RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style) +RLAPI CharInfo *LoadFontData(const char *fileName, int fontSize, int *fontChars, int charsCount, int type); // Load font data for further use +RLAPI Image GenImageFontAtlas(CharInfo *chars, int charsCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info RLAPI void UnloadFont(Font font); // Unload Font from GPU memory (VRAM) // Text drawing functions RLAPI void DrawFPS(int posX, int posY); // Shows current FPS RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) -RLAPI void DrawTextEx(Font font, const char* text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using Font and additional parameters +RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using font and additional parameters +RLAPI void DrawTextRec(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint); // Draw text using font inside rectangle limits +RLAPI void DrawTextRecEx(Font font, const char *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 RLAPI int MeasureText(const char *text, int fontSize); // Measure string width for default font RLAPI Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing); // Measure string size for Font -RLAPI const char *FormatText(const char *text, ...); // Formatting of text with variables to 'embed' -RLAPI const char *SubText(const char *text, int position, int length); // Get a piece of a text string -RLAPI int GetGlyphIndex(Font font, int character); // Returns index position for a unicode character on sprite font +RLAPI int GetGlyphIndex(Font font, int character); // Get index position for a unicode character on font +RLAPI int GetNextCodepoint(const char *text, int *count); // Returns next codepoint in a UTF8 encoded string + // NOTE: 0x3f(`?`) is returned on failure, `count` will hold the total number of bytes processed + +// Text strings management functions +// NOTE: Some strings allocate memory internally for returned strings, just be careful! +RLAPI bool TextIsEqual(const char *text1, const char *text2); // Check if two text string are equal +RLAPI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending +RLAPI unsigned int TextCountCodepoints(const char *text); // Get total number of characters (codepoints) in a UTF8 encoded string +RLAPI const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf style) +RLAPI const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string +RLAPI const char *TextReplace(char *text, const char *replace, const char *by); // Replace text string (memory should be freed!) +RLAPI const char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (memory should be freed!) +RLAPI const char *TextJoin(const char **textList, int count, const char *delimiter); // Join text strings with delimiter +RLAPI const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings +RLAPI void TextAppend(char *text, const char *append, int *position); // Append text at specific position and move cursor! +RLAPI int TextFindIndex(const char *text, const char *find); // Find first text occurrence within a string +RLAPI const char *TextToUpper(const char *text); // Get upper case version of provided string +RLAPI const char *TextToLower(const char *text); // Get lower case version of provided string +RLAPI const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string +RLAPI int TextToInteger(const char *text); // Get integer value from text (negative values not supported) //------------------------------------------------------------------------------------ // Basic 3d Shapes Drawing Functions (Module: models) @@ -294,6 +349,7 @@ RLAPI void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, floa RLAPI void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube RLAPI void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version) RLAPI void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires +RLAPI void DrawCubeWiresV(Vector3 position, Vector3 size, Color color); // Draw cube wires (Vector version) RLAPI void DrawCubeTexture(Texture2D texture, Vector3 position, float width, float height, float length, Color color); // Draw cube textured RLAPI void DrawSphere(Vector3 centerPos, float radius, Color color); // Draw sphere RLAPI void DrawSphereEx(Vector3 centerPos, float radius, int rings, int slices, Color color); // Draw sphere with extended parameters @@ -311,21 +367,30 @@ RLAPI void DrawGizmo(Vector3 position); //------------------------------------------------------------------------------------ // Model loading/unloading functions -RLAPI Model LoadModel(const char *fileName); // Load model from files (mesh and material) -RLAPI Model LoadModelFromMesh(Mesh mesh); // Load model from generated mesh +RLAPI Model LoadModel(const char *fileName); // Load model from files (meshes and materials) +RLAPI Model LoadModelFromMesh(Mesh mesh); // Load model from generated mesh (default material) RLAPI void UnloadModel(Model model); // Unload model from memory (RAM and/or VRAM) // Mesh loading/unloading functions -RLAPI Mesh LoadMesh(const char *fileName); // Load mesh from file +RLAPI Mesh *LoadMeshes(const char *fileName, int *meshCount); // Load meshes from model file +RLAPI void ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file RLAPI void UnloadMesh(Mesh *mesh); // Unload mesh from memory (RAM and/or VRAM) -RLAPI void ExportMesh(const char *fileName, Mesh mesh); // Export mesh as an OBJ file -// Mesh manipulation functions -RLAPI BoundingBox MeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits -RLAPI void MeshTangents(Mesh *mesh); // Compute mesh tangents -RLAPI void MeshBinormals(Mesh *mesh); // Compute mesh binormals +// Material loading/unloading functions +RLAPI Material *LoadMaterials(const char *fileName, int *materialCount); // Load materials from model file +RLAPI Material LoadMaterialDefault(void); // Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps) +RLAPI void UnloadMaterial(Material material); // Unload material from GPU memory (VRAM) +RLAPI void SetMaterialTexture(Material *material, int mapType, Texture2D texture); // Set texture for a material map type (MAP_DIFFUSE, MAP_SPECULAR...) +RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId); // Set material for a mesh + +// Model animations loading/unloading functions +RLAPI ModelAnimation *LoadModelAnimations(const char *fileName, int *animsCount); // Load model animations from file +RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, int frame); // Update model animation pose +RLAPI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data +RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match // Mesh generation functions +RLAPI Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh RLAPI Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions) RLAPI Mesh GenMeshCube(float width, float height, float length); // Generate cuboid mesh RLAPI Mesh GenMeshSphere(float radius, int rings, int slices); // Generate sphere mesh (standard sphere) @@ -336,10 +401,10 @@ RLAPI Mesh GenMeshKnot(float radius, float size, int radSeg, int sides); RLAPI Mesh GenMeshHeightmap(Image heightmap, Vector3 size); // Generate heightmap mesh from image data RLAPI Mesh GenMeshCubicmap(Image cubicmap, Vector3 cubeSize); // Generate cubes-based map mesh from image data -// Material loading/unloading functions -RLAPI Material LoadMaterial(const char *fileName); // Load material from file -RLAPI Material LoadMaterialDefault(void); // Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps) -RLAPI void UnloadMaterial(Material material); // Unload material from GPU memory (VRAM) +// Mesh manipulation functions +RLAPI BoundingBox MeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits +RLAPI void MeshTangents(Mesh *mesh); // Compute mesh tangents +RLAPI void MeshBinormals(Mesh *mesh); // Compute mesh binormals // Model drawing functions RLAPI void DrawModel(Model model, Vector3 position, float scale, Color tint); // Draw a model (with texture if set) @@ -376,12 +441,11 @@ RLAPI Shader GetShaderDefault(void); // Get RLAPI Texture2D GetTextureDefault(void); // Get default texture // Shader configuration functions -RLAPI int GetShaderLocation(Shader shader, const char *uniformName); // Get shader uniform location -RLAPI void SetShaderValue(Shader shader, int uniformLoc, const float *value, int size); // Set shader uniform value (float) -RLAPI void SetShaderValuei(Shader shader, int uniformLoc, const int *value, int size); // Set shader uniform value (int) -RLAPI void SetShaderValueArray(Shader shader, int uniformLoc, const float *value, int size, int count); // Set shader uniform value (array of float/vec2/vec3/vec4) -RLAPI void SetShaderValueArrayi(Shader shader, int uniformLoc, const int *value, int size, int count); // Set shader uniform value (array of int/ivec2/ivec3/ivec4) -RLAPI void SetShaderValueMatrix(Shader shader, int uniformLoc, Matrix mat); // Set shader uniform value (matrix 4x4) +RLAPI int GetShaderLocation(Shader shader, const char *uniformName); // Get shader uniform location +RLAPI void SetShaderValue(Shader shader, int uniformLoc, const void *value, int uniformType); // Set shader uniform value +RLAPI void SetShaderValueV(Shader shader, int uniformLoc, const void *value, int uniformType, int count); // Set shader uniform value vector +RLAPI void SetShaderValueMatrix(Shader shader, int uniformLoc, Matrix mat); // Set shader uniform value (matrix 4x4) +RLAPI void SetShaderValueTexture(Shader shader, int uniformLoc, Texture2D texture); // Set shader uniform value for texture RLAPI void SetMatrixProjection(Matrix proj); // Set a custom projection matrix (replaces internal projection matrix) RLAPI void SetMatrixModelview(Matrix view); // Set a custom modelview matrix (replaces internal modelview matrix) RLAPI Matrix GetMatrixModelview(); // Get internal modelview matrix @@ -391,21 +455,22 @@ RLAPI Matrix GetMatrixModelview(); // Get RLAPI Texture2D GenTextureCubemap(Shader shader, Texture2D skyHDR, int size); // Generate cubemap texture from HDR texture RLAPI Texture2D GenTextureIrradiance(Shader shader, Texture2D cubemap, int size); // Generate irradiance texture using cubemap data RLAPI Texture2D GenTexturePrefilter(Shader shader, Texture2D cubemap, int size); // Generate prefilter texture using cubemap data -RLAPI Texture2D GenTextureBRDF(Shader shader, Texture2D cubemap, int size); // Generate BRDF texture using cubemap data +RLAPI Texture2D GenTextureBRDF(Shader shader, int size); // Generate BRDF texture // Shading begin/end functions RLAPI void BeginShaderMode(Shader shader); // Begin custom shader drawing RLAPI void EndShaderMode(void); // End custom shader drawing (use default shader) RLAPI void BeginBlendMode(int mode); // Begin blending mode (alpha, additive, multiplied) RLAPI void EndBlendMode(void); // End blending mode (reset to default: alpha blending) +RLAPI void BeginScissorMode(int x, int y, int width, int height); // Begin scissor mode (define screen area for following drawing) +RLAPI void EndScissorMode(void); // End scissor mode // VR control functions -RLAPI VrDeviceInfo GetVrDeviceInfo(int vrDeviceType); // Get VR device information for some standard devices -RLAPI void InitVrSimulator(VrDeviceInfo info); // Init VR simulator for selected device parameters +RLAPI void InitVrSimulator(void); // Init VR simulator for selected device parameters RLAPI void CloseVrSimulator(void); // Close VR simulator for current device -RLAPI bool IsVrSimulatorReady(void); // Detect if VR simulator is ready -RLAPI void SetVrDistortionShader(Shader shader); // Set VR distortion shader for stereoscopic rendering RLAPI void UpdateVrTracking(Camera *camera); // Update VR tracking (position and orientation) and camera +RLAPI void SetVrConfiguration(VrDeviceInfo info, Shader distortion); // Set stereo rendering configuration parameters +RLAPI bool IsVrSimulatorReady(void); // Detect if VR simulator is ready RLAPI void ToggleVrMode(void); // Enable/Disable VR experience RLAPI void BeginVrDrawing(void); // Begin VR simulator stereo rendering RLAPI void EndVrDrawing(void); // End VR simulator stereo rendering @@ -428,6 +493,8 @@ RLAPI Sound LoadSoundFromWave(Wave wave); // Load so RLAPI void UpdateSound(Sound sound, const void *data, int samplesCount);// Update sound buffer with new data RLAPI void UnloadWave(Wave wave); // Unload wave data RLAPI void UnloadSound(Sound sound); // Unload sound +RLAPI void ExportWave(Wave wave, const char *fileName); // Export wave data to file +RLAPI void ExportWaveAsCode(Wave wave, const char *fileName); // Export wave sample data to code (.h) // Wave/Sound management functions RLAPI void PlaySound(Sound sound); // Play a sound @@ -468,4 +535,4 @@ RLAPI void ResumeAudioStream(AudioStream stream); // Resume RLAPI bool IsAudioStreamPlaying(AudioStream stream); // Check if audio stream is playing RLAPI void StopAudioStream(AudioStream stream); // Stop audio stream RLAPI void SetAudioStreamVolume(AudioStream stream, float volume); // Set volume for audio stream (1.0 is max level) -RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch); // Set pitch for audio stream (1.0 is base level)
\ No newline at end of file +RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch); // Set pitch for audio stream (1.0 is base level) |
