eolian-cxx: Fix Eolian C++ constructing methods with new eo_add

Also fix Eolian C++ examples using the new "eo_super".
This commit is contained in:
Vitor Sousa 2016-03-03 15:10:13 -03:00
parent d10f030d2c
commit f93800fa31
3 changed files with 6 additions and 6 deletions

View File

@ -24,14 +24,14 @@ _colourable_eo_base_constructor(Eo *obj, Colourable_Data *self)
{
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
self->r = self->g = self->b = 0;
return eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor());
return eo_constructor(eo_super(obj, MY_CLASS));
}
void
_colourable_eo_base_destructor(Eo *obj, Colourable_Data *self EINA_UNUSED)
{
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
eo_do_super(obj, MY_CLASS, eo_destructor());
eo_destructor(eo_super(obj, MY_CLASS));
}
void
@ -42,7 +42,7 @@ _colourable_rgb_24bits_constructor(Eo *obj, Colourable_Data *self, int rgb)
self->r = (rgb & 0x00ff0000) >> 16;
self->g = (rgb & 0x0000ff00) >> 8;
self->b = rgb & 0x000000ff;
eo_do_super(obj, MY_CLASS, eo_constructor());
eo_constructor(eo_super(obj, MY_CLASS));
}
void

View File

@ -25,7 +25,7 @@ _colourablesquare_size_constructor(Eo *obj, ColourableSquare_Data *self, int siz
{
self->size = size;
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << " [ size = " << size << " ]" << std::endl;
eo_do_super(obj, MY_CLASS, eo_constructor());
eo_constructor(eo_super(obj, MY_CLASS));
}
int

View File

@ -23,7 +23,7 @@ struct ColourableCircle
int colour_get()
{
int rgb = 0;
eo_do_super(_eo_ptr(), _eo_class(), rgb = ::colourable_colour_get());
rgb = ::colourable_colour_get(eo_super(_eo_ptr(), _eo_class()));
std::cout << "ColourableCircle::colour_get(" << this << ") ==> "
<< std::hex << rgb << std::endl;
return rgb;
@ -52,7 +52,7 @@ struct ColourableBar
int colour_get()
{
int rgb = 0;
eo_do_super(_eo_ptr(), _eo_class(), rgb = ::colourable_colour_get());
rgb = ::colourable_colour_get(eo_super(_eo_ptr(), _eo_class()));
std::cout << "ColourableBar::colour_get(" << this << ") ==> "
<< std::hex << rgb << std::endl;
return rgb;