Evas
Evas is a clean display canvas API, cross-platform, for several target display systems that can draw anti-aliased text, smooth super and sub-sampled scaled images, alpha-blend objects and much more.
Things to be done:
- Text-grid object: That object is needed for a terminal application to not have the overhead of one text object per grid element of the terminal. The next step would be to write a smart object, then edjify all this (theme would manage scrollbars, etc...). The terminal application would provide multiple tabs, one shell for each tab. On the evas side, we need to:
- set (x,y) grid element to a char or UTF-8 string
- set grid size of the cells
- set background and foreground color
- set a background if background not transparent to char
- keep track of which chars changed (maybe just track rows that changed and each row has a first/last char for a run of chars that changed)
- be able to blit (copy) the array or sections of the array for scrolling
- Could expose this via shift type functions. Either shift chars to the left/right with wrapping, rows up/down, or columns left/right. The possibility for custom copies may be available, not sure if it would serve any purpose though. --mekius
- set a "run" of chars (eg just set a string without changing fg/bg color per char - just use the given fg/bg color for the run of chars)
- set font / size
- set style for each grid element (bold, italic, underline, other ?) usig a flag for each cell
- To expand on this maybe we can use start and stop flags that way we can easily turn the escape codes (I think that's how they do color/styles) from the shell into flags? --mekius
Attachments
-
Anjuta_attach.2.jpg
(45.6 KB) - added by buergi
3 weeks ago.
Image by Audifahrer from old wiki
-
Anjuta_main.2.jpg
(125.8 KB) - added by buergi
3 weeks ago.
Image by Audifahrer from old wiki
