# HG changeset patch # User June Park # Date 1769231389 28800 # Node ID d6ab5921fedc9c8a250e6857acf1bf1df38d5b51 # Parent 8d17f6e6e290093e7550eb940d77ade8396432b1# Parent a2720eac50ced22fa2549e4a99adbc65e510f5d3 Merging in changes I had on my mac related to JSON parser and MPC endpoints. diff -r 8d17f6e6e290 -r d6ab5921fedc dowa/d_string.c --- a/dowa/d_string.c Thu Jan 22 21:23:17 2026 -0800 +++ b/dowa/d_string.c Fri Jan 23 21:09:49 2026 -0800 @@ -133,7 +133,7 @@ char *Dowa_String_Copy_Arena(char *from, Dowa_Arena *p_arena) { char *buffer = Dowa_Arena_Allocate(p_arena, sizeof(char*) * strlen(from) + 1); - if (buffer); + if (buffer) memcpy(buffer, from, strlen(from)); buffer[strlen(from)] = '\0'; return buffer; @@ -160,3 +160,253 @@ res[36] = '\0'; return res; } + +// --- JSON Parser --- // + +static void json_skip_ws(const char *json, int32 *pos, int32 len) +{ + while (*pos < len && (json[*pos] == ' ' || json[*pos] == '\t' || + json[*pos] == '\n' || json[*pos] == '\r')) + (*pos)++; +} + +static char *json_parse_str(const char *json, int32 *pos, int32 len, Dowa_Arena *arena) +{ + if (*pos >= len || json[*pos] != '"') + return NULL; + + (*pos)++; + int32 start = *pos; + + while (*pos < len && json[*pos] != '"') + (*pos)++; + + int32 slen = *pos - start; + char *str = arena ? Dowa_Arena_Allocate(arena, slen + 1) : malloc(slen + 1); + if (!str) return NULL; + + int32 j = 0; + for (int32 i = start; i < *pos; i++) + { + if (json[i] == '\\' && i + 1 < *pos) + { + i++; + switch (json[i]) + { + case 'n': str[j++] = '\n'; break; + case 't': str[j++] = '\t'; break; + case 'r': str[j++] = '\r'; break; + case '\\': str[j++] = '\\'; break; + case '"': str[j++] = '"'; break; + default: str[j++] = json[i]; break; + } + } + else + str[j++] = json[i]; + } + str[j] = '\0'; + + if (*pos < len && json[*pos] == '"') + (*pos)++; + + return str; +} + +// Forward declaration for recursion +static Dowa_JSON_Value json_parse_val(const char *json, int32 *pos, int32 len, Dowa_Arena *arena); + +static Dowa_JSON_Entry *json_parse_obj(const char *json, int32 *pos, int32 len, Dowa_Arena *arena) +{ + if (*pos >= len || json[*pos] != '{') + return NULL; + + (*pos)++; + Dowa_JSON_Entry *map = NULL; + + while (*pos < len) + { + json_skip_ws(json, pos, len); + + if (*pos >= len) break; + if (json[*pos] == '}') { (*pos)++; break; } + if (json[*pos] == ',') { (*pos)++; continue; } + + char *key = json_parse_str(json, pos, len, arena); + if (!key) break; + + json_skip_ws(json, pos, len); + if (*pos >= len || json[*pos] != ':') break; + (*pos)++; + + Dowa_JSON_Value val = json_parse_val(json, pos, len, arena); + + if (arena) + Dowa_HashMap_Push_Arena(map, key, val, arena); + else + Dowa_HashMap_Push(map, key, val); + } + + return map; +} + +static Dowa_JSON_Value *json_parse_arr(const char *json, int32 *pos, int32 len, Dowa_Arena *arena) +{ + if (*pos >= len || json[*pos] != '[') + return NULL; + + (*pos)++; + Dowa_JSON_Value *arr = NULL; + + while (*pos < len) + { + json_skip_ws(json, pos, len); + + if (*pos >= len) break; + if (json[*pos] == ']') { (*pos)++; break; } + if (json[*pos] == ',') { (*pos)++; continue; } + + Dowa_JSON_Value val = json_parse_val(json, pos, len, arena); + + if (arena) + Dowa_Array_Push_Arena(arr, val, arena); + else + Dowa_Array_Push(arr, val); + } + + return arr; +} + +static Dowa_JSON_Value json_parse_val(const char *json, int32 *pos, int32 len, Dowa_Arena *arena) +{ + Dowa_JSON_Value val = {0}; + json_skip_ws(json, pos, len); + + if (*pos >= len) + { + val.type = DOWA_JSON_NULL; + return val; + } + + char c = json[*pos]; + + // String + if (c == '"') + { + val.type = DOWA_JSON_STRING; + val.str_val = json_parse_str(json, pos, len, arena); + return val; + } + + // Object + if (c == '{') + { + val.type = DOWA_JSON_OBJECT; + val.object_val = json_parse_obj(json, pos, len, arena); + return val; + } + + // Array + if (c == '[') + { + val.type = DOWA_JSON_ARRAY; + val.array_val = json_parse_arr(json, pos, len, arena); + return val; + } + + // Number + if (c == '-' || (c >= '0' && c <= '9')) + { + val.type = DOWA_JSON_NUMBER; + int32 start = *pos; + while (*pos < len && (json[*pos] == '-' || json[*pos] == '+' || + json[*pos] == '.' || json[*pos] == 'e' || json[*pos] == 'E' || + (json[*pos] >= '0' && json[*pos] <= '9'))) + (*pos)++; + + char tmp[64]; + int32 nlen = *pos - start; + if (nlen >= 64) nlen = 63; + memcpy(tmp, &json[start], nlen); + tmp[nlen] = '\0'; + val.num_val = atof(tmp); + return val; + } + + // true + if (c == 't' && *pos + 4 <= len && memcmp(&json[*pos], "true", 4) == 0) + { + val.type = DOWA_JSON_BOOL; + val.bool_val = TRUE; + *pos += 4; + return val; + } + + // false + if (c == 'f' && *pos + 5 <= len && memcmp(&json[*pos], "false", 5) == 0) + { + val.type = DOWA_JSON_BOOL; + val.bool_val = FALSE; + *pos += 5; + return val; + } + + // null + if (c == 'n' && *pos + 4 <= len && memcmp(&json[*pos], "null", 4) == 0) + { + val.type = DOWA_JSON_NULL; + *pos += 4; + return val; + } + + val.type = DOWA_JSON_NULL; + return val; +} + +Dowa_JSON_Value Dowa_JSON_Parse(const char *json, int32 length, Dowa_Arena *p_arena) +{ + Dowa_JSON_Value val = {0}; + if (!json || length <= 0) + { + val.type = DOWA_JSON_NULL; + return val; + } + + int32 pos = 0; + return json_parse_val(json, &pos, length, p_arena); +} + +Dowa_JSON_Value *Dowa_JSON_Get(Dowa_JSON_Entry *map, const char *key) +{ + if (!map || !key) + return NULL; + + void *kv = Dowa_HashMap_Get_Ptr(map, key); + if (!kv) + return NULL; + + return &((Dowa_JSON_Entry *)kv)->value; +} + +char *Dowa_JSON_Get_String(Dowa_JSON_Entry *map, const char *key) +{ + Dowa_JSON_Value *val = Dowa_JSON_Get(map, key); + if (!val || val->type != DOWA_JSON_STRING) + return NULL; + return val->str_val; +} + +double Dowa_JSON_Get_Number(Dowa_JSON_Entry *map, const char *key) +{ + Dowa_JSON_Value *val = Dowa_JSON_Get(map, key); + if (!val || val->type != DOWA_JSON_NUMBER) + return 0.0; + return val->num_val; +} + +boolean Dowa_JSON_Get_Bool(Dowa_JSON_Entry *map, const char *key) +{ + Dowa_JSON_Value *val = Dowa_JSON_Get(map, key); + if (!val || val->type != DOWA_JSON_BOOL) + return FALSE; + return val->bool_val; +} diff -r 8d17f6e6e290 -r d6ab5921fedc dowa/dowa.h --- a/dowa/dowa.h Thu Jan 22 21:23:17 2026 -0800 +++ b/dowa/dowa.h Fri Jan 23 21:09:49 2026 -0800 @@ -206,6 +206,35 @@ DLAPI char *Dowa_String_Find_Char(const char *p_from, int c, int32 from_length); DLAPI char *Dowa_String_UUID(uint32 seed, void *buffer); +// --- JSON --- // +typedef enum { + DOWA_JSON_NULL, + DOWA_JSON_BOOL, + DOWA_JSON_NUMBER, + DOWA_JSON_STRING, + DOWA_JSON_ARRAY, + DOWA_JSON_OBJECT +} Dowa_JSON_Type; + +typedef struct Dowa_JSON_Value { + Dowa_JSON_Type type; + union { + boolean bool_val; + double num_val; + char *str_val; + struct Dowa_JSON_Value *array_val; // Dowa array of Dowa_JSON_Value + void *object_val; // Dowa_JSON_Entry* hashmap + }; +} Dowa_JSON_Value; + +typedef Dowa_KV(char*, Dowa_JSON_Value) Dowa_JSON_Entry; + +DLAPI Dowa_JSON_Value Dowa_JSON_Parse(const char *json, int32 length, Dowa_Arena *p_arena); +DLAPI Dowa_JSON_Value *Dowa_JSON_Get(Dowa_JSON_Entry *map, const char *key); +DLAPI char *Dowa_JSON_Get_String(Dowa_JSON_Entry *map, const char *key); +DLAPI double Dowa_JSON_Get_Number(Dowa_JSON_Entry *map, const char *key); +DLAPI boolean Dowa_JSON_Get_Bool(Dowa_JSON_Entry *map, const char *key); + // --- Math --- // DLAPI uint32 Dowa_Math_Random_Uint32(uint32 seed_number); diff -r 8d17f6e6e290 -r d6ab5921fedc npc/BUILD --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/npc/BUILD Fri Jan 23 21:09:49 2026 -0800 @@ -0,0 +1,7 @@ +load("@rules_cc//cc:cc_binary.bzl", "cc_binary") + +cc_binary( + name = "npc", + srcs = ["main.c"], + deps = ["//seobeo:seobeo_tcp_server"], +) diff -r 8d17f6e6e290 -r d6ab5921fedc npc/main.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/npc/main.c Fri Jan 23 21:09:49 2026 -0800 @@ -0,0 +1,146 @@ +#include "seobeo/seobeo.h" +#include +#include + +static _Atomic uint32_t counter = 0; + +static void build_response(char *out, size_t size, const char *id, const char *result) { + snprintf(out, size, "{\"jsonrpc\":\"2.0\",\"id\":%s,\"result\":%s}", id, result); +} + +static void build_error(char *out, size_t size, const char *id, int code, const char *msg) { + snprintf(out, size, + "{\"jsonrpc\":\"2.0\",\"id\":%s,\"error\":{\"code\":%d,\"message\":\"%s\"}}", + id, code, msg); +} + +static void handle_initialize(char *out, size_t size, const char *id) { + const char *result = "{" + "\"protocolVersion\":\"2024-11-05\"," + "\"capabilities\":{\"tools\":{}}," + "\"serverInfo\":{\"name\":\"simple-mcp\",\"version\":\"1.0.0\"}" + "}"; + build_response(out, size, id, result); +} + +static void handle_tools_list(char *out, size_t size, const char *id) { + const char *result = "{" + "\"tools\":[" + "{" + "\"name\":\"get_time\"," + "\"description\":\"Get current Unix timestamp\"," + "\"inputSchema\":{\"type\":\"object\",\"properties\":{}}" + "}," + "{" + "\"name\":\"get_counter\"," + "\"description\":\"Get and increment a counter\"," + "\"inputSchema\":{\"type\":\"object\",\"properties\":{}}" + "}" + "]" + "}"; + build_response(out, size, id, result); +} + +static void handle_tools_call(char *out, size_t size, const char *id, Dowa_JSON_Entry *json) { + Dowa_JSON_Value *params_val = Dowa_JSON_Get(json, "params"); + if (!params_val || params_val->type != DOWA_JSON_OBJECT) + { + build_error(out, size, id, -32602, "Missing params"); + return; + } + + Dowa_JSON_Entry *params = (Dowa_JSON_Entry *)params_val->object_val; + char *tool_name = Dowa_JSON_Get_String(params, "name"); + + if (!tool_name) { + build_error(out, size, id, -32602, "Missing tool name"); + return; + } + + char result[256]; + if (strcmp(tool_name, "get_time") == 0) { + time_t now = time(NULL); + snprintf(result, sizeof(result), + "{\"content\":[{\"type\":\"text\",\"text\":\"Current timestamp: %ld\"}]}", + (long)now); + } else if (strcmp(tool_name, "get_counter") == 0) { + uint32_t val = ++counter; + snprintf(result, sizeof(result), + "{\"content\":[{\"type\":\"text\",\"text\":\"Counter value: %u\"}]}", + val); + } else { + build_error(out, size, id, -32601, "Unknown tool"); + return; + } + + build_response(out, size, id, result); +} + +Seobeo_Request_Entry* HandleMCP(Seobeo_Request_Entry *req, Dowa_Arena *arena) +{ + Seobeo_Request_Entry *resp = NULL; + + void *body_kv = Dowa_HashMap_Get_Ptr(req, "Body"); + if (!body_kv) + { + char *err = "{\"jsonrpc\":\"2.0\",\"id\":null,\"error\":{\"code\":-32700,\"message\":\"No body\"}}"; + Dowa_HashMap_Push_Arena(resp, "status", "400", arena); + Dowa_HashMap_Push_Arena(resp, "content-type", "application/json", arena); + Dowa_HashMap_Push_Arena(resp, "body", err, arena); + return resp; + } + + const char *body = ((Seobeo_Request_Entry*)body_kv)->value; + int32 body_len = strlen(body); + + Dowa_JSON_Value parsed = Dowa_JSON_Parse(body, body_len, arena); + if (parsed.type != DOWA_JSON_OBJECT || !parsed.object_val) + { + char *err = "{\"jsonrpc\":\"2.0\",\"id\":null,\"error\":{\"code\":-32700,\"message\":\"Parse error\"}}"; + Dowa_HashMap_Push_Arena(resp, "status", "400", arena); + Dowa_HashMap_Push_Arena(resp, "content-type", "application/json", arena); + Dowa_HashMap_Push_Arena(resp, "body", err, arena); + return resp; + } + + Dowa_JSON_Entry *json = (Dowa_JSON_Entry *)parsed.object_val; + char *method = Dowa_JSON_Get_String(json, "method"); + Dowa_JSON_Value *id_val = Dowa_JSON_Get(json, "id"); + char id_buf[32] = "null"; + if (id_val) + { + if (id_val->type == DOWA_JSON_NUMBER) + snprintf(id_buf, sizeof(id_buf), "%.0f", id_val->num_val); + else if (id_val->type == DOWA_JSON_STRING) + snprintf(id_buf, sizeof(id_buf), "\"%s\"", id_val->str_val); + } + + char *response = Dowa_Arena_Allocate(arena, 2048); + + if (!method) + build_error(response, 2048, id_buf, -32600, "Missing method"); + else if (strcmp(method, "initialize") == 0) + handle_initialize(response, 2048, id_buf); + else if (strcmp(method, "tools/list") == 0) + handle_tools_list(response, 2048, id_buf); + else if (strcmp(method, "tools/call") == 0) + handle_tools_call(response, 2048, id_buf, json); + else if (strcmp(method, "notifications/initialized") == 0) + snprintf(response, 2048, "{\"jsonrpc\":\"2.0\",\"id\":%s,\"result\":{}}", id_buf); + else + build_error(response, 2048, id_buf, -32601, "Method not found"); + + Dowa_HashMap_Push_Arena(resp, "status", "200", arena); + Dowa_HashMap_Push_Arena(resp, "content-type", "application/json", arena); + Dowa_HashMap_Push_Arena(resp, "body", response, arena); + return resp; +} + +int main(void) { + Seobeo_Router_Init(); + Seobeo_Router_Register("POST", "/mcp", HandleMCP); + + Seobeo_Log(SEOBEO_INFO, "MCP server running on http://localhost:8080/mcp\n"); + Seobeo_Web_Server_Start(NULL, "8080", SEOBEO_MODE_FORK, 0); + return 0; +} diff -r 8d17f6e6e290 -r d6ab5921fedc playground/main.c --- a/playground/main.c Thu Jan 22 21:23:17 2026 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -int main() -{ - int a = 0; - a += 1; - return a; -} diff -r 8d17f6e6e290 -r d6ab5921fedc tags --- a/tags Thu Jan 22 21:23:17 2026 -0800 +++ b/tags Fri Jan 23 21:09:49 2026 -0800 @@ -127,6 +127,10 @@ AccessFlags third_party/libuv/src/win/winapi.h /^ ACCESS_MASK AccessFlags;$/;" m struct:_FILE_ACCESS_INFORMATION typeref:typename:ACCESS_MASK AccessInformation third_party/libuv/src/win/winapi.h /^ FILE_ACCESS_INFORMATION AccessInformation;$/;" m struct:_FILE_ALL_INFORMATION typeref:typename:FILE_ACCESS_INFORMATION ActualAvailableAllocationUnits third_party/libuv/src/win/winapi.h /^ LARGE_INTEGER ActualAvailableAllocationUnits;$/;" m struct:_FILE_FS_FULL_SIZE_INFORMATION typeref:typename:LARGE_INTEGER +AddPadding third_party/raylib/custom.h /^Rectangle AddPadding(Rectangle rect, float padding);$/;" p typeref:typename:Rectangle +AddPaddingAll third_party/raylib/custom.h /^Rectangle AddPaddingAll(Rectangle rect, float top, float right, float down, float left);$/;" p typeref:typename:Rectangle +AddPaddingHorizontal third_party/raylib/custom.h /^Rectangle AddPaddingHorizontal(Rectangle rect, float padding);$/;" p typeref:typename:Rectangle +AddPaddingVertical third_party/raylib/custom.h /^Rectangle AddPaddingVertical(Rectangle rect, float padding);$/;" p typeref:typename:Rectangle Address third_party/libuv/src/win/winsock.h /^ struct sockaddr* Address;$/;" m struct:_AFD_RECV_DATAGRAM_INFO typeref:struct:sockaddr * AddressLength third_party/libuv/src/win/winsock.h /^ int* AddressLength;$/;" m struct:_AFD_RECV_DATAGRAM_INFO typeref:typename:int * AfdFlags third_party/libuv/src/win/winsock.h /^ ULONG AfdFlags;$/;" m struct:_AFD_RECV_DATAGRAM_INFO typeref:typename:ULONG @@ -557,6 +561,7 @@ ColorNormalize third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI Vector4 ColorNormalize(Color color); \/\/ Get Color norma/;" p typeref:typename:RLAPI Vector4 ColorNormalize third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI Vector4 ColorNormalize(Color color); \/\/ Get Color norma/;" p typeref:typename:RLAPI Vector4 ColorNormalize third_party/raylib/raylib-5.5_win64/include/raylib.h /^RLAPI Vector4 ColorNormalize(Color color); \/\/ Get Color norma/;" p typeref:typename:RLAPI Vector4 +ColorScheme third_party/raylib/custom.h /^} ColorScheme;$/;" t typeref:struct:__anon7f8247c10108 ColorTint third_party/raylib/include/raylib.h /^RLAPI Color ColorTint(Color color, Color tint); \/\/ Get color multi/;" p typeref:typename:RLAPI Color ColorTint third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI Color ColorTint(Color color, Color tint); \/\/ Get color multi/;" p typeref:typename:RLAPI Color ColorTint third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI Color ColorTint(Color color, Color tint); \/\/ Get color multi/;" p typeref:typename:RLAPI Color @@ -674,8 +679,8 @@ DecompressData third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSi/;" p typeref:typename:RLAPI unsigned char * DecompressData third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSi/;" p typeref:typename:RLAPI unsigned char * DecompressData third_party/raylib/raylib-5.5_win64/include/raylib.h /^RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSi/;" p typeref:typename:RLAPI unsigned char * -DecreaseFontSize third_party/raylib/custom.h /^void DecreaseFontSize();$/;" p typeref:typename:void -DefaultBehaviours third_party/raylib/custom.h /^void DefaultBehaviours();$/;" p typeref:typename:void +DecreaseFontSize third_party/raylib/custom.h /^void DecreaseFontSize(void);$/;" p typeref:typename:void +DefaultBehaviours third_party/raylib/custom.h /^void DefaultBehaviours(void);$/;" p typeref:typename:void DefaultQuotaLimit third_party/libuv/src/win/winapi.h /^ LARGE_INTEGER DefaultQuotaLimit;$/;" m struct:_FILE_FS_CONTROL_INFORMATION typeref:typename:LARGE_INTEGER DefaultQuotaThreshold third_party/libuv/src/win/winapi.h /^ LARGE_INTEGER DefaultQuotaThreshold;$/;" m struct:_FILE_FS_CONTROL_INFORMATION typeref:typename:LARGE_INTEGER Deita_Column_Type deita/deita.h /^} Deita_Column_Type;$/;" t typeref:enum:__anonce31f2d80203 @@ -1012,6 +1017,8 @@ DrawRectangleRoundedLinesEx third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineT/;" p typeref:typename:RLAPI void DrawRectangleRoundedLinesEx third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineT/;" p typeref:typename:RLAPI void DrawRectangleRoundedLinesEx third_party/raylib/raylib-5.5_win64/include/raylib.h /^RLAPI void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineT/;" p typeref:typename:RLAPI void +DrawRectangleSelectiveRounded third_party/raylib/custom.h /^void DrawRectangleSelectiveRounded(Rectangle rec, float radius, int segments, Color color,$/;" p typeref:typename:void +DrawRectangleSelectiveRoundedLines third_party/raylib/custom.h /^void DrawRectangleSelectiveRoundedLines(Rectangle rec, float radius, int segments, Color color,$/;" p typeref:typename:void DrawRectangleV third_party/raylib/include/raylib.h /^RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); /;" p typeref:typename:RLAPI void DrawRectangleV third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); /;" p typeref:typename:RLAPI void DrawRectangleV third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); /;" p typeref:typename:RLAPI void @@ -1147,6 +1154,7 @@ DriverInPath third_party/libuv/src/win/winapi.h /^ BOOLEAN DriverInPath;$/;" m struct:_FILE_FS_DRIVER_PATH_INFORMATION typeref:typename:BOOLEAN DriverName third_party/libuv/src/win/winapi.h /^ WCHAR DriverName[1];$/;" m struct:_FILE_FS_DRIVER_PATH_INFORMATION typeref:typename:WCHAR[1] DriverNameLength third_party/libuv/src/win/winapi.h /^ ULONG DriverNameLength;$/;" m struct:_FILE_FS_DRIVER_PATH_INFORMATION typeref:typename:ULONG +DropdownTextBoxConfig third_party/raylib/custom.h /^} DropdownTextBoxConfig;$/;" t typeref:struct:__anon7f8247c10308 ENABLE_EXTENDED_FLAGS third_party/libuv/src/win/winapi.h /^# define ENABLE_EXTENDED_FLAGS /;" d ENABLE_INSERT_MODE third_party/libuv/src/win/winapi.h /^# define ENABLE_INSERT_MODE /;" d ENABLE_QUICK_EDIT_MODE third_party/libuv/src/win/winapi.h /^# define ENABLE_QUICK_EDIT_MODE /;" d @@ -3093,7 +3101,7 @@ ImageToPOT third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI void ImageToPOT(Image *image, Color fill); /;" p typeref:typename:RLAPI void ImageToPOT third_party/raylib/raylib-5.5_win64/include/raylib.h /^RLAPI void ImageToPOT(Image *image, Color fill); /;" p typeref:typename:RLAPI void InboundQuota third_party/libuv/src/win/winapi.h /^ ULONG InboundQuota;$/;" m struct:_FILE_PIPE_LOCAL_INFORMATION typeref:typename:ULONG -IncreaseFontSize third_party/raylib/custom.h /^void IncreaseFontSize();$/;" p typeref:typename:void +IncreaseFontSize third_party/raylib/custom.h /^void IncreaseFontSize(void);$/;" p typeref:typename:void IndexNumber third_party/libuv/src/win/winapi.h /^ LARGE_INTEGER IndexNumber;$/;" m struct:_FILE_INTERNAL_INFORMATION typeref:typename:LARGE_INTEGER Information third_party/libuv/src/win/winapi.h /^ ULONG_PTR Information;$/;" m struct:_IO_STATUS_BLOCK typeref:typename:ULONG_PTR InheritedFromUniqueProcessId third_party/libuv/src/win/winapi.h /^ ULONG_PTR InheritedFromUniqueProcessId;$/;" m struct:_PROCESS_BASIC_INFORMATION typeref:typename:ULONG_PTR @@ -4719,6 +4727,15 @@ PollInputEvents third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI void PollInputEvents(void); \/\/ Register all input events$/;" p typeref:typename:RLAPI void PollInputEvents third_party/raylib/raylib-5.5_win64/include/raylib.h /^RLAPI void PollInputEvents(void); \/\/ Register all input events$/;" p typeref:typename:RLAPI void PositionInformation third_party/libuv/src/win/winapi.h /^ FILE_POSITION_INFORMATION PositionInformation;$/;" m struct:_FILE_ALL_INFORMATION typeref:typename:FILE_POSITION_INFORMATION +PostDog_DarkColorScheme third_party/raylib/custom.h /^ColorScheme PostDog_DarkColorScheme(void);$/;" p typeref:typename:ColorScheme +PostDog_DefaultColorScheme third_party/raylib/custom.h /^ColorScheme PostDog_DefaultColorScheme(void);$/;" p typeref:typename:ColorScheme +PostDog_DropdownTextBox third_party/raylib/custom.h /^boolean PostDog_DropdownTextBox(Rectangle bounds, DropdownTextBoxConfig config);$/;" p typeref:typename:boolean +PostDog_InitColorScheme third_party/raylib/custom.h /^void PostDog_InitColorScheme(void);$/;" p typeref:typename:void +PostDog_SetColorScheme third_party/raylib/custom.h /^void PostDog_SetColorScheme(ColorScheme scheme);$/;" p typeref:typename:void +PostDog_SplitPanel third_party/raylib/custom.h /^void PostDog_SplitPanel(Rectangle bounds, SplitPanelConfig config,$/;" p typeref:typename:void +PostDog_SplitPanelDraw third_party/raylib/custom.h /^void PostDog_SplitPanelDraw(Rectangle bounds, SplitPanelConfig config);$/;" p typeref:typename:void +PostDog_TabBar third_party/raylib/custom.h /^boolean PostDog_TabBar(Rectangle bounds, TabConfig config);$/;" p typeref:typename:boolean +PostDog_TabBarSimple third_party/raylib/custom.h /^boolean PostDog_TabBarSimple(Rectangle bounds, const char **labels, int count, int *active_tab);$/;" p typeref:typename:boolean PrintNameLength third_party/libuv/src/win/winapi.h /^ USHORT PrintNameLength;$/;" m struct:_REPARSE_DATA_BUFFER::__anon941c3301010a::__anon941c33010208 typeref:typename:USHORT PrintNameLength third_party/libuv/src/win/winapi.h /^ USHORT PrintNameLength;$/;" m struct:_REPARSE_DATA_BUFFER::__anon941c3301010a::__anon941c33010308 typeref:typename:USHORT PrintNameOffset third_party/libuv/src/win/winapi.h /^ USHORT PrintNameOffset;$/;" m struct:_REPARSE_DATA_BUFFER::__anon941c3301010a::__anon941c33010208 typeref:typename:USHORT @@ -7423,6 +7440,7 @@ Seobeo_WebSocket_Close seobeo/seobeo_internal.h /^extern int32 Seobeo_WebSocket_Close(Seobeo_WebSocket *p_ws, uint16 code, con/;" p typeref:typename:int32 Seobeo_WebSocket_Connect seobeo/seobeo.h /^extern Seobeo_WebSocket *Seobeo_WebSocket_Connect(const char *url);$/;" p typeref:typename:Seobeo_WebSocket * Seobeo_WebSocket_Connect seobeo/seobeo_internal.h /^extern Seobeo_WebSocket *Seobeo_WebSocket_Connect(const char *url);$/;" p typeref:typename:Seobeo_WebSocket * +Seobeo_WebSocket_Connect_With_Headers seobeo/seobeo.h /^extern Seobeo_WebSocket *Seobeo_WebSocket_Connect_With_Headers(const char *url, const ch/;" p typeref:typename:Seobeo_WebSocket * Seobeo_WebSocket_Destroy seobeo/seobeo.h /^extern void Seobeo_WebSocket_Destroy(Seobeo_WebSocket *p_ws);$/;" p typeref:typename:void Seobeo_WebSocket_Destroy seobeo/seobeo_internal.h /^extern void Seobeo_WebSocket_Destroy(Seobeo_WebSocket *p_ws);$/;" p typeref:typename:void Seobeo_WebSocket_Mask_Data seobeo/seobeo_internal.h /^extern void Seobeo_WebSocket_Mask_Data(uint8 *data, size_t length, const ui/;" p typeref:typename:void @@ -7724,6 +7742,7 @@ Sound third_party/raylib/raylib-5.5_macos/include/raylib.h /^} Sound;$/;" t typeref:struct:Sound Sound third_party/raylib/raylib-5.5_win64/include/raylib.h /^typedef struct Sound {$/;" s Sound third_party/raylib/raylib-5.5_win64/include/raylib.h /^} Sound;$/;" t typeref:struct:Sound +SplitPanelConfig third_party/raylib/custom.h /^} SplitPanelConfig;$/;" t typeref:struct:__anon7f8247c10408 StandardInformation third_party/libuv/src/win/winapi.h /^ FILE_STANDARD_INFORMATION StandardInformation;$/;" m struct:_FILE_ALL_INFORMATION typeref:typename:FILE_STANDARD_INFORMATION StartAutomationEventRecording third_party/raylib/include/raylib.h /^RLAPI void StartAutomationEventRecording(void); \/\/ Sta/;" p typeref:typename:RLAPI void StartAutomationEventRecording third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI void StartAutomationEventRecording(void); \/\/ Sta/;" p typeref:typename:RLAPI void @@ -7878,6 +7897,7 @@ TRACELOGD third_party/raylib/raylib-5.5_macos/include/rlgl.h /^ #define TRACELOGD(/;" d TRACELOGD third_party/raylib/raylib-5.5_win64/include/rlgl.h /^ #define TRACELOGD(/;" d TRUE dowa/dowa.h /^#define TRUE /;" d +TabConfig third_party/raylib/custom.h /^} TabConfig;$/;" t typeref:struct:__anon7f8247c10208 TakeScreenshot third_party/raylib/include/raylib.h /^RLAPI void TakeScreenshot(const char *fileName); \/\/ Takes a screenshot of cur/;" p typeref:typename:RLAPI void TakeScreenshot third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^RLAPI void TakeScreenshot(const char *fileName); \/\/ Takes a screenshot of cur/;" p typeref:typename:RLAPI void TakeScreenshot third_party/raylib/raylib-5.5_macos/include/raylib.h /^RLAPI void TakeScreenshot(const char *fileName); \/\/ Takes a screenshot of cur/;" p typeref:typename:RLAPI void @@ -9174,6 +9194,7 @@ Vector4Zeros third_party/raylib/raylib-5.5_linux_amd64/include/raymath.h /^static constexpr Vector4 Vector4Zeros = { 0, 0, 0, 0 };$/;" v typeref:typename:constexpr Vector4 Vector4Zeros third_party/raylib/raylib-5.5_macos/include/raymath.h /^static constexpr Vector4 Vector4Zeros = { 0, 0, 0, 0 };$/;" v typeref:typename:constexpr Vector4 Vector4Zeros third_party/raylib/raylib-5.5_win64/include/raymath.h /^static constexpr Vector4 Vector4Zeros = { 0, 0, 0, 0 };$/;" v typeref:typename:constexpr Vector4 +VerticalSplit third_party/raylib/custom.h /^Rectangle VerticalSplit(Rectangle container, float ratio);$/;" p typeref:typename:Rectangle VolumeCreationTime third_party/libuv/src/win/winapi.h /^ LARGE_INTEGER VolumeCreationTime;$/;" m struct:_FILE_FS_VOLUME_INFORMATION typeref:typename:LARGE_INTEGER VolumeLabel third_party/libuv/src/win/winapi.h /^ WCHAR VolumeLabel[1];$/;" m struct:_FILE_FS_VOLUME_INFORMATION typeref:typename:WCHAR[1] VolumeLabel third_party/libuv/src/win/winapi.h /^ WCHAR VolumeLabel[1];$/;" m struct:_FILE_FS_LABEL_INFORMATION typeref:typename:WCHAR[1] @@ -9397,6 +9418,10 @@ __anon7f1219f40408 dowa/stb_ds.h /^{$/;" s __anon7f1219f40508 dowa/stb_ds.h /^typedef struct { int key,b,c,d; } stbds_struct;$/;" s __anon7f1219f40608 dowa/stb_ds.h /^typedef struct { int key[2],b,c,d; } stbds_struct2;$/;" s +__anon7f8247c10108 third_party/raylib/custom.h /^typedef struct {$/;" s +__anon7f8247c10208 third_party/raylib/custom.h /^typedef struct {$/;" s +__anon7f8247c10308 third_party/raylib/custom.h /^typedef struct {$/;" s +__anon7f8247c10408 third_party/raylib/custom.h /^typedef struct {$/;" s __anon82503da00108 dowa/dowa.h /^typedef struct {$/;" s __anon82503da00203 dowa/dowa.h /^typedef enum {$/;" g __anon82503da00308 dowa/dowa.h /^typedef struct {$/;" s @@ -9577,8 +9602,11 @@ activeTextureId third_party/raylib/raylib-5.5_linux_amd64/include/rlgl.h /^ unsigned int activeTextureId[RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS]; \/\/ Active texture/;" m struct:rlglData::__anon0cdf4ceb0d08 typeref:typename:unsigned int[] activeTextureId third_party/raylib/raylib-5.5_macos/include/rlgl.h /^ unsigned int activeTextureId[RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS]; \/\/ Active texture/;" m struct:rlglData::__anon96c0c2130d08 typeref:typename:unsigned int[] activeTextureId third_party/raylib/raylib-5.5_win64/include/rlgl.h /^ unsigned int activeTextureId[RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS]; \/\/ Active texture/;" m struct:rlglData::__anon9e7796b80d08 typeref:typename:unsigned int[] +active_color third_party/raylib/custom.h /^ Color active_color; \/\/ Color for active tab$/;" m struct:__anon7f8247c10208 typeref:typename:Color active_handles third_party/libuv/include/uv.h /^ unsigned int active_handles;$/;" m struct:uv_loop_s typeref:typename:unsigned int active_reqs third_party/libuv/include/uv.h /^ } active_reqs;$/;" m struct:uv_loop_s typeref:union:uv_loop_s::__anon4de24c23190a +active_tab third_party/raylib/custom.h /^ int *active_tab; \/\/ Pointer to active tab index$/;" m struct:__anon7f8247c10208 typeref:typename:int * +active_text_color third_party/raylib/custom.h /^ Color active_text_color; \/\/ Text color for active tab$/;" m struct:__anon7f8247c10208 typeref:typename:Color addr third_party/libuv/src/unix/internal.h /^ struct sockaddr addr;$/;" m union:uv__sockaddr typeref:struct:sockaddr address third_party/libuv/include/uv.h /^ } address;$/;" m struct:uv_interface_address_s typeref:union:uv_interface_address_s::__anon4de24c23120a address4 third_party/libuv/include/uv.h /^ struct sockaddr_in address4;$/;" m union:uv_interface_address_s::__anon4de24c23120a typeref:struct:sockaddr_in @@ -9636,6 +9664,8 @@ b third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ unsigned char b; \/\/ Color blue value$/;" m struct:Color typeref:typename:unsigned char b third_party/raylib/raylib-5.5_macos/include/raylib.h /^ unsigned char b; \/\/ Color blue value$/;" m struct:Color typeref:typename:unsigned char b third_party/raylib/raylib-5.5_win64/include/raylib.h /^ unsigned char b; \/\/ Color blue value$/;" m struct:Color typeref:typename:unsigned char +background third_party/raylib/custom.h /^ Color background; \/\/ Main background (White)$/;" m struct:__anon7f8247c10108 typeref:typename:Color +background_color third_party/raylib/custom.h /^ Color background_color;$/;" m struct:__anon7f8247c10308 typeref:typename:Color base third_party/libuv/include/uv/unix.h /^ char* base;$/;" m struct:uv_buf_t typeref:typename:char * base third_party/libuv/include/uv/win.h /^ char* base;$/;" m struct:uv_buf_t typeref:typename:char * baseSize third_party/raylib/include/raygui.h /^ int baseSize; \/\/ Base size (default chars height)$/;" m struct:Font typeref:typename:int @@ -9686,6 +9716,9 @@ bones third_party/raylib/raylib-5.5_win64/include/raylib.h /^ BoneInfo *bones; \/\/ Bones information (skeleton)$/;" m struct:Model typeref:typename:BoneInfo * bones third_party/raylib/raylib-5.5_win64/include/raylib.h /^ BoneInfo *bones; \/\/ Bones information (skeleton)$/;" m struct:ModelAnimation typeref:typename:BoneInfo * boolean dowa/dowa.h /^typedef char boolean;$/;" t typeref:typename:char +border third_party/raylib/custom.h /^ Color border; \/\/ Border color$/;" m struct:__anon7f8247c10108 typeref:typename:Color +border_color third_party/raylib/custom.h /^ Color border_color;$/;" m struct:__anon7f8247c10308 typeref:typename:Color +border_color third_party/raylib/custom.h /^ Color border_color;$/;" m struct:__anon7f8247c10408 typeref:typename:Color bottom third_party/raylib/include/raylib.h /^ int bottom; \/\/ Bottom border offset$/;" m struct:NPatchInfo typeref:typename:int bottom third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ int bottom; \/\/ Bottom border offset$/;" m struct:NPatchInfo typeref:typename:int bottom third_party/raylib/raylib-5.5_macos/include/raylib.h /^ int bottom; \/\/ Bottom border offset$/;" m struct:NPatchInfo typeref:typename:int @@ -9782,7 +9815,11 @@ container_of third_party/libuv/test/task.h /^#define container_of(/;" d content seobeo/seobeo_internal.h /^ char *content;$/;" m struct:__anon7a4da8400308 typeref:typename:char * controlId third_party/raylib/include/raygui.h /^ unsigned short controlId; \/\/ Control identifier$/;" m struct:GuiStyleProp typeref:typename:unsigned short +corner_radius third_party/raylib/custom.h /^ float corner_radius; \/\/ Corner radius for rounded tabs$/;" m struct:__anon7f8247c10208 typeref:typename:float +corner_radius third_party/raylib/custom.h /^ float corner_radius;$/;" m struct:__anon7f8247c10308 typeref:typename:float +corner_radius third_party/raylib/custom.h /^ float corner_radius;$/;" m struct:__anon7f8247c10408 typeref:typename:float count third_party/libuv/include/uv.h /^ unsigned int count;$/;" m union:uv_loop_s::__anon4de24c23190a typeref:typename:unsigned int +count third_party/raylib/custom.h /^ int count; \/\/ Number of tabs$/;" m struct:__anon7f8247c10208 typeref:typename:int count third_party/raylib/include/raylib.h /^ unsigned int count; \/\/ Events entries count$/;" m struct:AutomationEventList typeref:typename:unsigned int count third_party/raylib/include/raylib.h /^ unsigned int count; \/\/ Filepaths entries count$/;" m struct:FilePathList typeref:typename:unsigned int count third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ unsigned int count; \/\/ Events entries count$/;" m struct:AutomationEventList typeref:typename:unsigned int @@ -9927,6 +9964,7 @@ done third_party/libuv/include/uv/threadpool.h /^ void (*done)(struct uv__work *w, int status);$/;" m struct:uv__work typeref:typename:void (*)(struct uv__work * w,int status) dowa/dowa.h deita/deita.h /^#include "dowa\/dowa.h"/;" h dowa/dowa.h seobeo/seobeo_internal.h /^#include "dowa\/dowa.h"/;" h +dowa/dowa.h third_party/raylib/custom.h /^#include "dowa\/dowa.h"/;" h dowa__array_free dowa/dowa.h /^DLAPI void dowa__array_free(void *p_array);$/;" p typeref:typename:DLAPI void dowa__array_grow dowa/dowa.h /^DLAPI void *dowa__array_grow(void *p_array, size_t element_size, size_t minimum_capacity, Dowa_A/;" p typeref:typename:DLAPI void * dowa__hash_bytes dowa/dowa.h /^DLAPI uint32 dowa__hash_bytes(void *p_key, size_t key_size);$/;" p typeref:typename:DLAPI uint32 @@ -9950,6 +9988,10 @@ draws third_party/raylib/raylib-5.5_linux_amd64/include/rlgl.h /^ rlDrawCall *draws; \/\/ Draw calls array, depends on textureId$/;" m struct:rlRenderBatch typeref:typename:rlDrawCall * draws third_party/raylib/raylib-5.5_macos/include/rlgl.h /^ rlDrawCall *draws; \/\/ Draw calls array, depends on textureId$/;" m struct:rlRenderBatch typeref:typename:rlDrawCall * draws third_party/raylib/raylib-5.5_win64/include/rlgl.h /^ rlDrawCall *draws; \/\/ Draw calls array, depends on textureId$/;" m struct:rlRenderBatch typeref:typename:rlDrawCall * +dropdown_active third_party/raylib/custom.h /^ int *dropdown_active; \/\/ Pointer to active dropdown index$/;" m struct:__anon7f8247c10308 typeref:typename:int * +dropdown_edit_mode third_party/raylib/custom.h /^ boolean *dropdown_edit_mode; \/\/ Pointer to dropdown edit mode state$/;" m struct:__anon7f8247c10308 typeref:typename:boolean * +dropdown_items third_party/raylib/custom.h /^ const char *dropdown_items; \/\/ Semicolon-separated items: "GET;POST;PUT;DELETE"$/;" m struct:__anon7f8247c10308 typeref:typename:const char * +dropdown_width third_party/raylib/custom.h /^ float dropdown_width; \/\/ Width of dropdown (ratio 0.0-1.0 or absolute if > 1.0)$/;" m struct:__anon7f8247c10308 typeref:typename:float elementCount third_party/raylib/include/rlgl.h /^ int elementCount; \/\/ Number of elements in the buffer (QUADS)$/;" m struct:rlVertexBuffer typeref:typename:int elementCount third_party/raylib/raylib-5.5_linux_amd64/include/rlgl.h /^ int elementCount; \/\/ Number of elements in the buffer (QUADS)$/;" m struct:rlVertexBuffer typeref:typename:int elementCount third_party/raylib/raylib-5.5_macos/include/rlgl.h /^ int elementCount; \/\/ Number of elements in the buffer (QUADS)$/;" m struct:rlVertexBuffer typeref:typename:int @@ -9967,6 +10009,7 @@ errno.h seobeo/seobeo.h /^#include /;" h errno.h third_party/libuv/include/uv/errno.h /^#include /;" h errno.h third_party/libuv/src/unix/internal.h /^#include /;" h +error third_party/raylib/custom.h /^ Color error; \/\/ Error indicator$/;" m struct:__anon7f8247c10108 typeref:typename:Color events third_party/libuv/include/uv.h /^ uint64_t events;$/;" m struct:uv_metrics_s typeref:typename:uint64_t events third_party/libuv/include/uv/unix.h /^ unsigned int events; \/* Current event mask. *\/$/;" m struct:uv__io_s typeref:typename:unsigned int events third_party/libuv/src/unix/os390-syscalls.h /^ int events;$/;" m struct:epoll_event typeref:typename:int @@ -10101,6 +10144,7 @@ g third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ unsigned char g; \/\/ Color green value$/;" m struct:Color typeref:typename:unsigned char g third_party/raylib/raylib-5.5_macos/include/raylib.h /^ unsigned char g; \/\/ Color green value$/;" m struct:Color typeref:typename:unsigned char g third_party/raylib/raylib-5.5_win64/include/raylib.h /^ unsigned char g; \/\/ Color green value$/;" m struct:Color typeref:typename:unsigned char +gap third_party/raylib/custom.h /^ float gap; \/\/ Gap between panels (0 for seamless)$/;" m struct:__anon7f8247c10408 typeref:typename:float gid third_party/libuv/include/uv.h /^ unsigned long gid;$/;" m struct:uv_group_s typeref:typename:unsigned long gid third_party/libuv/include/uv.h /^ unsigned long gid;$/;" m struct:uv_passwd_s typeref:typename:unsigned long gid third_party/libuv/include/uv.h /^ uv_gid_t gid;$/;" m struct:uv_process_options_s typeref:typename:uv_gid_t @@ -10244,6 +10288,7 @@ height third_party/raylib/raylib-5.5_win64/include/raylib.h /^ float height; \/\/ Rectangle height$/;" m struct:Rectangle typeref:typename:float height third_party/raylib/raylib-5.5_win64/include/raylib.h /^ int height; \/\/ Image base height$/;" m struct:Image typeref:typename:int height third_party/raylib/raylib-5.5_win64/include/raylib.h /^ int height; \/\/ Texture base height$/;" m struct:Texture typeref:typename:int +highlight third_party/raylib/custom.h /^ Color highlight; \/\/ Highlight\/hover color$/;" m struct:__anon7f8247c10108 typeref:typename:Color hit third_party/raylib/include/raylib.h /^ bool hit; \/\/ Did the ray hit something?$/;" m struct:RayCollision typeref:typename:bool hit third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ bool hit; \/\/ Did the ray hit something?$/;" m struct:RayCollision typeref:typename:bool hit third_party/raylib/raylib-5.5_macos/include/raylib.h /^ bool hit; \/\/ Did the ray hit something?$/;" m struct:RayCollision typeref:typename:bool @@ -10294,6 +10339,7 @@ in third_party/libuv/src/unix/internal.h /^ struct sockaddr_in in;$/;" m union:uv__sockaddr typeref:struct:sockaddr_in in6 third_party/libuv/src/unix/internal.h /^ struct sockaddr_in6 in6;$/;" m union:uv__sockaddr typeref:struct:sockaddr_in6 in_flight third_party/libuv/src/uv-common.h /^ uint32_t in_flight;$/;" m struct:uv__iou typeref:typename:uint32_t +inactive_color third_party/raylib/custom.h /^ Color inactive_color; \/\/ Color for inactive tab$/;" m struct:__anon7f8247c10208 typeref:typename:Color index dowa/dowa.h /^ uint32 index[DOWA_HASH_BUCKET_SIZE];$/;" m struct:__anon82503da00408 typeref:typename:uint32[] index dowa/stb_ds.h /^ ptrdiff_t index[STBDS_BUCKET_LENGTH];$/;" m struct:__anon7f1219f40308 typeref:typename:ptrdiff_t[] indices third_party/raylib/include/raylib.h /^ unsigned short *indices; \/\/ Vertex indices (in case vertex data comes indexed)$/;" m struct:Mesh typeref:typename:unsigned short * @@ -10349,7 +10395,9 @@ is_msg third_party/libuv/src/unix/os390-syscalls.h /^ int is_msg;$/;" m struct:epoll_event typeref:typename:int is_open deita/deita_internal.h /^ boolean is_open;$/;" m struct:Deita_Connection typeref:typename:boolean itemFocused postdog/gui_window_file_dialog.h /^ int itemFocused;$/;" m struct:__anoncb6fd9740108 typeref:typename:int +item_colors third_party/raylib/custom.h /^ Color *item_colors; \/\/ Array of colors matching dropdown items count$/;" m struct:__anon7f8247c10308 typeref:typename:Color * item_count dowa/dowa.h /^ size_t item_count;$/;" m struct:__anon82503da00508 typeref:typename:size_t +item_count third_party/raylib/custom.h /^ int item_count; \/\/ Number of items (required if item_colors is set)$/;" m struct:__anon7f8247c10308 typeref:typename:int items third_party/libuv/src/unix/os390-syscalls.h /^ struct pollfd* items;$/;" m struct:__anonf6e20ee80108 typeref:struct:pollfd * kCFStringEncodingUTF8 third_party/libuv/src/unix/darwin-stub.h /^static const CFStringEncoding kCFStringEncodingUTF8 = 0x8000100;$/;" v typeref:typename:const CFStringEncoding kFSEventStreamCreateFlagFileEvents third_party/libuv/src/unix/darwin-stub.h /^static const int kFSEventStreamCreateFlagFileEvents = 16;$/;" v typeref:typename:const int @@ -10373,6 +10421,7 @@ kFSEventStreamEventIdSinceNow third_party/libuv/src/unix/darwin-stub.h /^static const FSEventStreamEventId kFSEventStreamEventIdSinceNow = -1;$/;" v typeref:typename:const FSEventStreamEventId key dowa/stb_ds.h /^typedef struct { int key,b,c,d; } stbds_struct;$/;" m struct:__anon7f1219f40508 typeref:typename:int key dowa/stb_ds.h /^typedef struct { int key[2],b,c,d; } stbds_struct2;$/;" m struct:__anon7f1219f40608 typeref:typename:int[2] +labels third_party/raylib/custom.h /^ const char **labels; \/\/ Array of tab labels$/;" m struct:__anon7f8247c10208 typeref:typename:const char ** layout third_party/raylib/include/raylib.h /^ int layout; \/\/ Layout of the n-patch: 3x3, 1x3 or 3x1$/;" m struct:NPatchInfo typeref:typename:int layout third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ int layout; \/\/ Layout of the n-patch: 3x3, 1x3 or 3x1$/;" m struct:NPatchInfo typeref:typename:int layout third_party/raylib/raylib-5.5_macos/include/raylib.h /^ int layout; \/\/ Layout of the n-patch: 3x3, 1x3 or 3x1$/;" m struct:NPatchInfo typeref:typename:int @@ -10390,6 +10439,7 @@ leftScreenCenter third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ float leftScreenCenter[2]; \/\/ VR left screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] leftScreenCenter third_party/raylib/raylib-5.5_macos/include/raylib.h /^ float leftScreenCenter[2]; \/\/ VR left screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] leftScreenCenter third_party/raylib/raylib-5.5_win64/include/raylib.h /^ float leftScreenCenter[2]; \/\/ VR left screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] +left_color third_party/raylib/custom.h /^ Color left_color;$/;" m struct:__anon7f8247c10408 typeref:typename:Color len third_party/libuv/include/uv/unix.h /^ size_t len;$/;" m struct:uv_buf_t typeref:typename:size_t len third_party/libuv/include/uv/win.h /^ ULONG len;$/;" m struct:uv_buf_t typeref:typename:ULONG length dowa/dowa.h /^ size_t length;$/;" m struct:__anon82503da00308 typeref:typename:size_t @@ -10709,6 +10759,7 @@ msg_queue third_party/libuv/src/unix/os390-syscalls.h /^ int msg_queue;$/;" m struct:__anonf6e20ee80108 typeref:typename:int mswsock.h third_party/libuv/include/uv/win.h /^#include /;" h mswsock.h third_party/libuv/src/win/winsock.h /^#include /;" h +muted third_party/raylib/custom.h /^ Color muted; \/\/ Muted\/disabled elements$/;" m struct:__anon7f8247c10108 typeref:typename:Color mutex third_party/libuv/include/uv/unix.h /^ uv_mutex_t mutex;$/;" m struct:_uv_barrier typeref:typename:uv_mutex_t mutex third_party/libuv/include/uv/win.h /^ uv_mutex_t mutex;$/;" m struct:__anond441abe00408 typeref:typename:uv_mutex_t name postdog/gui_window_file_dialog.h /^ const char *name;$/;" m struct:FileInfo typeref:typename:const char * @@ -10805,6 +10856,7 @@ pad third_party/libuv/include/uv/unix.h /^ char pad[sizeof(pthread_barrier_t) - sizeof(struct _uv_barrier*)];$/;" m struct:__anon5825c6f60108 typeref:typename:char[] pad third_party/libuv/src/unix/darwin-stub.h /^ void* pad[3];$/;" m struct:FSEventStreamContext typeref:typename:void * [3] pad third_party/libuv/src/unix/darwin-stub.h /^ void* pad[7];$/;" m struct:CFRunLoopSourceContext typeref:typename:void * [7] +padding third_party/raylib/custom.h /^ float padding; \/\/ Padding between tabs$/;" m struct:__anon7f8247c10208 typeref:typename:float padding_ third_party/libuv/include/uv/win.h /^ unsigned char padding_[44];$/;" m struct:__anond441abe00308 typeref:typename:unsigned char[44] padding_ third_party/libuv/include/uv/win.h /^ unsigned char padding_[72];$/;" m struct:__anond441abe00308 typeref:typename:unsigned char[72] panOffset postdog/gui_window_file_dialog.h /^ Vector2 panOffset;$/;" m struct:__anoncb6fd9740108 typeref:typename:Vector2 @@ -10862,6 +10914,7 @@ position third_party/raylib/raylib-5.5_win64/include/raylib.h /^ Vector3 position; \/\/ Ray position (origin)$/;" m struct:Ray typeref:typename:Vector3 prev third_party/libuv/include/uv.h /^ struct uv__queue* prev;$/;" m struct:uv__queue typeref:struct:uv__queue * prevFilesListActive postdog/gui_window_file_dialog.h /^ int prevFilesListActive;$/;" m struct:__anoncb6fd9740108 typeref:typename:int +primary third_party/raylib/custom.h /^ Color primary; \/\/ Main accent color (Orange)$/;" m struct:__anon7f8247c10108 typeref:typename:Color print_lines third_party/libuv/test/runner.h /^int print_lines(const char* buffer, size_t size, FILE* stream, int partial);$/;" p typeref:typename:int print_tests third_party/libuv/test/runner.h /^void print_tests(FILE* stream);$/;" p typeref:typename:void process third_party/libuv/test/runner-win.h /^ HANDLE process;$/;" m struct:__anon343b4fa90108 typeref:typename:HANDLE @@ -10956,6 +11009,7 @@ rightScreenCenter third_party/raylib/raylib-5.5_linux_amd64/include/raylib.h /^ float rightScreenCenter[2]; \/\/ VR right screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] rightScreenCenter third_party/raylib/raylib-5.5_macos/include/raylib.h /^ float rightScreenCenter[2]; \/\/ VR right screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] rightScreenCenter third_party/raylib/raylib-5.5_win64/include/raylib.h /^ float rightScreenCenter[2]; \/\/ VR right screen center$/;" m struct:VrStereoConfig typeref:typename:float[2] +right_color third_party/raylib/custom.h /^ Color right_color;$/;" m struct:__anon7f8247c10408 typeref:typename:Color ringfd third_party/libuv/src/uv-common.h /^ int ringfd;$/;" m struct:uv__iou typeref:typename:int rlActiveDrawBuffers third_party/raylib/include/rlgl.h /^RLAPI void rlActiveDrawBuffers(int count); \/\/ Activate multiple draw color buffer/;" p typeref:typename:RLAPI void rlActiveDrawBuffers third_party/raylib/include/rlgl.h /^void rlActiveDrawBuffers(int count)$/;" f typeref:typename:void @@ -12518,6 +12572,7 @@ scaleIn third_party/raylib/raylib-5.5_macos/include/raylib.h /^ float scaleIn[2]; \/\/ VR distortion scale in$/;" m struct:VrStereoConfig typeref:typename:float[2] scaleIn third_party/raylib/raylib-5.5_win64/include/raylib.h /^ float scaleIn[2]; \/\/ VR distortion scale in$/;" m struct:VrStereoConfig typeref:typename:float[2] scandir third_party/libuv/src/unix/os390-syscalls.h /^int scandir(const char* maindir, struct dirent*** namelist,$/;" p typeref:typename:int +secondary third_party/raylib/custom.h /^ Color secondary; \/\/ Secondary background (Beige\/Egg white)$/;" m struct:__anon7f8247c10108 typeref:typename:Color seed dowa/stb_ds.h /^ size_t seed;$/;" m struct:__anon7f1219f40408 typeref:typename:size_t selectionEnd third_party/raylib/include/raygui.h /^ int selectionEnd; \/\/ End index of selection (-1 if no selection)$/;" m struct:JUNE_TextBoxResult typeref:typename:int selectionStart third_party/raylib/include/raygui.h /^ int selectionStart; \/\/ Start index of selection (-1 if no selection)$/;" m struct:JUNE_TextBoxResult typeref:typename:int @@ -12583,6 +12638,7 @@ source third_party/raylib/raylib-5.5_macos/include/raylib.h /^ Rectangle source; \/\/ Texture source rectangle$/;" m struct:NPatchInfo typeref:typename:Rectangle source third_party/raylib/raylib-5.5_win64/include/raylib.h /^ Rectangle source; \/\/ Texture source rectangle$/;" m struct:NPatchInfo typeref:typename:Rectangle speed third_party/libuv/include/uv.h /^ int speed;$/;" m struct:uv_cpu_info_s typeref:typename:int +split_ratio third_party/raylib/custom.h /^ float split_ratio; \/\/ 0.0-1.0, ratio of left panel$/;" m struct:__anon7f8247c10408 typeref:typename:float sq third_party/libuv/src/uv-common.h /^ void* sq; \/* pointer to munmap() on event loop teardown *\/$/;" m struct:uv__iou typeref:typename:void * sqe third_party/libuv/src/uv-common.h /^ void* sqe; \/* pointer to array of struct uv__io_uring_sqe *\/$/;" m struct:uv__iou typeref:typename:void * sqelen third_party/libuv/src/uv-common.h /^ size_t sqelen;$/;" m struct:uv__iou typeref:typename:size_t @@ -12879,6 +12935,7 @@ stx_rdev_minor third_party/libuv/src/unix/internal.h /^ uint32_t stx_rdev_minor;$/;" m struct:uv__statx typeref:typename:uint32_t stx_size third_party/libuv/src/unix/internal.h /^ uint64_t stx_size;$/;" m struct:uv__statx typeref:typename:uint64_t stx_uid third_party/libuv/src/unix/internal.h /^ uint32_t stx_uid;$/;" m struct:uv__statx typeref:typename:uint32_t +success third_party/raylib/custom.h /^ Color success; \/\/ Success indicator$/;" m struct:__anon7f8247c10108 typeref:typename:Color supportDrag postdog/gui_window_file_dialog.h /^ bool supportDrag;$/;" m struct:__anoncb6fd9740108 typeref:typename:bool sys third_party/libuv/include/uv.h /^ uint64_t sys; \/* milliseconds *\/$/;" m struct:uv_cpu_times_s typeref:typename:uint64_t sys/event.h third_party/libuv/src/unix/internal.h /^#include /;" h @@ -12990,11 +13047,18 @@ texcoordy third_party/raylib/raylib-5.5_linux_amd64/include/rlgl.h /^ float texcoordx, texcoordy; \/\/ Current active texture coordinate (added on glV/;" m struct:rlglData::__anon0cdf4ceb0d08 typeref:typename:float texcoordy third_party/raylib/raylib-5.5_macos/include/rlgl.h /^ float texcoordx, texcoordy; \/\/ Current active texture coordinate (added on glV/;" m struct:rlglData::__anon96c0c2130d08 typeref:typename:float texcoordy third_party/raylib/raylib-5.5_win64/include/rlgl.h /^ float texcoordx, texcoordy; \/\/ Current active texture coordinate (added on glV/;" m struct:rlglData::__anon9e7796b80d08 typeref:typename:float +text third_party/raylib/custom.h /^ Color text; \/\/ Text color (Black)$/;" m struct:__anon7f8247c10108 typeref:typename:Color textBoxCursorIndex third_party/raylib/include/raygui.h /^static int textBoxCursorIndex = 0; \/\/ Cursor index, shared by all GuiTextBox*()$/;" v typeref:typename:int textBoxSelecting third_party/raylib/include/raygui.h /^static bool textBoxSelecting = false; \/\/ Currently selecting with mouse$/;" v typeref:typename:bool textBoxSelectionEnd third_party/raylib/include/raygui.h /^static int textBoxSelectionEnd = -1; \/\/ Selection end index (-1 if no selection)$/;" v typeref:typename:int textBoxSelectionStart third_party/raylib/include/raygui.h /^static int textBoxSelectionStart = -1; \/\/ Selection start index (-1 if no selection)$/;" v typeref:typename:int +text_buffer third_party/raylib/custom.h /^ char *text_buffer; \/\/ Text buffer for input$/;" m struct:__anon7f8247c10308 typeref:typename:char * +text_buffer_size third_party/raylib/custom.h /^ int text_buffer_size; \/\/ Size of text buffer$/;" m struct:__anon7f8247c10308 typeref:typename:int +text_color third_party/raylib/custom.h /^ Color text_color; \/\/ Text color$/;" m struct:__anon7f8247c10208 typeref:typename:Color +text_color third_party/raylib/custom.h /^ Color text_color;$/;" m struct:__anon7f8247c10308 typeref:typename:Color text_copy seobeo/seobeo_internal.h /^ void *text_copy;$/;" m struct:__anon7a4da8400208 typeref:typename:void * +text_edit_mode third_party/raylib/custom.h /^ boolean *text_edit_mode; \/\/ Pointer to text edit mode state$/;" m struct:__anon7f8247c10308 typeref:typename:boolean * +text_light third_party/raylib/custom.h /^ Color text_light; \/\/ Light text (White - for dark backgrounds)$/;" m struct:__anon7f8247c10108 typeref:typename:Color texture third_party/raylib/include/raygui.h /^ Texture2D texture; \/\/ Texture atlas containing the glyphs$/;" m struct:Font typeref:typename:Texture2D texture third_party/raylib/include/raylib.h /^ Texture texture; \/\/ Color buffer attachment texture$/;" m struct:RenderTexture typeref:typename:Texture texture third_party/raylib/include/raylib.h /^ Texture2D texture; \/\/ Material map texture$/;" m struct:MaterialMap typeref:typename:Texture2D @@ -13014,6 +13078,7 @@ textureId third_party/raylib/raylib-5.5_win64/include/rlgl.h /^ unsigned int textureId; \/\/ Texture id to be used on the draw -> Use to create new draw/;" m struct:rlDrawCall typeref:typename:unsigned int third_party/raylib/include/raygui.h postdog/gui_window_file_dialog.h /^#include "third_party\/raylib\/include\/raygui.h"/;" h third_party/raylib/include/raylib.h postdog/gui_window_file_dialog.h /^#include "third_party\/raylib\/include\/raylib.h"/;" h +third_party/raylib/include/raylib.h third_party/raylib/custom.h /^#include "third_party\/raylib\/include\/raylib.h"/;" h threshold third_party/libuv/include/uv/unix.h /^ unsigned threshold;$/;" m struct:_uv_barrier typeref:typename:unsigned threshold third_party/libuv/include/uv/win.h /^ unsigned threshold;$/;" m struct:__anond441abe00408 typeref:typename:unsigned timeout third_party/libuv/test/runner.h /^ int timeout;$/;" m struct:__anona47773ae0108 typeref:typename:int