[goocanvasmm] Correct the use of Glib::ListHandler.
- From: murrayc src gnome org
- To: commits-list gnome org
- Cc:
- Subject: [goocanvasmm] Correct the use of Glib::ListHandler.
- Date: Wed, 2 Feb 2011 12:24:32 +0000 (UTC)
commit b03d58a0ad5af089bd7c36efbcf0f1f5d3e1ffa7
Author: Murray Cumming <murrayc murrayc com>
Date: Wed Feb 2 13:15:19 2011 +0100
Correct the use of Glib::ListHandler.
* goocanvas/src/item.ccg: Fix a compilation error and do not try to
remember the temporary value from data().
ChangeLog | 7 +++++++
goocanvas/src/item.ccg | 16 ++++++++--------
2 files changed, 15 insertions(+), 8 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 9d3623e..a125b3a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-02-02 Murray Cumming <murrayc murrayc com>
+
+ Correct the use of Glib::ListHandler.
+
+ * goocanvas/src/item.ccg: Fix a compilation error and do not try to
+ remember the temporary value from data().
+
2011-01-28 Murray Cumming <murrayc murrayc com>
Replace use of *ListHandle with std::vector<>, as in gtkmm.
diff --git a/goocanvas/src/item.ccg b/goocanvas/src/item.ccg
index a1fd028..ec06767 100644
--- a/goocanvas/src/item.ccg
+++ b/goocanvas/src/item.ccg
@@ -32,12 +32,12 @@ Bounds Item::get_bounds() const
void Item::raise()
{
- goo_canvas_item_raise(gobj(), NULL);
+ goo_canvas_item_raise(gobj(), 0);
}
void Item::lower()
{
- goo_canvas_item_lower(gobj(), NULL);
+ goo_canvas_item_lower(gobj(), 0);
}
void Item::add_child(const Glib::RefPtr<Item>& child)
@@ -133,7 +133,7 @@ GList* Item_Class::get_items_at_vfunc_callback(GooCanvasItem* self, gdouble x, g
std::vector<Glib::RefPtr<Item> > retval(obj->get_items_at_vfunc(x, y, Cairo::RefPtr<Cairo::Context>(new Cairo::Context(cr, false /* has_reference */)), is_pointer_event == TRUE, parent_is_visible == TRUE, vec_found_items));
// retval will free the list on destruction, and we can't change the
// ownership here, so we have to copy the list.
- return g_list_copy(retval.data());
+ return g_list_copy( Glib::ListHandler<Glib::RefPtr<Item> >::vector_to_list(retval).data() );
#ifdef GLIBMM_EXCEPTIONS_ENABLED
}
catch(...)
@@ -174,10 +174,10 @@ std::vector<Glib::RefPtr<Item> > Item::get_items_at_vfunc(double x, double y, co
// ownership.
if(base && base->get_items_at)
{
- GList* glist_found_items = Glib::ListHandler<Glib::RefPtr<Item> >::vector_to_list(found_items).data();
- GList* cresult = (*base->get_items_at)(const_cast<GooCanvasItem*>(gobj()), x, y, context->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(is_parent_visible), glist_found_items);
- g_list_free(glist_found_items); //TODO: Is this right?
+ GList* cresult = (*base->get_items_at)(const_cast<GooCanvasItem*>(gobj()), x, y, context->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(is_parent_visible),
+ Glib::ListHandler<Glib::RefPtr<Item> >::vector_to_list(found_items).data());
+
return Glib::ListHandler<Glib::RefPtr<Item> >::list_to_vector(cresult, Glib::OWNERSHIP_SHALLOW);
}
@@ -186,12 +186,12 @@ std::vector<Glib::RefPtr<Item> > Item::get_items_at_vfunc(double x, double y, co
std::vector< Glib::RefPtr<Item> > Item::get_items_at(double x, double y, const Cairo::RefPtr<Cairo::Context>& context, bool is_pointer_event, bool parent_is_visible)
{
- return Glib::ListHandler<Glib::RefPtr<Item> >::list_to_vector(goo_canvas_item_get_items_at(gobj(), x, y, (context)->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(parent_is_visible), NULL), Glib::OWNERSHIP_SHALLOW);
+ return Glib::ListHandler<Glib::RefPtr<Item> >::list_to_vector(goo_canvas_item_get_items_at(gobj(), x, y, (context)->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(parent_is_visible), 0), Glib::OWNERSHIP_SHALLOW);
}
std::vector< Glib::RefPtr<const Item> > Item::get_items_at(double x, double y, const Cairo::RefPtr<Cairo::Context>& context, bool is_pointer_event, bool parent_is_visible) const
{
- return Glib::ListHandler<Glib::RefPtr<const Item> >::list_to_vector(goo_canvas_item_get_items_at(const_cast<GooCanvasItem*>(gobj()), x, y, (context)->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(parent_is_visible), NULL), Glib::OWNERSHIP_SHALLOW);
+ return Glib::ListHandler<Glib::RefPtr<const Item> >::list_to_vector(goo_canvas_item_get_items_at(const_cast<GooCanvasItem*>(gobj()), x, y, (context)->cobj(), static_cast<int>(is_pointer_event), static_cast<int>(parent_is_visible), 0), Glib::OWNERSHIP_SHALLOW);
}
} //namespace Goocanvas
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]