forked from enlightenment/efl
eolian_mono: fix to support event info which is a type defined in eo
Summary: Previously, if event info was not structure and it was a type defined in eo, then the type value was not passed to the event info correctly. e.g. if event info was Efl.Ui.AlertPopupButton enum type, then default(Efl.Ui.AlertPopupButton) was always passed to event info. Now, the given type value is passed to the event info correctly. Reviewers: felipealmeida, lauromoura, vitor.sousa, bu5hm4n Reviewed By: vitor.sousa Subscribers: cedric, #reviewers, herb, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D9159
This commit is contained in:
parent
e4a5374d3e
commit
03936c0513
|
@ -102,7 +102,13 @@ struct unpack_event_args_visitor
|
|||
if (eina::optional<bool> b = call_match(match_table, filter_func, accept_func))
|
||||
return *b;
|
||||
else
|
||||
return as_generator("default(" + arg_type + ")").generate(sink, attributes::unused, *context);
|
||||
{
|
||||
// Type defined in Eo is passed here. (e.g. enum type defined in Eo)
|
||||
// Uses conversion from IntPtr with type casting to the given type.
|
||||
return as_generator(
|
||||
" (" << arg_type << ")evt.Info"
|
||||
).generate(sink, attributes::unused, *context);
|
||||
}
|
||||
}
|
||||
bool operator()(grammar::attributes::klass_name const& cls) const
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue