Commit Graph

1198 Commits

Author SHA1 Message Date
Jean-Philippe Andre c99449ea09 Evas filters: Allow use of a color multiplier
We couldn't do evas_object_color_set() on a filtered text
object simply because the color was not properly taken into
account.

This should simplify some effects as it'll be much easier to
set a color or alpha value to the text regardless of the filter.

Hmm, is this a fix or feature? O_o
2014-06-12 10:59:56 +09:00
Jean-Philippe Andre 793e2ee21e Evas filters: Report parsing error message from lua
Also, re-enable legacy code compatibility layer, as it
can still be used for compat with older code.
2014-06-11 10:02:42 +09:00
Youngbok Shin f7cf96d4d9 evas/textblock: check item's type before returning result.
Summary:
When format item is cut off by ellipsis, result of "_find_layout_item_line_match"
can be TEXT type item. And it keeps ellipsis item's information.
@fix

Test Plan: D974

Reviewers: woohyun, tasn

CC: cedric, herdsman

Differential Revision: https://phab.enlightenment.org/D975
2014-06-10 15:08:09 +01:00
Dongyeon Kim acc95afbd8 evas gl: distinguish between IMG and EXT MSAA extensions
Summary:
For drivers that support IMG_multisampled_render_to_texture,
GL_MAX_SAMPLES_IMG should be used to query max supported samples
Likewise, for drivers that support EXT_multisampled_render_to_texture,
GL_MAX_SAMPLES_EXT should be used to query max supported samples

@fix

Reviewers: seoz, Hermet, raster, cedric

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D948
2014-06-10 19:20:17 +09:00
Daniel Zaoui d668a0a726 3d: Fix shadow declaration 2014-06-08 12:40:42 +03:00
perepelits.m e5905f3f74 evas: Evas_3D - add evas_box3_ray3_intersect and evas_box2_intersect_2d functions.
Summary: First function is used for intersection of ray and parallelepiped, the second one - for intersection of ray and rectangle in two-dimensional case.

@feature

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D956

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 20:50:49 +02:00
Bogdan Devichev 700f4396e1 evas: Evas_3D - add .obj export/import.
@feature

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D954

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 20:49:26 +02:00
Oleksandr Shcherbina a25aa1aa1a evas: Evas_3D - Revision frustum culling.
Summary:
Add API that checks OBB's points of node are inside frustum of camera.
Add example with frustum culling.

@feature

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D942

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:55:34 +02:00
Tom Hacohen 3b70b4f28f Evas textblock: Fix crash when cutting ligatures with formats.
"f<color=#f00>i</color>f" could cause textblock to crash. It doesn't
crash anymore. It doesn't render the colours correctly either, but at
least this is the first step.

This is the start of fixing T1308

@bugfix
2014-06-04 10:14:24 +01:00
Cedric BAIL 21e7a3aed9 evas: check that we don't use a NULL pointer on wrong frame number.
CID 1220083
2014-06-04 01:18:51 +02:00
Tom Hacohen 0fc3279db9 Efl: Update code to use the new class names generated by eolian. 2014-06-03 11:28:01 +01:00
Tom Hacohen d9263e6571 Eo base: rename event_freeze_get to event_freeze_count_get.
This is needed because of a possible clash between the method event_freeze
and the property event_freeze with bindings.
2014-06-02 12:50:23 +01:00
ChunEon Park 0650797825 evas/blend: oops, missed a variable declaration.
build error by this commit.

aede29e2d4
2014-05-31 14:43:48 +09:00
ChunEon Park aede29e2d4 evas/blend - disable neon code.
Current neon code is a little buggy, the blend won't be done correctly.
so leave the c code depends on the compiler optimization.
2014-05-31 14:33:55 +09:00
Guillaume Friloux a3e58b7618 Add prototype of evas_3d_mesh_aabb_add_to_frame for evas_3d_mesh_loader_md2.c 2014-05-30 11:50:02 +02:00
Guillaume Friloux 91afb45cd0 Fix warning with -Wincompatible-pointer-types-discards-qualifiers 2014-05-30 10:43:54 +02:00
ChunEon Park 6f1f49b4f6 evas/evas_3d: fix implicit declaration function call.
Thanks JackDaniel for reporting.
2014-05-30 08:46:16 +09:00
Daniel Hirt 177135ff0d Evas/Textblock: add support for ellipsis values
Summary:
This enables textblock to support more values other than 1.0.
For 0 <= ellipsis < 1.0, it splits the text such that it fits the
textblock's width. The ellipsis is relatively position according to the
ellipsis value, and characters are removed also relatively.
For example, a value of 0.5 will position the ellipsis right in the
center of the textblock's width, while removing characters equally right
and left from the center.

Basic approach to this feature was to do some work before the layout
process. We calculate the expected total width of the items, and by how
much we exceed from the textblock's width. Afterwards is it just some
careful work to set the boundaries of the width we want to cut, and
deciding which characters we need to removed to fulfill this requirement.
The rest is splitting the text and visually-removing the part we
need to cut.
This is all handled before any logical lines are created, so the
_layout_par function remains almost intact. A designated _ellip_prev_it
field in the Paragraph struct instructs after which item we place the
ellipsis item, if at all.

Note that we keep the fast path for ellipsis 1.0, as heavier work needs
to be done for the other values.

Added tests to evas_suite for a range of ellipsis values.

Also, multiline is unsupported at the moment.
@feature

Test Plan: Anything that uses Evas Textblock (single-line, please)

Reviewers: tasn, id213sin, raster

CC: cedric, JackDanielZ, raster

Differential Revision: https://phab.enlightenment.org/D905
2014-05-29 15:52:01 +01:00
Jean-Philippe Andre f4a0c8054f Win64: Fix a bunch of warnings
Fix invalid casts.
Use printf("%z") where appropriate.
Fix unused variables warnings.

Thanks vtorri for the patch.

@fix
2014-05-29 20:02:16 +09:00
Jean-Philippe Andre f62b612797 Evas: Remove invalid cast and fix warning/bug on windows
On Windows, long is 32 even on Win64.
Thanks Vincent for spotting this.

@fix
2014-05-29 17:31:16 +09:00
Daniel Zaoui b9b5fe5744 Evas_3d: fix warnings. 2014-05-29 09:58:27 +03:00
Tom Hacohen c58b3401c3 Eo/evas events: Move legacy events dynamic generator to eo. 2014-05-28 12:28:17 +01:00
Carsten Haitzler cedfc6e49e warning-- 2014-05-28 18:26:51 +09:00
se.osadchy 0bc5d3176a [Evas/evas_3d_scene] Propagate events.
Summary: Add 3 new APIs function for full work of the picking nodes.

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D889
2014-05-28 18:24:58 +09:00
ChunEon Park b61b1c9412 evas/textblock - apply efl coding style. 2014-05-28 14:19:46 +09:00
ChunEon Park fbb4d092cb evas/textblock - removed unnecessary null check.
It should be definitely valid.
It's meaningless checking the value there.
2014-05-28 14:14:35 +09:00
ChunEon Park e973390f64 evas/textblock - null check format.
logically it's insane that it doesn't check the null there but it checks right next line.
2014-05-28 14:09:34 +09:00
Jaehyun Cho 9952699820 evas_draw_main: Remove unnecessary conditional expression
Summary: The comparison dc with NULL is not necessary. So remove the unnecessary conditional expression.

Reviewers: Hermet

Reviewed By: Hermet

CC: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D908
2014-05-28 11:24:56 +09:00
Jaehyun Cho eee9607a4b evas_font_dir: Prevent the use after free
Summary: Pointer fd is used after being deallocated.

Reviewers: Hermet

Reviewed By: Hermet

CC: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D906
2014-05-28 11:24:34 +09:00
Tom Hacohen cf4ad9328a Evas textblock: Fix wrong advance calculation when bidi is disabled.
The last_it was not updated correctly with bidi disabled.

Thanks to Daniel Hirt for spotting this.

@fix
2014-05-27 14:20:18 +01:00
Oleksandr Shcherbina e47373aee1 [evas/evas-3d] Add OBB and AABB.
Summary: Add axis-aligned bounding box (AABB) to frame. Set and update AABB and oriented bounding box (OBB) in node.

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D881
2014-05-27 22:07:29 +09:00
Youngbok Shin bc70a1bd84 evas/text: fix abnormal ellipsis logic when harfbuzz is enabled.
Summary:
text_props.len indicates visual length from harfbuzz logic when it is available.
But, input pram "idx" is logical length. So, ellipsis works abnormally in some case.
@fix

Test Plan: D870

Reviewers: tasn, woohyun

CC: cedric, herdsman

Differential Revision: https://phab.enlightenment.org/D871
2014-05-21 10:41:29 +01:00
ChunEon Park c3cd680fad evas/render - fix segfault because of null cow access.
issue ticket: T1252

@fixed
2014-05-19 22:45:46 +09:00
Jean-Philippe Andre f731f8ffb4 Evas filters: Fix NULL dereference (legacy_strdup)
CID 1210809
CID 1210813

+ remove comment
2014-05-14 18:42:05 +09:00
Jean-Philippe Andre 2a5b3e2482 Evas filters: Fix NULL dereferences
CID 1210807
CID 1210808
2014-05-14 18:39:53 +09:00
Jean-Philippe Andre e0d3e20aed Evas filters: Remove logically dead code
CID 1181889
2014-05-14 18:39:53 +09:00
ChunEon Park d497cd4364 evas/evas3d: reset image properies if the image is used for scene. 2014-05-12 19:55:47 +09:00
ChunEon Park 97c7f36a50 evas/evas3d: discard proxy textures list properly.
this fixes evas-3d-proxy example to be exited correctly.
2014-05-12 16:47:54 +09:00
ChunEon Park 7ef3276a66 evas/evas3d: fix proxy texture source set.
the appeneded texture should be object itself but not private data.
2014-05-12 15:42:57 +09:00
Cedric Bail 4f1ace7889 evas: move the type and enum of Evas_3D into the unstable part of the API.
I am concerned that we do duplicate the color format of a texture insteed
of reusing the colorspace enum from Evas (that already exist). I believe
this is a side effect of not using Evas_GL_Image for texture.

This let me think that I wont allow this API out of BETA until we reduce
duplication by using Evas_GL_Image as it seems it will also impact the
public API of Evas_3D.
2014-05-10 12:04:12 +02:00
Cedric Bail 2042bdf922 evas: fix uninitialized value in Evas_3D.
CID 1211986.
2014-05-10 12:04:12 +02:00
Cedric Bail d36bc1f95a evas: remove left over Evas_3D public/released API. 2014-05-10 12:04:11 +02:00
Cedric Bail 45d1cd0b01 evas: fix use of uninitialized value in Evas_3D_Mesh. 2014-05-10 12:04:03 +02:00
Cedric Bail d8652193fc evas: fix uninitialized value being used when the engine doesn't support Evas_3D.
CID 1211988
2014-05-10 11:44:57 +02:00
Jean-Philippe Andre 8c8816aca6 Evas filters: Fix some parsing errors 2014-05-09 16:57:39 +09:00
Jean-Philippe Andre 139f7bc178 Evas doc: Add example for padding_set (filters)
With preview and all.
2014-05-09 16:57:39 +09:00
Jean-Philippe Andre 87e09ff25e Evas doc: Move filters reference doc to Lua
Part 2: improve doc design, translate examples to Lua syntax and
        add a few words about Lua itself.
2014-05-09 16:57:39 +09:00
Jean-Philippe Andre 8a1b335bb1 Evas doc: Move filters examples to Lua
Part 1: auto-generated examples with previews
2014-05-09 16:57:39 +09:00
Jérémy Zurcher 9a79d1e864 silence a few warnings 2014-05-08 00:15:53 +02:00
Jérémy Zurcher f8c2c57406 do not use EINA_FALSE instead of NULL 2014-05-07 17:45:11 +02:00