11d30d9f37e7b04704ad88d2f239838aa1a82cc1
[screen-lua.git] / src / drafts / screen_internal
blob11d30d9f37e7b04704ad88d2f239838aa1a82cc1
1 A display stands for an attached display area. Since there can be multiple
2 users, the possibly multiple displays are chained together in a single
3 linked-list 'displays'. 
5 Canvas is a place to draw on. They logically belong to a specific display.
6 However, a display can be further divided to several sub-regions. As a result,
7 The regions need corresponding canvases. Moreover, the way that a display is
8 organised can be saved by layout object.
10 Each window in screen stands for a sub-terminal that runs inside screen.
11 When shown in foreground, the window draws a layer on the showing canvas.
12 A layer can be drawn on multiple canvas, either in different regions or in
13 different displays. So it also make sense to call it 'view'. However, the name
14 layer tells us that it's stackable. One can add an overlay to the existing
15 one, such as the help page.
17 Finally, to ease the clipping of layer, there is also a viewport object to
18 track the boundary of each canvas. (But why not the canvas itself?)