Commit Graph

180 Commits

Author SHA1 Message Date
Cedric BAIL 377cc2368a evas: remove EVAS_FRAME_QUEUING.
NOTE: This should be part of evas_render itself and not
delegated to the engine. So cleaning things to make it easier
during evas_render rewrite.


SVN revision: 70503
2012-04-26 09:53:03 +00:00
Sebastian Dransfeld ccfb163282 evas: par_len is only used with BIDI_SUPPORT
SVN revision: 67301
2012-01-18 23:33:21 +00:00
ChunEon Park 9db17a253c evas - supplemented more cases for object_freeze_events completion.
SVN revision: 64564
2011-10-31 14:50:00 +00:00
Tom Hacohen 7addaa1eb4 Evas text: Set the object's size according to the advance, not width.
SVN revision: 62494
2011-08-16 07:16:06 +00:00
Tom Hacohen 9ba3e192a5 Evas font+textblock: Stopped using FcNameParse, parse ourselves.
FcNameParse is pretty bad, not only that it's pretty bad, it doesn't
work well in some cases. Also this makes our lives a lot easier since
we want to allow overriding style/weight/width and etc from markup.
We now parse the "font" markup ourselves, populating a font description
structure that we created, and then override values in it as needed.

SVN revision: 61936
2011-08-01 08:20:52 +00:00
Tom Hacohen 69abe2e093 Evas: Stopped using the typo enum EVAS_BIDI_DIRECTION_NATURAL.
s/EVAS_BIDI_DIRECTION_NATURAL/EVAS_BIDI_DIRECTION_NEUTRAL/

SVN revision: 61332
2011-07-13 11:36:31 +00:00
Tom Hacohen 420d235bff Evas: Moved font functions from object_text.c to font_dir.c
Not the best place, but at least better than putting them in object_text.c

SVN revision: 61327
2011-07-13 08:54:49 +00:00
Tom Hacohen 85f116cc9e Evas text: Fixed a bug with char_coords_get searching at the wrong x.
SVN revision: 61301
2011-07-12 15:04:10 +00:00
Tom Hacohen d808ccdaab Evas text: Fixed a bug in evas_object_text_char_pos_get - wrong X returned.
Happens when using multiple scripts in the same text object.

SVN revision: 61300
2011-07-12 15:04:07 +00:00
Tom Hacohen 4b5440650e Evas text: Fix ellipsis bidi, broke it a couple of days ago.
SVN revision: 59877
2011-06-01 15:08:47 +00:00
Tom Hacohen 44dec7a617 Evas text/textblock: Fixed warnings when frame_quening is on.
SVN revision: 59809
2011-05-30 10:55:35 +00:00
Tom Hacohen a403ca75c2 Evas text/textblock: init cur_fi to NULL.
SVN revision: 59808
2011-05-30 10:55:31 +00:00
Tom Hacohen a3719b21f9 Evas text/textblock: Check we actually found a font instance.
Currently we only check we have a font_set which is not enough.
Having a fontset and not having an fi should never happen, but it can.

SVN revision: 59804
2011-05-30 08:42:26 +00:00
Tom Hacohen 60aa86a0ef Evas font-engine: Added two font opaque types.
Added Evas_Font_Instance and Evas_Font_Set which correspond to
RGBA_Font_Int and RGBA_Font. This is very important for strict type
checking which we now finally have.

This commit does not include logic changes, only casting and changing
types of pointers to the opaque pointer types.

SVN revision: 59782
2011-05-29 13:00:54 +00:00
Tom Hacohen 81b217f8c4 Evas font-engine: Fixed font fallback in the same script run.
SVN revision: 59777
2011-05-29 09:20:18 +00:00
Tom Hacohen e607c581f0 Evas text: clean up evas_text_style_pad_get a bit further.
SVN revision: 59284
2011-05-09 07:40:14 +00:00
Tom Hacohen 7cd241ae62 Evas text: Made evas_text_style_pad_get faster.
SVN revision: 59282
2011-05-08 15:43:44 +00:00
Tom Hacohen f3b54de94d Evas text: Don't save unicode text, no use for it.
SVN revision: 59172
2011-05-04 06:57:35 +00:00
Tom Hacohen e93f10b8aa Evas font-engine: Remove passing of strings to font_draw.
This is not needed anymore because we have working string objects.

SVN revision: 59133
2011-05-02 15:33:46 +00:00
Tom Hacohen 961e0c794a Evas text: Move the shadow calculations out of the loop.
SVN revision: 59047
2011-04-29 19:26:56 +00:00
Tom Hacohen b59156c788 Evas text/textblock: Change item size calculation to use advance again.
We don't need to do any tricks anymore because size calculation is now
very fast, as fast as the tricks we did, so it's best to just do what
we really want to do.

SVN revision: 58757
2011-04-20 14:20:54 +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 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 f9936b341f Evas bidi: Add len parameter to evas_bidi_paragraph_props_get
SVN revision: 58631
2011-04-13 12:21:54 +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 ffbe4ed971 Evas font-engine: *text_props_script_set add parameter len.
SVN revision: 58616
2011-04-13 08:36:46 +00:00
Carsten Haitzler 5bc7805b28 many more shadow options (8 shadow directions now)
SVN revision: 58546
2011-04-11 12:05:59 +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 a9fb04ffb0 Evas Textblock/text: Add clipping until we fix inset handling.
Currently inset handling is not handled correctly so we just clip
to the left if there's no enough margin to draw the what overflows.
This is the same behavior that was done up until now because of the
global clipper that was applied.

SVN revision: 58184
2011-03-29 13:52:42 +00:00
Tom Hacohen fabf5bc16b Evas Textblock/text: Fix rendering outsize of zone and speed things up.
This speeds things up and uses "out of render zone" drawing.
In this commit we also start using width correctly so rendering should
be more exact.

SVN revision: 58183
2011-03-29 13:52:35 +00:00
Carsten Haitzler a3808761cc fix bug with prev/cur text state access in text obj for utf8 string.
SVN revision: 57201
2011-02-21 06:12:28 +00:00
Tom Hacohen bd0695d1b5 Evas encoding: Removed Evas_Encoding and moved to eina_unicode_utf8* instead.
SVN revision: 57096
2011-02-16 16:00:17 +00:00
Cedric BAIL a7d7ae4360 * evas: prevent early death of stringshare.
SPANK ! SPANK ! SPANK !

	PLEASE USE STRINGSHARE REPLACE EVERY TIME YOU DO
	A STRINGSHARE_DEL FOLLOWED BY A STRINGSHARE_ADD.



SVN revision: 57057
2011-02-15 17:24:55 +00:00
Tom Hacohen b4f5d791a5 Evas text: Fixed compilation warning introduced in last commit.
SVN revision: 56896
2011-02-10 09:11:30 +00:00
Tom Hacohen 6e68ec8b42 Evas font-engine: Fixed inset to use the string objects instead of strings.
SVN revision: 56895
2011-02-10 09:03:14 +00:00
Tom Hacohen 1cd89c7155 Evas text: Don't call text_props_info_create if there's no font set.
SVN revision: 56632
2011-02-01 12:18:11 +00:00
Tom Hacohen 94b5a536f0 Evas font/textblock/text: Started using string objects instead of
strings in most of the font engine (everywhere except draw).
Haven't removed the paramteres yet, but did mark them as UNUSED.
Removing them will be part of a future change.
Removed run-time OT toggling support, OT is now fast, no need for that.
Renamed all of the intl_props->text_props (because it really changed purpose now)
Fixed spliting/merging of text_props to be fast and good, not hacky and
complex like before.
Note to reviewers: Most of the changes are indentation related, sorry
for the mess, but I had to do it all in one commit, splitting was not
trivial (at least not in retrospect). The important parts are
evas_font_default_walk.x and text_utils.c. query and draw were just
adjusted a bit and the rest were only adjusted to conform to renaming or
were renaming on their own.

SVN revision: 56629
2011-02-01 12:17:52 +00:00
Tom Hacohen a98aaaae64 Evas text: Fixed a segfault with text objects with a font not yet set (but with text set).
SVN revision: 56537
2011-01-30 10:45:17 +00:00
Tom Hacohen e82371fd03 Evas text: Added API to query text object's text direction.
SVN revision: 56534
2011-01-30 10:45:00 +00:00
Tom Hacohen abb427a683 Evas text: Fixed string_size_get to use the last item's width instead of advance.
SVN revision: 56530
2011-01-30 10:44:37 +00:00
Tom Hacohen 895124e1b9 Evas text: relayout the items when needed.
SVN revision: 56528
2011-01-30 10:44:23 +00:00
Tom Hacohen 61e6f43f66 Evas text: Fixed vert advance get in cases of mixed scripts with different ascents/descents.
SVN revision: 56527
2011-01-30 10:44:17 +00:00
Tom Hacohen 91456d3198 Evas textblock: Started splitting the layouting to two stages, logical item creating and visual ordering of the items. This will let us to cache the logical items and just relayout the visual items when needed thus making everything a lot faster.
SVN revision: 56490
2011-01-30 10:40:14 +00:00
Tom Hacohen 1285647c17 Evas text object: Hacked a fix to string size get which fixes elipsis and many other stuff.
SVN revision: 56480
2011-01-30 10:39:16 +00:00
Tom Hacohen e927217279 Evas text: Fixed a bug with the issuing of script end of run get.
SVN revision: 56479
2011-01-30 10:39:09 +00:00
Tom Hacohen 3185db9667 Evas language utils: fixed evas_common_language_script_end_of_run_get and adjusted text and textblock object to use it.
SVN revision: 56478
2011-01-30 10:39:03 +00:00
Tom Hacohen ec59409dea Evas text: Fixed object_text last_up_to_pos.
SVN revision: 56477
2011-01-30 10:38:55 +00:00
Tom Hacohen 400fba721e Evas text: fixed an issue with last_up_to_pos and char_at_coords that caused them to return the wrong index.
SVN revision: 56475
2011-01-30 10:38:44 +00:00
Tom Hacohen e37ac1d679 Evas text: Use the already calculated len.
SVN revision: 56456
2011-01-30 10:36:47 +00:00