Commit Graph

494 Commits

Author SHA1 Message Date
Tom Hacohen e8c10dbce7 Evas textblock: Added evas_textblock_node_format_remove_pair to remove formats.
SVN revision: 52484
2010-09-20 09:44:48 +00:00
Carsten Haitzler 649509a9c2 warning--
SVN revision: 52438
2010-09-19 01:33:51 +00:00
Tom Hacohen 12b55be8af Evas textblock: Added a lot of fixes to evas_textblock_cursor_geometry_get in the case where ctype = EVAS_TEXTBLOCK_CURSOR_BEFORE
SVN revision: 52341
2010-09-16 09:59:39 +00:00
Tom Hacohen 9fb94f209b Evas textblock: Fixed evas_textblock_range_text_get that didn't work on textblocks with no formats at all (not even newlines or tabs).
SVN revision: 52339
2010-09-16 07:12:23 +00:00
Tom Hacohen 612b3eda81 Evas textblock: fix deleting the first tab in 'a<TAB><TAB>a' that caused weird behavior.
The solution is that we only delete invisible standalones now, not visible ones, this is correct intuitively and of course fixes the bug.

SVN revision: 52302
2010-09-15 14:07:09 +00:00
Tom Hacohen b59743febd Evas textblock: we should also take width of tabs into account when calculating line width.
SVN revision: 52297
2010-09-15 12:45:06 +00:00
Tom Hacohen 8b6083ec26 Evas textblock: Fix and simplify _find_layout_item_line_match which is an helper function used in many parts of textblock.
SVN revision: 52295
2010-09-15 10:24:07 +00:00
Tom Hacohen 78deeca6ba Evas textblock: Fixed the bug with disappearing text with many tabs and text.
I removed a function that caused the issue and made no sense at all, honestly, it didn't make any sense.
I did a lot of testing trying to see if there are any new bugs after the fix, and nothing, so I guess my instincts were correct.
Please if you can, check out the removed function (_layout_walk_back_to_item_word_redo) and see if it makes any sense to you, if it does, please let me know.

SVN revision: 52243
2010-09-14 13:57:26 +00:00
Tom Hacohen 471d682228 Evas textblock: Fixed paragraph char last.
SVN revision: 51985
2010-09-08 10:22:38 +00:00
Tom Hacohen bcc518ed97 Evas textblock: Should not clean the props of the item.
SVN revision: 51984
2010-09-08 10:00:47 +00:00
Tom Hacohen b267a0a03a Evas textblock: Fixed a typo.
SVN revision: 51981
2010-09-08 07:54:00 +00:00
Tom Hacohen 4c716af06a Evas textblock: cursor_geometry_get now also returns the direction of the cursor: rtl/ltr/whatever.
Fixed documentation a bit.

SVN revision: 51979
2010-09-08 07:28:16 +00:00
Lucas De Marchi 85815e306c Fix common misspellings
Following misspellings were fixed:

accomodate->accommodate
achive->achieve
beacuse->because
caluclate->calculate
cant->can't
carefull->careful
convertion->conversion
dependancy->dependency
dependant->dependent
doesnt->doesn't
existant->existent
extention->extension
fucntion->function
impliment->implement
inital->initial
lenght->length
occured->occurred
occuring->occurring
onyl->only
positon->position
possibilty->possibility
postion->position
proccessing->processing
proccess->process
propogate->propagate
recieve->receive
sucessive->successive
teh->the
ther->there
throught->through
thsi->this
wasnt->wasn't
whcih->which
wheras->whereas




SVN revision: 51965
2010-09-08 03:51:24 +00:00
Tom Hacohen b3982e535d Evas textblock: Update bidi props also when merging nodes and when deleting formats.
SVN revision: 51922
2010-09-06 12:19:17 +00:00
Tom Hacohen 2d1d631b48 Evas textblock: Added evas_textblock_cursor_content_get.
SVN revision: 51898
2010-09-05 08:28:58 +00:00
Tom Hacohen cc250013be Evas textblock: Fixed documentation typos. Patch by Jihoon Kim.
SVN revision: 51896
2010-09-05 07:04:59 +00:00
Tom Hacohen 76d197bf6b Evas textblock: Fixed char coord set to work better.
SVN revision: 51842
2010-09-02 13:53:14 +00:00
Tom Hacohen 8b88b84c9f Evas textblock: width should remain the same no matter what's the position, removed that unwanted adjustment.
SVN revision: 51838
2010-09-02 12:01:23 +00:00
Tom Hacohen e8c59bf0e8 Evas textblock+font engine: Implemented evas_textblock_cursor_geometry_get.
Fixed evas_common_font_char_coords to work correctly with the NULL character in RTL text.

SVN revision: 51834
2010-09-02 11:49:00 +00:00
Tom Hacohen 4554c06a70 Evas textblock: Fixed compilation without fribidi. <-- For real now. :P
SVN revision: 51809
2010-09-01 14:26:55 +00:00
Tom Hacohen 97b766773b Evas textblock: Fixed compilation without fribidi.
SVN revision: 51808
2010-09-01 14:08:23 +00:00
Tom Hacohen 5e433f1956 Evas bidi: Changed the design a bit so it'll be easy to implement async-rendering with it.
Fixed a couple of issues with unwanted cleans and generally data corruption.
Cleaned up async-rendering.

SVN revision: 51806
2010-09-01 13:15:04 +00:00
Tom Hacohen e6304cafaf Evas textblock: Fixed updating BiDi properties when we delete.
SVN revision: 51801
2010-09-01 08:25:19 +00:00
Tom Hacohen c128fa4d80 Evas textblock: Fixed @intrenal -> @internal in some docs.
SVN revision: 51746
2010-08-30 11:27:39 +00:00
Tom Hacohen 58319c5715 Evas textblock: fixed breakages of paragraph direction when merging/splitting text nodes.
SVN revision: 51723
2010-08-29 12:16:32 +00:00
Tom Hacohen d4c2078f8d Evas textblock: Fixed 'up' and 'down' when pointing to the end of the last line when it ends with a visible format.
SVN revision: 51717
2010-08-29 09:19:04 +00:00
Tom Hacohen 649ad7a890 Evas textblock: Fixed 'Home' and 'End' in the last line when it ends with a visible format.
SVN revision: 51716
2010-08-29 09:13:48 +00:00
Tom Hacohen 71490cad70 Evas textblock: Fixed segfault when clearing a textblock and then trying to delete while it's empty. And fixed cursor position in cases when there's a visible format after a \n
SVN revision: 51709
2010-08-29 08:27:13 +00:00
Tom Hacohen 2ab7f0f809 Evas textblock: Fixed ignoring of unicode object replacement char.
SVN revision: 51658
2010-08-26 13:04:13 +00:00
Tom Hacohen 07f7a9bd88 Evas textblock: Fixed tab causing weird spacing and unwanted linewraps.
SVN revision: 51655
2010-08-26 11:14:03 +00:00
Tom Hacohen ee3b20d11a Evas textblock: Fixed a bit of formatting.
SVN revision: 51653
2010-08-26 09:22:31 +00:00
Tom Hacohen 9a5dba89eb Evas textblock: Paired formats (e.g <b> and </b>) are now only deleted if they point to the same place. This makes everything nice and clean.
SVN revision: 51646
2010-08-25 14:37:52 +00:00
Tom Hacohen 735487e18e Evas textblock: simplified descent calculation.
SVN revision: 51516
2010-08-22 12:26:40 +00:00
Tom Hacohen 818c1dbf64 Evas textblock: fixed most of the cases on which a cursor was not drawn correctly.
SVN revision: 51515
2010-08-22 11:00:45 +00:00
Lucas De Marchi 5a8a8c9014 Convert (hopefully) all comparisons to NULL
Apply badzero.cocci, badnull.coci and badnull2.cocci

This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:

code before patch               ||code after patch
===============================================================

return a == NULL;                 return !a;

return a != NULL;                 return !!a;

func(a == NULL);                  func(!a);

func(a != NULL);                  func(!!a);

b = a == NULL;                    b = !a;

b = a != NULL;                    b = !!a;

b = a == NULL ? c : d;            b = !a ? c : d;

b = a != NULL ? c : d;            b = a ? c : d;


other cases:

a == NULL                         !a
a != NULL                         a




SVN revision: 51487
2010-08-21 13:52:25 +00:00
Tom Hacohen 7967a59ef8 Evas textblock: Fixed range_text_get, no works when selecting text from multiple paragraphs.
SVN revision: 51392
2010-08-19 14:07:45 +00:00
Tom Hacohen 75a676f945 Evas textblock: Improved the docs of the size get functions. It should now be clear exactly what they are about.
SVN revision: 51385
2010-08-19 07:46:32 +00:00
Christopher Michael 76bc67ea7c Initialize var to Zero (remove compiler warning).
Remove Whitespace in cs_server.



SVN revision: 51283
2010-08-18 15:27:37 +00:00
Tom Hacohen f9db3d6b84 Evas textblock: Fixed range_delete with multiple paragraphs + cursor position after deletion.
Switched int -> size_t in a couple of places I forgot.
Fixed all of gcc's warnings when compiling with -Wextra.

SVN revision: 51278
2010-08-18 13:56:34 +00:00
Tom Hacohen 71f8122aab Evas textblock: Fixed range_delete.
SVN revision: 51275
2010-08-18 12:29:20 +00:00
Tom Hacohen 35f14c47e2 Evas textblock: render should be allowed to be passed an object with no paragraphs, but should just return and do nothing.
SVN revision: 51263
2010-08-17 17:55:48 +00:00
Tom Hacohen a0c3f2a405 Evas textblock: Added comment about styles in the docs.
SVN revision: 51209
2010-08-16 12:56:01 +00:00
Tom Hacohen 2f68e9299e Evas: Fixed many compilation warnings.
1. Fixed evas_common_encoding_utf8 functions to get char * instead of unsigned char * and return Eina_Unicode instead of int.
2. Removed a couple of unused variables.
3. Removed deprecated evas_common_font_utf8* functions.

SVN revision: 51200
2010-08-16 10:46:56 +00:00
Tom Hacohen 1a979c596c Evas textblock: Fix the inefficent ways used to get string length. No need to get length twice and strbuf has a very fast function to getting length, no need to get the string and the calc it's length.
SVN revision: 51182
2010-08-16 09:44:50 +00:00
Tom Hacohen 9a1e0eecda Evas textblock: Fixed evas_textblock_cursor_paragraph_text_get to return markup.
SVN revision: 51181
2010-08-16 09:40:01 +00:00
Tom Hacohen 128e61649d Evas textblock: removed two unwanted fixmes.
SVN revision: 51178
2010-08-16 09:18:09 +00:00
Tom Hacohen 424b7ed6b7 Evas textblock: Another fix to 'range_get' fixes the text getting and not just the mishandling of formats.
SVN revision: 51176
2010-08-16 09:08:01 +00:00
Tom Hacohen 9ed2feb59e Evas textblock: Fixed a bug with getting text in range.
SVN revision: 51170
2010-08-16 08:52:18 +00:00
Tom Hacohen 5d3fc4a03e Evas textblock: Use the unicode object replacement char, not the regular replacement char.
Drop the object replacement char if passed as text.

SVN revision: 51168
2010-08-16 08:36:08 +00:00
Tom Hacohen 0f184462d1 Evas textblock: Updated usage documentation.
SVN revision: 51166
2010-08-16 08:22:18 +00:00
Tom Hacohen 25d7564726 Evas textblock: Fixed the bug with going up/down lines when the cursor points to an <item>.
With this fix I also fixed a couple of potential bugs with cursor geometry in places with mixed visible+invisible formatting.

SVN revision: 51133
2010-08-15 16:04:34 +00:00
Tom Hacohen 660a7b8ee4 Evas bidi: Added defines for bidi paragraph types (instead of using the fribidi defines).
SVN revision: 51131
2010-08-15 14:36:20 +00:00
Tom Hacohen b2b95df2be Evas: Removed deprecated 'lines' from Evas_Object_Textblock.
SVN revision: 51129
2010-08-15 09:10:15 +00:00
Tom Hacohen 3686e9d295 Evas textblock: Remove an unused function.
SVN revision: 51127
2010-08-15 08:59:39 +00:00
Tom Hacohen 2c2a0cb928 Evas textblock: Free paragraphs as well as lines.
Fixes a small memory leak.

SVN revision: 51126
2010-08-15 08:17:21 +00:00
Tom Hacohen 2ecda40ecd Evas textblock: Fixed cursor sizes in rare situations, for example the text from expedite textblock_basic test and point the 'c' in COLOR you would get a badly shaped cursor.
SVN revision: 51050
2010-08-12 15:49:43 +00:00
Tom Hacohen 86adc683d0 Evas: Textblock fixed formating.
SVN revision: 51045
2010-08-12 15:04:47 +00:00
Tom Hacohen 5cc418c333 Evas: Textblock - Fixed a couple of segs/invalid memory access.
SVN revision: 51044
2010-08-12 14:59:42 +00:00
Tom Hacohen d8fadf706b Evas: Each paragraph has at least one layout item in order to mark it's existence.
SVN revision: 51039
2010-08-12 14:20:19 +00:00
Tom Hacohen 3ec81c0b3e Evas: textblock - made _format_fill faster.
SVN revision: 51032
2010-08-12 09:35:53 +00:00
Tom Hacohen eda4539c2c Evas: textblock - Made _format_param_parse sane and cleaner and fixed compilation warnings about unused functions.
SVN revision: 51031
2010-08-12 09:31:43 +00:00
Tom Hacohen fd04d4c5d3 Evas: fixed textblock compiler warnings.
SVN revision: 51029
2010-08-12 07:02:30 +00:00
Tom Hacohen d408865797 Evas: textblock - fixed arabic shaping and fixed an issue with persistant paragraph direction (regarding RTL).
SVN revision: 50996
2010-08-11 13:03:24 +00:00
Tom Hacohen af31abca35 Evas: Improved evas_textblock_cursor_range_text_get to return markup text instead of plain text.
SVN revision: 50992
2010-08-11 12:29:20 +00:00
Tom Hacohen 41ebc486dc Evas: Textblock - Sanitized format init and shutdown.
SVN revision: 50991
2010-08-11 11:20:10 +00:00
Tom Hacohen af1dc88234 Evas: Cursor updates is now done in one function and it's updated correctly everywhere.
SVN revision: 50990
2010-08-11 10:27:44 +00:00
Tom Hacohen 62b8c6e43d Evas: fix range text get in textblock.
SVN revision: 50988
2010-08-11 08:33:22 +00:00
Tom Hacohen c3759fb4a2 Evas: Added align=auto format to textblock.
This is the default. This lets you make textblock (or parts affected by this tag) auto align according to the natural paragraph direction.

SVN revision: 50985
2010-08-11 07:46:37 +00:00
Tom Hacohen 3c7627035e Evas: Added auto lines alignment to textblock. RTL lines will automatically align to the right and LTR lines to the left.
This is not done per line, but per paragraph so a line break will not force recalculation of auto-alignment, only a PS.

SVN revision: 50984
2010-08-11 07:23:48 +00:00
Tom Hacohen 2b762c0f3b Evas: Update documentation of evas_object_textblock.
SVN revision: 50965
2010-08-10 14:36:48 +00:00
Tom Hacohen 10a14f3994 Evas: Fixed a bug when erasing the last paragraph of a textblock.
SVN revision: 50958
2010-08-10 08:34:47 +00:00
Tom Hacohen 632279c2f5 Evas: Fixed compilation without BiDi support.
SVN revision: 50934
2010-08-09 16:47:35 +00:00
Tom Hacohen d5e579c2e9 Evas: Redesigned the textblock object.
Sorry, but full documented code will be committed tomorrow, this commit is needed for the API stabilization.
Major changes in this commit:
1. Changed the textblock node system there is now a linked list for the format nodes and a linked list for the text nodes. Format and text nodes point to one anoter in a matter that will be explained in the source file (will be committed tomorrow). Each text node now represents a paragraph and each format node points to a specific location in a text 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 which are only slightly exposed just to enable users of the API to cycle all the formats in order to find stuff like anchors.
4. Every node has a PS (paragraph separator) format node pointing to it's end, except for the last one which has nothing. Nodes are only broken by PS's.
5. Changed the BiDi functions to work nicely with offsets in big chunks of text.

More is explained in the email with the subject 'Evas Textblock redesign + edje_entry adjustments' that will be sent tomorrow because of technical issues.
For full documentation about this object wait for the next commit.

SVN revision: 50930
2010-08-09 16:24:17 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Carsten Haitzler c68d77a283 need to add null items for item format things (inserted external item
objects)



SVN revision: 50636
2010-07-29 07:42:30 +00:00
Tom Hacohen a6d428334f Evas: Changing the font engine to work with Eina_Unicode instead of utf8.
Changing textblock and text objects to work with Eina_Unicode instead of utf8 (internally, API remains intact).
Started relying on new fribidi 0.19.2 instead of the old fribidi.
A lot of fixes to the font engine.
Renaming of evas_common_font_utf8_* to evas_common_encoding_utf8_*
This relies on new Eina changes and types: Eina_Unicode, Eina_UStrbuf and Eina_UStringshare.

SVN revision: 50595
2010-07-28 12:00:41 +00:00
Lucas De Marchi 2a84379ba9 Remove unneeded code with notnull.cocci script
The notnull.cocci script from Coccinelle finds places where you check if a
variable is NULL, but it's known not to be NULL. The check can be safely
removed. For example, this code would be caught by notnull:

if (!var) return;
if (var && var->fld) { ... }

It's needless to check again if var is not NULL because if it's in fact NULL,
it would have returned on the previous "if". This commit removes all the
trivial places where this pattern happens. Another patch will be generated for
the more complex cases.


SVN revision: 50241
2010-07-14 02:05:47 +00:00
Lucas De Marchi e502081fa3 Use macro to get container of inlist
Revove warning.



SVN revision: 49959
2010-07-01 03:12:14 +00:00
Bruno Dilly 40db7f8c61 Add 3 missing symbols to escape strings
SVN revision: 49794
2010-06-22 14:01:50 +00:00
Carsten Haitzler a08e99cd82 warnings--
SVN revision: 49765
2010-06-20 06:32:05 +00:00
Bruno Dilly 930fdce0ee small fix in evas html escape table
SVN revision: 49240
2010-05-27 21:03:53 +00:00
Carsten Haitzler eaad0eb095 big patch from Samsung SAIT (Advanced research group) for async multi-frame
rendering. to turn on:

1.
configure with --enable-async-render
2.
export EVAS_RENDER_MODE=non-blocking
  
presto. necessitates some api swizzling (thus the expedite. ecore etc. changes)

the kind of results you get on a desktop:

http://www.rasterman.com/files/evas-async-vs-none.html



SVN revision: 49087
2010-05-21 07:10:45 +00:00
Sebastian Dransfeld ab7e6fe3f8 evas: remove unused variables
SVN revision: 48819
2010-05-13 20:23:49 +00:00
Carsten Haitzler 15b7e11198 hmm - i don't know how this happened, but - metrics were not being done
right. fixed now. i wonder why. this used to be right at some point.



SVN revision: 48503
2010-05-01 14:08:14 +00:00
Cedric BAIL a52773a8ab * evas: specify Evas canvas for Evas_Object.
SVN revision: 48428
2010-04-29 17:35:47 +00:00
Carsten Haitzler ac70bae562 correct ascent
SVN revision: 48309
2010-04-25 13:11:44 +00:00
Carsten Haitzler fbbd6ffef1 and make items work properly.
SVN revision: 48306
2010-04-25 13:05:45 +00:00
Carsten Haitzler 1112f418dc add api to get the item geometry itself. needed to put somethign there.
SVN revision: 48305
2010-04-25 12:40:26 +00:00
Carsten Haitzler d37f08a616 adding... items... oooooh what are these items? invisible sized blobs treated
like characters/words for wrapping. intended for use in sticking inlined
content - like icons, images etc.



SVN revision: 48301
2010-04-25 11:35:41 +00:00
Carsten Haitzler d2124c5b46 remove useless eol
SVN revision: 48075
2010-04-17 16:19:11 +00:00
Carsten Haitzler afe65d7c0a add ability to dump engine coontents (if engine supports it). this means
unload images it has loaded from disk, unload fonts, and more. dump dump dump!



SVN revision: 47947
2010-04-12 08:23:53 +00:00
Carsten Haitzler 79a950519d fix insert markup. (prepend)
SVN revision: 47464
2010-03-26 04:21:16 +00:00
Carsten Haitzler 37743d378e entry bug--
SVN revision: 47463
2010-03-26 03:57:22 +00:00
Gustavo Sverzut Barbieri fd2659c572 evas: mega documentation improving commit.
This commit moves Evas.h contents a lot, but it should not change code
(some conts were added, some function attributes were changed).

The purpose of such is to define the order that doxygen show modules
in its documentation.

I also splitted documentation a bit more, and added a src/examples to
list useful example code. Right now it is just a pure-evas
draw-and-save using buffer engine.

NOTE: there is lots to document, and the @todo list is quite long but
      I guess lots of things there were done already. Raster, could
      you review this list?




SVN revision: 47308
2010-03-18 04:57:40 +00:00
Carsten Haitzler c687663f14 more bug--
SVN revision: 47274
2010-03-16 04:09:00 +00:00
Carsten Haitzler 541d00ea16 crash--
SVN revision: 47270
2010-03-16 01:35:05 +00:00
Carsten Haitzler b86174f063 bug--
SVN revision: 47266
2010-03-16 00:56:11 +00:00
Carsten Haitzler 3033a7492a wow - killed 2 bugs with 1 stone!
:)



SVN revision: 47229
2010-03-15 02:34:11 +00:00
Carsten Haitzler 09279e3b3a segv--
SVN revision: 47207
2010-03-14 14:41:50 +00:00
Carsten Haitzler eae926c08b another bug--
SVN revision: 47204
2010-03-14 12:58:49 +00:00
Carsten Haitzler 2a78f7724c more entry bug--
SVN revision: 47201
2010-03-14 12:24:42 +00:00
Carsten Haitzler 033322a0c5 inf loop--
SVN revision: 47198
2010-03-14 08:04:49 +00:00
Carsten Haitzler 2527f5f00f fix valgrind complaints within tb - fixes an entry bug too.
SVN revision: 47197
2010-03-14 06:38:58 +00:00
Carsten Haitzler 5e3a5cc696 if cur not pointing to node.
SVN revision: 47196
2010-03-14 03:52:33 +00:00
Carsten Haitzler f8493edc4b printf--
SVN revision: 47174
2010-03-13 13:25:01 +00:00
Carsten Haitzler a8c9ccba77 and fix cursor when entry is empty case. more cases to fix yet.
SVN revision: 47155
2010-03-12 11:15:19 +00:00
Carsten Haitzler 4277c3ea20 ok segv not there.. but behavior not good. now i rememebr why the <br> was
there... :) time to fix this another way.



SVN revision: 47154
2010-03-12 10:49:39 +00:00
Carsten Haitzler aaaefc0b3e fix 1 entry insert issue - also printf debugging for now
SVN revision: 47134
2010-03-11 14:29:25 +00:00
Carsten Haitzler 78eba185ef according to dottedmag - this breaks things... i dndt see them - but.. lets
revert for now. i dont like breaks. :)



SVN revision: 46935
2010-03-07 07:29:26 +00:00
Carsten Haitzler 3f465fc58b alow linesiae to get smaller - from mikhal
SVN revision: 46930
2010-03-07 06:48:48 +00:00
Carsten Haitzler abd231ccf0 REVERT!!!! you broke evas build.
evas_object_textblock.c: In function ‘_nodes_next_merge’:
evas_object_textblock.c:380: error: ‘Evas_Object_Textblock_Node’ has no member named ‘len’



SVN revision: 46874
2010-03-04 16:22:28 +00:00
Mikhail Gusarov a4157cbc2a Insert more comments into _format and simplify if() logic as we go
SVN revision: 46873
2010-03-04 15:51:30 +00:00
Mikhail Gusarov a5a07377f6 evas_textblock: Make maxascent/maxdescent variables local.
They are used in single function, so don't keep them in structure.
As a side-effect rework _layout_line_advance for better readability.

SVN revision: 46872
2010-03-04 15:02:10 +00:00
Mikhail Gusarov 4d49bef2fd Evas_Textblock: store 'cursor' in the 'cursors' list to ease cursors handling
Some copy-pasted code removed as a result.

SVN revision: 46871
2010-03-04 15:02:02 +00:00
Mikhail Gusarov cf68311687 evas_textblock: Get rid of code duplication in _nodes_adjacent_merge
SVN revision: 46870
2010-03-04 15:01:51 +00:00
Cedric BAIL f880806ff2 * evas: Fix update of textblock when style change.
SVN revision: 46786
2010-03-02 14:53:27 +00:00
Mikhail Gusarov 3e0ce16056 Document evas_object_textblock_replace_char_{get,set}
SVN revision: 46785
2010-03-02 14:00:45 +00:00
Gustavo Sverzut Barbieri 9c3af651ba simplify and optimize parsing of percentage and float values.
Use strtod() and avoid couple of walks. Of course the walks were quite
small and it will not bring noticeable improvements, but code is
smaller and easier to read, so why not?



SVN revision: 46530
2010-02-26 22:51:07 +00:00
Gustavo Sverzut Barbieri 62301bc16d minor but easy speedups for tag processing.
keep tag and replacement size, compare it before doing strcmp() and
return the size so further calculations use it (eina_strbuf_append()
-> eina_strbuf_append_length())



SVN revision: 46529
2010-02-26 22:32:07 +00:00
Gustavo Sverzut Barbieri 3a11fbe02c use eina_strbuf faster variants whenever possible.
call me your bitch, call me your duplicated code, call me your complex code!



SVN revision: 46528
2010-02-26 22:03:25 +00:00
Cedric BAIL bb8ede02af * evas: Always redraw Textblock on style change.
SVN revision: 46469
2010-02-25 16:31:00 +00:00
Sebastian Dransfeld 5847c6f245 string_remove -> string_steal
Better naming

SVN revision: 46028
2010-02-09 21:06:27 +00:00
Sebastian Dransfeld 26ddf06980 Switch internal strbuf to eina strbuf
SVN revision: 45944
2010-02-06 20:41:53 +00:00
Carsten Haitzler 327dbc9a72 small fix for over-zealous limiting of draws - use clip regions instead.
SVN revision: 45861
2010-02-04 07:41:07 +00:00
Carsten Haitzler 1dedddf95d big speedups for scrolling and drawing big textblock (once they are
formatted) as it will skip (relatively quickly0 draws outside the canvas
viewport. this could become quicker with a fask line-skip table to specific
coordinates, but for now, it's a
LOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT
better. like going from 1fps to 60fps+



SVN revision: 45836
2010-02-03 15:47:13 +00:00
Cedric BAIL 6a0668110d * evas: Fix segv source by checking result before using it.
SVN revision: 45301
2010-01-18 20:04:21 +00:00
Carsten Haitzler 42f1294b17 patch from sehwan@samsung.com for small issues in evas/edje
SVN revision: 45055
2010-01-12 01:45:10 +00:00
Cedric BAIL 1b80e16253 * evas_object_textblock: Add some cast to reduce warning noise.
SVN revision: 44648
2009-12-22 12:09:36 +00:00
Iván Briano 83a91a9ab9 There's more here than just warning fixes, it's causing crashes with some uses of elm_entry. Noted in Editje.
SVN revision: 44639
2009-12-21 19:07:51 +00:00
Cedric BAIL a27c701f27 * evas: Remove lot's of warning.
SVN revision: 44629
2009-12-21 15:52:12 +00:00
Gustavo Sverzut Barbieri 8a668562b4 fix bug spotted by Brian Wang.
SVN revision: 43793
2009-11-19 00:38:34 +00:00
Carsten Haitzler 9af8993332 god damnt that took some time! fixed some bugs with map + smart objcs +
repainting etc. etc. - seems to be working now in complex smart obj tests and
simple ones.



SVN revision: 43584
2009-11-09 15:18:37 +00:00
Carsten Haitzler 948bb4a63e fix smart map redraw errors.
SVN revision: 43483
2009-11-06 08:44:49 +00:00
Carsten Haitzler 5cc7803ef9 the start of other objects being able to map! text objects work.. tested.
SVN revision: 43323
2009-10-28 08:59:01 +00:00
Vincent Torri e5046c8846 Fix some warnings. I don't touch map code for now.
SVN revision: 43218
2009-10-22 22:22:10 +00:00
Tom 39b6c9148c From: Tom <tom@stosb.com> (tasn)
Hey raster,

Here is the non intrusive patch I talked to you about. Please apply it as it
introduces some fixes, some improvements and mostly and underlying
infrastructure for future RTL improvements.

(note hebrew & yiddish seem fine, but things expedite test seems to show are
wrong (why i don't know as i dont speak the langs- just comparing to pango /
gtk output):

arabic seems lsightl wrong (maybe composition chars not working?)
gujarati - also seems wrong
malayam - also looks wrong
persian - looks wrong
sinhala - looks wrong
tamil - looks wrong

these are what, appear to me, to look wrong. why they look wrong, i don't
know. i'm guessing its compositiong not being handled. but i dont's peak,
read or write any of these languages so i am unsure of what it really should
be like, why and how to fix it.

anyone want to put up a hand? (everything else is displaying fine as best i
can tell - the langauges i read/speak/somewhat understand are working fine).



SVN revision: 42814
2009-09-30 04:23:21 +00:00
Iván Briano 5c3b4fa74e Improve documentation for Evas, Ecore, Edje and Elementary.
Work by:
 - Thiago R. Masaki (mostly)
 - Fabiano Fidencio
 - Gustavo Lima


SVN revision: 42550
2009-09-17 22:38:10 +00:00
Vincent Torri ac3dae2a80 remove trailing spaces
SVN revision: 42238
2009-09-04 05:13:19 +00:00
Carsten Haitzler 1352efe452 1. make smart callback calling faster with == instead of strcmp
2. add linesize/line relsize for setting line sizes in textblock



SVN revision: 42231
2009-09-04 03:53:18 +00:00
Cedric BAIL 6d0ee81526 * evas: Remove Evas_Bool.
SVN revision: 41067
2009-06-17 10:01:52 +00:00
Gustavo Sverzut Barbieri 600d560fc6 Cleanup llvm warnings.
By: michael bouchaud.


SVN revision: 41033
2009-06-14 20:48:37 +00:00
Carsten Haitzler 7c66538545 fix corer case with utf8
SVN revision: 40867
2009-05-31 21:26:36 +00:00
Carsten Haitzler c3b8b4ee14 revertg big R to L patches because they break cursors and selection.... BACK
boy BACK!



SVN revision: 40783
2009-05-22 21:12:32 +00:00
Carsten Haitzler e999c88e80 tasn's rtl pathes and improvements... continued!
SVN revision: 40715
2009-05-18 06:08:15 +00:00
Carsten Haitzler f5c88e9d53 fix a corner-case textblock issue with end of line char pos
SVN revision: 40640
2009-05-14 12:52:44 +00:00
Carsten Haitzler c830f68a06 1. fix scalecache to actually respect env vars set!
2. fix textblock cursor stuff in corner case.



SVN revision: 40617
2009-05-13 12:20:14 +00:00
Carsten Haitzler b37f6643cf fix char-wrap min size calc!
SVN revision: 40522
2009-05-06 12:34:54 +00:00
Cedric BAIL 10a15524cc * evas: Finally remove as much free/malloc from the render path. Will need certainly
need some tunning on the number of Evas_Rectangle allocated in advance.


SVN revision: 40084
2009-04-15 13:40:37 +00:00
Gustavo Sverzut Barbieri 7468b45fbc export useful function.
SVN revision: 40065
2009-04-14 23:51:43 +00:00
Cedric BAIL 55e281b4ff * evas: Now all Evas_Rectangle are part of a pool. Next step would be to
remove free at the end of evas_object_render_pre_effect_updates and only
	do it on idle.


SVN revision: 40040
2009-04-14 12:15:07 +00:00
Cedric BAIL d40e3ac01a * evas: Add a mempool. More speedup to come, depend on timing with "break" freeze.
SVN revision: 40037
2009-04-14 09:27:27 +00:00
Carsten Haitzler 481bde4366 raoul: patch to fix thml-escapes for textblock
SVN revision: 39914
2009-04-10 03:25:27 +00:00
Carsten Haitzler 09176167bd more neon infra - just for "copies" right now. only 1 func filled in.
SVN revision: 39502
2009-03-16 10:50:37 +00:00
Vincent Torri f344743dae fix some warnings reported by llvm (see http://local.profusion.mobi:8081/~lfelipe/output-efl/)
* mainly unused parameters
 * in src/lib/imaging/evas_imaging.c, set font to NULL
 * in src/lib/canvas/evas_object_gradient.c, add unititialized member

there are a *lot* of reported warnings by llvm, i'll fix them later

there are also *lots* of unused parameters (compile evas with -W). I'll
fix them later too



SVN revision: 39172
2009-02-24 08:31:31 +00:00
Carsten Haitzler 9062c9050a and support obscured rects for clip-out if middle of bordered image set to
solid. speedup.



SVN revision: 39051
2009-02-17 04:53:03 +00:00
Iván Briano 140b0a9fca Add function to get the length in characters of a string
SVN revision: 38158
2008-12-15 22:03:04 +00:00
Carsten Haitzler 3e2108728f and only remove markup if we have a style...
SVN revision: 37661
2008-11-15 13:57:37 +00:00
Carsten Haitzler 7e6fb27b4c make scale set apply immediately on objects that do scaling...
SVN revision: 37656
2008-11-15 10:39:46 +00:00
Davide Andreoli f526e28ac0 * More better cats\'
* remove some @ingroup in favor of @addtogroup

SVN revision: 37386
2008-11-01 21:50:36 +00:00
Davide Andreoli 6637117c95 * put all the verious objects (rect, image, text...) in a single macro category
SVN revision: 37384
2008-11-01 21:07:49 +00:00
Davide Andreoli 92dfd49fdb * Add a Texblock doxy category and put all the textblock_* functions to apper under it
SVN revision: 37381
2008-11-01 19:40:07 +00:00
Carsten Haitzler 8e06d6fbea fix segv in pw mode
SVN revision: 37351
2008-10-31 06:18:18 +00:00
Carsten Haitzler ff536078be another sachiel fix! :)
SVN revision: 37292
2008-10-29 03:29:10 +00:00
Carsten Haitzler 09c1768c99 sachiel patch!
SVN revision: 37265
2008-10-28 06:37:16 +00:00
Carsten Haitzler 9761b10afa fix possible segv
SVN revision: 37263
2008-10-28 05:22:50 +00:00
Carsten Haitzler e7b5030226 segv nuked thansk to scahiel and a leak plugged thansk to valgrind.
SVN revision: 37261
2008-10-28 04:01:10 +00:00
Carsten Haitzler c15ea4d731 dont repeat code
SVN revision: 37191
2008-10-27 03:12:59 +00:00
Carsten Haitzler 9ec09d258b less than map end!
SVN revision: 37190
2008-10-27 03:03:59 +00:00
Carsten Haitzler ff6d285c07 segs--
SVN revision: 37112
2008-10-26 05:37:38 +00:00
Carsten Haitzler bf8905c54d add a "repch" (replace char). for passowrd mode! :)
SVN revision: 36956
2008-10-22 08:57:30 +00:00
Carsten Haitzler e4e3b0d5a2 better escaping!
SVN revision: 36954
2008-10-22 04:44:22 +00:00
Cedric BAIL 465b76a017 Remove Evas_List from Evas.
SVN revision: 36942
2008-10-21 16:31:05 +00:00
Cedric BAIL 68d377afe6 Rename EINA_INLIST_ITER_NEXT/EINA_INLIST_ITER_LAST to EINA_INLIST_FOREACH/
EINA_INLIST_REVERSE_FOREACH so it best match is behaviour. Asked by Gustavo.



SVN revision: 36928
2008-10-21 12:19:57 +00:00
Carsten Haitzler 03114c0dac and drop rendering text out of bounds.
SVN revision: 36853
2008-10-20 13:07:05 +00:00
Carsten Haitzler 5497660f72 remove debugging.
SVN revision: 36850
2008-10-20 12:15:07 +00:00
Carsten Haitzler 9517f8f0e0 directly export eina deps for evas.
SVN revision: 36845
2008-10-20 10:58:50 +00:00
Carsten Haitzler f053582e31 1. fix no propagate
2. fix segv in textblock.



SVN revision: 36828
2008-10-19 23:58:56 +00:00
Cedric BAIL c99824328f Move from Evas_Object_List to Eina_Inlist and completly remove Evas_Object_List.
SVN revision: 36750
2008-10-17 11:23:18 +00:00
Carsten Haitzler 37ca3d9821 put format info in pops too when feeding from markup.
SVN revision: 36740
2008-10-17 03:16:11 +00:00
Carsten Haitzler 9e6d0e4ce8 more work to make it usable
SVN revision: 36737
2008-10-17 01:39:57 +00:00
Carsten Haitzler 2313cf3ed1 fix another booboo in textblock for editing multiline stuff
SVN revision: 36732
2008-10-17 00:04:17 +00:00
Carsten Haitzler b386c7ff6e als search for format items.
SVN revision: 36720
2008-10-16 14:18:50 +00:00
Carsten Haitzler 59d9e81427 more textblock work/additions for entry support.
SVN revision: 36708
2008-10-16 09:17:37 +00:00
Cedric BAIL 1cec65e922 Switch evas internal use of evas_stringshare to eina_stringshare.
SVN revision: 36674
2008-10-15 14:38:34 +00:00
Carsten Haitzler 8cd80ffc56 more fixed to textblock plus an addition - reverse the markup.
SVN revision: 36664
2008-10-15 09:58:17 +00:00
Carsten Haitzler 8cac2fe220 fix some minor bugs in textblock with cursor pos's, text insertion etc.
SVN revision: 36645
2008-10-14 02:45:55 +00:00
Carsten Haitzler 0cf0cd8e15 ensure scaling multiplies are promoted to fp.
SVN revision: 35924
2008-09-10 06:40:54 +00:00
Carsten Haitzler c1d838efa7 promote scale to fp.
SVN revision: 35920
2008-09-10 05:43:25 +00:00
Carsten Haitzler d06c5e9efb and add a scale factor per object. right now text and textblock use it.
that's about it. a bit hacky - but works and frankly.. the idea is that u'd
set a scale factor once really and not change it per obj... most likely.




SVN revision: 35896
2008-09-09 14:14:26 +00:00
Carsten Haitzler d73b8c5d7b updated patches from jose!
SVN revision: 35756
2008-08-31 02:04:31 +00:00
Carsten Haitzler c1fe72d7e4 jose has some new gradient work - these are his patches. nice work joseg! yes
- some enignes break as they dont have the stubbed out functions, and
xrender/gl engines dont even implement the drawing and need to (but are
stubbed out).



SVN revision: 35677
2008-08-26 05:45:04 +00:00
Cedric BAIL 53a094e414 Correctly use the string without escaped charactere.
SVN revision: 35179
2008-07-21 11:20:19 +00:00
Carsten Haitzler 3242217c16 cedric rect + arrays patch for reducing allocs
SVN revision: 35024
2008-07-07 21:29:29 +00:00
Peter Wehrfritz 254d60b8a4 add documentation stubs for the textblock
SVN revision: 34935
2008-06-28 10:55:58 +00:00
Carsten Haitzler f2aeab1bd6 fix some escaping :)
SVN revision: 34066
2008-03-20 21:15:16 +00:00
Gustavo Sverzut Barbieri 79a5be8ec3 Fix missing null terminator in textblock.
Although I used 3 lines comments to state it was not required, it is
required because none of the values accounted includes the '\0'.


SVN revision: 33940
2008-03-06 01:06:58 +00:00
Gustavo Sverzut Barbieri 23c566bb07 Cleanup textblock's strbuf implementation.
This should provide correct code in a simpler way by sharing some of
the common code among functions.

Tested with E17 basics, require some applications with extensive usage
of textblock manipulation to do validate results.


SVN revision: 33939
2008-03-06 00:41:47 +00:00
Gustavo Sverzut Barbieri 4bd8fdaeeb Fix evas_object_textblock's strbuf implementation.
Code was not tracking the real size of the allocated memory and was
increasing the string size by one, so the '\0' was being accounted and
the string was being truncated visually.

Patch will remember the exact allocated size and just increment the
string size by the added string, not including it's null-byte
terminator.

This is based on Cedric's BAIL patch set 'evas_object_textblock more
character fix', but doing the minimum to fix the problem.

PS: this code will be rewritten to share some implementation in next commit.


SVN revision: 33937
2008-03-05 21:30:22 +00:00
Gustavo Sverzut Barbieri 4d5430d438 Add room for '\0' in textblock calculations.
In evas_object_textblock, the length forgot the '\0', this create a
buffer overrun.

Author: Cedric BAIL


SVN revision: 33747
2008-02-15 14:45:31 +00:00
Gustavo Sverzut Barbieri 5d571051b9 Add const to Evas api: objects and remaining bits.
SVN revision: 33716
2008-02-08 22:35:19 +00:00