Re: [E-devel] Different text areas
On 7/19/05, Brian Sakal [EMAIL PROTECTED] wrote: Hi all. I'm just curious... Why is there an EWL textblock, an evas_object_textblock, and an ESmart_Textarea? What's the difference between them? Also, what is (are) the difference(s) between an ESmart object and an EWL widget? It seems objects made from both (i.e. custom ESmart object custom EWL widget) libraries can end up the same (from the user's point-of-view) in the end. The Esmart object is is a wrapper around Evas's textblock object and allows for things like input, selection, copy / paste (not in there yet) using purely evas. All the formatting is currently done in textblock and there's no real way to save the formatting info yet. What needs to be done for this one is basically implement mouse selection and clipboard interaction for copy / paste operations. It also needs a way to save the text and restore it to its formatted state. An example is provided in apps/enscribe and apps/e_modules/src/lib/notes. The EWL one is an EWL widget which does more of the same, except it was heavily modified by Dan to do all the formatting of the text by itself then dump its final result into an Evas textblock object. This should allow easier importing / exporting of the text to and from the object. To acquire more about this look at its TODO (not to sure if it exists) or ask Dan / Nathan. I hope this sheds some light on what you'd like to do. Best Regards, Hisham. -- Hisham Mardam Bey MSc (Computer Science) http://hisham.cc/ +9613609386 Codito Ergo Sum (I Code Therefore I Am) --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_idt77alloc_id492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
RE: [E-devel] Different text areas
Hi all. I'm just curious... Why is there an EWL textblock, an evas_object_textblock, and an ESmart_Textarea? What's the difference between them? Also, what is (are) the difference(s) between an ESmart object and an EWL widget? It seems objects made from both (i.e. custom ESmart object custom EWL widget) libraries can end up the same (from the user's point-of-view) in the end. Besides the differences, what are the advantages/disadvantages to making some new-fangled widget from EWL or ESmart (besides that it's much easier for another programmer to use this widget when done with EWL)? The main reason I'm asking is because all of these text-input objects need a little work to get past the basic functionality they have, and I would like to contribute. The thing is, I'm not sure which API to start studying... I'd like to know which of these textareas is most likely to be most heavily used in the future. (I'm going to be a senior in high-school, and my inexperienced programming brain can only take one API at a time, even though there are many freshmen that suck up code like I do Coke :-) ). Any help would be appreciated :-). The Ewl_Text (and Ewl_Entry) widget are the EWL wrappers around the evas_object_textblock. They try to make it a lot simpler to use the textblock. They also attempt to deal with the issues of newlines and tabs in the textblock so that the text returned to the user is the same text that was inserted. To this end, EWL contains its own copy of the text and its own set of formatting trees to hold the formatting. When the text is displayed it will then walk that text and formatting to build the evas_object_textblock. (This building on realize also makes this fit in nicely with the caching work being done for EWL). There is currently no selection code in the EWL widget at the moment but I'm working on triggers which will also form the basis for the selection code. (A trigger is essentially an A HREF in HTML speak. It allows you to specify a set of text and to get callbacks on focus in/out, mouse up/down.) So, once the triggers are all good I'll see about getting selections into place. In terms of what will be used most. Who knows. The EWL stuff is obviously what will be used the most if your doing an EWL app. The EWL stuff can be embedded into Edje apps as well. The evas_object_textblock will be used if you want to use straight Evas, and the Esmart textarea when you allow the extra library in there. Ewl_Text and Esmart_Textarea are both essentually the same thing, they just go about what they do in differnet ways. The evas_object_textblock is the foundation for both of them. dan --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
RE: [E-devel] Different text areas
Thanks Hisham and Dan. But now my curiosity is further aroused :-). Since evas_object_textblock is the foundation for the other two, is there a reason not to fix the bugs/formatting features in that instead of fixing them in the EWL or ESmart? Are you leaving room for different ways of formatting? Anyhoo, I'd love to help with text selection. Are the triggers being done only for the EWL text area? Also, can't Etox handle the text formatting on-the-fly (sorry if that's an absurd suggestion, but I'm still getting acquainted with what libraries are built on top of what), and if it can be used in this case can't the trigger things be programmed into Etox, since it already has a way of doing certain things to only specific parts of the text it contains (at least I think it does)? Finally, the EWL vs. ESmart/Evas... why would someone not use EWL? After all, it is built on top of Evas, too. Would the execution speed difference be significant (or at least significant enough to sacrifice the ease-of-use of the EWL library)? I'm really itching to get my hands dirty in this code, but which dirt? :-) --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
RE: [E-devel] Different text areas
On Tue, 2005-07-19 at 23:19 -0500, Brian Sakal wrote: Thanks Hisham and Dan. But now my curiosity is further aroused :-). Since evas_object_textblock is the foundation for the other two, is there a reason not to fix the bugs/formatting features in that instead of fixing them in the EWL or ESmart? Are you leaving room for different In terms of evas_object_textblock, the only thing we work around in EWL at the moment is the newline handling. Textblock takes \n \t as _formatting_ instead of text. So, we have to do some tricks to keep our cursor position correct and get the right text. There are some changes that need to be pushed back into textblock but haven't been done yet. ways of formatting? Anyhoo, I'd love to help with text selection. Are the triggers being done only for the EWL text area? Also, can't Etox Triggers will only exist in the EWL code. If someone wants to try to port them to one of the other systems they can feel free. handle the text formatting on-the-fly (sorry if that's an absurd suggestion, but I'm still getting acquainted with what libraries are built on top of what), and if it can be used in this case can't the trigger things be programmed into Etox, since it already has a way of doing certain things to only specific parts of the text it contains (at Etox is dead. It has been replaced by evas_object_textblock. Etox was too slow at what it did to be widely used. The textblock fixes that issue. least I think it does)? Finally, the EWL vs. ESmart/Evas... why would someone not use EWL? After all, it is built on top of Evas, too. Would the execution speed difference be significant (or at least significant enough to sacrifice the ease-of-use of the EWL library)? I'm really itching to get my hands dirty in this code, but which dirt? :-) People don't want the overhead of a full widget library so they do stuff in straight Evas/Edje. dan --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
RE: [E-devel] Different text areas
OK, I'll get to studying the evas_object_textblock code tomorrow. But one final question: is there anything I should avoid that might interfere with the code being done for EWL (i.e. if both have triggers, which will be used, etc.)? Thanks a lot! --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
RE: [E-devel] Different text areas
On Tue, 2005-07-19 at 23:55 -0500, Brian Sakal wrote: OK, I'll get to studying the evas_object_textblock code tomorrow. But one final question: is there anything I should avoid that might interfere with the code being done for EWL (i.e. if both have triggers, which will be used, etc.)? Thanks a lot! If something gets added into the textblock EWL will be ported over to use that instead of what it does internally. dan --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel