Commit Graph

232 Commits

Author SHA1 Message Date
perepelits.m 728eff8836 edje: implementation of Edje_3d
Summary:
I have a strange feeling that I always commit the same code to edje-3d, I hope it will finish very soon.
However here are some important new keywords, descriptors for them, methods for models,
structure for providing animation in edje programs and some more changes.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: jpeg, artem.popov

Projects: #efl

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-01-04 14:03:15 -08:00
Jee-Yong Um 71f578dc0b edje: add text_classes syntax to EDC
Summary:
text_class can be defined in text_classes block.

T2900

@feature

Reviewers: jpeg, raster

Subscribers: raster, cedric, Jaehyun_Cho, CHAN, kimcinoo

Differential Revision: https://phab.enlightenment.org/D3435
2015-12-24 15:58:34 +09:00
Jee-Yong Um 3e31eda3bd edje: introduce size_class attribute
Edje_Part can change its min or max size in code level with
size_class.

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

PS: Manual commit, arc refused to work...

@feature

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-12-08 12:25:15 +09:00
Jean-Philippe Andre 6ac4f7154b Edje: Add filter support to SNAPSHOT parts
This makes SNAPSHOT a part type on it own, combining the
common and filter subtypes.

This means it is now possible to set an evas filter on
a SNAPSHOT object, just like for TEXT, IMAGE and PROXY.

@feature
2015-10-01 20:10:54 +09:00
Jean-Philippe Andre 31edfbb817 Edje: Add support for filters to PROXY parts
Same syntax as for IMAGE and TEXT: description.filter
2015-10-01 20:10:54 +09:00
Jean-Philippe Andre c0f887b429 Edje: Move internal struct filter around (refactor) 2015-10-01 20:10:54 +09:00
Andrii Kroitor d595149178 edje: fix internal colorclass field
Summary:
Its value is never modified directly and should not be modifiled by mistake
in future.

@fix

Reviewers: Hermet, raster, reutskiy.v.v, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-09-23 12:34:22 -07:00
Cedric BAIL a7fd98f8f6 edje: add a SNAPSHOT part in EDC. 2015-08-06 11:05:50 +02:00
Jee-Yong Um 815ebc0b0e edje_embryo: add methods to handle event flags.
Summary:
Add embryo methods that change the state
whether Edje_Part will handle Evas_Event or not.

Reviewers: Hermet, woohyun, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-08-04 17:34:30 +02:00
Jean-Philippe Andre 6ca02cbfe8 Edje: Embed verbatim scripts for Efl.Gfx.Filters
This is now like the other embedded scripts, where a verbatim
string is parsed. The syntax is now:

filters {
   filter {
      name: "filter0";
      file: "filter.lua";
   }
   filter {
      name: "filter1";
      script {
         blend {}
      }
   }
   filter.file: "file.lua"; // name is "file.lua"
}

Thanks @raster for the quick review.
2015-07-01 20:46:34 +09:00
Jean-Philippe Andre 6e29489054 Edje: Use bsearch() to find filters as fast as possible
edje_cc ensures that the filters are in order by name
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre 3648b0e252 Edje: Add proper filters section in the EDJ file
Don't [ab]use the file data section for filter scripts, instead
create a proper section for them. The rest of the behaviour stays
the same.
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre b676dcf998 Edje: Use array instead of hash for filters data
Yeah that was totally overkill and pure laziness on my side.

Despite having the EO API for the filters still in beta,
I want to the EDC API and EDJ binary formats to stay compatible,
so let's get it right before the release :)
2015-06-30 10:12:13 +09:00
Jee-Yong Um 2b29f4dfbf edje: add "mask_flags" instruction for "part" block
Summary:
Elementary widgets dealing with Evas Events usually mask event_flags with
EVAS_EVENT_FLAG_ON_HOLD, to show that this event is already handled.
However, widget like Elm_Button, it does not handle EVAS_CALLBACK_MOUSE_DOWN directly,
but it handles Edje_Signal instead, so there's no chance to mask event_flags.
Developers can block event propagation by putting rectangle the very last part of EDC,
but this instruction can help the case making elementary widget with only Edje_Signal handling.
This is not required essentially, so please check the necessity of this function.

Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Jee-Yong Um ef491e697e edje: implement methods for mouse_events with edje_part for Edje Embryo script.
Summary:
In edje_embryo.c, there are the list for supported methods in script.
However, methods listed from line 175 to 188 don't exist actually.
This patch implements 4 methods among them.
   set_mouse_events(part_id, ev)
   get_mouse_events(part_id)
   set_repeat_events(part_id, rep)
   get_repeat_events(part_id)

Reviewers: Hermet, woohyun, cedric

Reviewed By: cedric

Subscribers: cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Jean-Philippe Andre 15afea293f Edje & evas filters: Properly pass data from EDC to Lua
Also fix a few issues
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0e8f890dfb Edje & evas filters: Add extra data from EDC to Lua program
This also supports color classes (really rough implementation for
now, but the API should remain stable).

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 84e3dd5c34 Evas filters: Add name to the filters
Deep down internally there was already a name, but no API could
really set it properly.
Here Edje will set the name of the filter based on the part name
or the data item name if relevant.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 64fd278c62 Evas filters: EO-ify the filters API
This creates the new interface
 Efl.Gfx.Filter

And the implementation is a mixin (evas_filter_mixin.c):
 Evas.Filter

All the filter rendering code has now been moved to this
new file. TODO: Merge image filtering.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 88b81d240a Edje: Move filter desc to common desc
This will be shared between IMAGE and TEXT.
In the future it can also be shared with PROXY and TEXTBLOCK.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 707b979ffd Edje/evas filters: Use EDJ data sections to store filters code
Use the file data {item, file} block to embed filters code.
It can become especially useful to keep the filters as separated
Lua files, that will be embedded in the final edj file.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre d00378edcf Edje/evas filters: Add filter.source support
This should preserve ABI stability with earlier versions of
edje_cc while still providing more advanced control over
proxy bindings for evas filters from EDC.

Also fix proxy binding for filters.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0e11e0a6dc Edje/evas filters: Quick renaming of evas filters related stuff 2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 225c0f937a Evas filters: Pass edje state name & value to the filters
From Edje, pass the current state info (name and value) as well
as the next state and the transition position when applicable.
2015-06-25 14:36:08 +09:00
Cedric BAIL a3c7a83196 edje: add possibility to speed up animation per object.
This could come handy for previewing the effect of accelerating animation.

@feature
2015-06-22 18:46:12 +02:00
jiin.moon 6487a26354 edje: add support to control the transition time of edje animation globally.
Summary:
Add the transition scale flag and the transtion scale value.
This flag can be change using "transition_scale_enable" in edje program.
If flag is true, the transition scale value affect the transition speed of edje
The transition scale value can be change by elm_config.

@feature

Test Plan: elementary_config

Reviewers: Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 17:56:15 +02:00
perepelits.m 3671506ad3 edje: add of edje-3d to edje_calc.c
Summary: Adding of Mesh_Node, Light and Camera to _edje_part_recalc.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 11:17:29 +02:00
Oleksandr Shcherbina d409df1caa evas: change interface evas_3d to evas_canvas3d
Summary:
Regard to https://phab.enlightenment.org/T2479 it is need for right generation
Eolian files

Reviewers: cedric

Subscribers: cedric, tasn

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:52:17 +02:00
Jean-Philippe Andre 111e51a6ff Evas: Add "no-render" flag for proxy sources & clippers
Those objects should never be rendered on the canvas, even if they
are visible. On the other hand, they need to be rendered in mask or
proxy surfaces.

note: this patch includes some extra whitespaces changes :(

@feature
2015-06-15 16:59:41 +09:00
Jean-Philippe Andre 75ec3a7338 Edje: Add clip as a property of a part description
Since masking, for performance and themeing reasons, it becomes
interesting to be able to switch clippers on the fly. In particular,
switching from an IMAGE mask to a standard RECT clipper can save a
lot of power when masking is not required.

This new flag "description.clip_to" will behave a bit like a mix of
rel.to and visible:

- It points to a part by name, just like part.clip_to. This will
  override the clipper set by the part, or override the default clipper.

- Like "visible", it can not be interpolated between two values, so
  it will switch only at the end of a transition.

- By default there is no clip override, which means Edje will fallback
  to the part's clipper, if any, or the base (group's) clipper.

NOTE:
- Since a clipper that does not clip anything becomes a standard object,
  it is visible and rendered. This will in 99.999% cases not be the
  intended behaviour. Currently we can simply use a transparent RECT
  in order to always have something clipped by the clipper, but this is
  a hack and this will trigger rendering of masks in their surfaces even
  when they are not actually used.
  Ideally, there should be a flag indicating to Edje & Evas that an object
  should be considered a clipper in all situations, and never be rendered
  on screen.

TODO:
- Support Edje Edit
- Add Embryo & Lua functions
- Add support in edje_convert
- Add Edje/Evas flag to mark objects as "no_render"

@feature
2015-06-15 16:59:41 +09:00
katpavalli 26b27319b4 edje: add po file support in edc translation.
Summary:
   Implementation to support .po files in edc for translation

Test Plan:
   Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md . text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed.

Reviewers: shilpasingh, cedric

Reviewed By: shilpasingh, cedric

Subscribers: cedric, rajeshps, govi, poornima.srinivasan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-11 10:40:55 +02:00
katpavalli ff1184df2e edje: add ability to change the language on one specific edje object.
Summary:
   Add a new property to edje_object.eo for setting the language on one Edje_Object.

Test Plan:
Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed as per the specific edje object.

   2) Click on the text object at bottom. "Click here"
      The system language gets changed and the below two edje objects language are changed globally.

Reviewers: cedric, shilpasingh

Subscribers: poornima.srinivasan, govi, rajeshps, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-01 17:50:02 +02:00
perepelits.m d7a53b11f6 edje: switch Evas_3D color to use Edje_Color.
Summary: Changes float on uchar as we do in other place for color component

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-19 14:17:00 +02:00
katpavalli dca95fb45a edje: support translation on static strings in edc.
Summary:
   Internationalisation of the static text specified as part of the edc is implemented.
   Problem: Static text when specified in the edc, remains unchanged when the system language is changed.
   Solution: Language support is provided even for the static strings in the edc.

Test Plan:
   Test code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   Compile the code with the below  command
   edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore`
   ./edje-text

   1) change the language of the system using the command
      export LANGUAGE=hi
      ./edje.text

      Not the text Loading gets displayed in hindi language

   2) change the language of the system using the command
      export LANGUAGE=ta
      ./edje.text

      Not the text Loading gets displayed in tamil language

   3) change the language of the system using the command
      export LANGUAGE=en
      ./edje.text

      Not the text Loading gets displayed in english language
As the number of .mo files in the /edje folder can be increased, those many languages can be supported

Reviewers: cedric, shilpasingh

Reviewed By: shilpasingh

Subscribers: cedric, rajeshps, govi, poornima.srinivasan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-14 18:41:47 +02:00
Cedric BAIL 59fb53c4cc edje: remove the need to order the header correctly for Windows. 2015-05-07 09:53:10 +02:00
Cedric BAIL b72df468f2 edje: add edje_file_iterator_new().
This list the actually opened Edje file by the current process.
2015-03-31 23:23:32 +02:00
Cedric BAIL 09f304a33c edje: make Edje_Color_Class a public structure. 2015-03-31 04:26:06 +02:00
perepelits.m 62b5ca7060 edje: add of textures to Edje 3D node.
Summary: Adding textures to edje_cc and some topblock keywords that I have forgotten to add in previous commits.

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-25 19:40:41 +01:00
Sohyun Kim 10670094c1 edje: add text_class_get() APIs
Summary: No APIs to get text_class for global hash and object hash

Reviewers: woohyun, cedric, raster

Reviewed By: cedric, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2213
2015-03-26 02:53:22 +09:00
Mike Blumenkrantz 1cf630f2bd edje color classes can now have text descriptions
@feature
2015-03-07 13:44:52 -05:00
Andrii Kroitor 4ad20ac8e4 edje: Edje_Edit - fix part alias source generation.
Summary:
generating correct part alias string 'alias: "theme_part_path" "real_part_path";'
@fix

Reviewers: cedric, seoz, Hermet, raster

Subscribers: cedric, reutskiy.v.v

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-06 20:19:22 +01:00
jiin.moon 4673dbeb4b edje: Adding the zoom effect of map to edje
Summary:
Support zoom effect of map in edje
@feature

Reviewers: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2068
2015-03-02 20:19:01 +09:00
Sohyun Kim 78ddad3daf edje: Add edje to text_class_member_hash properly.
Summary:
When textblock styles have text_classes, all edjes in the files were added
to text_class_member_hash even if the edjes didn't use the textblock styles. It
makes time long to update text_class.
This will add the edje using the textblock style which has a text_class to
text_class_member_hash.

Reviewers: cedric, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2035
2015-02-24 18:26:18 +01:00
Andrii Kroitor c198746b2d edje: fix windows build
Summary:
"far" and "near" are keywords on windows and can't be used as names of variables.

@fix

Reviewers: cedric, Hermet, raster, perepelits.m

Subscribers: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-24 13:46:45 +01:00
perepelits.m bc584cd59b edje: add of material properties.
Summary: Filling of fields: "ambient", "diffuse", "specular", "material", "normal", "shininess" and "shade".

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 16:33:21 +01:00
perepelits.m 3dda07dbce edje: add camera properties to edje_cc.
Summary: Filling of "fovy", "aspect", "near" and "far".

@feature

Reviewers: raster, Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 11:31:14 +01:00
perepelits.m 2e3b9ea589 edje: add of model lookups.
Summary:
I have added some methods to edje_cc_out.c to organize model lookups. The same methods already exists for images.
Also, I have removed source_type because now we don't need it in efl_file_set.

@feature

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-09 22:03:26 +01:00
perepelits.m 694f9dbcdb [Evas, Edje] Adding of new structures
Summary:
There will be several methods to set orientation in edc, so we have decided to make one big vector,
the main reason is that we use quaternion by default, but look_at, for example, is given as 6 coordinates.

Reviewers: Hermet, cedric, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1693
2015-01-08 15:21:17 +09:00
ChunEon Park 382c41e42d edje: support anti_alias option
set anti_alias in part section.
default is enabled.

part { name: "test";
   type: XXX;
   anti_alias: 0;
   ...
}

@feature
2014-12-24 16:29:49 +09:00
Cedric BAIL a6e6a4a44a edje: for now disable near and far as they are keyword on Windows. 2014-12-22 11:07:59 +01:00
Carsten Haitzler ee0eb1336b edje - remove old script_only code that used embryo (not lua)
thjis was deprecated even before efl 1.0 by never removed. lua
replaced it for script_only objects and you havent been able to
compile an edje file with script_only enabled since 1.0, so no point
having the code here.

this cleans up that code and cruft.
2014-11-25 15:09:00 +09:00
perepelits.m c59fba68de edje, evas: add of new structures
Summary: Preparation for the 3d edc adding.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-11-14 07:07:25 +01:00
Jaehwan Kim e4a1696a72 Edje: Set the min, max sizes of the image automatically.
Set the min, max sizes of the image automatically,
if it uses image set and there's no setting about min, max sizes.
This idea is originated by Jinsol Park.

@feature
2014-11-10 21:01:19 +09:00
Jaehwan Kim 1e21a4c323 scale: add the API edje_object_base_scale_get.
This function returns the base_scale factor set on the
Edje object.
The base_scale can be set in the collection of edc.
If it isn't set, the default value is 1.0.
2014-10-16 13:45:30 +09:00
Jihoon Kim 000f5fee84 ecore_imf: Add ecore_imf_context_bidi_direction_set/get API
Some Input Methods want to know the bidi direction (LTR/RTL) at the current cursor position.
2014-09-23 10:18:35 +09:00
Jihoon Kim 715da43d3a Add edje_object_part_text_input_hint_set/get API
Sets or get the input hint which allows input methods to fine-tune their behavior.
2014-09-01 19:01:54 +09:00
Jaehwan Kim 7e5d2606cc edje: Add dpi feature.
Summary:
This dpi is used to get the scale for each collection.
If each collection has a described dpi, it calculates a proper scale
based on the dpi and dpi which is described in the collection.

@feature

Test Plan:
If add dpi to collection of edc, the edje will save the value as the dpi of the collection.
For example, if the dpi of your device is 100, you just set dpi: 100 in the collection of edc.
If the edj is loaded in another device(dpi is 200), it will scaled 2 times.
It is possible that the described dpi of application and theme are different.
In that case, application and theme have a different scale.
It makes the edj that made in different environment works in one device.

Reviewers: seoz, zmike, JackDanielZ, Hermet, woohyun, cedric, raster

Reviewed By: raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1190
2014-07-24 14:50:25 +09:00
Cedric BAIL 1b54047ac4 edje: reduce overhead of setting text and color class in theme.
This reduce by 10% some elementary tests case that was provided
by some crazy french.
2014-07-06 22:50:32 +02:00
Carsten Haitzler 8edc879cc2 remove edje file changed monitoring as it's nothing but a bug vector
so this has to go. reloading edje files is nothing but trouble.
example - if you update your os your theme files get updated and then
all sorts of stuff goes wrong. jeff is right. this makes it an
intractible problem. we have an open file handle on the edj file. we
share that anre reuse it via eina_file - keep it. this keeps tyhe edje
file stable and consistant.

<Jef91> Elementary applications freak the fuck out
<Jef91> if you change the theme file
<Jef91> that they are using
<Jef91> SeoZ,
http://forums.bodhilinux.com/index.php?/topic/10629-eepdater-display-issue/
<Jef91> that happens when my theme file that is in use changes

we will get nothing but continued issues and complains if we keep
doing this. it's a fairly pointless mis-feature. thank god its got no
apis - just signals and internals.
2014-07-02 11:28:42 +09:00
Kateryna Fesyna 782b93a65e edje: Edje_Edit - add functions that allow user to set and get the value of states limit property
Summary:
This commit contains two new functions edje_edit_state_limit_get() and
edje_edit_state_limit_set(). These functions allow user to set and get value of
states 'limit' property value. Also it provides an internal type to represent
limits (Edje_Edit_State_Limit) and implements printing of limits value on edc code
generation.

Reviewers: cedric, Hermet, seoz, raster

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-16 17:01:31 +02:00
Kateryna Fesyna 8ae41a547b edje: Edje_Edit - add functions that allow user to set and get value of fill type
Summary:
This commit contains two new functions for setting and getting value of
fill type of IMAGE and PROXY parts: edje_edit_state_fill_type_get() and edje_edit_state_fill_type_set()
Also with this commit printing of not default value of fill type (TILE) on generation of edc code is added.

Reviewers: cedric, Hermet, seoz, raster

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-16 16:56:32 +02:00
Jean-Philippe Andre e8d7c46253 Edje: Add support for ETC2 through LOSSY_ETC2 images
Declare your images as LOSSY_ETC2 to encode them as ETC2.
Add options to edje_cc to disable etc2.
Use ETC2 support from Eet.

@feature
2014-06-13 17:58:08 +09:00
Mike Blumenkrantz 894c36ff11 de-elipsis edje
the word is "ellipsis". it's bad enough that we have released misspelled api, but we can at least spell things correctly internally.
2014-05-13 16:20:41 -04:00
Mike Blumenkrantz 5f376fde36 edje now correctly supports text.source and text.text_source for swallowed parts
fix T1186
2014-04-25 10:52:15 -04:00
Mike Blumenkrantz 939f2eea7f edje now has the group.script_recursion flag for permitting unsafe embryo recursion
this is enabled for all scripts within a group, and it should only be used if you:

1) know what you are doing

2) know why this is unsafe (T905)

@feature
2014-04-25 10:52:15 -04:00
Mike Blumenkrantz adcc323291 edje: the ellipsis fuckup preservation commit.
what a huge, colossal cock-up of a clusterfuck. it's a good thing nobody ever uses ellipses or edje. otherwise we'd probably get complaints about this kind of thing.
2014-04-22 20:21:46 -04:00
Jean-Philippe Andre f6eae69eb2 Edje: Use LOSSY_ETC1 instead of LOSSY
Add a new flag in EDC files to specify ETC1 compression
should be enabled. It follows the same rules as the
current LOSSY flag for JPEG compression.

@feature
2014-04-18 16:50:01 +09:00
Yossi Kantor 2be615916a Eolian: Integration of Edje and Edje Edit 2014-03-24 08:14:30 +02:00
Tae-Hwan Kim 3061a706c4 Add new PLUGIN_RUN action type and new plugins.plugin handlers 1. If external library is commerical source and not opensource, we cannot include/build the library within edje. 2. If external library does not use general encodable sources, we...
Summary:
...cannot encode those things into edje.

In our case, we need vibration when longpressed. But those files are not
audio or image and cannot be encoded into edje. Also, this library is not
opensource so should not be linked directly with edje.
So we should call vibration API by using this plug-in.

Reviewers: raster, cedric, seoz, Hermet

CC: cedric

Differential Revision: https://phab.enlightenment.org/D588
2014-03-20 13:00:21 +09:00
Cedric BAIL 2b84495168 edje: check font change in edje text part cache infra.
@fix
2014-03-17 19:10:22 +09:00
Sohyun Kim 85b2a8f5dc reset textblock cache when text_class is changed
If text_class in the textblock is changed, it is not applied because of the cache.
When text_class is changed, reset cache to update text information.
2014-02-27 13:31:42 +09:00
Carsten Haitzler db1990020a edje - feature - add channel types for sounds and ability to mute them
this adds a new feature to be able to assign a sample to a given
"type" of audio channel, and then to be able to mute these from code.
2014-02-09 19:08:12 +09:00
Jean-Philippe Andre a25b212bac Evas filters: Add support for proxies in Edje
They will be defined with the following syntax:
buffer:buf(src=part);
2014-02-07 17:33:18 +09:00
Jean-Philippe Andre 08f2624e6a Evas filters: Implement basic Edje support
Does not support proxies yet.
Implemented as "filter" field in a part.description.text (next
to a "font").
2014-02-07 17:33:18 +09:00
zmike c3ece04211 edje embryo reset timer should probably call the reset function 2014-02-03 18:23:50 -05:00
Jihoon Kim f241646370 Edje: add edje_object_part_text_input_panel_show_on_demand_set/get() 2013-12-27 13:24:54 +09:00
Daniel Juyung Seo 76d8532b54 efl: Unified eina critical manro to CRI.
Being annoyed by different types of eina critical macros - CRI, CRIT,
 CRITICAL -, I concluded to unify them to one. Discussed on IRC and
 finally, CRI was chosen to meet the consistency with other macros -
 ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 12:27:13 +09:00
Vyacheslav Reutskiy 641d823cbb edje: edje_calc - update _edje_part_description_find
Add to fuction prototype new param: Eina_Bool approximation.
If need exact matching state name and value set EINA_FALSE to
'approximate'. In other cases used EINA_TRUE.

Reviewers: cedric, raster, seoz

CC: cedric

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

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 10:47:32 +09:00
Vorobiov Vitalii 0640b7f341 edje: adding Alias API into edje_edit module
Summary:
This commit will add some API for working with aliases.
There are four functions will be added:
1. edje_edit_group_aliases_get - this function will return the list of aliases of certain group.
2. edje_edit_group_is_alias - this function will check if the given group name is actually an alias.
3. edje_edit_group_aliased_get - return the main real group that is being aliased.
4. edje_edit_group_alias_add - add new alias name.

Also the function "edje_edit_group_del" was modified because of wrong behaviour.
Now if the given group is alias, it will successfully delete it,
but if the given group is main group, it will also delete all it's aliases.

This commit also modify EDJ file by adding new field for detecting if the group is alias or not.

Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D376
2013-12-14 18:40:26 +09:00
Otavio Pontes afd8a238d1 Adding the cubic-bezier curve to edje transitions
Summary: Adding an option to use a cubic-bezier curve in edje transitions.

Reviewers: Sachiel, cedric, raster

Reviewed By: raster

CC: raster

Differential Revision: https://phab.enlightenment.org/D319
2013-12-02 15:02:40 +09:00
ChunEon Park 58368ea636 edje - fix the side effect introduced by 12aba0db5a
Now do recalc parts correctly when edje is moved.
2013-11-22 14:06:47 +09:00
ChunEon Park eea338764a edje - actually we don't need extra variable. 2013-11-21 13:50:19 +09:00
ChunEon Park 12aba0db5a edje - Fix to update map enabled part when edje object is moved. 2013-11-21 13:26:37 +09:00
ChunEon Park c28f08a477 edje - use Eina_Bool. 2013-11-21 13:00:55 +09:00
ChunEon Park 21b8212902 edje - removed unused function. 2013-11-20 18:52:41 +09:00
Thiep Ha 44639b2098 Remove selection handlers (and move to elm)
Summary:
Selection handlers are now implemented in elementary. So, we should remove them from edje.
The BLOCK_HANDLE mode should be removed also.

Reviewers: cedric, tasn

CC: cedric, raster

Differential Revision: https://phab.enlightenment.org/D312
2013-11-08 17:30:45 +09:00
Cedric Bail 1c7f602087 edje: use const Eina_File for mmap_set function. 2013-11-04 11:28:29 +09:00
Cedric Bail 797ad7528f edje: add border linked to Image sets.
It is quite common that in an image sets each image has different border size.
This patch permit to define the border value on a per image basis in the set.
2013-09-06 16:47:36 +09:00
Cedric Bail ff01dec8fb edje: fix function to use Eo API.
I am really unhappy to have to do this patch myself. This commit is in since
May and I have continuously request to be fixed. It has taken way to long. It's
done now. Next time I see such a patch in EFL, I will revert it right away.
2013-09-05 19:22:51 +09:00
Chris Michael b4717598d1 Sorry Jihoon, I have to revert this (for now). It completely breaks
building of EFL :( I think perhaps you forgot to push the ecore_imf
code that goes with this ??

Revert "Edje: add edje_object_part_text_input_panel_show_on_demand_set/get()"

This reverts commit 4b5ed04559.
2013-08-15 07:40:15 +01:00
Jihoon Kim 4b5ed04559 Edje: add edje_object_part_text_input_panel_show_on_demand_set/get() 2013-08-14 18:17:06 +09:00
Cedric Bail 7506faaca2 edje: add edje_file_mmap_set.
This reduce the number of system call to stat especially when using GROUP
and reduce the risk of a race condition when using GROUP.
2013-08-09 20:50:54 +09:00
Cedric Bail 1927bcea91 edje: do not move object until all positionning information is known. 2013-08-05 17:46:37 +09:00
Cedric Bail 072f73a453 edje: improve loading time of Edje_Object with Evas_Object_Textblock and multiple styles.
This bring you a 10% speedup to the first frame of Elementary_Test.
2013-08-01 10:52:41 +09:00
José Roberto de Souza fe6dbda0e1 edje: Refactor signal callbacks flags
Share a byte with 2 matchs and use bitwise operations to read/write they states
is not much readable and easily could lead a issues.

Use a struct is much simpler and only will coast a half of byte per match.
2013-07-22 10:14:16 -03:00
Cedric Bail cf9b0180d6 edje: add threshold to draggable part. 2013-07-19 15:40:11 +09:00
ChunEon Park 8cec34d1d4 edje/map - changed data structure from list to array to improve color data memory access 2013-07-18 20:09:54 +09:00
Cedric Bail 397e0b90a2 edje: improve accuracy of math logic in part positioning. 2013-07-18 16:20:32 +09:00
Cedric Bail 669e40fbce edje: reduce memory footprint of edje callbacks.
Divide by two the amount of memory used by callbacks in elementary_test.
2013-06-17 16:55:22 +09:00
ChunEon Park 8476e20ffe edje - support map color set 2013-06-06 18:18:36 +09:00
ChunEon Park d3e1cb055a edje - use Eina_Bool 2013-06-04 14:42:52 +09:00
Mike Blumenkrantz 4ea0e29c6f add embryo params for proxy src visible/clip
hermet please look at these, they don't seem to work right for some reason
2013-05-31 15:28:57 +01:00
ChunEon Park f55092ab93 edje - support edc proxy.source_clip 2013-05-31 20:08:59 +09:00
ChunEon Park 80e1353807 edje - support edc source_visible 2013-05-31 17:35:30 +09:00
ChunEon Park e83accf1ee edje/textblock - keep the styles if the new font by the text class is applied.
text is already did. for the consistency textblock should be kept the same way.
2013-05-22 18:04:34 +09:00
thiepha (Thiep Ha) c38a2a6bb8 [Edje_Entry] Add selection handlers to entry
Add selection handlers to entry.

https://phab.enlightenment.org/D117

Conflicts:

	ChangeLog
	NEWS
2013-05-13 19:16:58 +09:00
Cedric Bail 56180a7ff4 Revert "Revert 2 commits from cedric:"
This reverts commit 71c0eb6dc6.
2013-05-09 09:37:55 +09:00
Mike Blumenkrantz 71c0eb6dc6 Revert 2 commits from cedric:
"edje: open Eina_File ourself instead of delegating it to edje."
	"edje: don't never corrupt an opened edje object."

This reverts commits 8727e43c1f and 8f12f21cf0, which caused nonstop crashes.
2013-05-08 13:17:21 +01:00
Cedric Bail 8727e43c1f edje: open Eina_File ourself instead of delegating it to edje. 2013-05-08 18:17:00 +09:00
Cedric Bail 948ea14379 edje: always invalidate and recalc the correct Edje object. 2013-04-08 20:03:43 +09:00
Cedric Bail fb50c9b366 edje: reuse existing index instead of a direct pointer (-30KB).
This one does account for the fact that we always read relative
information even when only computing a part of it.
2013-04-08 12:16:22 +09:00
Cedric Bail 4437235c85 Revert "edje: reuse existing index instead of a direct pointer (-30KB)."
This reverts commit 6a6e6dda68.
2013-04-08 00:14:50 +09:00
Cedric Bail 6a6e6dda68 edje: reuse existing index instead of a direct pointer (-30KB). 2013-04-07 23:50:29 +09:00
Cedric Bail 0cee296fa7 edje: don't use 30K of pointers for an indirection in some event path. 2013-04-07 11:39:20 +09:00
Cedric Bail a645c8153f edje: one less pointer per Edje_Real_Part. 2013-04-07 02:18:48 +09:00
Jihoon Kim 8dda0883c1 edje: Add edje_object_part_text_input_panel_layout_variation_set/get API 2013-03-27 17:28:53 +09:00
Cedric BAIL 8222bf4650 edje: add spread.{w,h}.
This is particularly useful when using table and replicating the
same group all over the place. At least for many games I have in mind
this will save a lot of lines !
2013-03-22 18:17:12 +09:00
Cedric Bail b754529325 edje: fix run on 64bits system. 2013-03-18 16:28:22 +09:00
Carsten Haitzler 966626d0b7 Revert "edje: fix run on 64bits system."
This reverts commit d482c5cc59.
2013-03-17 20:00:20 +09:00
Cedric Bail d482c5cc59 edje: fix run on 64bits system. 2013-03-17 13:00:20 +09:00
Tom Hacohen 8aed36e914 Edje match: Cleaned up cedric's *IMPORTANT* compiler warnings. 2013-03-14 16:03:15 +00:00
Cedric BAIL 488ea9ec82 edje: reduce memory usage of Edje signal callbacks and automates.
This patch try to share signal callbacks and automate accross all Edje
object. It does use an Eina_Hash on the callback description (signal,
source, func). There is no need to check it against Edje file or group
only the callbacks matter.

This version remove all use of size_t as it should never be above 32bits.
We have a hard limit on the number of callback to 2^32 now. I am considering
it would be sane to make it a short.
2013-03-13 16:46:42 +09:00
Cedric BAIL c78f4d7bfa edje: use Eina_Cow for physics and map Edje_Real_Part_State.
This reduce memory used per Edje_Part description by 2 on my tests.
2013-03-13 14:35:31 +09:00
Carsten Haitzler b7221512d5 This causes segv's on 64bit!
Program received signal SIGSEGV, Segmentation fault.
_edje_emit_cb (ed=ed@entry=0x8ebd68, sig=sig@entry=0x8fba4c
"focus,part,in", src=src@entry=0x8222fc "elm.text",
data=data@entry=0x0, prop=prop@entry=0 '\000') at
lib/edje/edje_program.c:1442
warning: Source file is more recent than executable.
1442                                eina_list_free(data.matches);
(gdb) bt
"focus,part,in", src=src@entry=0x8222fc "elm.text",
data=data@entry=0x0, prop=prop@entry=0 '\000') at
lib/edje/edje_program.c:1442
"focus,part,in", src=0x8222fc "elm.text", sdata=0x0, prop=0 '\000') at
lib/edje/edje_program.c:1366
_pd=0x8222f0, list=0x7fff00000001) at lib/edje/edje_message_queue.c:124
op_type=EO_OP_TYPE_REGULAR, op=564, p_list=0x7fffffffcf28) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ebae0) at lib/eo/eo.c:404
op_type=op_type@entry=EO_OP_TYPE_REGULAR) at lib/eo/eo.c:435
(obj=<optimized out>) at lib/edje/edje_message_queue.c:71
(sid=sid@entry=0x8eae88) at elm_interface_scrollable.c:788
(sid=0x8eae88) at elm_interface_scrollable.c:805
_pd=0x8eae88, list=<optimized out>) at elm_interface_scrollable.c:3370
op_type=EO_OP_TYPE_REGULAR, op=840, p_list=0x7fffffffd158) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
op_type=op_type@entry=EO_OP_TYPE_REGULAR) at lib/eo/eo.c:435
_pd=0x8ead70, list=<optimized out>) at elm_entry.c:2804
op_type=EO_OP_TYPE_REGULAR, op=129, p_list=0x7fffffffd328) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
lib/eo/eo.c:435
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd4a8) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
class_data=<optimized out>, list=<optimized out>) at elm_widget.c:5526
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd628) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
out>, list=<optimized out>) at elm_layout.c:2157
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd7b8) at
lib/eo/eo.c:364
op_type=<optimized out>, op=1) at lib/eo/eo.c:463
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd928) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
out>, list=<optimized out>) at elm_entry.c:3076
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffdad8) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
lib/eo/eo.c:1162
elm_entry.c:3068
autorun=0x0) at test.c:441

Revert "edje: reduce memory usage of Edje signal callbacks and automates."

This reverts commit 15aae2c0a4.
2013-03-12 23:48:42 +09:00
Cedric BAIL 4d316f3bec eo, evas, edje: reorder structure for reducing memory usage. 2013-03-12 19:17:11 +09:00
Cedric BAIL 15aae2c0a4 edje: reduce memory usage of Edje signal callbacks and automates.
This patch try to share signal callbacks and automate accross all Edje
object. It does use an Eina_Hash on the callback description (signal,
source, func). There is no need to check it against Edje file or group
only the callbacks matter.
2013-03-12 15:58:42 +09:00
Cedric BAIL d065dd4750 efl/edje: edje program are static for all object of the same edje collection.
This reduce our waste of memory by 300K in most elementary application. There is
another 400K to win by merging edje signal callback automat.


SVN revision: 83879
2013-02-14 03:36:13 +00:00
Lucas De Marchi f1ca8b54d6 efl: remove check for langinfo.h and locale.h
SVN revision: 82583
2013-01-10 20:25:53 +00:00
Gustavo Sverzut Barbieri acf4ca6139 efl/edje: remove alloca as it's in eina now.
SVN revision: 82372
2013-01-07 23:30:06 +00:00
Gustavo Sverzut Barbieri 9b5958ce91 efl/edje: ecore_imf_init() only once.
use technique similar to elementary and delay init() of module, but
once you do, do it only once and avoid shutdown() until
edje_shutdown().

This is good if we keep creating and deleting edje objects with entry,
the count could go to 0 and ecore_imf_shutdown() would unload
everything, just to load it soon.



SVN revision: 82281
2013-01-05 16:17:53 +00:00
Gustavo Sverzut Barbieri 519a702681 efl/edje: fix definition of parameter-less functions.
SVN revision: 82280
2013-01-05 16:15:59 +00:00
Gustavo Sverzut Barbieri 9ea2ce1041 efl: merge edje.
this is still in progress, mostly the multisense stuff is pending.

it seems that when we merge ecore_audio in edje the libremix and
similar are gone, at least from Edje, and will be in ecore_audio
itself (or pulseaudio).

Changes:
 * __UNUSED__ to EINA_UNUSED
 * binaries (epp, embryo_cc, edje_cc) now consider EFL_RUN_IN_TREE and
   will assume the binaries are still not installed, running from
   build tree location (needs more testing, maybe doesn't work with
   srcdir != builddir, still doesn't solve cross compile builds)



SVN revision: 82139
2013-01-04 02:08:14 +00:00