Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
README | 2012-01-13 | 3.2 kB | |
ansigl-0.0.md5sum | 2012-01-13 | 52 Bytes | |
ansigl-0.0.tar.gz | 2012-01-13 | 43.1 kB | |
Totals: 3 Items | 46.4 kB | 1 |
AnsiGL -- A string "graphics" library TODO: Create proper documentation! From the comments of the initial checkin... Things that work (at least mostly): achar - An ANSI-enabled 'char' astring - A std::string-like implementation based on achar instead of char Point - A simple (x,y) coordinate class Area - Effectively identical to point in that its just 2 integers, only these are Width and Height instead of coordinates FixedArea - An area with a Point Pixel - A specialized achar that serves as the basis for a Surface Surface - The most-basic (meaningful) rendering context of AnsiGL Sprite - The start of a Surface-based lineage dedicated to being content, rather than displaying content Window - The start of a Surface-based lineage dedicated to the presentation of content ansigl_ncurses - A separate (optional) extension library to provide better ncurses integration (AnsiGL should probably not ever implement input handling/etc.) - Mostly a simple collection of functions for ncurses compatibility - The most notable is RenderToNcurses() to render a Surface out to an ncurses WINDOW (usually stdscr). - Note: AnsiGL supports more ANSI codes than ncurses (and most terminals). In addition, nearly every terminal tested without ncurses has performed very differently in terms of which ANSI codes are supported. This is probably why the ncurses team didn't bother, but since they have already been added, there's no real need to remove them since they do function appropriately. Known issues: - ncurses handles colors with a very different interface when compared to the methods used by AnsiGL, even though the underlying technique is probably very similar. ANSI codes do not currently render accurately. Things that are planned: TextWindow - A Window with alignment/word-wrap/formatting options for text InputWindow - A specialized TextWindow for echoing input ChatWindow - A TextWindow with an InputWindow attached under it, essentially Desktop - A specialized Window for managing multiple Windows within it Something akin to the Panel library of ncurses Other misc. plans: - Give sprites the ability to pseudo-rotate (0,90,180,270) - Animations; probably something like vector< Sprite > with functions to set the current frame, advance frames, etc. Nearly everything but timing - Some sort of an optionally stand-alone or integrated timing mechanism for animations - More "drawing" functions - Menus and other useful "widgets" - An expansion beyond ASCII? Multiple character sets, or possibly UTF-8 support? - An expansion beyond 16-color ANSI? For the time being, until proper documentation can be created, the recomendation is to use the header files for guidance. This file, along with the other "standard" GNU documentation and "official" documentation are on the todo list. They will be started soon and standard practice will be to update documentation at the time of changes that cause any documents to be out of date.