_WRAP_METHOD error



Hey,

Can anyone else make heads or tails of this?

Wrapping this function:

GooCanvasView
* goo_canvas_item_view_get_canvas_view (GooCanvasItemView *view);
Using this macro:

_WRAP_METHOD( Glib::RefPtr<View> get_canvas_view(),goo_canvas_item_view_get_canvas_view)

Produces this code:

Glib::RefPtr<View> ItemView::get_canvas_view()
{
  return Glib::wrap(goo_canvas_item_view_get_canvas_view(gobj()));
}

and cause this error at compile time:

itemview.cc : In member function 'Glib::RefPtr<GooCanvas::View> GooCanvas::ItemView::get_canvas_view()':
itemview.cc:127: error: conversion from 'GooCanvas::View*' to non-scalar type 'Glib::RefPtr<GooCanvas::View>' requested

This method seems like it should make everything ok:

namespace Glib
{

GooCanvas::View* wrap(GooCanvasView* object, bool take_copy)
{
  return dynamic_cast<GooCanvas::View *> (Glib::wrap_auto ((GObject*)(object), take_copy));
}

} /* namespace Glib */

Any thoughts would be helpful
Paul


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]