There are four user levels to using a GUI framework:
- View composition
- Custom interactions
- Custom widgets
- Framework Development
Event
and Lifecycle
are propagated down the entire tree but if every single events was processed by every widget that would cause performance issues.Pod
Pod
and some are local and targeted to specific subset of widgets in the tree (e.g.MouseMove).IS_DISABLED
, IS_HANDLED
, HAS_ACTIVE
, IS_HOT
, and HAS_FOCUS
flags.IS_HANDLED
flag is set to false
at the root of the tree by the Pod
IS_HANDLED
flag through its context.IS_HANDLED
flag applies to keyboard and mouse events.Buffer<uint> Input; | |
RWBuffer<uint> Output; | |
//returns the index that this value should be moved to to sort the array | |
uint CuteSort(uint value, uint laneIndex) | |
{ | |
uint smallerValuesMask = 0; | |
uint equalValuesMask = ~0; | |
//don't need to test every bit if your value is constrained to a smaller range |