-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Eo classes workarround for disabiling ector #482
base: devs/jptiz/optional-ector
Are you sure you want to change the base?
Add Eo classes workarround for disabiling ector #482
Conversation
This creates `_base` class to `evas` `eo` classes that use/need filter `ector`'s filter functionalities. When `ector` is enabled `_vg` classes inherite from `_base` and define the same filter functions as originaly intended and used to generate the original class. When `ector` is desanabled`_non_vg` just inherite from `_base` and is used to generate the original class.
src/lib/evas/canvas/meson.build
Outdated
['efl_canvas_group.eo', 'efl_canvas_group_vg.eo_template', 'efl_canvas_group_non_vg.eo_template'], | ||
['efl_canvas_image_internal.eo', 'efl_canvas_image_internal_vg.eo_template', 'efl_canvas_image_internal_non_vg.eo_template'], | ||
['efl_canvas_textblock.eo', 'efl_canvas_textblock_vg.eo_template', 'efl_canvas_textblock_non_vg.eo_template'], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not too much, but...
['efl_canvas_group.eo', 'efl_canvas_group_vg.eo_template', 'efl_canvas_group_non_vg.eo_template'], | |
['efl_canvas_image_internal.eo', 'efl_canvas_image_internal_vg.eo_template', 'efl_canvas_image_internal_non_vg.eo_template'], | |
['efl_canvas_textblock.eo', 'efl_canvas_textblock_vg.eo_template', 'efl_canvas_textblock_non_vg.eo_template'], | |
['efl_canvas_group.eo', | |
'efl_canvas_group_vg.eo_template', | |
'efl_canvas_group_non_vg.eo_template'], | |
['efl_canvas_image_internal.eo', | |
'efl_canvas_image_internal_vg.eo_template', | |
'efl_canvas_image_internal_non_vg.eo_template'], | |
['efl_canvas_textblock.eo', | |
'efl_canvas_textblock_vg.eo_template', | |
'efl_canvas_textblock_non_vg.eo_template'], |
We could also change it into a dict (for better semantics) or just store the prefix and add _vg
and _non_vg
+ .eo
and .eo_template
inside the foreach
loop.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've reworked this, what do you think about it
copy: true, | ||
) | ||
|
||
priv_eo_file_target += custom_target('eolian_gen_' + eo_file, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where is this variable initialized?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
src/lib/eo/meson.build:28:priv_eo_file_target = []
and elementary rewrite it:
src/lib/elementary/meson.build:250:priv_eo_file_target = []
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, do we want to append? How does it work/how is it processed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I actually don't know how/why this works/is processed, here I'm just mimicking this, as it was done before this patch. So, just maintaining the same semantics.
@@ -10,6 +10,7 @@ EFL_START_TEST(eolian_static_check) | |||
{ | |||
Eolian_State *eos = eolian_state_new(); | |||
fail_if(!eolian_state_directory_add(eos, EO_SRC_DIR)); | |||
fail_if(!eolian_state_directory_add(eos, EO_BUILD_DIR)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need this? (And what does this test-case tests exactly?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This kinda loads all the .eo
s at that directory, the next line compiles them all. As now there are some eo
s classes at the build dir, we need to include them as well to address all dependencies.
This PR define vector-graphics and non vector-grafics eo classes "templates" for:
src/lib/efl/interfaces/efl_text_style.eo
src/lib/evas/canvas/efl_canvas_group.eo
src/lib/evas/canvas/efl_canvas_image_internal.eo
src/lib/evas/canvas/efl_canvas_textblock.eo