Commit Graph

2366 Commits

Author SHA1 Message Date
Amitesh Singh e2cb16c78b Efl.Gfx.Color: add color_code{}
color_code allows user to pass/get the color hex string
(e.g. efl_gfx_color_code_set(o, "#FFAA22CC"))

Also make this interface as mixin class.
2017-12-22 13:29:20 +09:00
Felipe Magno de Almeida 481853e1ed efl-mono: Fix using right description pointer in event registration 2017-12-20 19:57:17 -02:00
Lauro Moura 46b202b86c eolian-mono: Add documentation generation support
This commit adds the "documentation" generator, which gets the
documentation_def attribute of the given item and generates xml comments
to be exported by MCS.

For items requiring some customization of the generated comments (e.g.
functions and its parameters), the helpers to generate the preamble
(summary), body (paragraphs) and epilogue (currently just the @since
tag) were added.

Currently we do not support converting Eolian references into xmldoc
references.

As we explicitly generate Get/Set methods for properties, for now the
generator tries to get the get/set specific documentation first. If it
is not present, fallback to the common docs.

Later this could be changed to generate the common one as paragraphs of
the Get/Set.

Also some generated code like the wrappers for calling C# methods
from C can be private. This will cleanup the introspection results
and warnings when generating documentation.

Due to this visibility change, the binbuf tests had to be changed
to add redirect calls to the native methods instead of directly
calling the DllImport'd methods.
2017-12-20 19:57:17 -02:00
SangHyeon Lee 0f16a06710 interface : change efl_pack_grid and efl_ui_grid to efl_pack_table and efl_ui_table
Summary:
Change name of 'grid' to 'table' for matching on common ui naming
and avoiding confusion with 'gengrid' and 'grid view'.
grid will be introduced as grid image view after.

Test Plan:
checked make & make install
checked make check - there are errors but not related with these changes.
checked make examples - there are errors in cxx but not related with these changes.
checked make discheck - failed
test in elementary_test with Efl.Ui.Table and Table_static.

Reviewers: raster, cedric, jpeg, felipealmeida

Differential Revision: https://phab.enlightenment.org/D5668
2017-12-19 14:25:08 +09:00
Wonki Kim 47bf356435 scroller: Introducing Efl.Ui.Scroller
Summary:
scrollable widgets had a interface_scrollable as a mixin so that the
widgets had a 'is-a' relation with interface_scrollabe.  however, new
scroller concept don't have 'is-a' relationship, but 'has-a'
relationship.  scrollable widgets should have a scroll manager inside
them, then scroll manager handles event from user and api
implementations.  and also we cut the features such as paging because
there will be aka 'elm_pager'.

we are expecting that the new concept make us to maintain the scroller
easier.  please excuse for many unorganized code and logics. : (

[contained commit]
scrollable: add efl_ui_scroller example
scrollable: refactoring for behavior in case of multiple scroller
scrollable: remove repetitive scrollbar code.
scrollable: combine calculating bounce distance code.
scroll_manager: mouse up function refactoring
scroll_manager: mouse move function refactoring
scroll_manager: warp animator wip
scroll_manager: fix denominator value when calculating flicking behavior.
Fix to disconnect bounce animator once animation is done
gather duplicated animator drop logics
gather duplicated conditions
Rearrange prototypes and append comment
Add manipulate functions for animators
scroll_manager: change member_add function.
scroll_manger: apply mirroring logic
scroll_manager: apply scrollbar
apply API to scroller widget
scroll_manager: apply scroll event callback
Change logics for all about scroll animating
efl_ui_pan: add efl_ui_pan
scrollable:  change content_min_limit to match_content
scroll theme: apply overlapped scrollbar
+ many others!

Reviewers: akanad, woohyun, cedric, jpeg

Subscribers: jenkins, cedric, jpeg

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

Note by @jpeg:
Unfortunately this patch comes in a massive single blob, after too many
rebase operations. It has now come to a point where I think the API is
nice and it works as I'd expect.
Now I only wonder how applicable this will be for Efl.Ui.List. As we can
see Photocam (legacy and unified API) could be transformed to use this
new API.
2017-12-19 10:26:25 +09:00
Sungtaek Hong a2309c5083 efl_ui_image: apply load_size when API is called
Summary:
when  efl_image_load_size_set() is called, image only sets
internal variable and not apply to the internal image.
elm_image_prescale_set() is also affected.

Test Plan: Run elementary_test->Image Prescale

Reviewers: jpeg, eunue, woohyun

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5645
2017-12-18 20:49:46 +09:00
Sungtaek Hong 25136ddf8c efl_ui_bg: add Efl.Ui.Bg interface
Summary:
- Previous class efl_ui_bg moved to efl_ui_bg_widget.
- Scale_type moved to efl_image from efl_ui_image.
- Previous enum Efl_Ui_Image_Scale_Type moved to Efl_Image_Scale_Type.

Test Plan:
Run elementary_test
1.Image Scale Type
2.Efl.Ui.Bg
3.Efl.Ui.Win
4.Part Background

Reviewers: jpeg, woohyun, cedric

Differential Revision: https://phab.enlightenment.org/D5616
2017-12-18 20:49:45 +09:00
Daniel Kolesa 7ae1030383 eolian cxx: pass state when getting decls 2017-12-17 23:08:07 +01:00
Vitor Sousa 00fb5b228a eolian_mono: fix handling of regular ptr() types 2017-12-15 22:26:30 -02:00
Vitor Sousa acd99be98b efl_mono: tests and better support for structs, plus some other fixes
Fix several integer binding type deduction based in its size on C.

Generation for function pointers no longer use modified argument name
which is different from the parameter name.

New generation context for structs.

bool from UnmanagedType.I1 to UnmanagedType.U1 (correct use
inside structs according to mono documentation).

byte (signed char) and int8 now is correctly represented by
sbyte in C#.

Check parameter direction in some out generators in parameter.hh.

Add efl_libs.csv to gitignore.

Make eina.Value pointer constructor public.

Add missing fields to efl.kw_event.Description struct.

Remove eina.File workaround (let struct gen handle it).

Remove is_function_ptr bool from regular_type_def and
add a typedecl_type enum to it. Also add some helper
methods for easier comparison.

Left some test cases commented for when pointer parameters
are properly working.
2017-12-15 22:26:29 -02:00
Daniel Kolesa 18e18ca74c eolian: remove remaining global state (+ modify APIs accordingly) 2017-12-15 17:11:11 +01:00
Daniel Kolesa c8aa30e698 eolian: make declaration APIs use units 2017-12-15 17:11:11 +01:00
JinYong Park ccfa9ae220 Efl.Ui.Popup.Anchor: apply group calculate with size problem fix
Summary:
Size and align calculation in Efl.Ui.Popup was advanced using group calculate,
so Efl.Ui.Popup.Anchor apply it also.

Test Plan: elementary_test -to efl.ui.popup.anchor

Reviewers: Jaehyun_Cho, herb, jpeg, woohyun, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5655
2017-12-15 13:56:25 +09:00
Felipe Magno de Almeida 61af82f21d efl-mono: Add workaround for efl_ui_list
Efl_Ui_List doesn't properly define, as it should, the class Efl_Ui_List_SegArray. This workaround allows the mono  binding compilation in spite of this.
2017-12-14 18:04:14 -02:00
Jean-Philippe Andre d29f01e5ee tests: Add an example test case for shadows
This is fun.
2017-12-14 20:32:29 +09:00
Amitesh Singh 3726af8313 efl.image.load: fix eolian redefine warnings for load_error{}
load_error{} was defined in efl.file as well.
remove load_error{} from efl.image.load intf and implement
Efl.File.load_error{} instead.

Ref T6514
2017-12-14 14:16:13 +09:00
Ross Vandegrift 71e5c74eb6 efl: drop deprecated Encoding key from desktop files
Summary:
The Encoding key is no longer required, all desktop files are assumed to
be UTF-8 encoded.  See details at:
https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html

Fix various typos and misspellings

lintian, Debian's package checker, uses strings to check for common typos
in compiled binaries.  This change fixes the ones it identified in 1.20.6.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-12-13 10:27:48 -08:00
Taehyub Kim cf36e21e07 efl_ui_popup_alert_text: add expandable feature
Summary: add expandable feature for text popup

Test Plan:
1. run elementary_text -to Ui.Popup.Alert.Text
2. check the cases of the sample

Reviewers: Jaehyun_Cho, jpeg, woohyun, thiepha, Blackmole, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5547
2017-12-13 17:46:40 +09:00
Amitesh Singh 57a92a26c9 elm test: add efl.ui.panes test code in separate file. 2017-12-13 16:50:45 +09:00
Jean-Philippe Andre 7155256422 text: Fix event propagation (changed,user) 2017-12-13 15:36:10 +09:00
Jean-Philippe Andre 3136500fbe elm: Uniform change event for nstate,radio,check
I added convenience macros for check and radio, easing discoverability
in C.

This will avoid C# issues such as:

lib/elementary/elm_pan.eo.cs(14,23): warning CS0108: `elm.Pan.CHANGED'
hides inherited member `efl.Gfx.CHANGED'. Use the new keyword if hiding
was intended
lib/efl/interfaces/efl_gfx.eo.cs(24,23): (Location of the symbol related
to previous warning)

Since nstate is not a legacy widget, I can safely change the event name
and the test case.
2017-12-13 13:47:48 +09:00
Amitesh Singh b7419f4069 elm test: Add test for Efl.Ui.Slider 2017-12-12 14:00:53 +09:00
Jean-Philippe Andre 0de20aeafa elm: Rename slider part to part_indicator
This is specific to the indicator.

Fixes T6376
Fixes T5361
2017-12-12 11:14:04 +09:00
Hosang Kim 26272bf3a2 win: apply conformant features.
Summary:
- implement indicator enable/disable
- implement indicator type
- add indicator swallow area to border.edc
- add 'test win indicator' sample

Test Plan: elementary_test -> win_indicator

Reviewers: woohyun, cedric, jpeg

Subscribers: taxi2se, jypark, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5418
2017-12-12 10:53:14 +09:00
Cedric BAIL d614894d04 ecore: rename efl_loop_Eina_FutureXXX_job to efl_loop_job. 2017-12-11 14:04:09 -08:00
Cedric BAIL 15daf4b3e4 elementary: use the Eina_Future based job. 2017-12-11 14:04:09 -08:00
Marcel Hollerbach 101cc78513 focus: add names
so its easier to debug ...
2017-12-11 10:46:52 +01:00
Davide Andreoli 3a79575cdf Some more focus movement tests
Those two layouts are quite simple but in real it's difficult to solve both in the best way
2017-12-11 10:46:52 +01:00
Woochan Lee 4b2f1abc9f efl_ui_spin_button: Change property name to avoid name duplicating.
Summary:
The name 'loop' is already there in efl canvas.

loop -> circulate.

Test Plan: elementary_test -> efl_ui_spin_button test.

Reviewers: jpeg, Jaehyun_Cho, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5639
2017-12-11 16:45:27 +09:00
Taehyub Kim bb68d84e78 efl.ui.popup.alert.scroll: add more test cases for efl.ui.popup.alert.scroll popup
Summary: add more test caces for efl.ui.popup.alert.scroll popup

Test Plan:
1. run elementary_test -to efl.ui.popup.alert.scroll
2. check the test cases

Reviewers: Jaehyun_Cho, jpeg, woohyun, thiepha, cedric, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5631
2017-12-11 16:12:16 +09:00
Amitesh Singh 196b6f1ba4 interface: rename Efl.Dup to Efl.Duplicate.
dup is considered too short and maybe confusing,
hence rename it to duplicate instead.
2017-12-11 15:25:31 +09:00
Taehyub Kim 0096a8aa3c Efl.Ui.Popup: add popup_size property
Summary: add popup_size property

Test Plan:
1. run elementary_test -to efl.ui.popup
2. check the popup

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5600
2017-12-11 13:32:49 +09:00
Sungtaek Hong 1503fb5359 efl_ui_spin: apply new theme set policy
Summary: Applied new theme group name. Moved logic in finalize to constructor.

Test Plan: Run elementary_test->Efl.Ui.Spin, Efl.Ui.Spin.Button, Part_Background

Reviewers: jpeg, woohyun, CHAN

Reviewed By: CHAN

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5592
2017-12-08 16:02:24 +09:00
Jean-Philippe Andre 41e4a6125c tests: Fix Gfx Filters test case
Completely broken after a few commits (removal of legacy widgets from EO
API, theme changes, etc...).
2017-12-08 16:02:23 +09:00
Sungtaek Hong 3490da0fff elm_code_widget: change efl_add to legacy_add
Summary:
elm_code_widget is legacy add, thus efl_add is not available.

Signed-off-by: Sungtaek Hong <sth253.hong@samsung.com>

Reviewers: jpeg, cedric, ajwillia.ms, woohyun

Differential Revision: https://phab.enlightenment.org/D5548
2017-12-08 16:02:22 +09:00
Andy Williams bdcd034af5 elm_code: Update background handling to work with transparency better 2017-12-07 23:39:49 +00:00
Andy Williams 1a5d6fa93a elm_code: Adding initial support for alpha channel 2017-12-07 23:39:49 +00:00
Lauro Moura 3861f8b01d eolian_mono: Fix build after Eolian_State
Summary:
eolian_mono now properly fills Eolian Unit when calling eolian_cxx
classes and functions.

Reviewers: felipealmeida

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5614
2017-12-06 19:11:13 -03:00
Lauro Moura aab5cc03ff eolian_cxx: Fix unit initialization
Summary:
eolian_cxx was segfaulting due to a null unit being passed to
class_get_by_file.

Reviewers: felipealmeida, jpeg, q66

Differential Revision: https://phab.enlightenment.org/D5611
2017-12-06 17:42:46 +01:00
Daniel Kolesa fd868bff34 eolian cxx: free state on exit 2017-12-05 16:47:19 +01:00
Daniel Kolesa 8a1f93f698 eolian: pass state where necessary
This modifies the API so that global state removal is made
possible. It's still used internally for now but externally
the state is contained.
2017-12-05 16:41:42 +01:00
Jean-Philippe Andre 8cdb3184f8 cxx: Fix compilation after merge
This resolves a few issues and brings back the experimental features.

Also, disable some of the ugliest experiments:
 - manual function overrides,
 - define APIs only in eo_cxx namespace

Some APIs are generated behind EFL_CXXPERIMENT (eg. event_name_cb_add or
some weak pointer stuff). I believe they are useful but would like to
make sure there are no serious drawbacks with generating those.
2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 2b0805ddce cxx: Define types after forward declarations
This is useful if the types refer to the current class.
2017-12-05 15:01:45 +09:00
Jean-Philippe Andre 5901b4601e cxx: Implement support for parts
This generates methods like this:

  Part_Class part_name() const;

Which can then be used like:

  slider.indicator().format_string_set("%1.1f");
2017-12-05 10:15:40 +09:00
Jean-Philippe Andre 03af836332 cxx: Use set for forward classes
This avoids duplication. Not very important as there are FWD_GUARD
macros anyway.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 4fdc5fd0b2 cxx: Fix some pedantic warnings from clang
Shadow variables, 0 used as nullptr.
clang still complains that usage() is not declared as noreturn.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 5425baa906 cxx: Add support for function pointers
This was tested on the function pointer Efl.Ui.Format_Func_Cb
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre be267a071e cxx: No need to declare the current class twice
This avoids double _FWD_GUARD for the current class in a .eo.hh header.
2017-12-05 10:09:58 +09:00
Felipe Magno de Almeida 66eb8ddfeb eolian: Add inarray and inlist to source generation 2017-12-04 20:34:47 -02:00
Lauro Moura 80bbc4b1f9 eolian_mono: Add evas_table_mirrored_get/set to bl
Clashing with efl_ui_mirrored/get/set
2017-12-04 15:48:04 -03:00