From 9d940c1f8e4a3d38d6f3ecdf51da2990f8b2f5e2 Mon Sep 17 00:00:00 2001 From: Nic Barker <nic@nicbarker.com> Date: Tue, 4 Feb 2025 17:00:19 +1300 Subject: [PATCH] [Core] Replace config macros with a single unified configuration struct (#240) --- .github/workflows/cmake-multi-platform.yml | 3 +- README.md | 1143 ++++++++--------- bindings/odin/build-clay-lib.sh | 6 +- bindings/odin/clay-odin/clay.odin | 213 ++- bindings/odin/clay-odin/linux/clay.a | Bin 196148 -> 167596 bytes bindings/odin/clay-odin/macos-arm64/clay.a | Bin 251976 -> 252160 bytes bindings/odin/clay-odin/macos/clay.a | Bin 166144 -> 139744 bytes bindings/odin/clay-odin/wasm/clay.o | Bin 278900 -> 253760 bytes bindings/odin/clay-odin/windows/clay.lib | Bin 189024 -> 168437 bytes .../clay-official-website.odin | 397 +++--- .../clay_renderer_raylib.odin | 68 +- clay.h | 1075 +++++++++------- examples/SDL2-video-demo/CMakeLists.txt | 6 +- examples/SDL2-video-demo/main.c | 271 +--- examples/SDL3-simple-demo/CMakeLists.txt | 4 +- examples/SDL3-simple-demo/main.c | 77 +- examples/cairo-pdf-rendering/CMakeLists.txt | 5 +- examples/cairo-pdf-rendering/main.c | 102 +- examples/clay-official-website/CMakeLists.txt | 4 +- .../build/clay/index.html | 50 +- .../build/clay/index.wasm | Bin 169799 -> 111977 bytes examples/clay-official-website/index.html | 50 +- examples/clay-official-website/main.c | 269 ++-- examples/cpp-project-example/CMakeLists.txt | 4 +- examples/cpp-project-example/main.cpp | 2 +- .../CMakeLists.txt | 4 +- examples/introducing-clay-video-demo/main.c | 271 +--- examples/raylib-multi-context/CMakeLists.txt | 2 +- examples/raylib-multi-context/main.c | 236 +--- .../CMakeLists.txt | 4 +- .../raylib-sidebar-scrolling-container/main.c | 130 +- .../multi-compilation-unit.c | 6 +- examples/shared-layouts/clay-video-demo.c | 266 ++++ renderers/SDL2/clay_renderer_SDL2.c | 51 +- renderers/SDL3/clay_renderer_SDL3.c | 47 +- renderers/cairo/clay_renderer_cairo.c | 72 +- renderers/raylib/clay_renderer_raylib.c | 77 +- 37 files changed, 2261 insertions(+), 2654 deletions(-) create mode 100644 examples/shared-layouts/clay-video-demo.c diff --git a/.github/workflows/cmake-multi-platform.yml b/.github/workflows/cmake-multi-platform.yml index 9d13830..59b252b 100644 --- a/.github/workflows/cmake-multi-platform.yml +++ b/.github/workflows/cmake-multi-platform.yml @@ -62,7 +62,8 @@ jobs: - name: Install Dependencies if: runner.os == 'Linux' - run: | + run: | + DEBIAN_FRONTEND=noninteractive sudo apt-get update -y DEBIAN_FRONTEND=noninteractive sudo apt-get install -y git DEBIAN_FRONTEND=noninteractive sudo apt-get install -y libwayland-dev DEBIAN_FRONTEND=noninteractive sudo apt-get install -y pkg-config diff --git a/README.md b/README.md index abecac9..8e1c334 100644 --- a/README.md +++ b/README.md @@ -50,13 +50,18 @@ static inline Clay_Dimensions MeasureText(Clay_StringSlice text, Clay_TextElemen } // Layout config is just a struct that can be declared statically, or inline -Clay_LayoutConfig sidebarItemLayout = (Clay_LayoutConfig) { - .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }, +Clay_ElementDeclaration sidebarItemConfig = (Clay_ElementDeclaration) { + .layout = { + .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) } + }, + .backgroundColor = COLOR_ORANGE }; // Re-useable components are just normal functions void SidebarItemComponent() { - CLAY(CLAY_LAYOUT(sidebarItemLayout), CLAY_RECTANGLE({ .color = COLOR_ORANGE })) {} + CLAY(sidebarItemConfig) { + // children go here... + } } int main() { @@ -65,6 +70,7 @@ int main() { uint64_t totalMemorySize = Clay_MinMemorySize(); Clay_Arena arena = Clay_CreateArenaWithCapacityAndMemory(totalMemorySize, malloc(totalMemorySize)); + // Note: screenWidth and screenHeight will need to come from your environment, Clay doesn't handle window related tasks Clay_Initialize(arena, (Clay_Dimensions) { screenWidth, screenHeight }, (Clay_ErrorHandler) { HandleClayErrors }); while(renderLoop()) { // Will be different for each renderer / environment @@ -79,13 +85,14 @@ int main() { Clay_BeginLayout(); // An example of laying out a UI with a fixed width sidebar and flexible width main content - CLAY(CLAY_ID("OuterContainer"), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .padding = CLAY_PADDING_ALL(16), .childGap = 16 }), CLAY_RECTANGLE({ .color = {250,250,255,255} })) { - CLAY(CLAY_ID("SideBar"), - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16 }), - CLAY_RECTANGLE({ .color = COLOR_LIGHT }) + CLAY({ .id = CLAY_ID("OuterContainer"), .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .padding = CLAY_PADDING_ALL(16), .childGap = 16 }, .backgroundColor = {250,250,255,255} }) { + CLAY({ + .id = CLAY_ID("SideBar"), + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16 }, + .backgroundColor = COLOR_LIGHT } ) { - CLAY(CLAY_ID("ProfilePictureOuter"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }), CLAY_RECTANGLE({ .color = COLOR_RED })) { - CLAY(CLAY_ID("ProfilePicture"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {60, 60} })) {} + CLAY({ .id = CLAY_ID("ProfilePictureOuter"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }, .backgroundColor = COLOR_RED }) { + CLAY({ .id = CLAY_ID("ProfilePicture"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {60, 60} } }) {} CLAY_TEXT(CLAY_STRING("Clay - UI Library"), CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {255, 255, 255, 255} })); } @@ -94,7 +101,7 @@ int main() { SidebarItemComponent(); } - CLAY(CLAY_ID("MainContent"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) }}), CLAY_RECTANGLE({ .color = COLOR_LIGHT })) {} + CLAY({ .id = CLAY_ID("MainContent"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) } }, .backgroundColor = COLOR_LIGHT }) {} } // All clay layouts are declared between Clay_BeginLayout and Clay_EndLayout @@ -108,7 +115,7 @@ int main() { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { DrawRectangle( renderCommand->boundingBox, - renderCommand->config.rectangleElementConfig->color); + renderCommand->renderData.rectangle.backgroundColor); } // ... Implement handling of other command types } @@ -196,33 +203,33 @@ For help starting out or to discuss clay, considering joining [the discord serve ## High Level Documentation ### Building UI Hierarchies -Clay UIs are built using the C macro `CLAY()`. This macro creates a new empty element in the UI hierarchy, and supports modular customisation of layout, styling and functionality. The `CLAY()` macro can also be _nested_, similar to other declarative UI systems like HTML. +Clay UIs are built using the C macro `CLAY({ configuration })`. This macro creates a new empty element in the UI hierarchy, and supports modular customisation of layout, styling and functionality. The `CLAY()` macro can also be _nested_, similar to other declarative UI systems like HTML. Child elements are added by opening a block: `{}` after calling the `CLAY()` macro (exactly like you would with an `if` statement or `for` loop), and declaring child components inside the braces. ```C // Parent element with 8px of padding -CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(8) })) { +CLAY({ .layout = { .padding = CLAY_PADDING_ALL(8) } }) { // Child element 1 CLAY_TEXT(CLAY_STRING("Hello World"), CLAY_TEXT_CONFIG({ .fontSize = 16 })); // Child element 2 with red background - CLAY(CLAY_RECTANGLE({ .color = COLOR_RED })) { + CLAY({ .backgroundColor = COLOR_RED }) { // etc } } ``` -However, unlike HTML and other declarative DSLs, these macros are just C. As a result, you can use arbitrary C code such as loops, functions and conditions inside your layout declaration code: +However, unlike HTML and other declarative DSLs, this macro is just C. As a result, you can use arbitrary C code such as loops, functions and conditions inside your layout declaration code: ```C // Re-usable "components" are just functions that declare more UI void ButtonComponent(Clay_String buttonText) { // Red box button with 8px of padding - CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(8)}), CLAY_RECTANGLE({ .color = COLOR_RED })) { + CLAY({ .layout = { .padding = CLAY_PADDING_ALL(8) }, .backgroundColor = COLOR_RED }) { CLAY_TEXT(buttonText, textConfig); } } // Parent element -CLAY(CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM })) { +CLAY({ .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // Render a bunch of text elements for (int i = 0; i < textArray.length; i++) { CLAY_TEXT(textArray.elements[i], textConfig); @@ -240,33 +247,37 @@ CLAY(CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM })) { ``` ### Configuring Layout and Styling UI Elements -The layout of clay elements is configured with the `CLAY_LAYOUT()` macro. +The layout and style of clay elements is configured with the [Clay_ElementDeclaration](#clay_elementdeclaration) struct passed to the `CLAY()` macro. ```C -CLAY(CLAY_LAYOUT({ .padding = { 8, 8, 8, 8 }, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { +CLAY({ .layout = { .padding = { 8, 8, 8, 8 }, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // Children are 8px inset into parent, and laid out top to bottom } ``` -This macro isn't magic - all it's doing is wrapping the standard designated initializer syntax and adding the result to an internal array. e.g. `(Clay_LayoutConfig) { .padding = { .left = 8, .right = 8 } ...`. +This macro isn't magic - all it's doing is wrapping the standard designated initializer syntax. e.g. `(Clay_ElementDeclaration) { .layout = { .padding = { .left = 8, .right = 8 } ...`. -See the [Clay_LayoutConfig](#clay_layout) API for the full list of options. +See the [Clay_ElementDeclaration](#clay_elementdeclaration) API for the full list of options. -A `Clay_LayoutConfig` struct can be defined in file scope or elsewhere, and reused. +A `Clay_ElementDeclaration` struct can be defined in file scope or elsewhere, and reused. ```C // Define a style in the global / file scope -Clay_LayoutConfig reusableStyle = (Clay_LayoutConfig) { .backgroundColor = {120, 120, 120, 255} }; +Clay_ElementDeclaration reuseableStyle = (Clay_ElementDeclaration) { + .layout = { .padding = { .left = 12 } }, + .backgroundColor = { 120, 120, 120, 255 }, + .cornerRadius = { 12, 12, 12, 12 } +}; -CLAY(CLAY_LAYOUT(reusableStyle)) { +CLAY(reuseableStyle) { // ... } ``` ### Element IDs -Clay elements can optionally be tagged with a unique identifier using [CLAY_ID()](#clay_id). +Clay elements can optionally be tagged with a unique identifier using the `.id` field of an element declaration, and with the [CLAY_ID()](#clay_id) convenience macro. ```C // Will always produce the same ID from the same input string -CLAY(CLAY_ID("OuterContainer"), style) {} +CLAY({ .id = CLAY_ID("OuterContainer") }) {} ``` Element IDs have two main use cases. Firstly, tagging an element with an ID allows you to query information about the element later, such as its [mouseover state](#clay_pointerover) or dimensions. @@ -277,7 +288,7 @@ To avoid having to construct dynamic strings at runtime to differentiate ids in ```C // This is the equivalent of calling CLAY_ID("Item0"), CLAY_ID("Item1") etc for (int index = 0; index < items.length; index++) { - CLAY(CLAY_IDI("Item", index)) {} + CLAY({ .id = CLAY_IDI("Item", index) }) {} } ``` @@ -295,7 +306,7 @@ The function `bool Clay_Hovered()` can be called during element construction or ```C // An orange button that turns blue when hovered -CLAY(CLAY_RECTANGLE(.color = Clay_Hovered() ? COLOR_BLUE : COLOR_ORANGE)) { +CLAY({ .backgroundColor = Clay_Hovered() ? COLOR_BLUE : COLOR_ORANGE }) { bool buttonHovered = Clay_Hovered(); CLAY_TEXT(buttonHovered ? CLAY_STRING("Hovered") : CLAY_STRING("Hover me!"), headerTextConfig); } @@ -316,7 +327,8 @@ void HandleButtonInteraction(Clay_ElementId elementId, Clay_PointerData pointerI ButtonData linkButton = (ButtonData) { .link = "https://github.com/nicbarker/clay" }; // HandleButtonInteraction will be called for each frame the mouse / pointer / touch is inside the button boundaries -CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(8)}), Clay_OnHover(HandleButtonInteraction, &linkButton)) { +CLAY({ .layout = { .padding = CLAY_PADDING_ALL(8) } }) { + Clay_OnHover(HandleButtonInteraction, &linkButton); CLAY_TEXT(CLAY_STRING("Button"), &headerTextConfig); } ``` @@ -368,31 +380,28 @@ A classic example use case for floating elements is tooltips and modals. ```C // The two text elements will be laid out top to bottom, and the floating container // will be attached to "Outer" -CLAY(CLAY_ID("Outer"), CLAY_LAYOUT({ .layoutDirection = TOP_TO_BOTTOM })) { +CLAY({ .id = CLAY_ID("Outer"), .layout = { .layoutDirection = TOP_TO_BOTTOM } }) { CLAY_TEXT(CLAY_ID("Button"), text, &headerTextConfig); - CLAY(CLAY_ID("Tooltip"), CLAY_FLOATING()) {} + CLAY({ .id = CLAY_ID("Tooltip"), .floating = { .attachTo = CLAY_ATTACH_TO_PARENT } }) {} CLAY_TEXT(CLAY_ID("Button"), text, &headerTextConfig); } ``` -More specific details can be found in the full [Floating API](#clay_floating). +More specific details can be found in the full [Floating API](#clay_floatingelementconfig). ### Laying Out Your Own Custom Elements Clay only supports a simple set of UI element primitives, such as rectangles, text and images. Clay provides a singular API for layout out custom elements: ```C -// Extend CLAY_CUSTOM_ELEMENT_CONFIG with your custom data -#define CLAY_EXTEND_CONFIG_CUSTOM struct t_CustomElementData customData; -// Extensions need to happen _before_ the clay include #include "clay.h" -enum CustomElementType { +typedef enum { CUSTOM_ELEMENT_TYPE_MODEL, CUSTOM_ELEMENT_TYPE_VIDEO -}; +} CustomElementType; // A rough example of how you could handle laying out 3d models in your UI -typedef struct t_CustomElementData { +typedef struct { CustomElementType type; union { Model model; @@ -403,10 +412,22 @@ typedef struct t_CustomElementData { Model myModel = Load3DModel(filePath); CustomElement modelElement = (CustomElement) { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel } + +typedef struct { + void* memory; + uintptr_t offset; +} Arena; + +// During init +Arena frameArena = (Arena) { .memory = malloc(1024) }; + // ... CLAY(0) { - // This config is type safe and contains the CustomElementData struct - CLAY(CLAY_CUSTOM_ELEMENT({ .customData = { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel } })) {} + // Custom elements only take a single pointer, so we need to store the data somewhere + CustomElementData *modelData = (CustomElementData *)(frameArena.memory + frameArena.offset); + *modelData = (CustomElementData) { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel }; + frameArena.offset += sizeof(CustomElementData); + CLAY({ .custom = { .customData = modelData } }) {} } // Later during your rendering @@ -455,11 +476,6 @@ Clay supports C preprocessor directives to modulate functionality at compile tim The supported directives are: - `CLAY_WASM` - Required when targeting Web Assembly. -- `CLAY_DEBUG` - Used for debugging clay's internal implementation. Useful if you want to modify or debug clay, or learn how things work. It enables a number of debug features such as preserving source strings for hash IDs to make debugging easier. -- `CLAY_EXTEND_CONFIG_RECTANGLE` - Provide additional struct members to `CLAY_RECTANGLE` that will be passed through with output render commands. -- `CLAY_EXTEND_CONFIG_TEXT` - Provide additional struct members to `CLAY_TEXT_CONFIG` that will be passed through with output render commands. -- `CLAY_EXTEND_CONFIG_IMAGE` - Provide additional struct members to `CLAY_IMAGE_CONFIG` that will be passed through with output render commands. -- `CLAY_EXTEND_CONFIG_CUSTOM` - Provide additional struct members to `CLAY_CUSTOM_CONFIG` that will be passed through with output render commands. ### Bindings for non C @@ -526,7 +542,7 @@ render(renderCommands2); ### Lifecycle for public functions **At startup / initialization time, run once** -`Clay_MinMemorySize` -> `Clay_CreateArenaWithCapacityAndMemory` -> `Clay_SetMeasureTextFunction` -> `Clay_Initialize` +`Clay_MinMemorySize` -> `Clay_CreateArenaWithCapacityAndMemory` -> `Clay_Initialize` -> `Clay_SetMeasureTextFunction` **Each Frame** `Clay_SetLayoutDimensions` -> `Clay_SetPointerState` -> `Clay_UpdateScrollContainers` -> `Clay_BeginLayout` -> `CLAY() etc...` -> `Clay_EndLayout` @@ -537,7 +553,7 @@ render(renderCommands2); `uint32_t Clay_MinMemorySize()` -Returns the minimum amount of memory **in bytes** that clay needs to accomodate the current [CLAY_MAX_ELEMENT_COUNT](#preprocessor-directives). +Returns the minimum amount of memory **in bytes** that clay needs to accommodate the current [CLAY_MAX_ELEMENT_COUNT](#preprocessor-directives). --- @@ -551,7 +567,7 @@ Creates a `Clay_Arena` struct with the given capacity and base memory pointer, w ### Clay_SetMeasureTextFunction -`void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_String *text, Clay_TextElementConfig *config))` +`void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData), uintptr_t userData)` Takes a pointer to a function that can be used to measure the `width, height` dimensions of a string. Used by clay during layout to determine [CLAY_TEXT](#clay_text) element sizing and wrapping. @@ -686,7 +702,8 @@ void HandleButtonInteraction(Clay_ElementId elementId, Clay_PointerData pointerD ButtonData linkButton = (ButtonData) { .link = "https://github.com/nicbarker/clay" }; // HandleButtonInteraction will be called for each frame the mouse / pointer / touch is inside the button boundaries -CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(8)}), Clay_OnHover(HandleButtonInteraction, &buttonData)) { +CLAY({ .layout = { .padding = CLAY_PADDING_ALL(8) } }) { + Clay_OnHover(HandleButtonInteraction, &buttonData); CLAY_TEXT(CLAY_STRING("Button"), &headerTextConfig); } ``` @@ -727,22 +744,23 @@ Returns a [Clay_ElementId](#clay_elementid) for the provided id string, used for **Notes** **CLAY** opens a generic empty container, that is configurable and supports nested children. -**CLAY** requires at least 1 parameter, so if you want to create an element without any configuration, use `CLAY(0)`. +**CLAY** requires a parameter, so if you want to create an element without any configuration, use `CLAY(0)`. **Examples** ```C // Define an element with 16px of x and y padding -CLAY(CLAY_ID("Outer"), CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(16) })) { +CLAY({ .id = CLAY_ID("Outer"), .layout = { .padding = CLAY_PADDING_ALL(16) } }) { // A nested child element - CLAY(CLAY_ID("SideBar"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 })) { + CLAY({ .id = CLAY_ID("SideBar"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 } }) { // Children laid out top to bottom with a 16 px gap between them } // A vertical scrolling container with a colored background - CLAY( - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 }) - CLAY_RECTANGLE({ .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) }) - CLAY_SCROLL({ .vertical = true }) - ) { + CLAY({ + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 }, + .backgroundColor = { 200, 200, 100, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(10), + .scroll = { .vertical = true } + }) { // child elements } } @@ -750,301 +768,14 @@ CLAY(CLAY_ID("Outer"), CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(16) })) { --- -### CLAY_ID - -**Usage** - -`CLAY(CLAY_ID(char* idString)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_ID()` -> `)` -> `Clay_EndLayout()` - -**Notes** - -**CLAY_ID()** is used to generate and attach a [Clay_ElementId](#clay_elementid) to a layout element during declaration. - -To regenerate the same ID outside of layout declaration when using utility functions such as [Clay_PointerOver](#clay_pointerover), use the [Clay_GetElementId](#clay_getelementid) function. - -**Examples** - -```C -// Tag a button with the Id "Button" -CLAY( - CLAY_ID("Button"), - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16) }) -) { - // ...children -} - -// Later on outside of layout code -bool buttonIsHovered = Clay_IsPointerOver(Clay_GetElementId("Button")); -if (buttonIsHovered && leftMouseButtonPressed) { - // ... do some click handling -} -``` - ---- - -### CLAY_IDI() - -`Clay_ElementId CLAY_IDI(char *label, int32_t index)` - -An offset version of [CLAY_ID](#clay_id). Generates a [Clay_ElementId](#clay_elementid) string id from the provided `char *label`, combined with the `int index`. Used for generating ids for sequential elements (such as in a `for` loop) without having to construct dynamic strings at runtime. - ---- - -### CLAY_ID_LOCAL() - -**Usage** - -`CLAY(CLAY_ID_LOCAL(char* idString)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_ID_LOCAL()` -> `)` -> `Clay_EndLayout()` - -**Notes** - -**CLAY_ID_LOCAL()** is used to generate and attach a [Clay_ElementId](#clay_elementid) to a layout element during declaration. - -Unlike [CLAY_ID](#clay_id) which needs to be globally unique, a local ID is based on the ID of it's parent and only needs to be unique among its siblings. - -As a result, local id is suitable for use in reusable components and loops. - -**Examples** - -```C -void RenderHeaderButton(ButtonData button) { - CLAY( - CLAY_ID_LOCAL("HeaderButton"), - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16) }) - ) { - // ...children - } -} - -for (int i = 0; i < headerButtons.length; i++) { - RenderHeaderButton(headerButtons.items[i]); -} -``` - ---- - ---- - -### CLAY_IDI_LOCAL() - -`Clay_ElementId CLAY_IDI_LOCAL(char *label, int32_t index)` - -An offset version of [CLAY_ID_LOCAL](#clay_local_id). Generates a [Clay_ElementId](#clay_elementid) string id from the provided `char *label`, combined with the `int index`. Used for generating ids for sequential elements (such as in a `for` loop) without having to construct dynamic strings at runtime. - ---- - -### CLAY_LAYOUT - -**Usage** - -`CLAY(CLAY_LAYOUT(...layout config)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_LAYOUT()` -> `)` -> `Clay_EndLayout()` - -**Notes** - -**CLAY_LAYOUT()** is used for configuring _layout_ options (i.e. options that affect the final position and size of an element, its parents, siblings, and children) - -**Struct API (Pseudocode)** - -```C -// CLAY_LAYOUT({ .member = value }) supports these options -Clay_LayoutConfig { - Clay_LayoutDirection layoutDirection = CLAY_LEFT_TO_RIGHT (default) | CLAY_TOP_TO_BOTTOM; - Clay_Padding padding { - u16 left; u16 right; u16 top; u16 bottom; - }; - uint16_t childGap; - Clay_ChildAlignment childAlignment { - .x = CLAY_ALIGN_X_LEFT (default) | CLAY_ALIGN_X_CENTER | CLAY_ALIGN_X_RIGHT; - .y = CLAY_ALIGN_Y_TOP (default) | CLAY_ALIGN_Y_CENTER | CLAY_ALIGN_Y_BOTTOM; - }; - Clay_Sizing sizing { // Recommended to use the provided macros here - see #sizing for more in depth explanation - .width = CLAY_SIZING_FIT(float min, float max) (default) | CLAY_SIZING_GROW(float min, float max) | CLAY_SIZING_FIXED(float width) | CLAY_SIZING_PERCENT(float percent) - .height = CLAY_SIZING_FIT(float min, float max) (default) | CLAY_SIZING_GROW(float min, float max) | CLAY_SIZING_FIXED(float height) | CLAY_SIZING_PERCENT(float percent) - }; // See CLAY_SIZING_GROW() etc for more details -}; -``` -As with all config macros, `CLAY_LAYOUT()` accepts designated initializer syntax and provides default values for any unspecified struct members. - -**Fields** - -**`.layoutDirection`** - `Clay_LayoutDirection` - -`CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM })` - -Controls the axis / direction in which child elements are laid out. Available options are `CLAY_LEFT_TO_RIGHT` (default) and `CLAY_TOP_TO_BOTTOM`. - -_Did you know that "left to right" and "top to bottom" both have 13 letters?_ - -<img width="580" alt="Screenshot 2024-08-22 at 11 10 27 AM" src="https://github.com/user-attachments/assets/7008aa47-8826-4338-9257-8bc83f7813ce"> - ---- - -**`.padding`** - `Clay_Padding` - -`CLAY_LAYOUT({ .padding = { .left = 16, .right = 16, .top = 8, .bottom = 8 } })` - -Controls white-space "padding" around the **outside** of child elements. - -<img width="486" alt="Screenshot 2024-08-22 at 10 50 49 AM" src="https://github.com/user-attachments/assets/b454fa36-92d5-4b1d-bf8b-e4c25428e9de"> - ---- - -**`.childGap`** - `uint16_t` - -`CLAY_LAYOUT({ .childGap = 16 })` - -Controls the white-space **between** child elements as they are laid out. When `.layoutDirection` is `CLAY_LEFT_TO_RIGHT` (default), this will be horizontal space, whereas for `CLAY_TOP_TO_BOTTOM` it will be vertical space. - -<img width="600" alt="Screenshot 2024-08-22 at 11 05 15 AM" src="https://github.com/user-attachments/assets/fa0dae1f-1936-47f6-a299-634bd7d40d58"> - ---- - -**`.childAlignment`** - `Clay_ChildAlignment` - -`CLAY_LAYOUT({ .childAlignment = { .x = CLAY_ALIGN_X_LEFT, .y = CLAY_ALIGN_Y_CENTER } })` - -Controls the alignment of children relative to the height and width of the parent container. Available options are: -```C -.x = CLAY_ALIGN_X_LEFT (default) | CLAY_ALIGN_X_CENTER | CLAY_ALIGN_X_RIGHT; -.y = CLAY_ALIGN_Y_TOP (default) | CLAY_ALIGN_Y_CENTER | CLAY_ALIGN_Y_BOTTOM; -``` - -<img width="1030" alt="Screenshot 2024-08-22 at 11 25 16 AM" src="https://github.com/user-attachments/assets/be61b4a7-db4f-447c-b6d6-b2d4a91fc664"> - ---- - -**`.sizing`** - `Clay_Sizing` - -`CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_PERCENT(0.5) } })` - -Controls how final width and height of element are calculated. The same configurations are available for both the `.width` and `.height` axis. There are several options: - -- `CLAY_SIZING_FIT(float min, float max) (default)` - The element will be sized to fit its children (plus padding and gaps), up to `max`. If `max` is left unspecified, it will default to `FLOAT_MAX`. When elements are compressed to fit into a smaller parent, this element will not shrink below `min`. - -- `CLAY_SIZING_GROW(float min, float max)` - The element will grow to fill available space in its parent, up to `max`. If `max` is left unspecified, it will default to `FLOAT_MAX`. When elements are compressed to fit into a smaller parent, this element will not shrink below `min`. - -- `CLAY_SIZING_FIXED(float fixed)` - The final size will always be exactly the provided `fixed` value. Shorthand for `CLAY_SIZING_FIT(fixed, fixed)` - -- `CLAY_SIZING_PERCENT(float percent)` - Final size will be a percentage of parent size, minus padding and child gaps. `percent` is assumed to be a float between `0` and `1`. - -<img width="1056" alt="Screenshot 2024-08-22 at 2 10 33 PM" src="https://github.com/user-attachments/assets/1236efb1-77dc-44cd-a207-7944e0f5e500"> - -<img width="1141" alt="Screenshot 2024-08-22 at 2 19 04 PM" src="https://github.com/user-attachments/assets/a26074ff-f155-4d35-9ca4-9278a64aac00"> - - -**Example Usage** - -```C -CLAY(CLAY_ID("Button"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16, .childGap = 16) }) { - // Children will be laid out vertically with 16px of padding around and between -} -``` - ---- - -### CLAY_RECTANGLE -**Usage** - -`CLAY(CLAY_RECTANGLE(...rectangle config)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_RECTANGLE()` -> `)` -> `Clay_EndLayout()` - -**Notes** - -**RECTANGLE** configures a clay element to background-fill its bounding box with a color. It uses `Clay_RectangleElementConfig` for rectangle specific options. - -**Struct API (Pseudocode)** - -```C -// CLAY_RECTANGLE({ .member = value }) supports these options -Clay_RectangleElementConfig { - Clay_Color color { - float r; float g; float b; float a; - }; - float cornerRadius; - - #ifdef CLAY_EXTEND_CONFIG_RECTANGLE - // Contents of CLAY_EXTEND_CONFIG_RECTANGLE will be pasted here - #endif -} -``` - -As with all config macros, `CLAY_RECTANGLE()` accepts designated initializer syntax and provides default values for any unspecified struct members. - -**Extension** - -The underlying `Clay_RectangleElementConfig` can be extended with new members by using: -```C -#define CLAY_EXTEND_CONFIG_RECTANGLE float newField; -#include "clay.h" // Define your extension before including clay.h -``` - -**Fields** - -**`.color`** - `Clay_Color` - -`CLAY_RECTANGLE({ .color = {120, 120, 120, 255} })` - -Conventionally accepts `rgba` float values between 0 and 255, but interpretation is left up to the renderer and does not affect layout. - ---- - -**`.cornerRadius`** - `float` - -`CLAY_RECTANGLE({ .cornerRadius = { .topLeft = 16, .topRight = 16, .bottomLeft = 16, .bottomRight = 16 })` - -Defines the radius in pixels for the arc of rectangle corners (`0` is square, `rectangle.width / 2` is circular). - -Note that the `CLAY_CORNER_RADIUS(radius)` function-like macro is available to provide short hand for setting all four corner radii to the same value. e.g. `CLAY_BORDER({ .cornerRadius = CLAY_CORNER_RADIUS(10) })` - -**Rendering** - -Element is subject to [culling](#visibility-culling). Otherwise, a single `Clay_RenderCommand`s with `commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE` will be created, with `renderCommand->elementConfig.rectangleElementConfig` containing a pointer to the element's Clay_RectangleElementConfig. - -**Examples** - -```C -// Declare a reusable rectangle config, with a purple color and 10px rounded corners -Clay_RectangleElementConfig rectangleConfig = (Clay_RectangleElementConfig) { .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) }; -// Declare a rectangle element using a reusable config -CLAY(CLAY_RECTANGLE(rectangleConfig)) {} -// Declare a retangle element using an inline config -CLAY(CLAY_RECTANGLE({ .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) })) { - // child elements -} -// Declare a scrolling container with a colored background -CLAY( - CLAY_RECTANGLE({ .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) }) - CLAY_SCROLL({ .vertical = true }) -) { - // child elements -} -``` - ---- - -### CLAY_TEXT +### CLAY_TEXT() **Usage** `CLAY_TEXT(Clay_String textContents, Clay_TextElementConfig *textConfig);` **Lifecycle** -`Clay_BeginLayout()` -> `CLAY_TEXT()` -> `Clay_EndLayout()` +`Clay_BeginLayout()` -> `CLAY_TEXT()` -> `Clay_EndLayout()` **Notes** @@ -1066,24 +797,12 @@ Clay_TextElementConfig { uint16_t lineHeight; Clay_TextElementConfigWrapMode wrapMode { CLAY_TEXT_WRAP_WORDS (default), - CLAY_TEXT_WRAP_NEWLINES, - CLAY_TEXT_WRAP_NONE, + CLAY_TEXT_WRAP_NEWLINES, + CLAY_TEXT_WRAP_NONE, }; - - #ifdef CLAY_EXTEND_CONFIG_TEXT - // Contents of CLAY_EXTEND_CONFIG_TEXT will be pasted here - #endif + bool hashStringContents }; ``` -As with all config macros, `CLAY_TEXT_CONFIG()` accepts designated initializer syntax and provides default values for any unspecified struct members. - -**Extension** - -The underlying `Clay_TextElementConfig` can be extended with new members by using: -```C -#define CLAY_EXTEND_CONFIG_TEXT float newField; -#include "clay.h" // Define your extension before including clay.h -``` **Fields** @@ -1098,7 +817,7 @@ Conventionally accepts `rgba` float values between 0 and 255, but interpretation **`.fontId`** `CLAY_TEXT_CONFIG(.fontId = FONT_ID_LATO)` - + It's up to the user to load fonts and create a mapping from `fontId` to a font that can be measured and rendered. --- @@ -1141,6 +860,14 @@ Available options are: --- +**`.hashStringContents`** + +`CLAY_TEXT_CONFIG(.hashStringContents = true)` + +By default, clay will cache the dimensions of text measured by [the provided MeasureText function](#clay_setmeasuretextfunction) based on the string's pointer and length. Setting `.hashStringContents = true` will cause Clay to hash the entire string contents. Used to fix incorrect measurements caused by re-use of string memory, disabled by default as it will incur significant performance overhead for very large bodies of text. + +--- + **Examples** ```C @@ -1149,7 +876,7 @@ const uint32_t FONT_ID_LATO = 3; // .. CLAY_TEXT(CLAY_STRING("John Smith"), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_LATO, .fontSize = 24, .textColor = {255, 0, 0, 255} })); // Rendering example -Font fontToUse = LoadedFonts[renderCommand->elementConfig.textElementConfig->fontId]; +Font fontToUse = LoadedFonts[renderCommand->renderData.text->fontId]; ``` **Rendering** @@ -1160,18 +887,264 @@ Element is subject to [culling](#visibility-culling). Otherwise, multiple `Clay_ --- -### CLAY_IMAGE +### CLAY_ID + **Usage** -`CLAY(CLAY_IMAGE(...image config)) {}` +`CLAY(CLAY_ID(char* idString)) {}` **Lifecycle** -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_IMAGE()` -> `)` -> `Clay_EndLayout()` +`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_ID()` -> `)` -> `Clay_EndLayout()` **Notes** -**IMAGE** configures a clay element to render an image as its background. It uses Clay_ImageElementConfig for image specific options. +**CLAY_ID()** is used to generate and attach a [Clay_ElementId](#clay_elementid) to a layout element during declaration. + +To regenerate the same ID outside of layout declaration when using utility functions such as [Clay_PointerOver](#clay_pointerover), use the [Clay_GetElementId](#clay_getelementid) function. + +**Examples** + +```C +// Tag a button with the Id "Button" +CLAY({ + .id = CLAY_ID("Button"), + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16 } +}) { + // ...children +} + +// Later on outside of layout code +bool buttonIsHovered = Clay_IsPointerOver(Clay_GetElementId("Button")); +if (buttonIsHovered && leftMouseButtonPressed) { + // ... do some click handling +} +``` + +--- + +### CLAY_IDI() + +`Clay_ElementId CLAY_IDI(char *label, int32_t index)` + +An offset version of [CLAY_ID](#clay_id). Generates a [Clay_ElementId](#clay_elementid) string id from the provided `char *label`, combined with the `int index`. Used for generating ids for sequential elements (such as in a `for` loop) without having to construct dynamic strings at runtime. + +--- + +### CLAY_ID_LOCAL() + +**Usage** + +`CLAY(CLAY_ID_LOCAL(char* idString)) {}` + +**Lifecycle** + +`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_ID_LOCAL()` -> `)` -> `Clay_EndLayout()` + +**Notes** + +**CLAY_ID_LOCAL()** is used to generate and attach a [Clay_ElementId](#clay_elementid) to a layout element during declaration. + +Unlike [CLAY_ID](#clay_id) which needs to be globally unique, a local ID is based on the ID of it's parent and only needs to be unique among its siblings. + +As a result, local id is suitable for use in reusable components and loops. + +**Examples** + +```C +void RenderHeaderButton(ButtonData button) { + CLAY({ + .id = CLAY_ID_LOCAL("HeaderButton"), + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16 } + }) { + // ...children + } +} + +for (int i = 0; i < headerButtons.length; i++) { + RenderHeaderButton(headerButtons.items[i]); +} +``` + +--- + +### CLAY_IDI_LOCAL() + +`Clay_ElementId CLAY_IDI_LOCAL(char *label, int32_t index)` + +An offset version of [CLAY_ID_LOCAL](#clay_local_id). Generates a [Clay_ElementId](#clay_elementid) string id from the provided `char *label`, combined with the `int index`. Used for generating ids for sequential elements (such as in a `for` loop) without having to construct dynamic strings at runtime. + +--- + +## Data Structures & Definitions + +### Clay_ElementDeclaration +The **Clay_ElementDeclaration** struct is the only argument to the `CLAY()` macro and provides configuration options for layout elements. + +```C +typedef struct { + Clay_ElementId id; + Clay_LayoutConfig layout; + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + Clay_ImageElementConfig image; + Clay_FloatingElementConfig floating; + Clay_CustomElementConfig custom; + Clay_ScrollElementConfig scroll; + Clay_BorderElementConfig border; + uintptr_t userData; +} Clay_ElementDeclaration; +``` + +**Fields** + +**`.color`** - `Clay_Color` + +`.backgroundColor = {120, 120, 120, 255} })` + +Conventionally accepts `rgba` float values between 0 and 255, but interpretation is left up to the renderer and does not affect layout. + +--- + +**`.cornerRadius`** - `float` + +`CLAY_RECTANGLE({ .cornerRadius = { .topLeft = 16, .topRight = 16, .bottomLeft = 16, .bottomRight = 16 })` + +Defines the radius in pixels for the arc of rectangle corners (`0` is square, `rectangle.width / 2` is circular). + +Note that the `CLAY_CORNER_RADIUS(radius)` function-like macro is available to provide short hand for setting all four corner radii to the same value. e.g. `CLAY_BORDER({ .cornerRadius = CLAY_CORNER_RADIUS(10) })` + +**Examples** + +```C +// Declare a reusable rectangle config, with a purple color and 10px rounded corners +Clay_RectangleElementConfig rectangleConfig = (Clay_RectangleElementConfig) { .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) }; +// Declare a rectangle element using a reusable config +CLAY(rectangleConfig)) {} +// Declare a retangle element using an inline config +CLAY({ .color = { 200, 200, 100, 255 }, .cornerRadius = CLAY_CORNER_RADIUS(10) })) { + // child elements +} +// Declare a scrolling container with a colored background +CLAY({ + .backgroundColor = { 200, 200, 100, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(10) + CLAY_SCROLL({ .vertical = true }) +) { + // child elements +} +``` + +Element is subject to [culling](#visibility-culling). Otherwise, a single `Clay_RenderCommand`s with `commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE` will be created, with `renderCommand->elementConfig.rectangleElementConfig` containing a pointer to the element's Clay_RectangleElementConfig. + +### Clay_LayoutConfig + +**Clay_LayoutConfig** is used for configuring _layout_ options (i.e. options that affect the final position and size of an element, its parents, siblings, and children) + +**Struct API (Pseudocode)** + +```C +// CLAY({ .layout = { ...fields } }) supports these options +Clay_LayoutConfig { + Clay_LayoutDirection layoutDirection = CLAY_LEFT_TO_RIGHT (default) | CLAY_TOP_TO_BOTTOM; + Clay_Padding padding { + u16 left; u16 right; u16 top; u16 bottom; + }; + uint16_t childGap; + Clay_ChildAlignment childAlignment { + .x = CLAY_ALIGN_X_LEFT (default) | CLAY_ALIGN_X_CENTER | CLAY_ALIGN_X_RIGHT; + .y = CLAY_ALIGN_Y_TOP (default) | CLAY_ALIGN_Y_CENTER | CLAY_ALIGN_Y_BOTTOM; + }; + Clay_Sizing sizing { // Recommended to use the provided macros here - see #sizing for more in depth explanation + .width = CLAY_SIZING_FIT(float min, float max) (default) | CLAY_SIZING_GROW(float min, float max) | CLAY_SIZING_FIXED(float width) | CLAY_SIZING_PERCENT(float percent) + .height = CLAY_SIZING_FIT(float min, float max) (default) | CLAY_SIZING_GROW(float min, float max) | CLAY_SIZING_FIXED(float height) | CLAY_SIZING_PERCENT(float percent) + }; // See CLAY_SIZING_GROW() etc for more details +}; +``` + +**Fields** + +**`.layoutDirection`** - `Clay_LayoutDirection` + +`CLAY({ .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM } })` + +Controls the axis / direction in which child elements are laid out. Available options are `CLAY_LEFT_TO_RIGHT` (default) and `CLAY_TOP_TO_BOTTOM`. + +_Did you know that "left to right" and "top to bottom" both have 13 letters?_ + +<img width="580" alt="Screenshot 2024-08-22 at 11 10 27 AM" src="https://github.com/user-attachments/assets/7008aa47-8826-4338-9257-8bc83f7813ce"> + +--- + +**`.padding`** - `Clay_Padding` + +`CLAY({ .layout = { .padding = { .left = 16, .right = 16, .top = 8, .bottom = 8 } } })` + +Controls white-space "padding" around the **outside** of child elements. + +<img width="486" alt="Screenshot 2024-08-22 at 10 50 49 AM" src="https://github.com/user-attachments/assets/b454fa36-92d5-4b1d-bf8b-e4c25428e9de"> + +--- + +**`.childGap`** - `uint16_t` + +`CLAY({ .layout = { .childGap = 16 } })` + +Controls the white-space **between** child elements as they are laid out. When `.layoutDirection` is `CLAY_LEFT_TO_RIGHT` (default), this will be horizontal space, whereas for `CLAY_TOP_TO_BOTTOM` it will be vertical space. + +<img width="600" alt="Screenshot 2024-08-22 at 11 05 15 AM" src="https://github.com/user-attachments/assets/fa0dae1f-1936-47f6-a299-634bd7d40d58"> + +--- + +**`.childAlignment`** - `Clay_ChildAlignment` + +`CLAY({ .layout = { .childAlignment = { .x = CLAY_ALIGN_X_LEFT, .y = CLAY_ALIGN_Y_CENTER } } })` + +Controls the alignment of children relative to the height and width of the parent container. Available options are: +```C +.x = CLAY_ALIGN_X_LEFT (default) | CLAY_ALIGN_X_CENTER | CLAY_ALIGN_X_RIGHT; +.y = CLAY_ALIGN_Y_TOP (default) | CLAY_ALIGN_Y_CENTER | CLAY_ALIGN_Y_BOTTOM; +``` + +<img width="1030" alt="Screenshot 2024-08-22 at 11 25 16 AM" src="https://github.com/user-attachments/assets/be61b4a7-db4f-447c-b6d6-b2d4a91fc664"> + +--- + +**`.sizing`** - `Clay_Sizing` + +`CLAY({ .layout = { .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_PERCENT(0.5) } } })` + +Controls how final width and height of element are calculated. The same configurations are available for both the `.width` and `.height` axis. There are several options: + +- `CLAY_SIZING_FIT(float min, float max) (default)` - The element will be sized to fit its children (plus padding and gaps), up to `max`. If `max` is left unspecified, it will default to `FLOAT_MAX`. When elements are compressed to fit into a smaller parent, this element will not shrink below `min`. + +- `CLAY_SIZING_GROW(float min, float max)` - The element will grow to fill available space in its parent, up to `max`. If `max` is left unspecified, it will default to `FLOAT_MAX`. When elements are compressed to fit into a smaller parent, this element will not shrink below `min`. + +- `CLAY_SIZING_FIXED(float fixed)` - The final size will always be exactly the provided `fixed` value. Shorthand for `CLAY_SIZING_FIT(fixed, fixed)` + +- `CLAY_SIZING_PERCENT(float percent)` - Final size will be a percentage of parent size, minus padding and child gaps. `percent` is assumed to be a float between `0` and `1`. + +<img width="1056" alt="Screenshot 2024-08-22 at 2 10 33 PM" src="https://github.com/user-attachments/assets/1236efb1-77dc-44cd-a207-7944e0f5e500"> + +<img width="1141" alt="Screenshot 2024-08-22 at 2 19 04 PM" src="https://github.com/user-attachments/assets/a26074ff-f155-4d35-9ca4-9278a64aac00"> + + +**Example Usage** + +```C +CLAY({ .id = CLAY_ID("Button"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = CLAY_PADDING_ALL(16, .childGap = 16) } }) { + // Children will be laid out vertically with 16px of padding around and between +} +``` + +--- + +### Clay_ImageElementConfig +**Usage** + +`CLAY({ .image = { ...image config } }) {}` + +**Clay_ImageElementConfig** configures a clay element to render an image as its background. **Struct API (Pseudocode)** @@ -1180,30 +1153,15 @@ Clay_ImageElementConfig { Clay_Dimensions sourceDimensions { float width; float height; }; - // -- - #ifndef CLAY_EXTEND_CONFIG_IMAGE - void * imageData; // Note: This field will be replaced if #define CLAY_EXTEND_CONFIG_IMAGE is specified - #else CLAY_EXTEND_CONFIG_IMAGE - // Contents of CLAY_EXTEND_CONFIG_IMAGE will be pasted here - #endif + void * imageData; }; ``` -As with all config macros, `CLAY_IMAGE_CONFIG()` accepts designated initializer syntax and provides default values for any unspecified struct members. - -**Extension** - -The underlying `Clay_ImageElementConfig` can be extended with new members by using: -```C -#define CLAY_EXTEND_CONFIG_IMAGE float newField; -#include "clay.h" // Define your extension before including clay.h -``` - **Fields** **`.sourceDimensions`** - `Clay_Dimensions` -`CLAY_IMAGE_CONFIG(.sourceDimensions = { 1024, 768 })` +`CLAY({ .image = { .sourceDimensions = { 1024, 768 } } }) {}` Used to perform **aspect ratio scaling** on the image element. As of this version of clay, aspect ratio scaling only applies to the `height` of an image (i.e. image height will scale with width growth and limitations, but width will not scale with height growth and limitations) @@ -1211,31 +1169,15 @@ Used to perform **aspect ratio scaling** on the image element. As of this versio **`.imageData`** - `void *` -`CLAY_IMAGE_CONFIG(.imageData = &myImage)` +`CLAY({ .image = { .imageData = &myImage } }) {}` -`.imageData` is a generic void pointer that can be used to pass through image data to the renderer. **Note:** this field is generally not recommended for usage due to the lack of type safety, see `#define CLAY_EXTEND_CONFIG_IMAGE` in [Preprocessor Directives](#preprocessor-directives) for an alternative. +`.imageData` is a generic void pointer that can be used to pass through image data to the renderer. ```C // Load an image somewhere in your code Image profilePicture = LoadImage("profilePicture.png"); // Note that when rendering, .imageData will be void* type. -CLAY(CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = { 60, 60 } })) {} - -// OR ---------------- - -// Extend CLAY_CUSTOM_IMAGE_CONFIG with your custom image format -#define CLAY_EXTEND_CONFIG_IMAGE struct t_Image image; -// Extensions need to happen _before_ the clay include -#include "clay.h" - -typedef struct t_Image { - ImageFormat format; - u8int_t *internalData; - // ... etc -} Image; - -// You can now use CLAY_IMAGE with your custom type and still have type safety & code completion -CLAY(CLAY_IMAGE({ .image = { .format = IMAGE_FORMAT_RGBA, .internalData = &imageData }, .sourceDimensions = { 60, 60 } })) {} +CLAY({ .image = { .imageData = &profilePicture, .sourceDimensions = { 60, 60 } } }) {} ``` **Examples** @@ -1246,31 +1188,28 @@ Image profilePicture = LoadImage("profilePicture.png"); // Declare a reusable image config Clay_ImageElementConfig imageConfig = (Clay_ImageElementConfig) { .imageData = &profilePicture, .sourceDimensions = {60, 60} }; // Declare an image element using a reusable config -CLAY(CLAY_IMAGE(imageConfig)) {} +CLAY({ .image = imageConfig }) {} // Declare an image element using an inline config -CLAY(CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {60, 60} })) {} +CLAY({ .image = { .imageData = &profilePicture, .sourceDimensions = {60, 60} } }) {} // Rendering example Image *imageToRender = renderCommand->elementConfig.imageElementConfig->imageData; ``` **Rendering** -Element is subject to [culling](#visibility-culling). Otherwise, a single `Clay_RenderCommand`s with `commandType = CLAY_RENDER_COMMAND_TYPE_IMAGE` will be created. The user will need to access `renderCommand->elementConfig.imageElementConfig->imageData` to retrieve image data referenced during layout creation. It's also up to the user to decide how / if they wish to blend `rectangleElementConfig->color` with the image. +Element is subject to [culling](#visibility-culling). Otherwise, a single `Clay_RenderCommand`s with `commandType = CLAY_RENDER_COMMAND_TYPE_IMAGE` will be created. The user will need to access `renderCommand->renderData.image->imageData` to retrieve image data referenced during layout creation. It's also up to the user to decide how / if they wish to blend `renderCommand->renderData.image->backgroundColor` with the image. --- -### CLAY_SCROLL +### Clay_ScrollElementConfig + **Usage** -`CLAY(CLAY_SCROLL(...scroll config)) {}` - -**Lifecycle** - -`Clay_SetPointerState()` -> `Clay_UpdateScrollContainers()` -> `Clay_BeginLayout()` -> `CLAY(` -> `CLAY_SCROLL()` -> `)` -> `Clay_EndLayout()` +`CLAY({ .scroll = { ...scroll config } }) {}` **Notes** -**SCROLL** configures the element as a scrolling container, enabling masking of children that extend beyond its boundaries. It uses `Clay_ScrollElementConfig` to configure scroll specific options. +`Clay_ScrollElementConfig` configures the element as a scrolling container, enabling masking of children that extend beyond its boundaries. Note: In order to process scrolling based on pointer position and mouse wheel or touch interactions, you must call `Clay_SetPointerState()` and `Clay_UpdateScrollContainers()` _before_ calling `BeginLayout`. @@ -1283,13 +1222,11 @@ Clay_ScrollElementConfig { }; ``` -As with all config macros, `CLAY_SCROLL()` accepts designated initializer syntax and provides default values for any unspecified struct members. - **Fields** **`.horizontal`** - `bool` -`CLAY_SCROLL(.horizontal = true)` +`CLAY({ .scroll = { .horizontal = true } })` Enables or disables horizontal scrolling for this container element. @@ -1297,7 +1234,7 @@ Enables or disables horizontal scrolling for this container element. **`.vertical`** - `bool` -`CLAY_SCROLL(.vertical = true)` +`CLAY({ .scroll = { .vertical = true } })` Enables or disables vertical scrolling for this container element. @@ -1312,118 +1249,94 @@ Enabling scroll for an element will result in two additional render commands: **Examples** ```C -CLAY(CLAY_SCROLL(.vertical = true)) { +CLAY({ .scroll = { .vertical = true } }) { // Create child content with a fixed height of 5000 - CLAY(CLAY_ID("ScrollInner"), CLAY_LAYOUT({ .sizing = { .height = CLAY_SIZING_FIXED(5000) } })) {} + CLAY({ .id = CLAY_ID("ScrollInner"), .layout = { .sizing = { .height = CLAY_SIZING_FIXED(5000) } } }) {} } ``` --- -### CLAY_BORDER +### Clay_BorderElementConfig + **Usage** -`CLAY(CLAY_BORDER(...border config)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_BORDER()` -> `)` -> `Clay_EndLayout()` +`CLAY({ .border = { ...border config } }) {}` **Notes** -**BORDER** adds borders to the edges or between the children of elements. It uses Clay_BorderElementConfig to configure border specific options. +`Clay_BorderElementConfig` adds borders to the edges or between the children of elements. It uses Clay_BorderElementConfig to configure border specific options. **Struct Definition (Pseudocode)** ```C typedef struct Clay_BorderElementConfig { - Clay_Border left { - float width; - Clay_Color color { - float r; float g; float b; float a; - }; + Clay_Color color { + float r; float g; float b; float a; }; - Clay_Border right // Exactly the same as left - Clay_Border top // Exactly the same as left - Clay_Border bottom // Exactly the same as left - Clay_Border betweenChildren // Exactly the same as left - Clay_CornerRadius cornerRadius { - float topLeft; - float topRight; - float bottomLeft; - float bottomRight; + Clay_BorderWidth width { + uint16_t left; + uint16_t right; + uint16_t top; + uint16_t bottom; + uint16_t betweenChildren; }; } Clay_BorderElementConfig; ``` -**Usage** - -As with all config macros, `CLAY_BORDER()` accepts designated initializer syntax and provides default values for any unspecified struct members. - **Fields** -**`.left, .right, .top, .bottom`** - `Clay_Border` +**`.width`** - `Clay_BorderWidth` -`CLAY_BORDER({ .left = { 2, COLOR_RED }, .right = { 4, COLOR_YELLOW } /* etc */ })` +`CLAY({ .border = { .width = { .left = 2, .right = 10 } } })` -Indicates to the renderer that a border of `.color` should be draw at the specified edges of the bounding box, **overlapping the box contents by `.width`**. +Indicates to the renderer that a border of `.color` should be draw at the specified edges of the bounding box, **inset and overlapping the box contents by `.width`**. This means that border configuration does not affect layout, as the width of the border doesn't contribute to the total container width or layout position. Border containers with zero padding will be drawn over the top of child elements. ---- +Note: -**`.betweenChildren`** - `Clay_Border` +**`.width.betweenChildren`** -`CLAY_BORDER({ .betweenChildren = { 2, COLOR_RED } })` +`CLAY({ .border = { .width = { .betweenChildren = 2 } }, .color = COLOR_RED })` Configures the width and color of borders to be drawn between children. These borders will be vertical lines if the parent uses `.layoutDirection = CLAY_LEFT_TO_RIGHT` and horizontal lines if the parent uses `CLAY_TOP_TO_BOTTOM`. Unlike `.left, .top` etc, this option **will generate additional rectangle render commands representing the borders between children.** As a result, the renderer does not need to specifically implement rendering for these border elements. --- -**`.cornerRadius`** - `float` +**`.color`** - `Clay_Color` -`CLAY_BORDER({ .cornerRadius = 16 })` +`CLAY({ .border = { .color = { 255, 0, 0, 255 } } })` Defines the radius in pixels for the arc of border corners (`0` is square, `rectangle.width / 2` is circular). It is up to the renderer to decide how to interpolate between differing border widths and colors across shared corners. -Note that the `CLAY_CORNER_RADIUS(radius)` function-like macro is available to provide short hand for setting all four corner radii to the same value. e.g. `CLAY_BORDER(.cornerRadius = CLAY_CORNER_RADIUS(10))` - -**Convenience Macros** - -There are some common cases for border configuration that are repetitive, i.e. specifying the same border around all four edges. Some convenience macros are provided for these cases: - -- `CLAY_BORDER_CONFIG_OUTSIDE({ .width = 2, .color = COLOR_RED })` - Shorthand for configuring all 4 outside borders at once.` -- `CLAY_BORDER_CONFIG_OUTSIDE_RADIUS(width, color, radius)` - Shorthand for configuring all 4 outside borders at once, with the provided `.cornerRadius`. Note this is a function-like macro and does not take `.member = value` syntax. -- `CLAY_BORDER_CONFIG_ALL({ .width = 2, .color = COLOR_RED })` - Shorthand for configuring all 4 outside borders and `.betweenChildren` at once. -- `CLAY_BORDER_CONFIG_ALL_RADIUS(width, color, radius)` - Shorthand for configuring all 4 outside borders and `.betweenChildren` at once, with the provided `cornerRadius`. Note this is a function-like macro and does not take `.member = value` syntax. - **Examples** ```C // 300x300 container with a 1px red border around all the edges -CLAY( - CLAY_ID("OuterBorder"), - CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300)}), - CLAY_BORDER_CONFIG_OUTSIDE({ .color = COLOR_RED, .width = 1 }) -) { +CLAY({ + .id = CLAY_ID("OuterBorder"), + .layout = { .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300) } }, + .border = { .width = { 1, 1, 1, 1, 0 }, .color = COLOR_RED } +}) { // ... } // Container with a 3px yellow bottom border -CLAY( - CLAY_ID("OuterBorder"), - CLAY_BORDER({ .bottom = { .color = COLOR_YELLOW, .width = 3 } }) -) { +CLAY({ + .id = CLAY_ID("OuterBorder"), + .border = { .width = { .bottom = 3 }, .color = COLOR_YELLOW } +}) { // ... } // Container with a 5px curved border around the edges, and a 5px blue border between all children laid out top to bottom -CLAY( - CLAY_ID("OuterBorder"), - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM }), - CLAY_BORDER_CONFIG_ALL_RADIUS(5, COLOR_BLUE, 5) -) { +CLAY({ + .id = CLAY_ID("OuterBorder"), + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM }, + .border = { .width = { 5, 5, 5, 5, 5 }, .color = COLOR_BLUE } +}) { // Child // -- 5px blue border will be here -- // Child @@ -1439,18 +1352,15 @@ Rendering of borders and rounded corners is left up to the user. See the provide --- -### CLAY_FLOATING +### Clay_FloatingElementConfig + **Usage** -`CLAY(CLAY_FLOATING(...floating config)) {}` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY(` -> `CLAY_FLOATING()` -> `)` -> `Clay_EndLayout()` +`CLAY({ .floating = { ...floating config } }) {}` **Notes** -**FLOATING** defines an element that "floats" above other content. Typical use-cases include tooltips and modals. +**Floating Elements** defines an element that "floats" above other content. Typical use-cases include tooltips and modals. Floating containers: @@ -1458,13 +1368,13 @@ Floating containers: - Don't affect the width and height of their parent - Don't affect the positioning of sibling elements - Depending on their z-index can appear above or below other elements, partially or completely occluding them -- Apart from positioning, function just like standard `CLAY` elements - including expanding to fit their children, etc. +- Apart from positioning, function just like standard elements - including expanding to fit their children, etc. The easiest mental model to use when thinking about floating containers is that they are a completely separate UI hierarchy, attached to a specific x,y point on their "parent". Floating elements uses `Clay_FloatingElementConfig` to configure specific options. -**Struct Definition (Pseudocode)** +**Struct Definition (Pseudocode)** ```C Clay_FloatingElementConfig { @@ -1474,26 +1384,30 @@ Clay_FloatingElementConfig { Clay_Dimensions expand { float width, float height }; - uint16_t zIndex; uint32_t parentId; - Clay_FloatingAttachPoints attachment { + int16_t zIndex; + Clay_FloatingAttachPoints attachPoint { .element = CLAY_ATTACH_POINT_LEFT_TOP (default) | CLAY_ATTACH_POINT_LEFT_CENTER | CLAY_ATTACH_POINT_LEFT_BOTTOM | CLAY_ATTACH_POINT_CENTER_TOP | CLAY_ATTACH_POINT_CENTER_CENTER | CLAY_ATTACH_POINT_CENTER_BOTTOM | CLAY_ATTACH_POINT_RIGHT_TOP | CLAY_ATTACH_POINT_RIGHT_CENTER | CLAY_ATTACH_POINT_RIGHT_BOTTOM .parent = CLAY_ATTACH_POINT_LEFT_TOP (default) | CLAY_ATTACH_POINT_LEFT_CENTER | CLAY_ATTACH_POINT_LEFT_BOTTOM | CLAY_ATTACH_POINT_CENTER_TOP | CLAY_ATTACH_POINT_CENTER_CENTER | CLAY_ATTACH_POINT_CENTER_BOTTOM | CLAY_ATTACH_POINT_RIGHT_TOP | CLAY_ATTACH_POINT_RIGHT_CENTER | CLAY_ATTACH_POINT_RIGHT_BOTTOM }; - Clay_PointerCaptureMode captureMode { + Clay_FloatingAttachToElement attachTo { CLAY_POINTER_CAPTURE_MODE_CAPTURE (default), CLAY_POINTER_CAPTURE_MODE_PASSTHROUGH }; + Clay_FloatingAttachToElement attachTo { + CLAY_ATTACH_TO_NONE (default), + CLAY_ATTACH_TO_PARENT, + CLAY_ATTACH_TO_ELEMENT_WITH_ID, + CLAY_ATTACH_TO_ROOT, + }; }; ``` -As with all config macros, `CLAY_FLOATING()` accepts designated initializer syntax and provides default values for any unspecified struct members. - **Fields** **`.offset`** - `Clay_Vector2` -`CLAY_FLOATING({ .offset = { -24, -24 } })` +`CLAY({ .floating = { .offset = { -24, -24 } } })` Used to apply a position offset to the floating container _after_ all other layout has been calculated. @@ -1501,7 +1415,7 @@ Used to apply a position offset to the floating container _after_ all other layo **`.expand`** - `Clay_Dimensions` -`CLAY_FLOATING({ .expand = { 16, 16 } })` +`CLAY({ .floating = { .expand = { 16, 16 } } })` Used to expand the width and height of the floating container _before_ laying out child elements. @@ -1509,7 +1423,7 @@ Used to expand the width and height of the floating container _before_ laying ou **`.zIndex`** - `float` -`CLAY_FLOATING({ .zIndex = 1 })` +`CLAY({ .floating = { .zIndex = 1 } })` All floating elements (as well as their entire child hierarchies) will be sorted by `.zIndex` order before being converted to render commands. If render commands are drawn in order, elements with higher `.zIndex` values will be drawn on top. @@ -1517,41 +1431,41 @@ All floating elements (as well as their entire child hierarchies) will be sorted **`.parentId`** - `uint32_t` -`CLAY_FLOATING({ .parentId = Clay_GetElementId("HeaderButton").id })` +`CLAY({ .floating = { .parentId = Clay_GetElementId("HeaderButton").id } })` By default, floating containers will "attach" to the parent element that they are declared inside. However, there are cases where this limitation could cause significant performance or ergonomics problems. `.parentId` allows you to specify a `CLAY_ID().id` to attach the floating container to. The parent element with the matching id can be declared anywhere in the hierarchy, it doesn't need to be declared before or after the floating container in particular. Consider the following case: ```C // Load an image somewhere in your code -CLAY(CLAY_IDI("SidebarButton", 1), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 1) }) { // .. some button contents if (tooltip.attachedButtonIndex == 1) { - CLAY_FLOATING(/* floating config... */) + CLAY({ /* floating config... */ }) } } -CLAY(CLAY_IDI("SidebarButton", 2), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 2) }) { // .. some button contents if (tooltip.attachedButtonIndex == 2) { - CLAY_FLOATING(/* floating config... */) + CLAY({ /* floating config... */ }) } } -CLAY(CLAY_IDI("SidebarButton", 3), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 3) }) { // .. some button contents if (tooltip.attachedButtonIndex == 3) { - CLAY_FLOATING(/* floating config... */) + CLAY({ /* floating config... */ }) } } -CLAY(CLAY_IDI("SidebarButton", 4), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 4) }) { // .. some button contents if (tooltip.attachedButtonIndex == 4) { - CLAY_FLOATING(/* floating config... */) + CLAY({ /* floating config... */ }) } } -CLAY(CLAY_IDI("SidebarButton", 5), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 5) }) { // .. some button contents if (tooltip.attachedButtonIndex == 5) { - CLAY_FLOATING(/* floating config... */) + CLAY({ /* floating config... */ }) } } ``` @@ -1560,24 +1474,24 @@ The definition of the above UI is significantly polluted by the need to conditio ```C // Load an image somewhere in your code -CLAY(CLAY_IDI("SidebarButton", 1), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 1) }) { // .. some button contents } -CLAY(CLAY_IDI("SidebarButton", 2), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 2) }) { // .. some button contents } -CLAY(CLAY_IDI("SidebarButton", 3), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 3) }) { // .. some button contents } -CLAY(CLAY_IDI("SidebarButton", 4), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 4) }) { // .. some button contents } -CLAY(CLAY_IDI("SidebarButton", 5), &CLAY_LAYOUT_DEFAULT) { +CLAY({ .id = CLAY_IDI("SidebarButton", 5) }) { // .. some button contents } // Any other point in the hierarchy -CLAY_FLOATING(CLAY_ID("OptionTooltip"), &CLAY_LAYOUT_DEFAULT, CLAY_FLOATING(.parentId = CLAY_IDI("SidebarButton", tooltip.attachedButtonIndex).id)) { +CLAY({ .id = CLAY_ID("OptionTooltip"), .floating = { .attachTo = CLAY_ATTACH_TO_ELEMENT_ID, .parentId = CLAY_IDI("SidebarButton", tooltip.attachedButtonIndex).id }) { // Tooltip contents... } ``` @@ -1586,7 +1500,7 @@ CLAY_FLOATING(CLAY_ID("OptionTooltip"), &CLAY_LAYOUT_DEFAULT, CLAY_FLOATING(.par **`.attachment`** - `Clay_FloatingAttachPoints` -`CLAY_FLOATING(.attachment = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_TOP });` +`CLAY({ .floating = { .attachment = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_TOP } } }) {}` In terms of positioning the floating container, `.attachment` specifies @@ -1601,13 +1515,13 @@ For example: "Attach the LEFT_CENTER of the floating container to the RIGHT_TOP of the parent" -`CLAY_FLOATING({ .attachment = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_TOP } });` +`CLAY({ .floating = { .attachment = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_TOP } } });`  **`.pointerCaptureMode`** - `Clay_PointerCaptureMode` -`CLAY_FLOATING({ .pointerCaptureMode = CLAY_POINTER_CAPTURE_MODE_CAPTURE })` +`CLAY({ .floating = { .pointerCaptureMode = CLAY_POINTER_CAPTURE_MODE_CAPTURE } })` Controls whether pointer events like hover and click should pass through to content underneath this floating element, or whether the pointer should be "captured" by this floating element. Defaults to `CLAY_POINTER_CAPTURE_MODE_CAPTURE`. @@ -1615,101 +1529,81 @@ Controls whether pointer events like hover and click should pass through to cont ```C // Horizontal container with three option buttons -CLAY(CLAY_ID("OptionsList"), CLAY_LAYOUT(.childGap = 16)) { - CLAY_RECTANGLE(CLAY_IDI("Option", 1), CLAY_LAYOUT(.padding = CLAY_PADDING_ALL(16)), CLAY_RECTANGLE(.color = COLOR_BLUE)) { - CLAY_TEXT(CLAY_IDI("OptionText", 1), CLAY_STRING("Option 1"), CLAY_TEXT_CONFIG()); +CLAY({ .id = CLAY_ID("OptionsList"), .layout = { childGap = 16 } }) { + CLAY({ .id = CLAY_IDI("Option", 1), .layout = { padding = CLAY_PADDING_ALL(16)), .backgroundColor = COLOR_BLUE } }) { + CLAY_TEXT(CLAY_STRING("Option 1"), CLAY_TEXT_CONFIG()); } - CLAY_RECTANGLE(CLAY_IDI("Option", 2), CLAY_LAYOUT(.padding = CLAY_PADDING_ALL(16)), CLAY_RECTANGLE(.color = COLOR_BLUE)) { - CLAY_TEXT(CLAY_IDI("OptionText", 2), CLAY_STRING("Option 2"), CLAY_TEXT_CONFIG()); + CLAY({ .id = CLAY_IDI("Option", 2), .layout = { padding = CLAY_PADDING_ALL(16)), .backgroundColor = COLOR_BLUE } }) { + CLAY_TEXT(CLAY_STRING("Option 2"), CLAY_TEXT_CONFIG()); // Floating tooltip will attach above the "Option 2" container and not affect widths or positions of other elements - CLAY_FLOATING(CLAY_ID("OptionTooltip"), &CLAY_LAYOUT_DEFAULT, CLAY_FLOATING({ .zIndex = 1, .attachment = { .element = CLAY_ATTACH_POINT_CENTER_BOTTOM, .parent = CLAY_ATTACH_POINT_CENTER_TOP } })) { - CLAY_TEXT(CLAY_IDI("OptionTooltipText", 1), CLAY_STRING("Most popular!"), CLAY_TEXT_CONFIG()); + CLAY({ .id = CLAY_ID("OptionTooltip"), .floating = { .zIndex = 1, .attachment = { .element = CLAY_ATTACH_POINT_CENTER_BOTTOM, .parent = CLAY_ATTACH_POINT_CENTER_TOP } } }) { + CLAY_TEXT(CLAY_STRING("Most popular!"), CLAY_TEXT_CONFIG()); } } - CLAY_RECTANGLE(CLAY_IDI("Option", 3), CLAY_LAYOUT(.padding = CLAY_PADDING_ALL(16)), CLAY_RECTANGLE(.color = COLOR_BLUE)) { - CLAY_TEXT(CLAY_IDI("OptionText", 3), CLAY_STRING("Option 3"), CLAY_TEXT_CONFIG()); + CLAY({ .id = CLAY_IDI("Option", 3), .layout = { padding = CLAY_PADDING_ALL(16)), .backgroundColor = COLOR_BLUE } }) { + CLAY_TEXT(CLAY_STRING("Option 3"), CLAY_TEXT_CONFIG()); } } // Floating containers can also be declared elsewhere in a layout, to avoid branching or polluting other UI for (int i = 0; i < 1000; i++) { - CLAY(CLAY_IDI("Option", i + 1), &CLAY_LAYOUT_DEFAULT) { + CLAY({ .id = CLAY_IDI("Option", i + 1) }) { // ... } } // Note the use of "parentId". // Floating tooltip will attach above the "Option 2" container and not affect widths or positions of other elements -CLAY_FLOATING(CLAY_ID("OptionTooltip"), &CLAY_LAYOUT_DEFAULT, CLAY_FLOATING({ .parentId = CLAY_IDI("Option", 2).id, .zIndex = 1, .attachment = { .element = CLAY_ATTACH_POINT_CENTER_BOTTOM, .parent = CLAY_ATTACH_POINT_TOP_CENTER } })) { - CLAY_TEXT(CLAY_IDI("OptionTooltipText", 1), CLAY_STRING("Most popular!"), CLAY_TEXT_CONFIG()); +CLAY({ .id = CLAY_ID("OptionTooltip"), .floating = { .parentId = CLAY_IDI("Option", 2).id, .zIndex = 1, .attachment = { .element = CLAY_ATTACH_POINT_CENTER_BOTTOM, .parent = CLAY_ATTACH_POINT_TOP_CENTER } } }) { + CLAY_TEXT(CLAY_STRING("Most popular!"), CLAY_TEXT_CONFIG()); } ``` -When using `.parentId`, the floating container can be declared anywhere after `BeginLayout` and before `EndLayout`. The target element matching the `.parentId` doesn't need to exist when `CLAY_FLOATING` is called. +When using `.parentId`, the floating container can be declared anywhere after `BeginLayout` and before `EndLayout`. The target element matching the `.parentId` doesn't need to exist when `Clay_FloatingElementConfig` is used. **Rendering** -`CLAY_FLOATING` elements will not generate any render commands. +`Clay_FloatingElementConfig` will not generate any specific render commands. --- -### CLAY_CUSTOM_ELEMENT +### Clay_CustomElementConfig + **Usage** -`CLAY_CUSTOM_ELEMENT(Clay_ElementId id, Clay_LayoutConfig *layoutConfig, Clay_CustomElementConfig *customConfig);` - -**Lifecycle** - -`Clay_BeginLayout()` -> `CLAY_CUSTOM_ELEMENT()` -> `Clay_EndLayout()` +`CLAY({ .custom = { .customData = &something } }) {}` **Notes** -**CUSTOM_ELEMENT** allows the user to pass custom data to the renderer. +**Clay_CustomElementConfig** allows the user to pass custom data to the renderer. **Struct Definition (Pseudocode)** ```C typedef struct { - #ifndef CLAY_EXTEND_CONFIG_CUSTOM - void * customData; // Note: This field will be replaced if #define CLAY_EXTEND_CONFIG_CUSTOM is specified - #else CLAY_EXTEND_CONFIG_CUSTOM - // Contents of CLAY_EXTEND_CONFIG_CUSTOM will be pasted here - #endif + void * customData; } Clay_CustomElementConfig; ``` -As with all config macros, `CLAY_CUSTOM_ELEMENT_CONFIG()` accepts designated initializer syntax and provides default values for any unspecified struct members. - -**Extension** - -The underlying `Clay_ImageCustomConfig` can be extended with new members by using: -```C -#define CLAY_EXTEND_CONFIG_CUSTOM float newField; -#include "clay.h" // Define your extension before including clay.h -``` - **Fields** `.customData` - `void *` -`CLAY_CUSTOM_CONFIG(.customData = &myCustomData)` +`CLAY({ .custom = { .customData = &myCustomData } })` -`.customData` is a generic void pointer that can be used to pass through custom data to the renderer. **Note:** this field is generally not recommended for usage due to the lack of type safety, see `#define CLAY_EXTEND_CONFIG_CUSTOM` in [Preprocessor Directives]() for an alternative. +`.customData` is a generic void pointer that can be used to pass through custom data to the renderer. **Examples** ```C -// Extend CLAY_CUSTOM_ELEMENT_CONFIG with your custom data -#define CLAY_EXTEND_CONFIG_CUSTOM struct t_CustomElementData customData; -// Extensions need to happen _before_ the clay include #include "clay.h" -enum CustomElementType { +typedef enum { CUSTOM_ELEMENT_TYPE_MODEL, CUSTOM_ELEMENT_TYPE_VIDEO -}; +} CustomElementType; // A rough example of how you could handle laying out 3d models in your UI -typedef struct t_CustomElementData { +typedef struct { CustomElementType type; union { Model model; @@ -1720,10 +1614,22 @@ typedef struct t_CustomElementData { Model myModel = Load3DModel(filePath); CustomElement modelElement = (CustomElement) { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel } + +typedef struct { + void* memory; + uintptr_t offset; +} Arena; + +// During init +Arena frameArena = (Arena) { .memory = malloc(1024) }; + // ... -CLAY(id, style) { - // This config is type safe and contains the CustomElementData struct - CLAY_CUSTOM_ELEMENT(id, layout, CLAY_CUSTOM_ELEMENT_CONFIG(.customData = { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel })) {} +CLAY(0) { + // Custom elements only take a single pointer, so we need to store the data somewhere + CustomElementData *modelData = (CustomElementData *)(frameArena.memory + frameArena.offset); + *modelData = (CustomElementData) { .type = CUSTOM_ELEMENT_TYPE_MODEL, .model = myModel }; + frameArena.offset += sizeof(CustomElementData); + CLAY({ .custom = { .customData = modelData } }) {} } // Later during your rendering @@ -1731,7 +1637,7 @@ switch (renderCommand->commandType) { // ... case CLAY_RENDER_COMMAND_TYPE_CUSTOM: { // Your extended struct is passed through - CustomElementData *data = renderCommand->elementConfig.customElementConfig->customData; + CustomElementData *customElement = renderCommand->config.customElementConfig->customData; if (!customElement) continue; switch (customElement->type) { case CUSTOM_ELEMENT_TYPE_MODEL: { @@ -1753,8 +1659,6 @@ switch (renderCommand->commandType) { Element is subject to [culling](#visibility-culling). Otherwise, a single `Clay_RenderCommand` with `commandType = CLAY_RENDER_COMMAND_TYPE_CUSTOM` will be created. -## Data Structures & Definitions - ### Clay_String ```C @@ -1844,7 +1748,6 @@ Represents the total capacity of the allocated memory in `.internalArray`. Represents the total number of `Clay_RenderCommand` elements stored consecutively at the address `.internalArray`. - --- **`.internalArray`** - `Clay_RenderCommand` @@ -1856,12 +1759,12 @@ An array of [Clay_RenderCommand](#clay_rendercommand)s representing the calculat ### Clay_RenderCommand ```C -typedef struct -{ +typedef struct { Clay_BoundingBox boundingBox; - Clay_ElementConfigUnion config; - Clay_String text; + Clay_RenderData renderData; + uintptr_t userData; uint32_t id; + int16_t zIndex; Clay_RenderCommandType commandType; } Clay_RenderCommand; ``` @@ -1895,32 +1798,94 @@ A rectangle representing the bounding box of this render command, with `.x` and --- -**`.config`** - `Clay_ElementConfigUnion` - -A C union containing various pointers to config data, with the type dependent on `.commandType`. Possible values include: - -- `config.rectangleElementConfig` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_RECTANGLE`. See [CLAY_RECTANGLE](#clay_rectangle) for details. -- `config.textElementConfig` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_TEXT`. See [CLAY_TEXT](#clay_text) for details. -- `config.imageElementConfig` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_IMAGE`. See [CLAY_IMAGE](#clay_image) for details. -- `config.borderElementConfig` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_BORDER`. See [CLAY_BORDER](#clay_border) for details. -- `config.customElementConfig` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_CUSTOM`. See [CLAY_CUSTOM](#clay_custom_element) for details. -- `config.floatingElementConfig` - Not used and will always be NULL. -- `config.scrollElementConfig` - Not used and will always be NULL. - ---- - -**`.text`** - `Clay_String` - -Only used if `.commandType == CLAY_RENDER_COMMAND_TYPE_TEXT`. A `Clay_String` containing a string slice (char *chars, int length) representing text to be rendered. **Note: This string is not guaranteed to be null terminated.** Clay saves significant performance overhead by using slices when wrapping text instead of having to clone new null terminated strings. If your renderer does not support **ptr, length** style strings (e.g. Raylib), you will need to clone this to a new C string before rendering. - ---- - **`.id`** - `uint32_t` The id that was originally used with the element macro that created this render command. See [CLAY_ID](#clay_id) for details. --- +**`.zIndex`** - `int16_t` + +The z index of the element, based on what was passed to the root floating configuration that this element is a child of. +Higher z indexes should be rendered _on top_ of lower z indexes. + +--- + +**`.renderData`** - `Clay_RenderData` + +```C +typedef union { + Clay_RectangleRenderData rectangle; + Clay_TextRenderData text; + Clay_ImageRenderData image; + Clay_CustomRenderData custom; + Clay_BorderRenderData border; +} Clay_RenderData; +``` + +A C union containing various structs, with the type dependent on `.commandType`. Possible values include: + +- `config.rectangle` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_RECTANGLE`. +- `config.text` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_TEXT`. See [Clay_Text](#clay_text) for details. +- `config.image` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_IMAGE`. See [Clay_Image](#clay_imageelementconfig) for details. +- `config.border` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_BORDER`. See [Clay_Border](#clay_borderelementconfig) for details. +- `config.custom` - Used when `.commandType == CLAY_RENDER_COMMAND_TYPE_CUSTOM`. See [Clay_Custom](#clay_customelementconfig) for details. + +**Union Structs** + +```C +typedef struct { + Clay_StringSlice stringContents; + Clay_Color textColor; + uint16_t fontId; + uint16_t fontSize; + uint16_t letterSpacing; + uint16_t lineHeight; +} Clay_TextRenderData; +``` + +```C +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; +} Clay_RectangleRenderData; +``` + +```C +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + Clay_Dimensions sourceDimensions; + void* imageData; +} Clay_ImageRenderData; +``` + +```C +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + void* customData; +} Clay_CustomRenderData; +``` + +```C +typedef struct { + Clay_Color color; + Clay_CornerRadius cornerRadius; + Clay_BorderWidth width; +} Clay_BorderRenderData; +``` + +```C +typedef union { + Clay_RectangleRenderData rectangle; + Clay_TextRenderData text; + Clay_ImageRenderData image; + Clay_CustomRenderData custom; + Clay_BorderRenderData border; +} Clay_RenderData; +``` + ### Clay_ScrollContainerData ```C diff --git a/bindings/odin/build-clay-lib.sh b/bindings/odin/build-clay-lib.sh index 770943f..d05badf 100755 --- a/bindings/odin/build-clay-lib.sh +++ b/bindings/odin/build-clay-lib.sh @@ -1,12 +1,12 @@ cp ../../clay.h clay.c; # Intel Mac -clang -c -DCLAY_IMPLEMENTATION -o clay.o -static -target x86_64-apple-darwin clay.c -fPIC && ar r clay-odin/macos/clay.a clay.o; +clang -c -DCLAY_IMPLEMENTATION -o clay.o -ffreestanding -static -target x86_64-apple-darwin clay.c -fPIC && ar r clay-odin/macos/clay.a clay.o; # ARM Mac clang -c -DCLAY_IMPLEMENTATION -g -o clay.o -static clay.c -fPIC && ar r clay-odin/macos-arm64/clay.a clay.o; # x64 Windows -clang -c -DCLAY_IMPLEMENTATION -o clay-odin/windows/clay.lib -target x86_64-pc-windows-msvc -fuse-ld=llvm-lib -static clay.c; +clang -c -DCLAY_IMPLEMENTATION -o clay-odin/windows/clay.lib -ffreestanding -target x86_64-pc-windows-msvc -fuse-ld=llvm-lib -static clay.c; # Linux -clang -c -DCLAY_IMPLEMENTATION -o clay.o -static -target x86_64-unknown-linux-gnu clay.c -fPIC && ar r clay-odin/linux/clay.a clay.o; +clang -c -DCLAY_IMPLEMENTATION -o clay.o -ffreestanding -static -target x86_64-unknown-linux-gnu clay.c -fPIC && ar r clay-odin/linux/clay.a clay.o; # WASM clang -c -DCLAY_IMPLEMENTATION -o clay-odin/wasm/clay.o -target wasm32 -nostdlib -static clay.c; rm clay.o; diff --git a/bindings/odin/clay-odin/clay.odin b/bindings/odin/clay-odin/clay.odin index b84ebe8..08a3543 100644 --- a/bindings/odin/clay-odin/clay.odin +++ b/bindings/odin/clay-odin/clay.odin @@ -101,7 +101,6 @@ RenderCommandType :: enum EnumBackingType { RectangleElementConfig :: struct { color: Color, - cornerRadius: CornerRadius, } TextWrapMode :: enum EnumBackingType { @@ -129,13 +128,17 @@ CustomElementConfig :: struct { customData: rawptr, } +BorderWidth :: struct { + left: u16, + right: u16, + top: u16, + bottom: u16, + betweenChildren: u16, +} + BorderElementConfig :: struct { - left: BorderData, - right: BorderData, - top: BorderData, - bottom: BorderData, - betweenChildren: BorderData, - cornerRadius: CornerRadius, + color: Color, + width: BorderWidth, } ScrollElementConfig :: struct { @@ -144,15 +147,15 @@ ScrollElementConfig :: struct { } FloatingAttachPointType :: enum EnumBackingType { - LEFT_TOP, - LEFT_CENTER, - LEFT_BOTTOM, - CENTER_TOP, - CENTER_CENTER, - CENTER_BOTTOM, - RIGHT_TOP, - RIGHT_CENTER, - RIGHT_BOTTOM, + LeftTop, + LeftCenter, + LeftBottom, + CenterTop, + CenterCenter, + CenterBottom, + RightTop, + RightCenter, + RightBottom, } FloatingAttachPoints :: struct { @@ -161,34 +164,74 @@ FloatingAttachPoints :: struct { } PointerCaptureMode :: enum EnumBackingType { - CAPTURE, - PASSTHROUGH, + Capture, + Passthrough, +} + +FloatingAttachToElement :: enum EnumBackingType { + None, + Parent, + ElementWithId, + Root, } FloatingElementConfig :: struct { offset: Vector2, expand: Dimensions, - zIndex: u16, parentId: u32, + zIndex: i32, attachment: FloatingAttachPoints, pointerCaptureMode: PointerCaptureMode, + attachTo: FloatingAttachToElement } -ElementConfigUnion :: struct #raw_union { - rectangleElementConfig: ^RectangleElementConfig, - textElementConfig: ^TextElementConfig, - imageElementConfig: ^ImageElementConfig, - customElementConfig: ^CustomElementConfig, - borderElementConfig: ^BorderElementConfig, +TextRenderData :: struct { + stringContents: StringSlice, + textColor: Color, + fontId: u16, + fontSize: u16, + letterSpacing: u16, + lineHeight: u16, +} + +RectangleRenderData :: struct { + backgroundColor: Color, + cornerRadius: CornerRadius, +} + +ImageRenderData :: struct { + backgroundColor: Color, + cornerRadius: CornerRadius, + sourceDimensions: Dimensions, + imageData: rawptr, +} + +CustomRenderData :: struct { + backgroundColor: Color, + cornerRadius: CornerRadius, + customData: rawptr, +} + +BorderRenderData :: struct { + color: Color, + cornerRadius: CornerRadius, + width: BorderWidth, +} + +RenderCommandData :: struct #raw_union { + rectangle: RectangleRenderData, + text: TextRenderData, + image: ImageRenderData, + custom: CustomRenderData, + border: BorderRenderData, } RenderCommand :: struct { - boundingBox: BoundingBox, - config: ElementConfigUnion, - text: StringSlice, - zIndex: i32, - id: u32, - commandType: RenderCommandType, + boundingBox: BoundingBox, + renderData: RenderCommandData, + zIndex: i32, + id: u32, + commandType: RenderCommandType, } ScrollContainerData :: struct { @@ -273,10 +316,16 @@ ClayArray :: struct($type: typeid) { internalArray: [^]type, } -TypedConfig :: struct { - type: ElementConfigType, - config: rawptr, - id: ElementId, +ElementDeclaration :: struct { + id: ElementId, + layout: LayoutConfig, + backgroundColor: Color, + cornerRadius: CornerRadius, + image: ImageElementConfig, + floating: FloatingElementConfig, + custom: CustomElementConfig, + scroll: ScrollElementConfig, + border: BorderElementConfig, } ErrorType :: enum { @@ -321,51 +370,27 @@ foreign Clay { @(link_prefix = "Clay_", default_calling_convention = "c", private) foreign Clay { _OpenElement :: proc() --- + _ConfigureOpenElement :: proc(config: ElementDeclaration) --- _CloseElement :: proc() --- - _ElementPostConfiguration :: proc() --- _OpenTextElement :: proc(text: String, textConfig: ^TextElementConfig) --- - _AttachId :: proc(id: ElementId) --- - _AttachLayoutConfig :: proc(layoutConfig: ^LayoutConfig) --- - _AttachElementConfig :: proc(config: rawptr, type: ElementConfigType) --- - _StoreLayoutConfig :: proc(config: LayoutConfig) -> ^LayoutConfig --- - _StoreRectangleElementConfig :: proc(config: RectangleElementConfig) -> ^RectangleElementConfig --- _StoreTextElementConfig :: proc(config: TextElementConfig) -> ^TextElementConfig --- - _StoreImageElementConfig :: proc(config: ImageElementConfig) -> ^ImageElementConfig --- - _StoreFloatingElementConfig :: proc(config: FloatingElementConfig) -> ^FloatingElementConfig --- - _StoreCustomElementConfig :: proc(config: CustomElementConfig) -> ^CustomElementConfig --- - _StoreScrollElementConfig :: proc(config: ScrollElementConfig) -> ^ScrollElementConfig --- - _StoreBorderElementConfig :: proc(config: BorderElementConfig) -> ^BorderElementConfig --- _HashString :: proc(toHash: String, index: u32, seed: u32) -> ElementId --- _GetOpenLayoutElementId :: proc() -> u32 --- } -@(require_results, deferred_none = _CloseElement) -UI :: proc(configs: ..TypedConfig) -> bool { +ClayOpenElement :: struct { + configure: proc (config: ElementDeclaration) -> bool +} + +ConfigureOpenElement :: proc(config: ElementDeclaration) -> bool { + _ConfigureOpenElement(config) + return true; +} + +@(deferred_none = _CloseElement) +UI :: proc() -> ClayOpenElement { _OpenElement() - for config in configs { - #partial switch (config.type) { - case ElementConfigType.Id: - _AttachId(config.id) - case ElementConfigType.Layout: - _AttachLayoutConfig(cast(^LayoutConfig)config.config) - case: - _AttachElementConfig(config.config, config.type) - } - } - _ElementPostConfiguration() - return true -} - -Layout :: proc(config: LayoutConfig) -> TypedConfig { - return {type = ElementConfigType.Layout, config = _StoreLayoutConfig(config) } -} - -PaddingAll :: proc (padding: u16) -> Padding { - return { padding, padding, padding, padding } -} - -Rectangle :: proc(config: RectangleElementConfig) -> TypedConfig { - return {type = ElementConfigType.Rectangle, config = _StoreRectangleElementConfig(config)} + return { configure = ConfigureOpenElement } } Text :: proc(text: string, config: ^TextElementConfig) { @@ -376,44 +401,8 @@ TextConfig :: proc(config: TextElementConfig) -> ^TextElementConfig { return _StoreTextElementConfig(config) } -Image :: proc(config: ImageElementConfig) -> TypedConfig { - return {type = ElementConfigType.Image, config = _StoreImageElementConfig(config)} -} - -Floating :: proc(config: FloatingElementConfig) -> TypedConfig { - return {type = ElementConfigType.Floating, config = _StoreFloatingElementConfig(config)} -} - -Custom :: proc(config: CustomElementConfig) -> TypedConfig { - return {type = ElementConfigType.Custom, config = _StoreCustomElementConfig(config)} -} - -Scroll :: proc(config: ScrollElementConfig) -> TypedConfig { - return {type = ElementConfigType.Scroll, config = _StoreScrollElementConfig(config)} -} - -Border :: proc(config: BorderElementConfig) -> TypedConfig { - return {type = ElementConfigType.Border, config = _StoreBorderElementConfig(config)} -} - -BorderOutside :: proc(outsideBorders: BorderData) -> TypedConfig { - return { type = ElementConfigType.Border, config = _StoreBorderElementConfig((BorderElementConfig){left = outsideBorders, right = outsideBorders, top = outsideBorders, bottom = outsideBorders}) } -} - -BorderOutsideRadius :: proc(outsideBorders: BorderData, radius: f32) -> TypedConfig { - return { type = ElementConfigType.Border, config = _StoreBorderElementConfig( - (BorderElementConfig){left = outsideBorders, right = outsideBorders, top = outsideBorders, bottom = outsideBorders, cornerRadius = {radius, radius, radius, radius}}, - ) } -} - -BorderAll :: proc(allBorders: BorderData) -> TypedConfig { - return { type = ElementConfigType.Border, config = _StoreBorderElementConfig((BorderElementConfig){left = allBorders, right = allBorders, top = allBorders, bottom = allBorders, betweenChildren = allBorders}) } -} - -BorderAllRadius :: proc(allBorders: BorderData, radius: f32) -> TypedConfig { - return { type = ElementConfigType.Border, config = _StoreBorderElementConfig( - (BorderElementConfig){left = allBorders, right = allBorders, top = allBorders, bottom = allBorders, cornerRadius = {radius, radius, radius, radius}}, - ) } +PaddingAll :: proc(allPadding: u16) -> Padding { + return { left = allPadding, right = allPadding, top = allPadding, bottom = allPadding } } CornerRadiusAll :: proc(radius: f32) -> CornerRadius { @@ -440,6 +429,6 @@ MakeString :: proc(label: string) -> String { return String{chars = raw_data(label), length = cast(c.int)len(label)} } -ID :: proc(label: string, index: u32 = 0) -> TypedConfig { - return { type = ElementConfigType.Id, id = _HashString(MakeString(label), index, 0) } +ID :: proc(label: string, index: u32 = 0) -> ElementId { + return _HashString(MakeString(label), index, 0) } diff --git a/bindings/odin/clay-odin/linux/clay.a b/bindings/odin/clay-odin/linux/clay.a index 02437d899937e81975486a48dac7bdcb84341a00..5c7230166b3ceb0768b457d743ce170707422e46 100644 GIT binary patch literal 167596 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 b=JBsm|C_nbx)P~BEb|8+$Dgw|+yDOoi27a5 literal 196148 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 G|NjH0<?b{9 diff --git a/bindings/odin/clay-odin/macos-arm64/clay.a b/bindings/odin/clay-odin/macos-arm64/clay.a index 6d539ea13e9935e497e514185de97e26e0924013..dc473319642c613c22eafc7bfdb7441b78b0f06f 100644 GIT binary patch literal 252160 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 literal 251976 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⪼oav=xMyKT-?PE#vgYonwMO0>3!mTo<+A^P<4I3& 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 diff --git a/bindings/odin/clay-odin/macos/clay.a b/bindings/odin/clay-odin/macos/clay.a index 20c6124b9c3ed3d625fd99bfc09f2c1191d50855..86597c986d0daf175afc9c99a6fff47916e0ffbd 100644 GIT binary patch literal 139744 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 literal 166144 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%0A`n2xY(K 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 diff --git a/bindings/odin/clay-odin/wasm/clay.o b/bindings/odin/clay-odin/wasm/clay.o index bf4f8db00c57986c10c7ce8f51b16d4e3e6f1d81..a1240fb9eec47a97becea05814507c0e3c791f4f 100644 GIT binary patch literal 253760 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 literal 278900 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	EZ=*1O#sjMG~Rz4Vo*p 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 X;r<_l;<Mf%@0mmJt<w+iEu8-kQKsdw diff --git a/bindings/odin/clay-odin/windows/clay.lib b/bindings/odin/clay-odin/windows/clay.lib index 45e430edc1168d744e11f3faf1e0e6dd09d2c705..d8eaf8a2bbde8e84c55dea19c48061a0e08cacdf 100644 GIT binary patch literal 168437 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 literal 189024 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 b#ew6-3iI}GT;)8r+%~^?d-~WqEHC>1$EL^E diff --git a/bindings/odin/examples/clay-official-website/clay-official-website.odin b/bindings/odin/examples/clay-official-website/clay-official-website.odin index 7dcd1eb..5d376fb 100644 --- a/bindings/odin/examples/clay-official-website/clay-official-website.odin +++ b/bindings/odin/examples/clay-official-website/clay-official-website.odin @@ -57,46 +57,52 @@ headerTextConfig := clay.TextElementConfig { textColor = {61, 26, 5, 255}, } +border2pxRed := clay.BorderElementConfig { + width = { 2, 2, 2, 2, 0 }, + color = COLOR_RED +} + LandingPageBlob :: proc(index: u32, fontSize: u16, fontId: u16, color: clay.Color, text: string, image: ^raylib.Texture2D) { - if clay.UI( - clay.ID("HeroBlob", index), - clay.Layout({sizing = {width = clay.SizingGrow({max = 480})}, padding = clay.PaddingAll(16), childGap = 16, childAlignment = clay.ChildAlignment{y = .CENTER}}), - clay.BorderOutsideRadius({2, color}, 10), - ) { - if clay.UI( - clay.ID("CheckImage", index), - clay.Layout({sizing = {width = clay.SizingFixed(32)}}), - clay.Image({imageData = image, sourceDimensions = {128, 128}}), - ) {} + if clay.UI().configure({ + id = clay.ID("HeroBlob", index), + layout = { sizing = { width = clay.SizingGrow({ max = 480 }) }, padding = clay.PaddingAll(16), childGap = 16, childAlignment = clay.ChildAlignment{ y = .CENTER } }, + border = border2pxRed, + cornerRadius = clay.CornerRadiusAll(10) + }) { + if clay.UI().configure({ + id = clay.ID("CheckImage", index), + layout = { sizing = { width = clay.SizingFixed(32) } }, + image = { imageData = image, sourceDimensions = { 128, 128 } }, + }) {} clay.Text(text, clay.TextConfig({fontSize = fontSize, fontId = fontId, textColor = color})) } } LandingPageDesktop :: proc() { - if clay.UI( - clay.ID("LandingPage1Desktop"), - clay.Layout({sizing = {width = clay.SizingGrow({}), height = clay.SizingFit({min = cast(f32)windowHeight - 70})}, childAlignment = {y = .CENTER}, padding = {left = 50, right = 50}}), - ) { - if clay.UI( - clay.ID("LandingPage1"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingGrow({})}, childAlignment = {y = .CENTER}, padding = clay.PaddingAll(32), childGap = 32}), - clay.Border({left = {2, COLOR_RED}, right = {2, COLOR_RED}}), - ) { - if clay.UI(clay.ID("LeftText"), clay.Layout({sizing = {width = clay.SizingPercent(0.55)}, layoutDirection = .TOP_TO_BOTTOM, childGap = 8})) { + if clay.UI().configure({ + id = clay.ID("LandingPage1Desktop"), + layout = { sizing = { width = clay.SizingGrow({ }), height = clay.SizingFit({ min = cast(f32)windowHeight - 70 }) }, childAlignment = { y = .CENTER }, padding = { left = 50, right = 50 } }, + }) { + if clay.UI().configure({ + id = clay.ID("LandingPage1"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) }, childAlignment = { y = .CENTER }, padding = clay.PaddingAll(32), childGap = 32 }, + border = { COLOR_RED, { left = 2, right = 2 } }, + }) { + if clay.UI().configure({ id = clay.ID("LeftText"), layout = { sizing = { width = clay.SizingPercent(0.55) }, layoutDirection = .TOP_TO_BOTTOM, childGap = 8 } }) { clay.Text( "Clay is a flex-box style UI auto layout library in C, with declarative syntax and microsecond performance.", clay.TextConfig({fontSize = 56, fontId = FONT_ID_TITLE_56, textColor = COLOR_RED}), ) -// if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({}), height = clay.SizingFixed(32)}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({}), height = clay.SizingFixed(32) } } }) {} clay.Text( "Clay is laying out this webpage right now!", clay.TextConfig({fontSize = 36, fontId = FONT_ID_TITLE_36, textColor = COLOR_ORANGE}), ) } - if clay.UI( - clay.ID("HeroImageOuter"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {width = clay.SizingPercent(0.45)}, childAlignment = {x = .CENTER}, childGap = 16}), - ) { + if clay.UI().configure({ + id = clay.ID("HeroImageOuter"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { width = clay.SizingPercent(0.45) }, childAlignment = { x = .CENTER }, childGap = 16 }, + }) { LandingPageBlob(1, 30, FONT_ID_BODY_30, COLOR_BLOB_BORDER_5, "High performance", &checkImage5) LandingPageBlob(2, 30, FONT_ID_BODY_30, COLOR_BLOB_BORDER_4, "Flexbox-style responsive layout", &checkImage4) LandingPageBlob(3, 30, FONT_ID_BODY_30, COLOR_BLOB_BORDER_3, "Declarative syntax", &checkImage3) @@ -108,33 +114,31 @@ LandingPageDesktop :: proc() { } LandingPageMobile :: proc() { - if clay.UI( - clay.ID("LandingPage1Mobile"), - clay.Layout( - { - layoutDirection = .TOP_TO_BOTTOM, - sizing = {width = clay.SizingGrow({}), height = clay.SizingFit({min = cast(f32)windowHeight - 70})}, - childAlignment = {x = .CENTER, y = .CENTER}, - padding = {16, 16, 32, 32}, - childGap = 32, - }, - ), - ) { - if clay.UI(clay.ID("LeftText"), clay.Layout({sizing = {width = clay.SizingGrow({})}, layoutDirection = .TOP_TO_BOTTOM, childGap = 8})) { + if clay.UI().configure({ + id = clay.ID("LandingPage1Mobile"), + layout = { + layoutDirection = .TOP_TO_BOTTOM, + sizing = { width = clay.SizingGrow({ }), height = clay.SizingFit({ min = cast(f32)windowHeight - 70 }) }, + childAlignment = { x = .CENTER, y = .CENTER }, + padding = { 16, 16, 32, 32 }, + childGap = 32, + }, + }) { + if clay.UI().configure({ id = clay.ID("LeftText"), layout = { sizing = { width = clay.SizingGrow({ }) }, layoutDirection = .TOP_TO_BOTTOM, childGap = 8 } }) { clay.Text( "Clay is a flex-box style UI auto layout library in C, with declarative syntax and microsecond performance.", clay.TextConfig({fontSize = 48, fontId = FONT_ID_TITLE_48, textColor = COLOR_RED}), ) - if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({}), height = clay.SizingFixed(32)}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({}), height = clay.SizingFixed(32) } } }) {} clay.Text( "Clay is laying out this webpage right now!", clay.TextConfig({fontSize = 32, fontId = FONT_ID_TITLE_32, textColor = COLOR_ORANGE}), ) } - if clay.UI( - clay.ID("HeroImageOuter"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {width = clay.SizingGrow({})}, childAlignment = {x = .CENTER}, childGap = 16}), - ) { + if clay.UI().configure({ + id = clay.ID("HeroImageOuter"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { width = clay.SizingGrow({ }) }, childAlignment = { x = .CENTER }, childGap = 16 }, + }) { LandingPageBlob(1, 24, FONT_ID_BODY_24, COLOR_BLOB_BORDER_5, "High performance", &checkImage5) LandingPageBlob(2, 24, FONT_ID_BODY_24, COLOR_BLOB_BORDER_4, "Flexbox-style responsive layout", &checkImage4) LandingPageBlob(3, 24, FONT_ID_BODY_24, COLOR_BLOB_BORDER_3, "Declarative syntax", &checkImage3) @@ -146,20 +150,20 @@ LandingPageMobile :: proc() { FeatureBlocks :: proc(widthSizing: clay.SizingAxis, outerPadding: u16) { textConfig := clay.TextConfig({fontSize = 24, fontId = FONT_ID_BODY_24, textColor = COLOR_RED}) - if clay.UI( - clay.ID("HFileBoxOuter"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {width = widthSizing}, childAlignment = {y = .CENTER}, padding = {outerPadding, outerPadding, 32, 32}, childGap = 8}), - ) { - if clay.UI(clay.ID("HFileIncludeOuter"), clay.Layout({padding = {8, 8, 4, 4}}), clay.Rectangle({color = COLOR_RED, cornerRadius = clay.CornerRadiusAll(8)})) { + if clay.UI().configure({ + id = clay.ID("HFileBoxOuter"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { width = widthSizing }, childAlignment = { y = .CENTER }, padding = { outerPadding, outerPadding, 32, 32 }, childGap = 8 }, + }) { + if clay.UI().configure({ id = clay.ID("HFileIncludeOuter"), layout = { padding = { 8, 8, 4, 4 } }, backgroundColor = COLOR_RED, cornerRadius = clay.CornerRadiusAll(8) }) { clay.Text("#include clay.h", clay.TextConfig({fontSize = 24, fontId = FONT_ID_BODY_24, textColor = COLOR_LIGHT})) } clay.Text("~2000 lines of C99.", textConfig) clay.Text("Zero dependencies, including no C standard library.", textConfig) } - if clay.UI( - clay.ID("BringYourOwnRendererOuter"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {width = widthSizing}, childAlignment = {y = .CENTER}, padding = {outerPadding, outerPadding, 32, 32}, childGap = 8}), - ) { + if clay.UI().configure({ + id = clay.ID("BringYourOwnRendererOuter"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { width = widthSizing }, childAlignment = { y = .CENTER }, padding = { outerPadding, outerPadding, 32, 32 }, childGap = 8 }, + }) { clay.Text("Renderer agnostic.", clay.TextConfig({fontId = FONT_ID_BODY_24, fontSize = 24, textColor = COLOR_ORANGE})) clay.Text("Layout with clay, then render with Raylib, WebGL Canvas or even as HTML.", textConfig) clay.Text("Flexible output for easy compositing in your custom engine or environment.", textConfig) @@ -167,31 +171,31 @@ FeatureBlocks :: proc(widthSizing: clay.SizingAxis, outerPadding: u16) { } FeatureBlocksDesktop :: proc() { - if clay.UI(clay.ID("FeatureBlocksOuter"), clay.Layout({sizing = {width = clay.SizingGrow({})}})) { - if clay.UI( - clay.ID("FeatureBlocksInner"), - clay.Layout({sizing = {width = clay.SizingGrow({})}, childAlignment = {y = .CENTER}}), - clay.Border({betweenChildren = {width = 2, color = COLOR_RED}}), - ) { + if clay.UI().configure({ id = clay.ID("FeatureBlocksOuter"), layout = { sizing = { width = clay.SizingGrow({}) } } }) { + if clay.UI().configure({ + id = clay.ID("FeatureBlocksInner"), + layout = { sizing = { width = clay.SizingGrow({ }) }, childAlignment = { y = .CENTER } }, + border = { width = { betweenChildren = 2}, color = COLOR_RED }, + }) { FeatureBlocks(clay.SizingPercent(0.5), 50) } } } FeatureBlocksMobile :: proc() { - if clay.UI( - clay.ID("FeatureBlocksInner"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {width = clay.SizingGrow({})}}), - clay.Border({betweenChildren = {width = 2, color = COLOR_RED}}), - ) { + if clay.UI().configure({ + id = clay.ID("FeatureBlocksInner"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { width = clay.SizingGrow({ }) } }, + border = { width = { betweenChildren = 2}, color = COLOR_RED }, + }) { FeatureBlocks(clay.SizingGrow({}), 16) } } DeclarativeSyntaxPage :: proc(titleTextConfig: clay.TextElementConfig, widthSizing: clay.SizingAxis) { - if clay.UI(clay.ID("SyntaxPageLeftText"), clay.Layout({sizing = {width = widthSizing}, layoutDirection = .TOP_TO_BOTTOM, childGap = 8})) { + if clay.UI().configure({ id = clay.ID("SyntaxPageLeftText"), layout = { sizing = { width = widthSizing }, layoutDirection = .TOP_TO_BOTTOM, childGap = 8 } }) { clay.Text("Declarative Syntax", clay.TextConfig(titleTextConfig)) - if clay.UI(clay.ID("SyntaxSpacer"), clay.Layout({sizing = {width = clay.SizingGrow({max = 16})}})) {} + if clay.UI().configure({ id = clay.ID("SyntaxSpacer"), layout = { sizing = { width = clay.SizingGrow({ max = 16 }) } } }) {} clay.Text( "Flexible and readable declarative syntax with nested UI element hierarchies.", clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_28, textColor = COLOR_RED}), @@ -205,43 +209,41 @@ DeclarativeSyntaxPage :: proc(titleTextConfig: clay.TextElementConfig, widthSizi clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_28, textColor = COLOR_RED}), ) } - if clay.UI(clay.ID("SyntaxPageRightImage"), clay.Layout({sizing = {width = widthSizing}, childAlignment = {x = .CENTER}})) { - if clay.UI( - clay.ID("SyntaxPageRightImageInner"), - clay.Layout({sizing = {width = clay.SizingGrow({max = 568})}}), - clay.Image({imageData = &syntaxImage, sourceDimensions = {1136, 1194}}), - ) {} + if clay.UI().configure({ id = clay.ID("SyntaxPageRightImage"), layout = { sizing = { width = widthSizing }, childAlignment = { x = .CENTER } } }) { + if clay.UI().configure({ + id = clay.ID("SyntaxPageRightImageInner"), + layout = { sizing = { width = clay.SizingGrow({ max = 568 }) } }, + image = { imageData = &syntaxImage, sourceDimensions = { 1136, 1194 } }, + }) {} } } DeclarativeSyntaxPageDesktop :: proc() { - if clay.UI( - clay.ID("SyntaxPageDesktop"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, childAlignment = {y = .CENTER}, padding = {left = 50, right = 50}}), - ) { - if clay.UI( - clay.ID("SyntaxPage"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingGrow({})}, childAlignment = {y = .CENTER}, padding = clay.PaddingAll(32), childGap = 32}), - clay.Border({left = {2, COLOR_RED}, right = {2, COLOR_RED}}), - ) { + if clay.UI().configure({ + id = clay.ID("SyntaxPageDesktop"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, childAlignment = { y = .CENTER }, padding = { left = 50, right = 50 } }, + }) { + if clay.UI().configure({ + id = clay.ID("SyntaxPage"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) }, childAlignment = { y = .CENTER }, padding = clay.PaddingAll(32), childGap = 32 }, + border = border2pxRed, + }) { DeclarativeSyntaxPage({fontSize = 52, fontId = FONT_ID_TITLE_52, textColor = COLOR_RED}, clay.SizingPercent(0.5)) } } } DeclarativeSyntaxPageMobile :: proc() { - if clay.UI( - clay.ID("SyntaxPageMobile"), - clay.Layout( - { - layoutDirection = .TOP_TO_BOTTOM, - sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, - childAlignment = {x = .CENTER, y = .CENTER}, - padding = {16, 16, 32, 32}, - childGap = 16, - }, - ), - ) { + if clay.UI().configure({ + id = clay.ID("SyntaxPageMobile"), + layout = { + layoutDirection = .TOP_TO_BOTTOM, + sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, + childAlignment = { x = .CENTER, y = .CENTER }, + padding = { 16, 16, 32, 32 }, + childGap = 16, + }, + }) { DeclarativeSyntaxPage({fontSize = 48, fontId = FONT_ID_TITLE_48, textColor = COLOR_RED}, clay.SizingGrow({})) } } @@ -253,9 +255,9 @@ ColorLerp :: proc(a: clay.Color, b: clay.Color, amount: f32) -> clay.Color { LOREM_IPSUM_TEXT := "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." HighPerformancePage :: proc(lerpValue: f32, titleTextConfig: clay.TextElementConfig, widthSizing: clay.SizingAxis) { - if clay.UI(clay.ID("PerformanceLeftText"), clay.Layout({sizing = {width = widthSizing}, layoutDirection = .TOP_TO_BOTTOM, childGap = 8})) { + if clay.UI().configure({ id = clay.ID("PerformanceLeftText"), layout = { sizing = { width = widthSizing }, layoutDirection = .TOP_TO_BOTTOM, childGap = 8 } }) { clay.Text("High Performance", clay.TextConfig(titleTextConfig)) - if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({max = 16})}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({ max = 16 }) } }}) {} clay.Text( "Fast enough to recompute your entire UI every frame.", clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_36, textColor = COLOR_LIGHT}), @@ -269,24 +271,24 @@ HighPerformancePage :: proc(lerpValue: f32, titleTextConfig: clay.TextElementCon clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_36, textColor = COLOR_LIGHT}), ) } - if clay.UI(clay.ID("PerformanceRightImageOuter"), clay.Layout({sizing = {width = widthSizing}, childAlignment = {x = .CENTER}})) { - if clay.UI( - clay.ID("PerformanceRightBorder"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(400)}}), - clay.BorderAll({width = 2, color = COLOR_LIGHT}), - ) { - if clay.UI( - clay.ID("AnimationDemoContainerLeft"), - clay.Layout({sizing = {clay.SizingPercent(0.35 + 0.3 * lerpValue), clay.SizingGrow({})}, childAlignment = {y = .CENTER}, padding = clay.PaddingAll(16)}), - clay.Rectangle({color = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue)}), - ) { + if clay.UI().configure({ id = clay.ID("PerformanceRightImageOuter"), layout = { sizing = { width = widthSizing }, childAlignment = { x = .CENTER } } }) { + if clay.UI().configure({ + id = clay.ID("PerformanceRightBorder"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(400) } }, + border = { COLOR_LIGHT, {2, 2, 2, 2, 2} }, + }) { + if clay.UI().configure({ + id = clay.ID("AnimationDemoContainerLeft"), + layout = { sizing = { clay.SizingPercent(0.35 + 0.3 * lerpValue), clay.SizingGrow({ }) }, childAlignment = { y = .CENTER }, padding = clay.PaddingAll(16) }, + backgroundColor = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue), + }) { clay.Text(LOREM_IPSUM_TEXT, clay.TextConfig({fontSize = 16, fontId = FONT_ID_BODY_16, textColor = COLOR_LIGHT})) } - if clay.UI( - clay.ID("AnimationDemoContainerRight"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingGrow({})}, childAlignment = {y = .CENTER}, padding = clay.PaddingAll(16)}), - clay.Rectangle({color = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue)}), - ) { + if clay.UI().configure({ + id = clay.ID("AnimationDemoContainerRight"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) }, childAlignment = { y = .CENTER }, padding = clay.PaddingAll(16) }, + backgroundColor = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue), + }) { clay.Text(LOREM_IPSUM_TEXT, clay.TextConfig({fontSize = 16, fontId = FONT_ID_BODY_16, textColor = COLOR_LIGHT})) } } @@ -294,60 +296,58 @@ HighPerformancePage :: proc(lerpValue: f32, titleTextConfig: clay.TextElementCon } HighPerformancePageDesktop :: proc(lerpValue: f32) { - if clay.UI( - clay.ID("PerformanceDesktop"), - clay.Layout( - {sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, childAlignment = {y = .CENTER}, padding = {82, 82, 32, 32}, childGap = 64}, - ), - clay.Rectangle({color = COLOR_RED}), - ) { + if clay.UI().configure({ + id = clay.ID("PerformanceDesktop"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, childAlignment = { y = .CENTER }, padding = { 82, 82, 32, 32 }, childGap = 64 }, + backgroundColor = COLOR_RED, + }) { HighPerformancePage(lerpValue, {fontSize = 52, fontId = FONT_ID_TITLE_52, textColor = COLOR_LIGHT}, clay.SizingPercent(0.5)) } } HighPerformancePageMobile :: proc(lerpValue: f32) { - if clay.UI( - clay.ID("PerformanceMobile"), - clay.Layout( - { - layoutDirection = .TOP_TO_BOTTOM, - sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, - childAlignment = {x = .CENTER, y = .CENTER}, - padding = { 16, 16, 32, 32}, - childGap = 32, - }, - ), - clay.Rectangle({color = COLOR_RED}), - ) { + if clay.UI().configure({ + id = clay.ID("PerformanceMobile"), + layout = { + layoutDirection = .TOP_TO_BOTTOM, + sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, + childAlignment = { x = .CENTER, y = .CENTER }, + padding = { 16, 16, 32, 32 }, + childGap = 32, + }, + backgroundColor = COLOR_RED, + }) { HighPerformancePage(lerpValue, {fontSize = 48, fontId = FONT_ID_TITLE_48, textColor = COLOR_LIGHT}, clay.SizingGrow({})) } } RendererButtonActive :: proc(index: i32, text: string) { - if clay.UI( - clay.Layout({sizing = {width = clay.SizingFixed(300)}, padding = clay.PaddingAll(16)}), - clay.Rectangle({color = COLOR_RED, cornerRadius = clay.CornerRadiusAll(10)}), - ) { + if clay.UI().configure({ + layout = { sizing = { width = clay.SizingFixed(300) }, padding = clay.PaddingAll(16) }, + backgroundColor = COLOR_RED, + cornerRadius = clay.CornerRadiusAll(10) + }) { clay.Text(text, clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_28, textColor = COLOR_LIGHT})) } } RendererButtonInactive :: proc(index: u32, text: string) { - if clay.UI(clay.Layout({}), clay.BorderOutsideRadius({2, COLOR_RED}, 10)) { - if clay.UI( - clay.ID("RendererButtonInactiveInner", index), - clay.Layout({sizing = {width = clay.SizingFixed(300)}, padding = clay.PaddingAll(16)}), - clay.Rectangle({color = COLOR_LIGHT, cornerRadius = clay.CornerRadiusAll(10)}), - ) { + if clay.UI().configure({ border = border2pxRed }) { + if clay.UI().configure({ + id = clay.ID("RendererButtonInactiveInner", index), + layout = { sizing = { width = clay.SizingFixed(300) }, padding = clay.PaddingAll(16) }, + backgroundColor = COLOR_LIGHT, + cornerRadius = clay.CornerRadiusAll(10) + }) { clay.Text(text, clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_28, textColor = COLOR_RED})) } } } RendererPage :: proc(titleTextConfig: clay.TextElementConfig, widthSizing: clay.SizingAxis) { - if clay.UI(clay.ID("RendererLeftText"), clay.Layout({sizing = {width = widthSizing}, layoutDirection = .TOP_TO_BOTTOM, childGap = 8})) { + if clay.UI().configure({ id = clay.ID("RendererLeftText"), layout = { sizing = { width = widthSizing }, layoutDirection = .TOP_TO_BOTTOM, childGap = 8 } }) { clay.Text("Renderer & Platform Agnostic", clay.TextConfig(titleTextConfig)) - if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({max = 16})}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({ max = 16 }) } } }) {} clay.Text( "Clay outputs a sorted array of primitive render commands, such as RECTANGLE, TEXT or IMAGE.", clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_36, textColor = COLOR_RED}), @@ -361,45 +361,43 @@ RendererPage :: proc(titleTextConfig: clay.TextElementConfig, widthSizing: clay. clay.TextConfig({fontSize = 28, fontId = FONT_ID_BODY_36, textColor = COLOR_RED}), ) } - if clay.UI( - clay.ID("RendererRightText"), - clay.Layout({sizing = {width = widthSizing}, childAlignment = {x = .CENTER}, layoutDirection = .TOP_TO_BOTTOM, childGap = 16}), - ) { + if clay.UI().configure({ + id = clay.ID("RendererRightText"), + layout = { sizing = { width = widthSizing }, childAlignment = { x = .CENTER }, layoutDirection = .TOP_TO_BOTTOM, childGap = 16 }, + }) { clay.Text("Try changing renderer!", clay.TextConfig({fontSize = 36, fontId = FONT_ID_BODY_36, textColor = COLOR_ORANGE})) - if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({max = 32})}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({ max = 32 }) } } }) {} RendererButtonActive(0, "Raylib Renderer") } } RendererPageDesktop :: proc() { - if clay.UI( - clay.ID("RendererPageDesktop"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, childAlignment = {y = .CENTER}, padding = {left = 50, right = 50}}), - ) { - if clay.UI( - clay.ID("RendererPage"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingGrow({})}, childAlignment = {y = .CENTER}, padding = clay.PaddingAll(32), childGap = 32}), - clay.Border({left = {2, COLOR_RED}, right = {2, COLOR_RED}}), - ) { + if clay.UI().configure({ + id = clay.ID("RendererPageDesktop"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, childAlignment = { y = .CENTER }, padding = { left = 50, right = 50 } }, + }) { + if clay.UI().configure({ + id = clay.ID("RendererPage"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) }, childAlignment = { y = .CENTER }, padding = clay.PaddingAll(32), childGap = 32 }, + border = { COLOR_RED, { left = 2, right = 2 } }, + }) { RendererPage({fontSize = 52, fontId = FONT_ID_TITLE_52, textColor = COLOR_RED}, clay.SizingPercent(0.5)) } } } RendererPageMobile :: proc() { - if clay.UI( - clay.ID("RendererMobile"), - clay.Layout( - { - layoutDirection = .TOP_TO_BOTTOM, - sizing = {clay.SizingGrow({}), clay.SizingFit({min = cast(f32)windowHeight - 50})}, - childAlignment = {x = .CENTER, y = .CENTER}, - padding = {16, 16, 32, 32}, - childGap = 32, - }, - ), - clay.Rectangle({color = COLOR_LIGHT}), - ) { + if clay.UI().configure({ + id = clay.ID("RendererMobile"), + layout = { + layoutDirection = .TOP_TO_BOTTOM, + sizing = { clay.SizingGrow({ }), clay.SizingFit({ min = cast(f32)windowHeight - 50 }) }, + childAlignment = { x = .CENTER, y = .CENTER }, + padding = { 16, 16, 32, 32 }, + childGap = 32, + }, + backgroundColor = COLOR_LIGHT, + }) { RendererPage({fontSize = 48, fontId = FONT_ID_TITLE_48, textColor = COLOR_RED}, clay.SizingGrow({})) } } @@ -416,47 +414,48 @@ animationLerpValue: f32 = -1.0 createLayout :: proc(lerpValue: f32) -> clay.ClayArray(clay.RenderCommand) { mobileScreen := windowWidth < 750 clay.BeginLayout() - if clay.UI( - clay.ID("OuterContainer"), - clay.Layout({layoutDirection = .TOP_TO_BOTTOM, sizing = {clay.SizingGrow({}), clay.SizingGrow({})}}), - clay.Rectangle({color = COLOR_LIGHT}), - ) { - if clay.UI( - clay.ID("Header"), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(50)}, childAlignment = {y = .CENTER}, childGap = 24, padding = {left = 32, right = 32}}), - ) { + if clay.UI().configure({ + id = clay.ID("OuterContainer"), + layout = { layoutDirection = .TOP_TO_BOTTOM, sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) } }, + backgroundColor = COLOR_LIGHT, + }) { + if clay.UI().configure({ + id = clay.ID("Header"), + layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(50) }, childAlignment = { y = .CENTER }, childGap = 24, padding = { left = 32, right = 32 } }, + }) { clay.Text("Clay", &headerTextConfig) - if clay.UI(clay.Layout({sizing = {width = clay.SizingGrow({})}})) {} + if clay.UI().configure({ layout = { sizing = { width = clay.SizingGrow({ }) } } }) {} if (!mobileScreen) { - if clay.UI(clay.ID("LinkExamplesOuter"), clay.Layout({}), clay.Rectangle({color = {0, 0, 0, 0}})) { + if clay.UI().configure({ id = clay.ID("LinkExamplesOuter"), backgroundColor = {0, 0, 0, 0} }) { clay.Text("Examples", clay.TextConfig({fontId = FONT_ID_BODY_24, fontSize = 24, textColor = {61, 26, 5, 255}})) } - if clay.UI(clay.ID("LinkDocsOuter"), clay.Layout({}), clay.Rectangle({color = {0, 0, 0, 0}})) { + if clay.UI().configure({ id = clay.ID("LinkDocsOuter"), backgroundColor = {0, 0, 0, 0} }) { clay.Text("Docs", clay.TextConfig({fontId = FONT_ID_BODY_24, fontSize = 24, textColor = {61, 26, 5, 255}})) } } - if clay.UI( - clay.ID("LinkGithubOuter"), - clay.Layout({padding = {16, 16, 6, 6}}), - clay.BorderOutsideRadius({2, COLOR_RED}, 10), - clay.Rectangle({cornerRadius = clay.CornerRadiusAll(10), color = clay.PointerOver(clay.GetElementId(clay.MakeString("LinkGithubOuter"))) ? COLOR_LIGHT_HOVER : COLOR_LIGHT}) - ) { + if clay.UI().configure({ + id = clay.ID("LinkGithubOuter"), + layout = { padding = { 16, 16, 6, 6 } }, + border = border2pxRed, + backgroundColor = clay.PointerOver(clay.GetElementId(clay.MakeString("LinkGithubOuter"))) ? COLOR_LIGHT_HOVER : COLOR_LIGHT, + cornerRadius = clay.CornerRadiusAll(10) + }) { clay.Text("Github", clay.TextConfig({fontId = FONT_ID_BODY_24, fontSize = 24, textColor = {61, 26, 5, 255}})) } } - if clay.UI(clay.ID("TopBorder1"), clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(4)}}), clay.Rectangle({color = COLOR_TOP_BORDER_5})) {} - if clay.UI(clay.ID("TopBorder2"), clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(4)}}), clay.Rectangle({color = COLOR_TOP_BORDER_4})) {} - if clay.UI(clay.ID("TopBorder3"), clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(4)}}), clay.Rectangle({color = COLOR_TOP_BORDER_3})) {} - if clay.UI(clay.ID("TopBorder4"), clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(4)}}), clay.Rectangle({color = COLOR_TOP_BORDER_2})) {} - if clay.UI(clay.ID("TopBorder5"), clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingFixed(4)}}), clay.Rectangle({color = COLOR_TOP_BORDER_1})) {} - if clay.UI( - clay.ID("ScrollContainerBackgroundRectangle"), - clay.Scroll({vertical = true}), - clay.Layout({sizing = {clay.SizingGrow({}), clay.SizingGrow({})}, layoutDirection = clay.LayoutDirection.TOP_TO_BOTTOM}), - clay.Rectangle({color = COLOR_LIGHT}), - clay.Border({betweenChildren = {2, COLOR_RED}}) - ) { + if clay.UI().configure({ id = clay.ID("TopBorder1"), layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(4) } }, backgroundColor = COLOR_TOP_BORDER_5 } ) {} + if clay.UI().configure({ id = clay.ID("TopBorder2"), layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(4) } }, backgroundColor = COLOR_TOP_BORDER_4 } ) {} + if clay.UI().configure({ id = clay.ID("TopBorder3"), layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(4) } }, backgroundColor = COLOR_TOP_BORDER_3 } ) {} + if clay.UI().configure({ id = clay.ID("TopBorder4"), layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(4) } }, backgroundColor = COLOR_TOP_BORDER_2 } ) {} + if clay.UI().configure({ id = clay.ID("TopBorder5"), layout = { sizing = { clay.SizingGrow({ }), clay.SizingFixed(4) } }, backgroundColor = COLOR_TOP_BORDER_1 } ) {} + if clay.UI().configure({ + id = clay.ID("ScrollContainerBackgroundRectangle"), + scroll = { vertical = true }, + layout = { sizing = { clay.SizingGrow({ }), clay.SizingGrow({ }) }, layoutDirection = clay.LayoutDirection.TOP_TO_BOTTOM }, + backgroundColor = COLOR_LIGHT, + border = { COLOR_RED, { betweenChildren = 2} }, + }) { if (!mobileScreen) { LandingPageDesktop() FeatureBlocksDesktop() diff --git a/bindings/odin/examples/clay-official-website/clay_renderer_raylib.odin b/bindings/odin/examples/clay-official-website/clay_renderer_raylib.odin index 470e417..7a6408c 100644 --- a/bindings/odin/examples/clay-official-website/clay_renderer_raylib.odin +++ b/bindings/odin/examples/clay-official-website/clay_renderer_raylib.odin @@ -56,22 +56,24 @@ clayRaylibRender :: proc(renderCommands: ^clay.ClayArray(clay.RenderCommand), al case clay.RenderCommandType.None: {} case clay.RenderCommandType.Text: + config := renderCommand.renderData.text // Raylib uses standard C strings so isn't compatible with cheap slices, we need to clone the string to append null terminator - text := string(renderCommand.text.chars[:renderCommand.text.length]) + text := string(config.stringContents.chars[:config.stringContents.length]) cloned := strings.clone_to_cstring(text, allocator) - fontToUse: raylib.Font = raylibFonts[renderCommand.config.textElementConfig.fontId].font + fontToUse: raylib.Font = raylibFonts[config.fontId].font raylib.DrawTextEx( fontToUse, cloned, raylib.Vector2{boundingBox.x, boundingBox.y}, - cast(f32)renderCommand.config.textElementConfig.fontSize, - cast(f32)renderCommand.config.textElementConfig.letterSpacing, - clayColorToRaylibColor(renderCommand.config.textElementConfig.textColor), + cast(f32)config.fontSize, + cast(f32)config.letterSpacing, + clayColorToRaylibColor(config.textColor), ) case clay.RenderCommandType.Image: + config := renderCommand.renderData.image // TODO image handling - imageTexture := cast(^raylib.Texture2D)renderCommand.config.imageElementConfig.imageData - raylib.DrawTextureEx(imageTexture^, raylib.Vector2{boundingBox.x, boundingBox.y}, 0, boundingBox.width / cast(f32)imageTexture.width, raylib.WHITE) + imageTexture := cast(^raylib.Texture2D)config.imageData + raylib.DrawTextureEx(imageTexture^, raylib.Vector2{boundingBox.x, boundingBox.y}, 0, boundingBox.width / cast(f32)imageTexture.width, clayColorToRaylibColor(config.backgroundColor)) case clay.RenderCommandType.ScissorStart: raylib.BeginScissorMode( cast(i32)math.round(boundingBox.x), @@ -82,86 +84,86 @@ clayRaylibRender :: proc(renderCommands: ^clay.ClayArray(clay.RenderCommand), al case clay.RenderCommandType.ScissorEnd: raylib.EndScissorMode() case clay.RenderCommandType.Rectangle: - config: ^clay.RectangleElementConfig = renderCommand.config.rectangleElementConfig + config := renderCommand.renderData.rectangle if (config.cornerRadius.topLeft > 0) { radius: f32 = (config.cornerRadius.topLeft * 2) / min(boundingBox.width, boundingBox.height) - raylib.DrawRectangleRounded(raylib.Rectangle{boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height}, radius, 8, clayColorToRaylibColor(config.color)) + raylib.DrawRectangleRounded(raylib.Rectangle{boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height}, radius, 8, clayColorToRaylibColor(config.backgroundColor)) } else { - raylib.DrawRectangle(cast(i32)boundingBox.x, cast(i32)boundingBox.y, cast(i32)boundingBox.width, cast(i32)boundingBox.height, clayColorToRaylibColor(config.color)) + raylib.DrawRectangle(cast(i32)boundingBox.x, cast(i32)boundingBox.y, cast(i32)boundingBox.width, cast(i32)boundingBox.height, clayColorToRaylibColor(config.backgroundColor)) } case clay.RenderCommandType.Border: - config := renderCommand.config.borderElementConfig + config := renderCommand.renderData.border // Left border - if (config.left.width > 0) { + if (config.width.left > 0) { raylib.DrawRectangle( cast(i32)math.round(boundingBox.x), cast(i32)math.round(boundingBox.y + config.cornerRadius.topLeft), - cast(i32)config.left.width, + cast(i32)config.width.left, cast(i32)math.round(boundingBox.height - config.cornerRadius.topLeft - config.cornerRadius.bottomLeft), - clayColorToRaylibColor(config.left.color), + clayColorToRaylibColor(config.color), ) } // Right border - if (config.right.width > 0) { + if (config.width.right > 0) { raylib.DrawRectangle( - cast(i32)math.round(boundingBox.x + boundingBox.width - cast(f32)config.right.width), + cast(i32)math.round(boundingBox.x + boundingBox.width - cast(f32)config.width.right), cast(i32)math.round(boundingBox.y + config.cornerRadius.topRight), - cast(i32)config.right.width, + cast(i32)config.width.right, cast(i32)math.round(boundingBox.height - config.cornerRadius.topRight - config.cornerRadius.bottomRight), - clayColorToRaylibColor(config.right.color), + clayColorToRaylibColor(config.color), ) } // Top border - if (config.top.width > 0) { + if (config.width.top > 0) { raylib.DrawRectangle( cast(i32)math.round(boundingBox.x + config.cornerRadius.topLeft), cast(i32)math.round(boundingBox.y), cast(i32)math.round(boundingBox.width - config.cornerRadius.topLeft - config.cornerRadius.topRight), - cast(i32)config.top.width, - clayColorToRaylibColor(config.top.color), + cast(i32)config.width.top, + clayColorToRaylibColor(config.color), ) } // Bottom border - if (config.bottom.width > 0) { + if (config.width.bottom > 0) { raylib.DrawRectangle( cast(i32)math.round(boundingBox.x + config.cornerRadius.bottomLeft), - cast(i32)math.round(boundingBox.y + boundingBox.height - cast(f32)config.bottom.width), + cast(i32)math.round(boundingBox.y + boundingBox.height - cast(f32)config.width.bottom), cast(i32)math.round(boundingBox.width - config.cornerRadius.bottomLeft - config.cornerRadius.bottomRight), - cast(i32)config.bottom.width, - clayColorToRaylibColor(config.bottom.color), + cast(i32)config.width.bottom, + clayColorToRaylibColor(config.color), ) } if (config.cornerRadius.topLeft > 0) { raylib.DrawRing( raylib.Vector2{math.round(boundingBox.x + config.cornerRadius.topLeft), math.round(boundingBox.y + config.cornerRadius.topLeft)}, - math.round(config.cornerRadius.topLeft - cast(f32)config.top.width), + math.round(config.cornerRadius.topLeft - cast(f32)config.width.top), config.cornerRadius.topLeft, 180, 270, 10, - clayColorToRaylibColor(config.top.color), + clayColorToRaylibColor(config.color), ) } if (config.cornerRadius.topRight > 0) { raylib.DrawRing( raylib.Vector2{math.round(boundingBox.x + boundingBox.width - config.cornerRadius.topRight), math.round(boundingBox.y + config.cornerRadius.topRight)}, - math.round(config.cornerRadius.topRight - cast(f32)config.top.width), + math.round(config.cornerRadius.topRight - cast(f32)config.width.top), config.cornerRadius.topRight, 270, 360, 10, - clayColorToRaylibColor(config.top.color), + clayColorToRaylibColor(config.color), ) } if (config.cornerRadius.bottomLeft > 0) { raylib.DrawRing( raylib.Vector2{math.round(boundingBox.x + config.cornerRadius.bottomLeft), math.round(boundingBox.y + boundingBox.height - config.cornerRadius.bottomLeft)}, - math.round(config.cornerRadius.bottomLeft - cast(f32)config.top.width), + math.round(config.cornerRadius.bottomLeft - cast(f32)config.width.top), config.cornerRadius.bottomLeft, 90, 180, 10, - clayColorToRaylibColor(config.bottom.color), + clayColorToRaylibColor(config.color), ) } if (config.cornerRadius.bottomRight > 0) { @@ -170,12 +172,12 @@ clayRaylibRender :: proc(renderCommands: ^clay.ClayArray(clay.RenderCommand), al math.round(boundingBox.x + boundingBox.width - config.cornerRadius.bottomRight), math.round(boundingBox.y + boundingBox.height - config.cornerRadius.bottomRight), }, - math.round(config.cornerRadius.bottomRight - cast(f32)config.bottom.width), + math.round(config.cornerRadius.bottomRight - cast(f32)config.width.bottom), config.cornerRadius.bottomRight, 0.1, 90, 10, - clayColorToRaylibColor(config.bottom.color), + clayColorToRaylibColor(config.color), ) } case clay.RenderCommandType.Custom: diff --git a/clay.h b/clay.h index cb7f91a..8a6bc96 100644 --- a/clay.h +++ b/clay.h @@ -14,6 +14,13 @@ #include <stdbool.h> #include <stddef.h> +// SIMD includes on supported platforms +#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64) +#include <emmintrin.h> +#elif __aarch64__ +#include <arm_neon.h> +#endif + // ----------------------------------------- // HEADER DECLARATIONS --------------------- // ----------------------------------------- @@ -44,29 +51,11 @@ #define CLAY__MAX(x, y) (((x) > (y)) ? (x) : (y)) #define CLAY__MIN(x, y) (((x) < (y)) ? (x) : (y)) -#define CLAY_LAYOUT(...) Clay__AttachLayoutConfig(Clay__StoreLayoutConfig(CLAY__CONFIG_WRAPPER(Clay_LayoutConfig, __VA_ARGS__))) - -#define CLAY_RECTANGLE(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .rectangleElementConfig = Clay__StoreRectangleElementConfig(CLAY__CONFIG_WRAPPER(Clay_RectangleElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE) - #define CLAY_TEXT_CONFIG(...) Clay__StoreTextElementConfig(CLAY__CONFIG_WRAPPER(Clay_TextElementConfig, __VA_ARGS__)) -#define CLAY_IMAGE(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .imageElementConfig = Clay__StoreImageElementConfig(CLAY__CONFIG_WRAPPER(Clay_ImageElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_IMAGE) +#define CLAY_BORDER_OUTSIDE(widthValue) {widthValue, widthValue, widthValue, widthValue, 0} -#define CLAY_FLOATING(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .floatingElementConfig = Clay__StoreFloatingElementConfig(CLAY__CONFIG_WRAPPER(Clay_FloatingElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER) - -#define CLAY_CUSTOM_ELEMENT(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .customElementConfig = Clay__StoreCustomElementConfig(CLAY__CONFIG_WRAPPER(Clay_CustomElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_CUSTOM) - -#define CLAY_SCROLL(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .scrollElementConfig = Clay__StoreScrollElementConfig(CLAY__CONFIG_WRAPPER(Clay_ScrollElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER) - -#define CLAY_BORDER(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(CLAY__CONFIG_WRAPPER(Clay_BorderElementConfig, __VA_ARGS__)) }, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) - -#define CLAY_BORDER_OUTSIDE(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(CLAY__INIT(Clay_BorderElementConfig) { .left = __VA_ARGS__, .right = __VA_ARGS__, .top = __VA_ARGS__, .bottom = __VA_ARGS__ }) }, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) - -#define CLAY_BORDER_OUTSIDE_RADIUS(width, color, radius) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(CLAY__INIT(Clay_BorderElementConfig) { .left = { width, color }, .right = { width, color }, .top = { width, color }, .bottom = { width, color }, .cornerRadius = CLAY_CORNER_RADIUS(radius) })}, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) - -#define CLAY_BORDER_ALL(...) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(CLAY__INIT(Clay_BorderElementConfig) { .left = __VA_ARGS__, .right = __VA_ARGS__, .top = __VA_ARGS__, .bottom = __VA_ARGS__, .betweenChildren = __VA_ARGS__ } ) }, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) - -#define CLAY_BORDER_ALL_RADIUS(width, color, radius) Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(CLAY__INIT(Clay_BorderElementConfig) { .left = { width, color }, .right = { width, color }, .top = { width, color }, .bottom = { width, color }, .betweenChildren = { width, color }, .cornerRadius = CLAY_CORNER_RADIUS(radius)}) }, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) +#define CLAY_BORDER_ALL(widthValue) {widthValue, widthValue, widthValue, widthValue, widthValue} #define CLAY_CORNER_RADIUS(radius) (CLAY__INIT(Clay_CornerRadius) { radius, radius, radius, radius }) @@ -80,13 +69,13 @@ #define CLAY_SIZING_PERCENT(percentOfParent) (CLAY__INIT(Clay_SizingAxis) { .size = { .percent = (percentOfParent) }, .type = CLAY__SIZING_TYPE_PERCENT }) -#define CLAY_ID(label) Clay__AttachId(Clay__HashString(CLAY_STRING(label), 0, 0)) +#define CLAY_ID(label) CLAY_IDI(label, 0) -#define CLAY_IDI(label, index) Clay__AttachId(Clay__HashString(CLAY_STRING(label), index, 0)) +#define CLAY_IDI(label, index) Clay__HashString(CLAY_STRING(label), index, 0) #define CLAY_ID_LOCAL(label) CLAY_IDI_LOCAL(label, 0) -#define CLAY_IDI_LOCAL(label, index) Clay__AttachId(Clay__HashString(CLAY_STRING(label), index, Clay__GetParentElementId())) +#define CLAY_IDI_LOCAL(label, index) Clay__HashString(CLAY_STRING(label), index, Clay__GetParentElementId()) #define CLAY__STRING_LENGTH(s) ((sizeof(s) / sizeof((s)[0])) - sizeof((s)[0])) @@ -126,7 +115,7 @@ static uint8_t CLAY__ELEMENT_DEFINITION_LATCH; */ #define CLAY(...) \ for (\ - CLAY__ELEMENT_DEFINITION_LATCH = (Clay__OpenElement(), __VA_ARGS__, Clay__ElementPostConfiguration(), 0); \ + CLAY__ELEMENT_DEFINITION_LATCH = (Clay__OpenElement(), Clay__ConfigureOpenElement(CLAY__CONFIG_WRAPPER(Clay_ElementDeclaration, __VA_ARGS__)), 0); \ CLAY__ELEMENT_DEFINITION_LATCH < 1; \ ++CLAY__ELEMENT_DEFINITION_LATCH, Clay__CloseElement() \ ) @@ -218,14 +207,14 @@ typedef struct { } Clay_CornerRadius; typedef CLAY_PACKED_ENUM { - CLAY__ELEMENT_CONFIG_TYPE_NONE = 0, - CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE = 1, - CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER = 2, - CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER = 4, - CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER = 8, - CLAY__ELEMENT_CONFIG_TYPE_IMAGE = 16, - CLAY__ELEMENT_CONFIG_TYPE_TEXT = 32, - CLAY__ELEMENT_CONFIG_TYPE_CUSTOM = 64, + CLAY__ELEMENT_CONFIG_TYPE_NONE, + CLAY__ELEMENT_CONFIG_TYPE_BORDER, + CLAY__ELEMENT_CONFIG_TYPE_FLOATING, + CLAY__ELEMENT_CONFIG_TYPE_SCROLL, + CLAY__ELEMENT_CONFIG_TYPE_IMAGE, + CLAY__ELEMENT_CONFIG_TYPE_TEXT, + CLAY__ELEMENT_CONFIG_TYPE_CUSTOM, + CLAY__ELEMENT_CONFIG_TYPE_SHARED, } Clay__ElementConfigType; // Element Configs --------------------------- @@ -298,20 +287,8 @@ CLAY__WRAPPER_STRUCT(Clay_LayoutConfig); extern Clay_LayoutConfig CLAY_LAYOUT_DEFAULT; -// Rectangle -// NOTE: Not declared in the typedef asan ifdef inside macro arguments is UB -typedef struct { - Clay_Color color; - Clay_CornerRadius cornerRadius; - #ifdef CLAY_EXTEND_CONFIG_RECTANGLE - CLAY_EXTEND_CONFIG_RECTANGLE - #endif -} Clay_RectangleElementConfig; - -CLAY__WRAPPER_STRUCT(Clay_RectangleElementConfig); - // Text -typedef enum { +typedef CLAY_PACKED_ENUM { CLAY_TEXT_WRAP_WORDS, CLAY_TEXT_WRAP_NEWLINES, CLAY_TEXT_WRAP_NONE, @@ -325,20 +302,14 @@ typedef struct { uint16_t lineHeight; Clay_TextElementConfigWrapMode wrapMode; bool hashStringContents; - #ifdef CLAY_EXTEND_CONFIG_TEXT - CLAY_EXTEND_CONFIG_TEXT - #endif } Clay_TextElementConfig; CLAY__WRAPPER_STRUCT(Clay_TextElementConfig); // Image typedef struct { - void *imageData; + void* imageData; Clay_Dimensions sourceDimensions; - #ifdef CLAY_EXTEND_CONFIG_IMAGE - CLAY_EXTEND_CONFIG_IMAGE - #endif } Clay_ImageElementConfig; CLAY__WRAPPER_STRUCT(Clay_ImageElementConfig); @@ -361,30 +332,34 @@ typedef struct { Clay_FloatingAttachPointType parent; } Clay_FloatingAttachPoints; -typedef enum { +typedef CLAY_PACKED_ENUM { CLAY_POINTER_CAPTURE_MODE_CAPTURE, // CLAY_POINTER_CAPTURE_MODE_PARENT, TODO pass pointer through to attached parent CLAY_POINTER_CAPTURE_MODE_PASSTHROUGH, } Clay_PointerCaptureMode; +typedef CLAY_PACKED_ENUM { + CLAY_ATTACH_TO_NONE, + CLAY_ATTACH_TO_PARENT, + CLAY_ATTACH_TO_ELEMENT_WITH_ID, + CLAY_ATTACH_TO_ROOT, +} Clay_FloatingAttachToElement; + typedef struct { Clay_Vector2 offset; Clay_Dimensions expand; - uint16_t zIndex; uint32_t parentId; - Clay_FloatingAttachPoints attachment; + int16_t zIndex; + Clay_FloatingAttachPoints attachPoints; Clay_PointerCaptureMode pointerCaptureMode; + Clay_FloatingAttachToElement attachTo; } Clay_FloatingElementConfig; CLAY__WRAPPER_STRUCT(Clay_FloatingElementConfig); // Custom typedef struct { - #ifndef CLAY_EXTEND_CONFIG_CUSTOM - void *customData; - #else - CLAY_EXTEND_CONFIG_CUSTOM - #endif + void* customData; } Clay_CustomElementConfig; CLAY__WRAPPER_STRUCT(Clay_CustomElementConfig); @@ -397,40 +372,71 @@ typedef struct { CLAY__WRAPPER_STRUCT(Clay_ScrollElementConfig); +// Shared +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + void* userData; +} Clay_SharedElementConfig; + +CLAY__WRAPPER_STRUCT(Clay_SharedElementConfig); + // Border typedef struct { - uint32_t width; - Clay_Color color; -} Clay_Border; + uint16_t left; + uint16_t right; + uint16_t top; + uint16_t bottom; + uint16_t betweenChildren; +} Clay_BorderWidth; typedef struct { - Clay_Border left; - Clay_Border right; - Clay_Border top; - Clay_Border bottom; - Clay_Border betweenChildren; - Clay_CornerRadius cornerRadius; - #ifdef CLAY_EXTEND_CONFIG_BORDER - CLAY_EXTEND_CONFIG_BORDER - #endif + Clay_Color color; + Clay_BorderWidth width; } Clay_BorderElementConfig; CLAY__WRAPPER_STRUCT(Clay_BorderElementConfig); -typedef union { - Clay_RectangleElementConfig *rectangleElementConfig; - Clay_TextElementConfig *textElementConfig; - Clay_ImageElementConfig *imageElementConfig; - Clay_FloatingElementConfig *floatingElementConfig; - Clay_CustomElementConfig *customElementConfig; - Clay_ScrollElementConfig *scrollElementConfig; - Clay_BorderElementConfig *borderElementConfig; -} Clay_ElementConfigUnion; +typedef struct { + Clay_StringSlice stringContents; + Clay_Color textColor; + uint16_t fontId; + uint16_t fontSize; + uint16_t letterSpacing; + uint16_t lineHeight; +} Clay_TextRenderData; typedef struct { - Clay__ElementConfigType type; - Clay_ElementConfigUnion config; -} Clay_ElementConfig; + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; +} Clay_RectangleRenderData; + +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + Clay_Dimensions sourceDimensions; + void* imageData; +} Clay_ImageRenderData; + +typedef struct { + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + void* customData; +} Clay_CustomRenderData; + +typedef struct { + Clay_Color color; + Clay_CornerRadius cornerRadius; + Clay_BorderWidth width; +} Clay_BorderRenderData; + +typedef union { + Clay_RectangleRenderData rectangle; + Clay_TextRenderData text; + Clay_ImageRenderData image; + Clay_CustomRenderData custom; + Clay_BorderRenderData border; +} Clay_RenderData; // Miscellaneous Structs & Enums --------------------------------- typedef struct { @@ -464,10 +470,11 @@ typedef CLAY_PACKED_ENUM { typedef struct { Clay_BoundingBox boundingBox; - Clay_ElementConfigUnion config; - Clay_StringSlice text; // TODO I wish there was a way to avoid having to have this on every render command - int32_t zIndex; + Clay_RenderData renderData; + // A pointer passed through from the element declaration + void *userData; uint32_t id; + int16_t zIndex; Clay_RenderCommandType commandType; } Clay_RenderCommand; @@ -489,6 +496,22 @@ typedef struct { Clay_PointerDataInteractionState state; } Clay_PointerData; +typedef struct { + Clay_ElementId id; + Clay_LayoutConfig layout; + Clay_Color backgroundColor; + Clay_CornerRadius cornerRadius; + Clay_ImageElementConfig image; + Clay_FloatingElementConfig floating; + Clay_CustomElementConfig custom; + Clay_ScrollElementConfig scroll; + Clay_BorderElementConfig border; + // A pointer that will be transparently passed through to resulting render commands. + void *userData; +} Clay_ElementDeclaration; + +CLAY__WRAPPER_STRUCT(Clay_ElementDeclaration); + typedef CLAY_PACKED_ENUM { CLAY_ERROR_TYPE_TEXT_MEASUREMENT_FUNCTION_NOT_PROVIDED, CLAY_ERROR_TYPE_ARENA_CAPACITY_EXCEEDED, @@ -502,12 +525,12 @@ typedef CLAY_PACKED_ENUM { typedef struct { Clay_ErrorType errorType; Clay_String errorText; - uintptr_t userData; + void *userData; } Clay_ErrorData; typedef struct { void (*errorHandlerFunction)(Clay_ErrorData errorText); - uintptr_t userData; + void *userData; } Clay_ErrorHandler; // Function Forward Declarations --------------------------------- @@ -529,8 +552,9 @@ bool Clay_Hovered(void); void Clay_OnHover(void (*onHoverFunction)(Clay_ElementId elementId, Clay_PointerData pointerData, intptr_t userData), intptr_t userData); bool Clay_PointerOver(Clay_ElementId elementId); Clay_ScrollContainerData Clay_GetScrollContainerData(Clay_ElementId id); -void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData), uintptr_t userData); -void Clay_SetQueryScrollOffsetFunction(Clay_Vector2 (*queryScrollOffsetFunction)(uint32_t elementId, uintptr_t userData), uintptr_t userData); +Clay_TextElementConfig * Clay__StoreTextElementConfig(Clay_TextElementConfig config); +void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData), void *userData); +void Clay_SetQueryScrollOffsetFunction(Clay_Vector2 (*queryScrollOffsetFunction)(uint32_t elementId, void *userData), void *userData); Clay_RenderCommand * Clay_RenderCommandArray_Get(Clay_RenderCommandArray* array, int32_t index); void Clay_SetDebugModeEnabled(bool enabled); bool Clay_IsDebugModeEnabled(void); @@ -543,19 +567,10 @@ void Clay_ResetMeasureTextCache(void); // Internal API functions required by macros void Clay__OpenElement(void); +void Clay__ConfigureOpenElement(const Clay_ElementDeclaration config); void Clay__CloseElement(void); Clay_LayoutConfig * Clay__StoreLayoutConfig(Clay_LayoutConfig config); -void Clay__ElementPostConfiguration(void); -void Clay__AttachId(Clay_ElementId id); -void Clay__AttachLayoutConfig(Clay_LayoutConfig *config); -void Clay__AttachElementConfig(Clay_ElementConfigUnion config, Clay__ElementConfigType type); -Clay_RectangleElementConfig * Clay__StoreRectangleElementConfig(Clay_RectangleElementConfig config); -Clay_TextElementConfig * Clay__StoreTextElementConfig(Clay_TextElementConfig config); -Clay_ImageElementConfig * Clay__StoreImageElementConfig(Clay_ImageElementConfig config); -Clay_FloatingElementConfig * Clay__StoreFloatingElementConfig(Clay_FloatingElementConfig config); -Clay_CustomElementConfig * Clay__StoreCustomElementConfig(Clay_CustomElementConfig config); -Clay_ScrollElementConfig * Clay__StoreScrollElementConfig(Clay_ScrollElementConfig config); -Clay_BorderElementConfig * Clay__StoreBorderElementConfig(Clay_BorderElementConfig config); +Clay_ElementId Clay__AttachId(Clay_ElementId id); Clay_ElementId Clay__HashString(Clay_String key, uint32_t offset, uint32_t seed); void Clay__OpenTextElement(Clay_String text, Clay_TextElementConfig *textConfig); uint32_t Clay__GetParentElementId(void); @@ -585,6 +600,10 @@ extern uint32_t Clay__debugViewWidth; Clay_LayoutConfig CLAY_LAYOUT_DEFAULT = CLAY__DEFAULT_STRUCT; +Clay_Color Clay__Color_DEFAULT = CLAY__DEFAULT_STRUCT; +Clay_CornerRadius Clay__CornerRadius_DEFAULT = CLAY__DEFAULT_STRUCT; +Clay_BorderWidth Clay__BorderWidth_DEFAULT = CLAY__DEFAULT_STRUCT; + #define CLAY__ARRAY_DEFINE_FUNCTIONS(typeName, arrayName) \ \ typedef struct \ @@ -687,9 +706,7 @@ CLAY__ARRAY_DEFINE(bool, Clay__boolArray) CLAY__ARRAY_DEFINE(int32_t, Clay__int32_tArray) CLAY__ARRAY_DEFINE(char, Clay__charArray) CLAY__ARRAY_DEFINE(Clay_ElementId, Clay__ElementIdArray) -CLAY__ARRAY_DEFINE(Clay_ElementConfig, Clay__ElementConfigArray) CLAY__ARRAY_DEFINE(Clay_LayoutConfig, Clay__LayoutConfigArray) -CLAY__ARRAY_DEFINE(Clay_RectangleElementConfig, Clay__RectangleElementConfigArray) CLAY__ARRAY_DEFINE(Clay_TextElementConfig, Clay__TextElementConfigArray) CLAY__ARRAY_DEFINE(Clay_ImageElementConfig, Clay__ImageElementConfigArray) CLAY__ARRAY_DEFINE(Clay_FloatingElementConfig, Clay__FloatingElementConfigArray) @@ -697,8 +714,26 @@ CLAY__ARRAY_DEFINE(Clay_CustomElementConfig, Clay__CustomElementConfigArray) CLAY__ARRAY_DEFINE(Clay_ScrollElementConfig, Clay__ScrollElementConfigArray) CLAY__ARRAY_DEFINE(Clay_BorderElementConfig, Clay__BorderElementConfigArray) CLAY__ARRAY_DEFINE(Clay_String, Clay__StringArray) +CLAY__ARRAY_DEFINE(Clay_SharedElementConfig, Clay__SharedElementConfigArray) CLAY__ARRAY_DEFINE_FUNCTIONS(Clay_RenderCommand, Clay_RenderCommandArray) +typedef union { + Clay_TextElementConfig *textElementConfig; + Clay_ImageElementConfig *imageElementConfig; + Clay_FloatingElementConfig *floatingElementConfig; + Clay_CustomElementConfig *customElementConfig; + Clay_ScrollElementConfig *scrollElementConfig; + Clay_BorderElementConfig *borderElementConfig; + Clay_SharedElementConfig *sharedElementConfig; +} Clay_ElementConfigUnion; + +typedef struct { + Clay__ElementConfigType type; + Clay_ElementConfigUnion config; +} Clay_ElementConfig; + +CLAY__ARRAY_DEFINE(Clay_ElementConfig, Clay__ElementConfigArray) + typedef struct { Clay_Dimensions dimensions; Clay_String line; @@ -729,7 +764,6 @@ typedef struct { Clay_Dimensions minDimensions; Clay_LayoutConfig *layoutConfig; Clay__ElementConfigArraySlice elementConfigs; - uint32_t configsEnabled; uint32_t id; } Clay_LayoutElement; @@ -805,7 +839,7 @@ typedef struct { int32_t layoutElementIndex; uint32_t parentId; // This can be zero in the case of the root layout tree uint32_t clipElementId; // This can be zero if there is no clip element - int32_t zIndex; + int16_t zIndex; Clay_Vector2 pointerOffset; // Only used when scroll containers are managed externally } Clay__LayoutElementTreeRoot; @@ -829,8 +863,8 @@ struct Clay_Context { uint32_t debugSelectedElementId; uint32_t generation; uintptr_t arenaResetOffset; - uintptr_t mesureTextUserData; - uintptr_t queryScrollOffsetUserData; + void *measureTextUserData; + void *queryScrollOffsetUserData; Clay_Arena internalArena; // Layout Elements / Render Commands Clay_LayoutElementArray layoutElements; @@ -844,15 +878,14 @@ struct Clay_Context { Clay__int32_tArray layoutElementClipElementIds; // Configs Clay__LayoutConfigArray layoutConfigs; - Clay__ElementConfigArray elementConfigBuffer; Clay__ElementConfigArray elementConfigs; - Clay__RectangleElementConfigArray rectangleElementConfigs; Clay__TextElementConfigArray textElementConfigs; Clay__ImageElementConfigArray imageElementConfigs; Clay__FloatingElementConfigArray floatingElementConfigs; Clay__ScrollElementConfigArray scrollElementConfigs; Clay__CustomElementConfigArray customElementConfigs; Clay__BorderElementConfigArray borderElementConfigs; + Clay__SharedElementConfigArray sharedElementConfigs; // Misc Data Structures Clay__StringArray layoutElementIdStrings; Clay__WrappedTextLineArray wrappedTextLines; @@ -895,11 +928,11 @@ Clay_String Clay__WriteStringToCharBuffer(Clay__charArray *buffer, Clay_String s } #ifdef CLAY_WASM - __attribute__((import_module("clay"), import_name("measureTextFunction"))) Clay_Dimensions Clay__MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData); - __attribute__((import_module("clay"), import_name("queryScrollOffsetFunction"))) Clay_Vector2 Clay__QueryScrollOffset(uint32_t elementId, uintptr_t userData); + __attribute__((import_module("clay"), import_name("measureTextFunction"))) Clay_Dimensions Clay__MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData); + __attribute__((import_module("clay"), import_name("queryScrollOffsetFunction"))) Clay_Vector2 Clay__QueryScrollOffset(uint32_t elementId, void *userData); #else - Clay_Dimensions (*Clay__MeasureText)(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData); - Clay_Vector2 (*Clay__QueryScrollOffset)(uint32_t elementId, uintptr_t userData); + Clay_Dimensions (*Clay__MeasureText)(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData); + Clay_Vector2 (*Clay__QueryScrollOffset)(uint32_t elementId, void *userData); #endif Clay_LayoutElement* Clay__GetOpenLayoutElement(void) { @@ -912,8 +945,23 @@ uint32_t Clay__GetParentElementId(void) { return Clay_LayoutElementArray_Get(&context->layoutElements, Clay__int32_tArray_GetValue(&context->openLayoutElementStack, context->openLayoutElementStack.length - 2))->id; } -bool Clay__ElementHasConfig(Clay_LayoutElement *element, Clay__ElementConfigType type) { - return (element->configsEnabled & type); +Clay_LayoutConfig * Clay__StoreLayoutConfig(Clay_LayoutConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &CLAY_LAYOUT_DEFAULT : Clay__LayoutConfigArray_Add(&Clay_GetCurrentContext()->layoutConfigs, config); } +Clay_TextElementConfig * Clay__StoreTextElementConfig(Clay_TextElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_TextElementConfig_DEFAULT : Clay__TextElementConfigArray_Add(&Clay_GetCurrentContext()->textElementConfigs, config); } +Clay_ImageElementConfig * Clay__StoreImageElementConfig(Clay_ImageElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_ImageElementConfig_DEFAULT : Clay__ImageElementConfigArray_Add(&Clay_GetCurrentContext()->imageElementConfigs, config); } +Clay_FloatingElementConfig * Clay__StoreFloatingElementConfig(Clay_FloatingElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_FloatingElementConfig_DEFAULT : Clay__FloatingElementConfigArray_Add(&Clay_GetCurrentContext()->floatingElementConfigs, config); } +Clay_CustomElementConfig * Clay__StoreCustomElementConfig(Clay_CustomElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_CustomElementConfig_DEFAULT : Clay__CustomElementConfigArray_Add(&Clay_GetCurrentContext()->customElementConfigs, config); } +Clay_ScrollElementConfig * Clay__StoreScrollElementConfig(Clay_ScrollElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_ScrollElementConfig_DEFAULT : Clay__ScrollElementConfigArray_Add(&Clay_GetCurrentContext()->scrollElementConfigs, config); } +Clay_BorderElementConfig * Clay__StoreBorderElementConfig(Clay_BorderElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_BorderElementConfig_DEFAULT : Clay__BorderElementConfigArray_Add(&Clay_GetCurrentContext()->borderElementConfigs, config); } +Clay_SharedElementConfig * Clay__StoreSharedElementConfig(Clay_SharedElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_SharedElementConfig_DEFAULT : Clay__SharedElementConfigArray_Add(&Clay_GetCurrentContext()->sharedElementConfigs, config); } + +Clay_ElementConfig Clay__AttachElementConfig(Clay_ElementConfigUnion config, Clay__ElementConfigType type) { + Clay_Context* context = Clay_GetCurrentContext(); + if (context->booleanWarnings.maxElementsExceeded) { + return CLAY__INIT(Clay_ElementConfig) CLAY__DEFAULT_STRUCT; + } + Clay_LayoutElement *openLayoutElement = Clay__GetOpenLayoutElement(); + openLayoutElement->elementConfigs.length++; + return *Clay__ElementConfigArray_Add(&context->elementConfigs, CLAY__INIT(Clay_ElementConfig) { .type = type, .config = config }); } Clay_ElementConfigUnion Clay__FindElementConfigWithType(Clay_LayoutElement *element, Clay__ElementConfigType type) { @@ -961,29 +1009,6 @@ Clay_ElementId Clay__HashString(Clay_String key, const uint32_t offset, const ui return CLAY__INIT(Clay_ElementId) { .id = hash + 1, .offset = offset, .baseId = base + 1, .stringId = key }; // Reserve the hash result of zero as "null id" } -Clay_ElementId Clay__Rehash(Clay_ElementId elementId, uint32_t number) { - uint32_t id = elementId.baseId; - id += number; - id += (id << 10); - id ^= (id >> 6); - - id += (id << 3); - id ^= (id >> 11); - id += (id << 15); - return CLAY__INIT(Clay_ElementId) { .id = id, .offset = number, .baseId = elementId.baseId, .stringId = elementId.stringId }; -} - -uint32_t Clay__RehashWithNumber(uint32_t id, uint32_t number) { - id += number; - id += (id << 10); - id ^= (id >> 6); - - id += (id << 3); - id ^= (id >> 11); - id += (id << 15); - return id; -} - uint32_t Clay__HashTextWithConfig(Clay_String *text, Clay_TextElementConfig *config) { uint32_t hash = 0; uintptr_t pointerAsNumber = (uintptr_t)text->chars; @@ -1123,7 +1148,7 @@ Clay__MeasureTextCacheItem *Clay__MeasureTextCached(Clay_String *text, Clay_Text float lineWidth = 0; float measuredWidth = 0; float measuredHeight = 0; - float spaceWidth = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = 1, .chars = CLAY__SPACECHAR.chars, .baseChars = CLAY__SPACECHAR.chars }, config, context->mesureTextUserData).width; + float spaceWidth = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = 1, .chars = CLAY__SPACECHAR.chars, .baseChars = CLAY__SPACECHAR.chars }, config, context->measureTextUserData).width; Clay__MeasuredWord tempWord = { .next = -1 }; Clay__MeasuredWord *previousWord = &tempWord; while (end < text->length) { @@ -1140,7 +1165,7 @@ Clay__MeasureTextCacheItem *Clay__MeasureTextCached(Clay_String *text, Clay_Text char current = text->chars[end]; if (current == ' ' || current == '\n') { int32_t length = end - start; - Clay_Dimensions dimensions = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = length, .chars = &text->chars[start], .baseChars = text->chars }, config, context->mesureTextUserData); + Clay_Dimensions dimensions = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = length, .chars = &text->chars[start], .baseChars = text->chars }, config, context->measureTextUserData); measuredHeight = CLAY__MAX(measuredHeight, dimensions.height); if (current == ' ') { dimensions.width += spaceWidth; @@ -1162,7 +1187,7 @@ Clay__MeasureTextCacheItem *Clay__MeasureTextCached(Clay_String *text, Clay_Text end++; } if (end - start > 0) { - Clay_Dimensions dimensions = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = end - start, .chars = &text->chars[start], .baseChars = text->chars }, config, context->mesureTextUserData); + Clay_Dimensions dimensions = Clay__MeasureText(CLAY__INIT(Clay_StringSlice) { .length = end - start, .chars = &text->chars[start], .baseChars = text->chars }, config, context->measureTextUserData); Clay__AddMeasuredWord(CLAY__INIT(Clay__MeasuredWord) { .startOffset = start, .length = end - start, .width = dimensions.width, .next = -1 }, previousWord); lineWidth += dimensions.width; measuredHeight = CLAY__MAX(measuredHeight, dimensions.height); @@ -1250,95 +1275,13 @@ void Clay__GenerateIdForAnonymousElement(Clay_LayoutElement *openLayoutElement) Clay__StringArray_Add(&context->layoutElementIdStrings, elementId.stringId); } -void Clay__ElementPostConfiguration(void) { - Clay_Context* context = Clay_GetCurrentContext(); - if (context->booleanWarnings.maxElementsExceeded) { - return; - } - Clay_LayoutElement *openLayoutElement = Clay__GetOpenLayoutElement(); - // ID - if (openLayoutElement->id == 0) { - Clay__GenerateIdForAnonymousElement(openLayoutElement); - } - // Layout Config - if (!openLayoutElement->layoutConfig) { - openLayoutElement->layoutConfig = &CLAY_LAYOUT_DEFAULT; - } - - // Loop through element configs and handle special cases - openLayoutElement->elementConfigs.internalArray = &context->elementConfigs.internalArray[context->elementConfigs.length]; - for (int32_t elementConfigIndex = 0; elementConfigIndex < openLayoutElement->elementConfigs.length; elementConfigIndex++) { - Clay_ElementConfig *config = Clay__ElementConfigArray_Add(&context->elementConfigs, *Clay__ElementConfigArray_Get(&context->elementConfigBuffer, context->elementConfigBuffer.length - openLayoutElement->elementConfigs.length + elementConfigIndex)); - openLayoutElement->configsEnabled |= config->type; - switch (config->type) { - case CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE: - case CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER: break; - case CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER: { - Clay_FloatingElementConfig *floatingConfig = config->config.floatingElementConfig; - // This looks dodgy but because of the auto generated root element the depth of the tree will always be at least 2 here - Clay_LayoutElement *hierarchicalParent = Clay_LayoutElementArray_Get(&context->layoutElements, Clay__int32_tArray_GetValue(&context->openLayoutElementStack, context->openLayoutElementStack.length - 2)); - if (!hierarchicalParent) { - break; - } - uint32_t clipElementId = 0; - if (floatingConfig->parentId == 0) { - // If no parent id was specified, attach to the elements direct hierarchical parent - Clay_FloatingElementConfig newConfig = *floatingConfig; - newConfig.parentId = hierarchicalParent->id; - floatingConfig = Clay__FloatingElementConfigArray_Add(&context->floatingElementConfigs, newConfig); - config->config.floatingElementConfig = floatingConfig; - if (context->openClipElementStack.length > 0) { - clipElementId = Clay__int32_tArray_GetValue(&context->openClipElementStack, (int)context->openClipElementStack.length - 1); - } - } else { - Clay_LayoutElementHashMapItem *parentItem = Clay__GetHashMapItem(floatingConfig->parentId); - if (!parentItem) { - context->errorHandler.errorHandlerFunction(CLAY__INIT(Clay_ErrorData) { - .errorType = CLAY_ERROR_TYPE_FLOATING_CONTAINER_PARENT_NOT_FOUND, - .errorText = CLAY_STRING("A floating element was declared with a parentId, but no element with that ID was found."), - .userData = context->errorHandler.userData }); - } else { - clipElementId = Clay__int32_tArray_GetValue(&context->layoutElementClipElementIds, parentItem->layoutElement - context->layoutElements.internalArray); - } - } - Clay__LayoutElementTreeRootArray_Add(&context->layoutElementTreeRoots, CLAY__INIT(Clay__LayoutElementTreeRoot) { - .layoutElementIndex = Clay__int32_tArray_GetValue(&context->openLayoutElementStack, context->openLayoutElementStack.length - 1), - .parentId = floatingConfig->parentId, - .clipElementId = clipElementId, - .zIndex = floatingConfig->zIndex, - }); - break; - } - case CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER: { - Clay__int32_tArray_Add(&context->openClipElementStack, (int)openLayoutElement->id); - // Retrieve or create cached data to track scroll position across frames - Clay__ScrollContainerDataInternal *scrollOffset = CLAY__NULL; - for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { - Clay__ScrollContainerDataInternal *mapping = Clay__ScrollContainerDataInternalArray_Get(&context->scrollContainerDatas, i); - if (openLayoutElement->id == mapping->elementId) { - scrollOffset = mapping; - scrollOffset->layoutElement = openLayoutElement; - scrollOffset->openThisFrame = true; - } - } - if (!scrollOffset) { - scrollOffset = Clay__ScrollContainerDataInternalArray_Add(&context->scrollContainerDatas, CLAY__INIT(Clay__ScrollContainerDataInternal){.layoutElement = openLayoutElement, .scrollOrigin = {-1,-1}, .elementId = openLayoutElement->id, .openThisFrame = true}); - } - if (context->externalScrollHandlingEnabled) { - scrollOffset->scrollPosition = Clay__QueryScrollOffset(scrollOffset->elementId, context->queryScrollOffsetUserData); - } - break; - } - case CLAY__ELEMENT_CONFIG_TYPE_CUSTOM: break; - case CLAY__ELEMENT_CONFIG_TYPE_IMAGE: { - Clay__int32_tArray_Add(&context->imageElementPointers, context->layoutElements.length - 1); - break; - } - case CLAY__ELEMENT_CONFIG_TYPE_TEXT: - default: break; +bool Clay__ElementHasConfig(Clay_LayoutElement *layoutElement, Clay__ElementConfigType type) { + for (int32_t i = 0; i < layoutElement->elementConfigs.length; i++) { + if (Clay__ElementConfigArraySlice_Get(&layoutElement->elementConfigs, i)->type == type) { + return true; } } - context->elementConfigBuffer.length -= openLayoutElement->elementConfigs.length; + return false; } void Clay__CloseElement(void) { @@ -1350,11 +1293,14 @@ void Clay__CloseElement(void) { Clay_LayoutConfig *layoutConfig = openLayoutElement->layoutConfig; bool elementHasScrollHorizontal = false; bool elementHasScrollVertical = false; - if (Clay__ElementHasConfig(openLayoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER)) { - Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(openLayoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; - elementHasScrollHorizontal = scrollConfig->horizontal; - elementHasScrollVertical = scrollConfig->vertical; - context->openClipElementStack.length--; + for (int32_t i = 0; i < openLayoutElement->elementConfigs.length; i++) { + Clay_ElementConfig *config = Clay__ElementConfigArraySlice_Get(&openLayoutElement->elementConfigs, i); + if (config->type == CLAY__ELEMENT_CONFIG_TYPE_SCROLL) { + elementHasScrollHorizontal = config->config.scrollElementConfig->horizontal; + elementHasScrollVertical = config->config.scrollElementConfig->vertical; + context->openClipElementStack.length--; + break; + } } // Attach children to the current open element @@ -1424,7 +1370,7 @@ void Clay__CloseElement(void) { openLayoutElement->dimensions.height = 0; } - bool elementIsFloating = Clay__ElementHasConfig(openLayoutElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER); + bool elementIsFloating = Clay__ElementHasConfig(openLayoutElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING); // Close the currently open element int32_t closingElementIndex = Clay__int32_tArray_RemoveSwapback(&context->openLayoutElementStack, (int)context->openLayoutElementStack.length - 1); @@ -1436,6 +1382,71 @@ void Clay__CloseElement(void) { } } +bool Clay__MemCmp(const char *s1, const char *s2, int32_t length); +#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64) + bool Clay__MemCmp(const char *s1, const char *s2, int32_t length) { + while (length >= 16) { + __m128i v1 = _mm_loadu_si128((const __m128i *)s1); + __m128i v2 = _mm_loadu_si128((const __m128i *)s2); + + if (_mm_movemask_epi8(_mm_cmpeq_epi8(v1, v2)) != 0xFFFFFFFF) { // If any byte differs + return false; + } + + s1 += 16; + s2 += 16; + length -= 16; + } + + // Handle remaining bytes + while (length--) { + if (*s1 != *s2) { + return false; + } + s1++; + s2++; + } + + return true; + } +#elif defined(__aarch64__) + bool Clay__MemCmp(const char *s1, const char *s2, int32_t length) { + while (length >= 16) { + uint8x16_t v1 = vld1q_u8((const uint8_t *)s1); + uint8x16_t v2 = vld1q_u8((const uint8_t *)s2); + + // Compare vectors + if (vminvq_u32(vceqq_u8(v1, v2)) != 0xFFFFFFFF) { // If there's a difference + return false; + } + + s1 += 16; + s2 += 16; + length -= 16; + } + + // Handle remaining bytes + while (length--) { + if (*s1 != *s2) { + return false; + } + s1++; + s2++; + } + + return true; + } +#else + bool Clay__MemCmp(const char *s1, const char *s2, int32_t length) { + for (int32_t i = 0; i < length; i++) { + if (s1[i] != s2[i]) { + return false; + } + } + return true; + } +#endif + void Clay__OpenElement(void) { Clay_Context* context = Clay_GetCurrentContext(); if (context->layoutElements.length == context->layoutElements.capacity - 1 || context->booleanWarnings.maxElementsExceeded) { @@ -1459,28 +1470,129 @@ void Clay__OpenTextElement(Clay_String text, Clay_TextElementConfig *textConfig) return; } Clay_LayoutElement *parentElement = Clay__GetOpenLayoutElement(); - parentElement->childrenOrTextContent.children.length++; - Clay__OpenElement(); - Clay_LayoutElement * openLayoutElement = Clay__GetOpenLayoutElement(); + Clay_LayoutElement layoutElement = CLAY__DEFAULT_STRUCT; + Clay_LayoutElement *textElement = Clay_LayoutElementArray_Add(&context->layoutElements, layoutElement); + if (context->openClipElementStack.length > 0) { + Clay__int32_tArray_Set(&context->layoutElementClipElementIds, context->layoutElements.length - 1, Clay__int32_tArray_GetValue(&context->openClipElementStack, (int)context->openClipElementStack.length - 1)); + } else { + Clay__int32_tArray_Set(&context->layoutElementClipElementIds, context->layoutElements.length - 1, 0); + } + Clay__int32_tArray_Add(&context->layoutElementChildrenBuffer, context->layoutElements.length - 1); Clay__MeasureTextCacheItem *textMeasured = Clay__MeasureTextCached(&text, textConfig); - Clay_ElementId elementId = Clay__HashString(CLAY_STRING("Text"), parentElement->childrenOrTextContent.children.length, parentElement->id); - openLayoutElement->id = elementId.id; - Clay__AddHashMapItem(elementId, openLayoutElement); + Clay_ElementId elementId = Clay__HashNumber(parentElement->childrenOrTextContent.children.length, parentElement->id); + textElement->id = elementId.id; + Clay__AddHashMapItem(elementId, textElement); Clay__StringArray_Add(&context->layoutElementIdStrings, elementId.stringId); Clay_Dimensions textDimensions = { .width = textMeasured->unwrappedDimensions.width, .height = textConfig->lineHeight > 0 ? (float)textConfig->lineHeight : textMeasured->unwrappedDimensions.height }; - openLayoutElement->dimensions = textDimensions; - openLayoutElement->minDimensions = CLAY__INIT(Clay_Dimensions) { .width = textMeasured->unwrappedDimensions.height, .height = textDimensions.height }; // TODO not sure this is the best way to decide min width for text - openLayoutElement->childrenOrTextContent.textElementData = Clay__TextElementDataArray_Add(&context->textElementData, CLAY__INIT(Clay__TextElementData) { .text = text, .preferredDimensions = textMeasured->unwrappedDimensions, .elementIndex = context->layoutElements.length - 1 }); - openLayoutElement->elementConfigs = CLAY__INIT(Clay__ElementConfigArraySlice) { - .length = 1, - .internalArray = Clay__ElementConfigArray_Add(&context->elementConfigs, CLAY__INIT(Clay_ElementConfig) { .type = CLAY__ELEMENT_CONFIG_TYPE_TEXT, .config = { .textElementConfig = textConfig }}) + textElement->dimensions = textDimensions; + textElement->minDimensions = CLAY__INIT(Clay_Dimensions) { .width = textMeasured->unwrappedDimensions.height, .height = textDimensions.height }; // TODO not sure this is the best way to decide min width for text + textElement->childrenOrTextContent.textElementData = Clay__TextElementDataArray_Add(&context->textElementData, CLAY__INIT(Clay__TextElementData) { .text = text, .preferredDimensions = textMeasured->unwrappedDimensions, .elementIndex = context->layoutElements.length - 1 }); + textElement->elementConfigs = CLAY__INIT(Clay__ElementConfigArraySlice) { + .length = 1, + .internalArray = Clay__ElementConfigArray_Add(&context->elementConfigs, CLAY__INIT(Clay_ElementConfig) { .type = CLAY__ELEMENT_CONFIG_TYPE_TEXT, .config = { .textElementConfig = textConfig }}) }; - openLayoutElement->configsEnabled |= CLAY__ELEMENT_CONFIG_TYPE_TEXT; - openLayoutElement->layoutConfig = &CLAY_LAYOUT_DEFAULT; - // Close the currently open element - Clay__int32_tArray_RemoveSwapback(&context->openLayoutElementStack, (int)context->openLayoutElementStack.length - 1); + textElement->layoutConfig = &CLAY_LAYOUT_DEFAULT; + parentElement->childrenOrTextContent.children.length++; +} + +void Clay__ConfigureOpenElement(const Clay_ElementDeclaration declaration) { + Clay_Context* context = Clay_GetCurrentContext(); + Clay_LayoutElement *openLayoutElement = Clay__GetOpenLayoutElement(); + openLayoutElement->layoutConfig = Clay__StoreLayoutConfig(declaration.layout); + if (declaration.id.id != 0) { + Clay__AttachId(declaration.id); + } else if (openLayoutElement->id == 0) { + Clay__GenerateIdForAnonymousElement(openLayoutElement); + } + + openLayoutElement->elementConfigs.internalArray = &context->elementConfigs.internalArray[context->elementConfigs.length]; + Clay_SharedElementConfig *sharedConfig = NULL; + if (declaration.backgroundColor.a > 0) { + sharedConfig = Clay__StoreSharedElementConfig(CLAY__INIT(Clay_SharedElementConfig) { .backgroundColor = declaration.backgroundColor }); + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .sharedElementConfig = sharedConfig }, CLAY__ELEMENT_CONFIG_TYPE_SHARED); + } + if (!Clay__MemCmp((char *)(&declaration.cornerRadius), (char *)(&Clay__CornerRadius_DEFAULT), sizeof(Clay_CornerRadius))) { + if (sharedConfig) { + sharedConfig->cornerRadius = declaration.cornerRadius; + } else { + sharedConfig = Clay__StoreSharedElementConfig(CLAY__INIT(Clay_SharedElementConfig) { .cornerRadius = declaration.cornerRadius }); + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .sharedElementConfig = sharedConfig }, CLAY__ELEMENT_CONFIG_TYPE_SHARED); + } + } + if (declaration.userData != 0) { + if (sharedConfig) { + sharedConfig->userData = declaration.userData; + } else { + sharedConfig = Clay__StoreSharedElementConfig(CLAY__INIT(Clay_SharedElementConfig) { .userData = declaration.userData }); + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .sharedElementConfig = sharedConfig }, CLAY__ELEMENT_CONFIG_TYPE_SHARED); + } + } + if (declaration.image.imageData) { + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .imageElementConfig = Clay__StoreImageElementConfig(declaration.image) }, CLAY__ELEMENT_CONFIG_TYPE_IMAGE); + Clay__int32_tArray_Add(&context->imageElementPointers, context->layoutElements.length - 1); + } + if (declaration.floating.attachTo != CLAY_ATTACH_TO_NONE) { + Clay_FloatingElementConfig floatingConfig = declaration.floating; + // This looks dodgy but because of the auto generated root element the depth of the tree will always be at least 2 here + Clay_LayoutElement *hierarchicalParent = Clay_LayoutElementArray_Get(&context->layoutElements, Clay__int32_tArray_GetValue(&context->openLayoutElementStack, context->openLayoutElementStack.length - 2)); + if (hierarchicalParent) { + uint32_t clipElementId = 0; + if (declaration.floating.attachTo == CLAY_ATTACH_TO_PARENT) { + // Attach to the element's direct hierarchical parent + floatingConfig.parentId = hierarchicalParent->id; + if (context->openClipElementStack.length > 0) { + clipElementId = Clay__int32_tArray_GetValue(&context->openClipElementStack, (int)context->openClipElementStack.length - 1); + } + } else if (declaration.floating.attachTo == CLAY_ATTACH_TO_ELEMENT_WITH_ID) { + Clay_LayoutElementHashMapItem *parentItem = Clay__GetHashMapItem(floatingConfig.parentId); + if (!parentItem) { + context->errorHandler.errorHandlerFunction(CLAY__INIT(Clay_ErrorData) { + .errorType = CLAY_ERROR_TYPE_FLOATING_CONTAINER_PARENT_NOT_FOUND, + .errorText = CLAY_STRING("A floating element was declared with a parentId, but no element with that ID was found."), + .userData = context->errorHandler.userData }); + } else { + clipElementId = Clay__int32_tArray_GetValue(&context->layoutElementClipElementIds, parentItem->layoutElement - context->layoutElements.internalArray); + } + } else if (declaration.floating.attachTo == CLAY_ATTACH_TO_ROOT) { + floatingConfig.parentId = Clay__HashString(CLAY_STRING("Clay__RootContainer"), 0, 0).id; + } + Clay__LayoutElementTreeRootArray_Add(&context->layoutElementTreeRoots, CLAY__INIT(Clay__LayoutElementTreeRoot) { + .layoutElementIndex = Clay__int32_tArray_GetValue(&context->openLayoutElementStack, context->openLayoutElementStack.length - 1), + .parentId = floatingConfig.parentId, + .clipElementId = clipElementId, + .zIndex = floatingConfig.zIndex, + }); + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .floatingElementConfig = Clay__StoreFloatingElementConfig(declaration.floating) }, CLAY__ELEMENT_CONFIG_TYPE_FLOATING); + } + } + if (declaration.custom.customData) { + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .customElementConfig = Clay__StoreCustomElementConfig(declaration.custom) }, CLAY__ELEMENT_CONFIG_TYPE_CUSTOM); + } + if (declaration.scroll.horizontal | declaration.scroll.vertical) { + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .scrollElementConfig = Clay__StoreScrollElementConfig(declaration.scroll) }, CLAY__ELEMENT_CONFIG_TYPE_SCROLL); + Clay__int32_tArray_Add(&context->openClipElementStack, (int)openLayoutElement->id); + // Retrieve or create cached data to track scroll position across frames + Clay__ScrollContainerDataInternal *scrollOffset = CLAY__NULL; + for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { + Clay__ScrollContainerDataInternal *mapping = Clay__ScrollContainerDataInternalArray_Get(&context->scrollContainerDatas, i); + if (openLayoutElement->id == mapping->elementId) { + scrollOffset = mapping; + scrollOffset->layoutElement = openLayoutElement; + scrollOffset->openThisFrame = true; + } + } + if (!scrollOffset) { + scrollOffset = Clay__ScrollContainerDataInternalArray_Add(&context->scrollContainerDatas, CLAY__INIT(Clay__ScrollContainerDataInternal){.layoutElement = openLayoutElement, .scrollOrigin = {-1,-1}, .elementId = openLayoutElement->id, .openThisFrame = true}); + } + if (context->externalScrollHandlingEnabled) { + scrollOffset->scrollPosition = Clay__QueryScrollOffset(scrollOffset->elementId, context->queryScrollOffsetUserData); + } + } + if (!Clay__MemCmp((char *)(&declaration.border.width), (char *)(&Clay__BorderWidth_DEFAULT), sizeof(Clay_BorderWidth))) { + Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .borderElementConfig = Clay__StoreBorderElementConfig(declaration.border) }, CLAY__ELEMENT_CONFIG_TYPE_BORDER); + } } void Clay__InitializeEphemeralMemory(Clay_Context* context) { @@ -1494,15 +1606,14 @@ void Clay__InitializeEphemeralMemory(Clay_Context* context) { context->warnings = Clay__WarningArray_Allocate_Arena(100, arena); context->layoutConfigs = Clay__LayoutConfigArray_Allocate_Arena(maxElementCount, arena); - context->elementConfigBuffer = Clay__ElementConfigArray_Allocate_Arena(maxElementCount, arena); context->elementConfigs = Clay__ElementConfigArray_Allocate_Arena(maxElementCount, arena); - context->rectangleElementConfigs = Clay__RectangleElementConfigArray_Allocate_Arena(maxElementCount, arena); context->textElementConfigs = Clay__TextElementConfigArray_Allocate_Arena(maxElementCount, arena); context->imageElementConfigs = Clay__ImageElementConfigArray_Allocate_Arena(maxElementCount, arena); context->floatingElementConfigs = Clay__FloatingElementConfigArray_Allocate_Arena(maxElementCount, arena); context->scrollElementConfigs = Clay__ScrollElementConfigArray_Allocate_Arena(maxElementCount, arena); context->customElementConfigs = Clay__CustomElementConfigArray_Allocate_Arena(maxElementCount, arena); context->borderElementConfigs = Clay__BorderElementConfigArray_Allocate_Arena(maxElementCount, arena); + context->sharedElementConfigs = Clay__SharedElementConfigArray_Allocate_Arena(maxElementCount, arena); context->layoutElementIdStrings = Clay__StringArray_Allocate_Arena(maxElementCount, arena); context->wrappedTextLines = Clay__WrappedTextLineArray_Allocate_Arena(maxElementCount, arena); @@ -1526,7 +1637,7 @@ void Clay__InitializePersistentMemory(Clay_Context* context) { int32_t maxElementCount = context->maxElementCount; int32_t maxMeasureTextCacheWordCount = context->maxMeasureTextCacheWordCount; Clay_Arena *arena = &context->internalArena; - + context->scrollContainerDatas = Clay__ScrollContainerDataInternalArray_Allocate_Arena(10, arena); context->layoutElementsHashMapInternal = Clay__LayoutElementHashMapItemArray_Allocate_Arena(maxElementCount, arena); context->layoutElementsHashMap = Clay__int32_tArray_Allocate_Arena(maxElementCount, arena); @@ -1540,7 +1651,6 @@ void Clay__InitializePersistentMemory(Clay_Context* context) { context->arenaResetOffset = arena->nextAllocation; } - void Clay__CompressChildrenAlongAxis(bool xAxis, float totalSizeToDistribute, Clay__int32_tArray resizableContainerBuffer) { Clay_Context* context = Clay_GetCurrentContext(); Clay__int32_tArray largestContainers = context->openClipElementStack; @@ -1551,9 +1661,6 @@ void Clay__CompressChildrenAlongAxis(bool xAxis, float totalSizeToDistribute, Cl float targetSize = 0; for (int32_t i = 0; i < resizableContainerBuffer.length; ++i) { Clay_LayoutElement *childElement = Clay_LayoutElementArray_Get(&context->layoutElements, Clay__int32_tArray_GetValue(&resizableContainerBuffer, i)); - if (!xAxis && Clay__ElementHasConfig(childElement, CLAY__ELEMENT_CONFIG_TYPE_IMAGE)) { - continue; - } float childSize = xAxis ? childElement->dimensions.width : childElement->dimensions.height; if ((childSize - largestSize) < 0.1 && (childSize - largestSize) > -0.1) { Clay__int32_tArray_Add(&largestContainers, Clay__int32_tArray_GetValue(&resizableContainerBuffer, i)); @@ -1605,10 +1712,10 @@ void Clay__SizeContainersAlongAxis(bool xAxis) { Clay__int32_tArray_Add(&bfsBuffer, (int32_t)root->layoutElementIndex); // Size floating containers to their parents - if (Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER)) { - Clay_FloatingElementConfig *floatingElementConfig = Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER).floatingElementConfig; + if (Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING)) { + Clay_FloatingElementConfig *floatingElementConfig = Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING).floatingElementConfig; Clay_LayoutElementHashMapItem *parentItem = Clay__GetHashMapItem(floatingElementConfig->parentId); - if (parentItem) { + if (parentItem && parentItem != &Clay_LayoutElementHashMapItem_DEFAULT) { Clay_LayoutElement *parentLayoutElement = parentItem->layoutElement; if (rootElement->layoutConfig->sizing.width.type == CLAY__SIZING_TYPE_GROW) { rootElement->dimensions.width = parentLayoutElement->dimensions.width; @@ -1644,7 +1751,11 @@ void Clay__SizeContainersAlongAxis(bool xAxis) { Clay__int32_tArray_Add(&bfsBuffer, childElementIndex); } - if (childSizing.type != CLAY__SIZING_TYPE_PERCENT && childSizing.type != CLAY__SIZING_TYPE_FIXED && (!Clay__ElementHasConfig(childElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT) || (Clay__FindElementConfigWithType(childElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT).textElementConfig->wrapMode == CLAY_TEXT_WRAP_WORDS))) { + if (childSizing.type != CLAY__SIZING_TYPE_PERCENT + && childSizing.type != CLAY__SIZING_TYPE_FIXED + && (!Clay__ElementHasConfig(childElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT) || (Clay__FindElementConfigWithType(childElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT).textElementConfig->wrapMode == CLAY_TEXT_WRAP_WORDS)) // todo too many loops + && (xAxis || !Clay__ElementHasConfig(childElement, CLAY__ELEMENT_CONFIG_TYPE_IMAGE)) + ) { Clay__int32_tArray_Add(&resizableContainerBuffer, childElementIndex); } @@ -1682,8 +1793,8 @@ void Clay__SizeContainersAlongAxis(bool xAxis) { // The content is too large, compress the children as much as possible if (sizeToDistribute < 0) { // If the parent can scroll in the axis direction in this direction, don't compress children, just leave them alone - if (Clay__ElementHasConfig(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER)) { - Clay_ScrollElementConfig *scrollElementConfig = Clay__FindElementConfigWithType(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; + Clay_ScrollElementConfig *scrollElementConfig = Clay__FindElementConfigWithType(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; + if (scrollElementConfig) { if (((xAxis && scrollElementConfig->horizontal) || (!xAxis && scrollElementConfig->vertical))) { continue; } @@ -1724,8 +1835,8 @@ void Clay__SizeContainersAlongAxis(bool xAxis) { // If we're laying out the children of a scroll panel, grow containers expand to the height of the inner content, not the outer container float maxSize = parentSize - parentPadding; - if (Clay__ElementHasConfig(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER)) { - Clay_ScrollElementConfig *scrollElementConfig = Clay__FindElementConfigWithType(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; + if (Clay__ElementHasConfig(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL)) { + Clay_ScrollElementConfig *scrollElementConfig = Clay__FindElementConfigWithType(parent, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; if (((xAxis && scrollElementConfig->horizontal) || (!xAxis && scrollElementConfig->vertical))) { maxSize = CLAY__MAX(maxSize, innerContentSize); } @@ -1939,13 +2050,13 @@ void Clay__CalculateFinalLayout(void) { Clay_Vector2 rootPosition = CLAY__DEFAULT_STRUCT; Clay_LayoutElementHashMapItem *parentHashMapItem = Clay__GetHashMapItem(root->parentId); // Position root floating containers - if (Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER) && parentHashMapItem) { - Clay_FloatingElementConfig *config = Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER).floatingElementConfig; + if (Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING) && parentHashMapItem) { + Clay_FloatingElementConfig *config = Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING).floatingElementConfig; Clay_Dimensions rootDimensions = rootElement->dimensions; Clay_BoundingBox parentBoundingBox = parentHashMapItem->boundingBox; // Set X position Clay_Vector2 targetAttachPosition = CLAY__DEFAULT_STRUCT; - switch (config->attachment.parent) { + switch (config->attachPoints.parent) { case CLAY_ATTACH_POINT_LEFT_TOP: case CLAY_ATTACH_POINT_LEFT_CENTER: case CLAY_ATTACH_POINT_LEFT_BOTTOM: targetAttachPosition.x = parentBoundingBox.x; break; @@ -1956,7 +2067,7 @@ void Clay__CalculateFinalLayout(void) { case CLAY_ATTACH_POINT_RIGHT_CENTER: case CLAY_ATTACH_POINT_RIGHT_BOTTOM: targetAttachPosition.x = parentBoundingBox.x + parentBoundingBox.width; break; } - switch (config->attachment.element) { + switch (config->attachPoints.element) { case CLAY_ATTACH_POINT_LEFT_TOP: case CLAY_ATTACH_POINT_LEFT_CENTER: case CLAY_ATTACH_POINT_LEFT_BOTTOM: break; @@ -1967,7 +2078,7 @@ void Clay__CalculateFinalLayout(void) { case CLAY_ATTACH_POINT_RIGHT_CENTER: case CLAY_ATTACH_POINT_RIGHT_BOTTOM: targetAttachPosition.x -= rootDimensions.width; break; } - switch (config->attachment.parent) { // I know I could merge the x and y switch statements, but this is easier to read + switch (config->attachPoints.parent) { // I know I could merge the x and y switch statements, but this is easier to read case CLAY_ATTACH_POINT_LEFT_TOP: case CLAY_ATTACH_POINT_RIGHT_TOP: case CLAY_ATTACH_POINT_CENTER_TOP: targetAttachPosition.y = parentBoundingBox.y; break; @@ -1978,7 +2089,7 @@ void Clay__CalculateFinalLayout(void) { case CLAY_ATTACH_POINT_CENTER_BOTTOM: case CLAY_ATTACH_POINT_RIGHT_BOTTOM: targetAttachPosition.y = parentBoundingBox.y + parentBoundingBox.height; break; } - switch (config->attachment.element) { + switch (config->attachPoints.element) { case CLAY_ATTACH_POINT_LEFT_TOP: case CLAY_ATTACH_POINT_RIGHT_TOP: case CLAY_ATTACH_POINT_CENTER_TOP: break; @@ -1998,7 +2109,7 @@ void Clay__CalculateFinalLayout(void) { if (clipHashMapItem) { // Floating elements that are attached to scrolling contents won't be correctly positioned if external scroll handling is enabled, fix here if (context->externalScrollHandlingEnabled) { - Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(clipHashMapItem->layoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; + Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(clipHashMapItem->layoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { Clay__ScrollContainerDataInternal *mapping = Clay__ScrollContainerDataInternalArray_Get(&context->scrollContainerDatas, i); if (mapping->layoutElement == clipHashMapItem->layoutElement) { @@ -2015,9 +2126,9 @@ void Clay__CalculateFinalLayout(void) { } Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { .boundingBox = clipHashMapItem->boundingBox, - .config = { .scrollElementConfig = Clay__StoreScrollElementConfig(CLAY__INIT(Clay_ScrollElementConfig)CLAY__DEFAULT_STRUCT) }, + .userData = 0, + .id = Clay__HashNumber(rootElement->id, rootElement->childrenOrTextContent.children.length + 10).id, // TODO need a better strategy for managing derived ids .zIndex = root->zIndex, - .id = Clay__RehashWithNumber(rootElement->id, 10), // TODO need a better strategy for managing derived ids .commandType = CLAY_RENDER_COMMAND_TYPE_SCISSOR_START, }); } @@ -2036,8 +2147,8 @@ void Clay__CalculateFinalLayout(void) { context->treeNodeVisited.internalArray[dfsBuffer.length - 1] = true; Clay_BoundingBox currentElementBoundingBox = { currentElementTreeNode->position.x, currentElementTreeNode->position.y, currentElement->dimensions.width, currentElement->dimensions.height }; - if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER)) { - Clay_FloatingElementConfig *floatingElementConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER).floatingElementConfig; + if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING)) { + Clay_FloatingElementConfig *floatingElementConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING).floatingElementConfig; Clay_Dimensions expand = floatingElementConfig->expand; currentElementBoundingBox.x -= expand.width; currentElementBoundingBox.width += expand.width * 2; @@ -2047,8 +2158,8 @@ void Clay__CalculateFinalLayout(void) { Clay__ScrollContainerDataInternal *scrollContainerData = CLAY__NULL; // Apply scroll offsets to container - if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER)) { - Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; + if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL)) { + Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; // This linear scan could theoretically be slow under very strange conditions, but I can't imagine a real UI with more than a few 10's of scroll containers for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { @@ -2086,7 +2197,7 @@ void Clay__CalculateFinalLayout(void) { int32_t next = sortedConfigIndexes[i + 1]; Clay__ElementConfigType currentType = Clay__ElementConfigArraySlice_Get(¤tElement->elementConfigs, current)->type; Clay__ElementConfigType nextType = Clay__ElementConfigArraySlice_Get(¤tElement->elementConfigs, next)->type; - if (nextType == CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER || currentType == CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER) { + if (nextType == CLAY__ELEMENT_CONFIG_TYPE_SCROLL || currentType == CLAY__ELEMENT_CONFIG_TYPE_BORDER) { sortedConfigIndexes[i] = next; sortedConfigIndexes[i + 1] = current; } @@ -2094,12 +2205,20 @@ void Clay__CalculateFinalLayout(void) { sortMax--; } + bool emitRectangle; // Create the render commands for this element + Clay_SharedElementConfig *sharedConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SHARED).sharedElementConfig; + if (sharedConfig) { + emitRectangle = true; + } + else if (!sharedConfig) { + emitRectangle = false; + sharedConfig = &Clay_SharedElementConfig_DEFAULT; + } for (int32_t elementConfigIndex = 0; elementConfigIndex < currentElement->elementConfigs.length; ++elementConfigIndex) { Clay_ElementConfig *elementConfig = Clay__ElementConfigArraySlice_Get(¤tElement->elementConfigs, sortedConfigIndexes[elementConfigIndex]); Clay_RenderCommand renderCommand = { .boundingBox = currentElementBoundingBox, - .config = elementConfig->config, .id = currentElement->id, }; @@ -2107,26 +2226,27 @@ void Clay__CalculateFinalLayout(void) { // Culling - Don't bother to generate render commands for rectangles entirely outside the screen - this won't stop their children from being rendered if they overflow bool shouldRender = !offscreen; switch (elementConfig->type) { - case CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE: { - renderCommand.commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE; - break; - } - case CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER: { + case CLAY__ELEMENT_CONFIG_TYPE_FLOATING: + case CLAY__ELEMENT_CONFIG_TYPE_SHARED: + case CLAY__ELEMENT_CONFIG_TYPE_BORDER: { shouldRender = false; break; } - case CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER: { - renderCommand.commandType = CLAY_RENDER_COMMAND_TYPE_NONE; - shouldRender = false; - break; - } - case CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER: { + case CLAY__ELEMENT_CONFIG_TYPE_SCROLL: { renderCommand.commandType = CLAY_RENDER_COMMAND_TYPE_SCISSOR_START; - shouldRender = true; break; } case CLAY__ELEMENT_CONFIG_TYPE_IMAGE: { renderCommand.commandType = CLAY_RENDER_COMMAND_TYPE_IMAGE; + renderCommand.renderData = CLAY__INIT(Clay_RenderData) { + .image = { + .backgroundColor = emitRectangle ? sharedConfig->backgroundColor : CLAY__INIT(Clay_Color) { 255, 255, 255, 255 }, + .cornerRadius = sharedConfig->cornerRadius, + .sourceDimensions = elementConfig->config.imageElementConfig->sourceDimensions, + .imageData = elementConfig->config.imageElementConfig->imageData, + } + }; + emitRectangle = false; break; } case CLAY__ELEMENT_CONFIG_TYPE_TEXT: { @@ -2141,17 +2261,24 @@ void Clay__CalculateFinalLayout(void) { float lineHeightOffset = (finalLineHeight - naturalLineHeight) / 2; float yPosition = lineHeightOffset; for (int32_t lineIndex = 0; lineIndex < currentElement->childrenOrTextContent.textElementData->wrappedLines.length; ++lineIndex) { - Clay__WrappedTextLine wrappedLine = currentElement->childrenOrTextContent.textElementData->wrappedLines.internalArray[lineIndex]; // todo range check - if (wrappedLine.line.length == 0) { + Clay__WrappedTextLine *wrappedLine = Clay__WrappedTextLineArraySlice_Get(¤tElement->childrenOrTextContent.textElementData->wrappedLines, lineIndex); + if (wrappedLine->line.length == 0) { yPosition += finalLineHeight; continue; } Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { - .boundingBox = { currentElementBoundingBox.x, currentElementBoundingBox.y + yPosition, wrappedLine.dimensions.width, wrappedLine.dimensions.height }, // TODO width - .config = configUnion, - .text = CLAY__INIT(Clay_StringSlice) { .length = wrappedLine.line.length, .chars = wrappedLine.line.chars, .baseChars = currentElement->childrenOrTextContent.textElementData->text.chars }, - .zIndex = root->zIndex, + .boundingBox = { currentElementBoundingBox.x, currentElementBoundingBox.y + yPosition, wrappedLine->dimensions.width, wrappedLine->dimensions.height }, + .renderData = { .text = { + .stringContents = CLAY__INIT(Clay_StringSlice) { .length = wrappedLine->line.length, .chars = wrappedLine->line.chars, .baseChars = currentElement->childrenOrTextContent.textElementData->text.chars }, + .textColor = textElementConfig->textColor, + .fontId = textElementConfig->fontId, + .fontSize = textElementConfig->fontSize, + .letterSpacing = textElementConfig->letterSpacing, + .lineHeight = textElementConfig->lineHeight, + }}, + .userData = sharedConfig->userData, .id = Clay__HashNumber(lineIndex, currentElement->id).id, + .zIndex = root->zIndex, .commandType = CLAY_RENDER_COMMAND_TYPE_TEXT, }); yPosition += finalLineHeight; @@ -2164,6 +2291,14 @@ void Clay__CalculateFinalLayout(void) { } case CLAY__ELEMENT_CONFIG_TYPE_CUSTOM: { renderCommand.commandType = CLAY_RENDER_COMMAND_TYPE_CUSTOM; + renderCommand.renderData = CLAY__INIT(Clay_RenderData) { + .custom = { + .backgroundColor = sharedConfig->backgroundColor, + .cornerRadius = sharedConfig->cornerRadius, + .customData = elementConfig->config.customElementConfig->customData, + } + }; + emitRectangle = false; break; } default: break; @@ -2178,6 +2313,20 @@ void Clay__CalculateFinalLayout(void) { } } + if (emitRectangle) { + Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { + .boundingBox = currentElementBoundingBox, + .renderData = { .rectangle = { + .backgroundColor = sharedConfig->backgroundColor, + .cornerRadius = sharedConfig->cornerRadius, + }}, + .userData = sharedConfig->userData, + .id = currentElement->id, + .zIndex = root->zIndex, + .commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE, + }); + } + // Setup initial on-axis alignment if (!Clay__ElementHasConfig(currentElementTreeNode->layoutElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT)) { Clay_Dimensions contentSize = {0,0}; @@ -2219,9 +2368,9 @@ void Clay__CalculateFinalLayout(void) { else { // DFS is returning upwards backwards bool closeScrollElement = false; - if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER)) { + Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; + if (scrollConfig) { closeScrollElement = true; - Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { Clay__ScrollContainerDataInternal *mapping = Clay__ScrollContainerDataInternalArray_Get(&context->scrollContainerDatas, i); if (mapping->layoutElement == currentElement) { @@ -2235,22 +2384,26 @@ void Clay__CalculateFinalLayout(void) { } } - if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER)) { + if (Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_BORDER)) { Clay_LayoutElementHashMapItem *currentElementData = Clay__GetHashMapItem(currentElement->id); Clay_BoundingBox currentElementBoundingBox = currentElementData->boundingBox; // Culling - Don't bother to generate render commands for rectangles entirely outside the screen - this won't stop their children from being rendered if they overflow if (!Clay__ElementIsOffscreen(¤tElementBoundingBox)) { - Clay_BorderElementConfig *borderConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER).borderElementConfig; + Clay_SharedElementConfig *sharedConfig = Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SHARED) ? Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_SHARED).sharedElementConfig : &Clay_SharedElementConfig_DEFAULT; + Clay_BorderElementConfig *borderConfig = Clay__FindElementConfigWithType(currentElement, CLAY__ELEMENT_CONFIG_TYPE_BORDER).borderElementConfig; Clay_RenderCommand renderCommand = { .boundingBox = currentElementBoundingBox, - .config = { .borderElementConfig = borderConfig }, - .id = Clay__RehashWithNumber(currentElement->id, 4), + .renderData = { .border = { + .color = borderConfig->color, + .cornerRadius = sharedConfig->cornerRadius, + .width = borderConfig->width + }}, + .id = Clay__HashNumber(currentElement->id, currentElement->childrenOrTextContent.children.length).id, .commandType = CLAY_RENDER_COMMAND_TYPE_BORDER, }; Clay__AddRenderCommand(renderCommand); - if (borderConfig->betweenChildren.width > 0 && borderConfig->betweenChildren.color.a > 0) { - Clay_RectangleElementConfig *rectangleConfig = Clay__StoreRectangleElementConfig(CLAY__INIT(Clay_RectangleElementConfig) {.color = borderConfig->betweenChildren.color}); + if (borderConfig->width.betweenChildren > 0 && borderConfig->color.a > 0) { float halfGap = layoutConfig->childGap / 2; Clay_Vector2 borderOffset = { (float)layoutConfig->padding.left - halfGap, (float)layoutConfig->padding.top - halfGap }; if (layoutConfig->layoutDirection == CLAY_LEFT_TO_RIGHT) { @@ -2258,9 +2411,11 @@ void Clay__CalculateFinalLayout(void) { Clay_LayoutElement *childElement = Clay_LayoutElementArray_Get(&context->layoutElements, currentElement->childrenOrTextContent.children.elements[i]); if (i > 0) { Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { - .boundingBox = { currentElementBoundingBox.x + borderOffset.x + scrollOffset.x, currentElementBoundingBox.y + scrollOffset.y, (float)borderConfig->betweenChildren.width, currentElement->dimensions.height }, - .config = { rectangleConfig }, - .id = Clay__RehashWithNumber(currentElement->id, 5 + i), + .boundingBox = { currentElementBoundingBox.x + borderOffset.x + scrollOffset.x, currentElementBoundingBox.y + scrollOffset.y, (float)borderConfig->width.betweenChildren, currentElement->dimensions.height }, + .renderData = { .rectangle = { + .backgroundColor = borderConfig->color, + } }, + .id = Clay__HashNumber(currentElement->id, currentElement->childrenOrTextContent.children.length + 1 + i).id, .commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE, }); } @@ -2271,9 +2426,11 @@ void Clay__CalculateFinalLayout(void) { Clay_LayoutElement *childElement = Clay_LayoutElementArray_Get(&context->layoutElements, currentElement->childrenOrTextContent.children.elements[i]); if (i > 0) { Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { - .boundingBox = { currentElementBoundingBox.x + scrollOffset.x, currentElementBoundingBox.y + borderOffset.y + scrollOffset.y, currentElement->dimensions.width, (float)borderConfig->betweenChildren.width }, - .config = { rectangleConfig }, - .id = Clay__RehashWithNumber(currentElement->id, 5 + i), + .boundingBox = { currentElementBoundingBox.x + scrollOffset.x, currentElementBoundingBox.y + borderOffset.y + scrollOffset.y, currentElement->dimensions.width, (float)borderConfig->width.betweenChildren }, + .renderData = { .rectangle = { + .backgroundColor = borderConfig->color, + } }, + .id = Clay__HashNumber(currentElement->id, currentElement->childrenOrTextContent.children.length + 1 + i).id, .commandType = CLAY_RENDER_COMMAND_TYPE_RECTANGLE, }); } @@ -2286,7 +2443,7 @@ void Clay__CalculateFinalLayout(void) { // This exists because the scissor needs to end _after_ borders between elements if (closeScrollElement) { Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { - .id = Clay__RehashWithNumber(currentElement->id, 11), + .id = Clay__HashNumber(currentElement->id, rootElement->childrenOrTextContent.children.length + 11).id, .commandType = CLAY_RENDER_COMMAND_TYPE_SCISSOR_END, }); } @@ -2344,47 +2501,23 @@ void Clay__CalculateFinalLayout(void) { } if (root->clipElementId) { - Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { .id = Clay__RehashWithNumber(rootElement->id, 11), .commandType = CLAY_RENDER_COMMAND_TYPE_SCISSOR_END }); + Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand) { .id = Clay__HashNumber(rootElement->id, rootElement->childrenOrTextContent.children.length + 11).id, .commandType = CLAY_RENDER_COMMAND_TYPE_SCISSOR_END }); } } } -void Clay__AttachId(Clay_ElementId elementId) { +Clay_ElementId Clay__AttachId(Clay_ElementId elementId) { Clay_Context* context = Clay_GetCurrentContext(); if (context->booleanWarnings.maxElementsExceeded) { - return; + return Clay_ElementId_DEFAULT; } Clay_LayoutElement *openLayoutElement = Clay__GetOpenLayoutElement(); openLayoutElement->id = elementId.id; Clay__AddHashMapItem(elementId, openLayoutElement); Clay__StringArray_Add(&context->layoutElementIdStrings, elementId.stringId); + return elementId; } -void Clay__AttachLayoutConfig(Clay_LayoutConfig *config) { - Clay_Context* context = Clay_GetCurrentContext(); - if (context->booleanWarnings.maxElementsExceeded) { - return; - } - Clay__GetOpenLayoutElement()->layoutConfig = config; -} -void Clay__AttachElementConfig(Clay_ElementConfigUnion config, Clay__ElementConfigType type) { - Clay_Context* context = Clay_GetCurrentContext(); - if (context->booleanWarnings.maxElementsExceeded) { - return; - } - Clay_LayoutElement *openLayoutElement = Clay__GetOpenLayoutElement(); - openLayoutElement->elementConfigs.length++; - Clay__ElementConfigArray_Add(&context->elementConfigBuffer, CLAY__INIT(Clay_ElementConfig) { .type = type, .config = config }); -} -Clay_LayoutConfig * Clay__StoreLayoutConfig(Clay_LayoutConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &CLAY_LAYOUT_DEFAULT : Clay__LayoutConfigArray_Add(&Clay_GetCurrentContext()->layoutConfigs, config); } -Clay_RectangleElementConfig * Clay__StoreRectangleElementConfig(Clay_RectangleElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_RectangleElementConfig_DEFAULT : Clay__RectangleElementConfigArray_Add(&Clay_GetCurrentContext()->rectangleElementConfigs, config); } -Clay_TextElementConfig * Clay__StoreTextElementConfig(Clay_TextElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_TextElementConfig_DEFAULT : Clay__TextElementConfigArray_Add(&Clay_GetCurrentContext()->textElementConfigs, config); } -Clay_ImageElementConfig * Clay__StoreImageElementConfig(Clay_ImageElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_ImageElementConfig_DEFAULT : Clay__ImageElementConfigArray_Add(&Clay_GetCurrentContext()->imageElementConfigs, config); } -Clay_FloatingElementConfig * Clay__StoreFloatingElementConfig(Clay_FloatingElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_FloatingElementConfig_DEFAULT : Clay__FloatingElementConfigArray_Add(&Clay_GetCurrentContext()->floatingElementConfigs, config); } -Clay_CustomElementConfig * Clay__StoreCustomElementConfig(Clay_CustomElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_CustomElementConfig_DEFAULT : Clay__CustomElementConfigArray_Add(&Clay_GetCurrentContext()->customElementConfigs, config); } -Clay_ScrollElementConfig * Clay__StoreScrollElementConfig(Clay_ScrollElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_ScrollElementConfig_DEFAULT : Clay__ScrollElementConfigArray_Add(&Clay_GetCurrentContext()->scrollElementConfigs, config); } -Clay_BorderElementConfig * Clay__StoreBorderElementConfig(Clay_BorderElementConfig config) { return Clay_GetCurrentContext()->booleanWarnings.maxElementsExceeded ? &Clay_BorderElementConfig_DEFAULT : Clay__BorderElementConfigArray_Add(&Clay_GetCurrentContext()->borderElementConfigs, config); } - #pragma region DebugTools Clay_Color CLAY__DEBUGVIEW_COLOR_1 = {58, 56, 52, 255}; Clay_Color CLAY__DEBUGVIEW_COLOR_2 = {62, 60, 58, 255}; @@ -2404,12 +2537,12 @@ typedef struct { Clay__DebugElementConfigTypeLabelConfig Clay__DebugGetElementConfigTypeLabel(Clay__ElementConfigType type) { switch (type) { - case CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Rectangle"), {243,134,48,255} }; + case CLAY__ELEMENT_CONFIG_TYPE_SHARED: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Shared"), {243,134,48,255} }; case CLAY__ELEMENT_CONFIG_TYPE_TEXT: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Text"), {105,210,231,255} }; case CLAY__ELEMENT_CONFIG_TYPE_IMAGE: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Image"), {121,189,154,255} }; - case CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Floating"), {250,105,0,255} }; - case CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Scroll"), {242,196,90,255} }; - case CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Border"), {108,91,123, 255} }; + case CLAY__ELEMENT_CONFIG_TYPE_FLOATING: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Floating"), {250,105,0,255} }; + case CLAY__ELEMENT_CONFIG_TYPE_SCROLL: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) {CLAY_STRING("Scroll"), {242, 196, 90, 255} }; + case CLAY__ELEMENT_CONFIG_TYPE_BORDER: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) {CLAY_STRING("Border"), {108, 91, 123, 255} }; case CLAY__ELEMENT_CONFIG_TYPE_CUSTOM: return CLAY__INIT(Clay__DebugElementConfigTypeLabelConfig) { CLAY_STRING("Custom"), {11,72,107,255} }; default: break; } @@ -2436,8 +2569,8 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR Clay__int32_tArray_Add(&dfsBuffer, (int32_t)root->layoutElementIndex); context->treeNodeVisited.internalArray[0] = false; if (rootIndex > 0) { - CLAY(CLAY_IDI("Clay__DebugView_EmptyRowOuter", rootIndex), CLAY_LAYOUT({ .sizing = {.width = CLAY_SIZING_GROW(0)}, .padding = {CLAY__DEBUGVIEW_INDENT_WIDTH / 2, 0} })) { - CLAY(CLAY_IDI("Clay__DebugView_EmptyRow", rootIndex), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED((float)CLAY__DEBUGVIEW_ROW_HEIGHT) }}), CLAY_BORDER({ .top = { .width = 1, .color = CLAY__DEBUGVIEW_COLOR_3 } })) {} + CLAY({ .id = CLAY_IDI("Clay__DebugView_EmptyRowOuter", rootIndex), .layout = { .sizing = {.width = CLAY_SIZING_GROW(0)}, .padding = {CLAY__DEBUGVIEW_INDENT_WIDTH / 2, 0} } }) { + CLAY({ .id = CLAY_IDI("Clay__DebugView_EmptyRow", rootIndex), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED((float)CLAY__DEBUGVIEW_ROW_HEIGHT) }}, .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = { .top = 1 } } }) {} } layoutData.rowCount++; } @@ -2467,29 +2600,31 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR if (context->debugSelectedElementId == currentElement->id) { layoutData.selectedElementRowIndex = layoutData.rowCount; } - CLAY(CLAY_IDI("Clay__DebugView_ElementOuter", currentElement->id), Clay__AttachLayoutConfig(&Clay__DebugView_ScrollViewItemLayoutConfig)) { + CLAY({ .id = CLAY_IDI("Clay__DebugView_ElementOuter", currentElement->id), .layout = Clay__DebugView_ScrollViewItemLayoutConfig }) { // Collapse icon / button if (!(Clay__ElementHasConfig(currentElement, CLAY__ELEMENT_CONFIG_TYPE_TEXT) || currentElement->childrenOrTextContent.children.length == 0)) { - CLAY(CLAY_IDI("Clay__DebugView_CollapseElement", currentElement->id), - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(16), CLAY_SIZING_FIXED(16)}, .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER} }), - CLAY_BORDER_OUTSIDE_RADIUS(1, CLAY__DEBUGVIEW_COLOR_3, 4) - ) { + CLAY({ + .id = CLAY_IDI("Clay__DebugView_CollapseElement", currentElement->id), + .layout = { .sizing = {CLAY_SIZING_FIXED(16), CLAY_SIZING_FIXED(16)}, .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER} }, + .cornerRadius = CLAY_CORNER_RADIUS(4), + .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = {1, 1, 1, 1} }, + }) { CLAY_TEXT((currentElementData && currentElementData->debugData->collapsed) ? CLAY_STRING("+") : CLAY_STRING("-"), CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_4, .fontSize = 16 })); } } else { // Square dot for empty containers - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(16), CLAY_SIZING_FIXED(16)}, .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER } })) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(8), CLAY_SIZING_FIXED(8)} }), CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_3, .cornerRadius = CLAY_CORNER_RADIUS(2) })) {} + CLAY({ .layout = { .sizing = {CLAY_SIZING_FIXED(16), CLAY_SIZING_FIXED(16)}, .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER } } }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_FIXED(8), CLAY_SIZING_FIXED(8)} }, .backgroundColor = CLAY__DEBUGVIEW_COLOR_3, .cornerRadius = CLAY_CORNER_RADIUS(2) }) {} } } // Collisions and offscreen info if (currentElementData) { if (currentElementData->debugData->collision) { - CLAY(CLAY_LAYOUT({ .padding = { 8, 8, 2, 2 } }), CLAY_BORDER_OUTSIDE_RADIUS(1, (CLAY__INIT(Clay_Color){177, 147, 8, 255}), 4)) { + CLAY({ .layout = { .padding = { 8, 8, 2, 2 }}, .border = { .color = {177, 147, 8, 255}, .width = {1, 1, 1, 1} } }) { CLAY_TEXT(CLAY_STRING("Duplicate ID"), CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_3, .fontSize = 16 })); } } if (offscreen) { - CLAY(CLAY_LAYOUT({ .padding = { 8, 8, 2, 2 } }), CLAY_BORDER_OUTSIDE_RADIUS(1, CLAY__DEBUGVIEW_COLOR_3, 4)) { + CLAY({ .layout = { .padding = { 8, 8, 2, 2 } }, .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = { 1, 1, 1, 1 } } }) { CLAY_TEXT(CLAY_STRING("Offscreen"), CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_3, .fontSize = 16 })); } } @@ -2503,7 +2638,7 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR Clay__DebugElementConfigTypeLabelConfig config = Clay__DebugGetElementConfigTypeLabel(elementConfig->type); Clay_Color backgroundColor = config.color; backgroundColor.a = 90; - CLAY(CLAY_LAYOUT({ .padding = { 8, 8, 2, 2 } }), CLAY_RECTANGLE({ .color = backgroundColor, .cornerRadius = CLAY_CORNER_RADIUS(4) }), CLAY_BORDER_OUTSIDE_RADIUS(1, config.color, 4)) { + CLAY({ .layout = { .padding = { 8, 8, 2, 2 } }, .backgroundColor = backgroundColor, .cornerRadius = CLAY_CORNER_RADIUS(4), .border = { .color = config.color, .width = { 1, 1, 1, 1 } } }) { CLAY_TEXT(config.label, CLAY_TEXT_CONFIG({ .textColor = offscreen ? CLAY__DEBUGVIEW_COLOR_3 : CLAY__DEBUGVIEW_COLOR_4, .fontSize = 16 })); } } @@ -2514,8 +2649,8 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR layoutData.rowCount++; Clay__TextElementData *textElementData = currentElement->childrenOrTextContent.textElementData; Clay_TextElementConfig *rawTextConfig = offscreen ? CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_3, .fontSize = 16 }) : &Clay__DebugView_TextNameConfig; - CLAY(CLAY_LAYOUT({ .sizing = { .height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }), CLAY_RECTANGLE(CLAY__DEFAULT_STRUCT)) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_INDENT_WIDTH + 16), CLAY__DEFAULT_STRUCT} })) {} + CLAY({ .layout = { .sizing = { .height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } } }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_INDENT_WIDTH + 16) } } }) {} CLAY_TEXT(CLAY_STRING("\""), rawTextConfig); CLAY_TEXT(textElementData->text.length > 40 ? (CLAY__INIT(Clay_String) { .length = 40, .chars = textElementData->text.chars }) : textElementData->text, rawTextConfig); if (textElementData->text.length > 40) { @@ -2525,15 +2660,11 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR } } else if (currentElement->childrenOrTextContent.children.length > 0) { Clay__OpenElement(); - CLAY_LAYOUT({ .padding = { 8 } }); - Clay__ElementPostConfiguration(); + Clay__ConfigureOpenElement(CLAY__INIT(Clay_ElementDeclaration) { .layout = { .padding = { 8 } } }); Clay__OpenElement(); - CLAY_BORDER({ .left = { .width = 1, .color = CLAY__DEBUGVIEW_COLOR_3 }}); - Clay__ElementPostConfiguration(); - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED( CLAY__DEBUGVIEW_INDENT_WIDTH), CLAY__DEFAULT_STRUCT}, .childAlignment = { .x = CLAY_ALIGN_X_RIGHT } })) {} + Clay__ConfigureOpenElement(CLAY__INIT(Clay_ElementDeclaration) { .layout = { .padding = { .left = CLAY__DEBUGVIEW_INDENT_WIDTH }}, .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = { .left = 1 } }}); Clay__OpenElement(); - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM }); - Clay__ElementPostConfiguration(); + Clay__ConfigureOpenElement(CLAY__INIT(Clay_ElementDeclaration) { .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM } }); } layoutData.rowCount++; @@ -2559,8 +2690,8 @@ Clay__RenderDebugLayoutData Clay__RenderDebugLayoutElementsList(int32_t initialR } if (highlightedElementId) { - CLAY(CLAY_ID("Clay__DebugView_ElementHighlight"), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }), CLAY_FLOATING({ .zIndex = 65535, .parentId = highlightedElementId })) { - CLAY(CLAY_ID("Clay__DebugView_ElementHighlightRectangle"), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }), CLAY_RECTANGLE({.color = Clay__debugViewHighlightColor })) {} + CLAY({ .id = CLAY_ID("Clay__DebugView_ElementHighlight"), .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }, .floating = { .parentId = highlightedElementId, .zIndex = 32767, .pointerCaptureMode = CLAY_POINTER_CAPTURE_MODE_PASSTHROUGH, .attachTo = CLAY_ATTACH_TO_ELEMENT_WITH_ID } }) { + CLAY({ .id = CLAY_ID("Clay__DebugView_ElementHighlightRectangle"), .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }, .backgroundColor = Clay__debugViewHighlightColor }) {} } } return layoutData; @@ -2595,17 +2726,17 @@ void Clay__RenderDebugViewElementConfigHeader(Clay_String elementId, Clay__Eleme Clay__DebugElementConfigTypeLabelConfig config = Clay__DebugGetElementConfigTypeLabel(type); Clay_Color backgroundColor = config.color; backgroundColor.a = 90; - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0)}, .padding = CLAY_PADDING_ALL(CLAY__DEBUGVIEW_OUTER_PADDING), .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } })) { - CLAY(CLAY_LAYOUT({ .padding = { 8, 8, 2, 2 } }), CLAY_RECTANGLE({ .color = backgroundColor, .cornerRadius = CLAY_CORNER_RADIUS(4) }), CLAY_BORDER_OUTSIDE_RADIUS(1, config.color, 4)) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0)}, .padding = CLAY_PADDING_ALL(CLAY__DEBUGVIEW_OUTER_PADDING), .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } } }) { + CLAY({ .layout = { .padding = { 8, 8, 2, 2 } }, .backgroundColor = backgroundColor, .cornerRadius = CLAY_CORNER_RADIUS(4), .border = { .color = config.color, .width = { 1, 1, 1, 1 } } }) { CLAY_TEXT(config.label, CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_4, .fontSize = 16 })); } - CLAY(CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) } })) {} + CLAY({ .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) } } }) {} CLAY_TEXT(elementId, CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_3, .fontSize = 16, .wrapMode = CLAY_TEXT_WRAP_NONE })); } } void Clay__RenderDebugViewColor(Clay_Color color, Clay_TextElementConfig *textConfig) { - CLAY(CLAY_LAYOUT({ .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { + CLAY({ .layout = { .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} } }) { CLAY_TEXT(CLAY_STRING("{ r: "), textConfig); CLAY_TEXT(Clay__IntToString(color.r), textConfig); CLAY_TEXT(CLAY_STRING(", g: "), textConfig); @@ -2615,15 +2746,13 @@ void Clay__RenderDebugViewColor(Clay_Color color, Clay_TextElementConfig *textCo CLAY_TEXT(CLAY_STRING(", a: "), textConfig); CLAY_TEXT(Clay__IntToString(color.a), textConfig); CLAY_TEXT(CLAY_STRING(" }"), textConfig); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED(10), CLAY__DEFAULT_STRUCT } })) {} - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8)} }), CLAY_BORDER_OUTSIDE_RADIUS(1, CLAY__DEBUGVIEW_COLOR_4, 4)) { - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8)} }), CLAY_RECTANGLE({ .color = color, .cornerRadius = CLAY_CORNER_RADIUS(4) })) {} - } + CLAY({ .layout = { .sizing = { CLAY_SIZING_FIXED(10) } } }) {} + CLAY({ .layout = { .sizing = { CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 8)} }, .backgroundColor = color, .cornerRadius = CLAY_CORNER_RADIUS(4), .border = { .color = CLAY__DEBUGVIEW_COLOR_4, .width = { 1, 1, 1, 1 } } }) {} } } void Clay__RenderDebugViewCornerRadius(Clay_CornerRadius cornerRadius, Clay_TextElementConfig *textConfig) { - CLAY(CLAY_LAYOUT({ .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { + CLAY({ .layout = { .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} } }) { CLAY_TEXT(CLAY_STRING("{ topLeft: "), textConfig); CLAY_TEXT(Clay__IntToString(cornerRadius.topLeft), textConfig); CLAY_TEXT(CLAY_STRING(", topRight: "), textConfig); @@ -2636,17 +2765,6 @@ void Clay__RenderDebugViewCornerRadius(Clay_CornerRadius cornerRadius, Clay_Text } } -void Clay__RenderDebugViewBorder(int32_t index, Clay_Border border, Clay_TextElementConfig *textConfig) { - (void) index; - CLAY(CLAY_LAYOUT({ .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { - CLAY_TEXT(CLAY_STRING("{ width: "), textConfig); - CLAY_TEXT(Clay__IntToString(border.width), textConfig); - CLAY_TEXT(CLAY_STRING(", color: "), textConfig); - Clay__RenderDebugViewColor(border.color, textConfig); - CLAY_TEXT(CLAY_STRING(" }"), textConfig); - } -} - void HandleDebugViewCloseButtonInteraction(Clay_ElementId elementId, Clay_PointerData pointerInfo, intptr_t userData) { Clay_Context* context = Clay_GetCurrentContext(); (void) elementId; (void) pointerInfo; (void) userData; @@ -2693,35 +2811,37 @@ void Clay__RenderDebugView(void) { highlightedRow = -1; } Clay__RenderDebugLayoutData layoutData = CLAY__DEFAULT_STRUCT; - CLAY(CLAY_ID("Clay__DebugView"), - CLAY_FLOATING({ .zIndex = 65000, .parentId = Clay__HashString(CLAY_STRING("Clay__RootContainer"), 0, 0).id, .attachment = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_CENTER }}), - CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED((float)Clay__debugViewWidth) , CLAY_SIZING_FIXED(context->layoutDimensions.height) }, .layoutDirection = CLAY_TOP_TO_BOTTOM }), - CLAY_BORDER({ .bottom = { .width = 1, .color = CLAY__DEBUGVIEW_COLOR_3 }}) - ) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} }), CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_2 })) { + CLAY({ .id = CLAY_ID("Clay__DebugView"), + .layout = { .sizing = { CLAY_SIZING_FIXED((float)Clay__debugViewWidth) , CLAY_SIZING_FIXED(context->layoutDimensions.height) }, .layoutDirection = CLAY_TOP_TO_BOTTOM }, + .floating = { .zIndex = 32765, .attachPoints = { .element = CLAY_ATTACH_POINT_LEFT_CENTER, .parent = CLAY_ATTACH_POINT_RIGHT_CENTER }, .attachTo = CLAY_ATTACH_TO_ROOT }, + .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = { .bottom = 1 } } + }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} }, .backgroundColor = CLAY__DEBUGVIEW_COLOR_2 }) { CLAY_TEXT(CLAY_STRING("Clay Debug Tools"), infoTextConfig); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) } })) {} + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0) } } }) {} // Close button - CLAY(CLAY_BORDER_OUTSIDE_RADIUS(1, (CLAY__INIT(Clay_Color){217,91,67,255}), 4), - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 10), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 10)}, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER} }), - CLAY_RECTANGLE({ .color = {217,91,67,80} }), - Clay_OnHover(HandleDebugViewCloseButtonInteraction, 0) - ) { + CLAY({ + .layout = { .sizing = {CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 10), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT - 10)}, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER} }, + .backgroundColor = {217,91,67,80}, + .cornerRadius = CLAY_CORNER_RADIUS(4), + .border = { .color = { 217,91,67,255 }, .width = { 1, 1, 1, 1 } }, + }) { + Clay_OnHover(HandleDebugViewCloseButtonInteraction, 0); CLAY_TEXT(CLAY_STRING("x"), CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_4, .fontSize = 16 })); } } - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(1)} }), CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_3 })) {} - CLAY(Clay__AttachId(scrollId), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }), CLAY_SCROLL({ .horizontal = true, .vertical = true })) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }), CLAY_RECTANGLE({ .color = ((initialElementsLength + initialRootsLength) & 1) == 0 ? CLAY__DEBUGVIEW_COLOR_2 : CLAY__DEBUGVIEW_COLOR_1 })) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(1)} }, .backgroundColor = CLAY__DEBUGVIEW_COLOR_3 } ) {} + CLAY({ .id = scrollId, .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }, .scroll = { .horizontal = true, .vertical = true } }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }, .backgroundColor = ((initialElementsLength + initialRootsLength) & 1) == 0 ? CLAY__DEBUGVIEW_COLOR_2 : CLAY__DEBUGVIEW_COLOR_1 }) { Clay_ElementId panelContentsId = Clay__HashString(CLAY_STRING("Clay__DebugViewPaneOuter"), 0, 0); // Element list - CLAY(Clay__AttachId(panelContentsId), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }), CLAY_FLOATING({ .zIndex = 65001, .pointerCaptureMode = CLAY_POINTER_CAPTURE_MODE_PASSTHROUGH })) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .padding = { CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING }, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .id = panelContentsId, .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)} }, .floating = { .zIndex = 32766, .pointerCaptureMode = CLAY_POINTER_CAPTURE_MODE_PASSTHROUGH, .attachTo = CLAY_ATTACH_TO_PARENT } }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0)}, .padding = { CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING }, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { layoutData = Clay__RenderDebugLayoutElementsList((int32_t)initialRootsLength, highlightedRow); } } float contentWidth = Clay__GetHashMapItem(panelContentsId.id)->layoutElement->dimensions.width; - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(contentWidth), CLAY__DEFAULT_STRUCT}, .layoutDirection = CLAY_TOP_TO_BOTTOM })) {} + CLAY({ .layout = { .sizing = {CLAY_SIZING_FIXED(contentWidth) }, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) {} for (int32_t i = 0; i < layoutData.rowCount; i++) { Clay_Color rowColor = (i & 1) == 0 ? CLAY__DEBUGVIEW_COLOR_2 : CLAY__DEBUGVIEW_COLOR_1; if (i == layoutData.selectedElementRowIndex) { @@ -2732,22 +2852,22 @@ void Clay__RenderDebugView(void) { rowColor.g *= 1.25f; rowColor.b *= 1.25f; } - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }), CLAY_RECTANGLE({ .color = rowColor })) {} + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }, .backgroundColor = rowColor } ) {} } } } - CLAY(CLAY_LAYOUT({ .sizing = {.width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(1)} }), CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_3 })) {} + CLAY({ .layout = { .sizing = {.width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(1)} }, .backgroundColor = CLAY__DEBUGVIEW_COLOR_3 }) {} if (context->debugSelectedElementId != 0) { Clay_LayoutElementHashMapItem *selectedItem = Clay__GetHashMapItem(context->debugSelectedElementId); - CLAY( - CLAY_SCROLL({ .vertical = true }), - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(300)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }), - CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_2 }), - CLAY_BORDER({ .betweenChildren = { .width = 1, .color = CLAY__DEBUGVIEW_COLOR_3 }}) - ) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT + 8)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { + CLAY({ + .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(300)}, .layoutDirection = CLAY_TOP_TO_BOTTOM }, + .backgroundColor = CLAY__DEBUGVIEW_COLOR_2 , + .scroll = { .vertical = true }, + .border = { .color = CLAY__DEBUGVIEW_COLOR_3, .width = { .betweenChildren = 1 } } + }) { + CLAY({ .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT + 8)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} } }) { CLAY_TEXT(CLAY_STRING("Layout Config"), infoTextConfig); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) } })) {} + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0) } } }) {} if (selectedItem->elementId.stringId.length != 0) { CLAY_TEXT(selectedItem->elementId.stringId, infoTitleConfig); if (selectedItem->elementId.offset != 0) { @@ -2759,10 +2879,10 @@ void Clay__RenderDebugView(void) { } Clay_Padding attributeConfigPadding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING, 8, 8}; // Clay_LayoutConfig debug info - CLAY(CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // .boundingBox CLAY_TEXT(CLAY_STRING("Bounding Box"), infoTitleConfig); - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("{ x: "), infoTextConfig); CLAY_TEXT(Clay__IntToString(selectedItem->boundingBox.x), infoTextConfig); CLAY_TEXT(CLAY_STRING(", y: "), infoTextConfig); @@ -2779,17 +2899,17 @@ void Clay__RenderDebugView(void) { CLAY_TEXT(layoutConfig->layoutDirection == CLAY_TOP_TO_BOTTOM ? CLAY_STRING("TOP_TO_BOTTOM") : CLAY_STRING("LEFT_TO_RIGHT"), infoTextConfig); // .sizing CLAY_TEXT(CLAY_STRING("Sizing"), infoTitleConfig); - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("width: "), infoTextConfig); Clay__RenderDebugLayoutSizing(layoutConfig->sizing.width, infoTextConfig); } - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("height: "), infoTextConfig); Clay__RenderDebugLayoutSizing(layoutConfig->sizing.height, infoTextConfig); } // .padding CLAY_TEXT(CLAY_STRING("Padding"), infoTitleConfig); - CLAY(CLAY_ID("Clay__DebugViewElementInfoPadding")) { + CLAY({ .id = CLAY_ID("Clay__DebugViewElementInfoPadding") }) { CLAY_TEXT(CLAY_STRING("{ left: "), infoTextConfig); CLAY_TEXT(Clay__IntToString(layoutConfig->padding.left), infoTextConfig); CLAY_TEXT(CLAY_STRING(", right: "), infoTextConfig); @@ -2805,7 +2925,7 @@ void Clay__RenderDebugView(void) { CLAY_TEXT(Clay__IntToString(layoutConfig->childGap), infoTextConfig); // .childAlignment CLAY_TEXT(CLAY_STRING("Child Alignment"), infoTitleConfig); - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("{ x: "), infoTextConfig); Clay_String alignX = CLAY_STRING("LEFT"); if (layoutConfig->childAlignment.x == CLAY_ALIGN_X_CENTER) { @@ -2829,21 +2949,18 @@ void Clay__RenderDebugView(void) { Clay_ElementConfig *elementConfig = Clay__ElementConfigArraySlice_Get(&selectedItem->layoutElement->elementConfigs, elementConfigIndex); Clay__RenderDebugViewElementConfigHeader(selectedItem->elementId.stringId, elementConfig->type); switch (elementConfig->type) { - case CLAY__ELEMENT_CONFIG_TYPE_RECTANGLE: { - Clay_RectangleElementConfig *rectangleConfig = elementConfig->config.rectangleElementConfig; - CLAY(CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { - // .color - CLAY_TEXT(CLAY_STRING("Color"), infoTitleConfig); - Clay__RenderDebugViewColor(rectangleConfig->color, infoTextConfig); + case CLAY__ELEMENT_CONFIG_TYPE_SHARED: { + Clay_SharedElementConfig *sharedConfig = elementConfig->config.sharedElementConfig; + CLAY({ .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM }}) { // .cornerRadius - CLAY_TEXT(CLAY_STRING("Corner Radius"), infoTitleConfig); - Clay__RenderDebugViewCornerRadius(rectangleConfig->cornerRadius, infoTextConfig); + CLAY_TEXT(CLAY_STRING("Color"), infoTitleConfig); + Clay__RenderDebugViewCornerRadius(sharedConfig->cornerRadius, infoTextConfig); } break; } case CLAY__ELEMENT_CONFIG_TYPE_TEXT: { Clay_TextElementConfig *textConfig = elementConfig->config.textElementConfig; - CLAY(CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // .fontSize CLAY_TEXT(CLAY_STRING("Font Size"), infoTitleConfig); CLAY_TEXT(Clay__IntToString(textConfig->fontSize), infoTextConfig); @@ -2873,10 +2990,10 @@ void Clay__RenderDebugView(void) { } case CLAY__ELEMENT_CONFIG_TYPE_IMAGE: { Clay_ImageElementConfig *imageConfig = elementConfig->config.imageElementConfig; - CLAY(CLAY_ID("Clay__DebugViewElementInfoImageBody"), CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .id = CLAY_ID("Clay__DebugViewElementInfoImageBody"), .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // .sourceDimensions CLAY_TEXT(CLAY_STRING("Source Dimensions"), infoTitleConfig); - CLAY(CLAY_ID("Clay__DebugViewElementInfoImageDimensions")) { + CLAY({ .id = CLAY_ID("Clay__DebugViewElementInfoImageDimensions") }) { CLAY_TEXT(CLAY_STRING("{ width: "), infoTextConfig); CLAY_TEXT(Clay__IntToString(imageConfig->sourceDimensions.width), infoTextConfig); CLAY_TEXT(CLAY_STRING(", height: "), infoTextConfig); @@ -2885,13 +3002,13 @@ void Clay__RenderDebugView(void) { } // Image Preview CLAY_TEXT(CLAY_STRING("Preview"), infoTitleConfig); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0, imageConfig->sourceDimensions.width) }}), Clay__AttachElementConfig(CLAY__INIT(Clay_ElementConfigUnion) { .imageElementConfig = imageConfig }, CLAY__ELEMENT_CONFIG_TYPE_IMAGE)) {} + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0, imageConfig->sourceDimensions.width) }}, .image = *imageConfig }) {} } break; } - case CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER: { + case CLAY__ELEMENT_CONFIG_TYPE_SCROLL: { Clay_ScrollElementConfig *scrollConfig = elementConfig->config.scrollElementConfig; - CLAY(CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // .vertical CLAY_TEXT(CLAY_STRING("Vertical"), infoTitleConfig); CLAY_TEXT(scrollConfig->vertical ? CLAY_STRING("true") : CLAY_STRING("false") , infoTextConfig); @@ -2901,12 +3018,12 @@ void Clay__RenderDebugView(void) { } break; } - case CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER: { + case CLAY__ELEMENT_CONFIG_TYPE_FLOATING: { Clay_FloatingElementConfig *floatingConfig = elementConfig->config.floatingElementConfig; - CLAY(CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { // .offset CLAY_TEXT(CLAY_STRING("Offset"), infoTitleConfig); - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("{ x: "), infoTextConfig); CLAY_TEXT(Clay__IntToString(floatingConfig->offset.x), infoTextConfig); CLAY_TEXT(CLAY_STRING(", y: "), infoTextConfig); @@ -2915,7 +3032,7 @@ void Clay__RenderDebugView(void) { } // .expand CLAY_TEXT(CLAY_STRING("Expand"), infoTitleConfig); - CLAY(CLAY_LAYOUT(CLAY__DEFAULT_STRUCT)) { + CLAY({{0}}) { CLAY_TEXT(CLAY_STRING("{ width: "), infoTextConfig); CLAY_TEXT(Clay__IntToString(floatingConfig->expand.width), infoTextConfig); CLAY_TEXT(CLAY_STRING(", height: "), infoTextConfig); @@ -2932,27 +3049,24 @@ void Clay__RenderDebugView(void) { } break; } - case CLAY__ELEMENT_CONFIG_TYPE_BORDER_CONTAINER: { + case CLAY__ELEMENT_CONFIG_TYPE_BORDER: { Clay_BorderElementConfig *borderConfig = elementConfig->config.borderElementConfig; - CLAY(CLAY_ID("Clay__DebugViewElementInfoBorderBody"), CLAY_LAYOUT({ .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { - // .left - CLAY_TEXT(CLAY_STRING("Left Border"), infoTitleConfig); - Clay__RenderDebugViewBorder(1, borderConfig->left, infoTextConfig); - // .right - CLAY_TEXT(CLAY_STRING("Right Border"), infoTitleConfig); - Clay__RenderDebugViewBorder(2, borderConfig->right, infoTextConfig); - // .top - CLAY_TEXT(CLAY_STRING("Top Border"), infoTitleConfig); - Clay__RenderDebugViewBorder(3, borderConfig->top, infoTextConfig); - // .bottom - CLAY_TEXT(CLAY_STRING("Bottom Border"), infoTitleConfig); - Clay__RenderDebugViewBorder(4, borderConfig->bottom, infoTextConfig); - // .betweenChildren - CLAY_TEXT(CLAY_STRING("Border Between Children"), infoTitleConfig); - Clay__RenderDebugViewBorder(5, borderConfig->betweenChildren, infoTextConfig); - // .cornerRadius - CLAY_TEXT(CLAY_STRING("Corner Radius"), infoTitleConfig); - Clay__RenderDebugViewCornerRadius(borderConfig->cornerRadius, infoTextConfig); + CLAY({ .id = CLAY_ID("Clay__DebugViewElementInfoBorderBody"), .layout = { .padding = attributeConfigPadding, .childGap = 8, .layoutDirection = CLAY_TOP_TO_BOTTOM } }) { + CLAY_TEXT(CLAY_STRING("Border Widths"), infoTitleConfig); + CLAY({{0}}) { + CLAY_TEXT(CLAY_STRING("{ left: "), infoTextConfig); + CLAY_TEXT(Clay__IntToString(borderConfig->width.left), infoTextConfig); + CLAY_TEXT(CLAY_STRING("{ right: "), infoTextConfig); + CLAY_TEXT(Clay__IntToString(borderConfig->width.right), infoTextConfig); + CLAY_TEXT(CLAY_STRING("{ top: "), infoTextConfig); + CLAY_TEXT(Clay__IntToString(borderConfig->width.top), infoTextConfig); + CLAY_TEXT(CLAY_STRING("{ bottom: "), infoTextConfig); + CLAY_TEXT(Clay__IntToString(borderConfig->width.bottom), infoTextConfig); + CLAY_TEXT(CLAY_STRING(" }"), infoTextConfig); + } + // .textColor + CLAY_TEXT(CLAY_STRING("Border Color"), infoTitleConfig); + Clay__RenderDebugViewColor(borderConfig->color, infoTextConfig); } break; } @@ -2962,16 +3076,16 @@ void Clay__RenderDebugView(void) { } } } else { - CLAY(CLAY_ID("Clay__DebugViewWarningsScrollPane"), CLAY_LAYOUT({ .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(300)}, .childGap = 6, .layoutDirection = CLAY_TOP_TO_BOTTOM }), CLAY_SCROLL({ .horizontal = true, .vertical = true }), CLAY_RECTANGLE({ .color = CLAY__DEBUGVIEW_COLOR_2 })) { + CLAY({ .id = CLAY_ID("Clay__DebugViewWarningsScrollPane"), .layout = { .sizing = {CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(300)}, .childGap = 6, .layoutDirection = CLAY_TOP_TO_BOTTOM }, .backgroundColor = CLAY__DEBUGVIEW_COLOR_2, .scroll = { .horizontal = true, .vertical = true } }) { Clay_TextElementConfig *warningConfig = CLAY_TEXT_CONFIG({ .textColor = CLAY__DEBUGVIEW_COLOR_4, .fontSize = 16, .wrapMode = CLAY_TEXT_WRAP_NONE }); - CLAY(CLAY_ID("Clay__DebugViewWarningItemHeader"), CLAY_LAYOUT({ .sizing = {.height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childGap = 8, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { + CLAY({ .id = CLAY_ID("Clay__DebugViewWarningItemHeader"), .layout = { .sizing = {.height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childGap = 8, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} } }) { CLAY_TEXT(CLAY_STRING("Warnings"), warningConfig); } - CLAY(CLAY_ID("Clay__DebugViewWarningsTopBorder"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(1)} }), CLAY_RECTANGLE({ .color = {200, 200, 200, 255} })) {} + CLAY({ .id = CLAY_ID("Clay__DebugViewWarningsTopBorder"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(1)} }, .backgroundColor = {200, 200, 200, 255} }) {} int32_t previousWarningsLength = context->warnings.length; for (int32_t i = 0; i < previousWarningsLength; i++) { Clay__Warning warning = context->warnings.internalArray[i]; - CLAY(CLAY_IDI("Clay__DebugViewWarningItem", i), CLAY_LAYOUT({ .sizing = {.height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childGap = 8, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} })) { + CLAY({ .id = CLAY_IDI("Clay__DebugViewWarningItem", i), .layout = { .sizing = {.height = CLAY_SIZING_FIXED(CLAY__DEBUGVIEW_ROW_HEIGHT)}, .padding = {CLAY__DEBUGVIEW_OUTER_PADDING, CLAY__DEBUGVIEW_OUTER_PADDING}, .childGap = 8, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} } }) { CLAY_TEXT(warning.baseMessage, warningConfig); if (warning.dynamicMessage.length > 0) { CLAY_TEXT(warning.dynamicMessage, warningConfig); @@ -3090,12 +3204,12 @@ Clay_Arena Clay_CreateArenaWithCapacityAndMemory(uint32_t capacity, void *offset } #ifndef CLAY_WASM -void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData), uintptr_t userData) { +void Clay_SetMeasureTextFunction(Clay_Dimensions (*measureTextFunction)(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData), void *userData) { Clay_Context* context = Clay_GetCurrentContext(); Clay__MeasureText = measureTextFunction; - context->mesureTextUserData = userData; + context->measureTextUserData = userData; } -void Clay_SetQueryScrollOffsetFunction(Clay_Vector2 (*queryScrollOffsetFunction)(uint32_t elementId, uintptr_t userData), uintptr_t userData) { +void Clay_SetQueryScrollOffsetFunction(Clay_Vector2 (*queryScrollOffsetFunction)(uint32_t elementId, void *userData), void *userData) { Clay_Context* context = Clay_GetCurrentContext(); Clay__QueryScrollOffset = queryScrollOffsetFunction; context->queryScrollOffsetUserData = userData; @@ -3155,8 +3269,8 @@ void Clay_SetPointerState(Clay_Vector2 position, bool isPointerDown) { } Clay_LayoutElement *rootElement = Clay_LayoutElementArray_Get(&context->layoutElements, root->layoutElementIndex); - if (found && Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER) && - Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING_CONTAINER).floatingElementConfig->pointerCaptureMode == CLAY_POINTER_CAPTURE_MODE_CAPTURE) { + if (found && Clay__ElementHasConfig(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING) && + Clay__FindElementConfigWithType(rootElement, CLAY__ELEMENT_CONFIG_TYPE_FLOATING).floatingElementConfig->pointerCaptureMode == CLAY_POINTER_CAPTURE_MODE_CAPTURE) { break; } } @@ -3277,7 +3391,7 @@ void Clay_UpdateScrollContainers(bool enableDragScrolling, Clay_Vector2 scrollDe if (highestPriorityElementIndex > -1 && highestPriorityScrollData) { Clay_LayoutElement *scrollElement = highestPriorityScrollData->layoutElement; - Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(scrollElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig; + Clay_ScrollElementConfig *scrollConfig = Clay__FindElementConfigWithType(scrollElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig; bool canScrollVertically = scrollConfig->vertical && highestPriorityScrollData->contentSize.height > scrollElement->dimensions.height; bool canScrollHorizontally = scrollConfig->horizontal && highestPriorityScrollData->contentSize.width > scrollElement->dimensions.width; // Handle wheel scroll @@ -3340,15 +3454,14 @@ void Clay_BeginLayout(void) { } context->booleanWarnings = CLAY__INIT(Clay_BooleanWarnings) CLAY__DEFAULT_STRUCT; Clay__OpenElement(); - CLAY_ID("Clay__RootContainer"); - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED((rootDimensions.width)), CLAY_SIZING_FIXED(rootDimensions.height)} }); - Clay__ElementPostConfiguration(); + Clay__ConfigureOpenElement(CLAY__INIT(Clay_ElementDeclaration) { + .id = CLAY_ID("Clay__RootContainer"), + .layout = { .sizing = {CLAY_SIZING_FIXED((rootDimensions.width)), CLAY_SIZING_FIXED(rootDimensions.height)} } + }); Clay__int32_tArray_Add(&context->openLayoutElementStack, 0); Clay__LayoutElementTreeRootArray_Add(&context->layoutElementTreeRoots, CLAY__INIT(Clay__LayoutElementTreeRoot) { .layoutElementIndex = 0 }); } -Clay_TextElementConfig Clay__DebugView_ErrorTextConfig = {.textColor = {255, 0, 0, 255}, .fontSize = 16, .wrapMode = CLAY_TEXT_WRAP_NONE }; - CLAY_WASM_EXPORT("Clay_EndLayout") Clay_RenderCommandArray Clay_EndLayout(void) { Clay_Context* context = Clay_GetCurrentContext(); @@ -3360,7 +3473,11 @@ Clay_RenderCommandArray Clay_EndLayout(void) { } if (context->booleanWarnings.maxElementsExceeded) { Clay_String message = CLAY_STRING("Clay Error: Layout elements exceeded Clay__maxElementCount"); - Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand ) { .boundingBox = { context->layoutDimensions.width / 2 - 59 * 4, context->layoutDimensions.height / 2, 0, 0 }, .config = { .textElementConfig = &Clay__DebugView_ErrorTextConfig }, .text = CLAY__INIT(Clay_StringSlice) { .length = message.length, .chars = message.chars, .baseChars = message.chars }, .commandType = CLAY_RENDER_COMMAND_TYPE_TEXT }); + Clay__AddRenderCommand(CLAY__INIT(Clay_RenderCommand ) { + .boundingBox = { context->layoutDimensions.width / 2 - 59 * 4, context->layoutDimensions.height / 2, 0, 0 }, + .renderData = { .text = { .stringContents = CLAY__INIT(Clay_StringSlice) { .length = message.length, .chars = message.chars, .baseChars = message.chars }, .textColor = {255, 0, 0, 255}, .fontSize = 16 } }, + .commandType = CLAY_RENDER_COMMAND_TYPE_TEXT + }); } else { Clay__CalculateFinalLayout(); } @@ -3430,7 +3547,7 @@ Clay_ScrollContainerData Clay_GetScrollContainerData(Clay_ElementId id) { .scrollPosition = &scrollContainerData->scrollPosition, .scrollContainerDimensions = { scrollContainerData->boundingBox.width, scrollContainerData->boundingBox.height }, .contentDimensions = scrollContainerData->contentSize, - .config = *Clay__FindElementConfigWithType(scrollContainerData->layoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL_CONTAINER).scrollElementConfig, + .config = *Clay__FindElementConfigWithType(scrollContainerData->layoutElement, CLAY__ELEMENT_CONFIG_TYPE_SCROLL).scrollElementConfig, .found = true }; } @@ -3488,7 +3605,7 @@ void Clay_SetMaxElementCount(int32_t maxElementCount) { context->maxElementCount = maxElementCount; } else { Clay__defaultMaxElementCount = maxElementCount; // TODO: Fix this - Clay__defaultMaxMeasureTextWordCacheCount = maxElementCount * 2; + Clay__defaultMaxMeasureTextWordCacheCount = maxElementCount * 2; } } diff --git a/examples/SDL2-video-demo/CMakeLists.txt b/examples/SDL2-video-demo/CMakeLists.txt index ace8592..4dffd2b 100644 --- a/examples/SDL2-video-demo/CMakeLists.txt +++ b/examples/SDL2-video-demo/CMakeLists.txt @@ -45,10 +45,10 @@ target_link_libraries(SDL2_video_demo PUBLIC ) if(MSVC) - set(CMAKE_C_FLAGS_DEBUG "/D CLAY_DEBUG") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") else() - set(CMAKE_C_FLAGS_DEBUG "-Wall -Werror -Wno-error=missing-braces -DCLAY_DEBUG") - set(CMAKE_C_FLAGS_RELEASE "-O3") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") endif() add_custom_command( diff --git a/examples/SDL2-video-demo/main.c b/examples/SDL2-video-demo/main.c index e8c3413..4e03b12 100644 --- a/examples/SDL2-video-demo/main.c +++ b/examples/SDL2-video-demo/main.c @@ -9,278 +9,15 @@ #include <stdbool.h> #include <stdint.h> #include <stdlib.h> - -const int FONT_ID_BODY_16 = 0; -Clay_Color COLOR_WHITE = { 255, 255, 255, 255}; +#include "../shared-layouts/clay-video-demo.c" SDL_Surface *sample_image; -void RenderHeaderButton(Clay_String text) { - CLAY( - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_RECTANGLE({ - .color = { 140, 140, 140, 255 }, - .cornerRadius = 5 - }) - ) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -void RenderDropdownMenuItem(Clay_String text) { - CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(16)})) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -typedef struct { - Clay_String title; - Clay_String contents; -} Document; - -typedef struct { - Document *documents; - uint32_t length; -} DocumentArray; - -DocumentArray documents = { - .documents = NULL, - .length = 5 -}; - -uint32_t selectedDocumentIndex = 0; - -void HandleSidebarInteraction( - Clay_ElementId elementId, - Clay_PointerData pointerData, - intptr_t userData -) { - // If this button was clicked - if (pointerData.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) { - if (userData >= 0 && userData < documents.length) { - // Select the corresponding document - selectedDocumentIndex = userData; - } - } -} - -static Clay_RenderCommandArray CreateLayout() { - Clay_BeginLayout(); - Clay_Sizing layoutExpand = { - .width = CLAY_SIZING_GROW(0), - .height = CLAY_SIZING_GROW(0) - }; - - Clay_RectangleElementConfig contentBackgroundConfig = { - .color = { 90, 90, 90, 255 }, - .cornerRadius = 8 - }; - - Clay_BeginLayout(); - // Build UI here - CLAY( - CLAY_ID("OuterContainer"), - CLAY_RECTANGLE({ .color = { 43, 41, 51, 255 } }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .sizing = layoutExpand, - .padding = CLAY_PADDING_ALL(16), - .childGap = 16 - }) - ) { - // Child elements go inside braces - CLAY( - CLAY_ID("HeaderBar"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_LAYOUT({ - .sizing = { - .height = CLAY_SIZING_FIXED(60), - .width = CLAY_SIZING_GROW(0) - }, - .padding = { 16 }, - .childGap = 16, - .childAlignment = { - .y = CLAY_ALIGN_Y_CENTER - } - }) - ) { - // Header buttons go here - CLAY( - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_BORDER_ALL({ 2, COLOR_WHITE }) - ) { - CLAY( - CLAY_LAYOUT({ .padding = { 8, 8, 8, 8 }}), - CLAY_IMAGE({ sample_image, { 23, 42 } }) - ) {} - } - CLAY( - CLAY_ID("FileButton"), - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_RECTANGLE({ - .color = { 140, 140, 140, 255 }, - .cornerRadius = 5 - }) - ) { - CLAY_TEXT(CLAY_STRING("File"), CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - - bool fileMenuVisible = - Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileButton"))) - || - Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileMenu"))); - - if (fileMenuVisible) { // Below has been changed slightly to fix the small bug where the menu would dismiss when mousing over the top gap - CLAY( - CLAY_ID("FileMenu"), - CLAY_FLOATING({ - .attachment = { - .parent = CLAY_ATTACH_POINT_LEFT_BOTTOM - }, - }), - CLAY_LAYOUT({ - .padding = {0, 8 } - }) - ) { - CLAY( - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .sizing = { - .width = CLAY_SIZING_FIXED(200) - }, - }), - CLAY_RECTANGLE({ - .color = { 40, 40, 40, 255 }, - .cornerRadius = 8 - }) - ) { - // Render dropdown items here - RenderDropdownMenuItem(CLAY_STRING("New")); - RenderDropdownMenuItem(CLAY_STRING("Open")); - RenderDropdownMenuItem(CLAY_STRING("Close")); - } - } - } - } - RenderHeaderButton(CLAY_STRING("Edit")); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }})) {} - RenderHeaderButton(CLAY_STRING("Upload")); - RenderHeaderButton(CLAY_STRING("Media")); - RenderHeaderButton(CLAY_STRING("Support")); - } - - CLAY( - CLAY_ID("LowerContent"), - CLAY_LAYOUT({ .sizing = layoutExpand, .childGap = 16 }) - ) { - CLAY( - CLAY_ID("Sidebar"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .padding = CLAY_PADDING_ALL(16), - .childGap = 8, - .sizing = { - .width = CLAY_SIZING_FIXED(250), - .height = CLAY_SIZING_GROW(0) - } - }) - ) { - for (int i = 0; i < documents.length; i++) { - Document document = documents.documents[i]; - Clay_LayoutConfig sidebarButtonLayout = { - .sizing = { .width = CLAY_SIZING_GROW(0) }, - .padding = CLAY_PADDING_ALL(16) - }; - - if (i == selectedDocumentIndex) { - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - CLAY_RECTANGLE({ - .color = { 120, 120, 120, 255 }, - .cornerRadius = 8, - }) - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } else { - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - Clay_OnHover(HandleSidebarInteraction, i), - Clay_Hovered() - ? CLAY_RECTANGLE({ - .color = { 120, 120, 120, 120 }, - .cornerRadius = 8 - }) - : 0 - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } - } - } - - CLAY( - CLAY_ID("MainContent"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_SCROLL({ .vertical = true }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childGap = 16, - .padding = CLAY_PADDING_ALL(16), - .sizing = layoutExpand - }) - ) { - Document selectedDocument = documents.documents[selectedDocumentIndex]; - CLAY_TEXT(selectedDocument.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - CLAY_TEXT(selectedDocument.contents, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - } - } - } - - return Clay_EndLayout(); -} - void HandleClayErrors(Clay_ErrorData errorData) { printf("%s", errorData.errorText.chars); } int main(int argc, char *argv[]) { - documents.documents = (Document[]) { - { .title = CLAY_STRING("Squirrels"), .contents = CLAY_STRING("The Secret Life of Squirrels: Nature's Clever Acrobats\n""Squirrels are often overlooked creatures, dismissed as mere park inhabitants or backyard nuisances. Yet, beneath their fluffy tails and twitching noses lies an intricate world of cunning, agility, and survival tactics that are nothing short of fascinating. As one of the most common mammals in North America, squirrels have adapted to a wide range of environments from bustling urban centers to tranquil forests and have developed a variety of unique behaviors that continue to intrigue scientists and nature enthusiasts alike.\n""\n""Master Tree Climbers\n""At the heart of a squirrel's skill set is its impressive ability to navigate trees with ease. Whether they're darting from branch to branch or leaping across wide gaps, squirrels possess an innate talent for acrobatics. Their powerful hind legs, which are longer than their front legs, give them remarkable jumping power. With a tail that acts as a counterbalance, squirrels can leap distances of up to ten times the length of their body, making them some of the best aerial acrobats in the animal kingdom.\n""But it's not just their agility that makes them exceptional climbers. Squirrels' sharp, curved claws allow them to grip tree bark with precision, while the soft pads on their feet provide traction on slippery surfaces. Their ability to run at high speeds and scale vertical trunks with ease is a testament to the evolutionary adaptations that have made them so successful in their arboreal habitats.\n""\n""Food Hoarders Extraordinaire\n""Squirrels are often seen frantically gathering nuts, seeds, and even fungi in preparation for winter. While this behavior may seem like instinctual hoarding, it is actually a survival strategy that has been honed over millions of years. Known as \"scatter hoarding,\" squirrels store their food in a variety of hidden locations, often burying it deep in the soil or stashing it in hollowed-out tree trunks.\n""Interestingly, squirrels have an incredible memory for the locations of their caches. Research has shown that they can remember thousands of hiding spots, often returning to them months later when food is scarce. However, they don't always recover every stash some forgotten caches eventually sprout into new trees, contributing to forest regeneration. This unintentional role as forest gardeners highlights the ecological importance of squirrels in their ecosystems.\n""\n""The Great Squirrel Debate: Urban vs. Wild\n""While squirrels are most commonly associated with rural or wooded areas, their adaptability has allowed them to thrive in urban environments as well. In cities, squirrels have become adept at finding food sources in places like parks, streets, and even garbage cans. However, their urban counterparts face unique challenges, including traffic, predators, and the lack of natural shelters. Despite these obstacles, squirrels in urban areas are often observed using human infrastructure such as buildings, bridges, and power lines as highways for their acrobatic escapades.\n""There is, however, a growing concern regarding the impact of urban life on squirrel populations. Pollution, deforestation, and the loss of natural habitats are making it more difficult for squirrels to find adequate food and shelter. As a result, conservationists are focusing on creating squirrel-friendly spaces within cities, with the goal of ensuring these resourceful creatures continue to thrive in both rural and urban landscapes.\n""\n""A Symbol of Resilience\n""In many cultures, squirrels are symbols of resourcefulness, adaptability, and preparation. Their ability to thrive in a variety of environments while navigating challenges with agility and grace serves as a reminder of the resilience inherent in nature. Whether you encounter them in a quiet forest, a city park, or your own backyard, squirrels are creatures that never fail to amaze with their endless energy and ingenuity.\n""In the end, squirrels may be small, but they are mighty in their ability to survive and thrive in a world that is constantly changing. So next time you spot one hopping across a branch or darting across your lawn, take a moment to appreciate the remarkable acrobat at work a true marvel of the natural world.\n") }, - { .title = CLAY_STRING("Lorem Ipsum"), .contents = CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.") }, - { .title = CLAY_STRING("Vacuum Instructions"), .contents = CLAY_STRING("Chapter 3: Getting Started - Unpacking and Setup\n""\n""Congratulations on your new SuperClean Pro 5000 vacuum cleaner! In this section, we will guide you through the simple steps to get your vacuum up and running. Before you begin, please ensure that you have all the components listed in the \"Package Contents\" section on page 2.\n""\n""1. Unboxing Your Vacuum\n""Carefully remove the vacuum cleaner from the box. Avoid using sharp objects that could damage the product. Once removed, place the unit on a flat, stable surface to proceed with the setup. Inside the box, you should find:\n""\n"" The main vacuum unit\n"" A telescoping extension wand\n"" A set of specialized cleaning tools (crevice tool, upholstery brush, etc.)\n"" A reusable dust bag (if applicable)\n"" A power cord with a 3-prong plug\n"" A set of quick-start instructions\n""\n""2. Assembling Your Vacuum\n""Begin by attaching the extension wand to the main body of the vacuum cleaner. Line up the connectors and twist the wand into place until you hear a click. Next, select the desired cleaning tool and firmly attach it to the wand's end, ensuring it is securely locked in.\n""\n""For models that require a dust bag, slide the bag into the compartment at the back of the vacuum, making sure it is properly aligned with the internal mechanism. If your vacuum uses a bagless system, ensure the dust container is correctly seated and locked in place before use.\n""\n""3. Powering On\n""To start the vacuum, plug the power cord into a grounded electrical outlet. Once plugged in, locate the power switch, usually positioned on the side of the handle or body of the unit, depending on your model. Press the switch to the \"On\" position, and you should hear the motor begin to hum. If the vacuum does not power on, check that the power cord is securely plugged in, and ensure there are no blockages in the power switch.\n""\n""Note: Before first use, ensure that the vacuum filter (if your model has one) is properly installed. If unsure, refer to \"Section 5: Maintenance\" for filter installation instructions.") }, - { .title = CLAY_STRING("Article 4"), .contents = CLAY_STRING("Article 4") }, - { .title = CLAY_STRING("Article 5"), .contents = CLAY_STRING("Article 5") }, - }; - if (SDL_Init(SDL_INIT_VIDEO) < 0) { fprintf(stderr, "Error: could not initialize SDL: %s\n", SDL_GetError()); return 1; @@ -323,11 +60,12 @@ int main(int argc, char *argv[]) { SDL_GetWindowSize(window, &windowWidth, &windowHeight); Clay_Initialize(clayMemory, (Clay_Dimensions) { (float)windowWidth, (float)windowHeight }, (Clay_ErrorHandler) { HandleClayErrors }); - Clay_SetMeasureTextFunction(SDL2_MeasureText, (uintptr_t)&fonts); + Clay_SetMeasureTextFunction(SDL2_MeasureText, &fonts); Uint64 NOW = SDL_GetPerformanceCounter(); Uint64 LAST = 0; double deltaTime = 0; + ClayVideoDemo_Data demoData = ClayVideoDemo_Initialize(); while (true) { Clay_Vector2 scrollDelta = {}; @@ -345,6 +83,7 @@ int main(int argc, char *argv[]) { LAST = NOW; NOW = SDL_GetPerformanceCounter(); deltaTime = (double)((NOW - LAST)*1000 / (double)SDL_GetPerformanceFrequency() ); + printf("%f\n", deltaTime); int mouseX = 0; int mouseY = 0; @@ -361,7 +100,7 @@ int main(int argc, char *argv[]) { SDL_GetWindowSize(window, &windowWidth, &windowHeight); Clay_SetLayoutDimensions((Clay_Dimensions) { (float)windowWidth, (float)windowHeight }); - Clay_RenderCommandArray renderCommands = CreateLayout(); + Clay_RenderCommandArray renderCommands = ClayVideoDemo_CreateLayout(&demoData); SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); SDL_RenderClear(renderer); diff --git a/examples/SDL3-simple-demo/CMakeLists.txt b/examples/SDL3-simple-demo/CMakeLists.txt index 4a86f0e..df467a9 100644 --- a/examples/SDL3-simple-demo/CMakeLists.txt +++ b/examples/SDL3-simple-demo/CMakeLists.txt @@ -4,8 +4,8 @@ cmake_minimum_required(VERSION 3.27) project(clay_examples_sdl3_simple_demo C) set(CMAKE_C_STANDARD 99) -set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g") -set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3") +set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") +set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") include(FetchContent) set(FETCHCONTENT_QUIET FALSE) diff --git a/examples/SDL3-simple-demo/main.c b/examples/SDL3-simple-demo/main.c index 2b89dbb..8d7be39 100644 --- a/examples/SDL3-simple-demo/main.c +++ b/examples/SDL3-simple-demo/main.c @@ -9,6 +9,7 @@ #include <stdio.h> #include "../../renderers/SDL3/clay_renderer_SDL3.c" +#include "../shared-layouts/clay-video-demo.c" static const Uint32 FONT_ID = 0; @@ -19,9 +20,10 @@ static const Clay_Color COLOR_LIGHT = (Clay_Color) {224, 215, 210, 255}; typedef struct app_state { SDL_Window *window; SDL_Renderer *renderer; + ClayVideoDemo_Data demoData; } AppState; -static inline Clay_Dimensions SDL_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData) +static inline Clay_Dimensions SDL_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData) { TTF_Font *font = gFonts[config->fontId]; int width, height; @@ -33,75 +35,6 @@ static inline Clay_Dimensions SDL_MeasureText(Clay_StringSlice text, Clay_TextEl return (Clay_Dimensions) { (float) width, (float) height }; } -static void Label(const Clay_String text, const int cornerRadius) -{ - CLAY(CLAY_LAYOUT({ .padding = {8, 8} }), - CLAY_RECTANGLE({ - .color = Clay_Hovered() ? COLOR_BLUE : COLOR_ORANGE, - .cornerRadius = cornerRadius, - })) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .textColor = { 255, 255, 255, 255 }, - .fontId = FONT_ID, - .fontSize = 24, - })); - } -} - -static void LabelBorder(const Clay_String text, const int cornerRadius, const int thickness) -{ - CLAY( - CLAY_LAYOUT({ - .padding = {16, 16, 8, 8 } }), - CLAY_BORDER_OUTSIDE_RADIUS( - thickness, - COLOR_BLUE, - cornerRadius) - ){ - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .textColor = { 255, 255, 255, 255 }, - .fontId = FONT_ID, - .fontSize = 24, - })); - } -} - -static Clay_RenderCommandArray Clay_CreateLayout() -{ - Clay_BeginLayout(); - CLAY(CLAY_ID("MainContent"), - CLAY_LAYOUT({ - .sizing = { - .width = CLAY_SIZING_GROW(), - .height = CLAY_SIZING_GROW(), - }, - .childAlignment = { - .x = CLAY_ALIGN_X_CENTER, - .y = CLAY_ALIGN_Y_CENTER, - }, - .childGap = 10, - .padding = { 10, 10 }, - .layoutDirection = CLAY_TOP_TO_BOTTOM, - }), - CLAY_BORDER({ - .left = { 20, COLOR_BLUE }, - .right = { 20, COLOR_BLUE }, - .bottom = { 20, COLOR_BLUE } - }), - CLAY_RECTANGLE({ - .color = COLOR_LIGHT, - }) - ) { - Label(CLAY_STRING("Rounded - Button 1"), 10); - Label(CLAY_STRING("Straight - Button 2") , 0); - Label(CLAY_STRING("Rounded+ - Button 3") , 20); - LabelBorder(CLAY_STRING("Border - Button 4"), 0, 5); - LabelBorder(CLAY_STRING("RoundedBorder - Button 5"), 10, 5); - LabelBorder(CLAY_STRING("RoundedBorder - Button 6"), 40, 15); - } - return Clay_EndLayout(); -} - void HandleClayErrors(Clay_ErrorData errorData) { printf("%s", errorData.errorText.chars); } @@ -147,6 +80,8 @@ SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[]) Clay_Initialize(clayMemory, (Clay_Dimensions) { (float) width, (float) height }, (Clay_ErrorHandler) { HandleClayErrors }); Clay_SetMeasureTextFunction(SDL_MeasureText, 0); + state->demoData = ClayVideoDemo_Initialize(); + *appstate = state; return SDL_APP_CONTINUE; } @@ -180,7 +115,7 @@ SDL_AppResult SDL_AppIterate(void *appstate) { AppState *state = appstate; - Clay_RenderCommandArray render_commands = Clay_CreateLayout(); + Clay_RenderCommandArray render_commands = ClayVideoDemo_CreateLayout(&state->demoData); SDL_SetRenderDrawColor(state->renderer, 0, 0, 0, 255); SDL_RenderClear(state->renderer); diff --git a/examples/cairo-pdf-rendering/CMakeLists.txt b/examples/cairo-pdf-rendering/CMakeLists.txt index 1f321dd..bdfe4e7 100644 --- a/examples/cairo-pdf-rendering/CMakeLists.txt +++ b/examples/cairo-pdf-rendering/CMakeLists.txt @@ -4,7 +4,6 @@ set(CMAKE_C_STANDARD 99) list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../cmake") - add_executable(clay_examples_cairo_pdf_rendering main.c) find_package(Cairo REQUIRED) @@ -13,8 +12,8 @@ target_compile_options(clay_examples_cairo_pdf_rendering PUBLIC) target_include_directories(clay_examples_cairo_pdf_rendering PUBLIC . ${CAIRO_INCLUDE_DIRS}) target_link_libraries(clay_examples_cairo_pdf_rendering PUBLIC Cairo::Cairo) -set(CMAKE_C_FLAGS_DEBUG "-Wall -Werror -Wno-error=missing-braces") -set(CMAKE_C_FLAGS_RELEASE "-O3") +set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") +set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") add_custom_command( TARGET clay_examples_cairo_pdf_rendering POST_BUILD diff --git a/examples/cairo-pdf-rendering/main.c b/examples/cairo-pdf-rendering/main.c index f9fc793..b2374ac 100644 --- a/examples/cairo-pdf-rendering/main.c +++ b/examples/cairo-pdf-rendering/main.c @@ -31,78 +31,78 @@ // e.g. render PNGs. #include <cairo/cairo-pdf.h> +const uint16_t FONT_CALLISTOGA = 0; +const uint16_t FONT_QUICKSAND = 0; + // Layout the first page. void Layout() { static Clay_Color PRIMARY = { 0xa8, 0x42, 0x1c, 255 }; static Clay_Color BACKGROUND = { 0xF4, 0xEB, 0xE6, 255 }; static Clay_Color ACCENT = { 0xFA, 0xE0, 0xD4, 255 }; - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, - .layoutDirection = CLAY_TOP_TO_BOTTOM }), - CLAY_RECTANGLE({ .color = BACKGROUND })) { - CLAY(CLAY_ID("PageMargins"), - CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, - .padding = { 70, 70, 50, 50 }, // Some nice looking page margins - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childGap = 10})) { - + CLAY({ + .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, + .layoutDirection = CLAY_TOP_TO_BOTTOM }, + .backgroundColor = BACKGROUND + }) { + CLAY({ .id = CLAY_ID("PageMargins"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, + .padding = { 70, 70, 50, 50 }, // Some nice looking page margins + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .childGap = 10} + }) { // Section Title - CLAY(CLAY_TEXT( - CLAY_STRING("Features Overview"), - CLAY_TEXT_CONFIG({ - .fontFamily = CLAY_STRING("Calistoga"), - .textColor = PRIMARY, - .fontSize = 24 - }) - )); + CLAY_TEXT(CLAY_STRING("Features Overview"), CLAY_TEXT_CONFIG({ .fontId = FONT_CALLISTOGA, .textColor = PRIMARY, .fontSize = 24 })); // Feature Box - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(0) }, .childGap = 10 })) { - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(0) }}), CLAY_RECTANGLE({ - .color = ACCENT, - .cornerRadius = CLAY_CORNER_RADIUS(12), - })) { - CLAY(CLAY_LAYOUT({.padding = CLAY_PADDING_ALL(20), .childGap = 4, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(0) }, .childGap = 10 }}) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(0) }}, .backgroundColor = ACCENT, .cornerRadius = CLAY_CORNER_RADIUS(12) }) { + CLAY({ .layout = {.padding = CLAY_PADDING_ALL(20), .childGap = 4, .layoutDirection = CLAY_TOP_TO_BOTTOM }}) { CLAY_TEXT(CLAY_STRING("- High performance"), - CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontFamily = CLAY_STRING("Quicksand SemiBold") })); + CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontId = FONT_QUICKSAND })); CLAY_TEXT(CLAY_STRING("- Declarative syntax"), - CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontFamily = CLAY_STRING("Quicksand SemiBold") })); + CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontId = FONT_QUICKSAND })); CLAY_TEXT(CLAY_STRING("- Flexbox-style responsive layout"), - CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontFamily = CLAY_STRING("Quicksand SemiBold") })); + CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontId = FONT_QUICKSAND })); CLAY_TEXT(CLAY_STRING("- Single .h file for C/C++"), - CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontFamily = CLAY_STRING("Quicksand SemiBold") })); + CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontId = FONT_QUICKSAND })); CLAY_TEXT(CLAY_STRING("- And now with cairo!"), - CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontFamily = CLAY_STRING("Quicksand SemiBold") })); + CLAY_TEXT_CONFIG({ .textColor = PRIMARY, .fontSize = 14, .fontId = FONT_QUICKSAND })); } } - CLAY(CLAY_LAYOUT({ - .sizing = {CLAY_SIZING_FIT(0), CLAY_SIZING_GROW(0)}, - .padding = CLAY_PADDING_ALL(10), - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER }, - .childGap = 4 - }), CLAY_RECTANGLE({ .color = ACCENT, .cornerRadius = CLAY_CORNER_RADIUS(8) })) { + CLAY({ + .layout = { + .sizing = {CLAY_SIZING_FIT(0), CLAY_SIZING_GROW(0)}, + .padding = CLAY_PADDING_ALL(10), + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER }, + .childGap = 4 + }, + .backgroundColor = ACCENT, + .cornerRadius = CLAY_CORNER_RADIUS(8) + }) { // Profile picture - CLAY(CLAY_LAYOUT({ - .sizing = {CLAY_SIZING_FIT(0), CLAY_SIZING_GROW(0)}, - .padding = { 30, 30, 0, 0 }, - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER }}), CLAY_BORDER_OUTSIDE_RADIUS(2, PRIMARY, 10)) { - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED(32), CLAY_SIZING_FIXED(32) } }), CLAY_IMAGE({ .sourceDimensions = { 32, 32 }, .path = CLAY_STRING("resources/check.png") })); + CLAY({ .layout = { + .sizing = {CLAY_SIZING_FIT(0), CLAY_SIZING_GROW(0)}, + .padding = { 30, 30, 0, 0 }, + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .childAlignment = { CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER }}, + .border = { .color = PRIMARY, .width = 2, 2, 2, 2 }, .cornerRadius = 10 + }) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_FIXED(32), CLAY_SIZING_FIXED(32) } }, .image = { .sourceDimensions = { 32, 32 }, .imageData = "resources/check.png" }}); } } } - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(16) } })); + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(16) } }}); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childGap = 10, .layoutDirection = CLAY_TOP_TO_BOTTOM })) { - CLAY_TEXT(CLAY_STRING("Cairo"), CLAY_TEXT_CONFIG({ .fontFamily = CLAY_STRING("Calistoga"), .fontSize = 24, .textColor = PRIMARY })); - CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(10) }), CLAY_RECTANGLE({ .color = ACCENT, .cornerRadius = CLAY_CORNER_RADIUS(10) })) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childGap = 10, .layoutDirection = CLAY_TOP_TO_BOTTOM }}) { + CLAY_TEXT(CLAY_STRING("Cairo"), CLAY_TEXT_CONFIG({ .fontId = FONT_CALLISTOGA, .fontSize = 24, .textColor = PRIMARY })); + CLAY({ .layout = { .padding = CLAY_PADDING_ALL(10) }, .backgroundColor = ACCENT, .cornerRadius = 10 }) { CLAY_TEXT(CLAY_STRING("Officiis quia quia qui inventore ratione voluptas et. Quidem sunt unde similique. Qui est et exercitationem cumque harum illum. Numquam placeat aliquid quo voluptatem. " "Deleniti saepe nihil exercitationem nemo illo. Consequatur beatae repellat provident similique. Provident qui exercitationem deserunt sapiente. Quam qui dolor corporis odit. " "Assumenda corrupti sunt culpa pariatur. Vero sit ut minima. In est consequatur minus et cum sint illum aperiam. Qui ipsa quas nisi omnis aut quia nobis. " "Corporis deserunt eum mollitia modi rerum voluptas. Expedita non ab esse. Sit voluptates eos voluptatem labore aspernatur quia eum. Modi cumque atque non. Sunt officiis corrupti neque ut inventore excepturi rem minima. Possimus sed soluta qui ea aut ipsum laborum fugit. " - "Voluptate eum consectetur non. Quo autem voluptate soluta atque dolorum maxime. Officiis inventore omnis eveniet beatae ipsa optio. Unde voluptatum ut autem quia sit sit et. Ut inventore qui quia totam consequatur. Sit ea consequatur omnis rerum nulla aspernatur deleniti."), CLAY_TEXT_CONFIG({ .fontFamily = CLAY_STRING("Quicksand SemiBold"), .fontSize = 16, .textColor = PRIMARY, .lineHeight = 16 })); + "Voluptate eum consectetur non. Quo autem voluptate soluta atque dolorum maxime. Officiis inventore omnis eveniet beatae ipsa optio. Unde voluptatum ut autem quia sit sit et. Ut inventore qui quia totam consequatur. Sit ea consequatur omnis rerum nulla aspernatur deleniti."), CLAY_TEXT_CONFIG({ .fontId = FONT_QUICKSAND, .fontSize = 16, .textColor = PRIMARY, .lineHeight = 16 })); } } } @@ -136,11 +136,17 @@ int main(void) { uint64_t totalMemorySize = Clay_MinMemorySize(); Clay_Arena clayMemory = Clay_CreateArenaWithCapacityAndMemory(totalMemorySize, malloc(totalMemorySize)); - Clay_SetMeasureTextFunction(Clay_Cairo_MeasureText); // We initialize Clay with the same size Clay_Initialize(clayMemory, (Clay_Dimensions) { width, height }, (Clay_ErrorHandler) { HandleClayErrors }); + char** fonts = (char*[]) { + "Callistoga", + "Quicksand Semibold" + }; + + Clay_SetMeasureTextFunction(Clay_Cairo_MeasureText, (uintptr_t)fonts); + Clay_BeginLayout(); // Here you can now create the declarative clay layout. @@ -149,7 +155,7 @@ int main(void) { Clay_RenderCommandArray commands = Clay_EndLayout(); // Pass our layout to the cairo backend - Clay_Cairo_Render(commands); + Clay_Cairo_Render(commands, fonts); // To keep this example short, we will not emit a second page in the PDF. // But to do so, you have to diff --git a/examples/clay-official-website/CMakeLists.txt b/examples/clay-official-website/CMakeLists.txt index 9702d21..503f90f 100644 --- a/examples/clay-official-website/CMakeLists.txt +++ b/examples/clay-official-website/CMakeLists.txt @@ -5,7 +5,5 @@ set(CMAKE_C_STANDARD 99) add_executable(clay_official_website main.c) -target_compile_options(clay_official_website PUBLIC -Wall -Werror -Wno-unknown-pragmas -Wno-error=missing-braces) +target_compile_options(clay_official_website PUBLIC) target_include_directories(clay_official_website PUBLIC .) - -set(CMAKE_C_FLAGS_RELEASE "-O3") \ No newline at end of file diff --git a/examples/clay-official-website/build/clay/index.html b/examples/clay-official-website/build/clay/index.html index f168175..0eab546 100644 --- a/examples/clay-official-website/build/clay/index.html +++ b/examples/clay-official-website/build/clay/index.html @@ -113,7 +113,6 @@ ]}; let rectangleConfigDefinition = { name: 'rectangle', type: 'struct', members: [ { name: 'color', ...colorDefinition }, - { name: 'cornerRadius', ...cornerRadiusDefinition }, { name: 'link', ...stringDefinition }, { name: 'cursorPointer', type: 'uint8_t' }, ]}; @@ -123,7 +122,6 @@ { name: 'top', ...borderDefinition }, { name: 'bottom', ...borderDefinition }, { name: 'betweenChildren', ...borderDefinition }, - { name: 'cornerRadius', ...cornerRadiusDefinition } ]}; let textConfigDefinition = { name: 'text', type: 'struct', members: [ { name: 'textColor', ...colorDefinition }, @@ -149,6 +147,9 @@ let customConfigDefinition = { name: 'custom', type: 'struct', members: [ { name: 'customData', type: 'uint32_t' }, ]} + let sharedConfigDefinition = { name: 'shared', type: 'struct', members: [ + { name: 'cornerRadius', ...cornerRadiusDefinition }, + ]}; let renderCommandDefinition = { name: 'CLay_RenderCommand', type: 'struct', @@ -160,7 +161,10 @@ { name: 'height', type: 'float' }, ]}, { name: 'config', type: 'uint32_t'}, - { name: 'text', ...stringSliceDefinition }, + { name: 'textOrSharedConfig', type: 'union', members: [ + { name: 'text', ...stringSliceDefinition }, + { name: 'sharedConfig', type: 'uint32_t' } + ]}, { name: 'zIndex', type: 'int32_t' }, { name: 'id', type: 'uint32_t' }, { name: 'commandType', type: 'uint32_t', }, @@ -378,7 +382,7 @@ let isMultiConfigElement = previousId === renderCommand.id.value; if (!elementCache[renderCommand.id.value]) { let elementType = 'div'; - switch (renderCommand.commandType.value) { + switch (renderCommand.commandType.value & 0xff) { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { if (readStructAtAddress(renderCommand.config.value, rectangleConfigDefinition).link.length.value > 0) { elementType = 'a'; @@ -386,6 +390,7 @@ break; } case CLAY_RENDER_COMMAND_TYPE_IMAGE: { + console.log('test5'); elementType = 'img'; break; } default: break; @@ -439,6 +444,7 @@ } case (CLAY_RENDER_COMMAND_TYPE_RECTANGLE): { let config = readStructAtAddress(renderCommand.config.value, rectangleConfigDefinition); + let sharedConfig = readStructAtAddress( renderCommand.textOrSharedConfig.sharedConfig.value, sharedConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); let linkContents = config.link.length.value > 0 ? textDecoder.decode(new Uint8Array(memoryDataView.buffer.slice(config.link.chars.value, config.link.chars.value + config.link.length.value))) : 0; memoryDataView.setUint32(0, renderCommand.id.value, true); @@ -459,22 +465,23 @@ elementData.previousMemoryConfig = configMemory; let color = config.color; element.style.backgroundColor = `rgba(${color.r.value}, ${color.g.value}, ${color.b.value}, ${color.a.value / 255})`; - if (config.cornerRadius.topLeft.value > 0) { - element.style.borderTopLeftRadius = config.cornerRadius.topLeft.value + 'px'; + if (sharedConfig.cornerRadius.topLeft.value > 0) { + element.style.borderTopLeftRadius = sharedConfig.cornerRadius.topLeft.value + 'px'; } - if (config.cornerRadius.topRight.value > 0) { - element.style.borderTopRightRadius = config.cornerRadius.topRight.value + 'px'; + if (sharedConfig.cornerRadius.topRight.value > 0) { + element.style.borderTopRightRadius = sharedConfig.cornerRadius.topRight.value + 'px'; } - if (config.cornerRadius.bottomLeft.value > 0) { - element.style.borderBottomLeftRadius = config.cornerRadius.bottomLeft.value + 'px'; + if (sharedConfig.cornerRadius.bottomLeft.value > 0) { + element.style.borderBottomLeftRadius = sharedConfig.cornerRadius.bottomLeft.value + 'px'; } - if (config.cornerRadius.bottomRight.value > 0) { - element.style.borderBottomRightRadius = config.cornerRadius.bottomRight.value + 'px'; + if (sharedConfig.cornerRadius.bottomRight.value > 0) { + element.style.borderBottomRightRadius = sharedConfig.cornerRadius.bottomRight.value + 'px'; } break; } case (CLAY_RENDER_COMMAND_TYPE_BORDER): { let config = readStructAtAddress(renderCommand.config.value, borderConfigDefinition); + let sharedConfig = readStructAtAddress( renderCommand.textOrSharedConfig.sharedConfig.value, sharedConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); if (!dirty && !MemoryIsDifferent(configMemory, elementData.previousMemoryConfig, config.__size)) { break; @@ -496,24 +503,24 @@ let color = config.bottom.color; element.style.borderBottom = `${config.bottom.width.value}px solid rgba(${color.r.value}, ${color.g.value}, ${color.b.value}, ${color.a.value / 255})` } - if (config.cornerRadius.topLeft.value > 0) { - element.style.borderTopLeftRadius = config.cornerRadius.topLeft.value + 'px'; + if (sharedConfig.cornerRadius.topLeft.value > 0) { + element.style.borderTopLeftRadius = sharedConfig.cornerRadius.topLeft.value + 'px'; } - if (config.cornerRadius.topRight.value > 0) { - element.style.borderTopRightRadius = config.cornerRadius.topRight.value + 'px'; + if (sharedConfig.cornerRadius.topRight.value > 0) { + element.style.borderTopRightRadius = sharedConfig.cornerRadius.topRight.value + 'px'; } - if (config.cornerRadius.bottomLeft.value > 0) { - element.style.borderBottomLeftRadius = config.cornerRadius.bottomLeft.value + 'px'; + if (sharedConfig.cornerRadius.bottomLeft.value > 0) { + element.style.borderBottomLeftRadius = sharedConfig.cornerRadius.bottomLeft.value + 'px'; } - if (config.cornerRadius.bottomRight.value > 0) { - element.style.borderBottomRightRadius = config.cornerRadius.bottomRight.value + 'px'; + if (sharedConfig.cornerRadius.bottomRight.value > 0) { + element.style.borderBottomRightRadius = sharedConfig.cornerRadius.bottomRight.value + 'px'; } break; } case (CLAY_RENDER_COMMAND_TYPE_TEXT): { let config = readStructAtAddress(renderCommand.config.value, textConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); - let textContents = renderCommand.text; + let textContents = renderCommand.textOrSharedConfig.text; let stringContents = new Uint8Array(memoryDataView.buffer.slice(textContents.chars.value, textContents.chars.value + textContents.length.value)); if (MemoryIsDifferent(configMemory, elementData.previousMemoryConfig, config.__size)) { element.className = 'text'; @@ -549,6 +556,7 @@ break; } case (CLAY_RENDER_COMMAND_TYPE_IMAGE): { + console.log('test1'); let config = readStructAtAddress(renderCommand.config.value, imageConfigDefinition); let srcContents = new Uint8Array(memoryDataView.buffer.slice(config.sourceURL.chars.value, config.sourceURL.chars.value + config.sourceURL.length.value)); if (srcContents.length !== elementData.previousMemoryText.length || MemoryIsDifferent(srcContents, elementData.previousMemoryText, srcContents.length)) { diff --git a/examples/clay-official-website/build/clay/index.wasm b/examples/clay-official-website/build/clay/index.wasm index 34351388ce04eee0e03ef670770d280208667cec..91fa130e75d619678e4c0ff373494d615f218211 100755 GIT binary patch literal 111977 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 Oew@F@*XgqS`~MGEvvM&2 literal 169799 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 diff --git a/examples/clay-official-website/index.html b/examples/clay-official-website/index.html index f168175..0eab546 100644 --- a/examples/clay-official-website/index.html +++ b/examples/clay-official-website/index.html @@ -113,7 +113,6 @@ ]}; let rectangleConfigDefinition = { name: 'rectangle', type: 'struct', members: [ { name: 'color', ...colorDefinition }, - { name: 'cornerRadius', ...cornerRadiusDefinition }, { name: 'link', ...stringDefinition }, { name: 'cursorPointer', type: 'uint8_t' }, ]}; @@ -123,7 +122,6 @@ { name: 'top', ...borderDefinition }, { name: 'bottom', ...borderDefinition }, { name: 'betweenChildren', ...borderDefinition }, - { name: 'cornerRadius', ...cornerRadiusDefinition } ]}; let textConfigDefinition = { name: 'text', type: 'struct', members: [ { name: 'textColor', ...colorDefinition }, @@ -149,6 +147,9 @@ let customConfigDefinition = { name: 'custom', type: 'struct', members: [ { name: 'customData', type: 'uint32_t' }, ]} + let sharedConfigDefinition = { name: 'shared', type: 'struct', members: [ + { name: 'cornerRadius', ...cornerRadiusDefinition }, + ]}; let renderCommandDefinition = { name: 'CLay_RenderCommand', type: 'struct', @@ -160,7 +161,10 @@ { name: 'height', type: 'float' }, ]}, { name: 'config', type: 'uint32_t'}, - { name: 'text', ...stringSliceDefinition }, + { name: 'textOrSharedConfig', type: 'union', members: [ + { name: 'text', ...stringSliceDefinition }, + { name: 'sharedConfig', type: 'uint32_t' } + ]}, { name: 'zIndex', type: 'int32_t' }, { name: 'id', type: 'uint32_t' }, { name: 'commandType', type: 'uint32_t', }, @@ -378,7 +382,7 @@ let isMultiConfigElement = previousId === renderCommand.id.value; if (!elementCache[renderCommand.id.value]) { let elementType = 'div'; - switch (renderCommand.commandType.value) { + switch (renderCommand.commandType.value & 0xff) { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { if (readStructAtAddress(renderCommand.config.value, rectangleConfigDefinition).link.length.value > 0) { elementType = 'a'; @@ -386,6 +390,7 @@ break; } case CLAY_RENDER_COMMAND_TYPE_IMAGE: { + console.log('test5'); elementType = 'img'; break; } default: break; @@ -439,6 +444,7 @@ } case (CLAY_RENDER_COMMAND_TYPE_RECTANGLE): { let config = readStructAtAddress(renderCommand.config.value, rectangleConfigDefinition); + let sharedConfig = readStructAtAddress( renderCommand.textOrSharedConfig.sharedConfig.value, sharedConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); let linkContents = config.link.length.value > 0 ? textDecoder.decode(new Uint8Array(memoryDataView.buffer.slice(config.link.chars.value, config.link.chars.value + config.link.length.value))) : 0; memoryDataView.setUint32(0, renderCommand.id.value, true); @@ -459,22 +465,23 @@ elementData.previousMemoryConfig = configMemory; let color = config.color; element.style.backgroundColor = `rgba(${color.r.value}, ${color.g.value}, ${color.b.value}, ${color.a.value / 255})`; - if (config.cornerRadius.topLeft.value > 0) { - element.style.borderTopLeftRadius = config.cornerRadius.topLeft.value + 'px'; + if (sharedConfig.cornerRadius.topLeft.value > 0) { + element.style.borderTopLeftRadius = sharedConfig.cornerRadius.topLeft.value + 'px'; } - if (config.cornerRadius.topRight.value > 0) { - element.style.borderTopRightRadius = config.cornerRadius.topRight.value + 'px'; + if (sharedConfig.cornerRadius.topRight.value > 0) { + element.style.borderTopRightRadius = sharedConfig.cornerRadius.topRight.value + 'px'; } - if (config.cornerRadius.bottomLeft.value > 0) { - element.style.borderBottomLeftRadius = config.cornerRadius.bottomLeft.value + 'px'; + if (sharedConfig.cornerRadius.bottomLeft.value > 0) { + element.style.borderBottomLeftRadius = sharedConfig.cornerRadius.bottomLeft.value + 'px'; } - if (config.cornerRadius.bottomRight.value > 0) { - element.style.borderBottomRightRadius = config.cornerRadius.bottomRight.value + 'px'; + if (sharedConfig.cornerRadius.bottomRight.value > 0) { + element.style.borderBottomRightRadius = sharedConfig.cornerRadius.bottomRight.value + 'px'; } break; } case (CLAY_RENDER_COMMAND_TYPE_BORDER): { let config = readStructAtAddress(renderCommand.config.value, borderConfigDefinition); + let sharedConfig = readStructAtAddress( renderCommand.textOrSharedConfig.sharedConfig.value, sharedConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); if (!dirty && !MemoryIsDifferent(configMemory, elementData.previousMemoryConfig, config.__size)) { break; @@ -496,24 +503,24 @@ let color = config.bottom.color; element.style.borderBottom = `${config.bottom.width.value}px solid rgba(${color.r.value}, ${color.g.value}, ${color.b.value}, ${color.a.value / 255})` } - if (config.cornerRadius.topLeft.value > 0) { - element.style.borderTopLeftRadius = config.cornerRadius.topLeft.value + 'px'; + if (sharedConfig.cornerRadius.topLeft.value > 0) { + element.style.borderTopLeftRadius = sharedConfig.cornerRadius.topLeft.value + 'px'; } - if (config.cornerRadius.topRight.value > 0) { - element.style.borderTopRightRadius = config.cornerRadius.topRight.value + 'px'; + if (sharedConfig.cornerRadius.topRight.value > 0) { + element.style.borderTopRightRadius = sharedConfig.cornerRadius.topRight.value + 'px'; } - if (config.cornerRadius.bottomLeft.value > 0) { - element.style.borderBottomLeftRadius = config.cornerRadius.bottomLeft.value + 'px'; + if (sharedConfig.cornerRadius.bottomLeft.value > 0) { + element.style.borderBottomLeftRadius = sharedConfig.cornerRadius.bottomLeft.value + 'px'; } - if (config.cornerRadius.bottomRight.value > 0) { - element.style.borderBottomRightRadius = config.cornerRadius.bottomRight.value + 'px'; + if (sharedConfig.cornerRadius.bottomRight.value > 0) { + element.style.borderBottomRightRadius = sharedConfig.cornerRadius.bottomRight.value + 'px'; } break; } case (CLAY_RENDER_COMMAND_TYPE_TEXT): { let config = readStructAtAddress(renderCommand.config.value, textConfigDefinition); let configMemory = new Uint8Array(memoryDataView.buffer.slice(renderCommand.config.value, renderCommand.config.value + config.__size)); - let textContents = renderCommand.text; + let textContents = renderCommand.textOrSharedConfig.text; let stringContents = new Uint8Array(memoryDataView.buffer.slice(textContents.chars.value, textContents.chars.value + textContents.length.value)); if (MemoryIsDifferent(configMemory, elementData.previousMemoryConfig, config.__size)) { element.className = 'text'; @@ -549,6 +556,7 @@ break; } case (CLAY_RENDER_COMMAND_TYPE_IMAGE): { + console.log('test1'); let config = readStructAtAddress(renderCommand.config.value, imageConfigDefinition); let srcContents = new Uint8Array(memoryDataView.buffer.slice(config.sourceURL.chars.value, config.sourceURL.chars.value + config.sourceURL.length.value)); if (srcContents.length !== elementData.previousMemoryText.length || MemoryIsDifferent(srcContents, elementData.previousMemoryText, srcContents.length)) { diff --git a/examples/clay-official-website/main.c b/examples/clay-official-website/main.c index 4944262..19d9635 100644 --- a/examples/clay-official-website/main.c +++ b/examples/clay-official-website/main.c @@ -1,6 +1,3 @@ -#define CLAY_EXTEND_CONFIG_RECTANGLE Clay_String link; bool cursorPointer; -#define CLAY_EXTEND_CONFIG_IMAGE Clay_String sourceURL; -#define CLAY_EXTEND_CONFIG_TEXT bool disablePointerEvents; #define CLAY_IMPLEMENTATION #include "../../clay.h" @@ -40,61 +37,80 @@ const Clay_Color COLOR_BLOB_BORDER_5 = (Clay_Color) {240, 189, 100, 255}; Clay_TextElementConfig headerTextConfig = (Clay_TextElementConfig) { .fontId = 2, .fontSize = 24, .textColor = {61, 26, 5, 255} }; Clay_TextElementConfig blobTextConfig = (Clay_TextElementConfig) { .fontId = 2, .fontSize = 30, .textColor = {244, 235, 230, 255} }; -void LandingPageBlob(int index, int fontSize, Clay_Color color, Clay_String text, Clay_String imageURL) { - CLAY(CLAY_IDI("HeroBlob", index), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 480) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} }), CLAY_BORDER_OUTSIDE_RADIUS(2, color, 10)) { - CLAY(CLAY_IDI("CheckImage", index), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_FIXED(32) } }), CLAY_IMAGE({ .sourceDimensions = { 128, 128 }, .sourceURL = imageURL })) {} +typedef struct { + void* memory; + uintptr_t offset; +} Arena; + +Arena frameArena = {}; + +typedef struct { + Clay_String link; + bool cursorPointer; + bool disablePointerEvents; +} CustomHTMLData; + +CustomHTMLData* FrameAllocateCustomData(CustomHTMLData data) { + CustomHTMLData *customData = (CustomHTMLData *)(frameArena.memory + frameArena.offset); + frameArena.offset += sizeof(CustomHTMLData); + return customData; +} + +void LandingPageBlob(int index, int fontSize, Clay_Color color, Clay_String text, char* imageURL) { + CLAY({ .id = CLAY_IDI("HeroBlob", index), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 480) }, .padding = CLAY_PADDING_ALL(16), .childGap = 16, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER} }, .border = { .color = color, .width = { 2, 2, 2, 2 }}, .cornerRadius = CLAY_CORNER_RADIUS(10) }) { + CLAY({ .id = CLAY_IDI("CheckImage", index), .layout = { .sizing = { CLAY_SIZING_FIXED(32) } }, .image = { .sourceDimensions = { 128, 128 }, .imageData = imageURL } }) {} CLAY_TEXT(text, CLAY_TEXT_CONFIG({ .fontSize = fontSize, .fontId = FONT_ID_BODY_24, .textColor = color })); } } void LandingPageDesktop() { - CLAY(CLAY_ID("LandingPage1Desktop"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIT(.min = windowHeight - 70) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } })) { - CLAY(CLAY_ID("LandingPage1"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }), CLAY_BORDER({ .left = { 2, COLOR_RED }, .right = { 2, COLOR_RED } })) { - CLAY(CLAY_ID("LeftText"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_PERCENT(0.55f) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("LandingPage1Desktop"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIT(.min = windowHeight - 70) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } } }) { + CLAY({ .id = CLAY_ID("LandingPage1"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }, .border = { .width = { .left = 2, .right = 2 }, .color = COLOR_RED } }) { + CLAY({ .id = CLAY_ID("LeftText"), .layout = { .sizing = { .width = CLAY_SIZING_PERCENT(0.55f) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Clay is a flex-box style UI auto layout library in C, with declarative syntax and microsecond performance."), CLAY_TEXT_CONFIG({ .fontSize = 56, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("LandingPageSpacer"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } })) {} + CLAY({ .id = CLAY_ID("LandingPageSpacer"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } } }) {} CLAY_TEXT(CLAY_STRING("Clay is laying out this webpage right now!"), CLAY_TEXT_CONFIG({ .fontSize = 36, .fontId = FONT_ID_TITLE_36, .textColor = COLOR_ORANGE })); } - CLAY(CLAY_ID("HeroImageOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_PERCENT(0.45f) }, .childAlignment = { CLAY_ALIGN_X_CENTER }, .childGap = 16 })) { - LandingPageBlob(1, 32, COLOR_BLOB_BORDER_5, CLAY_STRING("High performance"), CLAY_STRING("/clay/images/check_5.png")); - LandingPageBlob(2, 32, COLOR_BLOB_BORDER_4, CLAY_STRING("Flexbox-style responsive layout"), CLAY_STRING("/clay/images/check_4.png")); - LandingPageBlob(3, 32, COLOR_BLOB_BORDER_3, CLAY_STRING("Declarative syntax"), CLAY_STRING("/clay/images/check_3.png")); - LandingPageBlob(4, 32, COLOR_BLOB_BORDER_2, CLAY_STRING("Single .h file for C/C++"), CLAY_STRING("/clay/images/check_2.png")); - LandingPageBlob(5, 32, COLOR_BLOB_BORDER_1, CLAY_STRING("Compile to 15kb .wasm"), CLAY_STRING("/clay/images/check_1.png")); + CLAY({ .id = CLAY_ID("HeroImageOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_PERCENT(0.45f) }, .childAlignment = { CLAY_ALIGN_X_CENTER }, .childGap = 16 } }) { + LandingPageBlob(1, 32, COLOR_BLOB_BORDER_5, CLAY_STRING("High performance"), "/clay/images/check_5.png"); + LandingPageBlob(2, 32, COLOR_BLOB_BORDER_4, CLAY_STRING("Flexbox-style responsive layout"), "/clay/images/check_4.png"); + LandingPageBlob(3, 32, COLOR_BLOB_BORDER_3, CLAY_STRING("Declarative syntax"), "/clay/images/check_3.png"); + LandingPageBlob(4, 32, COLOR_BLOB_BORDER_2, CLAY_STRING("Single .h file for C/C++"), "/clay/images/check_2.png"); + LandingPageBlob(5, 32, COLOR_BLOB_BORDER_1, CLAY_STRING("Compile to 15kb .wasm"), "/clay/images/check_1.png"); } } } } void LandingPageMobile() { - CLAY(CLAY_ID("LandingPage1Mobile"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIT(.min = windowHeight - 70) }, .childAlignment = {CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER}, .padding = { 16, 16, 32, 32 }, .childGap = 32 })) { - CLAY(CLAY_ID("LeftText"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("LandingPage1Mobile"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIT(.min = windowHeight - 70) }, .childAlignment = {CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER}, .padding = { 16, 16, 32, 32 }, .childGap = 32 } }) { + CLAY({ .id = CLAY_ID("LeftText"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Clay is a flex-box style UI auto layout library in C, with declarative syntax and microsecond performance."), CLAY_TEXT_CONFIG({ .fontSize = 48, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("LandingPageSpacer"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } })) {} + CLAY({ .id = CLAY_ID("LandingPageSpacer"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } } }) {} CLAY_TEXT(CLAY_STRING("Clay is laying out this webpage right now!"), CLAY_TEXT_CONFIG({ .fontSize = 32, .fontId = FONT_ID_TITLE_36, .textColor = COLOR_ORANGE })); } - CLAY(CLAY_ID("HeroImageOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { CLAY_ALIGN_X_CENTER }, .childGap = 16 })) { - LandingPageBlob(1, 28, COLOR_BLOB_BORDER_5, CLAY_STRING("High performance"), CLAY_STRING("/clay/images/check_5.png")); - LandingPageBlob(2, 28, COLOR_BLOB_BORDER_4, CLAY_STRING("Flexbox-style responsive layout"), CLAY_STRING("/clay/images/check_4.png")); - LandingPageBlob(3, 28, COLOR_BLOB_BORDER_3, CLAY_STRING("Declarative syntax"), CLAY_STRING("/clay/images/check_3.png")); - LandingPageBlob(4, 28, COLOR_BLOB_BORDER_2, CLAY_STRING("Single .h file for C/C++"), CLAY_STRING("/clay/images/check_2.png")); - LandingPageBlob(5, 28, COLOR_BLOB_BORDER_1, CLAY_STRING("Compile to 15kb .wasm"), CLAY_STRING("/clay/images/check_1.png")); + CLAY({ .id = CLAY_ID("HeroImageOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { CLAY_ALIGN_X_CENTER }, .childGap = 16 } }) { + LandingPageBlob(1, 28, COLOR_BLOB_BORDER_5, CLAY_STRING("High performance"), "/clay/images/check_5.png"); + LandingPageBlob(2, 28, COLOR_BLOB_BORDER_4, CLAY_STRING("Flexbox-style responsive layout"), "/clay/images/check_4.png"); + LandingPageBlob(3, 28, COLOR_BLOB_BORDER_3, CLAY_STRING("Declarative syntax"), "/clay/images/check_3.png"); + LandingPageBlob(4, 28, COLOR_BLOB_BORDER_2, CLAY_STRING("Single .h file for C/C++"), "/clay/images/check_2.png"); + LandingPageBlob(5, 28, COLOR_BLOB_BORDER_1, CLAY_STRING("Compile to 15kb .wasm"), "/clay/images/check_1.png"); } } } void FeatureBlocksDesktop() { - CLAY(CLAY_ID("FeatureBlocksOuter"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) } })) { - CLAY(CLAY_ID("FeatureBlocksInner"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }), CLAY_BORDER({ .betweenChildren = { .width = 2, .color = COLOR_RED } })) { + CLAY({ .id = CLAY_ID("FeatureBlocksOuter"), .layout = { .sizing = { CLAY_SIZING_GROW(0) } } }) { + CLAY({ .id = CLAY_ID("FeatureBlocksInner"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }, .border = { .width = { .betweenChildren = 2 }, .color = COLOR_RED } }) { Clay_TextElementConfig *textConfig = CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_BODY_24, .textColor = COLOR_RED }); - CLAY(CLAY_ID("HFileBoxOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_PERCENT(0.5f) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {50, 50, 32, 32}, .childGap = 8 })) { - CLAY(CLAY_ID("HFileIncludeOuter"), CLAY_LAYOUT({ .padding = {8, 4} }), CLAY_RECTANGLE({ .color = COLOR_RED, .cornerRadius = CLAY_CORNER_RADIUS(8) })) { + CLAY({ .id = CLAY_ID("HFileBoxOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_PERCENT(0.5f) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {50, 50, 32, 32}, .childGap = 8 } }) { + CLAY({ .id = CLAY_ID("HFileIncludeOuter"), .layout = { .padding = {8, 4} }, .backgroundColor = COLOR_RED, .cornerRadius = CLAY_CORNER_RADIUS(8) }) { CLAY_TEXT(CLAY_STRING("#include clay.h"), CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_BODY_24, .textColor = COLOR_LIGHT })); } CLAY_TEXT(CLAY_STRING("~2000 lines of C99."), textConfig); CLAY_TEXT(CLAY_STRING("Zero dependencies, including no C standard library."), textConfig); } - CLAY(CLAY_ID("BringYourOwnRendererOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_PERCENT(0.5f) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {50, 50, 32, 32}, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("BringYourOwnRendererOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_PERCENT(0.5f) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {50, 50, 32, 32}, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Renderer agnostic."), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = COLOR_ORANGE })); CLAY_TEXT(CLAY_STRING("Layout with clay, then render with Raylib, WebGL Canvas or even as HTML."), textConfig); CLAY_TEXT(CLAY_STRING("Flexible output for easy compositing in your custom engine or environment."), textConfig); @@ -104,16 +120,16 @@ void FeatureBlocksDesktop() { } void FeatureBlocksMobile() { - CLAY(CLAY_ID("FeatureBlocksInner"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) } }), CLAY_BORDER({ .betweenChildren = { .width = 2, .color = COLOR_RED } })) { + CLAY({ .id = CLAY_ID("FeatureBlocksInner"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) } }, .border = { .width = { .betweenChildren = 2 }, .color = COLOR_RED } }) { Clay_TextElementConfig *textConfig = CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_BODY_24, .textColor = COLOR_RED }); - CLAY(CLAY_ID("HFileBoxOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 8 })) { - CLAY(CLAY_ID("HFileIncludeOuter"), CLAY_LAYOUT({ .padding = {8, 4} }), CLAY_RECTANGLE({ .color = COLOR_RED, .cornerRadius = CLAY_CORNER_RADIUS(8) })) { + CLAY({ .id = CLAY_ID("HFileBoxOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 8 } }) { + CLAY({ .id = CLAY_ID("HFileIncludeOuter"), .layout = { .padding = {8, 4} }, .backgroundColor = COLOR_RED, .cornerRadius = CLAY_CORNER_RADIUS(8) }) { CLAY_TEXT(CLAY_STRING("#include clay.h"), CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_BODY_24, .textColor = COLOR_LIGHT })); } CLAY_TEXT(CLAY_STRING("~2000 lines of C99."), textConfig); CLAY_TEXT(CLAY_STRING("Zero dependencies, including no C standard library."), textConfig); } - CLAY(CLAY_ID("BringYourOwnRendererOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("BringYourOwnRendererOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Renderer agnostic."), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = COLOR_ORANGE })); CLAY_TEXT(CLAY_STRING("Layout with clay, then render with Raylib, WebGL Canvas or even as HTML."), textConfig); CLAY_TEXT(CLAY_STRING("Flexible output for easy compositing in your custom engine or environment."), textConfig); @@ -122,33 +138,33 @@ void FeatureBlocksMobile() { } void DeclarativeSyntaxPageDesktop() { - CLAY(CLAY_ID("SyntaxPageDesktop"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } })) { - CLAY(CLAY_ID("SyntaxPage"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }), CLAY_BORDER({ .left = { 2, COLOR_RED }, .right = { 2, COLOR_RED } })) { - CLAY(CLAY_ID("SyntaxPageLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("SyntaxPageDesktop"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } } }) { + CLAY({ .id = CLAY_ID("SyntaxPage"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }, .border = { .width = { .left = 2, .right = 2 }, .color = COLOR_RED }}) { + CLAY({ .id = CLAY_ID("SyntaxPageLeftText"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Declarative Syntax"), CLAY_TEXT_CONFIG({ .fontSize = 52, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("SyntaxSpacer"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) } })) {} + CLAY({ .id = CLAY_ID("SyntaxSpacer"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) } } }) {} CLAY_TEXT(CLAY_STRING("Flexible and readable declarative syntax with nested UI element hierarchies."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Mix elements with standard C code like loops, conditionals and functions."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Create your own library of re-usable components from UI primitives like text, images and rectangles."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); } - CLAY(CLAY_ID("SyntaxPageRightImage"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER} })) { - CLAY(CLAY_ID("SyntaxPageRightImageInner"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 568) } }), CLAY_IMAGE({ .sourceDimensions = {1136, 1194}, .sourceURL = CLAY_STRING("/clay/images/declarative.png") })) {} + CLAY({ .id = CLAY_ID("SyntaxPageRightImage"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER} } }) { + CLAY({ .id = CLAY_ID("SyntaxPageRightImageInner"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 568) } }, .image = { .sourceDimensions = {1136, 1194}, .imageData = "/clay/images/declarative.png" } }) {} } } } } void DeclarativeSyntaxPageMobile() { - CLAY(CLAY_ID("SyntaxPageDesktop"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 16 })) { - CLAY(CLAY_ID("SyntaxPageLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("SyntaxPageDesktop"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 16 } }) { + CLAY({ .id = CLAY_ID("SyntaxPageLeftText"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Declarative Syntax"), CLAY_TEXT_CONFIG({ .fontSize = 48, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("SyntaxSpacer"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) } })) {} + CLAY({ .id = CLAY_ID("SyntaxSpacer"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) } } }) {} CLAY_TEXT(CLAY_STRING("Flexible and readable declarative syntax with nested UI element hierarchies."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Mix elements with standard C code like loops, conditionals and functions."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Create your own library of re-usable components from UI primitives like text, images and rectangles."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); } - CLAY(CLAY_ID("SyntaxPageRightImage"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER} })) { - CLAY(CLAY_ID("SyntaxPageRightImageInner"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 568) } }), CLAY_IMAGE({ .sourceDimensions = {1136, 1194}, .sourceURL = CLAY_STRING("/clay/images/declarative.png") } )) {} + CLAY({ .id = CLAY_ID("SyntaxPageRightImage"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER} } }) { + CLAY({ .id = CLAY_ID("SyntaxPageRightImageInner"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 568) } }, .image = { .sourceDimensions = {1136, 1194}, .imageData = "/clay/images/declarative.png" } }) {} } } } @@ -165,20 +181,20 @@ Clay_Color ColorLerp(Clay_Color a, Clay_Color b, float amount) { Clay_String LOREM_IPSUM_TEXT = CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); void HighPerformancePageDesktop(float lerpValue) { - CLAY(CLAY_ID("PerformanceOuter"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {82, 82, 32, 32}, .childGap = 64 }), CLAY_RECTANGLE({ .color = COLOR_RED })) { - CLAY(CLAY_ID("PerformanceLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("PerformanceOuter"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = {82, 82, 32, 32}, .childGap = 64 }, .backgroundColor = COLOR_RED }) { + CLAY({ .id = CLAY_ID("PerformanceLeftText"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("High Performance"), CLAY_TEXT_CONFIG({ .fontSize = 52, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); - CLAY(CLAY_ID("PerformanceSpacer"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) }})) {} + CLAY({ .id = CLAY_ID("PerformanceSpacer"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) }} }) {} CLAY_TEXT(CLAY_STRING("Fast enough to recompute your entire UI every frame."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); CLAY_TEXT(CLAY_STRING("Small memory footprint (3.5mb default) with static allocation & reuse. No malloc / free."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); CLAY_TEXT(CLAY_STRING("Simplify animations and reactive UI design by avoiding the standard performance hacks."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); } - CLAY(CLAY_ID("PerformanceRightImageOuter"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {CLAY_ALIGN_X_CENTER} })) { - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(400) } }), CLAY_BORDER_ALL({ .width = 2, .color = COLOR_LIGHT })) { - CLAY(CLAY_ID("AnimationDemoContainerLeft"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.3f + 0.4f * lerpValue), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32) }), CLAY_RECTANGLE({ .color = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue) })) { + CLAY({ .id = CLAY_ID("PerformanceRightImageOuter"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {CLAY_ALIGN_X_CENTER} } }) { + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(400) } }, .border = { .width = {2, 2, 2, 2}, .color = COLOR_LIGHT } }) { + CLAY({ .id = CLAY_ID("AnimationDemoContainerLeft"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.3f + 0.4f * lerpValue), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32) }, .backgroundColor = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue) }) { CLAY_TEXT(LOREM_IPSUM_TEXT, CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); } - CLAY(CLAY_ID("AnimationDemoContainerRight"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32) }), CLAY_RECTANGLE({ .color = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue) })) { + CLAY({ .id = CLAY_ID("AnimationDemoContainerRight"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(32) }, .backgroundColor = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue) }) { CLAY_TEXT(LOREM_IPSUM_TEXT, CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); } } @@ -187,20 +203,20 @@ void HighPerformancePageDesktop(float lerpValue) { } void HighPerformancePageMobile(float lerpValue) { - CLAY(CLAY_ID("PerformanceOuter"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 32 }), CLAY_RECTANGLE({ .color = COLOR_RED })) { - CLAY(CLAY_ID("PerformanceLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("PerformanceOuter"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {CLAY_ALIGN_X_CENTER, CLAY_ALIGN_Y_CENTER}, .padding = {16, 16, 32, 32}, .childGap = 32 }, .backgroundColor = COLOR_RED }) { + CLAY({ .id = CLAY_ID("PerformanceLeftText"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("High Performance"), CLAY_TEXT_CONFIG({ .fontSize = 48, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); - CLAY(CLAY_ID("PerformanceSpacer"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) }})) {} + CLAY({ .id = CLAY_ID("PerformanceSpacer"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) }} }) {} CLAY_TEXT(CLAY_STRING("Fast enough to recompute your entire UI every frame."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); CLAY_TEXT(CLAY_STRING("Small memory footprint (3.5mb default) with static allocation & reuse. No malloc / free."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); CLAY_TEXT(CLAY_STRING("Simplify animations and reactive UI design by avoiding the standard performance hacks."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); } - CLAY(CLAY_ID("PerformanceRightImageOuter"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {CLAY_ALIGN_X_CENTER} })) { - CLAY(CLAY_ID(""), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(400) } }), CLAY_BORDER_ALL({ .width = 2, .color = COLOR_LIGHT })) { - CLAY(CLAY_ID("AnimationDemoContainerLeft"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.35f + 0.3f * lerpValue), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(16) }), CLAY_RECTANGLE({ .color = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue) })) { + CLAY({ .id = CLAY_ID("PerformanceRightImageOuter"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .childAlignment = {CLAY_ALIGN_X_CENTER} } }) { + CLAY({ .id = CLAY_ID(""), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(400) } }, .border = { .width = { 2, 2, 2, 2 }, .color = COLOR_LIGHT }}) { + CLAY({ .id = CLAY_ID("AnimationDemoContainerLeft"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.35f + 0.3f * lerpValue), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(16) }, .backgroundColor = ColorLerp(COLOR_RED, COLOR_ORANGE, lerpValue) }) { CLAY_TEXT(LOREM_IPSUM_TEXT, CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); } - CLAY(CLAY_ID("AnimationDemoContainerRight"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(16) }), CLAY_RECTANGLE({ .color = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue) })) { + CLAY({ .id = CLAY_ID("AnimationDemoContainerRight"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = {.y = CLAY_ALIGN_Y_CENTER}, .padding = CLAY_PADDING_ALL(16) }, .backgroundColor = ColorLerp(COLOR_ORANGE, COLOR_RED, lerpValue) }) { CLAY_TEXT(LOREM_IPSUM_TEXT, CLAY_TEXT_CONFIG({ .fontSize = 24, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); } } @@ -217,36 +233,42 @@ void HandleRendererButtonInteraction(Clay_ElementId elementId, Clay_PointerData } void RendererButtonActive(Clay_String text) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(300) }, .padding = CLAY_PADDING_ALL(16) }), - CLAY_RECTANGLE({ .color = Clay_Hovered() ? COLOR_RED_HOVER : COLOR_RED, .cornerRadius = CLAY_CORNER_RADIUS(10) }) - ) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); + CLAY({ + .layout = { .sizing = {CLAY_SIZING_FIXED(300) }, .padding = CLAY_PADDING_ALL(16) }, + .backgroundColor = Clay_Hovered() ? COLOR_RED_HOVER : COLOR_RED, + .cornerRadius = CLAY_CORNER_RADIUS(10), + .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .disablePointerEvents = true, .cursorPointer = true })} + }) { + CLAY_TEXT(text, CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); } } void RendererButtonInactive(Clay_String text, size_t rendererIndex) { - CLAY(CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(300)}, .padding = CLAY_PADDING_ALL(16) }), - CLAY_BORDER_OUTSIDE_RADIUS(2, COLOR_RED, 10), - CLAY_RECTANGLE({ .color = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT, .cornerRadius = CLAY_CORNER_RADIUS(10), .cursorPointer = true }), - Clay_OnHover(HandleRendererButtonInteraction, rendererIndex) - ) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); + CLAY({ + .layout = { .sizing = {CLAY_SIZING_FIXED(300)}, .padding = CLAY_PADDING_ALL(16) }, + .border = { .width = {2, 2, 2, 2}, .color = COLOR_RED }, + .backgroundColor = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT, + .cornerRadius = CLAY_CORNER_RADIUS(10), + .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .disablePointerEvents = true, .cursorPointer = true })} + }) { + Clay_OnHover(HandleRendererButtonInteraction, rendererIndex); + CLAY_TEXT(text, CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); } } void RendererPageDesktop() { - CLAY(CLAY_ID("RendererPageDesktop"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } })) { - CLAY(CLAY_ID("RendererPage"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }), CLAY_BORDER({ .left = { 2, COLOR_RED }, .right = { 2, COLOR_RED } })) { - CLAY(CLAY_ID("RendererLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("RendererPageDesktop"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 50, 50 } } }) { + CLAY({ .id = CLAY_ID("RendererPage"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .padding = CLAY_PADDING_ALL(32), .childGap = 32 }, .border = { .width = { .left = 2, .right = 2 }, .color = COLOR_RED } }) { + CLAY({ .id = CLAY_ID("RendererLeftText"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Renderer & Platform Agnostic"), CLAY_TEXT_CONFIG({ .fontSize = 52, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("RendererSpacerLeft"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) }})) {} + CLAY({ .id = CLAY_ID("RendererSpacerLeft"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) }} }) {} CLAY_TEXT(CLAY_STRING("Clay outputs a sorted array of primitive render commands, such as RECTANGLE, TEXT or IMAGE."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Write your own renderer in a few hundred lines of code, or use the provided examples for Raylib, WebGL canvas and more."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("There's even an HTML renderer - you're looking at it right now!"), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); } - CLAY(CLAY_ID("RendererRightText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.5) }, .childAlignment = {CLAY_ALIGN_X_CENTER}, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 })) { + CLAY({ .id = CLAY_ID("RendererRightText"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.5) }, .childAlignment = {CLAY_ALIGN_X_CENTER}, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 } }) { CLAY_TEXT(CLAY_STRING("Try changing renderer!"), CLAY_TEXT_CONFIG({ .fontSize = 36, .fontId = FONT_ID_BODY_36, .textColor = COLOR_ORANGE })); - CLAY(CLAY_ID("RendererSpacerRight"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 32) } })) {} + CLAY({ .id = CLAY_ID("RendererSpacerRight"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 32) } } }) {} if (ACTIVE_RENDERER_INDEX == 0) { RendererButtonActive(CLAY_STRING("HTML Renderer")); RendererButtonInactive(CLAY_STRING("Canvas Renderer"), 1); @@ -260,17 +282,17 @@ void RendererPageDesktop() { } void RendererPageMobile() { - CLAY(CLAY_ID("RendererMobile"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER}, .padding = { 16, 16, 32, 32}, .childGap = 32 }), CLAY_RECTANGLE({ .color = COLOR_LIGHT })) { - CLAY(CLAY_ID("RendererLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("RendererMobile"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {.x = CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER}, .padding = { 16, 16, 32, 32}, .childGap = 32 }, .backgroundColor = COLOR_LIGHT }) { + CLAY({ .id = CLAY_ID("RendererLeftText"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Renderer & Platform Agnostic"), CLAY_TEXT_CONFIG({ .fontSize = 48, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_RED })); - CLAY(CLAY_ID("RendererSpacerLeft"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) }})) {} + CLAY({ .id = CLAY_ID("RendererSpacerLeft"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) }} }) {} CLAY_TEXT(CLAY_STRING("Clay outputs a sorted array of primitive render commands, such as RECTANGLE, TEXT or IMAGE."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("Write your own renderer in a few hundred lines of code, or use the provided examples for Raylib, WebGL canvas and more."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); CLAY_TEXT(CLAY_STRING("There's even an HTML renderer - you're looking at it right now!"), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_RED })); } - CLAY(CLAY_ID("RendererRightText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 })) { + CLAY({ .id = CLAY_ID("RendererRightText"), .layout = { .sizing = { CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 16 } }) { CLAY_TEXT(CLAY_STRING("Try changing renderer!"), CLAY_TEXT_CONFIG({ .fontSize = 36, .fontId = FONT_ID_BODY_36, .textColor = COLOR_ORANGE })); - CLAY(CLAY_ID("RendererSpacerRight"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 32) }})) {} + CLAY({ .id = CLAY_ID("RendererSpacerRight"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 32) }} }) {} if (ACTIVE_RENDERER_INDEX == 0) { RendererButtonActive(CLAY_STRING("HTML Renderer")); RendererButtonInactive(CLAY_STRING("Canvas Renderer"), 1); @@ -283,17 +305,17 @@ void RendererPageMobile() { } void DebuggerPageDesktop() { - CLAY(CLAY_ID("DebuggerDesktop"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 82, 82, 32, 32 }, .childGap = 64 }), CLAY_RECTANGLE({ .color = COLOR_RED })) { - CLAY(CLAY_ID("DebuggerLeftText"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 })) { + CLAY({ .id = CLAY_ID("DebuggerDesktop"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIT(.min = windowHeight - 50) }, .childAlignment = {0, CLAY_ALIGN_Y_CENTER}, .padding = { 82, 82, 32, 32 }, .childGap = 64 }, .backgroundColor = COLOR_RED }) { + CLAY({ .id = CLAY_ID("DebuggerLeftText"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.5) }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .childGap = 8 } }) { CLAY_TEXT(CLAY_STRING("Integrated Debug Tools"), CLAY_TEXT_CONFIG({ .fontSize = 52, .fontId = FONT_ID_TITLE_56, .textColor = COLOR_LIGHT })); - CLAY(CLAY_ID("DebuggerSpacer"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 16) }})) {} + CLAY({ .id = CLAY_ID("DebuggerSpacer"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 16) }} }) {} CLAY_TEXT(CLAY_STRING("Clay includes built in \"Chrome Inspector\"-style debug tooling."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); CLAY_TEXT(CLAY_STRING("View your layout hierarchy and config in real time."), CLAY_TEXT_CONFIG({ .fontSize = 28, .fontId = FONT_ID_BODY_36, .textColor = COLOR_LIGHT })); - CLAY(CLAY_ID("DebuggerPageSpacer"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } })) {} + CLAY({ .id = CLAY_ID("DebuggerPageSpacer"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(32) } } }) {} CLAY_TEXT(CLAY_STRING("Press the \"d\" key to try it out now!"), CLAY_TEXT_CONFIG({ .fontSize = 32, .fontId = FONT_ID_TITLE_36, .textColor = COLOR_ORANGE })); } - CLAY(CLAY_ID("DebuggerRightImageOuter"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {CLAY_ALIGN_X_CENTER} })) { - CLAY(CLAY_ID("DebuggerPageRightImageInner"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(.max = 558) } }), CLAY_IMAGE({ .sourceDimensions = {1620, 1474}, .sourceURL = CLAY_STRING("/clay/images/debugger.png") })) {} + CLAY({ .id = CLAY_ID("DebuggerRightImageOuter"), .layout = { .sizing = { CLAY_SIZING_PERCENT(0.50) }, .childAlignment = {CLAY_ALIGN_X_CENTER} } }) { + CLAY({ .id = CLAY_ID("DebuggerPageRightImageInner"), .layout = { .sizing = { CLAY_SIZING_GROW(.max = 558) } }, .image = { .sourceDimensions = {1620, 1474}, .imageData = "/clay/images/debugger.png" } }) {} } } } @@ -310,45 +332,48 @@ float animationLerpValue = -1.0f; Clay_RenderCommandArray CreateLayout(bool mobileScreen, float lerpValue) { Clay_BeginLayout(); - CLAY(CLAY_ID("OuterContainer"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) } }), CLAY_RECTANGLE({ .color = COLOR_LIGHT })) { - CLAY(CLAY_ID("Header"), CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(50) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .childGap = 16, .padding = { 32, 32 } })) { + CLAY({ .id = CLAY_ID("OuterContainer"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) } }, .backgroundColor = COLOR_LIGHT }) { + CLAY({ .id = CLAY_ID("Header"), .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(50) }, .childAlignment = { 0, CLAY_ALIGN_Y_CENTER }, .childGap = 16, .padding = { 32, 32 } } }) { CLAY_TEXT(CLAY_STRING("Clay"), &headerTextConfig); - CLAY(CLAY_ID("Spacer"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) } })) {} + CLAY({ .id = CLAY_ID("Spacer"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) } } }) {} if (!mobileScreen) { - CLAY(CLAY_ID("LinkExamplesOuter"), CLAY_LAYOUT({ .padding = {8, 8} }), CLAY_RECTANGLE({ .link = CLAY_STRING("https://github.com/nicbarker/clay/tree/main/examples"), .color = {0,0,0,0} })) { - CLAY_TEXT(CLAY_STRING("Examples"), CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); + CLAY({ .id = CLAY_ID("LinkExamplesOuter"), .layout = { .padding = {8, 8} }, .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .link = CLAY_STRING("https://github.com/nicbarker/clay/tree/main/examples") }) } }) { + CLAY_TEXT(CLAY_STRING("Examples"), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); } - CLAY(CLAY_ID("LinkDocsOuter"), CLAY_LAYOUT({ .padding = {8, 8} }), CLAY_RECTANGLE({ .link = CLAY_STRING("https://github.com/nicbarker/clay/blob/main/README.md"), .color = {0,0,0,0} })) { - CLAY_TEXT(CLAY_STRING("Docs"), CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); + CLAY({ .id = CLAY_ID("LinkDocsOuter"), .layout = { .padding = {8, 8} }, .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .link = CLAY_STRING("https://github.com/nicbarker/clay/blob/main/README.md") }) } }) { + CLAY_TEXT(CLAY_STRING("Docs"), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); } } - CLAY(CLAY_LAYOUT({ .padding = {16, 16, 6, 6} }), - CLAY_RECTANGLE({ - .cornerRadius = CLAY_CORNER_RADIUS(10), - .link = CLAY_STRING("https://discord.gg/b4FTWkxdvT"), - .color = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT }), - CLAY_BORDER_OUTSIDE_RADIUS(2, COLOR_RED, 10) - ) { - CLAY_TEXT(CLAY_STRING("Discord"), CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); + CLAY({ + .layout = { .padding = {16, 16, 6, 6} }, + .backgroundColor = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT, + .border = { .width = {2, 2, 2, 2}, .color = COLOR_RED }, + .cornerRadius = CLAY_CORNER_RADIUS(10), + .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .link = CLAY_STRING("https://github.com/nicbarker/clay/tree/main/examples") }) }, + }) { + CLAY_TEXT(CLAY_STRING("Discord"), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); } - CLAY(CLAY_LAYOUT({ .padding = {16, 16, 6, 6} }), - CLAY_RECTANGLE({ .cornerRadius = CLAY_CORNER_RADIUS(10), .link = CLAY_STRING("https://github.com/nicbarker/clay"), .color = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT }), - CLAY_BORDER_OUTSIDE_RADIUS(2, COLOR_RED, 10) - ) { - CLAY_TEXT(CLAY_STRING("Github"), CLAY_TEXT_CONFIG({ .disablePointerEvents = true, .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); + CLAY({ + .layout = { .padding = {16, 16, 6, 6} }, + .backgroundColor = Clay_Hovered() ? COLOR_LIGHT_HOVER : COLOR_LIGHT, + .border = { .width = {2, 2, 2, 2}, .color = COLOR_RED }, + .cornerRadius = CLAY_CORNER_RADIUS(10), + .custom = { .customData = FrameAllocateCustomData((CustomHTMLData) { .link = CLAY_STRING("https://github.com/nicbarker/clay") }) }, + }) { + CLAY_TEXT(CLAY_STRING("Github"), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {61, 26, 5, 255} })); } } Clay_LayoutConfig topBorderConfig = (Clay_LayoutConfig) { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_FIXED(4) }}; - CLAY(CLAY_ID("TopBorder1"), CLAY_LAYOUT(topBorderConfig), CLAY_RECTANGLE({ .color = COLOR_TOP_BORDER_5 })) {} - CLAY(CLAY_ID("TopBorder2"), CLAY_LAYOUT(topBorderConfig), CLAY_RECTANGLE({ .color = COLOR_TOP_BORDER_4 })) {} - CLAY(CLAY_ID("TopBorder3"), CLAY_LAYOUT(topBorderConfig), CLAY_RECTANGLE({ .color = COLOR_TOP_BORDER_3 })) {} - CLAY(CLAY_ID("TopBorder4"), CLAY_LAYOUT(topBorderConfig), CLAY_RECTANGLE({ .color = COLOR_TOP_BORDER_2 })) {} - CLAY(CLAY_ID("TopBorder5"), CLAY_LAYOUT(topBorderConfig), CLAY_RECTANGLE({ .color = COLOR_TOP_BORDER_1 })) {} - CLAY(CLAY_ID("OuterScrollContainer"), - CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM }), - CLAY_SCROLL({ .vertical = true }), - CLAY_BORDER({ .betweenChildren = {2, COLOR_RED} }) - ) { + CLAY({ .id = CLAY_ID("TopBorder1"), .layout = topBorderConfig, .backgroundColor = COLOR_TOP_BORDER_5 }) {} + CLAY({ .id = CLAY_ID("TopBorder2"), .layout = topBorderConfig, .backgroundColor = COLOR_TOP_BORDER_4 }) {} + CLAY({ .id = CLAY_ID("TopBorder3"), .layout = topBorderConfig, .backgroundColor = COLOR_TOP_BORDER_3 }) {} + CLAY({ .id = CLAY_ID("TopBorder4"), .layout = topBorderConfig, .backgroundColor = COLOR_TOP_BORDER_2 }) {} + CLAY({ .id = CLAY_ID("TopBorder5"), .layout = topBorderConfig, .backgroundColor = COLOR_TOP_BORDER_1 }) {} + CLAY({ .id = CLAY_ID("OuterScrollContainer"), + .layout = { .sizing = { CLAY_SIZING_GROW(0), CLAY_SIZING_GROW(0) }, .layoutDirection = CLAY_TOP_TO_BOTTOM }, + .scroll = { .vertical = true }, + .border = { .width = { .betweenChildren = 2 }, .color = COLOR_RED } + }) { if (mobileScreen) { LandingPageMobile(); FeatureBlocksMobile(); @@ -375,11 +400,13 @@ Clay_RenderCommandArray CreateLayout(bool mobileScreen, float lerpValue) { scrollbarColor = (Clay_Color){225, 138, 50, 160}; } float scrollHeight = scrollData.scrollContainerDimensions.height - 12; - CLAY(CLAY_ID("ScrollBar"), - CLAY_FLOATING({ .offset = { .x = -6, .y = -(scrollData.scrollPosition->y / scrollData.contentDimensions.height) * scrollHeight + 6}, .zIndex = 1, .parentId = Clay_GetElementId(CLAY_STRING("OuterScrollContainer")).id, .attachment = {.element = CLAY_ATTACH_POINT_RIGHT_TOP, .parent = CLAY_ATTACH_POINT_RIGHT_TOP }}), - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(10), CLAY_SIZING_FIXED((scrollHeight / scrollData.contentDimensions.height) * scrollHeight)} }), - CLAY_RECTANGLE({ .cornerRadius = CLAY_CORNER_RADIUS(5), .color = scrollbarColor }) - ) {} + CLAY({ + .id = CLAY_ID("ScrollBar"), + .floating = { .offset = { .x = -6, .y = -(scrollData.scrollPosition->y / scrollData.contentDimensions.height) * scrollHeight + 6}, .zIndex = 1, .parentId = Clay_GetElementId(CLAY_STRING("OuterScrollContainer")).id, .attachPoints = {.element = CLAY_ATTACH_POINT_RIGHT_TOP, .parent = CLAY_ATTACH_POINT_RIGHT_TOP }, .attachTo = CLAY_ATTACH_TO_PARENT }, + .layout = { .sizing = {CLAY_SIZING_FIXED(10), CLAY_SIZING_FIXED((scrollHeight / scrollData.contentDimensions.height) * scrollHeight)} }, + .backgroundColor = scrollbarColor, + .cornerRadius = CLAY_CORNER_RADIUS(5) + }) {} } return Clay_EndLayout(); } diff --git a/examples/cpp-project-example/CMakeLists.txt b/examples/cpp-project-example/CMakeLists.txt index 24422d7..4ddcf39 100644 --- a/examples/cpp-project-example/CMakeLists.txt +++ b/examples/cpp-project-example/CMakeLists.txt @@ -11,6 +11,6 @@ add_executable(clay_examples_cpp_project_example main.cpp) target_include_directories(clay_examples_cpp_project_example PUBLIC .) if(NOT MSVC) - set(CMAKE_CXX_FLAGS_DEBUG "-Werror -Wall") - set(CMAKE_CXX_FLAGS_RELEASE "-O3") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") endif() diff --git a/examples/cpp-project-example/main.cpp b/examples/cpp-project-example/main.cpp index 363e8ef..0075a32 100644 --- a/examples/cpp-project-example/main.cpp +++ b/examples/cpp-project-example/main.cpp @@ -13,7 +13,7 @@ int main(void) { Clay_Arena clayMemory = Clay_CreateArenaWithCapacityAndMemory(totalMemorySize, (char *)malloc(totalMemorySize)); Clay_Initialize(clayMemory, Clay_Dimensions {1024,768}, Clay_ErrorHandler { HandleClayErrors }); Clay_BeginLayout(); - CLAY(CLAY_RECTANGLE({ .color = {255,255,255,0} }), CLAY_LAYOUT(layoutElement)) { + CLAY({ .layout = layoutElement, .backgroundColor = {255,255,255,0} }) { CLAY_TEXT(CLAY_STRING(""), CLAY_TEXT_CONFIG({ .fontId = 0 })); } Clay_EndLayout(); diff --git a/examples/introducing-clay-video-demo/CMakeLists.txt b/examples/introducing-clay-video-demo/CMakeLists.txt index a59d678..48c5983 100644 --- a/examples/introducing-clay-video-demo/CMakeLists.txt +++ b/examples/introducing-clay-video-demo/CMakeLists.txt @@ -28,8 +28,8 @@ target_link_libraries(clay_examples_introducing_clay_video_demo PUBLIC raylib) if(MSVC) set(CMAKE_C_FLAGS_DEBUG "/D CLAY_DEBUG") else() - set(CMAKE_C_FLAGS_DEBUG "-Wall -Werror -Wno-error=missing-braces -DCLAY_DEBUG") - set(CMAKE_C_FLAGS_RELEASE "-O3") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") endif() add_custom_command( diff --git a/examples/introducing-clay-video-demo/main.c b/examples/introducing-clay-video-demo/main.c index 7f3ae24..5456ebc 100644 --- a/examples/introducing-clay-video-demo/main.c +++ b/examples/introducing-clay-video-demo/main.c @@ -1,81 +1,14 @@ #define CLAY_IMPLEMENTATION #include "../../clay.h" #include "../../renderers/raylib/clay_renderer_raylib.c" - -const int FONT_ID_BODY_16 = 0; -Clay_Color COLOR_WHITE = { 255, 255, 255, 255}; - -void RenderHeaderButton(Clay_String text) { - CLAY( - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_RECTANGLE({ - .color = { 140, 140, 140, 255 }, - .cornerRadius = 5 - }) - ) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -void RenderDropdownMenuItem(Clay_String text) { - CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(16)})) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -typedef struct { - Clay_String title; - Clay_String contents; -} Document; - -typedef struct { - Document *documents; - uint32_t length; -} DocumentArray; - -DocumentArray documents = { - .documents = NULL, // TODO figure out if it's possible to const init this list - .length = 5 -}; - -uint32_t selectedDocumentIndex = 0; - -void HandleSidebarInteraction( - Clay_ElementId elementId, - Clay_PointerData pointerData, - intptr_t userData -) { - // If this button was clicked - if (pointerData.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) { - if (userData >= 0 && userData < documents.length) { - // Select the corresponding document - selectedDocumentIndex = userData; - } - } -} +#include "../shared-layouts/clay-video-demo.c" // This function is new since the video was published void HandleClayErrors(Clay_ErrorData errorData) { printf("%s", errorData.errorText.chars); } - int main(void) { - documents.documents = (Document[]) { - { .title = CLAY_STRING("Squirrels"), .contents = CLAY_STRING("The Secret Life of Squirrels: Nature's Clever Acrobats\n""Squirrels are often overlooked creatures, dismissed as mere park inhabitants or backyard nuisances. Yet, beneath their fluffy tails and twitching noses lies an intricate world of cunning, agility, and survival tactics that are nothing short of fascinating. As one of the most common mammals in North America, squirrels have adapted to a wide range of environments from bustling urban centers to tranquil forests and have developed a variety of unique behaviors that continue to intrigue scientists and nature enthusiasts alike.\n""\n""Master Tree Climbers\n""At the heart of a squirrel's skill set is its impressive ability to navigate trees with ease. Whether they're darting from branch to branch or leaping across wide gaps, squirrels possess an innate talent for acrobatics. Their powerful hind legs, which are longer than their front legs, give them remarkable jumping power. With a tail that acts as a counterbalance, squirrels can leap distances of up to ten times the length of their body, making them some of the best aerial acrobats in the animal kingdom.\n""But it's not just their agility that makes them exceptional climbers. Squirrels' sharp, curved claws allow them to grip tree bark with precision, while the soft pads on their feet provide traction on slippery surfaces. Their ability to run at high speeds and scale vertical trunks with ease is a testament to the evolutionary adaptations that have made them so successful in their arboreal habitats.\n""\n""Food Hoarders Extraordinaire\n""Squirrels are often seen frantically gathering nuts, seeds, and even fungi in preparation for winter. While this behavior may seem like instinctual hoarding, it is actually a survival strategy that has been honed over millions of years. Known as \"scatter hoarding,\" squirrels store their food in a variety of hidden locations, often burying it deep in the soil or stashing it in hollowed-out tree trunks.\n""Interestingly, squirrels have an incredible memory for the locations of their caches. Research has shown that they can remember thousands of hiding spots, often returning to them months later when food is scarce. However, they don't always recover every stash some forgotten caches eventually sprout into new trees, contributing to forest regeneration. This unintentional role as forest gardeners highlights the ecological importance of squirrels in their ecosystems.\n""\n""The Great Squirrel Debate: Urban vs. Wild\n""While squirrels are most commonly associated with rural or wooded areas, their adaptability has allowed them to thrive in urban environments as well. In cities, squirrels have become adept at finding food sources in places like parks, streets, and even garbage cans. However, their urban counterparts face unique challenges, including traffic, predators, and the lack of natural shelters. Despite these obstacles, squirrels in urban areas are often observed using human infrastructure such as buildings, bridges, and power lines as highways for their acrobatic escapades.\n""There is, however, a growing concern regarding the impact of urban life on squirrel populations. Pollution, deforestation, and the loss of natural habitats are making it more difficult for squirrels to find adequate food and shelter. As a result, conservationists are focusing on creating squirrel-friendly spaces within cities, with the goal of ensuring these resourceful creatures continue to thrive in both rural and urban landscapes.\n""\n""A Symbol of Resilience\n""In many cultures, squirrels are symbols of resourcefulness, adaptability, and preparation. Their ability to thrive in a variety of environments while navigating challenges with agility and grace serves as a reminder of the resilience inherent in nature. Whether you encounter them in a quiet forest, a city park, or your own backyard, squirrels are creatures that never fail to amaze with their endless energy and ingenuity.\n""In the end, squirrels may be small, but they are mighty in their ability to survive and thrive in a world that is constantly changing. So next time you spot one hopping across a branch or darting across your lawn, take a moment to appreciate the remarkable acrobat at work a true marvel of the natural world.\n") }, - { .title = CLAY_STRING("Lorem Ipsum"), .contents = CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.") }, - { .title = CLAY_STRING("Vacuum Instructions"), .contents = CLAY_STRING("Chapter 3: Getting Started - Unpacking and Setup\n""\n""Congratulations on your new SuperClean Pro 5000 vacuum cleaner! In this section, we will guide you through the simple steps to get your vacuum up and running. Before you begin, please ensure that you have all the components listed in the \"Package Contents\" section on page 2.\n""\n""1. Unboxing Your Vacuum\n""Carefully remove the vacuum cleaner from the box. Avoid using sharp objects that could damage the product. Once removed, place the unit on a flat, stable surface to proceed with the setup. Inside the box, you should find:\n""\n"" The main vacuum unit\n"" A telescoping extension wand\n"" A set of specialized cleaning tools (crevice tool, upholstery brush, etc.)\n"" A reusable dust bag (if applicable)\n"" A power cord with a 3-prong plug\n"" A set of quick-start instructions\n""\n""2. Assembling Your Vacuum\n""Begin by attaching the extension wand to the main body of the vacuum cleaner. Line up the connectors and twist the wand into place until you hear a click. Next, select the desired cleaning tool and firmly attach it to the wand's end, ensuring it is securely locked in.\n""\n""For models that require a dust bag, slide the bag into the compartment at the back of the vacuum, making sure it is properly aligned with the internal mechanism. If your vacuum uses a bagless system, ensure the dust container is correctly seated and locked in place before use.\n""\n""3. Powering On\n""To start the vacuum, plug the power cord into a grounded electrical outlet. Once plugged in, locate the power switch, usually positioned on the side of the handle or body of the unit, depending on your model. Press the switch to the \"On\" position, and you should hear the motor begin to hum. If the vacuum does not power on, check that the power cord is securely plugged in, and ensure there are no blockages in the power switch.\n""\n""Note: Before first use, ensure that the vacuum filter (if your model has one) is properly installed. If unsure, refer to \"Section 5: Maintenance\" for filter installation instructions.") }, - { .title = CLAY_STRING("Article 4"), .contents = CLAY_STRING("Article 4") }, - { .title = CLAY_STRING("Article 5"), .contents = CLAY_STRING("Article 5") }, - }; Clay_Raylib_Initialize(1024, 768, "Introducing Clay Demo", FLAG_WINDOW_RESIZABLE | FLAG_WINDOW_HIGHDPI | FLAG_MSAA_4X_HINT | FLAG_VSYNC_HINT); // Extra parameters to this function are new since the video was published uint64_t clayRequiredMemory = Clay_MinMemorySize(); @@ -84,18 +17,18 @@ int main(void) { .width = GetScreenWidth(), .height = GetScreenHeight() }, (Clay_ErrorHandler) { HandleClayErrors }); // This final argument is new since the video was published - Clay_SetMeasureTextFunction(Raylib_MeasureText, 0); - Raylib_fonts[FONT_ID_BODY_16] = (Raylib_Font) { - .font = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400), - .fontId = FONT_ID_BODY_16 - }; - SetTextureFilter(Raylib_fonts[FONT_ID_BODY_16].font.texture, TEXTURE_FILTER_BILINEAR); + Font fonts[1]; + fonts[FONT_ID_BODY_16] = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400); + SetTextureFilter(fonts[FONT_ID_BODY_16].texture, TEXTURE_FILTER_BILINEAR); + Clay_SetMeasureTextFunction(Raylib_MeasureText, fonts); + + ClayVideoDemo_Data data = ClayVideoDemo_Initialize(); while (!WindowShouldClose()) { // Run once per frame Clay_SetLayoutDimensions((Clay_Dimensions) { - .width = GetScreenWidth(), - .height = GetScreenHeight() + .width = GetScreenWidth(), + .height = GetScreenHeight() }); Vector2 mousePosition = GetMousePosition(); @@ -110,193 +43,11 @@ int main(void) { GetFrameTime() ); - Clay_Sizing layoutExpand = { - .width = CLAY_SIZING_GROW(0), - .height = CLAY_SIZING_GROW(0) - }; - - Clay_RectangleElementConfig contentBackgroundConfig = { - .color = { 90, 90, 90, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(8) - }; - - Clay_BeginLayout(); - // Build UI here - CLAY( - CLAY_ID("OuterContainer"), - CLAY_RECTANGLE({ .color = { 43, 41, 51, 255 } }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .sizing = layoutExpand, - .padding = CLAY_PADDING_ALL(16), - .childGap = 16 - }) - ) { - // Child elements go inside braces - CLAY( - CLAY_ID("HeaderBar"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_LAYOUT({ - .sizing = { - .height = CLAY_SIZING_FIXED(60), - .width = CLAY_SIZING_GROW(0) - }, - .padding = { 16, 16, 0, 0 }, - .childGap = 16, - .childAlignment = { - .y = CLAY_ALIGN_Y_CENTER - } - }) - ) { - // Header buttons go here - CLAY( - CLAY_ID("FileButton"), - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_RECTANGLE({ - .color = { 140, 140, 140, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(5) - }) - ) { - CLAY_TEXT(CLAY_STRING("File"), CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - - bool fileMenuVisible = - Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileButton"))) - || - Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileMenu"))); - - if (fileMenuVisible) { // Below has been changed slightly to fix the small bug where the menu would dismiss when mousing over the top gap - CLAY( - CLAY_ID("FileMenu"), - CLAY_FLOATING({ - .attachment = { - .parent = CLAY_ATTACH_POINT_LEFT_BOTTOM - }, - }), - CLAY_LAYOUT({ - .padding = {0, 0, 8, 8 } - }) - ) { - CLAY( - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .sizing = { - .width = CLAY_SIZING_FIXED(200) - }, - }), - CLAY_RECTANGLE({ - .color = { 40, 40, 40, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(8) - }) - ) { - // Render dropdown items here - RenderDropdownMenuItem(CLAY_STRING("New")); - RenderDropdownMenuItem(CLAY_STRING("Open")); - RenderDropdownMenuItem(CLAY_STRING("Close")); - } - } - } - } - RenderHeaderButton(CLAY_STRING("Edit")); - CLAY(CLAY_LAYOUT({ .sizing = { CLAY_SIZING_GROW(0) }})) {} - RenderHeaderButton(CLAY_STRING("Upload")); - RenderHeaderButton(CLAY_STRING("Media")); - RenderHeaderButton(CLAY_STRING("Support")); - } - - CLAY( - CLAY_ID("LowerContent"), - CLAY_LAYOUT({ .sizing = layoutExpand, .childGap = 16 }) - ) { - CLAY( - CLAY_ID("Sidebar"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .padding = CLAY_PADDING_ALL(16), - .childGap = 8, - .sizing = { - .width = CLAY_SIZING_FIXED(250), - .height = CLAY_SIZING_GROW(0) - } - }) - ) { - for (int i = 0; i < documents.length; i++) { - Document document = documents.documents[i]; - Clay_LayoutConfig sidebarButtonLayout = { - .sizing = { .width = CLAY_SIZING_GROW(0) }, - .padding = CLAY_PADDING_ALL(16) - }; - - if (i == selectedDocumentIndex) { - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - CLAY_RECTANGLE({ - .color = { 120, 120, 120, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(8), - }) - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } else { - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - Clay_OnHover(HandleSidebarInteraction, i), - Clay_Hovered() - ? CLAY_RECTANGLE({ - .color = { 120, 120, 120, 120 }, - .cornerRadius = CLAY_CORNER_RADIUS(8) - }) - : 0 - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } - } - } - - CLAY( - CLAY_ID("MainContent"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_SCROLL({ .vertical = true }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childGap = 16, - .padding = CLAY_PADDING_ALL(16), - .sizing = layoutExpand - }) - ) { - Document selectedDocument = documents.documents[selectedDocumentIndex]; - CLAY_TEXT(selectedDocument.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - CLAY_TEXT(selectedDocument.contents, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - } - } - } - - Clay_RenderCommandArray renderCommands = Clay_EndLayout(); + Clay_RenderCommandArray renderCommands = ClayVideoDemo_CreateLayout(&data); BeginDrawing(); ClearBackground(BLACK); - Clay_Raylib_Render(renderCommands); + Clay_Raylib_Render(renderCommands, fonts); EndDrawing(); } } diff --git a/examples/raylib-multi-context/CMakeLists.txt b/examples/raylib-multi-context/CMakeLists.txt index 9179ec1..24853b5 100644 --- a/examples/raylib-multi-context/CMakeLists.txt +++ b/examples/raylib-multi-context/CMakeLists.txt @@ -26,7 +26,7 @@ target_include_directories(clay_examples_raylib_multi_context PUBLIC .) target_link_libraries(clay_examples_raylib_multi_context PUBLIC raylib) set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") -set(CMAKE_C_FLAGS_RELEASE "-O3") +set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") add_custom_command( TARGET clay_examples_raylib_multi_context POST_BUILD diff --git a/examples/raylib-multi-context/main.c b/examples/raylib-multi-context/main.c index 1d3925a..b2163ba 100644 --- a/examples/raylib-multi-context/main.c +++ b/examples/raylib-multi-context/main.c @@ -1,87 +1,13 @@ #define CLAY_IMPLEMENTATION #include "../../clay.h" #include "../../renderers/raylib/clay_renderer_raylib.c" +#include "../shared-layouts/clay-video-demo.c" -const int FONT_ID_BODY_16 = 0; -Clay_Color COLOR_WHITE = { 255, 255, 255, 255}; - -void RenderHeaderButton(Clay_String text) { - CLAY( - CLAY_LAYOUT({ .padding = { 16, 16, 8, 8 }}), - CLAY_RECTANGLE({ - .color = { 140, 140, 140, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(5) - }) - ) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -void RenderDropdownMenuItem(Clay_String text) { - CLAY(CLAY_LAYOUT({ .padding = CLAY_PADDING_ALL(16)})) { - CLAY_TEXT(text, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 16, - .textColor = { 255, 255, 255, 255 } - })); - } -} - -typedef struct { - Clay_String title; - Clay_String contents; -} Document; - -typedef struct { - Document *documents; - int32_t length; -} DocumentArray; - -DocumentArray documents = { - .documents = NULL, // TODO figure out if it's possible to const init this list - .length = 5 -}; - -int32_t selectedDocumentIndexTop = 0; -int32_t selectedDocumentIndexBottom = 0; - -typedef struct { - int32_t requestedDocumentIndex; - int32_t* selectedDocumentIndex; -} SidebarClickData; - -void HandleSidebarInteraction( - Clay_ElementId elementId, - Clay_PointerData pointerData, - intptr_t userData -) { - SidebarClickData *clickData = (SidebarClickData*)userData; - // If this button was clicked - if (pointerData.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) { - if (clickData->requestedDocumentIndex >= 0 && clickData->requestedDocumentIndex < documents.length) { - // Select the corresponding document - *clickData->selectedDocumentIndex = clickData->requestedDocumentIndex; - } - } -} - -// This function is new since the video was published void HandleClayErrors(Clay_ErrorData errorData) { printf("%s", errorData.errorText.chars); } -typedef struct { - intptr_t next; - intptr_t memory; -} Arena; - -Arena frameArena = {0}; - -Clay_RenderCommandArray CreateLayout(Clay_Context* context, float yOffset, int32_t* documentIndex) { +Clay_RenderCommandArray CreateLayout(Clay_Context* context, ClayVideoDemo_Data *data) { Clay_SetCurrentContext(context); Clay_SetDebugModeEnabled(true); // Run once per frame @@ -89,141 +15,22 @@ Clay_RenderCommandArray CreateLayout(Clay_Context* context, float yOffset, int32 .width = GetScreenWidth(), .height = GetScreenHeight() / 2 }); - Vector2 mousePosition = GetMousePosition(); - mousePosition.y -= yOffset; + mousePosition.y -= data->yOffset; Vector2 scrollDelta = GetMouseWheelMoveV(); Clay_SetPointerState( - (Clay_Vector2) { mousePosition.x, mousePosition.y }, - IsMouseButtonDown(0) + (Clay_Vector2) { mousePosition.x, mousePosition.y }, + IsMouseButtonDown(0) ); Clay_UpdateScrollContainers( - true, - (Clay_Vector2) { scrollDelta.x, scrollDelta.y }, - GetFrameTime() + true, + (Clay_Vector2) { scrollDelta.x, scrollDelta.y }, + GetFrameTime() ); - - Clay_Sizing layoutExpand = { - .width = CLAY_SIZING_GROW(0), - .height = CLAY_SIZING_GROW(0) - }; - - Clay_RectangleElementConfig contentBackgroundConfig = { - .color = { 90, 90, 90, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(8) - }; - - Clay_BeginLayout(); - // Build UI here - CLAY( - CLAY_ID("OuterContainer"), - CLAY_RECTANGLE({ .color = { 43, 41, 51, 255 } }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .sizing = layoutExpand, - .padding = CLAY_PADDING_ALL(16), - .childGap = 16 - }) - ) { - CLAY( - CLAY_ID("LowerContent"), - CLAY_LAYOUT({ .sizing = layoutExpand, .childGap = 16 }) - ) { - CLAY( - CLAY_ID("Sidebar"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .padding = CLAY_PADDING_ALL(16), - .childGap = 8, - .sizing = { - .width = CLAY_SIZING_FIXED(250), - .height = CLAY_SIZING_GROW(0) - } - }) - ) { - for (int i = 0; i < documents.length; i++) { - Document document = documents.documents[i]; - Clay_LayoutConfig sidebarButtonLayout = { - .sizing = { .width = CLAY_SIZING_GROW(0) }, - .padding = CLAY_PADDING_ALL(16) - }; - - if (i == *documentIndex) { - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - CLAY_RECTANGLE({ - .color = { 120, 120, 120, 255 }, - .cornerRadius = CLAY_CORNER_RADIUS(8), - }) - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } else { - SidebarClickData *clickData = (SidebarClickData *)frameArena.next; - *clickData = (SidebarClickData) { .requestedDocumentIndex = i, .selectedDocumentIndex = documentIndex }; - frameArena.next += sizeof(SidebarClickData); - CLAY( - CLAY_LAYOUT(sidebarButtonLayout), - Clay_OnHover(HandleSidebarInteraction, (intptr_t)clickData), - Clay_Hovered() - ? CLAY_RECTANGLE({ - .color = { 120, 120, 120, 120 }, - .cornerRadius = CLAY_CORNER_RADIUS(8) - }) - : (void)0 - ) { - CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 20, - .textColor = { 255, 255, 255, 255 } - })); - } - } - } - } - - CLAY( - CLAY_ID("MainContent"), - CLAY_RECTANGLE(contentBackgroundConfig), - CLAY_SCROLL({ .vertical = true }), - CLAY_LAYOUT({ - .layoutDirection = CLAY_TOP_TO_BOTTOM, - .childGap = 16, - .padding = CLAY_PADDING_ALL(16), - .sizing = layoutExpand - }) - ) { - Document selectedDocument = documents.documents[*documentIndex]; - CLAY_TEXT(selectedDocument.title, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - CLAY_TEXT(selectedDocument.contents, CLAY_TEXT_CONFIG({ - .fontId = FONT_ID_BODY_16, - .fontSize = 24, - .textColor = COLOR_WHITE - })); - } - } - } - - Clay_RenderCommandArray renderCommands = Clay_EndLayout(); - for (int i = 0; i < renderCommands.length; ++i) { - Clay_RenderCommandArray_Get(&renderCommands,i)->boundingBox.y += yOffset; - } - return renderCommands; + return ClayVideoDemo_CreateLayout(data); } - int main(void) { - frameArena = (Arena) { .memory = (intptr_t)malloc(1024) }; - frameArena.next = frameArena.memory; documents.documents = (Document[]) { { .title = CLAY_STRING("Squirrels"), .contents = CLAY_STRING("The Secret Life of Squirrels: Nature's Clever Acrobats\n""Squirrels are often overlooked creatures, dismissed as mere park inhabitants or backyard nuisances. Yet, beneath their fluffy tails and twitching noses lies an intricate world of cunning, agility, and survival tactics that are nothing short of fascinating. As one of the most common mammals in North America, squirrels have adapted to a wide range of environments from bustling urban centers to tranquil forests and have developed a variety of unique behaviors that continue to intrigue scientists and nature enthusiasts alike.\n""\n""Master Tree Climbers\n""At the heart of a squirrel's skill set is its impressive ability to navigate trees with ease. Whether they're darting from branch to branch or leaping across wide gaps, squirrels possess an innate talent for acrobatics. Their powerful hind legs, which are longer than their front legs, give them remarkable jumping power. With a tail that acts as a counterbalance, squirrels can leap distances of up to ten times the length of their body, making them some of the best aerial acrobats in the animal kingdom.\n""But it's not just their agility that makes them exceptional climbers. Squirrels' sharp, curved claws allow them to grip tree bark with precision, while the soft pads on their feet provide traction on slippery surfaces. Their ability to run at high speeds and scale vertical trunks with ease is a testament to the evolutionary adaptations that have made them so successful in their arboreal habitats.\n""\n""Food Hoarders Extraordinaire\n""Squirrels are often seen frantically gathering nuts, seeds, and even fungi in preparation for winter. While this behavior may seem like instinctual hoarding, it is actually a survival strategy that has been honed over millions of years. Known as \"scatter hoarding,\" squirrels store their food in a variety of hidden locations, often burying it deep in the soil or stashing it in hollowed-out tree trunks.\n""Interestingly, squirrels have an incredible memory for the locations of their caches. Research has shown that they can remember thousands of hiding spots, often returning to them months later when food is scarce. However, they don't always recover every stash some forgotten caches eventually sprout into new trees, contributing to forest regeneration. This unintentional role as forest gardeners highlights the ecological importance of squirrels in their ecosystems.\n""\n""The Great Squirrel Debate: Urban vs. Wild\n""While squirrels are most commonly associated with rural or wooded areas, their adaptability has allowed them to thrive in urban environments as well. In cities, squirrels have become adept at finding food sources in places like parks, streets, and even garbage cans. However, their urban counterparts face unique challenges, including traffic, predators, and the lack of natural shelters. Despite these obstacles, squirrels in urban areas are often observed using human infrastructure such as buildings, bridges, and power lines as highways for their acrobatic escapades.\n""There is, however, a growing concern regarding the impact of urban life on squirrel populations. Pollution, deforestation, and the loss of natural habitats are making it more difficult for squirrels to find adequate food and shelter. As a result, conservationists are focusing on creating squirrel-friendly spaces within cities, with the goal of ensuring these resourceful creatures continue to thrive in both rural and urban landscapes.\n""\n""A Symbol of Resilience\n""In many cultures, squirrels are symbols of resourcefulness, adaptability, and preparation. Their ability to thrive in a variety of environments while navigating challenges with agility and grace serves as a reminder of the resilience inherent in nature. Whether you encounter them in a quiet forest, a city park, or your own backyard, squirrels are creatures that never fail to amaze with their endless energy and ingenuity.\n""In the end, squirrels may be small, but they are mighty in their ability to survive and thrive in a world that is constantly changing. So next time you spot one hopping across a branch or darting across your lawn, take a moment to appreciate the remarkable acrobat at work a true marvel of the natural world.\n") }, { .title = CLAY_STRING("Lorem Ipsum"), .contents = CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.") }, @@ -233,6 +40,10 @@ int main(void) { }; Clay_Raylib_Initialize(1024, 768, "Introducing Clay Demo", FLAG_WINDOW_RESIZABLE | FLAG_WINDOW_HIGHDPI | FLAG_MSAA_4X_HINT | FLAG_VSYNC_HINT); // Extra parameters to this function are new since the video was published + Font fonts[1]; + fonts[FONT_ID_BODY_16] = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400); + SetTextureFilter(fonts[FONT_ID_BODY_16].texture, TEXTURE_FILTER_BILINEAR); + uint64_t clayRequiredMemory = Clay_MinMemorySize(); Clay_Arena clayMemoryTop = Clay_CreateArenaWithCapacityAndMemory(clayRequiredMemory, malloc(clayRequiredMemory)); @@ -240,28 +51,25 @@ int main(void) { .width = GetScreenWidth(), .height = GetScreenHeight() / 2 }, (Clay_ErrorHandler) { HandleClayErrors }); // This final argument is new since the video was published + ClayVideoDemo_Data dataTop = ClayVideoDemo_Initialize(); + Clay_SetMeasureTextFunction(Raylib_MeasureText, fonts); Clay_Arena clayMemoryBottom = Clay_CreateArenaWithCapacityAndMemory(clayRequiredMemory, malloc(clayRequiredMemory)); Clay_Context *clayContextBottom = Clay_Initialize(clayMemoryBottom, (Clay_Dimensions) { .width = GetScreenWidth(), .height = GetScreenHeight() / 2 }, (Clay_ErrorHandler) { HandleClayErrors }); // This final argument is new since the video was published - - Clay_SetMeasureTextFunction(Raylib_MeasureText, 0); - Raylib_fonts[FONT_ID_BODY_16] = (Raylib_Font) { - .font = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400), - .fontId = FONT_ID_BODY_16 - }; - SetTextureFilter(Raylib_fonts[FONT_ID_BODY_16].font.texture, TEXTURE_FILTER_BILINEAR); + ClayVideoDemo_Data dataBottom = ClayVideoDemo_Initialize(); + Clay_SetMeasureTextFunction(Raylib_MeasureText, fonts); while (!WindowShouldClose()) { - frameArena.next = frameArena.memory; - Clay_RenderCommandArray renderCommandsTop = CreateLayout(clayContextTop, 0, &selectedDocumentIndexTop); - Clay_RenderCommandArray renderCommandsBottom = CreateLayout(clayContextBottom, GetScreenHeight() / 2, &selectedDocumentIndexBottom); + dataBottom.yOffset = GetScreenHeight() / 2; + Clay_RenderCommandArray renderCommandsTop = CreateLayout(clayContextTop, &dataTop); + Clay_RenderCommandArray renderCommandsBottom = CreateLayout(clayContextBottom, &dataBottom); BeginDrawing(); ClearBackground(BLACK); - Clay_Raylib_Render(renderCommandsTop); - Clay_Raylib_Render(renderCommandsBottom); + Clay_Raylib_Render(renderCommandsTop, fonts); + Clay_Raylib_Render(renderCommandsBottom, fonts); EndDrawing(); } } diff --git a/examples/raylib-sidebar-scrolling-container/CMakeLists.txt b/examples/raylib-sidebar-scrolling-container/CMakeLists.txt index 94ee26b..a8072f6 100644 --- a/examples/raylib-sidebar-scrolling-container/CMakeLists.txt +++ b/examples/raylib-sidebar-scrolling-container/CMakeLists.txt @@ -25,10 +25,10 @@ target_include_directories(clay_examples_raylib_sidebar_scrolling_container PUBL target_link_libraries(clay_examples_raylib_sidebar_scrolling_container PUBLIC raylib) if(MSVC) - set(CMAKE_C_FLAGS_DEBUG "/D CLAY_DEBUG") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") else() set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") - set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") endif() add_custom_command( diff --git a/examples/raylib-sidebar-scrolling-container/main.c b/examples/raylib-sidebar-scrolling-container/main.c index 1b486d7..b1b75c7 100644 --- a/examples/raylib-sidebar-scrolling-container/main.c +++ b/examples/raylib-sidebar-scrolling-container/main.c @@ -19,66 +19,71 @@ void HandleHeaderButtonInteraction(Clay_ElementId elementId, Clay_PointerData po } } +Clay_ElementDeclaration HeaderButtonStyle(bool hovered) { + return (Clay_ElementDeclaration) { + .layout = {.padding = {16, 16, 8, 8}}, + .backgroundColor = hovered ? COLOR_ORANGE : COLOR_BLUE, + }; +} + // Examples of re-usable "Components" void RenderHeaderButton(Clay_String text) { - CLAY(CLAY_LAYOUT({ .padding = {16, 16, 8, 8} }), - CLAY_RECTANGLE({ .color = Clay_Hovered() ? COLOR_BLUE : COLOR_ORANGE }), - Clay_OnHover(HandleHeaderButtonInteraction, 1)) { + CLAY(HeaderButtonStyle(Clay_Hovered())) { CLAY_TEXT(text, CLAY_TEXT_CONFIG(headerTextConfig)); } } Clay_LayoutConfig dropdownTextItemLayout = { .padding = {8, 8, 4, 4} }; -Clay_RectangleElementConfig dropdownRectangleConfig = { .color = {180, 180, 180, 255} }; Clay_TextElementConfig dropdownTextElementConfig = { .fontSize = 24, .textColor = {255,255,255,255} }; void RenderDropdownTextItem(int index) { - CLAY(CLAY_IDI("ScrollContainerItem", index), CLAY_LAYOUT(dropdownTextItemLayout), CLAY_RECTANGLE(dropdownRectangleConfig)) { + CLAY({ .layout = dropdownTextItemLayout, .backgroundColor = {180, 180, 180, 255} }) { CLAY_TEXT(CLAY_STRING("I'm a text field in a scroll container."), &dropdownTextElementConfig); } } -Clay_RenderCommandArray CreateLayout() { +Clay_RenderCommandArray CreateLayout(void) { Clay_BeginLayout(); - CLAY(CLAY_ID("OuterContainer"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) }, .padding = { 16, 16, 16, 16 }, .childGap = 16 }), CLAY_RECTANGLE({ .color = {200, 200, 200, 255} })) { - CLAY(CLAY_ID("SideBar"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_GROW(0) }, .padding = {16, 16, 16, 16 }, .childGap = 16 }), CLAY_RECTANGLE({ .color = {150, 150, 255, 255} })) { - CLAY(CLAY_ID("ProfilePictureOuter"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = { 8, 8, 8, 8 }, .childGap = 8, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }), CLAY_RECTANGLE({ .color = {130, 130, 255, 255} })) { - CLAY(CLAY_ID("ProfilePicture"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) } }), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {60, 60} })) {} + CLAY({ .id = CLAY_ID("OuterContainer"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) }, .padding = { 16, 16, 16, 16 }, .childGap = 16 }, .backgroundColor = {200, 200, 200, 255} }) { + CLAY({ .id = CLAY_ID("SideBar"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_GROW(0) }, .padding = {16, 16, 16, 16 }, .childGap = 16 }, .backgroundColor = {150, 150, 255, 255} }) { + CLAY({ .id = CLAY_ID("ProfilePictureOuter"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) }, .padding = { 8, 8, 8, 8 }, .childGap = 8, .childAlignment = { .y = CLAY_ALIGN_Y_CENTER } }, .backgroundColor = {130, 130, 255, 255} }) { + CLAY({ .id = CLAY_ID("ProfilePicture"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) } }, .image = { .imageData = &profilePicture, .sourceDimensions = {60, 60} }}) {} CLAY_TEXT(profileText, CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {0, 0, 0, 255} })); } - CLAY(CLAY_ID("SidebarBlob1"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}), CLAY_RECTANGLE({ .color = {110, 110, 255, 255} })) {} - CLAY(CLAY_ID("SidebarBlob2"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}), CLAY_RECTANGLE({ .color = {110, 110, 255, 255} })) {} - CLAY(CLAY_ID("SidebarBlob3"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}), CLAY_RECTANGLE({ .color = {110, 110, 255, 255} })) {} - CLAY(CLAY_ID("SidebarBlob4"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}), CLAY_RECTANGLE({ .color = {110, 110, 255, 255} })) {} + CLAY({ .id = CLAY_ID("SidebarBlob1"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}, .backgroundColor = {110, 110, 255, 255} }) {} + CLAY({ .id = CLAY_ID("SidebarBlob2"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}, .backgroundColor = {110, 110, 255, 255} }) {} + CLAY({ .id = CLAY_ID("SidebarBlob3"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}, .backgroundColor = {110, 110, 255, 255} }) {} + CLAY({ .id = CLAY_ID("SidebarBlob4"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_FIXED(50) }}, .backgroundColor = {110, 110, 255, 255} }) {} } - CLAY(CLAY_ID("RightPanel"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) }, .childGap = 16 })) { - CLAY(CLAY_ID("HeaderBar"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { .x = CLAY_ALIGN_X_RIGHT }, .padding = {8, 8, 8, 8 }, .childGap = 8 }), CLAY_RECTANGLE({ .color = {180, 180, 180, 255} })) { + CLAY({ .id = CLAY_ID("RightPanel"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .sizing = { .width = CLAY_SIZING_GROW(0), .height = CLAY_SIZING_GROW(0) }, .childGap = 16 }}) { + CLAY({ .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { .x = CLAY_ALIGN_X_RIGHT }, .padding = {8, 8, 8, 8 }, .childGap = 8 }, .backgroundColor = {180, 180, 180, 255} }) { RenderHeaderButton(CLAY_STRING("Header Item 1")); RenderHeaderButton(CLAY_STRING("Header Item 2")); RenderHeaderButton(CLAY_STRING("Header Item 3")); } - CLAY(CLAY_ID("MainContent"), - CLAY_SCROLL({ .vertical = true }), - CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM, .padding = {16, 16, 16, 16}, .childGap = 16, .sizing = { CLAY_SIZING_GROW(0) } }), - CLAY_RECTANGLE({ .color = {200, 200, 255, 255} })) + CLAY({.id = CLAY_ID("MainContent"), + .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM, .padding = {16, 16, 16, 16}, .childGap = 16, .sizing = { CLAY_SIZING_GROW(0) } }, + .backgroundColor = {200, 200, 255, 255}, + .scroll = { .vertical = true }, + }) { - CLAY(CLAY_ID("FloatingContainer"), - CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300) }, .padding = { 16, 16, 16, 16 }}), - CLAY_FLOATING({ .zIndex = 1, .attachment = { CLAY_ATTACH_POINT_CENTER_TOP, CLAY_ATTACH_POINT_CENTER_TOP }, .offset = {0, 0} }), - CLAY_BORDER_OUTSIDE({ .color = {80, 80, 80, 255}, .width = 2 }), - CLAY_RECTANGLE({ .color = {140,80, 200, 200 }}) - ) { + CLAY({ .id = CLAY_ID("FloatingContainer"), + .layout = { .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300) }, .padding = { 16, 16, 16, 16 }}, + .backgroundColor = { 140, 80, 200, 200 }, + .floating = { .attachTo = CLAY_ATTACH_TO_PARENT, .zIndex = 1, .attachPoints = { CLAY_ATTACH_POINT_CENTER_TOP, CLAY_ATTACH_POINT_CENTER_TOP }, .offset = {0, 0} }, + .border = { .width = CLAY_BORDER_OUTSIDE(2), .color = {80, 80, 80, 255} }, + }) { CLAY_TEXT(CLAY_STRING("I'm an inline floating container."), CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {255,255,255,255} })); } CLAY_TEXT(CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt."), CLAY_TEXT_CONFIG({ .fontId = FONT_ID_BODY_24, .fontSize = 24, .textColor = {0,0,0,255} })); - CLAY(CLAY_ID("Photos2"), CLAY_LAYOUT({ .childGap = 16, .padding = { 16, 16, 16, 16 }}), CLAY_RECTANGLE({ .color = {180, 180, 220, 255} })) { - CLAY(CLAY_ID("Picture4"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {120, 120} })) {} - CLAY(CLAY_ID("Picture5"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {120, 120} })) {} - CLAY(CLAY_ID("Picture6"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {120, 120} })) {} + CLAY({ .id = CLAY_ID("Photos2"), .layout = { .childGap = 16, .padding = { 16, 16, 16, 16 }}, .backgroundColor = {180, 180, 220, 255} }) { + CLAY({ .id = CLAY_ID("Picture4"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {120, 120} }}) {} + CLAY({ .id = CLAY_ID("Picture5"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {120, 120} }}) {} + CLAY({ .id = CLAY_ID("Picture6"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {120, 120} }}) {} } CLAY_TEXT(CLAY_STRING("Faucibus purus in massa tempor nec. Nec ullamcorper sit amet risus nullam eget felis eget nunc. Diam vulputate ut pharetra sit amet aliquam id diam. Lacus suspendisse faucibus interdum posuere lorem. A diam sollicitudin tempor id. Amet massa vitae tortor condimentum lacinia. Aliquet nibh praesent tristique magna."), @@ -87,13 +92,13 @@ Clay_RenderCommandArray CreateLayout() { CLAY_TEXT(CLAY_STRING("Suspendisse in est ante in nibh. Amet venenatis urna cursus eget nunc scelerisque viverra. Elementum sagittis vitae et leo duis ut diam quam nulla. Enim nulla aliquet porttitor lacus. Pellentesque habitant morbi tristique senectus et. Facilisi nullam vehicula ipsum a arcu cursus vitae.\nSem fringilla ut morbi tincidunt. Euismod quis viverra nibh cras pulvinar mattis nunc sed. Velit sed ullamcorper morbi tincidunt ornare massa. Varius quam quisque id diam vel quam. Nulla pellentesque dignissim enim sit amet venenatis. Enim lobortis scelerisque fermentum dui faucibus in. Pretium viverra suspendisse potenti nullam ac tortor vitae. Lectus vestibulum mattis ullamcorper velit sed. Eget mauris pharetra et ultrices neque ornare aenean euismod elementum. Habitant morbi tristique senectus et. Integer vitae justo eget magna fermentum iaculis eu. Semper quis lectus nulla at volutpat diam. Enim praesent elementum facilisis leo. Massa vitae tortor condimentum lacinia quis vel."), CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {0,0,0,255} })); - CLAY(CLAY_ID("Photos"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { .x = CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER }, .childGap = 16, .padding = {16, 16, 16, 16} }), CLAY_RECTANGLE({ .color = {180, 180, 220, 255} })) { - CLAY(CLAY_ID("Picture2"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {120, 120} })) {} - CLAY(CLAY_ID("Picture1"), CLAY_LAYOUT({ .childAlignment = { .x = CLAY_ALIGN_X_CENTER }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .padding = {8, 8, 8, 8} }), CLAY_RECTANGLE({ .color = {170, 170, 220, 255} })) { - CLAY(CLAY_ID("ProfilePicture2"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {60, 60} })) {} + CLAY({ .id = CLAY_ID("Photos"), .layout = { .sizing = { .width = CLAY_SIZING_GROW(0) }, .childAlignment = { .x = CLAY_ALIGN_X_CENTER, .y = CLAY_ALIGN_Y_CENTER }, .childGap = 16, .padding = {16, 16, 16, 16} }, .backgroundColor = {180, 180, 220, 255} }) { + CLAY({ .id = CLAY_ID("Picture2"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {120, 120} }}) {} + CLAY({ .id = CLAY_ID("Picture1"), .layout = { .childAlignment = { .x = CLAY_ALIGN_X_CENTER }, .layoutDirection = CLAY_TOP_TO_BOTTOM, .padding = {8, 8, 8, 8} }, .backgroundColor = {170, 170, 220, 255} }) { + CLAY({ .id = CLAY_ID("ProfilePicture2"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(60), .height = CLAY_SIZING_FIXED(60) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {60, 60} }}) {} CLAY_TEXT(CLAY_STRING("Image caption below"), CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {0,0,0,255} })); } - CLAY(CLAY_ID("Picture3"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}), CLAY_IMAGE({ .imageData = &profilePicture, .sourceDimensions = {120, 120} })) {} + CLAY({ .id = CLAY_ID("Picture3"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(120), .height = CLAY_SIZING_FIXED(120) }}, .image = { .imageData = &profilePicture, .sourceDimensions = {120, 120} }}) {} } CLAY_TEXT(CLAY_STRING("Amet cursus sit amet dictum sit amet justo donec. Et malesuada fames ac turpis egestas maecenas. A lacus vestibulum sed arcu non odio euismod lacinia. Gravida neque convallis a cras. Dui nunc mattis enim ut tellus elementum sagittis vitae et. Orci sagittis eu volutpat odio facilisis mauris. Neque gravida in fermentum et sollicitudin ac orci. Ultrices dui sapien eget mi proin sed libero. Euismod quis viverra nibh cras pulvinar mattis. Diam volutpat commodo sed egestas egestas. In fermentum posuere urna nec tincidunt praesent semper. Integer eget aliquet nibh praesent tristique magna.\nId cursus metus aliquam eleifend mi in. Sed pulvinar proin gravida hendrerit lectus a. Etiam tempor orci eu lobortis elementum nibh tellus. Nullam vehicula ipsum a arcu cursus vitae. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus. Condimentum lacinia quis vel eros donec ac odio. Mattis pellentesque id nibh tortor id aliquet lectus. Turpis egestas integer eget aliquet nibh praesent tristique. Porttitor massa id neque aliquam vestibulum morbi. Mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien et. Nunc scelerisque viverra mauris in aliquam sem fringilla. Suspendisse ultrices gravida dictum fusce ut placerat orci nulla.\nLacus laoreet non curabitur gravida arcu ac tortor dignissim. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Tristique senectus et netus et malesuada fames ac. Nunc aliquet bibendum enim facilisis gravida. Egestas maecenas pharetra convallis posuere morbi leo urna molestie. Sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum curabitur. Ac turpis egestas maecenas pharetra convallis posuere morbi leo urna. Viverra vitae congue eu consequat. Aliquet enim tortor at auctor urna. Ornare massa eget egestas purus viverra accumsan in nisl nisi. Elit pellentesque habitant morbi tristique senectus et netus et malesuada.\nSuspendisse ultrices gravida dictum fusce ut placerat orci nulla pellentesque. Lobortis feugiat vivamus at augue eget arcu. Vitae justo eget magna fermentum iaculis eu. Gravida rutrum quisque non tellus orci. Ipsum faucibus vitae aliquet nec. Nullam non nisi est sit amet. Nunc consequat interdum varius sit amet mattis vulputate enim. Sem fringilla ut morbi tincidunt augue interdum. Vitae purus faucibus ornare suspendisse. Massa tincidunt nunc pulvinar sapien et. Fringilla ut morbi tincidunt augue interdum velit euismod in. Donec massa sapien faucibus et. Est placerat in egestas erat imperdiet. Gravida rutrum quisque non tellus. Morbi non arcu risus quis varius quam quisque id diam. Habitant morbi tristique senectus et netus et malesuada fames ac. Eget lorem dolor sed viverra.\nOrnare massa eget egestas purus viverra. Varius vel pharetra vel turpis nunc eget lorem. Consectetur purus ut faucibus pulvinar elementum. Placerat in egestas erat imperdiet sed euismod nisi. Interdum velit euismod in pellentesque massa placerat duis ultricies lacus. Aliquam nulla facilisi cras fermentum odio eu. Est pellentesque elit ullamcorper dignissim cras tincidunt. Nunc sed id semper risus in hendrerit gravida rutrum. A pellentesque sit amet porttitor eget dolor morbi. Pellentesque habitant morbi tristique senectus et netus et malesuada fames. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper. Sed id semper risus in hendrerit gravida. Tincidunt praesent semper feugiat nibh. Aliquet lectus proin nibh nisl condimentum id venenatis a. Enim sit amet venenatis urna cursus eget. In egestas erat imperdiet sed euismod nisi porta lorem mollis. Lacinia quis vel eros donec ac odio tempor orci. Donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu. Erat pellentesque adipiscing commodo elit at.\nEgestas sed sed risus pretium quam vulputate. Vitae congue mauris rhoncus aenean vel elit scelerisque mauris pellentesque. Aliquam malesuada bibendum arcu vitae elementum. Congue mauris rhoncus aenean vel elit scelerisque mauris. Pellentesque dignissim enim sit amet venenatis urna cursus. Et malesuada fames ac turpis egestas sed tempus urna. Vel fringilla est ullamcorper eget nulla facilisi etiam dignissim. Nibh cras pulvinar mattis nunc sed blandit libero. Fringilla est ullamcorper eget nulla facilisi etiam dignissim. Aenean euismod elementum nisi quis eleifend quam adipiscing vitae proin. Mauris pharetra et ultrices neque ornare aenean euismod elementum. Ornare quam viverra orci sagittis eu. Odio ut sem nulla pharetra diam sit amet nisl suscipit. Ornare lectus sit amet est. Ullamcorper sit amet risus nullam eget. Tincidunt lobortis feugiat vivamus at augue eget arcu dictum.\nUrna nec tincidunt praesent semper feugiat nibh. Ut venenatis tellus in metus vulputate eu scelerisque felis. Cursus risus at ultrices mi tempus. In pellentesque massa placerat duis ultricies lacus sed turpis. Platea dictumst quisque sagittis purus. Cras adipiscing enim eu turpis egestas. Egestas sed tempus urna et pharetra pharetra. Netus et malesuada fames ac turpis egestas integer eget aliquet. Ac turpis egestas sed tempus. Sed lectus vestibulum mattis ullamcorper velit sed. Ante metus dictum at tempor commodo ullamcorper a. Augue neque gravida in fermentum et sollicitudin ac. Praesent semper feugiat nibh sed pulvinar proin gravida. Metus aliquam eleifend mi in nulla posuere sollicitudin aliquam ultrices. Neque gravida in fermentum et sollicitudin ac orci phasellus egestas.\nRidiculus mus mauris vitae ultricies. Morbi quis commodo odio aenean. Duis ultricies lacus sed turpis. Non pulvinar neque laoreet suspendisse interdum consectetur. Scelerisque eleifend donec pretium vulputate sapien nec sagittis aliquam. Volutpat est velit egestas dui id ornare arcu odio ut. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus est. Vestibulum lectus mauris ultrices eros. Sed blandit libero volutpat sed cras ornare. Id leo in vitae turpis massa sed elementum tempus. Gravida dictum fusce ut placerat orci nulla pellentesque. Pretium quam vulputate dignissim suspendisse in. Nisl suscipit adipiscing bibendum est ultricies integer quis auctor. Risus viverra adipiscing at in tellus. Turpis nunc eget lorem dolor sed viverra ipsum. Senectus et netus et malesuada fames ac. Habitasse platea dictumst vestibulum rhoncus est. Nunc sed id semper risus in hendrerit gravida. Felis eget velit aliquet sagittis id. Eget felis eget nunc lobortis.\nMaecenas pharetra convallis posuere morbi leo. Maecenas volutpat blandit aliquam etiam. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Pulvinar mattis nunc sed blandit libero volutpat sed. Feugiat in ante metus dictum at tempor commodo ullamcorper. Vel pharetra vel turpis nunc eget lorem dolor. Est placerat in egestas erat imperdiet sed euismod. Quisque non tellus orci ac auctor augue mauris augue. Placerat vestibulum lectus mauris ultrices eros in cursus turpis. Enim nunc faucibus a pellentesque sit. Adipiscing vitae proin sagittis nisl. Iaculis at erat pellentesque adipiscing commodo elit at imperdiet. Aliquam sem fringilla ut morbi.\nArcu odio ut sem nulla pharetra diam sit amet nisl. Non diam phasellus vestibulum lorem sed. At erat pellentesque adipiscing commodo elit at. Lacus luctus accumsan tortor posuere ac ut consequat. Et malesuada fames ac turpis egestas integer. Tristique magna sit amet purus. A condimentum vitae sapien pellentesque habitant. Quis varius quam quisque id diam vel quam. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Augue interdum velit euismod in pellentesque massa. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Vulputate eu scelerisque felis imperdiet. Nibh tellus molestie nunc non blandit massa. Velit euismod in pellentesque massa placerat. Sed cras ornare arcu dui. Ut sem viverra aliquet eget sit. Eu lobortis elementum nibh tellus molestie nunc non. Blandit libero volutpat sed cras ornare arcu dui vivamus.\nSit amet aliquam id diam maecenas. Amet risus nullam eget felis eget nunc lobortis mattis aliquam. Magna sit amet purus gravida. Egestas purus viverra accumsan in nisl nisi. Leo duis ut diam quam. Ante metus dictum at tempor commodo ullamcorper. Ac turpis egestas integer eget. Fames ac turpis egestas integer eget aliquet nibh. Sem integer vitae justo eget magna fermentum. Semper auctor neque vitae tempus quam pellentesque nec nam aliquam. Vestibulum mattis ullamcorper velit sed. Consectetur adipiscing elit duis tristique sollicitudin nibh. Massa id neque aliquam vestibulum morbi blandit cursus risus.\nCursus sit amet dictum sit amet justo donec enim diam. Egestas erat imperdiet sed euismod. Nullam vehicula ipsum a arcu cursus vitae congue mauris. Habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Duis ultricies lacus sed turpis tincidunt id aliquet risus feugiat. Faucibus ornare suspendisse sed nisi lacus sed viverra. Pretium fusce id velit ut tortor pretium viverra. Fermentum odio eu feugiat pretium nibh ipsum consequat nisl vel. Senectus et netus et malesuada. Tellus pellentesque eu tincidunt tortor aliquam. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Quis vel eros donec ac odio. Id interdum velit laoreet id donec ultrices tincidunt.\nMassa id neque aliquam vestibulum morbi blandit cursus risus at. Enim tortor at auctor urna nunc id cursus metus. Lorem ipsum dolor sit amet consectetur. At quis risus sed vulputate odio. Facilisis mauris sit amet massa vitae tortor condimentum lacinia quis. Et malesuada fames ac turpis egestas maecenas. Bibendum arcu vitae elementum curabitur vitae nunc sed velit dignissim. Viverra orci sagittis eu volutpat odio facilisis mauris. Adipiscing bibendum est ultricies integer quis auctor elit sed. Neque viverra justo nec ultrices dui sapien. Elementum nibh tellus molestie nunc non blandit massa enim. Euismod elementum nisi quis eleifend quam adipiscing vitae proin sagittis. Faucibus ornare suspendisse sed nisi. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Tristique senectus et netus et. Magnis dis parturient montes nascetur ridiculus mus.\nDolor magna eget est lorem ipsum dolor. Nibh sit amet commodo nulla. Donec pretium vulputate sapien nec sagittis aliquam malesuada. Cras adipiscing enim eu turpis egestas pretium. Cras ornare arcu dui vivamus arcu felis bibendum ut tristique. Mus mauris vitae ultricies leo integer. In nulla posuere sollicitudin aliquam ultrices sagittis orci. Quis hendrerit dolor magna eget. Nisl tincidunt eget nullam non. Vitae congue eu consequat ac felis donec et odio. Vivamus at augue eget arcu dictum varius duis at. Ornare quam viverra orci sagittis.\nErat nam at lectus urna duis convallis. Massa placerat duis ultricies lacus sed turpis tincidunt id aliquet. Est ullamcorper eget nulla facilisi etiam dignissim diam. Arcu vitae elementum curabitur vitae nunc sed velit dignissim sodales. Tortor vitae purus faucibus ornare suspendisse sed nisi lacus. Neque viverra justo nec ultrices dui sapien eget mi proin. Viverra accumsan in nisl nisi scelerisque eu ultrices. Consequat interdum varius sit amet mattis. In aliquam sem fringilla ut morbi. Eget arcu dictum varius duis at. Nulla aliquet porttitor lacus luctus accumsan tortor posuere. Arcu bibendum at varius vel pharetra vel turpis. Hac habitasse platea dictumst quisque sagittis purus sit amet. Sapien eget mi proin sed libero enim sed. Quam elementum pulvinar etiam non quam lacus suspendisse faucibus interdum. Semper viverra nam libero justo. Fusce ut placerat orci nulla pellentesque dignissim enim sit amet. Et malesuada fames ac turpis egestas maecenas pharetra convallis posuere.\nTurpis egestas sed tempus urna et pharetra pharetra massa. Gravida in fermentum et sollicitudin ac orci phasellus. Ornare suspendisse sed nisi lacus sed viverra tellus in. Fames ac turpis egestas maecenas pharetra convallis posuere. Mi proin sed libero enim sed faucibus turpis. Sit amet mauris commodo quis imperdiet massa tincidunt nunc. Ut etiam sit amet nisl purus in mollis nunc. Habitasse platea dictumst quisque sagittis purus sit amet volutpat consequat. Eget aliquet nibh praesent tristique magna. Sit amet est placerat in egestas erat. Commodo sed egestas egestas fringilla. Enim nulla aliquet porttitor lacus luctus accumsan tortor posuere ac. Et molestie ac feugiat sed lectus vestibulum mattis ullamcorper. Dignissim convallis aenean et tortor at risus viverra. Morbi blandit cursus risus at ultrices mi. Ac turpis egestas integer eget aliquet nibh praesent tristique magna.\nVolutpat sed cras ornare arcu dui. Egestas erat imperdiet sed euismod nisi porta lorem mollis aliquam. Viverra justo nec ultrices dui sapien. Amet risus nullam eget felis eget nunc lobortis. Metus aliquam eleifend mi in. Ut eu sem integer vitae. Auctor elit sed vulputate mi sit amet. Nisl nisi scelerisque eu ultrices. Dictum fusce ut placerat orci nulla. Pellentesque habitant morbi tristique senectus et. Auctor elit sed vulputate mi sit. Tincidunt arcu non sodales neque. Mi in nulla posuere sollicitudin aliquam. Morbi non arcu risus quis varius quam quisque id diam. Cras adipiscing enim eu turpis egestas pretium aenean pharetra magna. At auctor urna nunc id cursus metus aliquam. Mauris a diam maecenas sed enim ut sem viverra. Nunc scelerisque viverra mauris in. In iaculis nunc sed augue lacus viverra vitae congue eu. Volutpat blandit aliquam etiam erat velit scelerisque in dictum non."), @@ -101,14 +106,14 @@ Clay_RenderCommandArray CreateLayout() { } } - CLAY(CLAY_ID("Blob4Floating2"), CLAY_FLOATING({ .zIndex = 1, .parentId = Clay_GetElementId(CLAY_STRING("SidebarBlob4")).id })) { - CLAY(CLAY_ID("ScrollContainer"), CLAY_LAYOUT({ .sizing = { .height = CLAY_SIZING_FIXED(200) }, .childGap = 2 }), CLAY_SCROLL({ .vertical = true })) { - CLAY(CLAY_ID("FloatingContainer2"), CLAY_LAYOUT({ }), CLAY_FLOATING({ .zIndex = 1 })) { - CLAY(CLAY_ID("FloatingContainerInner"), CLAY_LAYOUT({ .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300) }, .padding = {16, 16, 16, 16} }), CLAY_RECTANGLE({ .color = {140,80, 200, 200} })) { + CLAY({ .id = CLAY_ID("Blob4Floating2"), .floating = { .attachTo = CLAY_ATTACH_TO_ELEMENT_WITH_ID, .zIndex = 1, .parentId = Clay_GetElementId(CLAY_STRING("SidebarBlob4")).id } }) { + CLAY({ .id = CLAY_ID("ScrollContainer"), .layout = { .sizing = { .height = CLAY_SIZING_FIXED(200) }, .childGap = 2 }, .scroll = { .vertical = true } }) { + CLAY({ .id = CLAY_ID("FloatingContainer2"), .floating = { .attachTo = CLAY_ATTACH_TO_PARENT, .zIndex = 1 } }) { + CLAY({ .id = CLAY_ID("FloatingContainerInner"), .layout = { .sizing = { .width = CLAY_SIZING_FIXED(300), .height = CLAY_SIZING_FIXED(300) }, .padding = {16, 16, 16, 16} }, .backgroundColor = {140,80, 200, 200} }) { CLAY_TEXT(CLAY_STRING("I'm an inline floating container."), CLAY_TEXT_CONFIG({ .fontSize = 24, .textColor = {255,255,255,255} })); } } - CLAY(CLAY_ID("ScrollContainerInner"), CLAY_LAYOUT({ .layoutDirection = CLAY_TOP_TO_BOTTOM }), CLAY_RECTANGLE({ .color = {160, 160, 160, 255} })) { + CLAY({ .id = CLAY_ID("ScrollContainerInner"), .layout = { .layoutDirection = CLAY_TOP_TO_BOTTOM }, .backgroundColor = {160, 160, 160, 255} }) { for (int i = 0; i < 100; i++) { RenderDropdownTextItem(i); } @@ -117,18 +122,20 @@ Clay_RenderCommandArray CreateLayout() { } Clay_ScrollContainerData scrollData = Clay_GetScrollContainerData(Clay_GetElementId(CLAY_STRING("MainContent"))); if (scrollData.found) { - CLAY(CLAY_ID("ScrollBar"), - CLAY_FLOATING({ + CLAY({ .id = CLAY_ID("ScrollBar"), + .floating = { + .attachTo = CLAY_ATTACH_TO_ELEMENT_WITH_ID, .offset = { .y = -(scrollData.scrollPosition->y / scrollData.contentDimensions.height) * scrollData.scrollContainerDimensions.height }, .zIndex = 1, .parentId = Clay_GetElementId(CLAY_STRING("MainContent")).id, - .attachment = {.element = CLAY_ATTACH_POINT_RIGHT_TOP, .parent = CLAY_ATTACH_POINT_RIGHT_TOP} - }) - ) { - CLAY(CLAY_ID("ScrollBarButton"), - CLAY_LAYOUT({ .sizing = {CLAY_SIZING_FIXED(12), CLAY_SIZING_FIXED((scrollData.scrollContainerDimensions.height / scrollData.contentDimensions.height) * scrollData.scrollContainerDimensions.height) }}), - CLAY_RECTANGLE({ .cornerRadius = {6}, .color = Clay_PointerOver(Clay__HashString(CLAY_STRING("ScrollBar"), 0, 0)) ? (Clay_Color){100, 100, 140, 150} : (Clay_Color){120, 120, 160, 150} }) - ) {} + .attachPoints = { .element = CLAY_ATTACH_POINT_RIGHT_TOP, .parent = CLAY_ATTACH_POINT_RIGHT_TOP } + } + }) { + CLAY({ .id = CLAY_ID("ScrollBarButton"), + .layout = { .sizing = {CLAY_SIZING_FIXED(12), CLAY_SIZING_FIXED((scrollData.scrollContainerDimensions.height / scrollData.contentDimensions.height) * scrollData.scrollContainerDimensions.height) }}, + .backgroundColor = Clay_PointerOver(Clay__HashString(CLAY_STRING("ScrollBar"), 0, 0)) ? (Clay_Color){100, 100, 140, 150} : (Clay_Color){120, 120, 160, 150} , + .cornerRadius = CLAY_CORNER_RADIUS(6) + }) {} } } } @@ -142,11 +149,11 @@ typedef struct bool mouseDown; } ScrollbarData; -ScrollbarData scrollbarData = {}; +ScrollbarData scrollbarData = {0}; bool debugEnabled = false; -void UpdateDrawFrame(void) +void UpdateDrawFrame(Font* fonts) { Vector2 mouseWheelDelta = GetMouseWheelMoveV(); float mouseWheelX = mouseWheelDelta.x; @@ -195,7 +202,7 @@ void UpdateDrawFrame(void) // currentTime = GetTime(); BeginDrawing(); ClearBackground(BLACK); - Clay_Raylib_Render(renderCommands); + Clay_Raylib_Render(renderCommands, fonts); EndDrawing(); // printf("render time: %f ms\n", (GetTime() - currentTime) * 1000); @@ -219,20 +226,15 @@ int main(void) { uint64_t totalMemorySize = Clay_MinMemorySize(); Clay_Arena clayMemory = Clay_CreateArenaWithCapacityAndMemory(totalMemorySize, malloc(totalMemorySize)); Clay_Initialize(clayMemory, (Clay_Dimensions) { (float)GetScreenWidth(), (float)GetScreenHeight() }, (Clay_ErrorHandler) { HandleClayErrors }); - Clay_SetMeasureTextFunction(Raylib_MeasureText, 0); Clay_Raylib_Initialize(1024, 768, "Clay - Raylib Renderer Example", FLAG_VSYNC_HINT | FLAG_WINDOW_RESIZABLE | FLAG_WINDOW_HIGHDPI | FLAG_MSAA_4X_HINT); profilePicture = LoadTextureFromImage(LoadImage("resources/profile-picture.png")); - Raylib_fonts[FONT_ID_BODY_24] = (Raylib_Font) { - .font = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400), - .fontId = FONT_ID_BODY_24, - }; - SetTextureFilter(Raylib_fonts[FONT_ID_BODY_24].font.texture, TEXTURE_FILTER_BILINEAR); - Raylib_fonts[FONT_ID_BODY_16] = (Raylib_Font) { - .font = LoadFontEx("resources/Roboto-Regular.ttf", 32, 0, 400), - .fontId = FONT_ID_BODY_16, - }; - SetTextureFilter(Raylib_fonts[FONT_ID_BODY_16].font.texture, TEXTURE_FILTER_BILINEAR); + Font fonts[2]; + fonts[FONT_ID_BODY_24] = LoadFontEx("resources/Roboto-Regular.ttf", 48, 0, 400); + SetTextureFilter(fonts[FONT_ID_BODY_24].texture, TEXTURE_FILTER_BILINEAR); + fonts[FONT_ID_BODY_16] = LoadFontEx("resources/Roboto-Regular.ttf", 32, 0, 400); + SetTextureFilter(fonts[FONT_ID_BODY_16].texture, TEXTURE_FILTER_BILINEAR); + Clay_SetMeasureTextFunction(Raylib_MeasureText, fonts); //-------------------------------------------------------------------------------------- @@ -246,7 +248,7 @@ int main(void) { Clay_Initialize(clayMemory, (Clay_Dimensions) { (float)GetScreenWidth(), (float)GetScreenHeight() }, (Clay_ErrorHandler) { HandleClayErrors }); reinitializeClay = false; } - UpdateDrawFrame(); + UpdateDrawFrame(fonts); } return 0; } diff --git a/examples/raylib-sidebar-scrolling-container/multi-compilation-unit.c b/examples/raylib-sidebar-scrolling-container/multi-compilation-unit.c index 2c1a473..5255d45 100644 --- a/examples/raylib-sidebar-scrolling-container/multi-compilation-unit.c +++ b/examples/raylib-sidebar-scrolling-container/multi-compilation-unit.c @@ -2,8 +2,8 @@ // NOTE: This file only exists to make sure that clay works when included in multiple translation units. -void SatisfyCompiler() { - CLAY(CLAY_ID("SatisfyCompiler"), CLAY_LAYOUT({})) { +void SatisfyCompiler(void) { + CLAY({ .id = CLAY_ID("SatisfyCompiler") }) { CLAY_TEXT(CLAY_STRING("Test"), CLAY_TEXT_CONFIG({ .fontId = 0, .fontSize = 24 })); } -} \ No newline at end of file +} diff --git a/examples/shared-layouts/clay-video-demo.c b/examples/shared-layouts/clay-video-demo.c new file mode 100644 index 0000000..e7400a3 --- /dev/null +++ b/examples/shared-layouts/clay-video-demo.c @@ -0,0 +1,266 @@ +#include "../../clay.h" +#include <stdlib.h> + +const int FONT_ID_BODY_16 = 0; +Clay_Color COLOR_WHITE = { 255, 255, 255, 255}; + +void RenderHeaderButton(Clay_String text) { + CLAY({ + .layout = { .padding = { 16, 16, 8, 8 }}, + .backgroundColor = { 140, 140, 140, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(5) + }) { + CLAY_TEXT(text, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 16, + .textColor = { 255, 255, 255, 255 } + })); + } +} + +void RenderDropdownMenuItem(Clay_String text) { + CLAY({.layout = { .padding = CLAY_PADDING_ALL(16)}}) { + CLAY_TEXT(text, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 16, + .textColor = { 255, 255, 255, 255 } + })); + } +} + +typedef struct { + Clay_String title; + Clay_String contents; +} Document; + +typedef struct { + Document *documents; + uint32_t length; +} DocumentArray; + +Document documentsRaw[5]; + +DocumentArray documents = { + .length = 5, + .documents = documentsRaw +}; + +typedef struct { + intptr_t offset; + intptr_t memory; +} ClayVideoDemo_Arena; + +typedef struct { + int32_t selectedDocumentIndex; + float yOffset; + ClayVideoDemo_Arena frameArena; +} ClayVideoDemo_Data; + +typedef struct { + int32_t requestedDocumentIndex; + int32_t* selectedDocumentIndex; +} SidebarClickData; + +void HandleSidebarInteraction( + Clay_ElementId elementId, + Clay_PointerData pointerData, + intptr_t userData +) { + SidebarClickData *clickData = (SidebarClickData*)userData; + // If this button was clicked + if (pointerData.state == CLAY_POINTER_DATA_PRESSED_THIS_FRAME) { + if (clickData->requestedDocumentIndex >= 0 && clickData->requestedDocumentIndex < documents.length) { + // Select the corresponding document + *clickData->selectedDocumentIndex = clickData->requestedDocumentIndex; + } + } +} + +ClayVideoDemo_Data ClayVideoDemo_Initialize() { + documents.documents[0] = (Document){ .title = CLAY_STRING("Squirrels"), .contents = CLAY_STRING("The Secret Life of Squirrels: Nature's Clever Acrobats\n""Squirrels are often overlooked creatures, dismissed as mere park inhabitants or backyard nuisances. Yet, beneath their fluffy tails and twitching noses lies an intricate world of cunning, agility, and survival tactics that are nothing short of fascinating. As one of the most common mammals in North America, squirrels have adapted to a wide range of environments from bustling urban centers to tranquil forests and have developed a variety of unique behaviors that continue to intrigue scientists and nature enthusiasts alike.\n""\n""Master Tree Climbers\n""At the heart of a squirrel's skill set is its impressive ability to navigate trees with ease. Whether they're darting from branch to branch or leaping across wide gaps, squirrels possess an innate talent for acrobatics. Their powerful hind legs, which are longer than their front legs, give them remarkable jumping power. With a tail that acts as a counterbalance, squirrels can leap distances of up to ten times the length of their body, making them some of the best aerial acrobats in the animal kingdom.\n""But it's not just their agility that makes them exceptional climbers. Squirrels' sharp, curved claws allow them to grip tree bark with precision, while the soft pads on their feet provide traction on slippery surfaces. Their ability to run at high speeds and scale vertical trunks with ease is a testament to the evolutionary adaptations that have made them so successful in their arboreal habitats.\n""\n""Food Hoarders Extraordinaire\n""Squirrels are often seen frantically gathering nuts, seeds, and even fungi in preparation for winter. While this behavior may seem like instinctual hoarding, it is actually a survival strategy that has been honed over millions of years. Known as \"scatter hoarding,\" squirrels store their food in a variety of hidden locations, often burying it deep in the soil or stashing it in hollowed-out tree trunks.\n""Interestingly, squirrels have an incredible memory for the locations of their caches. Research has shown that they can remember thousands of hiding spots, often returning to them months later when food is scarce. However, they don't always recover every stash some forgotten caches eventually sprout into new trees, contributing to forest regeneration. This unintentional role as forest gardeners highlights the ecological importance of squirrels in their ecosystems.\n""\n""The Great Squirrel Debate: Urban vs. Wild\n""While squirrels are most commonly associated with rural or wooded areas, their adaptability has allowed them to thrive in urban environments as well. In cities, squirrels have become adept at finding food sources in places like parks, streets, and even garbage cans. However, their urban counterparts face unique challenges, including traffic, predators, and the lack of natural shelters. Despite these obstacles, squirrels in urban areas are often observed using human infrastructure such as buildings, bridges, and power lines as highways for their acrobatic escapades.\n""There is, however, a growing concern regarding the impact of urban life on squirrel populations. Pollution, deforestation, and the loss of natural habitats are making it more difficult for squirrels to find adequate food and shelter. As a result, conservationists are focusing on creating squirrel-friendly spaces within cities, with the goal of ensuring these resourceful creatures continue to thrive in both rural and urban landscapes.\n""\n""A Symbol of Resilience\n""In many cultures, squirrels are symbols of resourcefulness, adaptability, and preparation. Their ability to thrive in a variety of environments while navigating challenges with agility and grace serves as a reminder of the resilience inherent in nature. Whether you encounter them in a quiet forest, a city park, or your own backyard, squirrels are creatures that never fail to amaze with their endless energy and ingenuity.\n""In the end, squirrels may be small, but they are mighty in their ability to survive and thrive in a world that is constantly changing. So next time you spot one hopping across a branch or darting across your lawn, take a moment to appreciate the remarkable acrobat at work a true marvel of the natural world.\n") }; + documents.documents[1] = (Document){ .title = CLAY_STRING("Lorem Ipsum"), .contents = CLAY_STRING("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.") }; + documents.documents[2] = (Document){ .title = CLAY_STRING("Vacuum Instructions"), .contents = CLAY_STRING("Chapter 3: Getting Started - Unpacking and Setup\n""\n""Congratulations on your new SuperClean Pro 5000 vacuum cleaner! In this section, we will guide you through the simple steps to get your vacuum up and running. Before you begin, please ensure that you have all the components listed in the \"Package Contents\" section on page 2.\n""\n""1. Unboxing Your Vacuum\n""Carefully remove the vacuum cleaner from the box. Avoid using sharp objects that could damage the product. Once removed, place the unit on a flat, stable surface to proceed with the setup. Inside the box, you should find:\n""\n"" The main vacuum unit\n"" A telescoping extension wand\n"" A set of specialized cleaning tools (crevice tool, upholstery brush, etc.)\n"" A reusable dust bag (if applicable)\n"" A power cord with a 3-prong plug\n"" A set of quick-start instructions\n""\n""2. Assembling Your Vacuum\n""Begin by attaching the extension wand to the main body of the vacuum cleaner. Line up the connectors and twist the wand into place until you hear a click. Next, select the desired cleaning tool and firmly attach it to the wand's end, ensuring it is securely locked in.\n""\n""For models that require a dust bag, slide the bag into the compartment at the back of the vacuum, making sure it is properly aligned with the internal mechanism. If your vacuum uses a bagless system, ensure the dust container is correctly seated and locked in place before use.\n""\n""3. Powering On\n""To start the vacuum, plug the power cord into a grounded electrical outlet. Once plugged in, locate the power switch, usually positioned on the side of the handle or body of the unit, depending on your model. Press the switch to the \"On\" position, and you should hear the motor begin to hum. If the vacuum does not power on, check that the power cord is securely plugged in, and ensure there are no blockages in the power switch.\n""\n""Note: Before first use, ensure that the vacuum filter (if your model has one) is properly installed. If unsure, refer to \"Section 5: Maintenance\" for filter installation instructions.") }; + documents.documents[3] = (Document){ .title = CLAY_STRING("Article 4"), .contents = CLAY_STRING("Article 4") }; + documents.documents[4] = (Document){ .title = CLAY_STRING("Article 5"), .contents = CLAY_STRING("Article 5") }; + + ClayVideoDemo_Data data = { + .frameArena = { .memory = (intptr_t)malloc(1024) } + }; + return data; +} + +Clay_RenderCommandArray ClayVideoDemo_CreateLayout(ClayVideoDemo_Data *data) { + data->frameArena.offset = 0; + + Clay_BeginLayout(); + + Clay_Sizing layoutExpand = { + .width = CLAY_SIZING_GROW(0), + .height = CLAY_SIZING_GROW(0) + }; + + Clay_Color contentBackgroundColor = { 90, 90, 90, 255 }; + + // Build UI here + CLAY({ .id = CLAY_ID("OuterContainer"), + .backgroundColor = {43, 41, 51, 255 }, + .layout = { + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .sizing = layoutExpand, + .padding = CLAY_PADDING_ALL(16), + .childGap = 16 + } + }) { + // Child elements go inside braces + CLAY({ .id = CLAY_ID("HeaderBar"), + .layout = { + .sizing = { + .height = CLAY_SIZING_FIXED(60), + .width = CLAY_SIZING_GROW(0) + }, + .padding = { 16, 16, 0, 0 }, + .childGap = 16, + .childAlignment = { + .y = CLAY_ALIGN_Y_CENTER + } + }, + .backgroundColor = contentBackgroundColor, + .cornerRadius = CLAY_CORNER_RADIUS(8) + }) { + // Header buttons go here + CLAY({ .id = CLAY_ID("FileButton"), + .layout = { .padding = { 16, 16, 8, 8 }}, + .backgroundColor = {140, 140, 140, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(5) + }) { + CLAY_TEXT(CLAY_STRING("File"), CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 16, + .textColor = { 255, 255, 255, 255 } + })); + + bool fileMenuVisible = + Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileButton"))) + || + Clay_PointerOver(Clay_GetElementId(CLAY_STRING("FileMenu"))); + + if (fileMenuVisible) { // Below has been changed slightly to fix the small bug where the menu would dismiss when mousing over the top gap + CLAY({ .id = CLAY_ID("FileMenu"), + .floating = { + .attachTo = CLAY_ATTACH_TO_PARENT, + .attachPoints = { + .parent = CLAY_ATTACH_POINT_LEFT_BOTTOM + }, + }, + .layout = { + .padding = {0, 0, 8, 8 } + } + }) { + CLAY({ + .layout = { + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .sizing = { + .width = CLAY_SIZING_FIXED(200) + }, + }, + .backgroundColor = {40, 40, 40, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(8) + }) { + // Render dropdown items here + RenderDropdownMenuItem(CLAY_STRING("New")); + RenderDropdownMenuItem(CLAY_STRING("Open")); + RenderDropdownMenuItem(CLAY_STRING("Close")); + } + } + } + } + RenderHeaderButton(CLAY_STRING("Edit")); + CLAY({ .layout = { .sizing = { CLAY_SIZING_GROW(0) }}}) {} + RenderHeaderButton(CLAY_STRING("Upload")); + RenderHeaderButton(CLAY_STRING("Media")); + RenderHeaderButton(CLAY_STRING("Support")); + } + + CLAY({ + .id = CLAY_ID("LowerContent"), + .layout = { .sizing = layoutExpand, .childGap = 16 } + }) { + CLAY({ + .id = CLAY_ID("Sidebar"), + .backgroundColor = contentBackgroundColor, + .layout = { + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .padding = CLAY_PADDING_ALL(16), + .childGap = 8, + .sizing = { + .width = CLAY_SIZING_FIXED(250), + .height = CLAY_SIZING_GROW(0) + } + } + }) { + for (int i = 0; i < documents.length; i++) { + Document document = documents.documents[i]; + Clay_LayoutConfig sidebarButtonLayout = { + .sizing = { .width = CLAY_SIZING_GROW(0) }, + .padding = CLAY_PADDING_ALL(16) + }; + + if (i == data->selectedDocumentIndex) { + CLAY({ + .layout = sidebarButtonLayout, + .backgroundColor = {120, 120, 120, 255 }, + .cornerRadius = CLAY_CORNER_RADIUS(8) + }) { + CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 20, + .textColor = { 255, 255, 255, 255 } + })); + } + } else { + SidebarClickData *clickData = (SidebarClickData *)(data->frameArena.memory + data->frameArena.offset); + *clickData = (SidebarClickData) { .requestedDocumentIndex = i, .selectedDocumentIndex = &data->selectedDocumentIndex }; + data->frameArena.offset += sizeof(SidebarClickData); + CLAY({ .layout = sidebarButtonLayout, .backgroundColor = (Clay_Color) { 120, 120, 120, Clay_Hovered() ? 120 : 0 }, .cornerRadius = CLAY_CORNER_RADIUS(8) }) { + Clay_OnHover(HandleSidebarInteraction, (intptr_t)clickData); + CLAY_TEXT(document.title, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 20, + .textColor = { 255, 255, 255, 255 } + })); + } + } + } + } + + CLAY({ .id = CLAY_ID("MainContent"), + .backgroundColor = contentBackgroundColor, + .scroll = { .vertical = true }, + .layout = { + .layoutDirection = CLAY_TOP_TO_BOTTOM, + .childGap = 16, + .padding = CLAY_PADDING_ALL(16), + .sizing = layoutExpand + } + }) { + Document selectedDocument = documents.documents[data->selectedDocumentIndex]; + CLAY_TEXT(selectedDocument.title, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 24, + .textColor = COLOR_WHITE + })); + CLAY_TEXT(selectedDocument.contents, CLAY_TEXT_CONFIG({ + .fontId = FONT_ID_BODY_16, + .fontSize = 24, + .textColor = COLOR_WHITE + })); + } + } + } + + Clay_RenderCommandArray renderCommands = Clay_EndLayout(); + for (int32_t i = 0; i < renderCommands.length; i++) { + Clay_RenderCommandArray_Get(&renderCommands, i)->boundingBox.y += data->yOffset; + } + return renderCommands; +} \ No newline at end of file diff --git a/renderers/SDL2/clay_renderer_SDL2.c b/renderers/SDL2/clay_renderer_SDL2.c index bb4059e..811c6ef 100644 --- a/renderers/SDL2/clay_renderer_SDL2.c +++ b/renderers/SDL2/clay_renderer_SDL2.c @@ -13,7 +13,7 @@ typedef struct } SDL2_Font; -static Clay_Dimensions SDL2_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData) +static Clay_Dimensions SDL2_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData) { SDL2_Font *fonts = (SDL2_Font*)userData; @@ -44,8 +44,8 @@ static void Clay_SDL2_Render(SDL_Renderer *renderer, Clay_RenderCommandArray ren switch (renderCommand->commandType) { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { - Clay_RectangleElementConfig *config = renderCommand->config.rectangleElementConfig; - Clay_Color color = config->color; + Clay_RectangleRenderData *config = &renderCommand->renderData.rectangle; + Clay_Color color = config->backgroundColor; SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, color.a); SDL_FRect rect = (SDL_FRect) { .x = boundingBox.x, @@ -57,10 +57,9 @@ static void Clay_SDL2_Render(SDL_Renderer *renderer, Clay_RenderCommandArray ren break; } case CLAY_RENDER_COMMAND_TYPE_TEXT: { - Clay_TextElementConfig *config = renderCommand->config.textElementConfig; - Clay_StringSlice text = renderCommand->text; - char *cloned = (char *)calloc(text.length + 1, 1); - memcpy(cloned, text.chars, text.length); + Clay_TextRenderData *config = &renderCommand->renderData.text; + char *cloned = (char *)calloc(config->stringContents.length + 1, 1); + memcpy(cloned, config->stringContents.chars, config->stringContents.length); TTF_Font* font = fonts[config->fontId].font; SDL_Surface *surface = TTF_RenderUTF8_Blended(font, cloned, (SDL_Color) { .r = (Uint8)config->textColor.r, @@ -98,9 +97,9 @@ static void Clay_SDL2_Render(SDL_Renderer *renderer, Clay_RenderCommandArray ren break; } case CLAY_RENDER_COMMAND_TYPE_IMAGE: { - SDL_Surface *image = (SDL_Surface *)renderCommand->config.imageElementConfig->imageData; + Clay_ImageRenderData *config = &renderCommand->renderData.image; - SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, image); + SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, config->imageData); SDL_Rect destination = (SDL_Rect){ .x = boundingBox.x, @@ -110,38 +109,40 @@ static void Clay_SDL2_Render(SDL_Renderer *renderer, Clay_RenderCommandArray ren }; SDL_RenderCopy(renderer, texture, NULL, &destination); + + SDL_DestroyTexture(texture); break; } case CLAY_RENDER_COMMAND_TYPE_BORDER: { - Clay_BorderElementConfig *config = renderCommand->config.borderElementConfig; + Clay_BorderRenderData *config = &renderCommand->renderData.border; - if (config->left.width > 0) { - SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->left.color)); - SDL_FRect rect = { boundingBox.x, boundingBox.y + config->cornerRadius.topLeft, config->left.width, boundingBox.height - config->cornerRadius.topLeft - config->cornerRadius.bottomLeft }; + if (config->width.left > 0) { + SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->color)); + SDL_FRect rect = { boundingBox.x, boundingBox.y + config->cornerRadius.topLeft, config->width.left, boundingBox.height - config->cornerRadius.topLeft - config->cornerRadius.bottomLeft }; SDL_RenderFillRectF(renderer, &rect); } - if (config->right.width > 0) { - SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->right.color)); - SDL_FRect rect = { boundingBox.x + boundingBox.width - config->right.width, boundingBox.y + config->cornerRadius.topRight, config->right.width, boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight }; + if (config->width.right > 0) { + SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->color)); + SDL_FRect rect = { boundingBox.x + boundingBox.width - config->width.right, boundingBox.y + config->cornerRadius.topRight, config->width.right, boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight }; SDL_RenderFillRectF(renderer, &rect); } - if (config->right.width > 0) { - SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->right.color)); - SDL_FRect rect = { boundingBox.x + boundingBox.width - config->right.width, boundingBox.y + config->cornerRadius.topRight, config->right.width, boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight }; + if (config->width.right > 0) { + SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->color)); + SDL_FRect rect = { boundingBox.x + boundingBox.width - config->width.right, boundingBox.y + config->cornerRadius.topRight, config->width.right, boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight }; SDL_RenderFillRectF(renderer, &rect); } - if (config->top.width > 0) { - SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->right.color)); - SDL_FRect rect = { boundingBox.x + config->cornerRadius.topLeft, boundingBox.y, boundingBox.width - config->cornerRadius.topLeft - config->cornerRadius.topRight, config->top.width }; + if (config->width.top > 0) { + SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->color)); + SDL_FRect rect = { boundingBox.x + config->cornerRadius.topLeft, boundingBox.y, boundingBox.width - config->cornerRadius.topLeft - config->cornerRadius.topRight, config->width.top }; SDL_RenderFillRectF(renderer, &rect); } - if (config->bottom.width > 0) { - SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->bottom.color)); - SDL_FRect rect = { boundingBox.x + config->cornerRadius.bottomLeft, boundingBox.y + boundingBox.height - config->bottom.width, boundingBox.width - config->cornerRadius.bottomLeft - config->cornerRadius.bottomRight, config->bottom.width }; + if (config->width.bottom > 0) { + SDL_SetRenderDrawColor(renderer, CLAY_COLOR_TO_SDL_COLOR_ARGS(config->color)); + SDL_FRect rect = { boundingBox.x + config->cornerRadius.bottomLeft, boundingBox.y + boundingBox.height - config->width.bottom, boundingBox.width - config->cornerRadius.bottomLeft - config->cornerRadius.bottomRight, config->width.bottom }; SDL_RenderFillRectF(renderer, &rect); } diff --git a/renderers/SDL3/clay_renderer_SDL3.c b/renderers/SDL3/clay_renderer_SDL3.c index 583c238..f8d23e8 100644 --- a/renderers/SDL3/clay_renderer_SDL3.c +++ b/renderers/SDL3/clay_renderer_SDL3.c @@ -146,23 +146,20 @@ static void SDL_RenderClayCommands(SDL_Renderer *renderer, Clay_RenderCommandArr switch (rcmd->commandType) { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { - const Clay_RectangleElementConfig *config = rcmd->config.rectangleElementConfig; - const Clay_Color color = config->color; - - SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, color.a); + Clay_RectangleRenderData *config = &rcmd->renderData.rectangle; + SDL_SetRenderDrawColor(renderer, config->backgroundColor.r, config->backgroundColor.g, config->backgroundColor.b, config->backgroundColor.a); if (config->cornerRadius.topLeft > 0) { - SDL_RenderFillRoundedRect(renderer, rect, config->cornerRadius.topLeft, color); + SDL_RenderFillRoundedRect(renderer, rect, config->cornerRadius.topLeft, config->backgroundColor); } else { SDL_RenderFillRect(renderer, &rect); } } break; case CLAY_RENDER_COMMAND_TYPE_TEXT: { - const Clay_TextElementConfig *config = rcmd->config.textElementConfig; - const Clay_StringSlice *text = &rcmd->text; + Clay_TextRenderData *config = &rcmd->renderData.text; const SDL_Color color = { config->textColor.r, config->textColor.g, config->textColor.b, config->textColor.a }; TTF_Font *font = gFonts[config->fontId]; - SDL_Surface *surface = TTF_RenderText_Blended(font, text->chars, text->length, color); + SDL_Surface *surface = TTF_RenderText_Blended(font, config->stringContents.chars, config->stringContents.length, color); SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface); SDL_RenderTexture(renderer, texture, NULL, &rect); @@ -170,7 +167,7 @@ static void SDL_RenderClayCommands(SDL_Renderer *renderer, Clay_RenderCommandArr SDL_DestroyTexture(texture); } break; case CLAY_RENDER_COMMAND_TYPE_BORDER: { - const Clay_BorderElementConfig *config = rcmd->config.borderElementConfig; + Clay_BorderRenderData *config = &rcmd->renderData.border; const float minRadius = SDL_min(rect.w, rect.h) / 2.0f; const Clay_CornerRadius clampedRadii = { @@ -180,32 +177,32 @@ static void SDL_RenderClayCommands(SDL_Renderer *renderer, Clay_RenderCommandArr .bottomRight = SDL_min(config->cornerRadius.bottomRight, minRadius) }; //edges - SDL_SetRenderDrawColor(renderer, config->left.color.r, config->left.color.g, config->left.color.b, config->left.color.a); - if (config->left.width > 0) { + SDL_SetRenderDrawColor(renderer, config->color.r, config->color.g, config->color.b, config->color.a); + if (config->width.left > 0) { const float starting_y = rect.y + clampedRadii.topLeft; const float length = rect.h - clampedRadii.topLeft - clampedRadii.bottomLeft; - SDL_FRect line = { rect.x, starting_y, config->left.width, length }; + SDL_FRect line = { rect.x, starting_y, config->width.left, length }; SDL_RenderFillRect(renderer, &line); } - if (config->right.width > 0) { - const float starting_x = rect.x + rect.w - (float)config->right.width; + if (config->width.right > 0) { + const float starting_x = rect.x + rect.w - (float)config->width.right; const float starting_y = rect.y + clampedRadii.topRight; const float length = rect.h - clampedRadii.topRight - clampedRadii.bottomRight; - SDL_FRect line = { starting_x, starting_y, config->right.width, length }; + SDL_FRect line = { starting_x, starting_y, config->width.right, length }; SDL_RenderFillRect(renderer, &line); } - if (config->top.width > 0) { + if (config->width.top > 0) { const float starting_x = rect.x + clampedRadii.topLeft; const float length = rect.w - clampedRadii.topLeft - clampedRadii.topRight; - SDL_FRect line = { starting_x, rect.y, length, config->top.width }; + SDL_FRect line = { starting_x, rect.y, length, config->width.top }; SDL_RenderFillRect(renderer, &line); } - if (config->bottom.width > 0) { + if (config->width.bottom > 0) { const float starting_x = rect.x + clampedRadii.bottomLeft; - const float starting_y = rect.y + rect.h - (float)config->bottom.width; + const float starting_y = rect.y + rect.h - (float)config->width.bottom; const float length = rect.w - clampedRadii.bottomLeft - clampedRadii.bottomRight; - SDL_FRect line = { starting_x, starting_y, length, config->bottom.width }; - SDL_SetRenderDrawColor(renderer, config->bottom.color.r, config->bottom.color.g, config->bottom.color.b, config->bottom.color.a); + SDL_FRect line = { starting_x, starting_y, length, config->width.bottom }; + SDL_SetRenderDrawColor(renderer, config->color.r, config->color.g, config->color.b, config->color.a); SDL_RenderFillRect(renderer, &line); } //corners @@ -213,25 +210,25 @@ static void SDL_RenderClayCommands(SDL_Renderer *renderer, Clay_RenderCommandArr const float centerX = rect.x + clampedRadii.topLeft -1; const float centerY = rect.y + clampedRadii.topLeft; SDL_RenderArc(renderer, (SDL_FPoint){centerX, centerY}, clampedRadii.topLeft, - 180.0f, 270.0f, config->top.width, config->top.color); + 180.0f, 270.0f, config->width.top, config->color); } if (config->cornerRadius.topRight > 0) { const float centerX = rect.x + rect.w - clampedRadii.topRight -1; const float centerY = rect.y + clampedRadii.topRight; SDL_RenderArc(renderer, (SDL_FPoint){centerX, centerY}, clampedRadii.topRight, - 270.0f, 360.0f, config->top.width, config->top.color); + 270.0f, 360.0f, config->width.top, config->color); } if (config->cornerRadius.bottomLeft > 0) { const float centerX = rect.x + clampedRadii.bottomLeft -1; const float centerY = rect.y + rect.h - clampedRadii.bottomLeft -1; SDL_RenderArc(renderer, (SDL_FPoint){centerX, centerY}, clampedRadii.bottomLeft, - 90.0f, 180.0f, config->bottom.width, config->bottom.color); + 90.0f, 180.0f, config->width.bottom, config->color); } if (config->cornerRadius.bottomRight > 0) { const float centerX = rect.x + rect.w - clampedRadii.bottomRight -1; //TODO: why need to -1 in all calculations??? const float centerY = rect.y + rect.h - clampedRadii.bottomRight -1; SDL_RenderArc(renderer, (SDL_FPoint){centerX, centerY}, clampedRadii.bottomRight, - 0.0f, 90.0f, config->bottom.width, config->bottom.color); + 0.0f, 90.0f, config->width.bottom, config->color); } } break; diff --git a/renderers/cairo/clay_renderer_cairo.c b/renderers/cairo/clay_renderer_cairo.c index c8e3c16..229ca4f 100644 --- a/renderers/cairo/clay_renderer_cairo.c +++ b/renderers/cairo/clay_renderer_cairo.c @@ -26,14 +26,6 @@ #include <string.h> #include <math.h> -// TODO: Regarding image support, currently this renderer only -// supports PNG images, this is due to cairo having just PNG as it's -// main file format. We maybe should introduce stb_image to load them -// as bitmaps and feed cairo that way. -#define CLAY_EXTEND_CONFIG_IMAGE Clay_String path; // Filesystem path - -// TODO: We should use the given `uint16_t fontId` instead of doing this. -#define CLAY_EXTEND_CONFIG_TEXT Clay_String fontFamily; // Font family #define CLAY_IMPLEMENTATION #include "../../clay.h" @@ -50,7 +42,7 @@ void Clay_Cairo_Initialize(cairo_t *cairo); // Render the command queue to the `cairo_t*` instance you called // `Clay_Cairo_Initialize` on. -void Clay_Cairo_Render(Clay_RenderCommandArray commands); +void Clay_Cairo_Render(Clay_RenderCommandArray commands, char** fonts); //////////////////////////////// @@ -83,12 +75,13 @@ static inline char *Clay_Cairo__NullTerminate(Clay_String *str) { } // Measure text using cairo's *toy* text API. -static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_String *str, Clay_TextElementConfig *config, uintptr_t userData) { +static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_StringSlice str, Clay_TextElementConfig *config, uintptr_t userData) { // Edge case: Clay computes the width of a whitespace character // once. Cairo does not factor in whitespaces when computing text // extents, this edge-case serves as a short-circuit to introduce // (somewhat) sensible values into Clay. - if(str->length == 1 && str->chars[0] == ' ') { + char** fonts = (char**)userData; + if(str.length == 1 && str.chars[0] == ' ') { cairo_text_extents_t te; cairo_text_extents(Clay__Cairo, " ", &te); return (Clay_Dimensions) { @@ -102,8 +95,9 @@ static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_String *str, Clay_Text } // Ensure string is null-terminated for Cairo - char *text = Clay_Cairo__NullTerminate(str); - char *font_family = Clay_Cairo__NullTerminate(&config->fontFamily); + Clay_String toTerminate = (Clay_String){ str.length, str.chars }; + char *text = Clay_Cairo__NullTerminate(&toTerminate); + char *font_family = fonts[config->fontId]; // Save and reset the Cairo context to avoid unwanted transformations cairo_save(Clay__Cairo); @@ -119,7 +113,6 @@ static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_String *str, Clay_Text fprintf(stderr, "Failed to get scaled font\n"); cairo_restore(Clay__Cairo); free(text); - free(font_family); return (Clay_Dimensions){0, 0}; } @@ -133,7 +126,6 @@ static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_String *str, Clay_Text fprintf(stderr, "Failed to generate glyphs: %s\n", cairo_status_to_string(status)); cairo_restore(Clay__Cairo); free(text); - free(font_family); return (Clay_Dimensions){0, 0}; } @@ -149,7 +141,6 @@ static inline Clay_Dimensions Clay_Cairo_MeasureText(Clay_String *str, Clay_Text // Free temporary strings free(text); - free(font_family); // Return dimensions return (Clay_Dimensions){ @@ -191,18 +182,17 @@ void Clay_Cairo__Blit_Surface(cairo_surface_t *src_surface, cairo_surface_t *des cairo_destroy(cr); } -void Clay_Cairo_Render(Clay_RenderCommandArray commands) { +void Clay_Cairo_Render(Clay_RenderCommandArray commands, char** fonts) { cairo_t *cr = Clay__Cairo; for(size_t i = 0; i < commands.length; i++) { Clay_RenderCommand *command = Clay_RenderCommandArray_Get(&commands, i); switch(command->commandType) { case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { - Clay_RectangleElementConfig *config = command->config.rectangleElementConfig; - Clay_Color color = config->color; + Clay_RectangleRenderData *config = &command->renderData.rectangle; Clay_BoundingBox bb = command->boundingBox; - cairo_set_source_rgba(cr, CLAY_TO_CAIRO(color)); + cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->backgroundColor)); cairo_new_sub_path(cr); cairo_arc(cr, bb.x + config->cornerRadius.topLeft, @@ -229,14 +219,16 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { case CLAY_RENDER_COMMAND_TYPE_TEXT: { // Cairo expects null terminated strings, we need to clone // to temporarily introduce one. - char *text = Clay_Cairo__NullTerminate(&command->text); - char *font_family = Clay_Cairo__NullTerminate(&command->config.textElementConfig->fontFamily); + Clay_TextRenderData *config = &command->renderData.text; + Clay_String toTerminate = (Clay_String){ config->stringContents.length, config->stringContents.chars }; + char *text = Clay_Cairo__NullTerminate(&toTerminate); + char *font_family = fonts[config->fontId]; Clay_BoundingBox bb = command->boundingBox; - Clay_Color color = command->config.textElementConfig->textColor; + Clay_Color color = config->textColor; cairo_select_font_face(Clay__Cairo, font_family, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); - cairo_set_font_size(cr, command->config.textElementConfig->fontSize); + cairo_set_font_size(cr, config->fontSize); cairo_move_to(cr, bb.x, bb.y + bb.height); @@ -245,11 +237,10 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { cairo_close_path(cr); free(text); - free(font_family); break; } case CLAY_RENDER_COMMAND_TYPE_BORDER: { - Clay_BorderElementConfig *config = command->config.borderElementConfig; + Clay_BorderRenderData *config = &command->renderData.border; Clay_BoundingBox bb = command->boundingBox; double top_left_radius = config->cornerRadius.topLeft / 2.0; @@ -258,9 +249,9 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { double bottom_left_radius = config->cornerRadius.bottomLeft / 2.0; // Draw the top border - if (config->top.width > 0) { - cairo_set_line_width(cr, config->top.width); - cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->top.color)); + if (config->width.top > 0) { + cairo_set_line_width(cr, config->width.top); + cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->color)); cairo_new_sub_path(cr); @@ -277,9 +268,9 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { } // Draw the right border - if (config->right.width > 0) { - cairo_set_line_width(cr, config->right.width); - cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->right.color)); + if (config->width.right > 0) { + cairo_set_line_width(cr, config->width.right); + cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->color)); cairo_new_sub_path(cr); @@ -296,9 +287,9 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { } // Draw the bottom border - if (config->bottom.width > 0) { - cairo_set_line_width(cr, config->bottom.width); - cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->bottom.color)); + if (config->width.bottom > 0) { + cairo_set_line_width(cr, config->width.bottom); + cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->color)); cairo_new_sub_path(cr); @@ -315,9 +306,9 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { } // Draw the left border - if (config->left.width > 0) { - cairo_set_line_width(cr, config->left.width); - cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->left.color)); + if (config->width.left > 0) { + cairo_set_line_width(cr, config->width.left); + cairo_set_source_rgba(cr, CLAY_TO_CAIRO(config->color)); cairo_new_sub_path(cr); @@ -335,10 +326,10 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { break; } case CLAY_RENDER_COMMAND_TYPE_IMAGE: { - Clay_ImageElementConfig *config = command->config.imageElementConfig; + Clay_ImageRenderData *config = &command->renderData.image; Clay_BoundingBox bb = command->boundingBox; - char *path = Clay_Cairo__NullTerminate(&config->path); + char *path = config->imageData; cairo_surface_t *surf = cairo_image_surface_create_from_png(path), *origin = cairo_get_target(cr); @@ -369,7 +360,6 @@ void Clay_Cairo_Render(Clay_RenderCommandArray commands) { // Clean up the source surface cairo_surface_destroy(surf); - free(path); break; } case CLAY_RENDER_COMMAND_TYPE_CUSTOM: { diff --git a/renderers/raylib/clay_renderer_raylib.c b/renderers/raylib/clay_renderer_raylib.c index 0c3ac59..0dbc163 100644 --- a/renderers/raylib/clay_renderer_raylib.c +++ b/renderers/raylib/clay_renderer_raylib.c @@ -8,13 +8,6 @@ #define CLAY_RECTANGLE_TO_RAYLIB_RECTANGLE(rectangle) (Rectangle) { .x = rectangle.x, .y = rectangle.y, .width = rectangle.width, .height = rectangle.height } #define CLAY_COLOR_TO_RAYLIB_COLOR(color) (Color) { .r = (unsigned char)roundf(color.r), .g = (unsigned char)roundf(color.g), .b = (unsigned char)roundf(color.b), .a = (unsigned char)roundf(color.a) } -typedef struct -{ - uint32_t fontId; - Font font; -} Raylib_Font; - -Raylib_Font Raylib_fonts[10]; Camera Raylib_camera; typedef enum @@ -88,7 +81,7 @@ Ray GetScreenToWorldPointWithZDistance(Vector2 position, Camera camera, int scre } -static inline Clay_Dimensions Raylib_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, uintptr_t userData) { +static inline Clay_Dimensions Raylib_MeasureText(Clay_StringSlice text, Clay_TextElementConfig *config, void *userData) { // Measure string size for Font Clay_Dimensions textSize = { 0 }; @@ -96,7 +89,8 @@ static inline Clay_Dimensions Raylib_MeasureText(Clay_StringSlice text, Clay_Tex float lineTextWidth = 0; float textHeight = config->fontSize; - Font fontToUse = Raylib_fonts[config->fontId].font; + Font* fonts = (Font*)userData; + Font fontToUse = fonts[config->fontId]; // Font failed to load, likely the fonts are in the wrong place relative to the execution dir if (!fontToUse.glyphs) return textSize; @@ -128,7 +122,7 @@ void Clay_Raylib_Initialize(int width, int height, const char *title, unsigned i // EnableEventWaiting(); } -void Clay_Raylib_Render(Clay_RenderCommandArray renderCommands) +void Clay_Raylib_Render(Clay_RenderCommandArray renderCommands, Font* fonts) { for (int j = 0; j < renderCommands.length; j++) { @@ -138,23 +132,27 @@ void Clay_Raylib_Render(Clay_RenderCommandArray renderCommands) { case CLAY_RENDER_COMMAND_TYPE_TEXT: { // Raylib uses standard C strings so isn't compatible with cheap slices, we need to clone the string to append null terminator - Clay_StringSlice text = renderCommand->text; - char *cloned = (char *)malloc(text.length + 1); - memcpy(cloned, text.chars, text.length); - cloned[text.length] = '\0'; - Font fontToUse = Raylib_fonts[renderCommand->config.textElementConfig->fontId].font; - DrawTextEx(fontToUse, cloned, (Vector2){boundingBox.x, boundingBox.y}, (float)renderCommand->config.textElementConfig->fontSize, (float)renderCommand->config.textElementConfig->letterSpacing, CLAY_COLOR_TO_RAYLIB_COLOR(renderCommand->config.textElementConfig->textColor)); + Clay_TextRenderData *textData = &renderCommand->renderData.text; + char *cloned = (char *)malloc(textData->stringContents.length + 1); + memcpy(cloned, textData->stringContents.chars, textData->stringContents.length); + cloned[textData->stringContents.length] = '\0'; + Font fontToUse = fonts[textData->fontId]; + DrawTextEx(fontToUse, cloned, (Vector2){boundingBox.x, boundingBox.y}, (float)textData->fontSize, (float)textData->letterSpacing, CLAY_COLOR_TO_RAYLIB_COLOR(textData->textColor)); free(cloned); break; } case CLAY_RENDER_COMMAND_TYPE_IMAGE: { - Texture2D imageTexture = *(Texture2D *)renderCommand->config.imageElementConfig->imageData; + Texture2D imageTexture = *(Texture2D *)renderCommand->renderData.image.imageData; + Clay_Color tintColor = renderCommand->renderData.image.backgroundColor; + if (tintColor.r == 0 && tintColor.g == 0 || tintColor.b == 0 || tintColor.a == 0) { + tintColor = (Clay_Color) { 255, 255, 255, 255 }; + } DrawTextureEx( - imageTexture, - (Vector2){boundingBox.x, boundingBox.y}, - 0, - boundingBox.width / (float)imageTexture.width, - WHITE); + imageTexture, + (Vector2){boundingBox.x, boundingBox.y}, + 0, + boundingBox.width / (float)imageTexture.width, + CLAY_COLOR_TO_RAYLIB_COLOR(tintColor)); break; } case CLAY_RENDER_COMMAND_TYPE_SCISSOR_START: { @@ -166,49 +164,50 @@ void Clay_Raylib_Render(Clay_RenderCommandArray renderCommands) break; } case CLAY_RENDER_COMMAND_TYPE_RECTANGLE: { - Clay_RectangleElementConfig *config = renderCommand->config.rectangleElementConfig; + Clay_RectangleRenderData *config = &renderCommand->renderData.rectangle; if (config->cornerRadius.topLeft > 0) { float radius = (config->cornerRadius.topLeft * 2) / (float)((boundingBox.width > boundingBox.height) ? boundingBox.height : boundingBox.width); - DrawRectangleRounded((Rectangle) { boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height }, radius, 8, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); + DrawRectangleRounded((Rectangle) { boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height }, radius, 8, CLAY_COLOR_TO_RAYLIB_COLOR(config->backgroundColor)); } else { - DrawRectangle(boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); + DrawRectangle(boundingBox.x, boundingBox.y, boundingBox.width, boundingBox.height, CLAY_COLOR_TO_RAYLIB_COLOR(config->backgroundColor)); } break; } case CLAY_RENDER_COMMAND_TYPE_BORDER: { - Clay_BorderElementConfig *config = renderCommand->config.borderElementConfig; + Clay_BorderRenderData *config = &renderCommand->renderData.border; // Left border - if (config->left.width > 0) { - DrawRectangle((int)roundf(boundingBox.x), (int)roundf(boundingBox.y + config->cornerRadius.topLeft), (int)config->left.width, (int)roundf(boundingBox.height - config->cornerRadius.topLeft - config->cornerRadius.bottomLeft), CLAY_COLOR_TO_RAYLIB_COLOR(config->left.color)); + if (config->width.left > 0) { + DrawRectangle((int)roundf(boundingBox.x), (int)roundf(boundingBox.y + config->cornerRadius.topLeft), (int)config->width.left, (int)roundf(boundingBox.height - config->cornerRadius.topLeft - config->cornerRadius.bottomLeft), CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } // Right border - if (config->right.width > 0) { - DrawRectangle((int)roundf(boundingBox.x + boundingBox.width - config->right.width), (int)roundf(boundingBox.y + config->cornerRadius.topRight), (int)config->right.width, (int)roundf(boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight), CLAY_COLOR_TO_RAYLIB_COLOR(config->right.color)); + if (config->width.right > 0) { + DrawRectangle((int)roundf(boundingBox.x + boundingBox.width - config->width.right), (int)roundf(boundingBox.y + config->cornerRadius.topRight), (int)config->width.right, (int)roundf(boundingBox.height - config->cornerRadius.topRight - config->cornerRadius.bottomRight), CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } // Top border - if (config->top.width > 0) { - DrawRectangle((int)roundf(boundingBox.x + config->cornerRadius.topLeft), (int)roundf(boundingBox.y), (int)roundf(boundingBox.width - config->cornerRadius.topLeft - config->cornerRadius.topRight), (int)config->top.width, CLAY_COLOR_TO_RAYLIB_COLOR(config->top.color)); + if (config->width.top > 0) { + DrawRectangle((int)roundf(boundingBox.x + config->cornerRadius.topLeft), (int)roundf(boundingBox.y), (int)roundf(boundingBox.width - config->cornerRadius.topLeft - config->cornerRadius.topRight), (int)config->width.top, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } // Bottom border - if (config->bottom.width > 0) { - DrawRectangle((int)roundf(boundingBox.x + config->cornerRadius.bottomLeft), (int)roundf(boundingBox.y + boundingBox.height - config->bottom.width), (int)roundf(boundingBox.width - config->cornerRadius.bottomLeft - config->cornerRadius.bottomRight), (int)config->bottom.width, CLAY_COLOR_TO_RAYLIB_COLOR(config->bottom.color)); + if (config->width.bottom > 0) { + DrawRectangle((int)roundf(boundingBox.x + config->cornerRadius.bottomLeft), (int)roundf(boundingBox.y + boundingBox.height - config->width.bottom), (int)roundf(boundingBox.width - config->cornerRadius.bottomLeft - config->cornerRadius.bottomRight), (int)config->width.bottom, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } if (config->cornerRadius.topLeft > 0) { - DrawRing((Vector2) { roundf(boundingBox.x + config->cornerRadius.topLeft), roundf(boundingBox.y + config->cornerRadius.topLeft) }, roundf(config->cornerRadius.topLeft - config->top.width), config->cornerRadius.topLeft, 180, 270, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->top.color)); + DrawRing((Vector2) { roundf(boundingBox.x + config->cornerRadius.topLeft), roundf(boundingBox.y + config->cornerRadius.topLeft) }, roundf(config->cornerRadius.topLeft - config->width.top), config->cornerRadius.topLeft, 180, 270, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } if (config->cornerRadius.topRight > 0) { - DrawRing((Vector2) { roundf(boundingBox.x + boundingBox.width - config->cornerRadius.topRight), roundf(boundingBox.y + config->cornerRadius.topRight) }, roundf(config->cornerRadius.topRight - config->top.width), config->cornerRadius.topRight, 270, 360, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->top.color)); + DrawRing((Vector2) { roundf(boundingBox.x + boundingBox.width - config->cornerRadius.topRight), roundf(boundingBox.y + config->cornerRadius.topRight) }, roundf(config->cornerRadius.topRight - config->width.top), config->cornerRadius.topRight, 270, 360, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } if (config->cornerRadius.bottomLeft > 0) { - DrawRing((Vector2) { roundf(boundingBox.x + config->cornerRadius.bottomLeft), roundf(boundingBox.y + boundingBox.height - config->cornerRadius.bottomLeft) }, roundf(config->cornerRadius.bottomLeft - config->top.width), config->cornerRadius.bottomLeft, 90, 180, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->bottom.color)); + DrawRing((Vector2) { roundf(boundingBox.x + config->cornerRadius.bottomLeft), roundf(boundingBox.y + boundingBox.height - config->cornerRadius.bottomLeft) }, roundf(config->cornerRadius.bottomLeft - config->width.top), config->cornerRadius.bottomLeft, 90, 180, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } if (config->cornerRadius.bottomRight > 0) { - DrawRing((Vector2) { roundf(boundingBox.x + boundingBox.width - config->cornerRadius.bottomRight), roundf(boundingBox.y + boundingBox.height - config->cornerRadius.bottomRight) }, roundf(config->cornerRadius.bottomRight - config->bottom.width), config->cornerRadius.bottomRight, 0.1, 90, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->bottom.color)); + DrawRing((Vector2) { roundf(boundingBox.x + boundingBox.width - config->cornerRadius.bottomRight), roundf(boundingBox.y + boundingBox.height - config->cornerRadius.bottomRight) }, roundf(config->cornerRadius.bottomRight - config->width.bottom), config->cornerRadius.bottomRight, 0.1, 90, 10, CLAY_COLOR_TO_RAYLIB_COLOR(config->color)); } break; } case CLAY_RENDER_COMMAND_TYPE_CUSTOM: { - CustomLayoutElement *customElement = (CustomLayoutElement *)renderCommand->config.customElementConfig->customData; + Clay_CustomRenderData *config = &renderCommand->renderData.custom; + CustomLayoutElement *customElement = (CustomLayoutElement *)config->customData; if (!customElement) continue; switch (customElement->type) { case CUSTOM_LAYOUT_ELEMENT_TYPE_3D_MODEL: {