I didn't know preview generation was so slow and done completely serialy.
There is potential improvement here. Still need to kind of merge the
documentation into something readable.
Doxygen uses its on preprocessor and this one missed the
EFL_BETA_API_SUPPORT=1 define so none our our BETA api hidden behind
it was build for our documentation.
ref T2541
The error message was:
/usr/bin/ld: preview_text_filter.o: undefined reference to symbol 'efl_gfx_filter_program_set'
//home/batden/Enlightenment20/efl/src/lib/efl/.libs/libefl.so.1: error adding symbols: DSO missing from command line
Until we're happy with it, keep the API as beta.
The EDC support should not change, and the Lua either, but the
API could potentially still change to accomodate for new needs
(vector graphics, anyone?). If we're happy with the current
interface, then we can remove the @beta flags.
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.
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.
Using eina::string_view in eolian generated interfaces (instead of
std::string) to allow lightweight passing of both C strings and C++
std::string.
Also, No longer using eina::optional in generated headers for types
that already implements the concept of null state (like Eo wrappers
and eina_accessor).
Also fix allocating callback objects require by class methods
(i.e. static) in static vectors so the memory will be freed when the
programs exit.
Added a new test case for testing callbacks on class methods.
Moved method definitions and supplementary code from generated C++
wrappers to auxiliary header file (.eo.impl.hh) generated together
with the main ".eo.hh" file. Updated Makefiles to list such files in
the compilation and cleanup processes. Updated .gitignore to include
these new generated files.
Made general adjustments on the documentation of generated C++ wrappers
Added "PREDEFINED" preprocessor macro definition in the Doxyfile.in in
order to make some adjustments for better documentation in the C++
generated headers. Excluding generation of documentation for classes
in the "eo_cxx" namespace (the namespace for "abstract" eolian C++
wrappers). Now generating the documentation for the events too.
Hiding some auxiliary code from being documented. Some aesthetic
adjustments for generated white space. Generate documentation for the
main constructor of C++ wrappers and added auxiliary grammars to list
parameters names.
While we used different variation of mkdir -p all over we also had spots
where we did not use the option. This is one step in trying to make our
build system ready for parallel install. Using something like -j 10 even
for the install should help to speed up our jenkins jobs as well as distcheck.
Summary:
While going through eina for understanding, wrote a program to understand
he differences between different eina inarray functions. Thought, this might
be useful for others too, so adding the same.
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1803
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Add top padding to prevent overlapping between "Value:" and below
strings when long macro is used.
Reviewers: raster, cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1582
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Now @since have a left colored border, like @deprecaded, @note, etc
Also keep the number on the same line:
instead of:
since
1.10
it now render as:
since 1.10
Summary: The Eo tutorial had a tough readability. It is better now: stars are not messing around with the code, plus code does not collide anymore with a bullet in a bullet list.
Reviewers: cedric, JackDanielZ, tasn
Reviewed By: tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1230
This allows people to disable the building of anything GUI related.
In my case, it is used for servers.
I encourage anyone that think they can do a better patch to improve it,
as i dislike having to add all those AM_CONDITIONAL().
Maybe the macros should be improved.
Summary:
Added documentation to almost all classes that are intended for direct use by the library users.
Marked classes/functions used by the library itself as @internal.
Modified the Doxyfile.in to enable the generation of documentation to the bindings.
Reviewers: felipealmeida, cedric, woohyun, smohanty, raster
CC: savio, cedric
Differential Revision: https://phab.enlightenment.org/D947
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
The setting SYMBOL_CACHE_SIZE has been deprecated and will
generate a warning when Doxygen runs. This change comments out that
configuration setting to prevent the warning.
Test Plan: make doc 2> doxyerr.log
CC: cedric
Differential Revision: https://phab.enlightenment.org/D599
Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
Set the proper transparent & alpha flags on the Ecore_Evas,
add a tranparent rectangle and boom, the images are all nice and
transparent. This will fix the bg color in the page evasfiltersref.
Nightly build failed with (make doc):
cd: ../../../src/lib/eo/.libs: No such file or directory
Looks like there's one too many ../
I guess the build dir is not the source dir on the build bots.
The filter code is a copy and paste from the doc.
Maybe the code should be in an include file, so we're sure the
preview and the documentation code are the same?
Yes, I know. Someone hates large fonts.
But the ones currently used are so SMALL!
Also, this will just revert back to what's defined in e.css,
because body and list font size aren't even consistent.
Also, display the page titles like titles: big fat blue letters.
If a param description is long and spans on multiple lines,
then the param name should be aligned to the first description
line. Otherwise the layout becomes confusing.
Align [in] and [out] vertically like params.
sort changes output based on locale. even between C and en_US etc.
letalone all the other interesting ones. this causes the sorted order
to keep changing of the images. this forces locale to C to make it
always the same order.
Escaping the backslash we want to use for a line break is a really bad idea.
Introduced in f126afbba2 to support a crippled
echo without new line option.
The linebreak was not detected and thus the first image name used as a target.
Broke our nightly efl build with make distcheck and made me really unhappy to
while searching for the cause.
Summary:
* efl.m4: add support for xterm-256color and fix display for the bsd echo. Fix autotools issue (present on Ubuntu also, but better handled).
* doc/Makefile.am: bsd echo may not handle -n option in sh
Reviewers: cedric
CC: cedric, seoz
Differential Revision: https://phab.enlightenment.org/D329
We want to introduce a new mechanism concerning the data of the Eo
objects.
The goal is to improve the memory management by defragmenting the memory
banks used by the Eo objects. The first phase has been done by raster
and consists in allocating the objects into a separate memory region
that the one used by malloc. So now, we know where our objects are
located.
Now, moving objects means moving data of objects. The issue we have here
is that a lot of data pointers are stored into data of other objects,
e.g Evas Object data into lists for rendering...
We need a way to reference the data and eo_data_get doesn't provide us
that. So we need to improve the API for data extraction by requesting
from the developer if the data will be stored or not. Five functions are
supplied:
- eo_data_scope_get: no referencing, the data pointer is no more used after
exiting the function.
- eo_data_ref: reference the data of the object. It means that while the
data is referenced, the object cannot be moved.
- eo_data_xref: reference the data of the object but for debug purpose,
we associate the objects that references. Same behavior as eo_data_ref
for non-debug.
- eo_data_unref: unreference the data of an object.
- eo_data_xunref: unreference the data of an object previously
referenced by another object.
I deprecated the eo_data_get function. Most of the time,
eo_data_scope_get needs to be used.
In the next patches, I changed the eo_data_get to the corresponding
functions, according to the usage of the data pointer.
The next step is to find all the places in the code where the data is
stored but not yet referenced. This will be done by:
- requesting from every object to unreference all data to other objects.
- moving all the objects from one region to another
- requesting from every object to rerefenrence the data.
- debugging by hunting the segmentation faults and other weird
creatures.
This is now longer needed now that we switched to git. And it should
also silent all the file modified problems.
The next time this file is listed as modified you should either have
done it yourself or added an image in the efl docs img folder.
This breaks out of tree builds (buildbot) as well as setups without .svn
dirs (git-svn). The newly generated list should include all files but
drops all the entries from .svn.
SVN revision: 83302