Commit Graph

100 Commits

Author SHA1 Message Date
9322785ca0 mod: update zig version
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 43s
2025-02-19 22:55:03 +01:00
cc831a5cdf fix(element/scrollable): render horizontal directed contents correctly
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 46s
2025-02-19 22:23:32 +01:00
86b3e7d4ed feat(scrollable): make Container scrollable through Element Scrollable
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 1m35s
2025-02-19 20:32:26 +01:00
f55d71a7cb mod(mouse): fix input.Mouse.in method
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 46s
Pass through mouse events where they actually match the corresponding
`Container`. Adopt mouse event accordingly in `Scrollable` `Element`
trait when passing through the mouse event to the scrollable
`Container`.
2025-02-18 19:09:03 +01:00
f66a870223 ref(input): move mouse.zig and key.zig into public input.zig namespace
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 1m41s
2025-02-18 18:24:09 +01:00
e2f9408850 add(input): mouse support
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 46s
2025-02-17 23:36:27 +01:00
c2080ab40f ref(ctlseqs): use control sequence file; rename key names
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 46s
2025-02-17 23:08:47 +01:00
a9f48bfb6a ref(key): make Key struct packed and rename constants
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 2m5s
2025-02-17 21:06:15 +01:00
7891af6c6f add(element/scrollable): implement content provider
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 1m49s
However this is only working for the same size as the parent container
(i.e. same `Size`). The `.resize` event for the `Container` of the
scrollable element needs to be the necessary and/or required size for
the contents (regardless of the screen viewport).
2025-02-17 19:58:25 +01:00
7b690d387b fix(lint): correct spelling errors
All checks were successful
Zig Project Action / Lint, Spell-check and test zig project (pull_request) Successful in 1m9s
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 42s
2025-02-16 16:01:04 +01:00
5c929479b2 add(main): main executable with zig build run support
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (pull_request) Failing after 5m10s
The main executable contains a simple `Element` implementation example
showing how interaction through and outside of the event loop can be
implemented to impact the rendered contents.
2025-02-16 15:35:50 +01:00
d8a9e72b67 add(border): seperator line options with corresponding code points 2025-02-16 02:04:53 +01:00
d951906b2b rem: Scroll from Propierties of Container
Updated the corresponding documentation and ideas for how to realize
scrollable contents.
2025-02-15 18:50:36 +01:00
01eb14f1bd doc: update Roadmap section of README 2025-02-15 16:03:06 +01:00
1041b0a955 mod: update zg dependency
`zg` now supports zig 0.14 dev which this library already uses.
2025-02-15 16:00:55 +01:00
4781e9ce39 add(element): interface for injecting user behavior to containers
Some additional refactoring and documentation updates have also been
applied.
2025-02-15 15:56:30 +01:00
5c148e1aa5 fix(cotainer/border): seperator placement without border's and gap 2025-02-15 11:25:20 +01:00
a6aa6e5150 fix(container/border): correct location and rendering of separators between child elements 2025-02-15 11:10:37 +01:00
26d31a38de ref(container): use only one size for each container 2025-02-15 10:49:48 +01:00
01d121ef87 mod: update README and remove alignment options 2025-02-14 22:27:24 +01:00
abaea968a6 rem(container): sizing options
This enables the `Layout` struct to be packed (as well as the
`Properties` struct) which should further reduce the memory footprint.
2025-02-14 22:19:20 +01:00
73a7f740c9 ref(container): move size: Size member from Scroll to Container 2025-02-14 22:03:21 +01:00
c2a03e95c1 fix(container/layout): padding calculation for anchor corrections 2025-02-14 21:59:10 +01:00
8998afd9d6 mod(): 2025-02-14 21:49:30 +01:00
4cda202873 fix(renderer): integer overflows 2025-02-14 20:57:48 +01:00
bbe6f4741e WIP: use viewport to allow sizes of scroll to extend further than renderable screen 2025-02-12 22:33:03 +01:00
98031dbd1a add(container/layout): sizing option percentage 2025-02-09 13:41:23 +01:00
ef950809a6 add(container/layout): sizing:fixed option 2025-02-09 12:59:55 +01:00
c72d76470a mod(container/border): change default configuration 2025-02-08 13:52:01 +01:00
29ae75adf5 add(layout/padding): layout configuration for padding
With minor code layout fixes
2025-02-08 13:11:27 +01:00
d326deac97 add(container/rectangle): add content creation 2025-02-07 17:43:16 +01:00
11531e9d4a mod: remove min_size argument from App.start 2025-02-06 22:19:27 +01:00
8586a05508 mod: fix rendering resizing; layout placement of child elements for vertical and horizontal directions
Work in progress for separator configuration of border properties
2025-02-06 20:10:22 +01:00
009d2129b6 mod(container/layout): support gap configuration 2025-02-04 19:06:09 +01:00
9c06ced658 mod(style): styling and color revamp now with fewer characters to print to the terminal 2025-02-04 17:51:28 +01:00
2bfacc0e98 WIP: container rendering for borders + container element rendering 2025-02-03 19:55:33 +01:00
0bf79dc236 mod(container): support layout direction handling for child elements 2025-02-01 11:31:05 +01:00
1293cb065d WIP: add Container type with corresponding Properties configuration
The configuration of the `Container` types is very much inspired by
[clay](https://github.com/nicbarker/clay).
2025-02-01 01:05:56 +01:00
bdbe05c996 mod(structure): update project structure
Remove examples, add description for design goals in README.md and
apply re-names and naming changes accordingly for the project structure.
Implement a flat hierachry, as the library shall remain pretty simple.
2025-01-30 23:02:34 +01:00
3decc541a9 mod(renderer): initial version of double buffer intermediate renderer
This branch will implement the necessary changes for the widgets and
their implementations to use the new renderer correctly.
2025-01-30 20:53:01 +01:00
c83ceff925 fix(typo): correct function name
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m40s
2025-01-30 16:28:36 +01:00
1ea410354f fix(View): correct typo
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 51s
2025-01-15 11:02:32 +01:00
e9be9a1c35 add(View): enable and disable interface functions
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 38s
2025-01-15 11:00:11 +01:00
f4a01f227e fix: renderer default size value and example usage
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 41s
2025-01-14 17:17:24 +01:00
2efbb5feb1 mod(renderer): store absolut screen size for view change to report current screen size accordingly
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m21s
2025-01-14 17:08:19 +01:00
3048b59e84 add(view): View type for composing view modules
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 22s
2025-01-14 01:14:55 +01:00
817056cf8b fix(style): apply merging only if it differs from the default values
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 42s
2025-01-07 13:08:13 +01:00
0015bac9ff add(style): merge function to merge styles from different styles together
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m43s
Merging may overwrite changes of the current style with the other style
if that style differs from the default value.
2025-01-07 12:56:52 +01:00
c2c3f41ff3 mod(memory): do not create items on the stack instead using the provided allocator
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 4m26s
2025-01-06 21:56:04 +01:00
04e1ca087f dep: bump zg dependency
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 51s
2024-12-27 12:04:04 +01:00