# Goocanvas::Item Class Reference

Inheritance diagram for Goocanvas::Item:
[legend]

List of all members.

## Public Member Functions

virtual | ~Item ()
GooCanvasItem* | gobj ()
| Provides access to the underlying C GObject.
const GooCanvasItem* | gobj () const
| Provides access to the underlying C GObject.
Canvas* | get_canvas ()
| Returns: the Goo::Canvas.
const Canvas* | get_canvas () const
| Returns: the Goo::Canvas.
void | set_canvas (Canvas* canvas)
| This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.
bool | is_visible () const
| Checks if the item is visible.
Glib::RefPtr< ItemModel > | get_model ()
| Gets the model of the given canvas item.
Glib::RefPtr< const ItemModel > | get_model () const
| Gets the model of the given canvas item.
void | set_model (const Glib::RefPtr< ItemModel >& model)
| Sets the model of the given canvas item.
Glib::RefPtr< Item > | get_parent ()
| Gets the parent of the given item.
Glib::RefPtr< const Item > | get_parent () const
| Gets the parent of the given item.
void | set_parent (const Glib::RefPtr< Item >& parent)
| This function is only intended to be used when implementing new canvas items (specifically container items such as Goo::CanvasGroup).
void | remove ()
| Removes an item from its parent.
bool | is_container () const
| Tests to see if the given item is a container.
int | get_n_children () const
| Gets the number of children of the container.
Glib::RefPtr< Item > | get_child (int child_num)
| Gets the child item at the given stack position.
Glib::RefPtr< const Item > | get_child (int child_num) const
| Gets the child item at the given stack position.
int | find_child (const Glib::RefPtr< Item >& child)
| Attempts to find the given child item with the container's stack.
void | add_child (const Glib::RefPtr< Item >& child, int pos)
| Adds a child item to a container item at the given stack position.
void | add_child (const Glib::RefPtr< Item >& child)
void | get_child_property_value (const Glib::RefPtr< Item >& child, const Glib::ustring& property_name, Glib::ValueBase&value) const
| Gets a child property of child.
void | set_child_property_value (const Glib::RefPtr< Item >& child, const Glib::ustring& property_name, const Glib::ValueBase&value)
| Sets a child property of child.
template<class PropertyType >
void | get_child_property (const Glib::RefPtr< Item >& child, const Glib::ustring& the_property_name, PropertyType&value) const
template<class PropertyType >
void | set_child_property (const Glib::RefPtr< Item >& child, const Glib::ustring& the_property_name, const PropertyType&value)
void | move_child (int old_position, int new_position)
| Moves a child item to a new stack position within the container.
void | remove_child (int child_num)
| Removes the child item at the given position.
void | raise (const Glib::RefPtr< Item >& above)
| Raises an item in the stacking order.
void | raise ()
| Raise the item to the top of the stack.
void | lower (const Glib::RefPtr< Item >& below)
| Lowers an item in the stacking order.
void | lower ()
| Lower the item to the bottom of the stack.
Bounds | get_bounds () const
void | request_update ()
| This function is only intended to be used when implementing new canvas items.
void | ensure_updated ()
| This function is only intended to be used when implementing new canvas items.
void | update (bool entire_tree, const Cairo::RefPtr< Cairo::Context >& context, Bounds& bounds)
| This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.
void | paint (const Cairo::RefPtr< Cairo::Context >& context, const Bounds& bounds, double scale)
| This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.
bool | get_requested_area (const Cairo::RefPtr< Cairo::Context >& context, Bounds& bounds) const
| This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.
double | get_requested_height (const Cairo::RefPtr< Cairo::Context >& context, double width) const
| This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.
void | allocate_area (const Cairo::RefPtr< Cairo::Context >& context, const Bounds& requested_area, const Bounds& allocated_area, double x_offset, double y_offset)
| This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.
std::vector< Glib::RefPtr< Item > > | get_items_at (double x, double y, const Cairo::RefPtr< Cairo::Context >& context, bool is_pointer_event, bool parent_is_visible, const std::vector< Glib::RefPtr< Item > >& found_items)
| This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.
std::vector< Glib::RefPtr < const Item > > | get_items_at (double x, double y, const Cairo::RefPtr< Cairo::Context >& context, bool is_pointer_event, bool parent_is_visible, const std::vector< Glib::RefPtr< const Item > >& found_items) const
| This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.
std::vector< Glib::RefPtr< Item > > | get_items_at (double x, double y, const Cairo::RefPtr< Cairo::Context >& context, bool is_pointer_event, bool parent_is_visible)
std::vector< Glib::RefPtr < const Item > > | get_items_at (double x, double y, const Cairo::RefPtr< Cairo::Context >& context, bool is_pointer_event, bool parent_is_visible) const
bool | get_transform (Cairo::Matrix* matrix)
| Gets the transformation matrix of an item.
void | set_transform (const Cairo::Matrix* matrix)
| Sets the transformation matrix of an item.
void | set_simple_transform (double x, double y, double scale, double rotation)
| A convenience function to set the item's transformation matrix.
bool | get_simple_transform (double& x, double& y, double& scale, double& rotation) const
| This function can be used to get the position, scale and rotation of an item, providing that the item has a simple transformation matrix (e.g. set with set_simple_transform(), or using a combination of simple translate, scale and rotate operations).
void | translate (double tx, double ty)
| Translates the origin of the item's coordinate system by the given amounts.
void | scale (double sx, double sy)
| Scales the item's coordinate system by the given amounts.
void | rotate (double degrees, double cx, double cy)
| Rotates the item's coordinate system by the given amount, about the given origin.
void | skew_x (double degrees, double cx, double cy)
| Skews the item's coordinate system along the x axis by the given amount, about the given origin.
void | skew_y (double degrees, double cx, double cy)
| Skews the item's coordinate system along the y axis by the given amount, about the given origin.
bool | get_transform_for_child (const Glib::RefPtr< Item >& child, Cairo::Matrix*transform)
| Gets the transformation matrix of an item combined with any special transform needed for the given child.
Glib::RefPtr< Style > | get_style ()
| Gets the item's style.
Glib::RefPtr< const Style > | get_style () const
| Gets the item's style.
void | set_style (const Glib::RefPtr< Style >& style)
| Sets the item's style, by copying the properties from the given style.
void | animate (double x, double y, double scale, double degrees, bool absolute, int duration, int step_time, GooCanvasAnimateType type)
| Animates an item from its current position to the given offsets, scale and rotation.
void | stop_animation ()
| Stops any current animation for the given item, leaving it at its current position.
bool | get_is_static () const
void | set_is_static (bool is_static=true)
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventCrossing* > | signal_enter_notify_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventCrossing* > | signal_leave_notify_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventMotion* > | signal_motion_notify_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventButton* > | signal_button_press_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventButton* > | signal_button_release_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventFocus* > | signal_focus_in_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventFocus* > | signal_focus_out_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventKey* > | signal_key_press_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventKey* > | signal_key_release_event ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventGrabBroken* > | signal_grab_broken_event ()
Glib::SignalProxy1< void, GParamSpec* > | signal_child_notify ()
Glib::SignalProxy1< void, bool > | signal_animation_finished ()
Glib::SignalProxy2< bool, const Glib::RefPtr< Item > &, GdkEventScroll* > | signal_scroll_event ()
Glib::PropertyProxy < Glib::RefPtr< Item > > | property_parent ()
| The parent item.
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< Item > > | property_parent () const
| The parent item.
Glib::PropertyProxy < ItemVisibility > | property_visibility ()
| When the canvas item is visible.
Glib::PropertyProxy_ReadOnly < ItemVisibility > | property_visibility () const
| When the canvas item is visible.
Glib::PropertyProxy< double > | property_visibility_threshold ()
| The scale threshold at which the item becomes visible.
Glib::PropertyProxy_ReadOnly < double > | property_visibility_threshold () const
| The scale threshold at which the item becomes visible.
Glib::PropertyProxy < Cairo::Matrix* > | property_transform ()
| The transformation matrix of the item.
Glib::PropertyProxy_ReadOnly < Cairo::Matrix* > | property_transform () const
| The transformation matrix of the item.
Glib::PropertyProxy < PointerEvents > | property_pointer_events ()
| Specifies when the item receives pointer events.
Glib::PropertyProxy_ReadOnly < PointerEvents > | property_pointer_events () const
| Specifies when the item receives pointer events.
Glib::PropertyProxy < Glib::ustring > | property_title ()
| A short context-rich description of the item for use by assistive technologies.
Glib::PropertyProxy_ReadOnly < Glib::ustring > | property_title () const
| A short context-rich description of the item for use by assistive technologies.
Glib::PropertyProxy < Glib::ustring > | property_description ()
| A description of the item for use by assistive technologies.
Glib::PropertyProxy_ReadOnly < Glib::ustring > | property_description () const
| A description of the item for use by assistive technologies.
Glib::PropertyProxy< bool > | property_can_focus ()
| If the item can take the keyboard focus.
Glib::PropertyProxy_ReadOnly < bool > | property_can_focus () const
| If the item can take the keyboard focus.
Glib::PropertyProxy< double > | property_x ()
| The x coordinate of the left side of the item.
Glib::PropertyProxy_ReadOnly < double > | property_x () const
| The x coordinate of the left side of the item.
Glib::PropertyProxy< double > | property_y ()
| The y coordinate of the top of the item.
Glib::PropertyProxy_ReadOnly < double > | property_y () const
| The y coordinate of the top of the item.
Glib::PropertyProxy< double > | property_width ()
| The width of the item.
Glib::PropertyProxy_ReadOnly < double > | property_width () const
| The width of the item.
Glib::PropertyProxy< double > | property_height ()
| The height of the item.
Glib::PropertyProxy_ReadOnly < double > | property_height () const
| The height of the item.

## Static Public Member Functions

static void | add_interface (GType gtype_implementer)

## Protected Member Functions

virtual int | get_n_children_vfunc () const
virtual Glib::RefPtr< Item > | get_child_vfunc (int child_num) const
virtual void | request_update_vfunc ()
virtual Canvas* | get_canvas_vfunc () const
virtual void | set_canvas_vfunc (Canvas* canvas)
virtual void | add_child_vfunc (const Glib::RefPtr< Item >& child, int position)
virtual void | move_child_vfunc (int old_position, int new_position)
virtual void | remove_child_vfunc (int child_num)
virtual void | get_child_property_vfunc (const Glib::RefPtr< Item >& child, guint property_id, Glib::ValueBase&value, GParamSpec* pspec) const
virtual void | set_child_property_vfunc (const Glib::RefPtr< Item >& child, guint property_id, const Glib::ValueBase&value, GParamSpec* pspec)
virtual bool | get_transform_for_child_vfunc (const Glib::RefPtr< Item >& child, Cairo::Matrix*transform) const
virtual Glib::RefPtr< Item > | get_parent_vfunc () const
virtual void | set_parent_vfunc (const Glib::RefPtr< Item >& parent)
virtual void | get_bounds_vfunc (Bounds& bounds) const
virtual std::vector < Glib::RefPtr< Item > > | get_items_at_vfunc (double x, double y, const Cairo::RefPtr< Cairo::Context >& context, bool is_pointer_event, bool is_parent_visible, const std::vector< Glib::RefPtr< Item > >& found_items)
virtual void | update_vfunc (bool entire_tree, const Cairo::RefPtr< Cairo::Context >& cr, Bounds& bounds)
virtual void | paint_vfunc (const Cairo::RefPtr< Cairo::Context >& cr, const Bounds& bounds, double scale)
virtual bool | get_requested_area_vfunc (const Cairo::RefPtr< Cairo::Context >& cr, GooCanvasBounds* requested_area) const
virtual void | allocate_area_vfunc (const Cairo::RefPtr< Cairo::Context >& cr, const Bounds& requested_area, const Bounds& allocated_area, double x_offset, double y_offset)
virtual bool | get_transform_vfunc (Cairo::Matrix*transform) const
virtual void | set_transform_vfunc (const Cairo::Matrix*transform)
virtual Glib::RefPtr< Style > | get_style_vfunc () const
virtual void | set_style_vfunc (const Glib::RefPtr< Style >& style)
virtual bool | is_visible_vfunc () const
virtual double | get_requested_height_vfunc (const Cairo::RefPtr< Cairo::Context >& cr, double width)
virtual bool | get_is_static_vfunc () const
virtual void | set_is_static_vfunc (bool is_static)
virtual Glib::RefPtr< ItemModel > | get_model_vfunc () const
virtual void | set_model_vfunc (const Glib::RefPtr< ItemModel >& model)
virtual bool | on_enter_notify_event (const Glib::RefPtr< Item >& target, GdkEventCrossing* event)
virtual bool | on_leave_notify_event (const Glib::RefPtr< Item >& target, GdkEventCrossing* event)
virtual bool | on_motion_notify_event (const Glib::RefPtr< Item >& target, GdkEventMotion* event)
virtual bool | on_button_press_event (const Glib::RefPtr< Item >& target, GdkEventButton* event)
virtual bool | on_button_release_event (const Glib::RefPtr< Item >& target, GdkEventButton* event)
virtual bool | on_focus_in_event (const Glib::RefPtr< Item >& target, GdkEventFocus* event)
virtual bool | on_focus_out_event (const Glib::RefPtr< Item >& target, GdkEventFocus* event)
virtual bool | on_key_press_event (const Glib::RefPtr< Item >& target, GdkEventKey* event)
virtual bool | on_key_release_event (const Glib::RefPtr< Item >& target, GdkEventKey* event)
virtual bool | on_grab_broken_event (const Glib::RefPtr< Item >& target, GdkEventGrabBroken* event)
virtual void | on_child_notify (GParamSpec* pspec)
virtual void | on_animation_finished (bool stopped)
virtual bool | on_scroll_event (const Glib::RefPtr< Item >& target, GdkEventScroll* event)

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Goocanvas::Item > | wrap (GooCanvasItem* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Constructor & Destructor Documentation

virtual Goocanvas::Item::~Item | ( |  | ) | `[virtual]`

## Member Function Documentation

void Goocanvas::Item::add_child | ( | const Glib::RefPtr< Item >& | child,
|  | int | pos
| ) |  |

Adds a child item to a container item at the given stack position.

Parameters:

  child | The item to add.
  position | The position of the item, or -1 to place it last (at the top of the stacking order).

void Goocanvas::Item::add_child | ( | const Glib::RefPtr< Item >& | child | ) |

virtual void Goocanvas::Item::add_child_vfunc | ( | const Glib::RefPtr< Item >& | child,
|  | int | position
| ) |  | `[protected, virtual]`

static void Goocanvas::Item::add_interface | ( | GType | gtype_implementer | ) | `[static]`

void Goocanvas::Item::allocate_area | ( | const Cairo::RefPtr< Cairo::Context > & | context,
|  | const Bounds& | requested_area,
|  | const Bounds& | allocated_area,
|  | double | x_offset,
|  | double | y_offset
| ) |  |

This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.

It allocates an area to a child Goo::CanvasItem.

Note that the parent layout item will use a transform to move each of its children for the layout, so there is no need for the child item to reposition itself. It only needs to recalculate its device bounds.

To help recalculate the item's device bounds, the x_offset and y_offset of the child item's allocated position from its requested position are provided. Simple items can just add these to their bounds.

Parameters:

  cr | A cairo context.
  requested_area | The area that the item originally requested, in the parent's coordinate space.
  allocated_area | The area that the item has been allocated, in the parent's coordinate space.
  x_offset | The x offset of the allocated area from the requested area in the device coordinate space.
  y_offset | The y offset of the allocated area from the requested area in the device coordinate space.

virtual void Goocanvas::Item::allocate_area_vfunc | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | const Bounds& | requested_area,
|  | const Bounds& | allocated_area,
|  | double | x_offset,
|  | double | y_offset
| ) |  | `[protected, virtual]`

void Goocanvas::Item::animate | ( | double | x,
|  | double | y,
|  | double | scale,
|  | double | degrees,
|  | bool | absolute,
|  | int | duration,
|  | int | step_time,
|  | GooCanvasAnimateType | type
| ) |  |

Animates an item from its current position to the given offsets, scale and rotation.

Parameters:

  x | The final x coordinate.
  y | The final y coordinate.
  scale | The final scale.
  degrees | The final rotation. This can be negative to rotate anticlockwise, and can also be greater than 360 to rotate a number of times.
  absolute | If the x, y, scale and degrees values are absolute, or relative to the current transform. Note that absolute animations only work if the item currently has a simple transform. If the item has a shear or some other complicated transform it may result in strange animations.
  duration | The duration of the animation, in milliseconds (1/1000ths of a second).
  step_time | The time between each animation step, in milliseconds.
  type | Specifies what happens when the animation finishes.

void Goocanvas::Item::ensure_updated | ( |  | ) |

This function is only intended to be used when implementing new canvas items.

It updates the canvas immediately, if an update is scheduled. This ensures that all item bounds are up-to-date.

int Goocanvas::Item::find_child | ( | const Glib::RefPtr< Item >& | child | ) |

Attempts to find the given child item with the container's stack.

Parameters:

  child | The child item to find.

Returns:
  The position of the given child item, or -1 if it isn't found.

Bounds Goocanvas::Item::get_bounds | ( |  | ) | const

Reimplemented in Goocanvas::ItemSimple.

virtual void Goocanvas::Item::get_bounds_vfunc | ( | Bounds& | bounds | ) | const`[protected, virtual]`

Canvas* Goocanvas::Item::get_canvas | ( |  | ) |

Returns: the Goo::Canvas.

Returns:
  The Goo::Canvas.

const Canvas* Goocanvas::Item::get_canvas | ( |  | ) | const

Returns: the Goo::Canvas.

Returns:
  The Goo::Canvas.

virtual Canvas* Goocanvas::Item::get_canvas_vfunc | ( |  | ) | const`[protected, virtual]`

Glib::RefPtr<Item> Goocanvas::Item::get_child | ( | int | child_num | ) |

Gets the child item at the given stack position.

Parameters:

  child_num | The position of a child in the container's stack.

Returns:
  The child item at the given stack position, or `0` if child_num is out of range.

Glib::RefPtr<const Item> Goocanvas::Item::get_child | ( | int | child_num | ) | const

Gets the child item at the given stack position.

Parameters:

  child_num | The position of a child in the container's stack.

Returns:
  The child item at the given stack position, or `0` if child_num is out of range.

template <class PropertyType >

void Goocanvas::Item::get_child_property | ( | const Glib::RefPtr< Item >& | child,
|  | const Glib::ustring & | the_property_name,
|  | PropertyType & | value
| ) |  | const

void Goocanvas::Item::get_child_property_value | ( | const Glib::RefPtr< Item >& | child,
|  | const Glib::ustring & | property_name,
|  | Glib::ValueBase & | value
| ) |  | const

Gets a child property of child.

Parameters:

  child | A child Goo::CanvasItem.
  property_name | The name of the child property to get.
  value | A location to return the value.

virtual void Goocanvas::Item::get_child_property_vfunc | ( | const Glib::RefPtr< Item >& | child,
|  | guint | property_id,
|  | Glib::ValueBase & | value,
|  | GParamSpec * | pspec
| ) |  | const`[protected, virtual]`

virtual Glib::RefPtr<Item> Goocanvas::Item::get_child_vfunc | ( | int | child_num | ) | const`[protected, virtual]`

bool Goocanvas::Item::get_is_static | ( |  | ) | const

virtual bool Goocanvas::Item::get_is_static_vfunc | ( |  | ) | const`[protected, virtual]`

std::vector< Glib::RefPtr<Item> > Goocanvas::Item::get_items_at | ( | double | x,
|  | double | y,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | bool | is_pointer_event,
|  | bool | parent_is_visible,
|  | const std::vector< Glib::RefPtr< Item > >& | found_items
| ) |  |

This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.

It gets the items at the given point.

Parameters:

  x | The x coordinate of the point.
  y | The y coordinate of the point.
  cr | A cairo contect.
  is_pointer_event | `true` if the "pointer-events" properties of items should be used to determine which parts of the item are tested.
  parent_is_visible | `true` if the parent item is visible (which implies that all ancestors are also visible).
  found_items | The list of items found so far.

Returns:
  The found_items list, with any more found items added onto the start of the list, leaving the top item first.

std::vector< Glib::RefPtr<const Item> > Goocanvas::Item::get_items_at | ( | double | x,
|  | double | y,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | bool | is_pointer_event,
|  | bool | parent_is_visible,
|  | const std::vector< Glib::RefPtr< const Item > >& | found_items
| ) |  | const

This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.

It gets the items at the given point.

Parameters:

  x | The x coordinate of the point.
  y | The y coordinate of the point.
  cr | A cairo contect.
  is_pointer_event | `true` if the "pointer-events" properties of items should be used to determine which parts of the item are tested.
  parent_is_visible | `true` if the parent item is visible (which implies that all ancestors are also visible).
  found_items | The list of items found so far.

Returns:
  The found_items list, with any more found items added onto the start of the list, leaving the top item first.

std::vector< Glib::RefPtr<Item> > Goocanvas::Item::get_items_at | ( | double | x,
|  | double | y,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | bool | is_pointer_event,
|  | bool | parent_is_visible
| ) |  |

std::vector< Glib::RefPtr<const Item> > Goocanvas::Item::get_items_at | ( | double | x,
|  | double | y,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | bool | is_pointer_event,
|  | bool | parent_is_visible
| ) |  | const

virtual std::vector<Glib::RefPtr<Item> > Goocanvas::Item::get_items_at_vfunc | ( | double | x,
|  | double | y,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | bool | is_pointer_event,
|  | bool | is_parent_visible,
|  | const std::vector< Glib::RefPtr< Item > >& | found_items
| ) |  | `[protected, virtual]`

Glib::RefPtr<ItemModel> Goocanvas::Item::get_model | ( |  | ) |

Gets the model of the given canvas item.

Returns:
  The item's model, or `0` if it has no model.

Glib::RefPtr<const ItemModel> Goocanvas::Item::get_model | ( |  | ) | const

Gets the model of the given canvas item.

Returns:
  The item's model, or `0` if it has no model.

virtual Glib::RefPtr<ItemModel> Goocanvas::Item::get_model_vfunc | ( |  | ) | const`[protected, virtual]`

int Goocanvas::Item::get_n_children | ( |  | ) | const

Gets the number of children of the container.

Returns:
  The number of children.

virtual int Goocanvas::Item::get_n_children_vfunc | ( |  | ) | const`[protected, virtual]`

Glib::RefPtr<Item> Goocanvas::Item::get_parent | ( |  | ) |

Gets the parent of the given item.

Returns:
  The parent item, or `0` if the item has no parent.

Glib::RefPtr<const Item> Goocanvas::Item::get_parent | ( |  | ) | const

Gets the parent of the given item.

Returns:
  The parent item, or `0` if the item has no parent.

virtual Glib::RefPtr<Item> Goocanvas::Item::get_parent_vfunc | ( |  | ) | const`[protected, virtual]`

bool Goocanvas::Item::get_requested_area | ( | const Cairo::RefPtr< Cairo::Context > & | context,
|  | Bounds& | bounds
| ) |  | const

This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.

It gets the requested area of a child item.

Parameters:

  cr | A cairo context.
  requested_area | A Goo::CanvasBounds to return the requested area in, in the parent's coordinate space.

Returns:
  `true` if the item should be allocated space.

virtual bool Goocanvas::Item::get_requested_area_vfunc | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | GooCanvasBounds * | requested_area
| ) |  | const`[protected, virtual]`

double Goocanvas::Item::get_requested_height | ( | const Cairo::RefPtr< Cairo::Context > & | context,
|  | double | width
| ) |  | const

This function is only intended to be used when implementing new canvas items, specifically layout items such as Goo::CanvasTable.

It gets the requested height of a child item, assuming it is allocated the given width. This is useful for text items whose requested height may change depending on the allocated width.

Parameters:

  cr | A cairo context.
  width | The width that the item may be allocated.

Returns:
  The requested height of the item, given the allocated width, or -1 if the item doesn't support this method or its height doesn't change when allocated different widths.

virtual double Goocanvas::Item::get_requested_height_vfunc | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | double | width
| ) |  | `[protected, virtual]`

bool Goocanvas::Item::get_simple_transform | ( | double & | x,
|  | double & | y,
|  | double & | scale,
|  | double & | rotation
| ) |  | const

This function can be used to get the position, scale and rotation of an item, providing that the item has a simple transformation matrix (e.g. set with set_simple_transform(), or using a combination of simple translate, scale and rotate operations).

If the item has a complex transformation matrix the results will be incorrect.

Parameters:

  x | Returns the x coordinate of the origin of the item's coordinate space.
  y | Returns the y coordinate of the origin of the item's coordinate space.
  scale | Returns the scale of the item.
  rotation | Returns the clockwise rotation of the item, in degrees (0-360).

Returns:
  `true` if a transform is set.

Glib::RefPtr<Style> Goocanvas::Item::get_style | ( |  | ) |

Gets the item's style.

If the item doesn't have its own style it will return its parent's style.

Returns:
  The item's style.

Glib::RefPtr<const Style> Goocanvas::Item::get_style | ( |  | ) | const

Gets the item's style.

If the item doesn't have its own style it will return its parent's style.

Returns:
  The item's style.

virtual Glib::RefPtr<Style> Goocanvas::Item::get_style_vfunc | ( |  | ) | const`[protected, virtual]`

bool Goocanvas::Item::get_transform | ( | Cairo::Matrix * | matrix | ) |

Gets the transformation matrix of an item.

Parameters:

  transform | The place to store the transform.

Returns:
  `true` if a transform is set.

bool Goocanvas::Item::get_transform_for_child | ( | const Glib::RefPtr< Item >& | child,
|  | Cairo::Matrix * | transform
| ) |  |

Gets the transformation matrix of an item combined with any special transform needed for the given child.

These special transforms are used by layout items such as Goo::CanvasTable.

Parameters:

  child | A child of item.
  transform | The place to store the transform.

Returns:
  `true` if a transform is set.

virtual bool Goocanvas::Item::get_transform_for_child_vfunc | ( | const Glib::RefPtr< Item >& | child,
|  | Cairo::Matrix * | transform
| ) |  | const`[protected, virtual]`

virtual bool Goocanvas::Item::get_transform_vfunc | ( | Cairo::Matrix * | transform | ) | const`[protected, virtual]`

GooCanvasItem* Goocanvas::Item::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

Reimplemented in Goocanvas::Ellipse, Goocanvas::Grid, Goocanvas::Group, Goocanvas::Image, Goocanvas::ItemSimple, Goocanvas::Polyline, Goocanvas::Path, Goocanvas::Rect, Goocanvas::Table, Goocanvas::Text, and Goocanvas::Widget.

const GooCanvasItem* Goocanvas::Item::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

Reimplemented in Goocanvas::Ellipse, Goocanvas::Grid, Goocanvas::Group, Goocanvas::Image, Goocanvas::ItemSimple, Goocanvas::Polyline, Goocanvas::Path, Goocanvas::Rect, Goocanvas::Table, Goocanvas::Text, and Goocanvas::Widget.

bool Goocanvas::Item::is_container | ( |  | ) | const

Tests to see if the given item is a container.

Returns:
  `true` if the item is a container.

bool Goocanvas::Item::is_visible | ( |  | ) | const

Checks if the item is visible.

This entails checking the item's own visibility setting, as well as those of its ancestors.

Note that the item may be scrolled off the screen and so may not be actually visible to the user.

Returns:
  `true` if the item is visible.

virtual bool Goocanvas::Item::is_visible_vfunc | ( |  | ) | const`[protected, virtual]`

void Goocanvas::Item::lower | ( | const Glib::RefPtr< Item >& | below | ) |

Lowers an item in the stacking order.

Parameters:

  below | The item to lower item below, or `0` to lower item to the bottom of the stack.

void Goocanvas::Item::lower | ( |  | ) |

Lower the item to the bottom of the stack.

void Goocanvas::Item::move_child | ( | int | old_position,
|  | int | new_position
| ) |  |

Moves a child item to a new stack position within the container.

Parameters:

  old_position | The current position of the child item.
  new_position | The new position of the child item.

virtual void Goocanvas::Item::move_child_vfunc | ( | int | old_position,
|  | int | new_position
| ) |  | `[protected, virtual]`

virtual void Goocanvas::Item::on_animation_finished | ( | bool | stopped | ) | `[protected, virtual]`

virtual bool Goocanvas::Item::on_button_press_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventButton * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_button_release_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventButton * | event
| ) |  | `[protected, virtual]`

virtual void Goocanvas::Item::on_child_notify | ( | GParamSpec * | pspec | ) | `[protected, virtual]`

virtual bool Goocanvas::Item::on_enter_notify_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventCrossing * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_focus_in_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventFocus * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_focus_out_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventFocus * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_grab_broken_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventGrabBroken * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_key_press_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventKey * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_key_release_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventKey * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_leave_notify_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventCrossing * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_motion_notify_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventMotion * | event
| ) |  | `[protected, virtual]`

virtual bool Goocanvas::Item::on_scroll_event | ( | const Glib::RefPtr< Item >& | target,
|  | GdkEventScroll * | event
| ) |  | `[protected, virtual]`

void Goocanvas::Item::paint | ( | const Cairo::RefPtr< Cairo::Context > & | context,
|  | const Bounds& | bounds,
|  | double | scale
| ) |  |

This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.

It paints the item and all children if they intersect the given bounds.

Note that the scale argument may be different to the current scale in the Goo::CanvasItem, e.g. when the canvas is being printed.

Parameters:

  cr | A cairo context.
  bounds | The bounds that need to be repainted.
  scale | The scale to use to determine whether an item should be painted. See Goo::CanvasItem:visibility-threshold.

virtual void Goocanvas::Item::paint_vfunc | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | const Bounds& | bounds,
|  | double | scale
| ) |  | `[protected, virtual]`

Glib::PropertyProxy<bool> Goocanvas::Item::property_can_focus | ( |  | ) |

If the item can take the keyboard focus.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Goocanvas::Item::property_can_focus | ( |  | ) | const

If the item can take the keyboard focus.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Glib::ustring> Goocanvas::Item::property_description | ( |  | ) |

A description of the item for use by assistive technologies.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Glib::ustring> Goocanvas::Item::property_description | ( |  | ) | const

A description of the item for use by assistive technologies.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Goocanvas::Item::property_height | ( |  | ) | const

The height of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Goocanvas::Item::property_height | ( |  | ) |

The height of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::RefPtr<Item> > Goocanvas::Item::property_parent | ( |  | ) |

The parent item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Item> > Goocanvas::Item::property_parent | ( |  | ) | const

The parent item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<PointerEvents> Goocanvas::Item::property_pointer_events | ( |  | ) |

Specifies when the item receives pointer events.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<PointerEvents> Goocanvas::Item::property_pointer_events | ( |  | ) | const

Specifies when the item receives pointer events.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Glib::ustring> Goocanvas::Item::property_title | ( |  | ) |

A short context-rich description of the item for use by assistive technologies.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Glib::ustring> Goocanvas::Item::property_title | ( |  | ) | const

A short context-rich description of the item for use by assistive technologies.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Cairo::Matrix*> Goocanvas::Item::property_transform | ( |  | ) | const

The transformation matrix of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Cairo::Matrix*> Goocanvas::Item::property_transform | ( |  | ) |

The transformation matrix of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<ItemVisibility> Goocanvas::Item::property_visibility | ( |  | ) |

When the canvas item is visible.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<ItemVisibility> Goocanvas::Item::property_visibility | ( |  | ) | const

When the canvas item is visible.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Goocanvas::Item::property_visibility_threshold | ( |  | ) | const

The scale threshold at which the item becomes visible.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Goocanvas::Item::property_visibility_threshold | ( |  | ) |

The scale threshold at which the item becomes visible.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Goocanvas::Item::property_width | ( |  | ) |

The width of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Goocanvas::Item::property_width | ( |  | ) | const

The width of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Goocanvas::Item::property_x | ( |  | ) | const

The x coordinate of the left side of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Goocanvas::Item::property_x | ( |  | ) |

The x coordinate of the left side of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Goocanvas::Item::property_y | ( |  | ) |

The y coordinate of the top of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Goocanvas::Item::property_y | ( |  | ) | const

The y coordinate of the top of the item.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Goocanvas::Item::raise | ( | const Glib::RefPtr< Item >& | above | ) |

Raises an item in the stacking order.

Parameters:

  above | The item to raise item above, or `0` to raise item to the top of the stack.

void Goocanvas::Item::raise | ( |  | ) |

Raise the item to the top of the stack.

void Goocanvas::Item::remove | ( |  | ) |

Removes an item from its parent.

If the item is in a canvas it will be removed.

This would normally also result in the item being freed.

void Goocanvas::Item::remove_child | ( | int | child_num | ) |

Removes the child item at the given position.

Parameters:

  child_num | The position of the child item to remove.

virtual void Goocanvas::Item::remove_child_vfunc | ( | int | child_num | ) | `[protected, virtual]`

void Goocanvas::Item::request_update | ( |  | ) |

This function is only intended to be used when implementing new canvas items.

It requests that an update of the item is scheduled. It will be performed as soon as the application is idle, and before the canvas is redrawn.

virtual void Goocanvas::Item::request_update_vfunc | ( |  | ) | `[protected, virtual]`

void Goocanvas::Item::rotate | ( | double | degrees,
|  | double | cx,
|  | double | cy
| ) |  |

Rotates the item's coordinate system by the given amount, about the given origin.

Parameters:

  degrees | The clockwise angle of rotation.
  cx | The x coordinate of the origin of the rotation.
  cy | The y coordinate of the origin of the rotation.

void Goocanvas::Item::scale | ( | double | sx,
|  | double | sy
| ) |  |

Scales the item's coordinate system by the given amounts.

Parameters:

  sx | The amount to scale the horizontal axis.
  sy | The amount to scale the vertical axis.

void Goocanvas::Item::set_canvas | ( | Canvas* | canvas | ) |

This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.

It sets the canvas of the item.

Parameters:

  canvas | A Goo::Canvas.

virtual void Goocanvas::Item::set_canvas_vfunc | ( | Canvas* | canvas | ) | `[protected, virtual]`

template <class PropertyType >

void Goocanvas::Item::set_child_property | ( | const Glib::RefPtr< Item >& | child,
|  | const Glib::ustring & | the_property_name,
|  | const PropertyType & | value
| ) |  |

void Goocanvas::Item::set_child_property_value | ( | const Glib::RefPtr< Item >& | child,
|  | const Glib::ustring & | property_name,
|  | const Glib::ValueBase & | value
| ) |  |

Sets a child property of child.

Parameters:

  child | A child Goo::CanvasItem.
  property_name | The name of the child property to set.
  value | The value to set the property to.

virtual void Goocanvas::Item::set_child_property_vfunc | ( | const Glib::RefPtr< Item >& | child,
|  | guint | property_id,
|  | const Glib::ValueBase & | value,
|  | GParamSpec * | pspec
| ) |  | `[protected, virtual]`

void Goocanvas::Item::set_is_static | ( | bool | is_static = `true` | ) |

virtual void Goocanvas::Item::set_is_static_vfunc | ( | bool | is_static | ) | `[protected, virtual]`

void Goocanvas::Item::set_model | ( | const Glib::RefPtr< ItemModel >& | model | ) |

Sets the model of the given canvas item.

Parameters:

  model | A Goo::CanvasItemModel.

Reimplemented in Goocanvas::ItemSimple.

virtual void Goocanvas::Item::set_model_vfunc | ( | const Glib::RefPtr< ItemModel >& | model | ) | `[protected, virtual]`

void Goocanvas::Item::set_parent | ( | const Glib::RefPtr< Item >& | parent | ) |

This function is only intended to be used when implementing new canvas items (specifically container items such as Goo::CanvasGroup).

It sets the parent of the child item. <!--PARAMETERS--> <note><para> This function cannot be used to add an item to a group or to change the parent of an item. To do that use the Goo::CanvasItem:parent property. </para></note>

Parameters:

  parent | The new parent item.

virtual void Goocanvas::Item::set_parent_vfunc | ( | const Glib::RefPtr< Item >& | parent | ) | `[protected, virtual]`

void Goocanvas::Item::set_simple_transform | ( | double | x,
|  | double | y,
|  | double | scale,
|  | double | rotation
| ) |  |

A convenience function to set the item's transformation matrix.

Parameters:

  x | The x coordinate of the origin of the item's coordinate space.
  y | The y coordinate of the origin of the item's coordinate space.
  scale | The scale of the item.
  rotation | The clockwise rotation of the item, in degrees.

void Goocanvas::Item::set_style | ( | const Glib::RefPtr< Style >& | style | ) |

Sets the item's style, by copying the properties from the given style.

Parameters:

  style | A style.

virtual void Goocanvas::Item::set_style_vfunc | ( | const Glib::RefPtr< Style >& | style | ) | `[protected, virtual]`

void Goocanvas::Item::set_transform | ( | const Cairo::Matrix * | matrix | ) |

Sets the transformation matrix of an item.

Parameters:

  transform | The new transformation matrix, or `0` to reset the transformation to the identity matrix.

virtual void Goocanvas::Item::set_transform_vfunc | ( | const Cairo::Matrix * | transform | ) | `[protected, virtual]`

Glib::SignalProxy1< void,bool > Goocanvas::Item::signal_animation_finished | ( |  | ) |

Prototype:
  `void on_my_animation_finished(bool stopped)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventButton* > Goocanvas::Item::signal_button_press_event | ( |  | ) |

Prototype:
  `bool on_my_button_press_event(const Glib::RefPtr<Item>& target, GdkEventButton* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventButton* > Goocanvas::Item::signal_button_release_event | ( |  | ) |

Prototype:
  `bool on_my_button_release_event(const Glib::RefPtr<Item>& target, GdkEventButton* event)`

Glib::SignalProxy1< void,GParamSpec* > Goocanvas::Item::signal_child_notify | ( |  | ) |

Prototype:
  `void on_my_child_notify(GParamSpec* pspec)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventCrossing* > Goocanvas::Item::signal_enter_notify_event | ( |  | ) |

Prototype:
  `bool on_my_enter_notify_event(const Glib::RefPtr<Item>& target, GdkEventCrossing* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventFocus* > Goocanvas::Item::signal_focus_in_event | ( |  | ) |

Prototype:
  `bool on_my_focus_in_event(const Glib::RefPtr<Item>& target, GdkEventFocus* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventFocus* > Goocanvas::Item::signal_focus_out_event | ( |  | ) |

Prototype:
  `bool on_my_focus_out_event(const Glib::RefPtr<Item>& target, GdkEventFocus* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventGrabBroken* > Goocanvas::Item::signal_grab_broken_event | ( |  | ) |

Prototype:
  `bool on_my_grab_broken_event(const Glib::RefPtr<Item>& target, GdkEventGrabBroken* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventKey* > Goocanvas::Item::signal_key_press_event | ( |  | ) |

Prototype:
  `bool on_my_key_press_event(const Glib::RefPtr<Item>& target, GdkEventKey* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventKey* > Goocanvas::Item::signal_key_release_event | ( |  | ) |

Prototype:
  `bool on_my_key_release_event(const Glib::RefPtr<Item>& target, GdkEventKey* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventCrossing* > Goocanvas::Item::signal_leave_notify_event | ( |  | ) |

Prototype:
  `bool on_my_leave_notify_event(const Glib::RefPtr<Item>& target, GdkEventCrossing* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventMotion* > Goocanvas::Item::signal_motion_notify_event | ( |  | ) |

Prototype:
  `bool on_my_motion_notify_event(const Glib::RefPtr<Item>& target, GdkEventMotion* event)`

Glib::SignalProxy2< bool,const Glib::RefPtr<Item>&,GdkEventScroll* > Goocanvas::Item::signal_scroll_event | ( |  | ) |

Prototype:
  `bool on_my_scroll_event(const Glib::RefPtr<Item>& target, GdkEventScroll* event)`

void Goocanvas::Item::skew_x | ( | double | degrees,
|  | double | cx,
|  | double | cy
| ) |  |

Skews the item's coordinate system along the x axis by the given amount, about the given origin.

Parameters:

  degrees | The skew angle.
  cx | The x coordinate of the origin of the skew transform.
  cy | The y coordinate of the origin of the skew transform.

void Goocanvas::Item::skew_y | ( | double | degrees,
|  | double | cx,
|  | double | cy
| ) |  |

Skews the item's coordinate system along the y axis by the given amount, about the given origin.

Parameters:

  degrees | The skew angle.
  cx | The x coordinate of the origin of the skew transform.
  cy | The y coordinate of the origin of the skew transform.

void Goocanvas::Item::stop_animation | ( |  | ) |

Stops any current animation for the given item, leaving it at its current position.

void Goocanvas::Item::translate | ( | double | tx,
|  | double | ty
| ) |  |

Translates the origin of the item's coordinate system by the given amounts.

Parameters:

  tx | The amount to move the origin in the horizontal direction.
  ty | The amount to move the origin in the vertical direction.

void Goocanvas::Item::update | ( | bool | entire_tree,
|  | const Cairo::RefPtr< Cairo::Context > & | context,
|  | Bounds& | bounds
| ) |  |

This function is only intended to be used when implementing new canvas items, specifically container items such as Goo::CanvasGroup.

Updates the item, if needed, and any children.

Parameters:

  entire_tree | If the entire subtree should be updated.
  cr | A cairo context.
  bounds | A Goo::CanvasBounds to return the new bounds in.

virtual void Goocanvas::Item::update_vfunc | ( | bool | entire_tree,
|  | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | Bounds& | bounds
| ) |  | `[protected, virtual]`

## Friends And Related Function Documentation

Glib::RefPtr< Goocanvas::Item > wrap | ( | GooCanvasItem * | object,
|  | bool | take_copy = `false`
| ) |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- goocanvasmm/item.h