/* This file is automatically generated. Any changes made here will be lost. */

/* This header defines simple perlapi-ish macros for creating SV wrappers
 * and extracting the GPerl value from SV wrappers.  These macros are used
 * by the autogenerated typemaps, and are defined here so that you can use
 * the same logic anywhere in your code (e.g., if you handle the argument
 * stack by hand instead of using the typemap). */

#ifdef ATK_TYPE_OBJECT
  /* GObject derivative AtkObject */
# define SvAtkObject(sv)	((AtkObject*)gperl_get_object_check (sv, ATK_TYPE_OBJECT))
# define newSVAtkObject(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef AtkObject AtkObject_ornull;
# define SvAtkObject_ornull(sv)	(((sv) && SvOK (sv)) ? SvAtkObject(sv) : NULL)
# define newSVAtkObject_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef AtkObject AtkObject_noinc;
#define newSVAtkObject_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef AtkObject AtkObject_noinc_ornull;
#define newSVAtkObject_noinc_ornull(val)	((val) ? newSVAtkObject_noinc(val) : &PL_sv_undef)
#endif /* ATK_TYPE_OBJECT */

#ifdef GDK_TYPE_AXIS_USE
  /* GEnum GdkAxisUse */
# define SvGdkAxisUse(sv)	((GdkAxisUse)gperl_convert_enum (GDK_TYPE_AXIS_USE, sv))
# define newSVGdkAxisUse(val)	(gperl_convert_back_enum (GDK_TYPE_AXIS_USE, val))
#endif /* GDK_TYPE_AXIS_USE */

#ifdef GDK_TYPE_BYTE_ORDER
  /* GEnum GdkByteOrder */
# define SvGdkByteOrder(sv)	((GdkByteOrder)gperl_convert_enum (GDK_TYPE_BYTE_ORDER, sv))
# define newSVGdkByteOrder(val)	(gperl_convert_back_enum (GDK_TYPE_BYTE_ORDER, val))
#endif /* GDK_TYPE_BYTE_ORDER */

#ifdef GDK_TYPE_CAP_STYLE
  /* GEnum GdkCapStyle */
# define SvGdkCapStyle(sv)	((GdkCapStyle)gperl_convert_enum (GDK_TYPE_CAP_STYLE, sv))
# define newSVGdkCapStyle(val)	(gperl_convert_back_enum (GDK_TYPE_CAP_STYLE, val))
#endif /* GDK_TYPE_CAP_STYLE */

#ifdef GDK_TYPE_COLOR
  /* GBoxed GdkColor */
  typedef GdkColor GdkColor_ornull;
# define SvGdkColor(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_COLOR))
# define SvGdkColor_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkColor (sv) : NULL)
  typedef GdkColor GdkColor_own;
  typedef GdkColor GdkColor_copy;
  typedef GdkColor GdkColor_own_ornull;
# define newSVGdkColor(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_COLOR, FALSE))
# define newSVGdkColor_ornull(val)	((val) ? newSVGdkColor(val) : &PL_sv_undef)
# define newSVGdkColor_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_COLOR, TRUE))
# define newSVGdkColor_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_COLOR))
# define newSVGdkColor_own_ornull(val)	((val) ? newSVGdkColor_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_COLOR */

#ifdef GDK_TYPE_COLORMAP
  /* GObject derivative GdkColormap */
# define SvGdkColormap(sv)	((GdkColormap*)gperl_get_object_check (sv, GDK_TYPE_COLORMAP))
# define newSVGdkColormap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkColormap GdkColormap_ornull;
# define SvGdkColormap_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkColormap(sv) : NULL)
# define newSVGdkColormap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkColormap GdkColormap_noinc;
#define newSVGdkColormap_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkColormap GdkColormap_noinc_ornull;
#define newSVGdkColormap_noinc_ornull(val)	((val) ? newSVGdkColormap_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_COLORMAP */

#ifdef GDK_TYPE_COLORSPACE
  /* GEnum GdkColorspace */
# define SvGdkColorspace(sv)	((GdkColorspace)gperl_convert_enum (GDK_TYPE_COLORSPACE, sv))
# define newSVGdkColorspace(val)	(gperl_convert_back_enum (GDK_TYPE_COLORSPACE, val))
#endif /* GDK_TYPE_COLORSPACE */

#ifdef GDK_TYPE_CROSSING_MODE
  /* GEnum GdkCrossingMode */
# define SvGdkCrossingMode(sv)	((GdkCrossingMode)gperl_convert_enum (GDK_TYPE_CROSSING_MODE, sv))
# define newSVGdkCrossingMode(val)	(gperl_convert_back_enum (GDK_TYPE_CROSSING_MODE, val))
#endif /* GDK_TYPE_CROSSING_MODE */

#ifdef GDK_TYPE_CURSOR
  /* GBoxed GdkCursor */
  typedef GdkCursor GdkCursor_ornull;
# define SvGdkCursor(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_CURSOR))
# define SvGdkCursor_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkCursor (sv) : NULL)
  typedef GdkCursor GdkCursor_own;
  typedef GdkCursor GdkCursor_copy;
  typedef GdkCursor GdkCursor_own_ornull;
# define newSVGdkCursor(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_CURSOR, FALSE))
# define newSVGdkCursor_ornull(val)	((val) ? newSVGdkCursor(val) : &PL_sv_undef)
# define newSVGdkCursor_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_CURSOR, TRUE))
# define newSVGdkCursor_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_CURSOR))
# define newSVGdkCursor_own_ornull(val)	((val) ? newSVGdkCursor_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_CURSOR */

#ifdef GDK_TYPE_CURSOR_TYPE
  /* GEnum GdkCursorType */
# define SvGdkCursorType(sv)	((GdkCursorType)gperl_convert_enum (GDK_TYPE_CURSOR_TYPE, sv))
# define newSVGdkCursorType(val)	(gperl_convert_back_enum (GDK_TYPE_CURSOR_TYPE, val))
#endif /* GDK_TYPE_CURSOR_TYPE */

#ifdef GDK_TYPE_DEVICE
  /* GObject derivative GdkDevice */
# define SvGdkDevice(sv)	((GdkDevice*)gperl_get_object_check (sv, GDK_TYPE_DEVICE))
# define newSVGdkDevice(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkDevice GdkDevice_ornull;
# define SvGdkDevice_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkDevice(sv) : NULL)
# define newSVGdkDevice_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkDevice GdkDevice_noinc;
#define newSVGdkDevice_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkDevice GdkDevice_noinc_ornull;
#define newSVGdkDevice_noinc_ornull(val)	((val) ? newSVGdkDevice_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_DEVICE */

#ifdef GDK_TYPE_DRAG_ACTION
  /* GFlags GdkDragAction */
# define SvGdkDragAction(sv)	((GdkDragAction)gperl_convert_flags (GDK_TYPE_DRAG_ACTION, sv))
# define newSVGdkDragAction(val)	(gperl_convert_back_flags (GDK_TYPE_DRAG_ACTION, val))
#endif /* GDK_TYPE_DRAG_ACTION */

#ifdef GDK_TYPE_DRAG_CONTEXT
  /* GObject derivative GdkDragContext */
# define SvGdkDragContext(sv)	((GdkDragContext*)gperl_get_object_check (sv, GDK_TYPE_DRAG_CONTEXT))
# define newSVGdkDragContext(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkDragContext GdkDragContext_ornull;
# define SvGdkDragContext_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkDragContext(sv) : NULL)
# define newSVGdkDragContext_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkDragContext GdkDragContext_noinc;
#define newSVGdkDragContext_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkDragContext GdkDragContext_noinc_ornull;
#define newSVGdkDragContext_noinc_ornull(val)	((val) ? newSVGdkDragContext_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_DRAG_CONTEXT */

#ifdef GDK_TYPE_DRAG_PROTOCOL
  /* GEnum GdkDragProtocol */
# define SvGdkDragProtocol(sv)	((GdkDragProtocol)gperl_convert_enum (GDK_TYPE_DRAG_PROTOCOL, sv))
# define newSVGdkDragProtocol(val)	(gperl_convert_back_enum (GDK_TYPE_DRAG_PROTOCOL, val))
#endif /* GDK_TYPE_DRAG_PROTOCOL */

#ifdef GDK_TYPE_DRAWABLE
  /* GObject derivative GdkDrawable */
# define SvGdkDrawable(sv)	((GdkDrawable*)gperl_get_object_check (sv, GDK_TYPE_DRAWABLE))
# define newSVGdkDrawable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkDrawable GdkDrawable_ornull;
# define SvGdkDrawable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkDrawable(sv) : NULL)
# define newSVGdkDrawable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkDrawable GdkDrawable_noinc;
#define newSVGdkDrawable_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkDrawable GdkDrawable_noinc_ornull;
#define newSVGdkDrawable_noinc_ornull(val)	((val) ? newSVGdkDrawable_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_DRAWABLE */

#ifdef GDK_TYPE_EVENT
  /* GBoxed GdkEvent */
  typedef GdkEvent GdkEvent_ornull;
# define SvGdkEvent(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_EVENT))
# define SvGdkEvent_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkEvent (sv) : NULL)
  typedef GdkEvent GdkEvent_own;
  typedef GdkEvent GdkEvent_copy;
  typedef GdkEvent GdkEvent_own_ornull;
# define newSVGdkEvent(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_EVENT, FALSE))
# define newSVGdkEvent_ornull(val)	((val) ? newSVGdkEvent(val) : &PL_sv_undef)
# define newSVGdkEvent_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_EVENT, TRUE))
# define newSVGdkEvent_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_EVENT))
# define newSVGdkEvent_own_ornull(val)	((val) ? newSVGdkEvent_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_EVENT */

#ifdef GDK_TYPE_EVENT_MASK
  /* GFlags GdkEventMask */
# define SvGdkEventMask(sv)	((GdkEventMask)gperl_convert_flags (GDK_TYPE_EVENT_MASK, sv))
# define newSVGdkEventMask(val)	(gperl_convert_back_flags (GDK_TYPE_EVENT_MASK, val))
#endif /* GDK_TYPE_EVENT_MASK */

#ifdef GDK_TYPE_EVENT_TYPE
  /* GEnum GdkEventType */
# define SvGdkEventType(sv)	((GdkEventType)gperl_convert_enum (GDK_TYPE_EVENT_TYPE, sv))
# define newSVGdkEventType(val)	(gperl_convert_back_enum (GDK_TYPE_EVENT_TYPE, val))
#endif /* GDK_TYPE_EVENT_TYPE */

#ifdef GDK_TYPE_EXTENSION_MODE
  /* GEnum GdkExtensionMode */
# define SvGdkExtensionMode(sv)	((GdkExtensionMode)gperl_convert_enum (GDK_TYPE_EXTENSION_MODE, sv))
# define newSVGdkExtensionMode(val)	(gperl_convert_back_enum (GDK_TYPE_EXTENSION_MODE, val))
#endif /* GDK_TYPE_EXTENSION_MODE */

#ifdef GDK_TYPE_FILL
  /* GEnum GdkFill */
# define SvGdkFill(sv)	((GdkFill)gperl_convert_enum (GDK_TYPE_FILL, sv))
# define newSVGdkFill(val)	(gperl_convert_back_enum (GDK_TYPE_FILL, val))
#endif /* GDK_TYPE_FILL */

#ifdef GDK_TYPE_FILL_RULE
  /* GEnum GdkFillRule */
# define SvGdkFillRule(sv)	((GdkFillRule)gperl_convert_enum (GDK_TYPE_FILL_RULE, sv))
# define newSVGdkFillRule(val)	(gperl_convert_back_enum (GDK_TYPE_FILL_RULE, val))
#endif /* GDK_TYPE_FILL_RULE */

#ifdef GDK_TYPE_FILTER_RETURN
  /* GEnum GdkFilterReturn */
# define SvGdkFilterReturn(sv)	((GdkFilterReturn)gperl_convert_enum (GDK_TYPE_FILTER_RETURN, sv))
# define newSVGdkFilterReturn(val)	(gperl_convert_back_enum (GDK_TYPE_FILTER_RETURN, val))
#endif /* GDK_TYPE_FILTER_RETURN */

#ifdef GDK_TYPE_FONT
  /* GBoxed GdkFont */
  typedef GdkFont GdkFont_ornull;
# define SvGdkFont(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_FONT))
# define SvGdkFont_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkFont (sv) : NULL)
  typedef GdkFont GdkFont_own;
  typedef GdkFont GdkFont_copy;
  typedef GdkFont GdkFont_own_ornull;
# define newSVGdkFont(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_FONT, FALSE))
# define newSVGdkFont_ornull(val)	((val) ? newSVGdkFont(val) : &PL_sv_undef)
# define newSVGdkFont_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_FONT, TRUE))
# define newSVGdkFont_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_FONT))
# define newSVGdkFont_own_ornull(val)	((val) ? newSVGdkFont_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_FONT */

#ifdef GDK_TYPE_FONT_TYPE
  /* GEnum GdkFontType */
# define SvGdkFontType(sv)	((GdkFontType)gperl_convert_enum (GDK_TYPE_FONT_TYPE, sv))
# define newSVGdkFontType(val)	(gperl_convert_back_enum (GDK_TYPE_FONT_TYPE, val))
#endif /* GDK_TYPE_FONT_TYPE */

#ifdef GDK_TYPE_FUNCTION
  /* GEnum GdkFunction */
# define SvGdkFunction(sv)	((GdkFunction)gperl_convert_enum (GDK_TYPE_FUNCTION, sv))
# define newSVGdkFunction(val)	(gperl_convert_back_enum (GDK_TYPE_FUNCTION, val))
#endif /* GDK_TYPE_FUNCTION */

#ifdef GDK_TYPE_GC
  /* GObject derivative GdkGC */
# define SvGdkGC(sv)	((GdkGC*)gperl_get_object_check (sv, GDK_TYPE_GC))
# define newSVGdkGC(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkGC GdkGC_ornull;
# define SvGdkGC_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkGC(sv) : NULL)
# define newSVGdkGC_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkGC GdkGC_noinc;
#define newSVGdkGC_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkGC GdkGC_noinc_ornull;
#define newSVGdkGC_noinc_ornull(val)	((val) ? newSVGdkGC_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_GC */

#ifdef GDK_TYPE_GC_VALUES_MASK
  /* GFlags GdkGCValuesMask */
# define SvGdkGCValuesMask(sv)	((GdkGCValuesMask)gperl_convert_flags (GDK_TYPE_GC_VALUES_MASK, sv))
# define newSVGdkGCValuesMask(val)	(gperl_convert_back_flags (GDK_TYPE_GC_VALUES_MASK, val))
#endif /* GDK_TYPE_GC_VALUES_MASK */

#ifdef GDK_TYPE_GRAB_STATUS
  /* GEnum GdkGrabStatus */
# define SvGdkGrabStatus(sv)	((GdkGrabStatus)gperl_convert_enum (GDK_TYPE_GRAB_STATUS, sv))
# define newSVGdkGrabStatus(val)	(gperl_convert_back_enum (GDK_TYPE_GRAB_STATUS, val))
#endif /* GDK_TYPE_GRAB_STATUS */

#ifdef GDK_TYPE_GRAVITY
  /* GEnum GdkGravity */
# define SvGdkGravity(sv)	((GdkGravity)gperl_convert_enum (GDK_TYPE_GRAVITY, sv))
# define newSVGdkGravity(val)	(gperl_convert_back_enum (GDK_TYPE_GRAVITY, val))
#endif /* GDK_TYPE_GRAVITY */

#ifdef GDK_TYPE_IMAGE
  /* GObject derivative GdkImage */
# define SvGdkImage(sv)	((GdkImage*)gperl_get_object_check (sv, GDK_TYPE_IMAGE))
# define newSVGdkImage(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkImage GdkImage_ornull;
# define SvGdkImage_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkImage(sv) : NULL)
# define newSVGdkImage_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkImage GdkImage_noinc;
#define newSVGdkImage_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkImage GdkImage_noinc_ornull;
#define newSVGdkImage_noinc_ornull(val)	((val) ? newSVGdkImage_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_IMAGE */

#ifdef GDK_TYPE_IMAGE_TYPE
  /* GEnum GdkImageType */
# define SvGdkImageType(sv)	((GdkImageType)gperl_convert_enum (GDK_TYPE_IMAGE_TYPE, sv))
# define newSVGdkImageType(val)	(gperl_convert_back_enum (GDK_TYPE_IMAGE_TYPE, val))
#endif /* GDK_TYPE_IMAGE_TYPE */

#ifdef GDK_TYPE_INPUT_CONDITION
  /* GFlags GdkInputCondition */
# define SvGdkInputCondition(sv)	((GdkInputCondition)gperl_convert_flags (GDK_TYPE_INPUT_CONDITION, sv))
# define newSVGdkInputCondition(val)	(gperl_convert_back_flags (GDK_TYPE_INPUT_CONDITION, val))
#endif /* GDK_TYPE_INPUT_CONDITION */

#ifdef GDK_TYPE_INPUT_MODE
  /* GEnum GdkInputMode */
# define SvGdkInputMode(sv)	((GdkInputMode)gperl_convert_enum (GDK_TYPE_INPUT_MODE, sv))
# define newSVGdkInputMode(val)	(gperl_convert_back_enum (GDK_TYPE_INPUT_MODE, val))
#endif /* GDK_TYPE_INPUT_MODE */

#ifdef GDK_TYPE_INPUT_SOURCE
  /* GEnum GdkInputSource */
# define SvGdkInputSource(sv)	((GdkInputSource)gperl_convert_enum (GDK_TYPE_INPUT_SOURCE, sv))
# define newSVGdkInputSource(val)	(gperl_convert_back_enum (GDK_TYPE_INPUT_SOURCE, val))
#endif /* GDK_TYPE_INPUT_SOURCE */

#ifdef GDK_TYPE_INTERP_TYPE
  /* GEnum GdkInterpType */
# define SvGdkInterpType(sv)	((GdkInterpType)gperl_convert_enum (GDK_TYPE_INTERP_TYPE, sv))
# define newSVGdkInterpType(val)	(gperl_convert_back_enum (GDK_TYPE_INTERP_TYPE, val))
#endif /* GDK_TYPE_INTERP_TYPE */

#ifdef GDK_TYPE_JOIN_STYLE
  /* GEnum GdkJoinStyle */
# define SvGdkJoinStyle(sv)	((GdkJoinStyle)gperl_convert_enum (GDK_TYPE_JOIN_STYLE, sv))
# define newSVGdkJoinStyle(val)	(gperl_convert_back_enum (GDK_TYPE_JOIN_STYLE, val))
#endif /* GDK_TYPE_JOIN_STYLE */

#ifdef GDK_TYPE_KEYMAP
  /* GObject derivative GdkKeymap */
# define SvGdkKeymap(sv)	((GdkKeymap*)gperl_get_object_check (sv, GDK_TYPE_KEYMAP))
# define newSVGdkKeymap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkKeymap GdkKeymap_ornull;
# define SvGdkKeymap_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkKeymap(sv) : NULL)
# define newSVGdkKeymap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkKeymap GdkKeymap_noinc;
#define newSVGdkKeymap_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkKeymap GdkKeymap_noinc_ornull;
#define newSVGdkKeymap_noinc_ornull(val)	((val) ? newSVGdkKeymap_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_KEYMAP */

#ifdef GDK_TYPE_LINE_STYLE
  /* GEnum GdkLineStyle */
# define SvGdkLineStyle(sv)	((GdkLineStyle)gperl_convert_enum (GDK_TYPE_LINE_STYLE, sv))
# define newSVGdkLineStyle(val)	(gperl_convert_back_enum (GDK_TYPE_LINE_STYLE, val))
#endif /* GDK_TYPE_LINE_STYLE */

#ifdef GDK_TYPE_MODIFIER_TYPE
  /* GFlags GdkModifierType */
# define SvGdkModifierType(sv)	((GdkModifierType)gperl_convert_flags (GDK_TYPE_MODIFIER_TYPE, sv))
# define newSVGdkModifierType(val)	(gperl_convert_back_flags (GDK_TYPE_MODIFIER_TYPE, val))
#endif /* GDK_TYPE_MODIFIER_TYPE */

#ifdef GDK_TYPE_NOTIFY_TYPE
  /* GEnum GdkNotifyType */
# define SvGdkNotifyType(sv)	((GdkNotifyType)gperl_convert_enum (GDK_TYPE_NOTIFY_TYPE, sv))
# define newSVGdkNotifyType(val)	(gperl_convert_back_enum (GDK_TYPE_NOTIFY_TYPE, val))
#endif /* GDK_TYPE_NOTIFY_TYPE */

#ifdef GDK_TYPE_OVERLAP_TYPE
  /* GEnum GdkOverlapType */
# define SvGdkOverlapType(sv)	((GdkOverlapType)gperl_convert_enum (GDK_TYPE_OVERLAP_TYPE, sv))
# define newSVGdkOverlapType(val)	(gperl_convert_back_enum (GDK_TYPE_OVERLAP_TYPE, val))
#endif /* GDK_TYPE_OVERLAP_TYPE */

#ifdef GDK_TYPE_PIXBUF_ALPHA_MODE
  /* GEnum GdkPixbufAlphaMode */
# define SvGdkPixbufAlphaMode(sv)	((GdkPixbufAlphaMode)gperl_convert_enum (GDK_TYPE_PIXBUF_ALPHA_MODE, sv))
# define newSVGdkPixbufAlphaMode(val)	(gperl_convert_back_enum (GDK_TYPE_PIXBUF_ALPHA_MODE, val))
#endif /* GDK_TYPE_PIXBUF_ALPHA_MODE */

#ifdef GDK_TYPE_PIXBUF_ANIMATION
  /* GObject derivative GdkPixbufAnimation */
# define SvGdkPixbufAnimation(sv)	((GdkPixbufAnimation*)gperl_get_object_check (sv, GDK_TYPE_PIXBUF_ANIMATION))
# define newSVGdkPixbufAnimation(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixbufAnimation GdkPixbufAnimation_ornull;
# define SvGdkPixbufAnimation_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixbufAnimation(sv) : NULL)
# define newSVGdkPixbufAnimation_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixbufAnimation GdkPixbufAnimation_noinc;
#define newSVGdkPixbufAnimation_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixbufAnimation GdkPixbufAnimation_noinc_ornull;
#define newSVGdkPixbufAnimation_noinc_ornull(val)	((val) ? newSVGdkPixbufAnimation_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXBUF_ANIMATION */

#ifdef GDK_TYPE_PIXBUF_ANIMATION_ITER
  /* GObject derivative GdkPixbufAnimationIter */
# define SvGdkPixbufAnimationIter(sv)	((GdkPixbufAnimationIter*)gperl_get_object_check (sv, GDK_TYPE_PIXBUF_ANIMATION_ITER))
# define newSVGdkPixbufAnimationIter(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixbufAnimationIter GdkPixbufAnimationIter_ornull;
# define SvGdkPixbufAnimationIter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixbufAnimationIter(sv) : NULL)
# define newSVGdkPixbufAnimationIter_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixbufAnimationIter GdkPixbufAnimationIter_noinc;
#define newSVGdkPixbufAnimationIter_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixbufAnimationIter GdkPixbufAnimationIter_noinc_ornull;
#define newSVGdkPixbufAnimationIter_noinc_ornull(val)	((val) ? newSVGdkPixbufAnimationIter_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXBUF_ANIMATION_ITER */

#ifdef GDK_TYPE_PIXBUF_ERROR
  /* GEnum GdkPixbufError */
# define SvGdkPixbufError(sv)	((GdkPixbufError)gperl_convert_enum (GDK_TYPE_PIXBUF_ERROR, sv))
# define newSVGdkPixbufError(val)	(gperl_convert_back_enum (GDK_TYPE_PIXBUF_ERROR, val))
#endif /* GDK_TYPE_PIXBUF_ERROR */

#ifdef GDK_TYPE_PIXBUF
  /* GObject derivative GdkPixbuf */
# define SvGdkPixbuf(sv)	((GdkPixbuf*)gperl_get_object_check (sv, GDK_TYPE_PIXBUF))
# define newSVGdkPixbuf(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixbuf GdkPixbuf_ornull;
# define SvGdkPixbuf_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixbuf(sv) : NULL)
# define newSVGdkPixbuf_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixbuf GdkPixbuf_noinc;
#define newSVGdkPixbuf_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixbuf GdkPixbuf_noinc_ornull;
#define newSVGdkPixbuf_noinc_ornull(val)	((val) ? newSVGdkPixbuf_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXBUF */

#ifdef GDK_TYPE_PIXBUF_LOADER
  /* GObject derivative GdkPixbufLoader */
# define SvGdkPixbufLoader(sv)	((GdkPixbufLoader*)gperl_get_object_check (sv, GDK_TYPE_PIXBUF_LOADER))
# define newSVGdkPixbufLoader(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixbufLoader GdkPixbufLoader_ornull;
# define SvGdkPixbufLoader_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixbufLoader(sv) : NULL)
# define newSVGdkPixbufLoader_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixbufLoader GdkPixbufLoader_noinc;
#define newSVGdkPixbufLoader_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixbufLoader GdkPixbufLoader_noinc_ornull;
#define newSVGdkPixbufLoader_noinc_ornull(val)	((val) ? newSVGdkPixbufLoader_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXBUF_LOADER */

#ifdef GDK_TYPE_PIXMAP
  /* GObject derivative GdkPixmap */
# define SvGdkPixmap(sv)	((GdkPixmap*)gperl_get_object_check (sv, GDK_TYPE_PIXMAP))
# define newSVGdkPixmap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixmap GdkPixmap_ornull;
# define SvGdkPixmap_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixmap(sv) : NULL)
# define newSVGdkPixmap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixmap GdkPixmap_noinc;
#define newSVGdkPixmap_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixmap GdkPixmap_noinc_ornull;
#define newSVGdkPixmap_noinc_ornull(val)	((val) ? newSVGdkPixmap_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXMAP */

#ifdef GDK_TYPE_PROPERTY_STATE
  /* GEnum GdkPropertyState */
# define SvGdkPropertyState(sv)	((GdkPropertyState)gperl_convert_enum (GDK_TYPE_PROPERTY_STATE, sv))
# define newSVGdkPropertyState(val)	(gperl_convert_back_enum (GDK_TYPE_PROPERTY_STATE, val))
#endif /* GDK_TYPE_PROPERTY_STATE */

#ifdef GDK_TYPE_PROP_MODE
  /* GEnum GdkPropMode */
# define SvGdkPropMode(sv)	((GdkPropMode)gperl_convert_enum (GDK_TYPE_PROP_MODE, sv))
# define newSVGdkPropMode(val)	(gperl_convert_back_enum (GDK_TYPE_PROP_MODE, val))
#endif /* GDK_TYPE_PROP_MODE */

#ifdef GDK_TYPE_RECTANGLE
  /* GBoxed GdkRectangle */
  typedef GdkRectangle GdkRectangle_ornull;
# define SvGdkRectangle(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_RECTANGLE))
# define SvGdkRectangle_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkRectangle (sv) : NULL)
  typedef GdkRectangle GdkRectangle_own;
  typedef GdkRectangle GdkRectangle_copy;
  typedef GdkRectangle GdkRectangle_own_ornull;
# define newSVGdkRectangle(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_RECTANGLE, FALSE))
# define newSVGdkRectangle_ornull(val)	((val) ? newSVGdkRectangle(val) : &PL_sv_undef)
# define newSVGdkRectangle_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_RECTANGLE, TRUE))
# define newSVGdkRectangle_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_RECTANGLE))
# define newSVGdkRectangle_own_ornull(val)	((val) ? newSVGdkRectangle_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_RECTANGLE */

#ifdef GDK_TYPE_RGB_DITHER
  /* GEnum GdkRgbDither */
# define SvGdkRgbDither(sv)	((GdkRgbDither)gperl_convert_enum (GDK_TYPE_RGB_DITHER, sv))
# define newSVGdkRgbDither(val)	(gperl_convert_back_enum (GDK_TYPE_RGB_DITHER, val))
#endif /* GDK_TYPE_RGB_DITHER */

#ifdef GDK_TYPE_SCROLL_DIRECTION
  /* GEnum GdkScrollDirection */
# define SvGdkScrollDirection(sv)	((GdkScrollDirection)gperl_convert_enum (GDK_TYPE_SCROLL_DIRECTION, sv))
# define newSVGdkScrollDirection(val)	(gperl_convert_back_enum (GDK_TYPE_SCROLL_DIRECTION, val))
#endif /* GDK_TYPE_SCROLL_DIRECTION */

#ifdef GDK_TYPE_SETTING_ACTION
  /* GEnum GdkSettingAction */
# define SvGdkSettingAction(sv)	((GdkSettingAction)gperl_convert_enum (GDK_TYPE_SETTING_ACTION, sv))
# define newSVGdkSettingAction(val)	(gperl_convert_back_enum (GDK_TYPE_SETTING_ACTION, val))
#endif /* GDK_TYPE_SETTING_ACTION */

#ifdef GDK_TYPE_STATUS
  /* GEnum GdkStatus */
# define SvGdkStatus(sv)	((GdkStatus)gperl_convert_enum (GDK_TYPE_STATUS, sv))
# define newSVGdkStatus(val)	(gperl_convert_back_enum (GDK_TYPE_STATUS, val))
#endif /* GDK_TYPE_STATUS */

#ifdef GDK_TYPE_SUBWINDOW_MODE
  /* GEnum GdkSubwindowMode */
# define SvGdkSubwindowMode(sv)	((GdkSubwindowMode)gperl_convert_enum (GDK_TYPE_SUBWINDOW_MODE, sv))
# define newSVGdkSubwindowMode(val)	(gperl_convert_back_enum (GDK_TYPE_SUBWINDOW_MODE, val))
#endif /* GDK_TYPE_SUBWINDOW_MODE */

#ifdef GDK_TYPE_VISIBILITY_STATE
  /* GEnum GdkVisibilityState */
# define SvGdkVisibilityState(sv)	((GdkVisibilityState)gperl_convert_enum (GDK_TYPE_VISIBILITY_STATE, sv))
# define newSVGdkVisibilityState(val)	(gperl_convert_back_enum (GDK_TYPE_VISIBILITY_STATE, val))
#endif /* GDK_TYPE_VISIBILITY_STATE */

#ifdef GDK_TYPE_VISUAL
  /* GObject derivative GdkVisual */
# define SvGdkVisual(sv)	((GdkVisual*)gperl_get_object_check (sv, GDK_TYPE_VISUAL))
# define newSVGdkVisual(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkVisual GdkVisual_ornull;
# define SvGdkVisual_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkVisual(sv) : NULL)
# define newSVGdkVisual_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkVisual GdkVisual_noinc;
#define newSVGdkVisual_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkVisual GdkVisual_noinc_ornull;
#define newSVGdkVisual_noinc_ornull(val)	((val) ? newSVGdkVisual_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_VISUAL */

#ifdef GDK_TYPE_VISUAL_TYPE
  /* GEnum GdkVisualType */
# define SvGdkVisualType(sv)	((GdkVisualType)gperl_convert_enum (GDK_TYPE_VISUAL_TYPE, sv))
# define newSVGdkVisualType(val)	(gperl_convert_back_enum (GDK_TYPE_VISUAL_TYPE, val))
#endif /* GDK_TYPE_VISUAL_TYPE */

#ifdef GDK_TYPE_WINDOW_ATTRIBUTES_TYPE
  /* GFlags GdkWindowAttributesType */
# define SvGdkWindowAttributesType(sv)	((GdkWindowAttributesType)gperl_convert_flags (GDK_TYPE_WINDOW_ATTRIBUTES_TYPE, sv))
# define newSVGdkWindowAttributesType(val)	(gperl_convert_back_flags (GDK_TYPE_WINDOW_ATTRIBUTES_TYPE, val))
#endif /* GDK_TYPE_WINDOW_ATTRIBUTES_TYPE */

#ifdef GDK_TYPE_WINDOW_CLASS
  /* GEnum GdkWindowClass */
# define SvGdkWindowClass(sv)	((GdkWindowClass)gperl_convert_enum (GDK_TYPE_WINDOW_CLASS, sv))
# define newSVGdkWindowClass(val)	(gperl_convert_back_enum (GDK_TYPE_WINDOW_CLASS, val))
#endif /* GDK_TYPE_WINDOW_CLASS */

#ifdef GDK_TYPE_WINDOW_EDGE
  /* GEnum GdkWindowEdge */
# define SvGdkWindowEdge(sv)	((GdkWindowEdge)gperl_convert_enum (GDK_TYPE_WINDOW_EDGE, sv))
# define newSVGdkWindowEdge(val)	(gperl_convert_back_enum (GDK_TYPE_WINDOW_EDGE, val))
#endif /* GDK_TYPE_WINDOW_EDGE */

#ifdef GDK_TYPE_WINDOW
  /* GObject derivative GdkWindow */
# define SvGdkWindow(sv)	((GdkWindow*)gperl_get_object_check (sv, GDK_TYPE_WINDOW))
# define newSVGdkWindow(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkWindow GdkWindow_ornull;
# define SvGdkWindow_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkWindow(sv) : NULL)
# define newSVGdkWindow_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkWindow GdkWindow_noinc;
#define newSVGdkWindow_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkWindow GdkWindow_noinc_ornull;
#define newSVGdkWindow_noinc_ornull(val)	((val) ? newSVGdkWindow_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_WINDOW */

#ifdef GDK_TYPE_WINDOW_HINTS
  /* GFlags GdkWindowHints */
# define SvGdkWindowHints(sv)	((GdkWindowHints)gperl_convert_flags (GDK_TYPE_WINDOW_HINTS, sv))
# define newSVGdkWindowHints(val)	(gperl_convert_back_flags (GDK_TYPE_WINDOW_HINTS, val))
#endif /* GDK_TYPE_WINDOW_HINTS */

#ifdef GDK_TYPE_WINDOW_STATE
  /* GFlags GdkWindowState */
# define SvGdkWindowState(sv)	((GdkWindowState)gperl_convert_flags (GDK_TYPE_WINDOW_STATE, sv))
# define newSVGdkWindowState(val)	(gperl_convert_back_flags (GDK_TYPE_WINDOW_STATE, val))
#endif /* GDK_TYPE_WINDOW_STATE */

#ifdef GDK_TYPE_WINDOW_TYPE
  /* GEnum GdkWindowType */
# define SvGdkWindowType(sv)	((GdkWindowType)gperl_convert_enum (GDK_TYPE_WINDOW_TYPE, sv))
# define newSVGdkWindowType(val)	(gperl_convert_back_enum (GDK_TYPE_WINDOW_TYPE, val))
#endif /* GDK_TYPE_WINDOW_TYPE */

#ifdef GDK_TYPE_WINDOW_TYPE_HINT
  /* GEnum GdkWindowTypeHint */
# define SvGdkWindowTypeHint(sv)	((GdkWindowTypeHint)gperl_convert_enum (GDK_TYPE_WINDOW_TYPE_HINT, sv))
# define newSVGdkWindowTypeHint(val)	(gperl_convert_back_enum (GDK_TYPE_WINDOW_TYPE_HINT, val))
#endif /* GDK_TYPE_WINDOW_TYPE_HINT */

#ifdef GDK_TYPE_WM_DECORATION
  /* GFlags GdkWMDecoration */
# define SvGdkWMDecoration(sv)	((GdkWMDecoration)gperl_convert_flags (GDK_TYPE_WM_DECORATION, sv))
# define newSVGdkWMDecoration(val)	(gperl_convert_back_flags (GDK_TYPE_WM_DECORATION, val))
#endif /* GDK_TYPE_WM_DECORATION */

#ifdef GDK_TYPE_WM_FUNCTION
  /* GFlags GdkWMFunction */
# define SvGdkWMFunction(sv)	((GdkWMFunction)gperl_convert_flags (GDK_TYPE_WM_FUNCTION, sv))
# define newSVGdkWMFunction(val)	(gperl_convert_back_flags (GDK_TYPE_WM_FUNCTION, val))
#endif /* GDK_TYPE_WM_FUNCTION */

#ifdef GTK_TYPE_ACCEL_FLAGS
  /* GFlags GtkAccelFlags */
# define SvGtkAccelFlags(sv)	((GtkAccelFlags)gperl_convert_flags (GTK_TYPE_ACCEL_FLAGS, sv))
# define newSVGtkAccelFlags(val)	(gperl_convert_back_flags (GTK_TYPE_ACCEL_FLAGS, val))
#endif /* GTK_TYPE_ACCEL_FLAGS */

#ifdef GTK_TYPE_ACCEL_GROUP
  /* GObject derivative GtkAccelGroup */
# define SvGtkAccelGroup(sv)	((GtkAccelGroup*)gperl_get_object_check (sv, GTK_TYPE_ACCEL_GROUP))
# define newSVGtkAccelGroup(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkAccelGroup GtkAccelGroup_ornull;
# define SvGtkAccelGroup_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAccelGroup(sv) : NULL)
# define newSVGtkAccelGroup_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkAccelGroup GtkAccelGroup_noinc;
#define newSVGtkAccelGroup_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkAccelGroup GtkAccelGroup_noinc_ornull;
#define newSVGtkAccelGroup_noinc_ornull(val)	((val) ? newSVGtkAccelGroup_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACCEL_GROUP */

#ifdef GTK_TYPE_ACCEL_LABEL
  /* GtkObject derivative GtkAccelLabel */
# define SvGtkAccelLabel(sv)	((GtkAccelLabel*)gperl_get_object_check (sv, GTK_TYPE_ACCEL_LABEL))
# define newSVGtkAccelLabel(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAccelLabel GtkAccelLabel_ornull;
# define SvGtkAccelLabel_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAccelLabel(sv) : NULL)
# define newSVGtkAccelLabel_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ACCEL_LABEL */

#ifdef GTK_TYPE_ACCESSIBLE
  /* GObject derivative GtkAccessible */
# define SvGtkAccessible(sv)	((GtkAccessible*)gperl_get_object_check (sv, GTK_TYPE_ACCESSIBLE))
# define newSVGtkAccessible(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkAccessible GtkAccessible_ornull;
# define SvGtkAccessible_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAccessible(sv) : NULL)
# define newSVGtkAccessible_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkAccessible GtkAccessible_noinc;
#define newSVGtkAccessible_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkAccessible GtkAccessible_noinc_ornull;
#define newSVGtkAccessible_noinc_ornull(val)	((val) ? newSVGtkAccessible_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACCESSIBLE */

#ifdef GTK_TYPE_ADJUSTMENT
  /* GtkObject derivative GtkAdjustment */
# define SvGtkAdjustment(sv)	((GtkAdjustment*)gperl_get_object_check (sv, GTK_TYPE_ADJUSTMENT))
# define newSVGtkAdjustment(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAdjustment GtkAdjustment_ornull;
# define SvGtkAdjustment_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAdjustment(sv) : NULL)
# define newSVGtkAdjustment_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ADJUSTMENT */

#ifdef GTK_TYPE_ALIGNMENT
  /* GtkObject derivative GtkAlignment */
# define SvGtkAlignment(sv)	((GtkAlignment*)gperl_get_object_check (sv, GTK_TYPE_ALIGNMENT))
# define newSVGtkAlignment(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAlignment GtkAlignment_ornull;
# define SvGtkAlignment_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAlignment(sv) : NULL)
# define newSVGtkAlignment_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ALIGNMENT */

#ifdef GTK_TYPE_ANCHOR_TYPE
  /* GEnum GtkAnchorType */
# define SvGtkAnchorType(sv)	((GtkAnchorType)gperl_convert_enum (GTK_TYPE_ANCHOR_TYPE, sv))
# define newSVGtkAnchorType(val)	(gperl_convert_back_enum (GTK_TYPE_ANCHOR_TYPE, val))
#endif /* GTK_TYPE_ANCHOR_TYPE */

#ifdef GTK_TYPE_ARG_FLAGS
  /* GFlags GtkArgFlags */
# define SvGtkArgFlags(sv)	((GtkArgFlags)gperl_convert_flags (GTK_TYPE_ARG_FLAGS, sv))
# define newSVGtkArgFlags(val)	(gperl_convert_back_flags (GTK_TYPE_ARG_FLAGS, val))
#endif /* GTK_TYPE_ARG_FLAGS */

#ifdef GTK_TYPE_ARROW
  /* GtkObject derivative GtkArrow */
# define SvGtkArrow(sv)	((GtkArrow*)gperl_get_object_check (sv, GTK_TYPE_ARROW))
# define newSVGtkArrow(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkArrow GtkArrow_ornull;
# define SvGtkArrow_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkArrow(sv) : NULL)
# define newSVGtkArrow_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ARROW */

#ifdef GTK_TYPE_ARROW_TYPE
  /* GEnum GtkArrowType */
# define SvGtkArrowType(sv)	((GtkArrowType)gperl_convert_enum (GTK_TYPE_ARROW_TYPE, sv))
# define newSVGtkArrowType(val)	(gperl_convert_back_enum (GTK_TYPE_ARROW_TYPE, val))
#endif /* GTK_TYPE_ARROW_TYPE */

#ifdef GTK_TYPE_ASPECT_FRAME
  /* GtkObject derivative GtkAspectFrame */
# define SvGtkAspectFrame(sv)	((GtkAspectFrame*)gperl_get_object_check (sv, GTK_TYPE_ASPECT_FRAME))
# define newSVGtkAspectFrame(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAspectFrame GtkAspectFrame_ornull;
# define SvGtkAspectFrame_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAspectFrame(sv) : NULL)
# define newSVGtkAspectFrame_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ASPECT_FRAME */

#ifdef GTK_TYPE_ATTACH_OPTIONS
  /* GFlags GtkAttachOptions */
# define SvGtkAttachOptions(sv)	((GtkAttachOptions)gperl_convert_flags (GTK_TYPE_ATTACH_OPTIONS, sv))
# define newSVGtkAttachOptions(val)	(gperl_convert_back_flags (GTK_TYPE_ATTACH_OPTIONS, val))
#endif /* GTK_TYPE_ATTACH_OPTIONS */

#ifdef GTK_TYPE_BIN
  /* GtkObject derivative GtkBin */
# define SvGtkBin(sv)	((GtkBin*)gperl_get_object_check (sv, GTK_TYPE_BIN))
# define newSVGtkBin(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkBin GtkBin_ornull;
# define SvGtkBin_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkBin(sv) : NULL)
# define newSVGtkBin_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_BIN */

#ifdef GTK_TYPE_BORDER
  /* GBoxed GtkBorder */
  typedef GtkBorder GtkBorder_ornull;
# define SvGtkBorder(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_BORDER))
# define SvGtkBorder_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkBorder (sv) : NULL)
  typedef GtkBorder GtkBorder_own;
  typedef GtkBorder GtkBorder_copy;
  typedef GtkBorder GtkBorder_own_ornull;
# define newSVGtkBorder(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_BORDER, FALSE))
# define newSVGtkBorder_ornull(val)	((val) ? newSVGtkBorder(val) : &PL_sv_undef)
# define newSVGtkBorder_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_BORDER, TRUE))
# define newSVGtkBorder_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_BORDER))
# define newSVGtkBorder_own_ornull(val)	((val) ? newSVGtkBorder_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_BORDER */

#ifdef GTK_TYPE_BOX
  /* GtkObject derivative GtkBox */
# define SvGtkBox(sv)	((GtkBox*)gperl_get_object_check (sv, GTK_TYPE_BOX))
# define newSVGtkBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkBox GtkBox_ornull;
# define SvGtkBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkBox(sv) : NULL)
# define newSVGtkBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_BOX */

#ifdef GTK_TYPE_BUTTON_BOX
  /* GtkObject derivative GtkButtonBox */
# define SvGtkButtonBox(sv)	((GtkButtonBox*)gperl_get_object_check (sv, GTK_TYPE_BUTTON_BOX))
# define newSVGtkButtonBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkButtonBox GtkButtonBox_ornull;
# define SvGtkButtonBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkButtonBox(sv) : NULL)
# define newSVGtkButtonBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_BUTTON_BOX */

#ifdef GTK_TYPE_BUTTON_BOX_STYLE
  /* GEnum GtkButtonBoxStyle */
# define SvGtkButtonBoxStyle(sv)	((GtkButtonBoxStyle)gperl_convert_enum (GTK_TYPE_BUTTON_BOX_STYLE, sv))
# define newSVGtkButtonBoxStyle(val)	(gperl_convert_back_enum (GTK_TYPE_BUTTON_BOX_STYLE, val))
#endif /* GTK_TYPE_BUTTON_BOX_STYLE */

#ifdef GTK_TYPE_BUTTON
  /* GtkObject derivative GtkButton */
# define SvGtkButton(sv)	((GtkButton*)gperl_get_object_check (sv, GTK_TYPE_BUTTON))
# define newSVGtkButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkButton GtkButton_ornull;
# define SvGtkButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkButton(sv) : NULL)
# define newSVGtkButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_BUTTON */

#ifdef GTK_TYPE_BUTTONS_TYPE
  /* GEnum GtkButtonsType */
# define SvGtkButtonsType(sv)	((GtkButtonsType)gperl_convert_enum (GTK_TYPE_BUTTONS_TYPE, sv))
# define newSVGtkButtonsType(val)	(gperl_convert_back_enum (GTK_TYPE_BUTTONS_TYPE, val))
#endif /* GTK_TYPE_BUTTONS_TYPE */

#ifdef GTK_TYPE_CALENDAR_DISPLAY_OPTIONS
  /* GFlags GtkCalendarDisplayOptions */
# define SvGtkCalendarDisplayOptions(sv)	((GtkCalendarDisplayOptions)gperl_convert_flags (GTK_TYPE_CALENDAR_DISPLAY_OPTIONS, sv))
# define newSVGtkCalendarDisplayOptions(val)	(gperl_convert_back_flags (GTK_TYPE_CALENDAR_DISPLAY_OPTIONS, val))
#endif /* GTK_TYPE_CALENDAR_DISPLAY_OPTIONS */

#ifdef GTK_TYPE_CALENDAR
  /* GtkObject derivative GtkCalendar */
# define SvGtkCalendar(sv)	((GtkCalendar*)gperl_get_object_check (sv, GTK_TYPE_CALENDAR))
# define newSVGtkCalendar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCalendar GtkCalendar_ornull;
# define SvGtkCalendar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCalendar(sv) : NULL)
# define newSVGtkCalendar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CALENDAR */

#ifdef GTK_TYPE_CELL_EDITABLE
  /* GInterface derivative GtkCellEditable */
# define SvGtkCellEditable(sv)	((GtkCellEditable*)gperl_get_object_check (sv, GTK_TYPE_CELL_EDITABLE))
# define newSVGtkCellEditable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkCellEditable GtkCellEditable_ornull;
# define SvGtkCellEditable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellEditable(sv) : NULL)
# define newSVGtkCellEditable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_CELL_EDITABLE */

#ifdef GTK_TYPE_CELL_RENDERER
  /* GtkObject derivative GtkCellRenderer */
# define SvGtkCellRenderer(sv)	((GtkCellRenderer*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER))
# define newSVGtkCellRenderer(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRenderer GtkCellRenderer_ornull;
# define SvGtkCellRenderer_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRenderer(sv) : NULL)
# define newSVGtkCellRenderer_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER */

#ifdef GTK_TYPE_CELL_RENDERER_MODE
  /* GEnum GtkCellRendererMode */
# define SvGtkCellRendererMode(sv)	((GtkCellRendererMode)gperl_convert_enum (GTK_TYPE_CELL_RENDERER_MODE, sv))
# define newSVGtkCellRendererMode(val)	(gperl_convert_back_enum (GTK_TYPE_CELL_RENDERER_MODE, val))
#endif /* GTK_TYPE_CELL_RENDERER_MODE */

#ifdef GTK_TYPE_CELL_RENDERER_PIXBUF
  /* GtkObject derivative GtkCellRendererPixbuf */
# define SvGtkCellRendererPixbuf(sv)	((GtkCellRendererPixbuf*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_PIXBUF))
# define newSVGtkCellRendererPixbuf(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererPixbuf GtkCellRendererPixbuf_ornull;
# define SvGtkCellRendererPixbuf_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererPixbuf(sv) : NULL)
# define newSVGtkCellRendererPixbuf_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_PIXBUF */

#ifdef GTK_TYPE_CELL_RENDERER_STATE
  /* GFlags GtkCellRendererState */
# define SvGtkCellRendererState(sv)	((GtkCellRendererState)gperl_convert_flags (GTK_TYPE_CELL_RENDERER_STATE, sv))
# define newSVGtkCellRendererState(val)	(gperl_convert_back_flags (GTK_TYPE_CELL_RENDERER_STATE, val))
#endif /* GTK_TYPE_CELL_RENDERER_STATE */

#ifdef GTK_TYPE_CELL_RENDERER_TEXT
  /* GtkObject derivative GtkCellRendererText */
# define SvGtkCellRendererText(sv)	((GtkCellRendererText*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_TEXT))
# define newSVGtkCellRendererText(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererText GtkCellRendererText_ornull;
# define SvGtkCellRendererText_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererText(sv) : NULL)
# define newSVGtkCellRendererText_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_TEXT */

#ifdef GTK_TYPE_CELL_RENDERER_TOGGLE
  /* GtkObject derivative GtkCellRendererToggle */
# define SvGtkCellRendererToggle(sv)	((GtkCellRendererToggle*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_TOGGLE))
# define newSVGtkCellRendererToggle(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererToggle GtkCellRendererToggle_ornull;
# define SvGtkCellRendererToggle_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererToggle(sv) : NULL)
# define newSVGtkCellRendererToggle_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_TOGGLE */

#ifdef GTK_TYPE_CHECK_BUTTON
  /* GtkObject derivative GtkCheckButton */
# define SvGtkCheckButton(sv)	((GtkCheckButton*)gperl_get_object_check (sv, GTK_TYPE_CHECK_BUTTON))
# define newSVGtkCheckButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCheckButton GtkCheckButton_ornull;
# define SvGtkCheckButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCheckButton(sv) : NULL)
# define newSVGtkCheckButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CHECK_BUTTON */

#ifdef GTK_TYPE_CHECK_MENU_ITEM
  /* GtkObject derivative GtkCheckMenuItem */
# define SvGtkCheckMenuItem(sv)	((GtkCheckMenuItem*)gperl_get_object_check (sv, GTK_TYPE_CHECK_MENU_ITEM))
# define newSVGtkCheckMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCheckMenuItem GtkCheckMenuItem_ornull;
# define SvGtkCheckMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCheckMenuItem(sv) : NULL)
# define newSVGtkCheckMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CHECK_MENU_ITEM */

#ifdef GTK_TYPE_COLOR_SELECTION_DIALOG
  /* GtkObject derivative GtkColorSelectionDialog */
# define SvGtkColorSelectionDialog(sv)	((GtkColorSelectionDialog*)gperl_get_object_check (sv, GTK_TYPE_COLOR_SELECTION_DIALOG))
# define newSVGtkColorSelectionDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkColorSelectionDialog GtkColorSelectionDialog_ornull;
# define SvGtkColorSelectionDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkColorSelectionDialog(sv) : NULL)
# define newSVGtkColorSelectionDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COLOR_SELECTION_DIALOG */

#ifdef GTK_TYPE_COLOR_SELECTION
  /* GtkObject derivative GtkColorSelection */
# define SvGtkColorSelection(sv)	((GtkColorSelection*)gperl_get_object_check (sv, GTK_TYPE_COLOR_SELECTION))
# define newSVGtkColorSelection(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkColorSelection GtkColorSelection_ornull;
# define SvGtkColorSelection_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkColorSelection(sv) : NULL)
# define newSVGtkColorSelection_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COLOR_SELECTION */

#ifdef GTK_TYPE_COMBO
  /* GtkObject derivative GtkCombo */
# define SvGtkCombo(sv)	((GtkCombo*)gperl_get_object_check (sv, GTK_TYPE_COMBO))
# define newSVGtkCombo(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCombo GtkCombo_ornull;
# define SvGtkCombo_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCombo(sv) : NULL)
# define newSVGtkCombo_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COMBO */

#ifdef GTK_TYPE_CONTAINER
  /* GtkObject derivative GtkContainer */
# define SvGtkContainer(sv)	((GtkContainer*)gperl_get_object_check (sv, GTK_TYPE_CONTAINER))
# define newSVGtkContainer(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkContainer GtkContainer_ornull;
# define SvGtkContainer_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkContainer(sv) : NULL)
# define newSVGtkContainer_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CONTAINER */

#ifdef GTK_TYPE_CORNER_TYPE
  /* GEnum GtkCornerType */
# define SvGtkCornerType(sv)	((GtkCornerType)gperl_convert_enum (GTK_TYPE_CORNER_TYPE, sv))
# define newSVGtkCornerType(val)	(gperl_convert_back_enum (GTK_TYPE_CORNER_TYPE, val))
#endif /* GTK_TYPE_CORNER_TYPE */

#ifdef GTK_TYPE_CURVE
  /* GtkObject derivative GtkCurve */
# define SvGtkCurve(sv)	((GtkCurve*)gperl_get_object_check (sv, GTK_TYPE_CURVE))
# define newSVGtkCurve(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCurve GtkCurve_ornull;
# define SvGtkCurve_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCurve(sv) : NULL)
# define newSVGtkCurve_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CURVE */

#ifdef GTK_TYPE_CURVE_TYPE
  /* GEnum GtkCurveType */
# define SvGtkCurveType(sv)	((GtkCurveType)gperl_convert_enum (GTK_TYPE_CURVE_TYPE, sv))
# define newSVGtkCurveType(val)	(gperl_convert_back_enum (GTK_TYPE_CURVE_TYPE, val))
#endif /* GTK_TYPE_CURVE_TYPE */

#ifdef GTK_TYPE_DEBUG_FLAG
  /* GFlags GtkDebugFlag */
# define SvGtkDebugFlag(sv)	((GtkDebugFlag)gperl_convert_flags (GTK_TYPE_DEBUG_FLAG, sv))
# define newSVGtkDebugFlag(val)	(gperl_convert_back_flags (GTK_TYPE_DEBUG_FLAG, val))
#endif /* GTK_TYPE_DEBUG_FLAG */

#ifdef GTK_TYPE_DELETE_TYPE
  /* GEnum GtkDeleteType */
# define SvGtkDeleteType(sv)	((GtkDeleteType)gperl_convert_enum (GTK_TYPE_DELETE_TYPE, sv))
# define newSVGtkDeleteType(val)	(gperl_convert_back_enum (GTK_TYPE_DELETE_TYPE, val))
#endif /* GTK_TYPE_DELETE_TYPE */

#ifdef GTK_TYPE_DEST_DEFAULTS
  /* GFlags GtkDestDefaults */
# define SvGtkDestDefaults(sv)	((GtkDestDefaults)gperl_convert_flags (GTK_TYPE_DEST_DEFAULTS, sv))
# define newSVGtkDestDefaults(val)	(gperl_convert_back_flags (GTK_TYPE_DEST_DEFAULTS, val))
#endif /* GTK_TYPE_DEST_DEFAULTS */

#ifdef GTK_TYPE_DIALOG_FLAGS
  /* GFlags GtkDialogFlags */
# define SvGtkDialogFlags(sv)	((GtkDialogFlags)gperl_convert_flags (GTK_TYPE_DIALOG_FLAGS, sv))
# define newSVGtkDialogFlags(val)	(gperl_convert_back_flags (GTK_TYPE_DIALOG_FLAGS, val))
#endif /* GTK_TYPE_DIALOG_FLAGS */

#ifdef GTK_TYPE_DIALOG
  /* GtkObject derivative GtkDialog */
# define SvGtkDialog(sv)	((GtkDialog*)gperl_get_object_check (sv, GTK_TYPE_DIALOG))
# define newSVGtkDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkDialog GtkDialog_ornull;
# define SvGtkDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkDialog(sv) : NULL)
# define newSVGtkDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_DIALOG */

#ifdef GTK_TYPE_DIRECTION_TYPE
  /* GEnum GtkDirectionType */
# define SvGtkDirectionType(sv)	((GtkDirectionType)gperl_convert_enum (GTK_TYPE_DIRECTION_TYPE, sv))
# define newSVGtkDirectionType(val)	(gperl_convert_back_enum (GTK_TYPE_DIRECTION_TYPE, val))
#endif /* GTK_TYPE_DIRECTION_TYPE */

#ifdef GTK_TYPE_DRAWING_AREA
  /* GtkObject derivative GtkDrawingArea */
# define SvGtkDrawingArea(sv)	((GtkDrawingArea*)gperl_get_object_check (sv, GTK_TYPE_DRAWING_AREA))
# define newSVGtkDrawingArea(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkDrawingArea GtkDrawingArea_ornull;
# define SvGtkDrawingArea_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkDrawingArea(sv) : NULL)
# define newSVGtkDrawingArea_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_DRAWING_AREA */

#ifdef GTK_TYPE_EDITABLE
  /* GInterface derivative GtkEditable */
# define SvGtkEditable(sv)	((GtkEditable*)gperl_get_object_check (sv, GTK_TYPE_EDITABLE))
# define newSVGtkEditable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkEditable GtkEditable_ornull;
# define SvGtkEditable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkEditable(sv) : NULL)
# define newSVGtkEditable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_EDITABLE */

#ifdef GTK_TYPE_ENTRY
  /* GtkObject derivative GtkEntry */
# define SvGtkEntry(sv)	((GtkEntry*)gperl_get_object_check (sv, GTK_TYPE_ENTRY))
# define newSVGtkEntry(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkEntry GtkEntry_ornull;
# define SvGtkEntry_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkEntry(sv) : NULL)
# define newSVGtkEntry_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ENTRY */

#ifdef GTK_TYPE_EVENT_BOX
  /* GtkObject derivative GtkEventBox */
# define SvGtkEventBox(sv)	((GtkEventBox*)gperl_get_object_check (sv, GTK_TYPE_EVENT_BOX))
# define newSVGtkEventBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkEventBox GtkEventBox_ornull;
# define SvGtkEventBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkEventBox(sv) : NULL)
# define newSVGtkEventBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_EVENT_BOX */

#ifdef GTK_TYPE_EXPANDER_STYLE
  /* GEnum GtkExpanderStyle */
# define SvGtkExpanderStyle(sv)	((GtkExpanderStyle)gperl_convert_enum (GTK_TYPE_EXPANDER_STYLE, sv))
# define newSVGtkExpanderStyle(val)	(gperl_convert_back_enum (GTK_TYPE_EXPANDER_STYLE, val))
#endif /* GTK_TYPE_EXPANDER_STYLE */

#ifdef GTK_TYPE_FILE_SELECTION
  /* GtkObject derivative GtkFileSelection */
# define SvGtkFileSelection(sv)	((GtkFileSelection*)gperl_get_object_check (sv, GTK_TYPE_FILE_SELECTION))
# define newSVGtkFileSelection(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFileSelection GtkFileSelection_ornull;
# define SvGtkFileSelection_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileSelection(sv) : NULL)
# define newSVGtkFileSelection_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FILE_SELECTION */

#ifdef GTK_TYPE_FIXED
  /* GtkObject derivative GtkFixed */
# define SvGtkFixed(sv)	((GtkFixed*)gperl_get_object_check (sv, GTK_TYPE_FIXED))
# define newSVGtkFixed(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFixed GtkFixed_ornull;
# define SvGtkFixed_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFixed(sv) : NULL)
# define newSVGtkFixed_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FIXED */

#ifdef GTK_TYPE_FONT_SELECTION_DIALOG
  /* GtkObject derivative GtkFontSelectionDialog */
# define SvGtkFontSelectionDialog(sv)	((GtkFontSelectionDialog*)gperl_get_object_check (sv, GTK_TYPE_FONT_SELECTION_DIALOG))
# define newSVGtkFontSelectionDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFontSelectionDialog GtkFontSelectionDialog_ornull;
# define SvGtkFontSelectionDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFontSelectionDialog(sv) : NULL)
# define newSVGtkFontSelectionDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FONT_SELECTION_DIALOG */

#ifdef GTK_TYPE_FONT_SELECTION
  /* GtkObject derivative GtkFontSelection */
# define SvGtkFontSelection(sv)	((GtkFontSelection*)gperl_get_object_check (sv, GTK_TYPE_FONT_SELECTION))
# define newSVGtkFontSelection(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFontSelection GtkFontSelection_ornull;
# define SvGtkFontSelection_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFontSelection(sv) : NULL)
# define newSVGtkFontSelection_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FONT_SELECTION */

#ifdef GTK_TYPE_FRAME
  /* GtkObject derivative GtkFrame */
# define SvGtkFrame(sv)	((GtkFrame*)gperl_get_object_check (sv, GTK_TYPE_FRAME))
# define newSVGtkFrame(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFrame GtkFrame_ornull;
# define SvGtkFrame_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFrame(sv) : NULL)
# define newSVGtkFrame_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FRAME */

#ifdef GTK_TYPE_GAMMA_CURVE
  /* GtkObject derivative GtkGammaCurve */
# define SvGtkGammaCurve(sv)	((GtkGammaCurve*)gperl_get_object_check (sv, GTK_TYPE_GAMMA_CURVE))
# define newSVGtkGammaCurve(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkGammaCurve GtkGammaCurve_ornull;
# define SvGtkGammaCurve_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkGammaCurve(sv) : NULL)
# define newSVGtkGammaCurve_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_GAMMA_CURVE */

#ifdef GTK_TYPE_HANDLE_BOX
  /* GtkObject derivative GtkHandleBox */
# define SvGtkHandleBox(sv)	((GtkHandleBox*)gperl_get_object_check (sv, GTK_TYPE_HANDLE_BOX))
# define newSVGtkHandleBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHandleBox GtkHandleBox_ornull;
# define SvGtkHandleBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHandleBox(sv) : NULL)
# define newSVGtkHandleBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HANDLE_BOX */

#ifdef GTK_TYPE_HBOX
  /* GtkObject derivative GtkHBox */
# define SvGtkHBox(sv)	((GtkHBox*)gperl_get_object_check (sv, GTK_TYPE_HBOX))
# define newSVGtkHBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHBox GtkHBox_ornull;
# define SvGtkHBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHBox(sv) : NULL)
# define newSVGtkHBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HBOX */

#ifdef GTK_TYPE_HBUTTON_BOX
  /* GtkObject derivative GtkHButtonBox */
# define SvGtkHButtonBox(sv)	((GtkHButtonBox*)gperl_get_object_check (sv, GTK_TYPE_HBUTTON_BOX))
# define newSVGtkHButtonBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHButtonBox GtkHButtonBox_ornull;
# define SvGtkHButtonBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHButtonBox(sv) : NULL)
# define newSVGtkHButtonBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HBUTTON_BOX */

#ifdef GTK_TYPE_HPANED
  /* GtkObject derivative GtkHPaned */
# define SvGtkHPaned(sv)	((GtkHPaned*)gperl_get_object_check (sv, GTK_TYPE_HPANED))
# define newSVGtkHPaned(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHPaned GtkHPaned_ornull;
# define SvGtkHPaned_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHPaned(sv) : NULL)
# define newSVGtkHPaned_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HPANED */

#ifdef GTK_TYPE_HRULER
  /* GtkObject derivative GtkHRuler */
# define SvGtkHRuler(sv)	((GtkHRuler*)gperl_get_object_check (sv, GTK_TYPE_HRULER))
# define newSVGtkHRuler(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHRuler GtkHRuler_ornull;
# define SvGtkHRuler_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHRuler(sv) : NULL)
# define newSVGtkHRuler_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HRULER */

#ifdef GTK_TYPE_HSCALE
  /* GtkObject derivative GtkHScale */
# define SvGtkHScale(sv)	((GtkHScale*)gperl_get_object_check (sv, GTK_TYPE_HSCALE))
# define newSVGtkHScale(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHScale GtkHScale_ornull;
# define SvGtkHScale_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHScale(sv) : NULL)
# define newSVGtkHScale_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HSCALE */

#ifdef GTK_TYPE_HSCROLLBAR
  /* GtkObject derivative GtkHScrollbar */
# define SvGtkHScrollbar(sv)	((GtkHScrollbar*)gperl_get_object_check (sv, GTK_TYPE_HSCROLLBAR))
# define newSVGtkHScrollbar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHScrollbar GtkHScrollbar_ornull;
# define SvGtkHScrollbar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHScrollbar(sv) : NULL)
# define newSVGtkHScrollbar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HSCROLLBAR */

#ifdef GTK_TYPE_HSEPARATOR
  /* GtkObject derivative GtkHSeparator */
# define SvGtkHSeparator(sv)	((GtkHSeparator*)gperl_get_object_check (sv, GTK_TYPE_HSEPARATOR))
# define newSVGtkHSeparator(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkHSeparator GtkHSeparator_ornull;
# define SvGtkHSeparator_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkHSeparator(sv) : NULL)
# define newSVGtkHSeparator_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_HSEPARATOR */

#ifdef GTK_TYPE_ICON_FACTORY
  /* GObject derivative GtkIconFactory */
# define SvGtkIconFactory(sv)	((GtkIconFactory*)gperl_get_object_check (sv, GTK_TYPE_ICON_FACTORY))
# define newSVGtkIconFactory(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkIconFactory GtkIconFactory_ornull;
# define SvGtkIconFactory_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconFactory(sv) : NULL)
# define newSVGtkIconFactory_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkIconFactory GtkIconFactory_noinc;
#define newSVGtkIconFactory_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkIconFactory GtkIconFactory_noinc_ornull;
#define newSVGtkIconFactory_noinc_ornull(val)	((val) ? newSVGtkIconFactory_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ICON_FACTORY */

#ifdef GTK_TYPE_ICON_SET
  /* GBoxed GtkIconSet */
  typedef GtkIconSet GtkIconSet_ornull;
# define SvGtkIconSet(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_ICON_SET))
# define SvGtkIconSet_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconSet (sv) : NULL)
  typedef GtkIconSet GtkIconSet_own;
  typedef GtkIconSet GtkIconSet_copy;
  typedef GtkIconSet GtkIconSet_own_ornull;
# define newSVGtkIconSet(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_SET, FALSE))
# define newSVGtkIconSet_ornull(val)	((val) ? newSVGtkIconSet(val) : &PL_sv_undef)
# define newSVGtkIconSet_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_SET, TRUE))
# define newSVGtkIconSet_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_ICON_SET))
# define newSVGtkIconSet_own_ornull(val)	((val) ? newSVGtkIconSet_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ICON_SET */

#ifdef GTK_TYPE_ICON_SIZE
  /* GEnum GtkIconSize */
# define SvGtkIconSize(sv)	((GtkIconSize)gperl_convert_enum (GTK_TYPE_ICON_SIZE, sv))
# define newSVGtkIconSize(val)	(gperl_convert_back_enum (GTK_TYPE_ICON_SIZE, val))
#endif /* GTK_TYPE_ICON_SIZE */

#ifdef GTK_TYPE_ICON_SOURCE
  /* GBoxed GtkIconSource */
  typedef GtkIconSource GtkIconSource_ornull;
# define SvGtkIconSource(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_ICON_SOURCE))
# define SvGtkIconSource_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconSource (sv) : NULL)
  typedef GtkIconSource GtkIconSource_own;
  typedef GtkIconSource GtkIconSource_copy;
  typedef GtkIconSource GtkIconSource_own_ornull;
# define newSVGtkIconSource(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_SOURCE, FALSE))
# define newSVGtkIconSource_ornull(val)	((val) ? newSVGtkIconSource(val) : &PL_sv_undef)
# define newSVGtkIconSource_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_SOURCE, TRUE))
# define newSVGtkIconSource_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_ICON_SOURCE))
# define newSVGtkIconSource_own_ornull(val)	((val) ? newSVGtkIconSource_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ICON_SOURCE */

#ifdef GTK_TYPE_IMAGE
  /* GtkObject derivative GtkImage */
# define SvGtkImage(sv)	((GtkImage*)gperl_get_object_check (sv, GTK_TYPE_IMAGE))
# define newSVGtkImage(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkImage GtkImage_ornull;
# define SvGtkImage_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkImage(sv) : NULL)
# define newSVGtkImage_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_IMAGE */

#ifdef GTK_TYPE_IMAGE_MENU_ITEM
  /* GtkObject derivative GtkImageMenuItem */
# define SvGtkImageMenuItem(sv)	((GtkImageMenuItem*)gperl_get_object_check (sv, GTK_TYPE_IMAGE_MENU_ITEM))
# define newSVGtkImageMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkImageMenuItem GtkImageMenuItem_ornull;
# define SvGtkImageMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkImageMenuItem(sv) : NULL)
# define newSVGtkImageMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_IMAGE_MENU_ITEM */

#ifdef GTK_TYPE_IMAGE_TYPE
  /* GEnum GtkImageType */
# define SvGtkImageType(sv)	((GtkImageType)gperl_convert_enum (GTK_TYPE_IMAGE_TYPE, sv))
# define newSVGtkImageType(val)	(gperl_convert_back_enum (GTK_TYPE_IMAGE_TYPE, val))
#endif /* GTK_TYPE_IMAGE_TYPE */

#ifdef GTK_TYPE_IM_CONTEXT
  /* GObject derivative GtkIMContext */
# define SvGtkIMContext(sv)	((GtkIMContext*)gperl_get_object_check (sv, GTK_TYPE_IM_CONTEXT))
# define newSVGtkIMContext(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkIMContext GtkIMContext_ornull;
# define SvGtkIMContext_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIMContext(sv) : NULL)
# define newSVGtkIMContext_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkIMContext GtkIMContext_noinc;
#define newSVGtkIMContext_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkIMContext GtkIMContext_noinc_ornull;
#define newSVGtkIMContext_noinc_ornull(val)	((val) ? newSVGtkIMContext_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_IM_CONTEXT */

#ifdef GTK_TYPE_IM_CONTEXT_SIMPLE
  /* GObject derivative GtkIMContextSimple */
# define SvGtkIMContextSimple(sv)	((GtkIMContextSimple*)gperl_get_object_check (sv, GTK_TYPE_IM_CONTEXT_SIMPLE))
# define newSVGtkIMContextSimple(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkIMContextSimple GtkIMContextSimple_ornull;
# define SvGtkIMContextSimple_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIMContextSimple(sv) : NULL)
# define newSVGtkIMContextSimple_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkIMContextSimple GtkIMContextSimple_noinc;
#define newSVGtkIMContextSimple_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkIMContextSimple GtkIMContextSimple_noinc_ornull;
#define newSVGtkIMContextSimple_noinc_ornull(val)	((val) ? newSVGtkIMContextSimple_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_IM_CONTEXT_SIMPLE */

#ifdef GTK_TYPE_IM_MULTICONTEXT
  /* GObject derivative GtkIMMulticontext */
# define SvGtkIMMulticontext(sv)	((GtkIMMulticontext*)gperl_get_object_check (sv, GTK_TYPE_IM_MULTICONTEXT))
# define newSVGtkIMMulticontext(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkIMMulticontext GtkIMMulticontext_ornull;
# define SvGtkIMMulticontext_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIMMulticontext(sv) : NULL)
# define newSVGtkIMMulticontext_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkIMMulticontext GtkIMMulticontext_noinc;
#define newSVGtkIMMulticontext_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkIMMulticontext GtkIMMulticontext_noinc_ornull;
#define newSVGtkIMMulticontext_noinc_ornull(val)	((val) ? newSVGtkIMMulticontext_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_IM_MULTICONTEXT */

#ifdef GTK_TYPE_IM_PREEDIT_STYLE
  /* GEnum GtkIMPreeditStyle */
# define SvGtkIMPreeditStyle(sv)	((GtkIMPreeditStyle)gperl_convert_enum (GTK_TYPE_IM_PREEDIT_STYLE, sv))
# define newSVGtkIMPreeditStyle(val)	(gperl_convert_back_enum (GTK_TYPE_IM_PREEDIT_STYLE, val))
#endif /* GTK_TYPE_IM_PREEDIT_STYLE */

#ifdef GTK_TYPE_IM_STATUS_STYLE
  /* GEnum GtkIMStatusStyle */
# define SvGtkIMStatusStyle(sv)	((GtkIMStatusStyle)gperl_convert_enum (GTK_TYPE_IM_STATUS_STYLE, sv))
# define newSVGtkIMStatusStyle(val)	(gperl_convert_back_enum (GTK_TYPE_IM_STATUS_STYLE, val))
#endif /* GTK_TYPE_IM_STATUS_STYLE */

#ifdef GTK_TYPE_INPUT_DIALOG
  /* GtkObject derivative GtkInputDialog */
# define SvGtkInputDialog(sv)	((GtkInputDialog*)gperl_get_object_check (sv, GTK_TYPE_INPUT_DIALOG))
# define newSVGtkInputDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkInputDialog GtkInputDialog_ornull;
# define SvGtkInputDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkInputDialog(sv) : NULL)
# define newSVGtkInputDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_INPUT_DIALOG */

#ifdef GTK_TYPE_INVISIBLE
  /* GtkObject derivative GtkInvisible */
# define SvGtkInvisible(sv)	((GtkInvisible*)gperl_get_object_check (sv, GTK_TYPE_INVISIBLE))
# define newSVGtkInvisible(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkInvisible GtkInvisible_ornull;
# define SvGtkInvisible_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkInvisible(sv) : NULL)
# define newSVGtkInvisible_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_INVISIBLE */

#ifdef GTK_TYPE_ITEM_FACTORY
  /* GtkObject derivative GtkItemFactory */
# define SvGtkItemFactory(sv)	((GtkItemFactory*)gperl_get_object_check (sv, GTK_TYPE_ITEM_FACTORY))
# define newSVGtkItemFactory(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkItemFactory GtkItemFactory_ornull;
# define SvGtkItemFactory_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkItemFactory(sv) : NULL)
# define newSVGtkItemFactory_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ITEM_FACTORY */

#ifdef GTK_TYPE_ITEM
  /* GtkObject derivative GtkItem */
# define SvGtkItem(sv)	((GtkItem*)gperl_get_object_check (sv, GTK_TYPE_ITEM))
# define newSVGtkItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkItem GtkItem_ornull;
# define SvGtkItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkItem(sv) : NULL)
# define newSVGtkItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ITEM */

#ifdef GTK_TYPE_JUSTIFICATION
  /* GEnum GtkJustification */
# define SvGtkJustification(sv)	((GtkJustification)gperl_convert_enum (GTK_TYPE_JUSTIFICATION, sv))
# define newSVGtkJustification(val)	(gperl_convert_back_enum (GTK_TYPE_JUSTIFICATION, val))
#endif /* GTK_TYPE_JUSTIFICATION */

#ifdef GTK_TYPE_LABEL
  /* GtkObject derivative GtkLabel */
# define SvGtkLabel(sv)	((GtkLabel*)gperl_get_object_check (sv, GTK_TYPE_LABEL))
# define newSVGtkLabel(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkLabel GtkLabel_ornull;
# define SvGtkLabel_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkLabel(sv) : NULL)
# define newSVGtkLabel_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_LABEL */

#ifdef GTK_TYPE_LAYOUT
  /* GtkObject derivative GtkLayout */
# define SvGtkLayout(sv)	((GtkLayout*)gperl_get_object_check (sv, GTK_TYPE_LAYOUT))
# define newSVGtkLayout(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkLayout GtkLayout_ornull;
# define SvGtkLayout_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkLayout(sv) : NULL)
# define newSVGtkLayout_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_LAYOUT */

#ifdef GTK_TYPE_LIST
  /* GtkObject derivative GtkList */
# define SvGtkList(sv)	((GtkList*)gperl_get_object_check (sv, GTK_TYPE_LIST))
# define newSVGtkList(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkList GtkList_ornull;
# define SvGtkList_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkList(sv) : NULL)
# define newSVGtkList_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_LIST */

#ifdef GTK_TYPE_LIST_ITEM
  /* GtkObject derivative GtkListItem */
# define SvGtkListItem(sv)	((GtkListItem*)gperl_get_object_check (sv, GTK_TYPE_LIST_ITEM))
# define newSVGtkListItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkListItem GtkListItem_ornull;
# define SvGtkListItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkListItem(sv) : NULL)
# define newSVGtkListItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_LIST_ITEM */

#ifdef GTK_TYPE_LIST_STORE
  /* GObject derivative GtkListStore */
# define SvGtkListStore(sv)	((GtkListStore*)gperl_get_object_check (sv, GTK_TYPE_LIST_STORE))
# define newSVGtkListStore(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkListStore GtkListStore_ornull;
# define SvGtkListStore_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkListStore(sv) : NULL)
# define newSVGtkListStore_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkListStore GtkListStore_noinc;
#define newSVGtkListStore_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkListStore GtkListStore_noinc_ornull;
#define newSVGtkListStore_noinc_ornull(val)	((val) ? newSVGtkListStore_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_LIST_STORE */

#ifdef GTK_TYPE_MATCH_TYPE
  /* GEnum GtkMatchType */
# define SvGtkMatchType(sv)	((GtkMatchType)gperl_convert_enum (GTK_TYPE_MATCH_TYPE, sv))
# define newSVGtkMatchType(val)	(gperl_convert_back_enum (GTK_TYPE_MATCH_TYPE, val))
#endif /* GTK_TYPE_MATCH_TYPE */

#ifdef GTK_TYPE_MENU_BAR
  /* GtkObject derivative GtkMenuBar */
# define SvGtkMenuBar(sv)	((GtkMenuBar*)gperl_get_object_check (sv, GTK_TYPE_MENU_BAR))
# define newSVGtkMenuBar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMenuBar GtkMenuBar_ornull;
# define SvGtkMenuBar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMenuBar(sv) : NULL)
# define newSVGtkMenuBar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MENU_BAR */

#ifdef GTK_TYPE_MENU_DIRECTION_TYPE
  /* GEnum GtkMenuDirectionType */
# define SvGtkMenuDirectionType(sv)	((GtkMenuDirectionType)gperl_convert_enum (GTK_TYPE_MENU_DIRECTION_TYPE, sv))
# define newSVGtkMenuDirectionType(val)	(gperl_convert_back_enum (GTK_TYPE_MENU_DIRECTION_TYPE, val))
#endif /* GTK_TYPE_MENU_DIRECTION_TYPE */

#ifdef GTK_TYPE_MENU
  /* GtkObject derivative GtkMenu */
# define SvGtkMenu(sv)	((GtkMenu*)gperl_get_object_check (sv, GTK_TYPE_MENU))
# define newSVGtkMenu(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMenu GtkMenu_ornull;
# define SvGtkMenu_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMenu(sv) : NULL)
# define newSVGtkMenu_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MENU */

#ifdef GTK_TYPE_MENU_ITEM
  /* GtkObject derivative GtkMenuItem */
# define SvGtkMenuItem(sv)	((GtkMenuItem*)gperl_get_object_check (sv, GTK_TYPE_MENU_ITEM))
# define newSVGtkMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMenuItem GtkMenuItem_ornull;
# define SvGtkMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMenuItem(sv) : NULL)
# define newSVGtkMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MENU_ITEM */

#ifdef GTK_TYPE_MENU_SHELL
  /* GtkObject derivative GtkMenuShell */
# define SvGtkMenuShell(sv)	((GtkMenuShell*)gperl_get_object_check (sv, GTK_TYPE_MENU_SHELL))
# define newSVGtkMenuShell(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMenuShell GtkMenuShell_ornull;
# define SvGtkMenuShell_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMenuShell(sv) : NULL)
# define newSVGtkMenuShell_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MENU_SHELL */

#ifdef GTK_TYPE_MESSAGE_DIALOG
  /* GtkObject derivative GtkMessageDialog */
# define SvGtkMessageDialog(sv)	((GtkMessageDialog*)gperl_get_object_check (sv, GTK_TYPE_MESSAGE_DIALOG))
# define newSVGtkMessageDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMessageDialog GtkMessageDialog_ornull;
# define SvGtkMessageDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMessageDialog(sv) : NULL)
# define newSVGtkMessageDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MESSAGE_DIALOG */

#ifdef GTK_TYPE_MESSAGE_TYPE
  /* GEnum GtkMessageType */
# define SvGtkMessageType(sv)	((GtkMessageType)gperl_convert_enum (GTK_TYPE_MESSAGE_TYPE, sv))
# define newSVGtkMessageType(val)	(gperl_convert_back_enum (GTK_TYPE_MESSAGE_TYPE, val))
#endif /* GTK_TYPE_MESSAGE_TYPE */

#ifdef GTK_TYPE_METRIC_TYPE
  /* GEnum GtkMetricType */
# define SvGtkMetricType(sv)	((GtkMetricType)gperl_convert_enum (GTK_TYPE_METRIC_TYPE, sv))
# define newSVGtkMetricType(val)	(gperl_convert_back_enum (GTK_TYPE_METRIC_TYPE, val))
#endif /* GTK_TYPE_METRIC_TYPE */

#ifdef GTK_TYPE_MISC
  /* GtkObject derivative GtkMisc */
# define SvGtkMisc(sv)	((GtkMisc*)gperl_get_object_check (sv, GTK_TYPE_MISC))
# define newSVGtkMisc(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMisc GtkMisc_ornull;
# define SvGtkMisc_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMisc(sv) : NULL)
# define newSVGtkMisc_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MISC */

#ifdef GTK_TYPE_MOVEMENT_STEP
  /* GEnum GtkMovementStep */
# define SvGtkMovementStep(sv)	((GtkMovementStep)gperl_convert_enum (GTK_TYPE_MOVEMENT_STEP, sv))
# define newSVGtkMovementStep(val)	(gperl_convert_back_enum (GTK_TYPE_MOVEMENT_STEP, val))
#endif /* GTK_TYPE_MOVEMENT_STEP */

#ifdef GTK_TYPE_NOTEBOOK
  /* GtkObject derivative GtkNotebook */
# define SvGtkNotebook(sv)	((GtkNotebook*)gperl_get_object_check (sv, GTK_TYPE_NOTEBOOK))
# define newSVGtkNotebook(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkNotebook GtkNotebook_ornull;
# define SvGtkNotebook_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkNotebook(sv) : NULL)
# define newSVGtkNotebook_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_NOTEBOOK */

#ifdef GTK_TYPE_NOTEBOOK_TAB
  /* GEnum GtkNotebookTab */
# define SvGtkNotebookTab(sv)	((GtkNotebookTab)gperl_convert_enum (GTK_TYPE_NOTEBOOK_TAB, sv))
# define newSVGtkNotebookTab(val)	(gperl_convert_back_enum (GTK_TYPE_NOTEBOOK_TAB, val))
#endif /* GTK_TYPE_NOTEBOOK_TAB */

#ifdef GTK_TYPE_OBJECT_FLAGS
  /* GFlags GtkObjectFlags */
# define SvGtkObjectFlags(sv)	((GtkObjectFlags)gperl_convert_flags (GTK_TYPE_OBJECT_FLAGS, sv))
# define newSVGtkObjectFlags(val)	(gperl_convert_back_flags (GTK_TYPE_OBJECT_FLAGS, val))
#endif /* GTK_TYPE_OBJECT_FLAGS */

#ifdef GTK_TYPE_OBJECT
  /* GtkObject derivative GtkObject */
# define SvGtkObject(sv)	((GtkObject*)gperl_get_object_check (sv, GTK_TYPE_OBJECT))
# define newSVGtkObject(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkObject GtkObject_ornull;
# define SvGtkObject_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkObject(sv) : NULL)
# define newSVGtkObject_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_OBJECT */

#ifdef GTK_TYPE_OPTION_MENU
  /* GtkObject derivative GtkOptionMenu */
# define SvGtkOptionMenu(sv)	((GtkOptionMenu*)gperl_get_object_check (sv, GTK_TYPE_OPTION_MENU))
# define newSVGtkOptionMenu(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkOptionMenu GtkOptionMenu_ornull;
# define SvGtkOptionMenu_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkOptionMenu(sv) : NULL)
# define newSVGtkOptionMenu_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_OPTION_MENU */

#ifdef GTK_TYPE_ORIENTATION
  /* GEnum GtkOrientation */
# define SvGtkOrientation(sv)	((GtkOrientation)gperl_convert_enum (GTK_TYPE_ORIENTATION, sv))
# define newSVGtkOrientation(val)	(gperl_convert_back_enum (GTK_TYPE_ORIENTATION, val))
#endif /* GTK_TYPE_ORIENTATION */

#ifdef GTK_TYPE_PACK_TYPE
  /* GEnum GtkPackType */
# define SvGtkPackType(sv)	((GtkPackType)gperl_convert_enum (GTK_TYPE_PACK_TYPE, sv))
# define newSVGtkPackType(val)	(gperl_convert_back_enum (GTK_TYPE_PACK_TYPE, val))
#endif /* GTK_TYPE_PACK_TYPE */

#ifdef GTK_TYPE_PANED
  /* GtkObject derivative GtkPaned */
# define SvGtkPaned(sv)	((GtkPaned*)gperl_get_object_check (sv, GTK_TYPE_PANED))
# define newSVGtkPaned(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkPaned GtkPaned_ornull;
# define SvGtkPaned_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPaned(sv) : NULL)
# define newSVGtkPaned_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_PANED */

#ifdef GTK_TYPE_PATH_PRIORITY_TYPE
  /* GEnum GtkPathPriorityType */
# define SvGtkPathPriorityType(sv)	((GtkPathPriorityType)gperl_convert_enum (GTK_TYPE_PATH_PRIORITY_TYPE, sv))
# define newSVGtkPathPriorityType(val)	(gperl_convert_back_enum (GTK_TYPE_PATH_PRIORITY_TYPE, val))
#endif /* GTK_TYPE_PATH_PRIORITY_TYPE */

#ifdef GTK_TYPE_PATH_TYPE
  /* GEnum GtkPathType */
# define SvGtkPathType(sv)	((GtkPathType)gperl_convert_enum (GTK_TYPE_PATH_TYPE, sv))
# define newSVGtkPathType(val)	(gperl_convert_back_enum (GTK_TYPE_PATH_TYPE, val))
#endif /* GTK_TYPE_PATH_TYPE */

#ifdef GTK_TYPE_PLUG
  /* GtkObject derivative GtkPlug */
# define SvGtkPlug(sv)	((GtkPlug*)gperl_get_object_check (sv, GTK_TYPE_PLUG))
# define newSVGtkPlug(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkPlug GtkPlug_ornull;
# define SvGtkPlug_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPlug(sv) : NULL)
# define newSVGtkPlug_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_PLUG */

#ifdef GTK_TYPE_POLICY_TYPE
  /* GEnum GtkPolicyType */
# define SvGtkPolicyType(sv)	((GtkPolicyType)gperl_convert_enum (GTK_TYPE_POLICY_TYPE, sv))
# define newSVGtkPolicyType(val)	(gperl_convert_back_enum (GTK_TYPE_POLICY_TYPE, val))
#endif /* GTK_TYPE_POLICY_TYPE */

#ifdef GTK_TYPE_POSITION_TYPE
  /* GEnum GtkPositionType */
# define SvGtkPositionType(sv)	((GtkPositionType)gperl_convert_enum (GTK_TYPE_POSITION_TYPE, sv))
# define newSVGtkPositionType(val)	(gperl_convert_back_enum (GTK_TYPE_POSITION_TYPE, val))
#endif /* GTK_TYPE_POSITION_TYPE */

#ifdef GTK_TYPE_PREVIEW_TYPE
  /* GEnum GtkPreviewType */
# define SvGtkPreviewType(sv)	((GtkPreviewType)gperl_convert_enum (GTK_TYPE_PREVIEW_TYPE, sv))
# define newSVGtkPreviewType(val)	(gperl_convert_back_enum (GTK_TYPE_PREVIEW_TYPE, val))
#endif /* GTK_TYPE_PREVIEW_TYPE */

#ifdef GTK_TYPE_PRIVATE_FLAGS
  /* GFlags GtkPrivateFlags */
# define SvGtkPrivateFlags(sv)	((GtkPrivateFlags)gperl_convert_flags (GTK_TYPE_PRIVATE_FLAGS, sv))
# define newSVGtkPrivateFlags(val)	(gperl_convert_back_flags (GTK_TYPE_PRIVATE_FLAGS, val))
#endif /* GTK_TYPE_PRIVATE_FLAGS */

#ifdef GTK_TYPE_PROGRESS_BAR
  /* GtkObject derivative GtkProgressBar */
# define SvGtkProgressBar(sv)	((GtkProgressBar*)gperl_get_object_check (sv, GTK_TYPE_PROGRESS_BAR))
# define newSVGtkProgressBar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkProgressBar GtkProgressBar_ornull;
# define SvGtkProgressBar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkProgressBar(sv) : NULL)
# define newSVGtkProgressBar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_PROGRESS_BAR */

#ifdef GTK_TYPE_PROGRESS_BAR_ORIENTATION
  /* GEnum GtkProgressBarOrientation */
# define SvGtkProgressBarOrientation(sv)	((GtkProgressBarOrientation)gperl_convert_enum (GTK_TYPE_PROGRESS_BAR_ORIENTATION, sv))
# define newSVGtkProgressBarOrientation(val)	(gperl_convert_back_enum (GTK_TYPE_PROGRESS_BAR_ORIENTATION, val))
#endif /* GTK_TYPE_PROGRESS_BAR_ORIENTATION */

#ifdef GTK_TYPE_PROGRESS_BAR_STYLE
  /* GEnum GtkProgressBarStyle */
# define SvGtkProgressBarStyle(sv)	((GtkProgressBarStyle)gperl_convert_enum (GTK_TYPE_PROGRESS_BAR_STYLE, sv))
# define newSVGtkProgressBarStyle(val)	(gperl_convert_back_enum (GTK_TYPE_PROGRESS_BAR_STYLE, val))
#endif /* GTK_TYPE_PROGRESS_BAR_STYLE */

#ifdef GTK_TYPE_RADIO_BUTTON
  /* GtkObject derivative GtkRadioButton */
# define SvGtkRadioButton(sv)	((GtkRadioButton*)gperl_get_object_check (sv, GTK_TYPE_RADIO_BUTTON))
# define newSVGtkRadioButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRadioButton GtkRadioButton_ornull;
# define SvGtkRadioButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRadioButton(sv) : NULL)
# define newSVGtkRadioButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RADIO_BUTTON */

#ifdef GTK_TYPE_RADIO_MENU_ITEM
  /* GtkObject derivative GtkRadioMenuItem */
# define SvGtkRadioMenuItem(sv)	((GtkRadioMenuItem*)gperl_get_object_check (sv, GTK_TYPE_RADIO_MENU_ITEM))
# define newSVGtkRadioMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRadioMenuItem GtkRadioMenuItem_ornull;
# define SvGtkRadioMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRadioMenuItem(sv) : NULL)
# define newSVGtkRadioMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RADIO_MENU_ITEM */

#ifdef GTK_TYPE_RANGE
  /* GtkObject derivative GtkRange */
# define SvGtkRange(sv)	((GtkRange*)gperl_get_object_check (sv, GTK_TYPE_RANGE))
# define newSVGtkRange(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRange GtkRange_ornull;
# define SvGtkRange_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRange(sv) : NULL)
# define newSVGtkRange_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RANGE */

#ifdef GTK_TYPE_RC_FLAGS
  /* GFlags GtkRcFlags */
# define SvGtkRcFlags(sv)	((GtkRcFlags)gperl_convert_flags (GTK_TYPE_RC_FLAGS, sv))
# define newSVGtkRcFlags(val)	(gperl_convert_back_flags (GTK_TYPE_RC_FLAGS, val))
#endif /* GTK_TYPE_RC_FLAGS */

#ifdef GTK_TYPE_RC_STYLE
  /* GObject derivative GtkRcStyle */
# define SvGtkRcStyle(sv)	((GtkRcStyle*)gperl_get_object_check (sv, GTK_TYPE_RC_STYLE))
# define newSVGtkRcStyle(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkRcStyle GtkRcStyle_ornull;
# define SvGtkRcStyle_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRcStyle(sv) : NULL)
# define newSVGtkRcStyle_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkRcStyle GtkRcStyle_noinc;
#define newSVGtkRcStyle_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkRcStyle GtkRcStyle_noinc_ornull;
#define newSVGtkRcStyle_noinc_ornull(val)	((val) ? newSVGtkRcStyle_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RC_STYLE */

#ifdef GTK_TYPE_RC_TOKEN_TYPE
  /* GEnum GtkRcTokenType */
# define SvGtkRcTokenType(sv)	((GtkRcTokenType)gperl_convert_enum (GTK_TYPE_RC_TOKEN_TYPE, sv))
# define newSVGtkRcTokenType(val)	(gperl_convert_back_enum (GTK_TYPE_RC_TOKEN_TYPE, val))
#endif /* GTK_TYPE_RC_TOKEN_TYPE */

#ifdef GTK_TYPE_RELIEF_STYLE
  /* GEnum GtkReliefStyle */
# define SvGtkReliefStyle(sv)	((GtkReliefStyle)gperl_convert_enum (GTK_TYPE_RELIEF_STYLE, sv))
# define newSVGtkReliefStyle(val)	(gperl_convert_back_enum (GTK_TYPE_RELIEF_STYLE, val))
#endif /* GTK_TYPE_RELIEF_STYLE */

#ifdef GTK_TYPE_REQUISITION
  /* GBoxed GtkRequisition */
  typedef GtkRequisition GtkRequisition_ornull;
# define SvGtkRequisition(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_REQUISITION))
# define SvGtkRequisition_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRequisition (sv) : NULL)
  typedef GtkRequisition GtkRequisition_own;
  typedef GtkRequisition GtkRequisition_copy;
  typedef GtkRequisition GtkRequisition_own_ornull;
# define newSVGtkRequisition(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_REQUISITION, FALSE))
# define newSVGtkRequisition_ornull(val)	((val) ? newSVGtkRequisition(val) : &PL_sv_undef)
# define newSVGtkRequisition_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_REQUISITION, TRUE))
# define newSVGtkRequisition_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_REQUISITION))
# define newSVGtkRequisition_own_ornull(val)	((val) ? newSVGtkRequisition_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_REQUISITION */

#ifdef GTK_TYPE_RESIZE_MODE
  /* GEnum GtkResizeMode */
# define SvGtkResizeMode(sv)	((GtkResizeMode)gperl_convert_enum (GTK_TYPE_RESIZE_MODE, sv))
# define newSVGtkResizeMode(val)	(gperl_convert_back_enum (GTK_TYPE_RESIZE_MODE, val))
#endif /* GTK_TYPE_RESIZE_MODE */

#ifdef GTK_TYPE_RESPONSE_TYPE
  /* GEnum GtkResponseType */
# define SvGtkResponseType(sv)	((GtkResponseType)gperl_convert_enum (GTK_TYPE_RESPONSE_TYPE, sv))
# define newSVGtkResponseType(val)	(gperl_convert_back_enum (GTK_TYPE_RESPONSE_TYPE, val))
#endif /* GTK_TYPE_RESPONSE_TYPE */

#ifdef GTK_TYPE_RULER
  /* GtkObject derivative GtkRuler */
# define SvGtkRuler(sv)	((GtkRuler*)gperl_get_object_check (sv, GTK_TYPE_RULER))
# define newSVGtkRuler(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRuler GtkRuler_ornull;
# define SvGtkRuler_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRuler(sv) : NULL)
# define newSVGtkRuler_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RULER */

#ifdef GTK_TYPE_SCALE
  /* GtkObject derivative GtkScale */
# define SvGtkScale(sv)	((GtkScale*)gperl_get_object_check (sv, GTK_TYPE_SCALE))
# define newSVGtkScale(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkScale GtkScale_ornull;
# define SvGtkScale_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkScale(sv) : NULL)
# define newSVGtkScale_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SCALE */

#ifdef GTK_TYPE_SCROLLBAR
  /* GtkObject derivative GtkScrollbar */
# define SvGtkScrollbar(sv)	((GtkScrollbar*)gperl_get_object_check (sv, GTK_TYPE_SCROLLBAR))
# define newSVGtkScrollbar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkScrollbar GtkScrollbar_ornull;
# define SvGtkScrollbar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkScrollbar(sv) : NULL)
# define newSVGtkScrollbar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SCROLLBAR */

#ifdef GTK_TYPE_SCROLLED_WINDOW
  /* GtkObject derivative GtkScrolledWindow */
# define SvGtkScrolledWindow(sv)	((GtkScrolledWindow*)gperl_get_object_check (sv, GTK_TYPE_SCROLLED_WINDOW))
# define newSVGtkScrolledWindow(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkScrolledWindow GtkScrolledWindow_ornull;
# define SvGtkScrolledWindow_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkScrolledWindow(sv) : NULL)
# define newSVGtkScrolledWindow_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SCROLLED_WINDOW */

#ifdef GTK_TYPE_SCROLL_TYPE
  /* GEnum GtkScrollType */
# define SvGtkScrollType(sv)	((GtkScrollType)gperl_convert_enum (GTK_TYPE_SCROLL_TYPE, sv))
# define newSVGtkScrollType(val)	(gperl_convert_back_enum (GTK_TYPE_SCROLL_TYPE, val))
#endif /* GTK_TYPE_SCROLL_TYPE */

#ifdef GTK_TYPE_SELECTION_DATA
  /* GBoxed GtkSelectionData */
  typedef GtkSelectionData GtkSelectionData_ornull;
# define SvGtkSelectionData(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_SELECTION_DATA))
# define SvGtkSelectionData_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSelectionData (sv) : NULL)
  typedef GtkSelectionData GtkSelectionData_own;
  typedef GtkSelectionData GtkSelectionData_copy;
  typedef GtkSelectionData GtkSelectionData_own_ornull;
# define newSVGtkSelectionData(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_SELECTION_DATA, FALSE))
# define newSVGtkSelectionData_ornull(val)	((val) ? newSVGtkSelectionData(val) : &PL_sv_undef)
# define newSVGtkSelectionData_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_SELECTION_DATA, TRUE))
# define newSVGtkSelectionData_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_SELECTION_DATA))
# define newSVGtkSelectionData_own_ornull(val)	((val) ? newSVGtkSelectionData_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_SELECTION_DATA */

#ifdef GTK_TYPE_SELECTION_MODE
  /* GEnum GtkSelectionMode */
# define SvGtkSelectionMode(sv)	((GtkSelectionMode)gperl_convert_enum (GTK_TYPE_SELECTION_MODE, sv))
# define newSVGtkSelectionMode(val)	(gperl_convert_back_enum (GTK_TYPE_SELECTION_MODE, val))
#endif /* GTK_TYPE_SELECTION_MODE */

#ifdef GTK_TYPE_SEPARATOR
  /* GtkObject derivative GtkSeparator */
# define SvGtkSeparator(sv)	((GtkSeparator*)gperl_get_object_check (sv, GTK_TYPE_SEPARATOR))
# define newSVGtkSeparator(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkSeparator GtkSeparator_ornull;
# define SvGtkSeparator_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSeparator(sv) : NULL)
# define newSVGtkSeparator_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SEPARATOR */

#ifdef GTK_TYPE_SEPARATOR_MENU_ITEM
  /* GtkObject derivative GtkSeparatorMenuItem */
# define SvGtkSeparatorMenuItem(sv)	((GtkSeparatorMenuItem*)gperl_get_object_check (sv, GTK_TYPE_SEPARATOR_MENU_ITEM))
# define newSVGtkSeparatorMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkSeparatorMenuItem GtkSeparatorMenuItem_ornull;
# define SvGtkSeparatorMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSeparatorMenuItem(sv) : NULL)
# define newSVGtkSeparatorMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SEPARATOR_MENU_ITEM */

#ifdef GTK_TYPE_SETTINGS
  /* GObject derivative GtkSettings */
# define SvGtkSettings(sv)	((GtkSettings*)gperl_get_object_check (sv, GTK_TYPE_SETTINGS))
# define newSVGtkSettings(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkSettings GtkSettings_ornull;
# define SvGtkSettings_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSettings(sv) : NULL)
# define newSVGtkSettings_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkSettings GtkSettings_noinc;
#define newSVGtkSettings_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkSettings GtkSettings_noinc_ornull;
#define newSVGtkSettings_noinc_ornull(val)	((val) ? newSVGtkSettings_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_SETTINGS */

#ifdef GTK_TYPE_SHADOW_TYPE
  /* GEnum GtkShadowType */
# define SvGtkShadowType(sv)	((GtkShadowType)gperl_convert_enum (GTK_TYPE_SHADOW_TYPE, sv))
# define newSVGtkShadowType(val)	(gperl_convert_back_enum (GTK_TYPE_SHADOW_TYPE, val))
#endif /* GTK_TYPE_SHADOW_TYPE */

#ifdef GTK_TYPE_SIDE_TYPE
  /* GEnum GtkSideType */
# define SvGtkSideType(sv)	((GtkSideType)gperl_convert_enum (GTK_TYPE_SIDE_TYPE, sv))
# define newSVGtkSideType(val)	(gperl_convert_back_enum (GTK_TYPE_SIDE_TYPE, val))
#endif /* GTK_TYPE_SIDE_TYPE */

#ifdef GTK_TYPE_SIGNAL_RUN_TYPE
  /* GFlags GtkSignalRunType */
# define SvGtkSignalRunType(sv)	((GtkSignalRunType)gperl_convert_flags (GTK_TYPE_SIGNAL_RUN_TYPE, sv))
# define newSVGtkSignalRunType(val)	(gperl_convert_back_flags (GTK_TYPE_SIGNAL_RUN_TYPE, val))
#endif /* GTK_TYPE_SIGNAL_RUN_TYPE */

#ifdef GTK_TYPE_SIZE_GROUP
  /* GObject derivative GtkSizeGroup */
# define SvGtkSizeGroup(sv)	((GtkSizeGroup*)gperl_get_object_check (sv, GTK_TYPE_SIZE_GROUP))
# define newSVGtkSizeGroup(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkSizeGroup GtkSizeGroup_ornull;
# define SvGtkSizeGroup_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSizeGroup(sv) : NULL)
# define newSVGtkSizeGroup_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkSizeGroup GtkSizeGroup_noinc;
#define newSVGtkSizeGroup_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkSizeGroup GtkSizeGroup_noinc_ornull;
#define newSVGtkSizeGroup_noinc_ornull(val)	((val) ? newSVGtkSizeGroup_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_SIZE_GROUP */

#ifdef GTK_TYPE_SIZE_GROUP_MODE
  /* GEnum GtkSizeGroupMode */
# define SvGtkSizeGroupMode(sv)	((GtkSizeGroupMode)gperl_convert_enum (GTK_TYPE_SIZE_GROUP_MODE, sv))
# define newSVGtkSizeGroupMode(val)	(gperl_convert_back_enum (GTK_TYPE_SIZE_GROUP_MODE, val))
#endif /* GTK_TYPE_SIZE_GROUP_MODE */

#ifdef GTK_TYPE_SOCKET
  /* GtkObject derivative GtkSocket */
# define SvGtkSocket(sv)	((GtkSocket*)gperl_get_object_check (sv, GTK_TYPE_SOCKET))
# define newSVGtkSocket(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkSocket GtkSocket_ornull;
# define SvGtkSocket_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSocket(sv) : NULL)
# define newSVGtkSocket_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SOCKET */

#ifdef GTK_TYPE_SORT_TYPE
  /* GEnum GtkSortType */
# define SvGtkSortType(sv)	((GtkSortType)gperl_convert_enum (GTK_TYPE_SORT_TYPE, sv))
# define newSVGtkSortType(val)	(gperl_convert_back_enum (GTK_TYPE_SORT_TYPE, val))
#endif /* GTK_TYPE_SORT_TYPE */

#ifdef GTK_TYPE_SPIN_BUTTON
  /* GtkObject derivative GtkSpinButton */
# define SvGtkSpinButton(sv)	((GtkSpinButton*)gperl_get_object_check (sv, GTK_TYPE_SPIN_BUTTON))
# define newSVGtkSpinButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkSpinButton GtkSpinButton_ornull;
# define SvGtkSpinButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSpinButton(sv) : NULL)
# define newSVGtkSpinButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SPIN_BUTTON */

#ifdef GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY
  /* GEnum GtkSpinButtonUpdatePolicy */
# define SvGtkSpinButtonUpdatePolicy(sv)	((GtkSpinButtonUpdatePolicy)gperl_convert_enum (GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY, sv))
# define newSVGtkSpinButtonUpdatePolicy(val)	(gperl_convert_back_enum (GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY, val))
#endif /* GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY */

#ifdef GTK_TYPE_SPIN_TYPE
  /* GEnum GtkSpinType */
# define SvGtkSpinType(sv)	((GtkSpinType)gperl_convert_enum (GTK_TYPE_SPIN_TYPE, sv))
# define newSVGtkSpinType(val)	(gperl_convert_back_enum (GTK_TYPE_SPIN_TYPE, val))
#endif /* GTK_TYPE_SPIN_TYPE */

#ifdef GTK_TYPE_STATE_TYPE
  /* GEnum GtkStateType */
# define SvGtkStateType(sv)	((GtkStateType)gperl_convert_enum (GTK_TYPE_STATE_TYPE, sv))
# define newSVGtkStateType(val)	(gperl_convert_back_enum (GTK_TYPE_STATE_TYPE, val))
#endif /* GTK_TYPE_STATE_TYPE */

#ifdef GTK_TYPE_STATUSBAR
  /* GtkObject derivative GtkStatusbar */
# define SvGtkStatusbar(sv)	((GtkStatusbar*)gperl_get_object_check (sv, GTK_TYPE_STATUSBAR))
# define newSVGtkStatusbar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkStatusbar GtkStatusbar_ornull;
# define SvGtkStatusbar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkStatusbar(sv) : NULL)
# define newSVGtkStatusbar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_STATUSBAR */

#ifdef GTK_TYPE_STYLE
  /* GObject derivative GtkStyle */
# define SvGtkStyle(sv)	((GtkStyle*)gperl_get_object_check (sv, GTK_TYPE_STYLE))
# define newSVGtkStyle(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkStyle GtkStyle_ornull;
# define SvGtkStyle_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkStyle(sv) : NULL)
# define newSVGtkStyle_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkStyle GtkStyle_noinc;
#define newSVGtkStyle_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkStyle GtkStyle_noinc_ornull;
#define newSVGtkStyle_noinc_ornull(val)	((val) ? newSVGtkStyle_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_STYLE */

#ifdef GTK_TYPE_SUBMENU_DIRECTION
  /* GEnum GtkSubmenuDirection */
# define SvGtkSubmenuDirection(sv)	((GtkSubmenuDirection)gperl_convert_enum (GTK_TYPE_SUBMENU_DIRECTION, sv))
# define newSVGtkSubmenuDirection(val)	(gperl_convert_back_enum (GTK_TYPE_SUBMENU_DIRECTION, val))
#endif /* GTK_TYPE_SUBMENU_DIRECTION */

#ifdef GTK_TYPE_SUBMENU_PLACEMENT
  /* GEnum GtkSubmenuPlacement */
# define SvGtkSubmenuPlacement(sv)	((GtkSubmenuPlacement)gperl_convert_enum (GTK_TYPE_SUBMENU_PLACEMENT, sv))
# define newSVGtkSubmenuPlacement(val)	(gperl_convert_back_enum (GTK_TYPE_SUBMENU_PLACEMENT, val))
#endif /* GTK_TYPE_SUBMENU_PLACEMENT */

#ifdef GTK_TYPE_TABLE
  /* GtkObject derivative GtkTable */
# define SvGtkTable(sv)	((GtkTable*)gperl_get_object_check (sv, GTK_TYPE_TABLE))
# define newSVGtkTable(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTable GtkTable_ornull;
# define SvGtkTable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTable(sv) : NULL)
# define newSVGtkTable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TABLE */

#ifdef GTK_TYPE_TARGET_FLAGS
  /* GFlags GtkTargetFlags */
# define SvGtkTargetFlags(sv)	((GtkTargetFlags)gperl_convert_flags (GTK_TYPE_TARGET_FLAGS, sv))
# define newSVGtkTargetFlags(val)	(gperl_convert_back_flags (GTK_TYPE_TARGET_FLAGS, val))
#endif /* GTK_TYPE_TARGET_FLAGS */

#ifdef GTK_TYPE_TEAROFF_MENU_ITEM
  /* GtkObject derivative GtkTearoffMenuItem */
# define SvGtkTearoffMenuItem(sv)	((GtkTearoffMenuItem*)gperl_get_object_check (sv, GTK_TYPE_TEAROFF_MENU_ITEM))
# define newSVGtkTearoffMenuItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTearoffMenuItem GtkTearoffMenuItem_ornull;
# define SvGtkTearoffMenuItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTearoffMenuItem(sv) : NULL)
# define newSVGtkTearoffMenuItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TEAROFF_MENU_ITEM */

#ifdef GTK_TYPE_TEXT_ATTRIBUTES
  /* GBoxed GtkTextAttributes */
  typedef GtkTextAttributes GtkTextAttributes_ornull;
# define SvGtkTextAttributes(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TEXT_ATTRIBUTES))
# define SvGtkTextAttributes_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextAttributes (sv) : NULL)
  typedef GtkTextAttributes GtkTextAttributes_own;
  typedef GtkTextAttributes GtkTextAttributes_copy;
  typedef GtkTextAttributes GtkTextAttributes_own_ornull;
# define newSVGtkTextAttributes(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TEXT_ATTRIBUTES, FALSE))
# define newSVGtkTextAttributes_ornull(val)	((val) ? newSVGtkTextAttributes(val) : &PL_sv_undef)
# define newSVGtkTextAttributes_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TEXT_ATTRIBUTES, TRUE))
# define newSVGtkTextAttributes_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TEXT_ATTRIBUTES))
# define newSVGtkTextAttributes_own_ornull(val)	((val) ? newSVGtkTextAttributes_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_ATTRIBUTES */

#ifdef GTK_TYPE_TEXT_BUFFER
  /* GObject derivative GtkTextBuffer */
# define SvGtkTextBuffer(sv)	((GtkTextBuffer*)gperl_get_object_check (sv, GTK_TYPE_TEXT_BUFFER))
# define newSVGtkTextBuffer(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTextBuffer GtkTextBuffer_ornull;
# define SvGtkTextBuffer_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextBuffer(sv) : NULL)
# define newSVGtkTextBuffer_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTextBuffer GtkTextBuffer_noinc;
#define newSVGtkTextBuffer_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTextBuffer GtkTextBuffer_noinc_ornull;
#define newSVGtkTextBuffer_noinc_ornull(val)	((val) ? newSVGtkTextBuffer_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_BUFFER */

#ifdef GTK_TYPE_TEXT_CHILD_ANCHOR
  /* GObject derivative GtkTextChildAnchor */
# define SvGtkTextChildAnchor(sv)	((GtkTextChildAnchor*)gperl_get_object_check (sv, GTK_TYPE_TEXT_CHILD_ANCHOR))
# define newSVGtkTextChildAnchor(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTextChildAnchor GtkTextChildAnchor_ornull;
# define SvGtkTextChildAnchor_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextChildAnchor(sv) : NULL)
# define newSVGtkTextChildAnchor_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTextChildAnchor GtkTextChildAnchor_noinc;
#define newSVGtkTextChildAnchor_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTextChildAnchor GtkTextChildAnchor_noinc_ornull;
#define newSVGtkTextChildAnchor_noinc_ornull(val)	((val) ? newSVGtkTextChildAnchor_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_CHILD_ANCHOR */

#ifdef GTK_TYPE_TEXT_DIRECTION
  /* GEnum GtkTextDirection */
# define SvGtkTextDirection(sv)	((GtkTextDirection)gperl_convert_enum (GTK_TYPE_TEXT_DIRECTION, sv))
# define newSVGtkTextDirection(val)	(gperl_convert_back_enum (GTK_TYPE_TEXT_DIRECTION, val))
#endif /* GTK_TYPE_TEXT_DIRECTION */

#ifdef GTK_TYPE_TEXT_ITER
  /* GBoxed GtkTextIter */
  typedef GtkTextIter GtkTextIter_ornull;
# define SvGtkTextIter(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TEXT_ITER))
# define SvGtkTextIter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextIter (sv) : NULL)
  typedef GtkTextIter GtkTextIter_own;
  typedef GtkTextIter GtkTextIter_copy;
  typedef GtkTextIter GtkTextIter_own_ornull;
# define newSVGtkTextIter(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TEXT_ITER, FALSE))
# define newSVGtkTextIter_ornull(val)	((val) ? newSVGtkTextIter(val) : &PL_sv_undef)
# define newSVGtkTextIter_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TEXT_ITER, TRUE))
# define newSVGtkTextIter_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TEXT_ITER))
# define newSVGtkTextIter_own_ornull(val)	((val) ? newSVGtkTextIter_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_ITER */

#ifdef GTK_TYPE_TEXT_MARK
  /* GObject derivative GtkTextMark */
# define SvGtkTextMark(sv)	((GtkTextMark*)gperl_get_object_check (sv, GTK_TYPE_TEXT_MARK))
# define newSVGtkTextMark(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTextMark GtkTextMark_ornull;
# define SvGtkTextMark_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextMark(sv) : NULL)
# define newSVGtkTextMark_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTextMark GtkTextMark_noinc;
#define newSVGtkTextMark_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTextMark GtkTextMark_noinc_ornull;
#define newSVGtkTextMark_noinc_ornull(val)	((val) ? newSVGtkTextMark_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_MARK */

#ifdef GTK_TYPE_TEXT_SEARCH_FLAGS
  /* GFlags GtkTextSearchFlags */
# define SvGtkTextSearchFlags(sv)	((GtkTextSearchFlags)gperl_convert_flags (GTK_TYPE_TEXT_SEARCH_FLAGS, sv))
# define newSVGtkTextSearchFlags(val)	(gperl_convert_back_flags (GTK_TYPE_TEXT_SEARCH_FLAGS, val))
#endif /* GTK_TYPE_TEXT_SEARCH_FLAGS */

#ifdef GTK_TYPE_TEXT_TAG
  /* GObject derivative GtkTextTag */
# define SvGtkTextTag(sv)	((GtkTextTag*)gperl_get_object_check (sv, GTK_TYPE_TEXT_TAG))
# define newSVGtkTextTag(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTextTag GtkTextTag_ornull;
# define SvGtkTextTag_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextTag(sv) : NULL)
# define newSVGtkTextTag_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTextTag GtkTextTag_noinc;
#define newSVGtkTextTag_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTextTag GtkTextTag_noinc_ornull;
#define newSVGtkTextTag_noinc_ornull(val)	((val) ? newSVGtkTextTag_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_TAG */

#ifdef GTK_TYPE_TEXT_TAG_TABLE
  /* GObject derivative GtkTextTagTable */
# define SvGtkTextTagTable(sv)	((GtkTextTagTable*)gperl_get_object_check (sv, GTK_TYPE_TEXT_TAG_TABLE))
# define newSVGtkTextTagTable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTextTagTable GtkTextTagTable_ornull;
# define SvGtkTextTagTable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextTagTable(sv) : NULL)
# define newSVGtkTextTagTable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTextTagTable GtkTextTagTable_noinc;
#define newSVGtkTextTagTable_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTextTagTable GtkTextTagTable_noinc_ornull;
#define newSVGtkTextTagTable_noinc_ornull(val)	((val) ? newSVGtkTextTagTable_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TEXT_TAG_TABLE */

#ifdef GTK_TYPE_TEXT_VIEW
  /* GtkObject derivative GtkTextView */
# define SvGtkTextView(sv)	((GtkTextView*)gperl_get_object_check (sv, GTK_TYPE_TEXT_VIEW))
# define newSVGtkTextView(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTextView GtkTextView_ornull;
# define SvGtkTextView_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTextView(sv) : NULL)
# define newSVGtkTextView_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TEXT_VIEW */

#ifdef GTK_TYPE_TEXT_WINDOW_TYPE
  /* GEnum GtkTextWindowType */
# define SvGtkTextWindowType(sv)	((GtkTextWindowType)gperl_convert_enum (GTK_TYPE_TEXT_WINDOW_TYPE, sv))
# define newSVGtkTextWindowType(val)	(gperl_convert_back_enum (GTK_TYPE_TEXT_WINDOW_TYPE, val))
#endif /* GTK_TYPE_TEXT_WINDOW_TYPE */

#ifdef GTK_TYPE_TOGGLE_BUTTON
  /* GtkObject derivative GtkToggleButton */
# define SvGtkToggleButton(sv)	((GtkToggleButton*)gperl_get_object_check (sv, GTK_TYPE_TOGGLE_BUTTON))
# define newSVGtkToggleButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkToggleButton GtkToggleButton_ornull;
# define SvGtkToggleButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToggleButton(sv) : NULL)
# define newSVGtkToggleButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOGGLE_BUTTON */

#ifdef GTK_TYPE_TOOLBAR_CHILD_TYPE
  /* GEnum GtkToolbarChildType */
# define SvGtkToolbarChildType(sv)	((GtkToolbarChildType)gperl_convert_enum (GTK_TYPE_TOOLBAR_CHILD_TYPE, sv))
# define newSVGtkToolbarChildType(val)	(gperl_convert_back_enum (GTK_TYPE_TOOLBAR_CHILD_TYPE, val))
#endif /* GTK_TYPE_TOOLBAR_CHILD_TYPE */

#ifdef GTK_TYPE_TOOLBAR
  /* GtkObject derivative GtkToolbar */
# define SvGtkToolbar(sv)	((GtkToolbar*)gperl_get_object_check (sv, GTK_TYPE_TOOLBAR))
# define newSVGtkToolbar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkToolbar GtkToolbar_ornull;
# define SvGtkToolbar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToolbar(sv) : NULL)
# define newSVGtkToolbar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOOLBAR */

#ifdef GTK_TYPE_TOOLBAR_SPACE_STYLE
  /* GEnum GtkToolbarSpaceStyle */
# define SvGtkToolbarSpaceStyle(sv)	((GtkToolbarSpaceStyle)gperl_convert_enum (GTK_TYPE_TOOLBAR_SPACE_STYLE, sv))
# define newSVGtkToolbarSpaceStyle(val)	(gperl_convert_back_enum (GTK_TYPE_TOOLBAR_SPACE_STYLE, val))
#endif /* GTK_TYPE_TOOLBAR_SPACE_STYLE */

#ifdef GTK_TYPE_TOOLBAR_STYLE
  /* GEnum GtkToolbarStyle */
# define SvGtkToolbarStyle(sv)	((GtkToolbarStyle)gperl_convert_enum (GTK_TYPE_TOOLBAR_STYLE, sv))
# define newSVGtkToolbarStyle(val)	(gperl_convert_back_enum (GTK_TYPE_TOOLBAR_STYLE, val))
#endif /* GTK_TYPE_TOOLBAR_STYLE */

#ifdef GTK_TYPE_TOOLTIPS
  /* GtkObject derivative GtkTooltips */
# define SvGtkTooltips(sv)	((GtkTooltips*)gperl_get_object_check (sv, GTK_TYPE_TOOLTIPS))
# define newSVGtkTooltips(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTooltips GtkTooltips_ornull;
# define SvGtkTooltips_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTooltips(sv) : NULL)
# define newSVGtkTooltips_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOOLTIPS */

#ifdef GTK_TYPE_TREE_DRAG_DEST
  /* GInterface derivative GtkTreeDragDest */
# define SvGtkTreeDragDest(sv)	((GtkTreeDragDest*)gperl_get_object_check (sv, GTK_TYPE_TREE_DRAG_DEST))
# define newSVGtkTreeDragDest(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeDragDest GtkTreeDragDest_ornull;
# define SvGtkTreeDragDest_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeDragDest(sv) : NULL)
# define newSVGtkTreeDragDest_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_TREE_DRAG_DEST */

#ifdef GTK_TYPE_TREE_DRAG_SOURCE
  /* GInterface derivative GtkTreeDragSource */
# define SvGtkTreeDragSource(sv)	((GtkTreeDragSource*)gperl_get_object_check (sv, GTK_TYPE_TREE_DRAG_SOURCE))
# define newSVGtkTreeDragSource(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeDragSource GtkTreeDragSource_ornull;
# define SvGtkTreeDragSource_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeDragSource(sv) : NULL)
# define newSVGtkTreeDragSource_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_TREE_DRAG_SOURCE */

#ifdef GTK_TYPE_TREE_ITER
  /* GBoxed GtkTreeIter */
  typedef GtkTreeIter GtkTreeIter_ornull;
# define SvGtkTreeIter(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TREE_ITER))
# define SvGtkTreeIter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeIter (sv) : NULL)
  typedef GtkTreeIter GtkTreeIter_own;
  typedef GtkTreeIter GtkTreeIter_copy;
  typedef GtkTreeIter GtkTreeIter_own_ornull;
# define newSVGtkTreeIter(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_ITER, FALSE))
# define newSVGtkTreeIter_ornull(val)	((val) ? newSVGtkTreeIter(val) : &PL_sv_undef)
# define newSVGtkTreeIter_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_ITER, TRUE))
# define newSVGtkTreeIter_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TREE_ITER))
# define newSVGtkTreeIter_own_ornull(val)	((val) ? newSVGtkTreeIter_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_ITER */

#ifdef GTK_TYPE_TREE_MODEL_FLAGS
  /* GFlags GtkTreeModelFlags */
# define SvGtkTreeModelFlags(sv)	((GtkTreeModelFlags)gperl_convert_flags (GTK_TYPE_TREE_MODEL_FLAGS, sv))
# define newSVGtkTreeModelFlags(val)	(gperl_convert_back_flags (GTK_TYPE_TREE_MODEL_FLAGS, val))
#endif /* GTK_TYPE_TREE_MODEL_FLAGS */

#ifdef GTK_TYPE_TREE_MODEL
  /* GInterface derivative GtkTreeModel */
# define SvGtkTreeModel(sv)	((GtkTreeModel*)gperl_get_object_check (sv, GTK_TYPE_TREE_MODEL))
# define newSVGtkTreeModel(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeModel GtkTreeModel_ornull;
# define SvGtkTreeModel_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeModel(sv) : NULL)
# define newSVGtkTreeModel_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_TREE_MODEL */

#ifdef GTK_TYPE_TREE_MODEL_SORT
  /* GObject derivative GtkTreeModelSort */
# define SvGtkTreeModelSort(sv)	((GtkTreeModelSort*)gperl_get_object_check (sv, GTK_TYPE_TREE_MODEL_SORT))
# define newSVGtkTreeModelSort(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeModelSort GtkTreeModelSort_ornull;
# define SvGtkTreeModelSort_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeModelSort(sv) : NULL)
# define newSVGtkTreeModelSort_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTreeModelSort GtkTreeModelSort_noinc;
#define newSVGtkTreeModelSort_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTreeModelSort GtkTreeModelSort_noinc_ornull;
#define newSVGtkTreeModelSort_noinc_ornull(val)	((val) ? newSVGtkTreeModelSort_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_MODEL_SORT */

#ifdef GTK_TYPE_TREE_PATH
  /* GBoxed GtkTreePath */
  typedef GtkTreePath GtkTreePath_ornull;
# define SvGtkTreePath(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TREE_PATH))
# define SvGtkTreePath_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreePath (sv) : NULL)
  typedef GtkTreePath GtkTreePath_own;
  typedef GtkTreePath GtkTreePath_copy;
  typedef GtkTreePath GtkTreePath_own_ornull;
# define newSVGtkTreePath(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_PATH, FALSE))
# define newSVGtkTreePath_ornull(val)	((val) ? newSVGtkTreePath(val) : &PL_sv_undef)
# define newSVGtkTreePath_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_PATH, TRUE))
# define newSVGtkTreePath_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TREE_PATH))
# define newSVGtkTreePath_own_ornull(val)	((val) ? newSVGtkTreePath_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_PATH */

#ifdef GTK_TYPE_TREE_ROW_REFERENCE
  /* GBoxed GtkTreeRowReference */
  typedef GtkTreeRowReference GtkTreeRowReference_ornull;
# define SvGtkTreeRowReference(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TREE_ROW_REFERENCE))
# define SvGtkTreeRowReference_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeRowReference (sv) : NULL)
  typedef GtkTreeRowReference GtkTreeRowReference_own;
  typedef GtkTreeRowReference GtkTreeRowReference_copy;
  typedef GtkTreeRowReference GtkTreeRowReference_own_ornull;
# define newSVGtkTreeRowReference(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_ROW_REFERENCE, FALSE))
# define newSVGtkTreeRowReference_ornull(val)	((val) ? newSVGtkTreeRowReference(val) : &PL_sv_undef)
# define newSVGtkTreeRowReference_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TREE_ROW_REFERENCE, TRUE))
# define newSVGtkTreeRowReference_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TREE_ROW_REFERENCE))
# define newSVGtkTreeRowReference_own_ornull(val)	((val) ? newSVGtkTreeRowReference_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_ROW_REFERENCE */

#ifdef GTK_TYPE_TREE_SELECTION
  /* GObject derivative GtkTreeSelection */
# define SvGtkTreeSelection(sv)	((GtkTreeSelection*)gperl_get_object_check (sv, GTK_TYPE_TREE_SELECTION))
# define newSVGtkTreeSelection(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeSelection GtkTreeSelection_ornull;
# define SvGtkTreeSelection_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeSelection(sv) : NULL)
# define newSVGtkTreeSelection_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTreeSelection GtkTreeSelection_noinc;
#define newSVGtkTreeSelection_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTreeSelection GtkTreeSelection_noinc_ornull;
#define newSVGtkTreeSelection_noinc_ornull(val)	((val) ? newSVGtkTreeSelection_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_SELECTION */

#ifdef GTK_TYPE_TREE_SORTABLE
  /* GInterface derivative GtkTreeSortable */
# define SvGtkTreeSortable(sv)	((GtkTreeSortable*)gperl_get_object_check (sv, GTK_TYPE_TREE_SORTABLE))
# define newSVGtkTreeSortable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeSortable GtkTreeSortable_ornull;
# define SvGtkTreeSortable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeSortable(sv) : NULL)
# define newSVGtkTreeSortable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_TREE_SORTABLE */

#ifdef GTK_TYPE_TREE_STORE
  /* GObject derivative GtkTreeStore */
# define SvGtkTreeStore(sv)	((GtkTreeStore*)gperl_get_object_check (sv, GTK_TYPE_TREE_STORE))
# define newSVGtkTreeStore(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeStore GtkTreeStore_ornull;
# define SvGtkTreeStore_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeStore(sv) : NULL)
# define newSVGtkTreeStore_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTreeStore GtkTreeStore_noinc;
#define newSVGtkTreeStore_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTreeStore GtkTreeStore_noinc_ornull;
#define newSVGtkTreeStore_noinc_ornull(val)	((val) ? newSVGtkTreeStore_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_STORE */

#ifdef GTK_TYPE_TREE_VIEW_COLUMN
  /* GtkObject derivative GtkTreeViewColumn */
# define SvGtkTreeViewColumn(sv)	((GtkTreeViewColumn*)gperl_get_object_check (sv, GTK_TYPE_TREE_VIEW_COLUMN))
# define newSVGtkTreeViewColumn(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTreeViewColumn GtkTreeViewColumn_ornull;
# define SvGtkTreeViewColumn_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeViewColumn(sv) : NULL)
# define newSVGtkTreeViewColumn_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TREE_VIEW_COLUMN */

#ifdef GTK_TYPE_TREE_VIEW_COLUMN_SIZING
  /* GEnum GtkTreeViewColumnSizing */
# define SvGtkTreeViewColumnSizing(sv)	((GtkTreeViewColumnSizing)gperl_convert_enum (GTK_TYPE_TREE_VIEW_COLUMN_SIZING, sv))
# define newSVGtkTreeViewColumnSizing(val)	(gperl_convert_back_enum (GTK_TYPE_TREE_VIEW_COLUMN_SIZING, val))
#endif /* GTK_TYPE_TREE_VIEW_COLUMN_SIZING */

#ifdef GTK_TYPE_TREE_VIEW_DROP_POSITION
  /* GEnum GtkTreeViewDropPosition */
# define SvGtkTreeViewDropPosition(sv)	((GtkTreeViewDropPosition)gperl_convert_enum (GTK_TYPE_TREE_VIEW_DROP_POSITION, sv))
# define newSVGtkTreeViewDropPosition(val)	(gperl_convert_back_enum (GTK_TYPE_TREE_VIEW_DROP_POSITION, val))
#endif /* GTK_TYPE_TREE_VIEW_DROP_POSITION */

#ifdef GTK_TYPE_TREE_VIEW
  /* GtkObject derivative GtkTreeView */
# define SvGtkTreeView(sv)	((GtkTreeView*)gperl_get_object_check (sv, GTK_TYPE_TREE_VIEW))
# define newSVGtkTreeView(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkTreeView GtkTreeView_ornull;
# define SvGtkTreeView_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeView(sv) : NULL)
# define newSVGtkTreeView_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TREE_VIEW */

#ifdef GTK_TYPE_TREE_VIEW_MODE
  /* GEnum GtkTreeViewMode */
# define SvGtkTreeViewMode(sv)	((GtkTreeViewMode)gperl_convert_enum (GTK_TYPE_TREE_VIEW_MODE, sv))
# define newSVGtkTreeViewMode(val)	(gperl_convert_back_enum (GTK_TYPE_TREE_VIEW_MODE, val))
#endif /* GTK_TYPE_TREE_VIEW_MODE */

#ifdef GTK_TYPE_UPDATE_TYPE
  /* GEnum GtkUpdateType */
# define SvGtkUpdateType(sv)	((GtkUpdateType)gperl_convert_enum (GTK_TYPE_UPDATE_TYPE, sv))
# define newSVGtkUpdateType(val)	(gperl_convert_back_enum (GTK_TYPE_UPDATE_TYPE, val))
#endif /* GTK_TYPE_UPDATE_TYPE */

#ifdef GTK_TYPE_VBOX
  /* GtkObject derivative GtkVBox */
# define SvGtkVBox(sv)	((GtkVBox*)gperl_get_object_check (sv, GTK_TYPE_VBOX))
# define newSVGtkVBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVBox GtkVBox_ornull;
# define SvGtkVBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVBox(sv) : NULL)
# define newSVGtkVBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VBOX */

#ifdef GTK_TYPE_VBUTTON_BOX
  /* GtkObject derivative GtkVButtonBox */
# define SvGtkVButtonBox(sv)	((GtkVButtonBox*)gperl_get_object_check (sv, GTK_TYPE_VBUTTON_BOX))
# define newSVGtkVButtonBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVButtonBox GtkVButtonBox_ornull;
# define SvGtkVButtonBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVButtonBox(sv) : NULL)
# define newSVGtkVButtonBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VBUTTON_BOX */

#ifdef GTK_TYPE_VIEWPORT
  /* GtkObject derivative GtkViewport */
# define SvGtkViewport(sv)	((GtkViewport*)gperl_get_object_check (sv, GTK_TYPE_VIEWPORT))
# define newSVGtkViewport(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkViewport GtkViewport_ornull;
# define SvGtkViewport_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkViewport(sv) : NULL)
# define newSVGtkViewport_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VIEWPORT */

#ifdef GTK_TYPE_VISIBILITY
  /* GEnum GtkVisibility */
# define SvGtkVisibility(sv)	((GtkVisibility)gperl_convert_enum (GTK_TYPE_VISIBILITY, sv))
# define newSVGtkVisibility(val)	(gperl_convert_back_enum (GTK_TYPE_VISIBILITY, val))
#endif /* GTK_TYPE_VISIBILITY */

#ifdef GTK_TYPE_VPANED
  /* GtkObject derivative GtkVPaned */
# define SvGtkVPaned(sv)	((GtkVPaned*)gperl_get_object_check (sv, GTK_TYPE_VPANED))
# define newSVGtkVPaned(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVPaned GtkVPaned_ornull;
# define SvGtkVPaned_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVPaned(sv) : NULL)
# define newSVGtkVPaned_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VPANED */

#ifdef GTK_TYPE_VRULER
  /* GtkObject derivative GtkVRuler */
# define SvGtkVRuler(sv)	((GtkVRuler*)gperl_get_object_check (sv, GTK_TYPE_VRULER))
# define newSVGtkVRuler(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVRuler GtkVRuler_ornull;
# define SvGtkVRuler_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVRuler(sv) : NULL)
# define newSVGtkVRuler_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VRULER */

#ifdef GTK_TYPE_VSCALE
  /* GtkObject derivative GtkVScale */
# define SvGtkVScale(sv)	((GtkVScale*)gperl_get_object_check (sv, GTK_TYPE_VSCALE))
# define newSVGtkVScale(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVScale GtkVScale_ornull;
# define SvGtkVScale_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVScale(sv) : NULL)
# define newSVGtkVScale_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VSCALE */

#ifdef GTK_TYPE_VSCROLLBAR
  /* GtkObject derivative GtkVScrollbar */
# define SvGtkVScrollbar(sv)	((GtkVScrollbar*)gperl_get_object_check (sv, GTK_TYPE_VSCROLLBAR))
# define newSVGtkVScrollbar(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVScrollbar GtkVScrollbar_ornull;
# define SvGtkVScrollbar_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVScrollbar(sv) : NULL)
# define newSVGtkVScrollbar_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VSCROLLBAR */

#ifdef GTK_TYPE_VSEPARATOR
  /* GtkObject derivative GtkVSeparator */
# define SvGtkVSeparator(sv)	((GtkVSeparator*)gperl_get_object_check (sv, GTK_TYPE_VSEPARATOR))
# define newSVGtkVSeparator(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVSeparator GtkVSeparator_ornull;
# define SvGtkVSeparator_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVSeparator(sv) : NULL)
# define newSVGtkVSeparator_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VSEPARATOR */

#ifdef GTK_TYPE_WIDGET_FLAGS
  /* GFlags GtkWidgetFlags */
# define SvGtkWidgetFlags(sv)	((GtkWidgetFlags)gperl_convert_flags (GTK_TYPE_WIDGET_FLAGS, sv))
# define newSVGtkWidgetFlags(val)	(gperl_convert_back_flags (GTK_TYPE_WIDGET_FLAGS, val))
#endif /* GTK_TYPE_WIDGET_FLAGS */

#ifdef GTK_TYPE_WIDGET
  /* GtkObject derivative GtkWidget */
# define SvGtkWidget(sv)	((GtkWidget*)gperl_get_object_check (sv, GTK_TYPE_WIDGET))
# define newSVGtkWidget(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkWidget GtkWidget_ornull;
# define SvGtkWidget_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkWidget(sv) : NULL)
# define newSVGtkWidget_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_WIDGET */

#ifdef GTK_TYPE_WIDGET_HELP_TYPE
  /* GEnum GtkWidgetHelpType */
# define SvGtkWidgetHelpType(sv)	((GtkWidgetHelpType)gperl_convert_enum (GTK_TYPE_WIDGET_HELP_TYPE, sv))
# define newSVGtkWidgetHelpType(val)	(gperl_convert_back_enum (GTK_TYPE_WIDGET_HELP_TYPE, val))
#endif /* GTK_TYPE_WIDGET_HELP_TYPE */

#ifdef GTK_TYPE_WINDOW_GROUP
  /* GObject derivative GtkWindowGroup */
# define SvGtkWindowGroup(sv)	((GtkWindowGroup*)gperl_get_object_check (sv, GTK_TYPE_WINDOW_GROUP))
# define newSVGtkWindowGroup(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkWindowGroup GtkWindowGroup_ornull;
# define SvGtkWindowGroup_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkWindowGroup(sv) : NULL)
# define newSVGtkWindowGroup_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkWindowGroup GtkWindowGroup_noinc;
#define newSVGtkWindowGroup_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkWindowGroup GtkWindowGroup_noinc_ornull;
#define newSVGtkWindowGroup_noinc_ornull(val)	((val) ? newSVGtkWindowGroup_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_WINDOW_GROUP */

#ifdef GTK_TYPE_WINDOW
  /* GtkObject derivative GtkWindow */
# define SvGtkWindow(sv)	((GtkWindow*)gperl_get_object_check (sv, GTK_TYPE_WINDOW))
# define newSVGtkWindow(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkWindow GtkWindow_ornull;
# define SvGtkWindow_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkWindow(sv) : NULL)
# define newSVGtkWindow_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_WINDOW */

#ifdef GTK_TYPE_WINDOW_POSITION
  /* GEnum GtkWindowPosition */
# define SvGtkWindowPosition(sv)	((GtkWindowPosition)gperl_convert_enum (GTK_TYPE_WINDOW_POSITION, sv))
# define newSVGtkWindowPosition(val)	(gperl_convert_back_enum (GTK_TYPE_WINDOW_POSITION, val))
#endif /* GTK_TYPE_WINDOW_POSITION */

#ifdef GTK_TYPE_WINDOW_TYPE
  /* GEnum GtkWindowType */
# define SvGtkWindowType(sv)	((GtkWindowType)gperl_convert_enum (GTK_TYPE_WINDOW_TYPE, sv))
# define newSVGtkWindowType(val)	(gperl_convert_back_enum (GTK_TYPE_WINDOW_TYPE, val))
#endif /* GTK_TYPE_WINDOW_TYPE */

#ifdef GTK_TYPE_WRAP_MODE
  /* GEnum GtkWrapMode */
# define SvGtkWrapMode(sv)	((GtkWrapMode)gperl_convert_enum (GTK_TYPE_WRAP_MODE, sv))
# define newSVGtkWrapMode(val)	(gperl_convert_back_enum (GTK_TYPE_WRAP_MODE, val))
#endif /* GTK_TYPE_WRAP_MODE */

#ifdef GDK_TYPE_REGION
  /* GBoxed GdkRegion */
  typedef GdkRegion GdkRegion_ornull;
# define SvGdkRegion(sv)	(gperl_get_boxed_check ((sv), GDK_TYPE_REGION))
# define SvGdkRegion_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkRegion (sv) : NULL)
  typedef GdkRegion GdkRegion_own;
  typedef GdkRegion GdkRegion_copy;
  typedef GdkRegion GdkRegion_own_ornull;
# define newSVGdkRegion(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_REGION, FALSE))
# define newSVGdkRegion_ornull(val)	((val) ? newSVGdkRegion(val) : &PL_sv_undef)
# define newSVGdkRegion_own(val)	(gperl_new_boxed ((gpointer) (val), GDK_TYPE_REGION, TRUE))
# define newSVGdkRegion_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GDK_TYPE_REGION))
# define newSVGdkRegion_own_ornull(val)	((val) ? newSVGdkRegion_own(val) : &PL_sv_undef)
#endif /* GDK_TYPE_REGION */

#ifdef GTK_TYPE_ASSISTANT
  /* GtkObject derivative GtkAssistant */
# define SvGtkAssistant(sv)	((GtkAssistant*)gperl_get_object_check (sv, GTK_TYPE_ASSISTANT))
# define newSVGtkAssistant(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAssistant GtkAssistant_ornull;
# define SvGtkAssistant_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAssistant(sv) : NULL)
# define newSVGtkAssistant_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ASSISTANT */

#ifdef GTK_TYPE_ASSISTANT_PAGE_TYPE
  /* GEnum GtkAssistantPageType */
# define SvGtkAssistantPageType(sv)	((GtkAssistantPageType)gperl_convert_enum (GTK_TYPE_ASSISTANT_PAGE_TYPE, sv))
# define newSVGtkAssistantPageType(val)	(gperl_convert_back_enum (GTK_TYPE_ASSISTANT_PAGE_TYPE, val))
#endif /* GTK_TYPE_ASSISTANT_PAGE_TYPE */

#ifdef GTK_TYPE_CELL_RENDERER_ACCEL
  /* GtkObject derivative GtkCellRendererAccel */
# define SvGtkCellRendererAccel(sv)	((GtkCellRendererAccel*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_ACCEL))
# define newSVGtkCellRendererAccel(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererAccel GtkCellRendererAccel_ornull;
# define SvGtkCellRendererAccel_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererAccel(sv) : NULL)
# define newSVGtkCellRendererAccel_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_ACCEL */

#ifdef GTK_TYPE_CELL_RENDERER_ACCEL_MODE
  /* GEnum GtkCellRendererAccelMode */
# define SvGtkCellRendererAccelMode(sv)	((GtkCellRendererAccelMode)gperl_convert_enum (GTK_TYPE_CELL_RENDERER_ACCEL_MODE, sv))
# define newSVGtkCellRendererAccelMode(val)	(gperl_convert_back_enum (GTK_TYPE_CELL_RENDERER_ACCEL_MODE, val))
#endif /* GTK_TYPE_CELL_RENDERER_ACCEL_MODE */

#ifdef GTK_TYPE_CELL_RENDERER_SPIN
  /* GtkObject derivative GtkCellRendererSpin */
# define SvGtkCellRendererSpin(sv)	((GtkCellRendererSpin*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_SPIN))
# define newSVGtkCellRendererSpin(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererSpin GtkCellRendererSpin_ornull;
# define SvGtkCellRendererSpin_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererSpin(sv) : NULL)
# define newSVGtkCellRendererSpin_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_SPIN */

#ifdef GTK_TYPE_LINK_BUTTON
  /* GtkObject derivative GtkLinkButton */
# define SvGtkLinkButton(sv)	((GtkLinkButton*)gperl_get_object_check (sv, GTK_TYPE_LINK_BUTTON))
# define newSVGtkLinkButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkLinkButton GtkLinkButton_ornull;
# define SvGtkLinkButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkLinkButton(sv) : NULL)
# define newSVGtkLinkButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_LINK_BUTTON */

#ifdef GTK_TYPE_PAGE_ORIENTATION
  /* GEnum GtkPageOrientation */
# define SvGtkPageOrientation(sv)	((GtkPageOrientation)gperl_convert_enum (GTK_TYPE_PAGE_ORIENTATION, sv))
# define newSVGtkPageOrientation(val)	(gperl_convert_back_enum (GTK_TYPE_PAGE_ORIENTATION, val))
#endif /* GTK_TYPE_PAGE_ORIENTATION */

#ifdef GTK_TYPE_PAGE_SETUP
  /* GObject derivative GtkPageSetup */
# define SvGtkPageSetup(sv)	((GtkPageSetup*)gperl_get_object_check (sv, GTK_TYPE_PAGE_SETUP))
# define newSVGtkPageSetup(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkPageSetup GtkPageSetup_ornull;
# define SvGtkPageSetup_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPageSetup(sv) : NULL)
# define newSVGtkPageSetup_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkPageSetup GtkPageSetup_noinc;
#define newSVGtkPageSetup_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkPageSetup GtkPageSetup_noinc_ornull;
#define newSVGtkPageSetup_noinc_ornull(val)	((val) ? newSVGtkPageSetup_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_PAGE_SETUP */

#ifdef GTK_TYPE_PAPER_SIZE
  /* GBoxed GtkPaperSize */
  typedef GtkPaperSize GtkPaperSize_ornull;
# define SvGtkPaperSize(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_PAPER_SIZE))
# define SvGtkPaperSize_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPaperSize (sv) : NULL)
  typedef GtkPaperSize GtkPaperSize_own;
  typedef GtkPaperSize GtkPaperSize_copy;
  typedef GtkPaperSize GtkPaperSize_own_ornull;
# define newSVGtkPaperSize(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_PAPER_SIZE, FALSE))
# define newSVGtkPaperSize_ornull(val)	((val) ? newSVGtkPaperSize(val) : &PL_sv_undef)
# define newSVGtkPaperSize_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_PAPER_SIZE, TRUE))
# define newSVGtkPaperSize_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_PAPER_SIZE))
# define newSVGtkPaperSize_own_ornull(val)	((val) ? newSVGtkPaperSize_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_PAPER_SIZE */

#ifdef GTK_TYPE_PRINT_CONTEXT
  /* GObject derivative GtkPrintContext */
# define SvGtkPrintContext(sv)	((GtkPrintContext*)gperl_get_object_check (sv, GTK_TYPE_PRINT_CONTEXT))
# define newSVGtkPrintContext(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkPrintContext GtkPrintContext_ornull;
# define SvGtkPrintContext_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPrintContext(sv) : NULL)
# define newSVGtkPrintContext_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkPrintContext GtkPrintContext_noinc;
#define newSVGtkPrintContext_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkPrintContext GtkPrintContext_noinc_ornull;
#define newSVGtkPrintContext_noinc_ornull(val)	((val) ? newSVGtkPrintContext_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_PRINT_CONTEXT */

#ifdef GTK_TYPE_PRINT_OPERATION
  /* GObject derivative GtkPrintOperation */
# define SvGtkPrintOperation(sv)	((GtkPrintOperation*)gperl_get_object_check (sv, GTK_TYPE_PRINT_OPERATION))
# define newSVGtkPrintOperation(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkPrintOperation GtkPrintOperation_ornull;
# define SvGtkPrintOperation_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPrintOperation(sv) : NULL)
# define newSVGtkPrintOperation_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkPrintOperation GtkPrintOperation_noinc;
#define newSVGtkPrintOperation_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkPrintOperation GtkPrintOperation_noinc_ornull;
#define newSVGtkPrintOperation_noinc_ornull(val)	((val) ? newSVGtkPrintOperation_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_PRINT_OPERATION */

#ifdef GTK_TYPE_PRINT_OPERATION_ACTION
  /* GEnum GtkPrintOperationAction */
# define SvGtkPrintOperationAction(sv)	((GtkPrintOperationAction)gperl_convert_enum (GTK_TYPE_PRINT_OPERATION_ACTION, sv))
# define newSVGtkPrintOperationAction(val)	(gperl_convert_back_enum (GTK_TYPE_PRINT_OPERATION_ACTION, val))
#endif /* GTK_TYPE_PRINT_OPERATION_ACTION */

#ifdef GTK_TYPE_PRINT_OPERATION_PREVIEW
  /* GInterface derivative GtkPrintOperationPreview */
# define SvGtkPrintOperationPreview(sv)	((GtkPrintOperationPreview*)gperl_get_object_check (sv, GTK_TYPE_PRINT_OPERATION_PREVIEW))
# define newSVGtkPrintOperationPreview(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkPrintOperationPreview GtkPrintOperationPreview_ornull;
# define SvGtkPrintOperationPreview_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPrintOperationPreview(sv) : NULL)
# define newSVGtkPrintOperationPreview_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_PRINT_OPERATION_PREVIEW */

#ifdef GTK_TYPE_PRINT_OPERATION_RESULT
  /* GEnum GtkPrintOperationResult */
# define SvGtkPrintOperationResult(sv)	((GtkPrintOperationResult)gperl_convert_enum (GTK_TYPE_PRINT_OPERATION_RESULT, sv))
# define newSVGtkPrintOperationResult(val)	(gperl_convert_back_enum (GTK_TYPE_PRINT_OPERATION_RESULT, val))
#endif /* GTK_TYPE_PRINT_OPERATION_RESULT */

#ifdef GTK_TYPE_PRINT_SETTINGS
  /* GObject derivative GtkPrintSettings */
# define SvGtkPrintSettings(sv)	((GtkPrintSettings*)gperl_get_object_check (sv, GTK_TYPE_PRINT_SETTINGS))
# define newSVGtkPrintSettings(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkPrintSettings GtkPrintSettings_ornull;
# define SvGtkPrintSettings_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkPrintSettings(sv) : NULL)
# define newSVGtkPrintSettings_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkPrintSettings GtkPrintSettings_noinc;
#define newSVGtkPrintSettings_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkPrintSettings GtkPrintSettings_noinc_ornull;
#define newSVGtkPrintSettings_noinc_ornull(val)	((val) ? newSVGtkPrintSettings_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_PRINT_SETTINGS */

#ifdef GTK_TYPE_PRINT_STATUS
  /* GEnum GtkPrintStatus */
# define SvGtkPrintStatus(sv)	((GtkPrintStatus)gperl_convert_enum (GTK_TYPE_PRINT_STATUS, sv))
# define newSVGtkPrintStatus(val)	(gperl_convert_back_enum (GTK_TYPE_PRINT_STATUS, val))
#endif /* GTK_TYPE_PRINT_STATUS */

#ifdef GTK_TYPE_RECENT_CHOOSER
  /* GInterface derivative GtkRecentChooser */
# define SvGtkRecentChooser(sv)	((GtkRecentChooser*)gperl_get_object_check (sv, GTK_TYPE_RECENT_CHOOSER))
# define newSVGtkRecentChooser(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkRecentChooser GtkRecentChooser_ornull;
# define SvGtkRecentChooser_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentChooser(sv) : NULL)
# define newSVGtkRecentChooser_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_RECENT_CHOOSER */

#ifdef GTK_TYPE_RECENT_CHOOSER_DIALOG
  /* GtkObject derivative GtkRecentChooserDialog */
# define SvGtkRecentChooserDialog(sv)	((GtkRecentChooserDialog*)gperl_get_object_check (sv, GTK_TYPE_RECENT_CHOOSER_DIALOG))
# define newSVGtkRecentChooserDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRecentChooserDialog GtkRecentChooserDialog_ornull;
# define SvGtkRecentChooserDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentChooserDialog(sv) : NULL)
# define newSVGtkRecentChooserDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RECENT_CHOOSER_DIALOG */

#ifdef GTK_TYPE_RECENT_CHOOSER_MENU
  /* GtkObject derivative GtkRecentChooserMenu */
# define SvGtkRecentChooserMenu(sv)	((GtkRecentChooserMenu*)gperl_get_object_check (sv, GTK_TYPE_RECENT_CHOOSER_MENU))
# define newSVGtkRecentChooserMenu(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRecentChooserMenu GtkRecentChooserMenu_ornull;
# define SvGtkRecentChooserMenu_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentChooserMenu(sv) : NULL)
# define newSVGtkRecentChooserMenu_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RECENT_CHOOSER_MENU */

#ifdef GTK_TYPE_RECENT_CHOOSER_WIDGET
  /* GtkObject derivative GtkRecentChooserWidget */
# define SvGtkRecentChooserWidget(sv)	((GtkRecentChooserWidget*)gperl_get_object_check (sv, GTK_TYPE_RECENT_CHOOSER_WIDGET))
# define newSVGtkRecentChooserWidget(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRecentChooserWidget GtkRecentChooserWidget_ornull;
# define SvGtkRecentChooserWidget_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentChooserWidget(sv) : NULL)
# define newSVGtkRecentChooserWidget_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RECENT_CHOOSER_WIDGET */

#ifdef GTK_TYPE_RECENT_FILTER
  /* GtkObject derivative GtkRecentFilter */
# define SvGtkRecentFilter(sv)	((GtkRecentFilter*)gperl_get_object_check (sv, GTK_TYPE_RECENT_FILTER))
# define newSVGtkRecentFilter(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRecentFilter GtkRecentFilter_ornull;
# define SvGtkRecentFilter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentFilter(sv) : NULL)
# define newSVGtkRecentFilter_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RECENT_FILTER */

#ifdef GTK_TYPE_RECENT_FILTER_FLAGS
  /* GFlags GtkRecentFilterFlags */
# define SvGtkRecentFilterFlags(sv)	((GtkRecentFilterFlags)gperl_convert_flags (GTK_TYPE_RECENT_FILTER_FLAGS, sv))
# define newSVGtkRecentFilterFlags(val)	(gperl_convert_back_flags (GTK_TYPE_RECENT_FILTER_FLAGS, val))
#endif /* GTK_TYPE_RECENT_FILTER_FLAGS */

#ifdef GTK_TYPE_RECENT_INFO
  /* GBoxed GtkRecentInfo */
  typedef GtkRecentInfo GtkRecentInfo_ornull;
# define SvGtkRecentInfo(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_RECENT_INFO))
# define SvGtkRecentInfo_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentInfo (sv) : NULL)
  typedef GtkRecentInfo GtkRecentInfo_own;
  typedef GtkRecentInfo GtkRecentInfo_copy;
  typedef GtkRecentInfo GtkRecentInfo_own_ornull;
# define newSVGtkRecentInfo(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_RECENT_INFO, FALSE))
# define newSVGtkRecentInfo_ornull(val)	((val) ? newSVGtkRecentInfo(val) : &PL_sv_undef)
# define newSVGtkRecentInfo_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_RECENT_INFO, TRUE))
# define newSVGtkRecentInfo_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_RECENT_INFO))
# define newSVGtkRecentInfo_own_ornull(val)	((val) ? newSVGtkRecentInfo_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RECENT_INFO */

#ifdef GTK_TYPE_RECENT_MANAGER
  /* GObject derivative GtkRecentManager */
# define SvGtkRecentManager(sv)	((GtkRecentManager*)gperl_get_object_check (sv, GTK_TYPE_RECENT_MANAGER))
# define newSVGtkRecentManager(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkRecentManager GtkRecentManager_ornull;
# define SvGtkRecentManager_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentManager(sv) : NULL)
# define newSVGtkRecentManager_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkRecentManager GtkRecentManager_noinc;
#define newSVGtkRecentManager_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkRecentManager GtkRecentManager_noinc_ornull;
#define newSVGtkRecentManager_noinc_ornull(val)	((val) ? newSVGtkRecentManager_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RECENT_MANAGER */

#ifdef GTK_TYPE_RECENT_SORT_TYPE
  /* GEnum GtkRecentSortType */
# define SvGtkRecentSortType(sv)	((GtkRecentSortType)gperl_convert_enum (GTK_TYPE_RECENT_SORT_TYPE, sv))
# define newSVGtkRecentSortType(val)	(gperl_convert_back_enum (GTK_TYPE_RECENT_SORT_TYPE, val))
#endif /* GTK_TYPE_RECENT_SORT_TYPE */

#ifdef GTK_TYPE_SENSITIVITY_TYPE
  /* GEnum GtkSensitivityType */
# define SvGtkSensitivityType(sv)	((GtkSensitivityType)gperl_convert_enum (GTK_TYPE_SENSITIVITY_TYPE, sv))
# define newSVGtkSensitivityType(val)	(gperl_convert_back_enum (GTK_TYPE_SENSITIVITY_TYPE, val))
#endif /* GTK_TYPE_SENSITIVITY_TYPE */

#ifdef GTK_TYPE_STATUS_ICON
  /* GObject derivative GtkStatusIcon */
# define SvGtkStatusIcon(sv)	((GtkStatusIcon*)gperl_get_object_check (sv, GTK_TYPE_STATUS_ICON))
# define newSVGtkStatusIcon(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkStatusIcon GtkStatusIcon_ornull;
# define SvGtkStatusIcon_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkStatusIcon(sv) : NULL)
# define newSVGtkStatusIcon_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkStatusIcon GtkStatusIcon_noinc;
#define newSVGtkStatusIcon_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkStatusIcon GtkStatusIcon_noinc_ornull;
#define newSVGtkStatusIcon_noinc_ornull(val)	((val) ? newSVGtkStatusIcon_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_STATUS_ICON */

#ifdef GTK_TYPE_TARGET_LIST
  /* GBoxed GtkTargetList */
  typedef GtkTargetList GtkTargetList_ornull;
# define SvGtkTargetList(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TARGET_LIST))
# define SvGtkTargetList_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTargetList (sv) : NULL)
  typedef GtkTargetList GtkTargetList_own;
  typedef GtkTargetList GtkTargetList_copy;
  typedef GtkTargetList GtkTargetList_own_ornull;
# define newSVGtkTargetList(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TARGET_LIST, FALSE))
# define newSVGtkTargetList_ornull(val)	((val) ? newSVGtkTargetList(val) : &PL_sv_undef)
# define newSVGtkTargetList_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TARGET_LIST, TRUE))
# define newSVGtkTargetList_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TARGET_LIST))
# define newSVGtkTargetList_own_ornull(val)	((val) ? newSVGtkTargetList_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TARGET_LIST */

#ifdef GTK_TYPE_TREE_VIEW_GRID_LINES
  /* GEnum GtkTreeViewGridLines */
# define SvGtkTreeViewGridLines(sv)	((GtkTreeViewGridLines)gperl_convert_enum (GTK_TYPE_TREE_VIEW_GRID_LINES, sv))
# define newSVGtkTreeViewGridLines(val)	(gperl_convert_back_enum (GTK_TYPE_TREE_VIEW_GRID_LINES, val))
#endif /* GTK_TYPE_TREE_VIEW_GRID_LINES */

#ifdef GTK_TYPE_UNIT
  /* GEnum GtkUnit */
# define SvGtkUnit(sv)	((GtkUnit)gperl_convert_enum (GTK_TYPE_UNIT, sv))
# define newSVGtkUnit(val)	(gperl_convert_back_enum (GTK_TYPE_UNIT, val))
#endif /* GTK_TYPE_UNIT */

#ifdef GTK_TYPE_BUILDABLE
  /* GInterface derivative GtkBuildable */
# define SvGtkBuildable(sv)	((GtkBuildable*)gperl_get_object_check (sv, GTK_TYPE_BUILDABLE))
# define newSVGtkBuildable(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkBuildable GtkBuildable_ornull;
# define SvGtkBuildable_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkBuildable(sv) : NULL)
# define newSVGtkBuildable_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_BUILDABLE */

#ifdef GTK_TYPE_BUILDER
  /* GObject derivative GtkBuilder */
# define SvGtkBuilder(sv)	((GtkBuilder*)gperl_get_object_check (sv, GTK_TYPE_BUILDER))
# define newSVGtkBuilder(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkBuilder GtkBuilder_ornull;
# define SvGtkBuilder_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkBuilder(sv) : NULL)
# define newSVGtkBuilder_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkBuilder GtkBuilder_noinc;
#define newSVGtkBuilder_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkBuilder GtkBuilder_noinc_ornull;
#define newSVGtkBuilder_noinc_ornull(val)	((val) ? newSVGtkBuilder_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_BUILDER */

#ifdef GTK_TYPE_RECENT_ACTION
  /* GObject derivative GtkRecentAction */
# define SvGtkRecentAction(sv)	((GtkRecentAction*)gperl_get_object_check (sv, GTK_TYPE_RECENT_ACTION))
# define newSVGtkRecentAction(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkRecentAction GtkRecentAction_ornull;
# define SvGtkRecentAction_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRecentAction(sv) : NULL)
# define newSVGtkRecentAction_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkRecentAction GtkRecentAction_noinc;
#define newSVGtkRecentAction_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkRecentAction GtkRecentAction_noinc_ornull;
#define newSVGtkRecentAction_noinc_ornull(val)	((val) ? newSVGtkRecentAction_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RECENT_ACTION */

#ifdef GTK_TYPE_SCALE_BUTTON
  /* GtkObject derivative GtkScaleButton */
# define SvGtkScaleButton(sv)	((GtkScaleButton*)gperl_get_object_check (sv, GTK_TYPE_SCALE_BUTTON))
# define newSVGtkScaleButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkScaleButton GtkScaleButton_ornull;
# define SvGtkScaleButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkScaleButton(sv) : NULL)
# define newSVGtkScaleButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SCALE_BUTTON */

#ifdef GTK_TYPE_TOOLTIP
  /* GObject derivative GtkTooltip */
# define SvGtkTooltip(sv)	((GtkTooltip*)gperl_get_object_check (sv, GTK_TYPE_TOOLTIP))
# define newSVGtkTooltip(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTooltip GtkTooltip_ornull;
# define SvGtkTooltip_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTooltip(sv) : NULL)
# define newSVGtkTooltip_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTooltip GtkTooltip_noinc;
#define newSVGtkTooltip_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTooltip GtkTooltip_noinc_ornull;
#define newSVGtkTooltip_noinc_ornull(val)	((val) ? newSVGtkTooltip_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TOOLTIP */

#ifdef GTK_TYPE_VOLUME_BUTTON
  /* GtkObject derivative GtkVolumeButton */
# define SvGtkVolumeButton(sv)	((GtkVolumeButton*)gperl_get_object_check (sv, GTK_TYPE_VOLUME_BUTTON))
# define newSVGtkVolumeButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkVolumeButton GtkVolumeButton_ornull;
# define SvGtkVolumeButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkVolumeButton(sv) : NULL)
# define newSVGtkVolumeButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_VOLUME_BUTTON */

#ifdef GDK_TYPE_DISPLAY
  /* GObject derivative GdkDisplay */
# define SvGdkDisplay(sv)	((GdkDisplay*)gperl_get_object_check (sv, GDK_TYPE_DISPLAY))
# define newSVGdkDisplay(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkDisplay GdkDisplay_ornull;
# define SvGdkDisplay_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkDisplay(sv) : NULL)
# define newSVGdkDisplay_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkDisplay GdkDisplay_noinc;
#define newSVGdkDisplay_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkDisplay GdkDisplay_noinc_ornull;
#define newSVGdkDisplay_noinc_ornull(val)	((val) ? newSVGdkDisplay_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_DISPLAY */

#ifdef GDK_TYPE_DISPLAY_MANAGER
  /* GObject derivative GdkDisplayManager */
# define SvGdkDisplayManager(sv)	((GdkDisplayManager*)gperl_get_object_check (sv, GDK_TYPE_DISPLAY_MANAGER))
# define newSVGdkDisplayManager(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkDisplayManager GdkDisplayManager_ornull;
# define SvGdkDisplayManager_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkDisplayManager(sv) : NULL)
# define newSVGdkDisplayManager_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkDisplayManager GdkDisplayManager_noinc;
#define newSVGdkDisplayManager_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkDisplayManager GdkDisplayManager_noinc_ornull;
#define newSVGdkDisplayManager_noinc_ornull(val)	((val) ? newSVGdkDisplayManager_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_DISPLAY_MANAGER */

#ifdef GDK_TYPE_SCREEN
  /* GObject derivative GdkScreen */
# define SvGdkScreen(sv)	((GdkScreen*)gperl_get_object_check (sv, GDK_TYPE_SCREEN))
# define newSVGdkScreen(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkScreen GdkScreen_ornull;
# define SvGdkScreen_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkScreen(sv) : NULL)
# define newSVGdkScreen_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkScreen GdkScreen_noinc;
#define newSVGdkScreen_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkScreen GdkScreen_noinc_ornull;
#define newSVGdkScreen_noinc_ornull(val)	((val) ? newSVGdkScreen_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_SCREEN */

#ifdef GTK_TYPE_CLIPBOARD
  /* GObject derivative GtkClipboard */
# define SvGtkClipboard(sv)	((GtkClipboard*)gperl_get_object_check (sv, GTK_TYPE_CLIPBOARD))
# define newSVGtkClipboard(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkClipboard GtkClipboard_ornull;
# define SvGtkClipboard_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkClipboard(sv) : NULL)
# define newSVGtkClipboard_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkClipboard GtkClipboard_noinc;
#define newSVGtkClipboard_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkClipboard GtkClipboard_noinc_ornull;
#define newSVGtkClipboard_noinc_ornull(val)	((val) ? newSVGtkClipboard_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_CLIPBOARD */

#ifdef GTK_TYPE_COMBO_BOX_ENTRY
  /* GtkObject derivative GtkComboBoxEntry */
# define SvGtkComboBoxEntry(sv)	((GtkComboBoxEntry*)gperl_get_object_check (sv, GTK_TYPE_COMBO_BOX_ENTRY))
# define newSVGtkComboBoxEntry(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkComboBoxEntry GtkComboBoxEntry_ornull;
# define SvGtkComboBoxEntry_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkComboBoxEntry(sv) : NULL)
# define newSVGtkComboBoxEntry_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COMBO_BOX_ENTRY */

#ifdef GTK_TYPE_COMBO_BOX
  /* GtkObject derivative GtkComboBox */
# define SvGtkComboBox(sv)	((GtkComboBox*)gperl_get_object_check (sv, GTK_TYPE_COMBO_BOX))
# define newSVGtkComboBox(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkComboBox GtkComboBox_ornull;
# define SvGtkComboBox_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkComboBox(sv) : NULL)
# define newSVGtkComboBox_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COMBO_BOX */

#ifdef GTK_TYPE_CELL_LAYOUT
  /* GInterface derivative GtkCellLayout */
# define SvGtkCellLayout(sv)	((GtkCellLayout*)gperl_get_object_check (sv, GTK_TYPE_CELL_LAYOUT))
# define newSVGtkCellLayout(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkCellLayout GtkCellLayout_ornull;
# define SvGtkCellLayout_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellLayout(sv) : NULL)
# define newSVGtkCellLayout_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_CELL_LAYOUT */

#ifdef GTK_TYPE_COLOR_BUTTON
  /* GtkObject derivative GtkColorButton */
# define SvGtkColorButton(sv)	((GtkColorButton*)gperl_get_object_check (sv, GTK_TYPE_COLOR_BUTTON))
# define newSVGtkColorButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkColorButton GtkColorButton_ornull;
# define SvGtkColorButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkColorButton(sv) : NULL)
# define newSVGtkColorButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_COLOR_BUTTON */

#ifdef GTK_TYPE_FONT_BUTTON
  /* GtkObject derivative GtkFontButton */
# define SvGtkFontButton(sv)	((GtkFontButton*)gperl_get_object_check (sv, GTK_TYPE_FONT_BUTTON))
# define newSVGtkFontButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFontButton GtkFontButton_ornull;
# define SvGtkFontButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFontButton(sv) : NULL)
# define newSVGtkFontButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FONT_BUTTON */

#ifdef GTK_TYPE_ENTRY_COMPLETION
  /* GObject derivative GtkEntryCompletion */
# define SvGtkEntryCompletion(sv)	((GtkEntryCompletion*)gperl_get_object_check (sv, GTK_TYPE_ENTRY_COMPLETION))
# define newSVGtkEntryCompletion(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkEntryCompletion GtkEntryCompletion_ornull;
# define SvGtkEntryCompletion_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkEntryCompletion(sv) : NULL)
# define newSVGtkEntryCompletion_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkEntryCompletion GtkEntryCompletion_noinc;
#define newSVGtkEntryCompletion_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkEntryCompletion GtkEntryCompletion_noinc_ornull;
#define newSVGtkEntryCompletion_noinc_ornull(val)	((val) ? newSVGtkEntryCompletion_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ENTRY_COMPLETION */

#ifdef GTK_TYPE_EXPANDER
  /* GtkObject derivative GtkExpander */
# define SvGtkExpander(sv)	((GtkExpander*)gperl_get_object_check (sv, GTK_TYPE_EXPANDER))
# define newSVGtkExpander(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkExpander GtkExpander_ornull;
# define SvGtkExpander_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkExpander(sv) : NULL)
# define newSVGtkExpander_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_EXPANDER */

#ifdef GTK_TYPE_FILE_CHOOSER
  /* GInterface derivative GtkFileChooser */
# define SvGtkFileChooser(sv)	((GtkFileChooser*)gperl_get_object_check (sv, GTK_TYPE_FILE_CHOOSER))
# define newSVGtkFileChooser(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkFileChooser GtkFileChooser_ornull;
# define SvGtkFileChooser_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileChooser(sv) : NULL)
# define newSVGtkFileChooser_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* GTK_TYPE_FILE_CHOOSER */

#ifdef GTK_TYPE_FILE_CHOOSER_ACTION
  /* GEnum GtkFileChooserAction */
# define SvGtkFileChooserAction(sv)	((GtkFileChooserAction)gperl_convert_enum (GTK_TYPE_FILE_CHOOSER_ACTION, sv))
# define newSVGtkFileChooserAction(val)	(gperl_convert_back_enum (GTK_TYPE_FILE_CHOOSER_ACTION, val))
#endif /* GTK_TYPE_FILE_CHOOSER_ACTION */

#ifdef GTK_TYPE_FILE_CHOOSER_ERROR
  /* GEnum GtkFileChooserError */
# define SvGtkFileChooserError(sv)	((GtkFileChooserError)gperl_convert_enum (GTK_TYPE_FILE_CHOOSER_ERROR, sv))
# define newSVGtkFileChooserError(val)	(gperl_convert_back_enum (GTK_TYPE_FILE_CHOOSER_ERROR, val))
#endif /* GTK_TYPE_FILE_CHOOSER_ERROR */

#ifdef GTK_TYPE_FILE_CHOOSER_DIALOG
  /* GtkObject derivative GtkFileChooserDialog */
# define SvGtkFileChooserDialog(sv)	((GtkFileChooserDialog*)gperl_get_object_check (sv, GTK_TYPE_FILE_CHOOSER_DIALOG))
# define newSVGtkFileChooserDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFileChooserDialog GtkFileChooserDialog_ornull;
# define SvGtkFileChooserDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileChooserDialog(sv) : NULL)
# define newSVGtkFileChooserDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FILE_CHOOSER_DIALOG */

#ifdef GTK_TYPE_FILE_CHOOSER_WIDGET
  /* GtkObject derivative GtkFileChooserWidget */
# define SvGtkFileChooserWidget(sv)	((GtkFileChooserWidget*)gperl_get_object_check (sv, GTK_TYPE_FILE_CHOOSER_WIDGET))
# define newSVGtkFileChooserWidget(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFileChooserWidget GtkFileChooserWidget_ornull;
# define SvGtkFileChooserWidget_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileChooserWidget(sv) : NULL)
# define newSVGtkFileChooserWidget_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FILE_CHOOSER_WIDGET */

#ifdef GTK_TYPE_FILE_FILTER
  /* GtkObject derivative GtkFileFilter */
# define SvGtkFileFilter(sv)	((GtkFileFilter*)gperl_get_object_check (sv, GTK_TYPE_FILE_FILTER))
# define newSVGtkFileFilter(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFileFilter GtkFileFilter_ornull;
# define SvGtkFileFilter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileFilter(sv) : NULL)
# define newSVGtkFileFilter_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FILE_FILTER */

#ifdef GTK_TYPE_FILE_FILTER_INFO
  /* GBoxed GtkFileFilterInfo */
  typedef GtkFileFilterInfo GtkFileFilterInfo_ornull;
# define SvGtkFileFilterInfo(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_FILE_FILTER_INFO))
# define SvGtkFileFilterInfo_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileFilterInfo (sv) : NULL)
  typedef GtkFileFilterInfo GtkFileFilterInfo_own;
  typedef GtkFileFilterInfo GtkFileFilterInfo_copy;
  typedef GtkFileFilterInfo GtkFileFilterInfo_own_ornull;
# define newSVGtkFileFilterInfo(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_FILE_FILTER_INFO, FALSE))
# define newSVGtkFileFilterInfo_ornull(val)	((val) ? newSVGtkFileFilterInfo(val) : &PL_sv_undef)
# define newSVGtkFileFilterInfo_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_FILE_FILTER_INFO, TRUE))
# define newSVGtkFileFilterInfo_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_FILE_FILTER_INFO))
# define newSVGtkFileFilterInfo_own_ornull(val)	((val) ? newSVGtkFileFilterInfo_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_FILE_FILTER_INFO */

#ifdef GTK_TYPE_FILE_FILTER_FLAGS
  /* GFlags GtkFileFilterFlags */
# define SvGtkFileFilterFlags(sv)	((GtkFileFilterFlags)gperl_convert_flags (GTK_TYPE_FILE_FILTER_FLAGS, sv))
# define newSVGtkFileFilterFlags(val)	(gperl_convert_back_flags (GTK_TYPE_FILE_FILTER_FLAGS, val))
#endif /* GTK_TYPE_FILE_FILTER_FLAGS */

#ifdef GTK_TYPE_ICON_THEME
  /* GObject derivative GtkIconTheme */
# define SvGtkIconTheme(sv)	((GtkIconTheme*)gperl_get_object_check (sv, GTK_TYPE_ICON_THEME))
# define newSVGtkIconTheme(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkIconTheme GtkIconTheme_ornull;
# define SvGtkIconTheme_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconTheme(sv) : NULL)
# define newSVGtkIconTheme_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkIconTheme GtkIconTheme_noinc;
#define newSVGtkIconTheme_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkIconTheme GtkIconTheme_noinc_ornull;
#define newSVGtkIconTheme_noinc_ornull(val)	((val) ? newSVGtkIconTheme_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ICON_THEME */

#ifdef GTK_TYPE_ICON_THEME_ERROR
  /* GEnum GtkIconThemeError */
# define SvGtkIconThemeError(sv)	((GtkIconThemeError)gperl_convert_enum (GTK_TYPE_ICON_THEME_ERROR, sv))
# define newSVGtkIconThemeError(val)	(gperl_convert_back_enum (GTK_TYPE_ICON_THEME_ERROR, val))
#endif /* GTK_TYPE_ICON_THEME_ERROR */

#ifdef GTK_TYPE_ICON_INFO
  /* GBoxed GtkIconInfo */
  typedef GtkIconInfo GtkIconInfo_ornull;
# define SvGtkIconInfo(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_ICON_INFO))
# define SvGtkIconInfo_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconInfo (sv) : NULL)
  typedef GtkIconInfo GtkIconInfo_own;
  typedef GtkIconInfo GtkIconInfo_copy;
  typedef GtkIconInfo GtkIconInfo_own_ornull;
# define newSVGtkIconInfo(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_INFO, FALSE))
# define newSVGtkIconInfo_ornull(val)	((val) ? newSVGtkIconInfo(val) : &PL_sv_undef)
# define newSVGtkIconInfo_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ICON_INFO, TRUE))
# define newSVGtkIconInfo_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_ICON_INFO))
# define newSVGtkIconInfo_own_ornull(val)	((val) ? newSVGtkIconInfo_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ICON_INFO */

#ifdef GTK_TYPE_ICON_LOOKUP_FLAGS
  /* GFlags GtkIconLookupFlags */
# define SvGtkIconLookupFlags(sv)	((GtkIconLookupFlags)gperl_convert_flags (GTK_TYPE_ICON_LOOKUP_FLAGS, sv))
# define newSVGtkIconLookupFlags(val)	(gperl_convert_back_flags (GTK_TYPE_ICON_LOOKUP_FLAGS, val))
#endif /* GTK_TYPE_ICON_LOOKUP_FLAGS */

#ifdef GTK_TYPE_TREE_MODEL_FILTER
  /* GObject derivative GtkTreeModelFilter */
# define SvGtkTreeModelFilter(sv)	((GtkTreeModelFilter*)gperl_get_object_check (sv, GTK_TYPE_TREE_MODEL_FILTER))
# define newSVGtkTreeModelFilter(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkTreeModelFilter GtkTreeModelFilter_ornull;
# define SvGtkTreeModelFilter_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkTreeModelFilter(sv) : NULL)
# define newSVGtkTreeModelFilter_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkTreeModelFilter GtkTreeModelFilter_noinc;
#define newSVGtkTreeModelFilter_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkTreeModelFilter GtkTreeModelFilter_noinc_ornull;
#define newSVGtkTreeModelFilter_noinc_ornull(val)	((val) ? newSVGtkTreeModelFilter_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TREE_MODEL_FILTER */

#ifdef GTK_TYPE_UI_MANAGER
  /* GObject derivative GtkUIManager */
# define SvGtkUIManager(sv)	((GtkUIManager*)gperl_get_object_check (sv, GTK_TYPE_UI_MANAGER))
# define newSVGtkUIManager(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkUIManager GtkUIManager_ornull;
# define SvGtkUIManager_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkUIManager(sv) : NULL)
# define newSVGtkUIManager_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkUIManager GtkUIManager_noinc;
#define newSVGtkUIManager_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkUIManager GtkUIManager_noinc_ornull;
#define newSVGtkUIManager_noinc_ornull(val)	((val) ? newSVGtkUIManager_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_UI_MANAGER */

#ifdef GTK_TYPE_UI_MANAGER_ITEM_TYPE
  /* GFlags GtkUIManagerItemType */
# define SvGtkUIManagerItemType(sv)	((GtkUIManagerItemType)gperl_convert_flags (GTK_TYPE_UI_MANAGER_ITEM_TYPE, sv))
# define newSVGtkUIManagerItemType(val)	(gperl_convert_back_flags (GTK_TYPE_UI_MANAGER_ITEM_TYPE, val))
#endif /* GTK_TYPE_UI_MANAGER_ITEM_TYPE */

#ifdef GTK_TYPE_ACTION_GROUP
  /* GObject derivative GtkActionGroup */
# define SvGtkActionGroup(sv)	((GtkActionGroup*)gperl_get_object_check (sv, GTK_TYPE_ACTION_GROUP))
# define newSVGtkActionGroup(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkActionGroup GtkActionGroup_ornull;
# define SvGtkActionGroup_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkActionGroup(sv) : NULL)
# define newSVGtkActionGroup_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkActionGroup GtkActionGroup_noinc;
#define newSVGtkActionGroup_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkActionGroup GtkActionGroup_noinc_ornull;
#define newSVGtkActionGroup_noinc_ornull(val)	((val) ? newSVGtkActionGroup_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACTION_GROUP */

#ifdef GTK_TYPE_ACTION
  /* GObject derivative GtkAction */
# define SvGtkAction(sv)	((GtkAction*)gperl_get_object_check (sv, GTK_TYPE_ACTION))
# define newSVGtkAction(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkAction GtkAction_ornull;
# define SvGtkAction_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAction(sv) : NULL)
# define newSVGtkAction_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkAction GtkAction_noinc;
#define newSVGtkAction_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkAction GtkAction_noinc_ornull;
#define newSVGtkAction_noinc_ornull(val)	((val) ? newSVGtkAction_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACTION */

#ifdef GTK_TYPE_TOGGLE_ACTION
  /* GObject derivative GtkToggleAction */
# define SvGtkToggleAction(sv)	((GtkToggleAction*)gperl_get_object_check (sv, GTK_TYPE_TOGGLE_ACTION))
# define newSVGtkToggleAction(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkToggleAction GtkToggleAction_ornull;
# define SvGtkToggleAction_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToggleAction(sv) : NULL)
# define newSVGtkToggleAction_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkToggleAction GtkToggleAction_noinc;
#define newSVGtkToggleAction_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkToggleAction GtkToggleAction_noinc_ornull;
#define newSVGtkToggleAction_noinc_ornull(val)	((val) ? newSVGtkToggleAction_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TOGGLE_ACTION */

#ifdef GTK_TYPE_RADIO_ACTION
  /* GObject derivative GtkRadioAction */
# define SvGtkRadioAction(sv)	((GtkRadioAction*)gperl_get_object_check (sv, GTK_TYPE_RADIO_ACTION))
# define newSVGtkRadioAction(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkRadioAction GtkRadioAction_ornull;
# define SvGtkRadioAction_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRadioAction(sv) : NULL)
# define newSVGtkRadioAction_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkRadioAction GtkRadioAction_noinc;
#define newSVGtkRadioAction_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkRadioAction GtkRadioAction_noinc_ornull;
#define newSVGtkRadioAction_noinc_ornull(val)	((val) ? newSVGtkRadioAction_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RADIO_ACTION */

#ifdef GTK_TYPE_ACTION_ENTRY
  /* GBoxed GtkActionEntry */
  typedef GtkActionEntry GtkActionEntry_ornull;
# define SvGtkActionEntry(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_ACTION_ENTRY))
# define SvGtkActionEntry_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkActionEntry (sv) : NULL)
  typedef GtkActionEntry GtkActionEntry_own;
  typedef GtkActionEntry GtkActionEntry_copy;
  typedef GtkActionEntry GtkActionEntry_own_ornull;
# define newSVGtkActionEntry(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ACTION_ENTRY, FALSE))
# define newSVGtkActionEntry_ornull(val)	((val) ? newSVGtkActionEntry(val) : &PL_sv_undef)
# define newSVGtkActionEntry_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_ACTION_ENTRY, TRUE))
# define newSVGtkActionEntry_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_ACTION_ENTRY))
# define newSVGtkActionEntry_own_ornull(val)	((val) ? newSVGtkActionEntry_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACTION_ENTRY */

#ifdef GTK_TYPE_TOGGLE_ACTION_ENTRY
  /* GBoxed GtkToggleActionEntry */
  typedef GtkToggleActionEntry GtkToggleActionEntry_ornull;
# define SvGtkToggleActionEntry(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_TOGGLE_ACTION_ENTRY))
# define SvGtkToggleActionEntry_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToggleActionEntry (sv) : NULL)
  typedef GtkToggleActionEntry GtkToggleActionEntry_own;
  typedef GtkToggleActionEntry GtkToggleActionEntry_copy;
  typedef GtkToggleActionEntry GtkToggleActionEntry_own_ornull;
# define newSVGtkToggleActionEntry(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TOGGLE_ACTION_ENTRY, FALSE))
# define newSVGtkToggleActionEntry_ornull(val)	((val) ? newSVGtkToggleActionEntry(val) : &PL_sv_undef)
# define newSVGtkToggleActionEntry_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_TOGGLE_ACTION_ENTRY, TRUE))
# define newSVGtkToggleActionEntry_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_TOGGLE_ACTION_ENTRY))
# define newSVGtkToggleActionEntry_own_ornull(val)	((val) ? newSVGtkToggleActionEntry_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_TOGGLE_ACTION_ENTRY */

#ifdef GTK_TYPE_RADIO_ACTION_ENTRY
  /* GBoxed GtkRadioActionEntry */
  typedef GtkRadioActionEntry GtkRadioActionEntry_ornull;
# define SvGtkRadioActionEntry(sv)	(gperl_get_boxed_check ((sv), GTK_TYPE_RADIO_ACTION_ENTRY))
# define SvGtkRadioActionEntry_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRadioActionEntry (sv) : NULL)
  typedef GtkRadioActionEntry GtkRadioActionEntry_own;
  typedef GtkRadioActionEntry GtkRadioActionEntry_copy;
  typedef GtkRadioActionEntry GtkRadioActionEntry_own_ornull;
# define newSVGtkRadioActionEntry(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_RADIO_ACTION_ENTRY, FALSE))
# define newSVGtkRadioActionEntry_ornull(val)	((val) ? newSVGtkRadioActionEntry(val) : &PL_sv_undef)
# define newSVGtkRadioActionEntry_own(val)	(gperl_new_boxed ((gpointer) (val), GTK_TYPE_RADIO_ACTION_ENTRY, TRUE))
# define newSVGtkRadioActionEntry_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), GTK_TYPE_RADIO_ACTION_ENTRY))
# define newSVGtkRadioActionEntry_own_ornull(val)	((val) ? newSVGtkRadioActionEntry_own(val) : &PL_sv_undef)
#endif /* GTK_TYPE_RADIO_ACTION_ENTRY */

#ifdef GTK_TYPE_TOOL_ITEM
  /* GtkObject derivative GtkToolItem */
# define SvGtkToolItem(sv)	((GtkToolItem*)gperl_get_object_check (sv, GTK_TYPE_TOOL_ITEM))
# define newSVGtkToolItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkToolItem GtkToolItem_ornull;
# define SvGtkToolItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToolItem(sv) : NULL)
# define newSVGtkToolItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOOL_ITEM */

#ifdef GTK_TYPE_TOOL_BUTTON
  /* GtkObject derivative GtkToolButton */
# define SvGtkToolButton(sv)	((GtkToolButton*)gperl_get_object_check (sv, GTK_TYPE_TOOL_BUTTON))
# define newSVGtkToolButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkToolButton GtkToolButton_ornull;
# define SvGtkToolButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToolButton(sv) : NULL)
# define newSVGtkToolButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOOL_BUTTON */

#ifdef GTK_TYPE_TOGGLE_TOOL_BUTTON
  /* GtkObject derivative GtkToggleToolButton */
# define SvGtkToggleToolButton(sv)	((GtkToggleToolButton*)gperl_get_object_check (sv, GTK_TYPE_TOGGLE_TOOL_BUTTON))
# define newSVGtkToggleToolButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkToggleToolButton GtkToggleToolButton_ornull;
# define SvGtkToggleToolButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkToggleToolButton(sv) : NULL)
# define newSVGtkToggleToolButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_TOGGLE_TOOL_BUTTON */

#ifdef GTK_TYPE_RADIO_TOOL_BUTTON
  /* GtkObject derivative GtkRadioToolButton */
# define SvGtkRadioToolButton(sv)	((GtkRadioToolButton*)gperl_get_object_check (sv, GTK_TYPE_RADIO_TOOL_BUTTON))
# define newSVGtkRadioToolButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkRadioToolButton GtkRadioToolButton_ornull;
# define SvGtkRadioToolButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkRadioToolButton(sv) : NULL)
# define newSVGtkRadioToolButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_RADIO_TOOL_BUTTON */

#ifdef GTK_TYPE_SEPARATOR_TOOL_ITEM
  /* GtkObject derivative GtkSeparatorToolItem */
# define SvGtkSeparatorToolItem(sv)	((GtkSeparatorToolItem*)gperl_get_object_check (sv, GTK_TYPE_SEPARATOR_TOOL_ITEM))
# define newSVGtkSeparatorToolItem(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkSeparatorToolItem GtkSeparatorToolItem_ornull;
# define SvGtkSeparatorToolItem_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkSeparatorToolItem(sv) : NULL)
# define newSVGtkSeparatorToolItem_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_SEPARATOR_TOOL_ITEM */

#ifdef GTK_TYPE_ACCEL_MAP
  /* GObject derivative GtkAccelMap */
# define SvGtkAccelMap(sv)	((GtkAccelMap*)gperl_get_object_check (sv, GTK_TYPE_ACCEL_MAP))
# define newSVGtkAccelMap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GtkAccelMap GtkAccelMap_ornull;
# define SvGtkAccelMap_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAccelMap(sv) : NULL)
# define newSVGtkAccelMap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GtkAccelMap GtkAccelMap_noinc;
#define newSVGtkAccelMap_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GtkAccelMap GtkAccelMap_noinc_ornull;
#define newSVGtkAccelMap_noinc_ornull(val)	((val) ? newSVGtkAccelMap_noinc(val) : &PL_sv_undef)
#endif /* GTK_TYPE_ACCEL_MAP */

#ifdef GDK_TYPE_OWNER_CHANGE
  /* GEnum GdkOwnerChange */
# define SvGdkOwnerChange(sv)	((GdkOwnerChange)gperl_convert_enum (GDK_TYPE_OWNER_CHANGE, sv))
# define newSVGdkOwnerChange(val)	(gperl_convert_back_enum (GDK_TYPE_OWNER_CHANGE, val))
#endif /* GDK_TYPE_OWNER_CHANGE */

#ifdef GDK_TYPE_PIXBUF_ROTATION
  /* GEnum GdkPixbufRotation */
# define SvGdkPixbufRotation(sv)	((GdkPixbufRotation)gperl_convert_enum (GDK_TYPE_PIXBUF_ROTATION, sv))
# define newSVGdkPixbufRotation(val)	(gperl_convert_back_enum (GDK_TYPE_PIXBUF_ROTATION, val))
#endif /* GDK_TYPE_PIXBUF_ROTATION */

#ifdef GTK_TYPE_ABOUT_DIALOG
  /* GtkObject derivative GtkAboutDialog */
# define SvGtkAboutDialog(sv)	((GtkAboutDialog*)gperl_get_object_check (sv, GTK_TYPE_ABOUT_DIALOG))
# define newSVGtkAboutDialog(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkAboutDialog GtkAboutDialog_ornull;
# define SvGtkAboutDialog_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkAboutDialog(sv) : NULL)
# define newSVGtkAboutDialog_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ABOUT_DIALOG */

#ifdef GTK_TYPE_CELL_RENDERER_COMBO
  /* GtkObject derivative GtkCellRendererCombo */
# define SvGtkCellRendererCombo(sv)	((GtkCellRendererCombo*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_COMBO))
# define newSVGtkCellRendererCombo(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererCombo GtkCellRendererCombo_ornull;
# define SvGtkCellRendererCombo_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererCombo(sv) : NULL)
# define newSVGtkCellRendererCombo_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_COMBO */

#ifdef GTK_TYPE_CELL_RENDERER_PROGRESS
  /* GtkObject derivative GtkCellRendererProgress */
# define SvGtkCellRendererProgress(sv)	((GtkCellRendererProgress*)gperl_get_object_check (sv, GTK_TYPE_CELL_RENDERER_PROGRESS))
# define newSVGtkCellRendererProgress(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellRendererProgress GtkCellRendererProgress_ornull;
# define SvGtkCellRendererProgress_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellRendererProgress(sv) : NULL)
# define newSVGtkCellRendererProgress_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_RENDERER_PROGRESS */

#ifdef GTK_TYPE_CELL_VIEW
  /* GtkObject derivative GtkCellView */
# define SvGtkCellView(sv)	((GtkCellView*)gperl_get_object_check (sv, GTK_TYPE_CELL_VIEW))
# define newSVGtkCellView(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkCellView GtkCellView_ornull;
# define SvGtkCellView_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkCellView(sv) : NULL)
# define newSVGtkCellView_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_CELL_VIEW */

#ifdef GTK_TYPE_FILE_CHOOSER_BUTTON
  /* GtkObject derivative GtkFileChooserButton */
# define SvGtkFileChooserButton(sv)	((GtkFileChooserButton*)gperl_get_object_check (sv, GTK_TYPE_FILE_CHOOSER_BUTTON))
# define newSVGtkFileChooserButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkFileChooserButton GtkFileChooserButton_ornull;
# define SvGtkFileChooserButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkFileChooserButton(sv) : NULL)
# define newSVGtkFileChooserButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_FILE_CHOOSER_BUTTON */

#ifdef GTK_TYPE_ICON_VIEW
  /* GtkObject derivative GtkIconView */
# define SvGtkIconView(sv)	((GtkIconView*)gperl_get_object_check (sv, GTK_TYPE_ICON_VIEW))
# define newSVGtkIconView(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkIconView GtkIconView_ornull;
# define SvGtkIconView_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkIconView(sv) : NULL)
# define newSVGtkIconView_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_ICON_VIEW */

#ifdef GTK_TYPE_MENU_TOOL_BUTTON
  /* GtkObject derivative GtkMenuToolButton */
# define SvGtkMenuToolButton(sv)	((GtkMenuToolButton*)gperl_get_object_check (sv, GTK_TYPE_MENU_TOOL_BUTTON))
# define newSVGtkMenuToolButton(val)	(gtk2perl_new_gtkobject (GTK_OBJECT (val)))
  typedef GtkMenuToolButton GtkMenuToolButton_ornull;
# define SvGtkMenuToolButton_ornull(sv)	(((sv) && SvOK (sv)) ? SvGtkMenuToolButton(sv) : NULL)
# define newSVGtkMenuToolButton_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gtk2perl_new_gtkobject (GTK_OBJECT (val)))
#endif /* GTK_TYPE_MENU_TOOL_BUTTON */

#ifdef GDK_TYPE_PANGO_RENDERER
  /* GObject derivative GdkPangoRenderer */
# define SvGdkPangoRenderer(sv)	((GdkPangoRenderer*)gperl_get_object_check (sv, GDK_TYPE_PANGO_RENDERER))
# define newSVGdkPangoRenderer(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPangoRenderer GdkPangoRenderer_ornull;
# define SvGdkPangoRenderer_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPangoRenderer(sv) : NULL)
# define newSVGdkPangoRenderer_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPangoRenderer GdkPangoRenderer_noinc;
#define newSVGdkPangoRenderer_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPangoRenderer GdkPangoRenderer_noinc_ornull;
#define newSVGdkPangoRenderer_noinc_ornull(val)	((val) ? newSVGdkPangoRenderer_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PANGO_RENDERER */

#ifdef GTK_TYPE_PACK_DIRECTION
  /* GEnum GtkPackDirection */
# define SvGtkPackDirection(sv)	((GtkPackDirection)gperl_convert_enum (GTK_TYPE_PACK_DIRECTION, sv))
# define newSVGtkPackDirection(val)	(gperl_convert_back_enum (GTK_TYPE_PACK_DIRECTION, val))
#endif /* GTK_TYPE_PACK_DIRECTION */

#ifdef GTK_TYPE_ICON_VIEW_DROP_POSITION
  /* GEnum GtkIconViewDropPosition */
# define SvGtkIconViewDropPosition(sv)	((GtkIconViewDropPosition)gperl_convert_enum (GTK_TYPE_ICON_VIEW_DROP_POSITION, sv))
# define newSVGtkIconViewDropPosition(val)	(gperl_convert_back_enum (GTK_TYPE_ICON_VIEW_DROP_POSITION, val))
#endif /* GTK_TYPE_ICON_VIEW_DROP_POSITION */

#ifdef GDK_TYPE_PIXBUF_SIMPLE_ANIM
  /* GObject derivative GdkPixbufSimpleAnim */
# define SvGdkPixbufSimpleAnim(sv)	((GdkPixbufSimpleAnim*)gperl_get_object_check (sv, GDK_TYPE_PIXBUF_SIMPLE_ANIM))
# define newSVGdkPixbufSimpleAnim(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef GdkPixbufSimpleAnim GdkPixbufSimpleAnim_ornull;
# define SvGdkPixbufSimpleAnim_ornull(sv)	(((sv) && SvOK (sv)) ? SvGdkPixbufSimpleAnim(sv) : NULL)
# define newSVGdkPixbufSimpleAnim_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef GdkPixbufSimpleAnim GdkPixbufSimpleAnim_noinc;
#define newSVGdkPixbufSimpleAnim_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef GdkPixbufSimpleAnim GdkPixbufSimpleAnim_noinc_ornull;
#define newSVGdkPixbufSimpleAnim_noinc_ornull(val)	((val) ? newSVGdkPixbufSimpleAnim_noinc(val) : &PL_sv_undef)
#endif /* GDK_TYPE_PIXBUF_SIMPLE_ANIM */

#ifdef PANGO_TYPE_ALIGNMENT
  /* GEnum PangoAlignment */
# define SvPangoAlignment(sv)	((PangoAlignment)gperl_convert_enum (PANGO_TYPE_ALIGNMENT, sv))
# define newSVPangoAlignment(val)	(gperl_convert_back_enum (PANGO_TYPE_ALIGNMENT, val))
#endif /* PANGO_TYPE_ALIGNMENT */

#ifdef PANGO_TYPE_ATTR_LIST
  /* GBoxed PangoAttrList */
  typedef PangoAttrList PangoAttrList_ornull;
# define SvPangoAttrList(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_ATTR_LIST))
# define SvPangoAttrList_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoAttrList (sv) : NULL)
  typedef PangoAttrList PangoAttrList_own;
  typedef PangoAttrList PangoAttrList_copy;
  typedef PangoAttrList PangoAttrList_own_ornull;
# define newSVPangoAttrList(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTR_LIST, FALSE))
# define newSVPangoAttrList_ornull(val)	((val) ? newSVPangoAttrList(val) : &PL_sv_undef)
# define newSVPangoAttrList_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTR_LIST, TRUE))
# define newSVPangoAttrList_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_ATTR_LIST))
# define newSVPangoAttrList_own_ornull(val)	((val) ? newSVPangoAttrList_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_ATTR_LIST */

#ifdef PANGO_TYPE_ATTR_TYPE
  /* GEnum PangoAttrType */
# define SvPangoAttrType(sv)	((PangoAttrType)gperl_convert_enum (PANGO_TYPE_ATTR_TYPE, sv))
# define newSVPangoAttrType(val)	(gperl_convert_back_enum (PANGO_TYPE_ATTR_TYPE, val))
#endif /* PANGO_TYPE_ATTR_TYPE */

#ifdef PANGO_TYPE_COLOR
  /* GBoxed PangoColor */
  typedef PangoColor PangoColor_ornull;
# define SvPangoColor(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_COLOR))
# define SvPangoColor_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoColor (sv) : NULL)
  typedef PangoColor PangoColor_own;
  typedef PangoColor PangoColor_copy;
  typedef PangoColor PangoColor_own_ornull;
# define newSVPangoColor(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_COLOR, FALSE))
# define newSVPangoColor_ornull(val)	((val) ? newSVPangoColor(val) : &PL_sv_undef)
# define newSVPangoColor_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_COLOR, TRUE))
# define newSVPangoColor_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_COLOR))
# define newSVPangoColor_own_ornull(val)	((val) ? newSVPangoColor_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_COLOR */

#ifdef PANGO_TYPE_CONTEXT
  /* GObject derivative PangoContext */
# define SvPangoContext(sv)	((PangoContext*)gperl_get_object_check (sv, PANGO_TYPE_CONTEXT))
# define newSVPangoContext(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoContext PangoContext_ornull;
# define SvPangoContext_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoContext(sv) : NULL)
# define newSVPangoContext_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoContext PangoContext_noinc;
#define newSVPangoContext_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoContext PangoContext_noinc_ornull;
#define newSVPangoContext_noinc_ornull(val)	((val) ? newSVPangoContext_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_CONTEXT */

#ifdef PANGO_TYPE_COVERAGE_LEVEL
  /* GEnum PangoCoverageLevel */
# define SvPangoCoverageLevel(sv)	((PangoCoverageLevel)gperl_convert_enum (PANGO_TYPE_COVERAGE_LEVEL, sv))
# define newSVPangoCoverageLevel(val)	(gperl_convert_back_enum (PANGO_TYPE_COVERAGE_LEVEL, val))
#endif /* PANGO_TYPE_COVERAGE_LEVEL */

#ifdef PANGO_TYPE_DIRECTION
  /* GEnum PangoDirection */
# define SvPangoDirection(sv)	((PangoDirection)gperl_convert_enum (PANGO_TYPE_DIRECTION, sv))
# define newSVPangoDirection(val)	(gperl_convert_back_enum (PANGO_TYPE_DIRECTION, val))
#endif /* PANGO_TYPE_DIRECTION */

#ifdef PANGO_TYPE_FONT_DESCRIPTION
  /* GBoxed PangoFontDescription */
  typedef PangoFontDescription PangoFontDescription_ornull;
# define SvPangoFontDescription(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_FONT_DESCRIPTION))
# define SvPangoFontDescription_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontDescription (sv) : NULL)
  typedef PangoFontDescription PangoFontDescription_own;
  typedef PangoFontDescription PangoFontDescription_copy;
  typedef PangoFontDescription PangoFontDescription_own_ornull;
# define newSVPangoFontDescription(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_FONT_DESCRIPTION, FALSE))
# define newSVPangoFontDescription_ornull(val)	((val) ? newSVPangoFontDescription(val) : &PL_sv_undef)
# define newSVPangoFontDescription_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_FONT_DESCRIPTION, TRUE))
# define newSVPangoFontDescription_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_FONT_DESCRIPTION))
# define newSVPangoFontDescription_own_ornull(val)	((val) ? newSVPangoFontDescription_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT_DESCRIPTION */

#ifdef PANGO_TYPE_FONT_FACE
  /* GObject derivative PangoFontFace */
# define SvPangoFontFace(sv)	((PangoFontFace*)gperl_get_object_check (sv, PANGO_TYPE_FONT_FACE))
# define newSVPangoFontFace(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoFontFace PangoFontFace_ornull;
# define SvPangoFontFace_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontFace(sv) : NULL)
# define newSVPangoFontFace_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoFontFace PangoFontFace_noinc;
#define newSVPangoFontFace_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoFontFace PangoFontFace_noinc_ornull;
#define newSVPangoFontFace_noinc_ornull(val)	((val) ? newSVPangoFontFace_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT_FACE */

#ifdef PANGO_TYPE_FONT_FAMILY
  /* GObject derivative PangoFontFamily */
# define SvPangoFontFamily(sv)	((PangoFontFamily*)gperl_get_object_check (sv, PANGO_TYPE_FONT_FAMILY))
# define newSVPangoFontFamily(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoFontFamily PangoFontFamily_ornull;
# define SvPangoFontFamily_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontFamily(sv) : NULL)
# define newSVPangoFontFamily_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoFontFamily PangoFontFamily_noinc;
#define newSVPangoFontFamily_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoFontFamily PangoFontFamily_noinc_ornull;
#define newSVPangoFontFamily_noinc_ornull(val)	((val) ? newSVPangoFontFamily_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT_FAMILY */

#ifdef PANGO_TYPE_FONT_MAP
  /* GObject derivative PangoFontMap */
# define SvPangoFontMap(sv)	((PangoFontMap*)gperl_get_object_check (sv, PANGO_TYPE_FONT_MAP))
# define newSVPangoFontMap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoFontMap PangoFontMap_ornull;
# define SvPangoFontMap_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontMap(sv) : NULL)
# define newSVPangoFontMap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoFontMap PangoFontMap_noinc;
#define newSVPangoFontMap_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoFontMap PangoFontMap_noinc_ornull;
#define newSVPangoFontMap_noinc_ornull(val)	((val) ? newSVPangoFontMap_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT_MAP */

#ifdef PANGO_TYPE_FONT_MASK
  /* GFlags PangoFontMask */
# define SvPangoFontMask(sv)	((PangoFontMask)gperl_convert_flags (PANGO_TYPE_FONT_MASK, sv))
# define newSVPangoFontMask(val)	(gperl_convert_back_flags (PANGO_TYPE_FONT_MASK, val))
#endif /* PANGO_TYPE_FONT_MASK */

#ifdef PANGO_TYPE_FONT_METRICS
  /* GBoxed PangoFontMetrics */
  typedef PangoFontMetrics PangoFontMetrics_ornull;
# define SvPangoFontMetrics(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_FONT_METRICS))
# define SvPangoFontMetrics_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontMetrics (sv) : NULL)
  typedef PangoFontMetrics PangoFontMetrics_own;
  typedef PangoFontMetrics PangoFontMetrics_copy;
  typedef PangoFontMetrics PangoFontMetrics_own_ornull;
# define newSVPangoFontMetrics(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_FONT_METRICS, FALSE))
# define newSVPangoFontMetrics_ornull(val)	((val) ? newSVPangoFontMetrics(val) : &PL_sv_undef)
# define newSVPangoFontMetrics_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_FONT_METRICS, TRUE))
# define newSVPangoFontMetrics_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_FONT_METRICS))
# define newSVPangoFontMetrics_own_ornull(val)	((val) ? newSVPangoFontMetrics_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT_METRICS */

#ifdef PANGO_TYPE_FONT
  /* GObject derivative PangoFont */
# define SvPangoFont(sv)	((PangoFont*)gperl_get_object_check (sv, PANGO_TYPE_FONT))
# define newSVPangoFont(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoFont PangoFont_ornull;
# define SvPangoFont_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFont(sv) : NULL)
# define newSVPangoFont_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoFont PangoFont_noinc;
#define newSVPangoFont_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoFont PangoFont_noinc_ornull;
#define newSVPangoFont_noinc_ornull(val)	((val) ? newSVPangoFont_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONT */

#ifdef PANGO_TYPE_FONTSET
  /* GObject derivative PangoFontset */
# define SvPangoFontset(sv)	((PangoFontset*)gperl_get_object_check (sv, PANGO_TYPE_FONTSET))
# define newSVPangoFontset(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoFontset PangoFontset_ornull;
# define SvPangoFontset_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoFontset(sv) : NULL)
# define newSVPangoFontset_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoFontset PangoFontset_noinc;
#define newSVPangoFontset_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoFontset PangoFontset_noinc_ornull;
#define newSVPangoFontset_noinc_ornull(val)	((val) ? newSVPangoFontset_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_FONTSET */

#ifdef PANGO_TYPE_GLYPH_STRING
  /* GBoxed PangoGlyphString */
  typedef PangoGlyphString PangoGlyphString_ornull;
# define SvPangoGlyphString(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_GLYPH_STRING))
# define SvPangoGlyphString_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoGlyphString (sv) : NULL)
  typedef PangoGlyphString PangoGlyphString_own;
  typedef PangoGlyphString PangoGlyphString_copy;
  typedef PangoGlyphString PangoGlyphString_own_ornull;
# define newSVPangoGlyphString(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_GLYPH_STRING, FALSE))
# define newSVPangoGlyphString_ornull(val)	((val) ? newSVPangoGlyphString(val) : &PL_sv_undef)
# define newSVPangoGlyphString_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_GLYPH_STRING, TRUE))
# define newSVPangoGlyphString_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_GLYPH_STRING))
# define newSVPangoGlyphString_own_ornull(val)	((val) ? newSVPangoGlyphString_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_GLYPH_STRING */

#ifdef PANGO_TYPE_LANGUAGE
  /* GBoxed PangoLanguage */
  typedef PangoLanguage PangoLanguage_ornull;
# define SvPangoLanguage(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_LANGUAGE))
# define SvPangoLanguage_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoLanguage (sv) : NULL)
  typedef PangoLanguage PangoLanguage_own;
  typedef PangoLanguage PangoLanguage_copy;
  typedef PangoLanguage PangoLanguage_own_ornull;
# define newSVPangoLanguage(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LANGUAGE, FALSE))
# define newSVPangoLanguage_ornull(val)	((val) ? newSVPangoLanguage(val) : &PL_sv_undef)
# define newSVPangoLanguage_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LANGUAGE, TRUE))
# define newSVPangoLanguage_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_LANGUAGE))
# define newSVPangoLanguage_own_ornull(val)	((val) ? newSVPangoLanguage_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_LANGUAGE */

#ifdef PANGO_TYPE_LAYOUT
  /* GObject derivative PangoLayout */
# define SvPangoLayout(sv)	((PangoLayout*)gperl_get_object_check (sv, PANGO_TYPE_LAYOUT))
# define newSVPangoLayout(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoLayout PangoLayout_ornull;
# define SvPangoLayout_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoLayout(sv) : NULL)
# define newSVPangoLayout_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoLayout PangoLayout_noinc;
#define newSVPangoLayout_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoLayout PangoLayout_noinc_ornull;
#define newSVPangoLayout_noinc_ornull(val)	((val) ? newSVPangoLayout_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_LAYOUT */

#ifdef PANGO_TYPE_SCRIPT
  /* GEnum PangoScript */
# define SvPangoScript(sv)	((PangoScript)gperl_convert_enum (PANGO_TYPE_SCRIPT, sv))
# define newSVPangoScript(val)	(gperl_convert_back_enum (PANGO_TYPE_SCRIPT, val))
#endif /* PANGO_TYPE_SCRIPT */

#ifdef PANGO_TYPE_STRETCH
  /* GEnum PangoStretch */
# define SvPangoStretch(sv)	((PangoStretch)gperl_convert_enum (PANGO_TYPE_STRETCH, sv))
# define newSVPangoStretch(val)	(gperl_convert_back_enum (PANGO_TYPE_STRETCH, val))
#endif /* PANGO_TYPE_STRETCH */

#ifdef PANGO_TYPE_STYLE
  /* GEnum PangoStyle */
# define SvPangoStyle(sv)	((PangoStyle)gperl_convert_enum (PANGO_TYPE_STYLE, sv))
# define newSVPangoStyle(val)	(gperl_convert_back_enum (PANGO_TYPE_STYLE, val))
#endif /* PANGO_TYPE_STYLE */

#ifdef PANGO_TYPE_TAB_ALIGN
  /* GEnum PangoTabAlign */
# define SvPangoTabAlign(sv)	((PangoTabAlign)gperl_convert_enum (PANGO_TYPE_TAB_ALIGN, sv))
# define newSVPangoTabAlign(val)	(gperl_convert_back_enum (PANGO_TYPE_TAB_ALIGN, val))
#endif /* PANGO_TYPE_TAB_ALIGN */

#ifdef PANGO_TYPE_TAB_ARRAY
  /* GBoxed PangoTabArray */
  typedef PangoTabArray PangoTabArray_ornull;
# define SvPangoTabArray(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_TAB_ARRAY))
# define SvPangoTabArray_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoTabArray (sv) : NULL)
  typedef PangoTabArray PangoTabArray_own;
  typedef PangoTabArray PangoTabArray_copy;
  typedef PangoTabArray PangoTabArray_own_ornull;
# define newSVPangoTabArray(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_TAB_ARRAY, FALSE))
# define newSVPangoTabArray_ornull(val)	((val) ? newSVPangoTabArray(val) : &PL_sv_undef)
# define newSVPangoTabArray_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_TAB_ARRAY, TRUE))
# define newSVPangoTabArray_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_TAB_ARRAY))
# define newSVPangoTabArray_own_ornull(val)	((val) ? newSVPangoTabArray_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_TAB_ARRAY */

#ifdef PANGO_TYPE_UNDERLINE
  /* GEnum PangoUnderline */
# define SvPangoUnderline(sv)	((PangoUnderline)gperl_convert_enum (PANGO_TYPE_UNDERLINE, sv))
# define newSVPangoUnderline(val)	(gperl_convert_back_enum (PANGO_TYPE_UNDERLINE, val))
#endif /* PANGO_TYPE_UNDERLINE */

#ifdef PANGO_TYPE_VARIANT
  /* GEnum PangoVariant */
# define SvPangoVariant(sv)	((PangoVariant)gperl_convert_enum (PANGO_TYPE_VARIANT, sv))
# define newSVPangoVariant(val)	(gperl_convert_back_enum (PANGO_TYPE_VARIANT, val))
#endif /* PANGO_TYPE_VARIANT */

#ifdef PANGO_TYPE_WEIGHT
  /* GEnum PangoWeight */
# define SvPangoWeight(sv)	((PangoWeight)gperl_convert_enum (PANGO_TYPE_WEIGHT, sv))
# define newSVPangoWeight(val)	(gperl_convert_back_enum (PANGO_TYPE_WEIGHT, val))
#endif /* PANGO_TYPE_WEIGHT */

#ifdef PANGO_TYPE_WRAP_MODE
  /* GEnum PangoWrapMode */
# define SvPangoWrapMode(sv)	((PangoWrapMode)gperl_convert_enum (PANGO_TYPE_WRAP_MODE, sv))
# define newSVPangoWrapMode(val)	(gperl_convert_back_enum (PANGO_TYPE_WRAP_MODE, val))
#endif /* PANGO_TYPE_WRAP_MODE */

#ifdef PANGO_TYPE_ATTRIBUTE
  /* GBoxed PangoAttribute */
  typedef PangoAttribute PangoAttribute_ornull;
# define SvPangoAttribute(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_ATTRIBUTE))
# define SvPangoAttribute_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoAttribute (sv) : NULL)
  typedef PangoAttribute PangoAttribute_own;
  typedef PangoAttribute PangoAttribute_copy;
  typedef PangoAttribute PangoAttribute_own_ornull;
# define newSVPangoAttribute(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTRIBUTE, FALSE))
# define newSVPangoAttribute_ornull(val)	((val) ? newSVPangoAttribute(val) : &PL_sv_undef)
# define newSVPangoAttribute_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTRIBUTE, TRUE))
# define newSVPangoAttribute_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_ATTRIBUTE))
# define newSVPangoAttribute_own_ornull(val)	((val) ? newSVPangoAttribute_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_ATTRIBUTE */

#ifdef PANGO_TYPE_ATTR_ITERATOR
  /* GBoxed PangoAttrIterator */
  typedef PangoAttrIterator PangoAttrIterator_ornull;
# define SvPangoAttrIterator(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_ATTR_ITERATOR))
# define SvPangoAttrIterator_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoAttrIterator (sv) : NULL)
  typedef PangoAttrIterator PangoAttrIterator_own;
  typedef PangoAttrIterator PangoAttrIterator_copy;
  typedef PangoAttrIterator PangoAttrIterator_own_ornull;
# define newSVPangoAttrIterator(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTR_ITERATOR, FALSE))
# define newSVPangoAttrIterator_ornull(val)	((val) ? newSVPangoAttrIterator(val) : &PL_sv_undef)
# define newSVPangoAttrIterator_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_ATTR_ITERATOR, TRUE))
# define newSVPangoAttrIterator_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_ATTR_ITERATOR))
# define newSVPangoAttrIterator_own_ornull(val)	((val) ? newSVPangoAttrIterator_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_ATTR_ITERATOR */

#ifdef PANGO_TYPE_LAYOUT_ITER
  /* GBoxed PangoLayoutIter */
  typedef PangoLayoutIter PangoLayoutIter_ornull;
# define SvPangoLayoutIter(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_LAYOUT_ITER))
# define SvPangoLayoutIter_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoLayoutIter (sv) : NULL)
  typedef PangoLayoutIter PangoLayoutIter_own;
  typedef PangoLayoutIter PangoLayoutIter_copy;
  typedef PangoLayoutIter PangoLayoutIter_own_ornull;
# define newSVPangoLayoutIter(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LAYOUT_ITER, FALSE))
# define newSVPangoLayoutIter_ornull(val)	((val) ? newSVPangoLayoutIter(val) : &PL_sv_undef)
# define newSVPangoLayoutIter_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LAYOUT_ITER, TRUE))
# define newSVPangoLayoutIter_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_LAYOUT_ITER))
# define newSVPangoLayoutIter_own_ornull(val)	((val) ? newSVPangoLayoutIter_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_LAYOUT_ITER */

#ifdef PANGO_TYPE_LAYOUT_LINE
  /* GBoxed PangoLayoutLine */
  typedef PangoLayoutLine PangoLayoutLine_ornull;
# define SvPangoLayoutLine(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_LAYOUT_LINE))
# define SvPangoLayoutLine_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoLayoutLine (sv) : NULL)
  typedef PangoLayoutLine PangoLayoutLine_own;
  typedef PangoLayoutLine PangoLayoutLine_copy;
  typedef PangoLayoutLine PangoLayoutLine_own_ornull;
# define newSVPangoLayoutLine(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LAYOUT_LINE, FALSE))
# define newSVPangoLayoutLine_ornull(val)	((val) ? newSVPangoLayoutLine(val) : &PL_sv_undef)
# define newSVPangoLayoutLine_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_LAYOUT_LINE, TRUE))
# define newSVPangoLayoutLine_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_LAYOUT_LINE))
# define newSVPangoLayoutLine_own_ornull(val)	((val) ? newSVPangoLayoutLine_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_LAYOUT_LINE */

#ifdef PANGO_TYPE_CAIRO_FONT_MAP
  /* GInterface derivative PangoCairoFontMap */
# define SvPangoCairoFontMap(sv)	((PangoCairoFontMap*)gperl_get_object_check (sv, PANGO_TYPE_CAIRO_FONT_MAP))
# define newSVPangoCairoFontMap(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoCairoFontMap PangoCairoFontMap_ornull;
# define SvPangoCairoFontMap_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoCairoFontMap(sv) : NULL)
# define newSVPangoCairoFontMap_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* PANGO_TYPE_CAIRO_FONT_MAP */

#ifdef PANGO_TYPE_GRAVITY
  /* GEnum PangoGravity */
# define SvPangoGravity(sv)	((PangoGravity)gperl_convert_enum (PANGO_TYPE_GRAVITY, sv))
# define newSVPangoGravity(val)	(gperl_convert_back_enum (PANGO_TYPE_GRAVITY, val))
#endif /* PANGO_TYPE_GRAVITY */

#ifdef PANGO_TYPE_GRAVITY_HINT
  /* GEnum PangoGravityHint */
# define SvPangoGravityHint(sv)	((PangoGravityHint)gperl_convert_enum (PANGO_TYPE_GRAVITY_HINT, sv))
# define newSVPangoGravityHint(val)	(gperl_convert_back_enum (PANGO_TYPE_GRAVITY_HINT, val))
#endif /* PANGO_TYPE_GRAVITY_HINT */

#ifdef PANGO_TYPE_CAIRO_FONT
  /* GInterface derivative PangoCairoFont */
# define SvPangoCairoFont(sv)	((PangoCairoFont*)gperl_get_object_check (sv, PANGO_TYPE_CAIRO_FONT))
# define newSVPangoCairoFont(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoCairoFont PangoCairoFont_ornull;
# define SvPangoCairoFont_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoCairoFont(sv) : NULL)
# define newSVPangoCairoFont_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
#endif /* PANGO_TYPE_CAIRO_FONT */

#ifdef PANGO_TYPE_SCRIPT_ITER
  /* GBoxed PangoScriptIter */
  typedef PangoScriptIter PangoScriptIter_ornull;
# define SvPangoScriptIter(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_SCRIPT_ITER))
# define SvPangoScriptIter_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoScriptIter (sv) : NULL)
  typedef PangoScriptIter PangoScriptIter_own;
  typedef PangoScriptIter PangoScriptIter_copy;
  typedef PangoScriptIter PangoScriptIter_own_ornull;
# define newSVPangoScriptIter(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_SCRIPT_ITER, FALSE))
# define newSVPangoScriptIter_ornull(val)	((val) ? newSVPangoScriptIter(val) : &PL_sv_undef)
# define newSVPangoScriptIter_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_SCRIPT_ITER, TRUE))
# define newSVPangoScriptIter_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_SCRIPT_ITER))
# define newSVPangoScriptIter_own_ornull(val)	((val) ? newSVPangoScriptIter_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_SCRIPT_ITER */

#ifdef PANGO_TYPE_MATRIX
  /* GBoxed PangoMatrix */
  typedef PangoMatrix PangoMatrix_ornull;
# define SvPangoMatrix(sv)	(gperl_get_boxed_check ((sv), PANGO_TYPE_MATRIX))
# define SvPangoMatrix_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoMatrix (sv) : NULL)
  typedef PangoMatrix PangoMatrix_own;
  typedef PangoMatrix PangoMatrix_copy;
  typedef PangoMatrix PangoMatrix_own_ornull;
# define newSVPangoMatrix(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_MATRIX, FALSE))
# define newSVPangoMatrix_ornull(val)	((val) ? newSVPangoMatrix(val) : &PL_sv_undef)
# define newSVPangoMatrix_own(val)	(gperl_new_boxed ((gpointer) (val), PANGO_TYPE_MATRIX, TRUE))
# define newSVPangoMatrix_copy(val)	(gperl_new_boxed_copy ((gpointer) (val), PANGO_TYPE_MATRIX))
# define newSVPangoMatrix_own_ornull(val)	((val) ? newSVPangoMatrix_own(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_MATRIX */

#ifdef PANGO_TYPE_ELLIPSIZE_MODE
  /* GEnum PangoEllipsizeMode */
# define SvPangoEllipsizeMode(sv)	((PangoEllipsizeMode)gperl_convert_enum (PANGO_TYPE_ELLIPSIZE_MODE, sv))
# define newSVPangoEllipsizeMode(val)	(gperl_convert_back_enum (PANGO_TYPE_ELLIPSIZE_MODE, val))
#endif /* PANGO_TYPE_ELLIPSIZE_MODE */

#ifdef PANGO_TYPE_RENDERER
  /* GObject derivative PangoRenderer */
# define SvPangoRenderer(sv)	((PangoRenderer*)gperl_get_object_check (sv, PANGO_TYPE_RENDERER))
# define newSVPangoRenderer(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef PangoRenderer PangoRenderer_ornull;
# define SvPangoRenderer_ornull(sv)	(((sv) && SvOK (sv)) ? SvPangoRenderer(sv) : NULL)
# define newSVPangoRenderer_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef PangoRenderer PangoRenderer_noinc;
#define newSVPangoRenderer_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef PangoRenderer PangoRenderer_noinc_ornull;
#define newSVPangoRenderer_noinc_ornull(val)	((val) ? newSVPangoRenderer_noinc(val) : &PL_sv_undef)
#endif /* PANGO_TYPE_RENDERER */

#ifdef PANGO_TYPE_RENDER_PART
  /* GEnum PangoRenderPart */
# define SvPangoRenderPart(sv)	((PangoRenderPart)gperl_convert_enum (PANGO_TYPE_RENDER_PART, sv))
# define newSVPangoRenderPart(val)	(gperl_convert_back_enum (PANGO_TYPE_RENDER_PART, val))
#endif /* PANGO_TYPE_RENDER_PART */
