Commit Graph

1285 Commits

Author SHA1 Message Date
Brett Nash 9eaea94252 Evas: Filters:
More work, proudly supported by Samsung.  Filters!

So now you can apply a whole host of cheesy visual effects to objects at
runtime.  This is the first commit, there are a couple of more to come as I
tweak the filters, and fix blur with GL[1].

Please direct bugs to me nash@nash.id.au.

[1] You'd think shaders would be good at this.. but no, generic blur and GL
are like trying to get an apple product to work with Linux.

SVN revision: 58726
2011-04-19 05:47:56 +00:00
Tom Hacohen e6be4f7deb Evas textblock: Fixed an invalid read.
In some cases an invalid read would occur. This was because we didn't
handle node merging appropriately.

SVN revision: 58701
2011-04-17 08:38:29 +00:00
Tom Hacohen f5e7165a65 Evas text/textblock: Add setting bidi_delimiter API.
SVN revision: 58669
2011-04-14 15:34:01 +00:00
Tom Hacohen d0e889fbe7 Evas textblock: Clean up a bit.
SVN revision: 58663
2011-04-14 12:34:29 +00:00
Tom Hacohen 2a7b919cd7 Evas textblock: Move bidi props to the layout paragraphs.
This will let us do cool overrides more control via higher level protocol
when we'll want to.

SVN revision: 58662
2011-04-14 12:13:20 +00:00
Tom Hacohen 86fd95e80e Evas textblock: Fixed invalid reads with ellipsis in some cases.
SVN revision: 58659
2011-04-14 11:37:09 +00:00
Tom Hacohen e6edd2ce7f Evas textblock: Fixed ellipsis.
It's actually just a workaround until we finally fix draw to not need
the text.

SVN revision: 58658
2011-04-14 11:37:06 +00:00
Carsten Haitzler 01146b8343 fix map update bug. :)
SVN revision: 58656
2011-04-14 10:47:40 +00:00
Tom Hacohen 46beed0916 Evas bidi: Added a way to ask for bidi segmentation indexes.
This lets you pass the bidi engine a list of indexes in the paragraph,
that will segment it bidi-wise. I.e the bidi algorithm will be applied to
each segment individually. This implements HL4 of the bidi algorithm.

SVN revision: 58652
2011-04-14 07:40:42 +00:00
Tom Hacohen 9de9eca278 Evas textblock: Reformat if not valid in some cases we forgot.
SVN revision: 58651
2011-04-14 07:34:06 +00:00
Tom Hacohen 90ad3ed743 Evas textblock Fixed a "may be used uninit" compiler warning.
SVN revision: 58646
2011-04-13 22:40:25 +00:00
Tom Hacohen b5d014dcb7 Evas textblock: Removed unneeded casting.
SVN revision: 58635
2011-04-13 13:29:24 +00:00
Tom Hacohen d53aa0f7d6 Evas textblock: Fix error messages about bad cutoff positions.
This was caused because we failed to check text item's text boundaries
and we tried splitting beyond them.

SVN revision: 58634
2011-04-13 13:28:08 +00:00
Tom Hacohen 0243ddf34b Evas textblock: Clean up getting bidi props (unify to a function).
SVN revision: 58632
2011-04-13 12:21:58 +00:00
Tom Hacohen f9936b341f Evas bidi: Add len parameter to evas_bidi_paragraph_props_get
SVN revision: 58631
2011-04-13 12:21:54 +00:00
Tom Hacohen caa46dc1ba Evas font-engine: Move, rename and make *_text_font_style_match static.
It's only really used (and will ever be used) in a very specific place,
no need to put it in a place that's visible to all the lib.

SVN revision: 58627
2011-04-13 10:55:59 +00:00
Tom Hacohen 90982f71bc Evas textblock: Make sure we only test with positive indexes.
SVN revision: 58625
2011-04-13 10:24:54 +00:00
Tom Hacohen 829b48aebd Evas textblock: Fixed a wrong test for end of string.
SVN revision: 58624
2011-04-13 10:22:55 +00:00
Carsten Haitzler 1d58c36340 fix slowdown - drew empty shadow when didnt need to.
SVN revision: 58623
2011-04-13 09:29:45 +00:00
Tom Hacohen 7220fe7bf3 Evas textblock: Don't keep a copy of the string per text item.
We don't need to copy it around because we have string objects now. This
lets us remove a lot of unneeded allocations and unwanted strcpys.

SVN revision: 58619
2011-04-13 08:36:57 +00:00
Tom Hacohen ffbe4ed971 Evas font-engine: *text_props_script_set add parameter len.
SVN revision: 58616
2011-04-13 08:36:46 +00:00
Carsten Haitzler f67fbf23e5 fix new map bug! aaagh. i think this came in post 1.0 - happy now tho.
SVN revision: 58588
2011-04-12 09:44:50 +00:00
Daniel Juyung Seo d37ee17f9c Evas evas_object_smart.c: Use pre-defined type, Evas_Smart_Cb, instead
of describing all parameters.


SVN revision: 58586
2011-04-12 09:23:57 +00:00
Carsten Haitzler 9718eed08e fix some formatting
SVN revision: 58585
2011-04-12 09:23:52 +00:00
Tom Hacohen ad3b167e88 Evas font-engine: Added support for runtime-italic/bold.
Now when setting :style=Oblique/Italic/Cursiva/Bold and etc and there's
no matching font found in the system, adjustments will be done on
runtime to support that feature.

Patch by Myoungwoon Roy Kim (roy_kim).

SVN revision: 58584
2011-04-12 09:05:47 +00:00
Tom Hacohen 892994005b Evas textblock: Fix formatted size calculation with ellipsis.
SVN revision: 58580
2011-04-12 07:13:33 +00:00
Tom Hacohen eb99563451 Evas textblock: Removed obsolete comments.
SVN revision: 58579
2011-04-12 07:13:07 +00:00
Tom Hacohen 15d09d72f8 Evas textblock: Fix a possible leak with calc_only layouting.
Style padding changes would have triggered a code-path that skips cleaning
up the temporary layout created.

SVN revision: 58578
2011-04-12 06:52:27 +00:00
Tom Hacohen 4a557812e1 Evas textblock: Fixed double-drawing bug (visible in efm).
Moved the place we merge back items at. It's currently cleaner, more
correct and as mentioned, fixes a double-drawing bug.

SVN revision: 58555
2011-04-11 15:37:06 +00:00
Tom Hacohen 8e68291273 Evas textblock: Fixed not drawing cut paragraphs when doing ellipsis.
SVN revision: 58553
2011-04-11 13:44:01 +00:00
Carsten Haitzler 5bc7805b28 many more shadow options (8 shadow directions now)
SVN revision: 58546
2011-04-11 12:05:59 +00:00
Tom Hacohen 733cfc629b Evas textblock: *_markup_prepend should use the passed cursor.
This fixes a bug that caused evas_object_textblock_text_markup_prepend
to use the object's cursor, instead of the passed cursor when prepending
text.
Thanks to WooHyun for the catch.

SVN revision: 58531
2011-04-10 07:27:07 +00:00
Carsten Haitzler 09069b6172 doxy move to header.
SVN revision: 58477
2011-04-08 07:26:20 +00:00
Tom Hacohen 5d4f6d3cbe Evas font-engine: Remove most of the passing of strings.
We have string objects, we don't really need them. Draw still uses strings
for metric cache, but that will be removed soon as well.

SVN revision: 58460
2011-04-07 16:25:56 +00:00
Tom Hacohen c9290ef41d Evas textblock: Fix handling of newline in compatiblity mode.
This fixes an issue with newlines that were shoved in the middle of
other format parts like <font_size=46 \n>.

SVN revision: 58457
2011-04-07 15:25:19 +00:00
Tom Hacohen 87bba22028 Evas textblock: Fixed a major bug - don't recreate format items.
I added a mode to format parsing that doesn't create new format items.
The bug was that format items were created all the time although they were
not needed.

SVN revision: 58456
2011-04-07 14:25:48 +00:00
Tom Hacohen 0ced548b40 Revert "Evas textblock: Fixed a major bug. Forgot recreating a layout paragraph."
Apparently it was a mistake and I did handle everything correctly.

This reverts commit 58454.

SVN revision: 58455
2011-04-07 14:01:31 +00:00
Tom Hacohen a855dd9ac0 Evas textblock: Fixed a major bug. Forgot recreating a layout paragraph.
We should create a layout paragraph when it's a new paragraph and when
we removed the previous one that was there because we wanted to
remake it. Forgot adding a paragraph in the second case.

SVN revision: 58454
2011-04-07 13:40:42 +00:00
Tom Hacohen af1bdf3525 Evas textblock: Fixed a bug in newline compatible mode.
SVN revision: 58447
2011-04-07 13:13:41 +00:00
Tom Hacohen 0f964640ae Evas textblock: Don't mark nodes as clean when in 'calc_only'.
SVN revision: 58446
2011-04-07 13:13:38 +00:00
Tom Hacohen 776aa8b507 Evas textblock: Add saftey check.
SVN revision: 58431
2011-04-07 12:27:35 +00:00
Tom Hacohen eed9c92ee6 Evas textblock: Adding visible formats - only invalidate current node.
No need to invalidate all the nodes when adding visible formats because
they are "like regular text".

SVN revision: 58428
2011-04-07 12:22:16 +00:00
Tom Hacohen 80905b3802 Evas textblock: Only relayout paragraphs that have changed.
Remove deleted paragraphs, add new paragraphs and generally relayout
only when really needed. Also, don't relayout when width hasn't changed
and the paragraph haven't changed.

SVN revision: 58418
2011-04-07 11:24:15 +00:00
Tom Hacohen 8ea0800b21 Evas textblock: Clean the code a bit (remove node-invalidation func).
No need for that, just specifically mark where needed that a node has
changed. This is cleaner and nicer.

SVN revision: 58417
2011-04-07 11:24:11 +00:00
Tom Hacohen 2702074e76 Evas textblock: Cleaned code up a bit.
SVN revision: 58395
2011-04-06 15:51:14 +00:00
Brett Nash b96d227334 Masking: Push a bit more arbitrary clipping
This seems to have got lost in my big messup before.  This pushes enough of
mask/arbitrary clip to be somewhat useful.  I need to push a little more soon
for it to be 100% happy, but this is useful level.

SVN revision: 58373
2011-04-06 05:38:38 +00:00
Cedric BAIL b0e45e04bc evas: and now, the last one to die today, Evas Xrender backend.
SVN revision: 58364
2011-04-05 14:16:18 +00:00
Cedric BAIL 1b3b01cb4f evas: and now is the death of Qtopia engine.
SVN revision: 58362
2011-04-05 13:45:54 +00:00
Cedric BAIL 30f906aac9 evas: one more death: gl_glew !
SVN revision: 58360
2011-04-05 13:19:20 +00:00
Cedric BAIL cbad6075d7 evas: remove Evas Cairo backend.
SVN revision: 58359
2011-04-05 13:00:23 +00:00