Gnome2-Dia

 view release on metacpan or  search on metacpan

xs/DiaCanvasItem.xs  view on Meta::CPAN

MODULE = Gnome2::Dia::CanvasItem	PACKAGE = Gnome2::Dia::CanvasItem	PREFIX = dia_canvas_item_

BOOT:
{
	dia_affine_wrapper_class.wrap = (GPerlBoxedWrapFunc) dia_affine_wrap;
	dia_affine_wrapper_class.unwrap = (GPerlBoxedUnwrapFunc) dia_affine_unwrap;
	dia_affine_wrapper_class.destroy = NULL;

	dia_canvas_item_handles_wrapper_class.wrap = (GPerlBoxedWrapFunc) dia_canvas_item_handles_wrap;
	dia_canvas_item_handles_wrapper_class.unwrap = (GPerlBoxedUnwrapFunc) dia_canvas_item_handles_unwrap;
	dia_canvas_item_handles_wrapper_class.destroy = NULL;

	gperl_register_boxed (DIA_TYPE_AFFINE, "Gnome2::Dia::Affine", &dia_affine_wrapper_class);
	gperl_register_boxed (DIA_TYPE_CANVAS_ITEM_HANDLES, "Gnome2::Dia::CanvasItemHandles", &dia_canvas_item_handles_wrapper_class);
}

##  Dummies for types that don't have a module.
=for object Gnome2::Dia::CanvasImage
=cut

=for object Gnome2::Dia::CanvasText
=cut

=for object Gnome2::Dia::Selector
=cut

##  Back to DiaCanvasItem.
=for object Gnome2::Dia::CanvasItem
=cut

##  Accessors.
DiaCanvasItemFlags
flags (item)
	DiaCanvasItem *item
    CODE:
	RETVAL = item->flags;
    OUTPUT:
	RETVAL

DiaCanvas *
canvas (item)
	DiaCanvasItem *item
    CODE:
	RETVAL = item->canvas;
    OUTPUT:
	RETVAL

DiaRectangle *
bounds (item)
	DiaCanvasItem *item
    CODE:
	RETVAL = &item->bounds;
    OUTPUT:
	RETVAL

void
connected_handles (item)
	DiaCanvasItem *item
    PREINIT:
	GList *i;
    PPCODE:
	for (i = item->connected_handles; i != NULL; i = i->next)
		XPUSHs (sv_2mortal (newSVDiaHandle (i->data)));

##  DiaCanvasItem* dia_canvas_item_create (GType type, const gchar *first_arg_name, ...)
DiaCanvasItem_noinc *
dia_canvas_item_create (class, type, ...)
	const char *type
    PREINIT:
	GType real_type;
	int i;
    CODE:
	if (((items - 2) % 2) != 0)
		croak ("expected name => value pairs to follow object class; "
		       "odd number of arguments detected");

	real_type = gperl_object_type_from_package (type);
	if (!real_type)
		croak ("%s is not registered with Perl as an object type",
		       type);

	RETVAL = dia_canvas_item_create (real_type, NULL);

	for (i = 2; i < items ; i += 2) {
		const char *name = SvPV_nolen (ST (i));
		SV *new_value = ST (i + 1);
		GParamSpec *pspec;
		GValue value = {0, };

		pspec = g_object_class_find_property (
		          G_OBJECT_GET_CLASS (RETVAL), name);
		if (!pspec)
			croak ("property %s not found in object class %s",
			       name, g_type_name (real_type));

		g_value_init (&value, G_PARAM_SPEC_VALUE_TYPE (pspec));
		gperl_value_from_sv (&value, new_value);
		g_object_set_property (G_OBJECT (RETVAL), name, &value);
		g_value_unset (&value);
	}
    OUTPUT:
	RETVAL

##  void dia_canvas_item_set_parent (DiaCanvasItem *item, DiaCanvasItem *new_parent)
void
dia_canvas_item_set_parent (item, new_parent)
	DiaCanvasItem *item
	DiaCanvasItem_ornull *new_parent

##  void dia_canvas_item_request_update (DiaCanvasItem *item)
void
dia_canvas_item_request_update (item)
	DiaCanvasItem *item

##  void dia_canvas_item_update_now (DiaCanvasItem *item)
void
dia_canvas_item_update_now (item)
	DiaCanvasItem *item

##  void dia_canvas_item_update_child (DiaCanvasItem *item, DiaCanvasItem *child, gdouble affine[6])
void

xs/DiaCanvasItem.xs  view on Meta::CPAN

	gdouble sx
	gdouble sy

##  void dia_canvas_item_rotate (DiaCanvasItem *item, gdouble degrees)
void
dia_canvas_item_rotate (item, degrees)
	DiaCanvasItem *item
	gdouble degrees

##  void dia_canvas_item_shear_x (DiaCanvasItem *item, gdouble dx, gdouble dy)
void
dia_canvas_item_shear_x (item, dx, dy)
	DiaCanvasItem *item
	gdouble dx
	gdouble dy

##  void dia_canvas_item_shear_y (DiaCanvasItem *item, gdouble dx, gdouble dy)
void
dia_canvas_item_shear_y (item, dx, dy)
	DiaCanvasItem *item
	gdouble dx
	gdouble dy

##  void dia_canvas_item_move (DiaCanvasItem *item, gdouble dx, gdouble dy)
void
dia_canvas_item_move (item, dx, dy)
	DiaCanvasItem *item
	gdouble dx
	gdouble dy

##  void dia_canvas_item_flip (DiaCanvasItem *item, gboolean horz, gboolean vert)
void
dia_canvas_item_flip (item, horz, vert)
	DiaCanvasItem *item
	gboolean horz
	gboolean vert

##  void dia_canvas_item_move_interactive (DiaCanvasItem *item, gdouble dx, gdouble dy)
void
dia_canvas_item_move_interactive (item, dx, dy)
	DiaCanvasItem *item
	gdouble dx
	gdouble dy

##  void dia_canvas_item_expand_bounds (DiaCanvasItem *item, gdouble d)
void
dia_canvas_item_expand_bounds (item, d)
	DiaCanvasItem *item
	gdouble d

##  void dia_canvas_item_bb_affine (DiaCanvasItem* item, gdouble affine[6], gdouble *x1, gdouble *y1, gdouble *x2, gdouble *y2)
void
dia_canvas_item_bb_affine (item, affine)
	DiaCanvasItem *item
	SV *affine
    PREINIT:
	gdouble x1;
	gdouble y1;
	gdouble x2;
	gdouble y2;
    PPCODE:
	dia_canvas_item_bb_affine (item, SvDiaAffine (affine), &x1, &y1, &x2, &y2);
	EXTEND (sp, 4);
	PUSHs (sv_2mortal (newSVnv (x1)));
	PUSHs (sv_2mortal (newSVnv (y1)));
	PUSHs (sv_2mortal (newSVnv (x2)));
	PUSHs (sv_2mortal (newSVnv (y2)));

##  gboolean dia_canvas_item_get_shape_iter (DiaCanvasItem *item, DiaCanvasIter *iter)
DiaCanvasIter_copy *
dia_canvas_item_get_shape_iter (item)
	DiaCanvasItem *item
    PREINIT:
	DiaCanvasIter iter;
    CODE:
	if (!dia_canvas_item_get_shape_iter (item, &iter))
		XSRETURN_UNDEF;
	RETVAL = &iter;
    OUTPUT:
	RETVAL

##  gboolean dia_canvas_item_shape_next (DiaCanvasItem *item, DiaCanvasIter *iter)
gboolean
dia_canvas_item_shape_next (item, iter)
	DiaCanvasItem *item
	DiaCanvasIter *iter

##  DiaShape* dia_canvas_item_shape_value (DiaCanvasItem *item, DiaCanvasIter *iter)
DiaShape *
dia_canvas_item_shape_value (item, iter)
	DiaCanvasItem *item
	DiaCanvasIter *iter

##  void dia_canvas_item_preserve_property (DiaCanvasItem *item, const gchar *property_name)
void
dia_canvas_item_preserve_property (item, property_name)
	DiaCanvasItem *item
	const gchar *property_name

##  void dia_canvas_item_set_child_of (DiaCanvasItem *item, DiaCanvasItem *new_parent)
void
dia_canvas_item_set_child_of (item, new_parent)
	DiaCanvasItem *item
	DiaCanvasItem_ornull *new_parent

# --------------------------------------------------------------------------- #

=for apidoc __hide__
=cut
void
_INSTALL_OVERRIDES (const char *package)
    PREINIT:
	GType type;
	DiaCanvasItemClass *class;
    CODE:
	type = gperl_object_type_from_package (package);

	if (!type)
		croak ("package '%s' is not registered with Gtk2-Perl",
		       package);



( run in 1.137 second using v1.01-cache-2.11-cpan-92ad3014f07 )