ImageGrid/GridWidgit.otl
Alex A. Naanou 828855401f added basic design doc for GUI (still unfinished)...
need to move all the different GUI design docs from different projects to one place...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2011-10-31 23:37:04 +03:00

89 lines
3.0 KiB
Plaintext
Executable File

General Structure
|
|
| | | |
| +----------------------------------+ | loading buffer
| +----------------------------------+ | (rows loading or unloading while scrolling)
| | | |
| | row | |
| | | |
| +----------------------------------+ |
| -+
| -+
| +----------------------------------+ | scroll buffer
| | | | (loaded rows)
| | row | |
| | | |
| +----------------------------------+ |
| +----------------------------------+ |
| | | |
| | row | |
| | | |
| +----------------------------------+ |
| -+
| +-visible-area-------------------------+
| | |
| | +----------------------------------+ |
| | | +========+ +--------+ +--------+ | |
| | | | ref | | | | | | |
| | | +========+ +--------+ +--------+ | |
| | +----------------------------------+ |
| | +----------------------------------+ |
| | | +--------+ +--------+ +--------+ | |
| | | | block | | | | | | |
| | | +--------+ +--------+ +--------+ | |
| | +----------------------------------+ |
| | +----------------------------------+ |
| | | | |
| | | row | |
| | | | |
| | +----------------------------------+ |
| | |
| +--------------------------------------+
| -+
| +----------------------------------+ | scroll buffer
| | | | (loaded rows)
| | row | |
| | | |
| +----------------------------------+ |
| +----------------------------------+ |
| | | |
| | row | |
| | | |
| +----------------------------------+ |
| -+
| -+
| +----------------------------------+ | loading buffer
| | | | (rows loading or unloading while scrolling)
| | row | |
| | | |
| +----------------------------------+ |
| +----------------------------------+ |
| | | |
|
|
elements
view / visible area
scroll buffer
loading/unloading buffer
operation/actions
scroll
resize
filter
positioning
reference block
| a block top-left of the visible area.
|
| this block must remain in the same position during any operations
| with the content of grid. including:
| - resizing
| - filtering
|
| there is only one exception: arity of the grid -- the top-most row
| must always be full. thus moving the reference left of right, but
| never up or down.
.
| vim:set spell ts=4 sw=4 :