# #################################### XS SECTION # Widget T_WIDGET Rwidget T_RWIDGET XFont T_PTROBJ String_Array T_PACKED RGB_Array T_PACKED Byte_Array T_OPAQUEPTR int * T_PACKED KVMT T_PTROBJ PROC T_PTROBJ USER T_PTROBJ float T_FLOAT GV * T_GVREF INPUT T_WIDGET if (($arg == &sv_undef) || (SvTYPE($arg) == SVt_NULL)) { $var = NULL; } else if (sv_isa($arg,\"SxWidget\")) { unsigned long tmp; tmp = (unsigned long)SvNV((SV*)SvRV($arg)); $var = ((struct Edata *)(tmp))->w; } else { sv_dump($arg); croak(\"$var (%x) is not a SxWidget\",$arg); } T_RWIDGET if (sv_isa($arg,\"SxWidget\")) { unsigned long tmp; tmp = (unsigned long)SvNV((SV*)SvRV($arg)); $var = (struct Edata *)(tmp); } else { sv_dump($arg); croak(\"$var (%x) is not a SxWidget\",$arg); } T_FLOAT $var = (float)SvNV($arg) T_GVREF if (sv_isa($arg, \"${ntype}\")) $var = (GV*)SvRV($arg); else croak(\"$var is not of type ${ntype}\") OUTPUT T_WIDGET if (RETVAL) { tmp->w = RETVAL; tmp->mysv = $arg; sv_setptrobj(tmp->mysv, tmp, \"SxWidget\"); SvREFCNT_inc(tmp->mysv); $arg = tmp->mysv; } else { $arg = sv_newmortal(); } T_FLOAT sv_setnv($arg, (double)$var);