Sasha Koshka
aff9aca835
We now have an untested lone scrollbar element
2023-03-09 18:15:52 -05:00
Sasha Koshka
cf672824a6
im dumb as hell bruh
2023-03-08 21:05:56 -05:00
Sasha Koshka
04884bd8e3
Oh my joodness
2023-03-08 20:41:48 -05:00
Sasha Koshka
305acea285
Use ezprof to profile
2023-03-08 20:24:43 -05:00
Sasha Koshka
f3c1c95a57
Keyboard control for sliders
2023-03-07 19:13:08 -05:00
Sasha Koshka
423e6869c0
X backend better handles expose events
...
Previously, when an expose event was recieved, the backend would
call Window.paste, converting RGBA image data to BGRA image data.
Now we only call Window.pushRegion with the bounds given to us by
the expose event(s). This speeds up window resizing significantly.
2023-03-07 12:48:29 -05:00
Sasha Koshka
803812f9c9
Texture pattern now samples X position correctly
2023-03-06 21:40:20 -05:00
Sasha Koshka
c171273240
Sped up rendering significantly
2023-03-06 21:34:14 -05:00
Sasha Koshka
11402cfc25
Button applies the sink offset correctly to icons
2023-03-05 11:20:33 -05:00
Sasha Koshka
7e0d64e8bd
TextBox text is now vertically centered
2023-03-05 10:58:27 -05:00
Sasha Koshka
d38bd1cbf5
Hiding button text actually works now
2023-03-05 00:31:41 -05:00
Sasha Koshka
865dd20724
Buttons can now hide their text
2023-03-05 00:23:45 -05:00
Sasha Koshka
6c46fc6f7c
Made a few icons blacker
2023-03-05 00:07:37 -05:00
Sasha Koshka
0071994ba6
Buttons can now have icons
2023-03-05 00:05:56 -05:00
Sasha Koshka
11c747e225
Dialog boxes now have icons
2023-03-04 23:09:46 -05:00
Sasha Koshka
61bbe0e346
Added an Icon element
2023-03-04 22:56:44 -05:00
Sasha Koshka
1e8bb56b7c
Added small icons to default theme
2023-03-04 22:07:59 -05:00
Sasha Koshka
ae6cf128f8
Created Icon interface
2023-03-04 20:48:46 -05:00
Sasha Koshka
ecaad02c0b
Added a bunch of icon IDs
2023-03-04 20:10:53 -05:00
Sasha Koshka
cad10a1fb1
Merge pull request 'make-containers-better' ( #10 ) from make-containers-better into main
...
Reviewed-on: sashakoshka/tomo#10
2023-03-04 21:26:33 +00:00
Sasha Koshka
912a3f9f66
oops lmao
2023-03-04 16:18:43 -05:00
Sasha Koshka
531b0ffce9
Fixed Container not clearing child event handlers in DisownAll
2023-03-04 10:44:45 -05:00
Sasha Koshka
9c12cd7e18
Fixed cringe bug with focus requests being improperly handled
2023-03-04 02:20:48 -05:00
Sasha Koshka
4f6f4e1f1a
Me when I make the exact mistake twice
2023-03-04 02:04:47 -05:00
Sasha Koshka
dc5ddfc0bd
Propagator no longer segfaults when handling keynav
2023-03-04 01:48:16 -05:00
Sasha Koshka
5fc5af92df
Layouts now take in proper margin and padding values
2023-03-04 01:42:14 -05:00
Sasha Koshka
90ce0d7281
Fixed Propagator.forChildren
2023-03-04 01:29:45 -05:00
Sasha Koshka
be286fa86c
The container actually creates a propagator now lmao
2023-03-04 01:27:16 -05:00
Sasha Koshka
252433f13d
Cleaned up Container somewhat
2023-03-04 01:26:23 -05:00
Sasha Koshka
165d0835bf
Worked Propagator into basic.Container
2023-03-04 01:20:23 -05:00
Sasha Koshka
56e11ae1de
Cleaned up the (ChildIterator -> Parent) interface
2023-03-04 01:05:37 -05:00
Sasha Koshka
1d9fb6024d
Fully implemented Propagator
2023-03-04 00:57:17 -05:00
Sasha Koshka
c13cdd570d
Implemented all focus methods except for HandleFocus
...
I am dreading this
2023-03-04 00:38:37 -05:00
Sasha Koshka
5af8d7fd97
Implemented keyboard, mouse, theme, and config event propagation
2023-03-04 00:18:27 -05:00
Sasha Koshka
b6eb158964
Tidied up documentation on Propagator
2023-03-03 23:48:10 -05:00
Sasha Koshka
6bb5b2d79c
Created the stub for Propagator
...
Unlike the previous poorly-defined ContainerCore idea, this struct
has one sole responsibility and that is propagating events to
children. There may be another struct called like ChildManager or
something in the future that also abstracts away logic for
adoption, canvas cutting, disowning, layout, etc.
2023-03-03 20:31:30 -05:00
Sasha Koshka
538123dcd5
No that was a bad idea time to do something else
2023-03-03 20:16:36 -05:00
Sasha Koshka
38baa97e76
ContainerCore and ContainerCoreControl WIP
2023-03-02 18:59:08 -05:00
Sasha Koshka
e9e6e4fbe7
Added padding/margin distinction to layouts
2023-03-02 17:58:42 -05:00
Sasha Koshka
285cb4810f
Remove margin from layout interface
...
Layouts will need to store margin and padding values within
themseleves.
2023-03-02 16:48:37 -05:00
Sasha Koshka
2cac2b3bd0
Merge pull request 'data-oriented-patterns' ( #9 ) from data-oriented-patterns into main
...
Reviewed-on: sashakoshka/tomo#9
2023-03-01 18:07:08 +00:00
Sasha Koshka
1f2e8aa677
Some final theme tweaks
2023-03-01 13:06:34 -05:00
Sasha Koshka
ef59f46559
Made the progress bar look nicer
2023-02-28 19:00:34 -05:00
Sasha Koshka
829f1525b8
Not even gonna bother writing a good name
2023-02-28 17:15:20 -05:00
Sasha Koshka
b1d15fb4ec
this piano is DOPE and PHAT and WAY COOL
2023-02-28 00:17:05 -05:00
Sasha Koshka
ee45b2fa60
Theming tweaks and rendering fixes
2023-02-27 17:00:28 -05:00
Sasha Koshka
8dd506a007
Textures now render properly
2023-02-27 16:38:33 -05:00
Sasha Koshka
de10cde630
Add image textures to theme
2023-02-27 12:48:44 -05:00
Sasha Koshka
449922851f
Fix list not drawing background
2023-02-26 22:56:20 -05:00
Sasha Koshka
26787d8670
Fixed TextBox
2023-02-26 22:48:14 -05:00