0ebf0bc814
Raycaster example now works
2023-03-16 00:30:59 -04:00
40aa1a788b
Renamed some oddly named files
2023-03-16 00:26:54 -04:00
bffdb000ed
Piano element handles motion events
2023-03-16 00:25:36 -04:00
5ca9206f65
DocumentContainer properly adopts children now
2023-03-16 00:24:40 -04:00
1239f4e03d
Made DocumentContainer satisfy FlexibleParent
2023-03-15 23:57:22 -04:00
8aaa017902
Re-added OnScrollBoundsChange methods because they are useful
2023-03-15 23:56:00 -04:00
639baecee5
Propagator unfocuses children before focusing a new one
2023-03-15 23:49:57 -04:00
Sasha Koshka
c1b3562d10
It compiles
2023-03-15 23:47:13 -04:00
ef325d5161
Found a flaw in the focusing model, rectifying.
...
Still need to fix on X backend window, that will be in the next
commit.
2023-03-15 17:08:43 -04:00
2f60abdfa3
Core properly sets nil parent
2023-03-15 01:46:58 -04:00
1a66224648
X backend window sets itself as parent (oops)
2023-03-15 01:43:32 -04:00
275e113e3b
Fun elements now conform to new API
2023-03-15 01:42:07 -04:00
0015820fac
Basic elements now conform to new API
2023-03-15 01:41:23 -04:00
f4799ba03d
Testing elements now conform to new API
2023-03-14 19:41:36 -04:00
Sasha Koshka
14ad35d85c
X backend now conforms to new API changes
2023-03-14 18:54:24 -04:00
Sasha Koshka
a34e8768ab
Redid cores to conform to the new API changes
2023-03-14 18:30:32 -04:00
b08cbea320
Overhauled the element interfaces
...
Instead of the previous parenting model where parents would set
child callbacks during adoption by probing for callback setters,
child elements will instead probe their parents for notify methods
listed in the standard parent interfaces. This means that an
element cannot be half-parented to something, nor can it be
parented to two things at once. Parent elements may themselves
fulfill these interfaces, or they can pass a hook that fulfills
them to the child.
2023-03-14 17:08:39 -04:00