Hey all, As promised, I committed my evas textblock (and related edje_entry) changes today (actually yesterday, but because of technical issues this email is only sent today). What exactly changed: 1. The textblock node system. Instead of the linked text and format nodes structure that was used until now, there are two linked lists: text nodes and format nodes. Each text node represents a paragraph and the format nodes represent formatting, either visible or invisible. Each text_node has an associated format node (which is the first format node pointing to it, or if there's none, the last format node before it), every text node has a format node associated unless if there are no format nodes before and then the format node is set to NULL. Each format node points to a text node and a position in that format node (actually an offset from the last relevant format node). 2. Text/format nodes are now two distinct data types. 3. The concept of nodes is no longer exposed in the API except for the format nodes concept which lets the user of the API cycle through the format nodes finding whatever he looks for (for example: anchors). 4. Because the nodes are essentially paragraphs the only way to break a node is by inserting a PS (paragraph separator). 5. Pressing return in edje_entry now translates to "ps" (paragraph separator) and pressing shift+return now translates to a line berak (<br>). Unless a line break is specifically desired, <br> should be avoided. This behavior is very common (openoffice, ms office, etc...) because it's more correct. Although the LTR guys won't see much of a difference (in the short run), RTL guys will really enjoy this change because this concept is very important for the BiDi algorithm. 6. Adjusted edje entry to work with the new API, edje_entry should be faster and is definitely cleaner now. 7. Changed the BiDi functions a bit to work nicer with sections of big chunks of text.
What's still not there: 1. Optimizations. 2. Proper documentation (sorry guys, had to commit this today, docs will follow in the next couple of days). -- Tom. Performance comparison: OLD NEW Text Basic: 170.26 178.55 ( +4.9%) Text Styles: 15.63 15.91 ( +1.8%) Text Styles Different Strings: 11.25 11.06 ( -1.7%) Text Change: 105.36 100.91 ( -4.2%) Textblock Basic: 173.08 174.80 ( +1.0%) Textblock Intl: 463.97 458.93 ( -1.1%) ------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel