![]() | ![]() | |||
![]() | ||||
![]() | ![]() | ![]() | ![]() | ![]() |
top pages
Soapbox
Company
| metakit's "view" model (continued) To explain how views are actually stored on file, let's change the "notation" a bit:
One trick which may help, is to think of the head of each pin as an <offset,size> tuple. The horizontal pin contains these offsets and sizes (and a row count).
This view model is central to Metakit. It illustrates how data is physically stored as columns (pins), but logically still represents a number of rows (dashed boxes). subviews Subviews require some extra attention to describe properly.
The image on the right has a view with 5 rows, 6 columns, and one subview shown in more detail. That subview has 3 rows, 4 columns. The same data, drawn in terms of "pins", looks like this:
That's all The above is a high-level description of how Metakit stores views and subviews. If you think about it for a bit, you can see how everything is essentially a tree, with the horizontal pins and the subview columns forming the nodes, and the rest leaves. | metakit index • Overview • Quotes • Links | |||
![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() |