Commit graph

159 commits

Author SHA1 Message Date
johan0A 7a84facec9
add CLAY_DISABLE_SIMD flag to conditionally disable SIMD includes (#251) 2025-02-07 09:41:38 +13:00
Nic Barker bd2ce4b833 [Core] Update debug view for new non rectangle API 2025-02-07 09:34:48 +13:00
Nic Barker b9c5f8e47f [Core] Fixed a bug where userdata wasn't getting correctly passed through for image render commands 2025-02-06 10:06:10 +13:00
Nic Barker 95fcd85a2a [Core] Fixed a bug where Clay_Hovered didn't work with explicit IDs 2025-02-06 09:54:07 +13:00
Nic Barker 9d940c1f8e
[Core] Replace config macros with a single unified configuration struct (#240) 2025-02-04 17:00:19 +13:00
Harrison Lambeth 40ae6d8894
Fix int conversion errors in msvc (#242) 2025-01-30 15:46:37 +13:00
Harrison Lambeth efad3deef8
Copy elementId in Clay__AddHashMapItem() in case underlying stringId has changed (#239) 2025-01-30 10:20:14 +13:00
Nic Barker a1e692b72a
[Core] Add option to hash text contents to text config (#238) 2025-01-30 09:59:42 +13:00
Nic Barker 5fae7a6249 [Core] Compensate for OSes that don't return 64b aligned memory from malloc 2025-01-29 21:16:24 +13:00
Nic Barker 1bcf256e4d
[Core] Replace generated arrays with macro declarations, align cache lines to 64 bytes (#235) 2025-01-29 17:14:01 +13:00
noflashbang 34f2dab9e8
Normalized usage of Clay__defaultMaxElementCount and Clay__defaultMaxMeasureTextWordCacheCount (#233) 2025-01-29 13:09:07 +13:00
Nic Barker 0a703de69a
[Core] Add z-index and string base to Render Commands (#227) 2025-01-26 15:28:35 +13:00
Nic Barker 81589ad29b [Core] Fix layout bug in SIZING_PERCENT 2025-01-21 19:11:33 +13:00
Nic Barker 326325ffaf
[Core] Convert measureText pointer to value string slice (#214) 2025-01-20 11:27:22 +13:00
Daniel Collin e8025cc254
SetMesureText and SetQueryScrollOffset takes userData (#212) 2025-01-20 10:59:02 +13:00
Nic Barker a093730da2 [Core] Fix a segfault if debug tools were enabled without a measure text function 2025-01-16 09:14:57 +13:00
Michael Savage cd82ce6fcf
[Core] Don't divide zero by zero (#200)
Co-authored-by: Nic Barker <contact+github@nicbarker.com>
2025-01-15 10:06:22 +13:00
Nic Barker 814c9392c6
[Core] Add API to query element bounding boxes (#199)
Co-authored-by: hexmaster111 <hailey@not-an-email-address.fake>
2025-01-14 22:09:06 +13:00
Nic Barker 338852b3ce Fix a bug with the new padding 2025-01-14 14:26:30 +13:00
Nic Barker f1d8a53a32
[Core] [Breaking] Split padding values into left, right, top, bottom (#195) 2025-01-14 10:38:02 +13:00
Harrison Lambeth afba9f0de6
Add a function to reset text measurement cache (#181) 2025-01-13 19:26:46 +13:00
Nic Barker 3a4455aa83
Fix text wrapping handling with explicit newline characters (#192)
Co-authored-by: Ryzee119 <wendland@live.com.au>
2025-01-13 19:23:28 +13:00
Nic Barker 208c7cb3a0 Fix incorrect border between children after 2nd element 2025-01-12 19:16:09 +13:00
Nic Barker c2c445e455 Fix broken ifdef on MSVC 2025-01-12 10:49:00 +13:00
Nic Barker 9e7595b873 Fixed a bug where minMemorySize could cause a memory overwrite 2025-01-11 21:37:21 +13:00
Nic Barker 32d1a31dfe Fix uint64 usage for wasm 2025-01-11 21:35:45 +13:00
Nic Barker b2b50724e2 Fix bug in html renderer debug tools 2025-01-11 20:45:20 +13:00
Nic Barker d81c9e1de5 fix C++ compile issues 2025-01-11 14:21:47 +13:00
Nic Barker d7ee448ed5 Add EXTEND_CONFIG_BORDER 2025-01-11 14:15:24 +13:00
Nic Barker 7ecd5adbce Update debug view to have correct z indexing 2025-01-11 14:15:02 +13:00
Nic Barker 2fcb4cc76e Fix z index sorting of tree roots 2025-01-11 14:08:02 +13:00
Nic Barker 44fb89c8b6 Add an epsilon to compression comparison to prevent degenerate loop 2025-01-10 21:54:13 +13:00
Funto e11a394c25
[Compilers] Fix MSVC compilation with CMake (#178)
Co-authored-by: Nic Barker <contact+github@nicbarker.com>
2025-01-10 20:59:13 +13:00
FintasticMan 670f707997
[Core] Remove ##__VA_ARGS__ (#150) 2025-01-10 20:47:00 +13:00
Nic Barker b4452d080c C++ init order fix 2025-01-10 14:36:24 +13:00
Nic Barker 209f30dd56 Fix missing context initialization 2025-01-10 12:50:12 +13:00
Nic Barker 83ded6995e Add compiler error when attempting to create CLAY_STRING with non literal 2025-01-10 09:20:35 +13:00
Harrison Lambeth 944d290428
[Core] Multi instance / context support (#174) 2025-01-10 09:08:48 +13:00
FintasticMan a431254de4
[Core] Add check for supported C/C++ versions (#144) 2025-01-09 10:05:50 +13:00
Nic Barker c12cefeaf4
[Layout] Improve shrink size distribution (#173) 2025-01-08 19:39:20 +13:00
FintasticMan 61cb7c56a7
[Core] Fix default struct initialiser in C++ (#143) 2025-01-06 09:46:21 +13:00
FintasticMan 62077ff0d8
[Core] Fix errors due to cast to same non-trivial type (#155) 2025-01-06 09:26:53 +13:00
Bach Le 4ebe223937
[Core] Fix local id calculation (#50) 2025-01-06 09:19:07 +13:00
vince 6cb9c7c483
fix #99 - [Core] Bug in text wrapping at very narrow widths (#163) 2025-01-05 14:34:36 +13:00
Peter Zmanovsky bcb555fd10
Fix possible NULL pointer dereference (#153) 2025-01-04 13:26:58 +13:00
Nic Barker cf12cd6af8
[Core] Standardise number types to int32_t for array indices, lengths and capacities (#152) 2025-01-03 11:24:32 +13:00
Nic Barker a44423a133 Add comment to explain CLAY macro 2025-01-03 10:19:59 +13:00
FintasticMan cd01083ffe
[Core] Simplify CLAY macro (#119) 2025-01-03 10:02:58 +13:00
Nic Barker 68fbb07311
[Bindings/Odin] Update Odin bindings to latest (#151) 2025-01-03 09:59:09 +13:00
Stowy 902ff3b0a9
Fixed compilation using clang on windows (#134) 2024-12-31 17:51:18 +13:00
Nic Barker 20543bdc74 Fix a typof of #if and #ifdef" 2024-12-30 13:11:32 +13:00
FintasticMan c13eef1c1e
[Core] Fix more C99 compliance issues (#118) 2024-12-30 13:09:14 +13:00
Junior Rantila c24a41b9e4
Add Clay_IsDebugModeEnabled() (#130) 2024-12-30 12:04:48 +13:00
Nic Barker 37af99b221 Add missing Clay_PointerOver to header definition 2024-12-28 22:33:41 +13:00
Nic Barker ac473d6fe7
[Renderers/SDL2] Create initial SDL2 renderer (#115)
Co-authored-by: Junior Rantila <junior.rantila@gmail.com>
2024-12-28 19:15:22 +13:00
FintasticMan bec56e68a4
Fix a couple of standards-compliance issues with C99 (#81) 2024-12-27 11:12:59 +13:00
Nic Barker 04694b0da2
[Core] Implement Error Handler / Callback (#105) 2024-12-26 19:58:59 +13:00
Nic Barker 6a9b723dcc Fix an issue where debug tools weren't scrollable 2024-12-24 22:28:01 +13:00
Hayden Kowalchuk 9904ca533a
fix: move internal types to stdint specific. Match Clay_RenderCommandArray_Get protoypes (#78) 2024-12-22 19:22:10 +13:00
Nic Barker a48d40635a remove inline functions for better windows lib compatibility 2024-12-22 09:13:28 +13:00
Nic Barker 712a79c473
Allow floating configuration to capture pointer (#66) 2024-12-21 06:36:34 +13:00
Nic Barker 18f06e5faf
Implement native scroll containers in HTML renderer (#54) 2024-12-19 11:35:18 +13:00
Oleksii Bulba b9d02330ff
Fix: moved CLAY__MIN and CLAY__MAX to public macros (#55) 2024-12-19 09:29:12 +13:00
Nic Barker ff3b69d94f Fix a bug with borders that could cause duplicate IDs 2024-12-12 10:31:41 +13:00
Nic Barker d2e6be64a9 defer rendering of borders until after children 2024-12-05 13:54:54 +13:00
Nic Barker 0ef877eef7 fix an edge case where text could be measured incorrectly 2024-12-05 13:23:20 +13:00
Nic Barker efec6ab1de Fix a bug that could cause double newlines in text blocks 2024-12-04 16:02:53 +13:00
Nic Barker 9f0cf751da Fix incorrect handling of naked newline characters in text blocks 2024-12-04 15:46:02 +13:00
Nic Barker 41f6616993 Fix text measurement default bucket count 2024-12-02 12:04:01 +13:00
Nic Barker b8725bfb65
Improve overflow handling / CLAY_MAX_ELEMENT_COUNT exceeded (#52) 2024-12-01 21:05:56 +13:00
Nic Barker 51c5355686
Fix text cache overflow (#51) 2024-11-27 12:13:11 +13:00
Bach Le c5a1c1a4ed
Forward declare Clay__OpenTextElement (#49) 2024-11-18 15:01:55 +11:00
Nic Barker 8b84561f0d Add Clay_GetElementWithIndex function 2024-10-24 21:38:02 +13:00
Nic Barker 2f67b61256 README updates 2024-10-23 09:44:39 +13:00
Nic Barker 2d6e9afe87 Fix GCC type cast 2024-10-22 21:12:47 +13:00
Nic Barker 83551449c2 Fix a bug when a single word couldn't fit in its container 2024-10-22 21:07:24 +13:00
Nic Barker 29133bc783
Multi-type elements (#34) 2024-10-22 20:41:35 +13:00
Nic Barker 3dffbea2a3
Fix an overflow bug in the text measurement cache (#44) 2024-10-16 12:11:01 +13:00
johan0A 05eb12bed7
Made casting more explicit for better compatibility with different compilers (#41) 2024-10-12 13:25:22 +13:00
Nic Barker f579690f5d Improve space allocation for GROW containers 2024-10-07 18:56:13 +13:00
Nic Barker 90b4b0de26 float cast to appease C++ 2024-10-06 13:32:55 +13:00
Nic Barker 843b5bfe89 Add numeric rounding to final bounding box output 2024-10-06 13:29:06 +13:00
Nic Barker 51082d2f1e
Change lineSpacing text config attribute to lineHeight (#37) 2024-10-05 20:57:52 +13:00
Nic Barker 26013e657f Fix a bug that causes incorrect allocation of total width to multiple SIZING_GROW children 2024-10-05 18:55:22 +13:00
Nic Barker c3f2baf40a Fix a bug with scroll offset in scroll containers with GROW where contents were smaller than container 2024-10-05 11:59:29 +13:00
Patrik Smělý c02db35554
[Bug] Fix NEWLINES wrap mode not being respected correctly (#36) 2024-10-04 14:30:49 +13:00
Patrik Smělý 987e7fde5d
Fix bug in Clay_SetPointerState that causes null pointer deref (#33) 2024-10-02 15:05:52 +13:00
Nic Barker 948b7ce70b
C++20 Support (#31) 2024-09-29 12:53:46 +13:00
Nic Barker 5e7c4c41eb
[C] Convert element macros to use for() internally (#30) 2024-09-28 15:43:29 +12:00
Nic Barker 3b4c177e58
Fix const inits for gcc 9.4 and add docker tests for old gcc compiler (#29) 2024-09-28 07:42:08 +12:00
Bach Le 10cc866477
Add CLAY_LOCAL_ID[I] (#27) 2024-09-25 14:04:28 +12:00
Nic Barker 3775927e40 Replace const structs with macros to appease GCC 2024-09-25 13:43:23 +12:00
Bach Le c60fb1300f
Initialize text measurement hashmap (#25) 2024-09-25 13:30:36 +12:00
Michael Savage 3e0791bdc5
Don't use __VA_ARGS__ in a non-variadic macro (#21) 2024-09-21 08:14:54 +12:00
Nic Barker 6430bbbdc3 Fix warnings caused by misname 2024-09-21 08:13:22 +12:00
Nic Barker 5bb725d005 Fix forward declarations 2024-09-21 08:04:31 +12:00
Nic Barker 0903440a34 Add notice for defining implementation macro at the top of the file 2024-09-20 20:56:33 +12:00
Nic Barker 332837befd
Fix issues with multiple translation units (#20) 2024-09-20 20:46:48 +12:00
Nic Barker b2d922c78d Fix a compile bug in update scroll containers 2024-09-20 07:12:11 +12:00
Nic Barker 2729188a24 Rename parameter 2024-09-18 11:39:14 +12:00