Etk_Accumulator T_PTROBJ Etk_Selection_Type T_IV Etk_Selection_Content_Type T_IV Etk_Selection_Content T_IV Etk_Alignment * T_PTROBJ_ETK Etk_Argument * T_PTROBJ_ETK Etk_Bin * T_PTROBJ_ETK Etk_Bool T_IV Etk_Bool * T_PV Etk_Box * T_PTROBJ_ETK Etk_Box_Cell * T_PTROBJ_ETK Etk_Box_Group T_IV Etk_Box_Fill_Policy T_IV Etk_HBox * T_PTROBJ_ETK Etk_VBox * T_PTROBJ_ETK Etk_Button * T_PTROBJ_ETK Etk_Button_Style T_IV Etk_Check_Button * T_PTROBJ_ETK Etk_Canvas * T_PTROBJ_ETK Etk_Color T_COLOR Etk_Colorpicker * T_PTROBJ_ETK Etk_Colorpicker_Mode T_IV Etk_Combobox * T_PTROBJ_ETK Etk_Combobox_Column_Type T_IV Etk_Combobox_Item * T_PTROBJ_ETK Etk_Combobox_Fill_Policy T_IV Etk_Combobox_Entry * T_PTROBJ_ETK Etk_Combobox_Entry_Item * T_PTROBJ_ETK Etk_Combobox_Entry_Column_Type T_IV Etk_Combobox_Entry_Fill_Policy T_IV Etk_Combobox_Entry_Column * T_PTROBJ_ETK Etk_Constructor T_PTROBJ Etk_Container * T_PTROBJ_ETK Etk_Destructor T_PTROBJ Etk_Dialog * T_PTROBJ_ETK Etk_Drag * T_PTROBJ_ETK Etk_Entry * T_PTROBJ_ETK Etk_Entry_Image_Position T_IV Etk_Event_Selection_Request * T_PTROBJ Etk_Filechooser_Widget * T_PTROBJ_ETK Etk_Table_Fill_Policy T_IV Etk_Frame * T_PTROBJ_ETK Etk_Fixed * T_PTROBJ_ETK Etk_Geometry T_GEOMETRY Etk_Geometry * T_GEOMETRY_PTR Etk_Iconbox * T_PTROBJ_ETK Etk_Iconbox_Icon * T_PTROBJ_ETK Etk_Iconbox_Model * T_PTROBJ_ETK Etk_Image * T_PTROBJ_ETK Etk_Image_Source T_IV Etk_Label * T_PTROBJ_ETK Etk_Marshaller T_PTROBJ Etk_Mdi_Window * T_PTROBJ_ETK Etk_Mdi_Area * T_PTROBJ_ETK Etk_Menu * T_PTROBJ_ETK Etk_Menu_Bar * T_PTROBJ_ETK Etk_Menu_Item * T_PTROBJ_ETK Etk_Menu_Item_Check * T_PTROBJ_ETK Etk_Menu_Item_Image * T_PTROBJ_ETK Etk_Menu_Item_Radio * T_PTROBJ_ETK Etk_Menu_Item_Separator * T_PTROBJ_ETK Etk_Menu_Shell * T_PTROBJ_ETK Etk_Message_Dialog * T_PTROBJ_ETK Etk_Message_Dialog_Buttons T_IV Etk_Message_Dialog_Type T_IV Etk_Notebook * T_PTROBJ_ETK Etk_Object * T_PTROBJ_ETK Etk_Paned * T_PTROBJ_ETK Etk_HPaned * T_PTROBJ_ETK Etk_VPaned * T_PTROBJ_ETK Etk_Pointer_Type T_OPAQUE_STRUCT Etk_Popup_Window * T_PTROBJ_ETK Etk_Popup_Direction T_IV Etk_Progress_Bar * T_PTROBJ_ETK Etk_Progress_Bar_Direction T_IV Etk_Property * T_PTROBJ Etk_Property ** T_PTROBJ Etk_Property_Flags T_PTROBJ Etk_Property_Type T_PTROBJ Etk_Property_Value * T_PTROBJ Etk_Radio_Button * T_PTROBJ_ETK Etk_Range * T_PTROBJ_ETK Etk_Scrolled_View * T_PTROBJ_ETK Etk_Scrolled_View_Policy T_IV Etk_Scrolled_View_Policy * T_PTROBJ Etk_Signal * T_PTROBJ Etk_Signal_Callback * T_PTROBJ const Etk_Signal_Callback * T_PTROBJ Etk_Signal_Callback_Function T_CALLBACK Etk_Size * T_SIZE Etk_Statusbar * T_PTROBJ_ETK Etk_Separator * T_PTROBJ_ETK Etk_HSeparator * T_PTROBJ_ETK Etk_VSeparator * T_PTROBJ_ETK Etk_Slider * T_PTROBJ_ETK Etk_Slider_Update_Policy T_IV Etk_HSlider * T_PTROBJ_ETK Etk_VSlider * T_PTROBJ_ETK Etk_HScrollbar * T_PTROBJ_ETK Etk_VScrollbar * T_PTROBJ_ETK Etk_Stock_Id T_IV Etk_Stock_Id * T_PTROBJ Etk_Stock_Size T_IV Etk_Stock_Size * T_PTROBJ Etk_String * T_PTROBJ Etk_Spinner * T_PTROBJ_ETK Etk_Widget_Swallow_Error T_IV Etk_Table * T_PTROBJ_ETK Etk_Text_View * T_PTROBJ_ETK Etk_Textblock * T_PTROBJ_ETK Etk_Textblock_Iter * T_PTROBJ_ETK Etk_Textblock_Gravity T_IV Etk_Toggle_Button * T_PTROBJ_ETK Etk_Toplevel * T_PTROBJ_ETK Etk_Toolbar * T_PTROBJ_ETK Etk_Tool_Button * T_PTROBJ_ETK Etk_Tool_Toggle_Button * T_PTROBJ_ETK Etk_Toolbar_Style T_IV Etk_Toolbar_Orientation T_IV Etk_Tree * T_PTROBJ_ETK Etk_Tree_Col * T_PTROBJ_ETK Etk_Tree_Mode T_IV Etk_Tree_Model * T_PTROBJ_ETK Etk_Tree_Model_Image_Type T_IV Etk_Tree_Row * T_PTROBJ_ETK Etk_Type * T_PTROBJ Etk_Type ** T_PTROBJ Etk_Widget * T_PTR_WIDGET Etk_Window * T_PTROBJ_ETK Etk_Window_Stacking T_IV Evas * T_PTROBJ Evas_List * T_PTROBJ_EVAS_LIST Evas_List ** T_PTROBJ Evas_Object * T_PTROBJ Etk_Shadow * T_PTROBJ_ETK Etk_Shadow_Type T_IV Etk_Shadow_Edges T_IV const Etk_String * T_PTROBJ char * T_PV const char * T_PV char ** T_PTROBJ const char ** T_PTROBJ void * T_PTROBJ float * T_PTROBJ Ecore_Timer * T_PTROBJ_ETK int ( * ) ( Etk_Tree * tree, Etk_Tree_Row * row1, Etk_Tree_Row * row2, Etk_Tree_Col * col, void * data ) T_PTROBJ int * T_PTROBJ va_list T_PTROBJ va_list * T_PTROBJ void ( * ) ( Etk_Object * object, char * property_name, void * data ) T_PTROBJ void ( * ) ( Etk_Widget * child ) T_PTROBJ void ( * ) ( Etk_Widget * child, void * data ) T_PTROBJ void ( * ) ( void * data ) T_PTROBJ void ** T_PTROBJ ############################################################################# INPUT T_OPAQUE_STRUCT if (sv_derived_from($arg, \"${ntype}\")) { STRLEN len; char *s = SvPV((SV*)SvRV($arg), len); if (len != sizeof($var)) croak(\"Size %d of packed data != expected %d\", len, sizeof($var)); $var = *($type *)s; } else croak(\"$var is not of type ${ntype}\") T_PTROBJ_ETK if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvObj($arg, getClass(\"". ($foo=$ntype, $foo=~s/Ptr//,$foo). "\")); T_PTR_WIDGET if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvObj($arg, getClass(\"Etk_Widget\")); T_COLOR if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvColor($arg); T_GEOMETRY if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvGeometry($arg); T_GEOMETRY_PTR if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvGeometryPtr($arg); T_SIZE if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvSizePtr($arg); T_TROBJ_EVAS_LIST if (!$arg || !SvOK($arg)) croak(\"$var is not of type ${ntype}\"); $var = SvEvasList($arg); ############################################################################# OUTPUT T_OPAQUE_STRUCT sv_setref_pvn($arg, \"${ntype}\", (char *)&$var, sizeof($var)); T_PTROBJ_ETK do { /* hack to redefine the stack and delete class */ $arg = sv_2mortal(newSVObj($var, getClass(\"@{[grep {s/Ptr//,1} $ntype]}\"))); } while (0); T_PTR_WIDGET do { /* hack to redefine the stack and delete class */ $arg = sv_2mortal(newSVObject($var)); } while (0); T_COLOR do { $arg = sv_2mortal(newSVColor($var)); } while(0); T_GEOMETRY do { $arg = sv_2mortal(newSVGeometry($var)); } while(0); T_GEOMETRY_PTR do { $arg = sv_2mortal(newSVGeometryPtr($var)); } while(0); T_SIZE do { $arg = sv_2mortal(newSVSizePtr($var)); } while(0); T_PTROBJ_EVAS_LIST do { $arg = sv_2mortal(newSVEvasList($var)); } while(0);