[Fxruby-commits] CVS: FXRuby/ext/fox core_wrap.cpp,1.58,1.59 dialogs_wrap.cpp,1.32,1.33 icons_wrap.c
Status: Inactive
Brought to you by:
lyle
Update of /cvsroot/fxruby/FXRuby/ext/fox In directory usw-pr-cvs1:/tmp/cvs-serv6532/ext/fox Modified Files: core_wrap.cpp dialogs_wrap.cpp icons_wrap.cpp image_wrap.cpp layout_wrap.cpp mdi_wrap.cpp opengl_wrap.cpp ui_wrap.cpp Log Message: Added "free" functions (called when a Ruby instance is garbage-collected) to ensure that the Ruby-C++ object mappings are properly broken. Index: core_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/core_wrap.cpp,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** core_wrap.cpp 28 Mar 2002 15:26:04 -0000 1.58 --- core_wrap.cpp 2 Apr 2002 04:10:09 -0000 1.59 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 4819,4823 **** result = (FXTimer *)(arg1)->addTimeout(arg2,arg3,arg4); ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXTimer,0); return vresult; } --- 4819,4823 ---- result = (FXTimer *)(arg1)->addTimeout(arg2,arg3,arg4); ! vresult = FXRbGetRubyObj(result, "FXTimer *"); return vresult; } *************** *** 4837,4841 **** result = (FXTimer *)(arg1)->removeTimeout(arg2); ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXTimer,0); return vresult; } --- 4837,4841 ---- result = (FXTimer *)(arg1)->removeTimeout(arg2); ! vresult = FXRbGetRubyObj(result, "FXTimer *"); return vresult; } *************** *** 4857,4861 **** result = (FXChore *)(arg1)->addChore(arg2,arg3); ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXChore,0); return vresult; } --- 4857,4861 ---- result = (FXChore *)(arg1)->addChore(arg2,arg3); ! vresult = FXRbGetRubyObj(result, "FXChore *"); return vresult; } *************** *** 4875,4879 **** result = (FXChore *)(arg1)->removeChore(arg2); ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXChore,0); return vresult; } --- 4875,4879 ---- result = (FXChore *)(arg1)->removeChore(arg2); ! vresult = FXRbGetRubyObj(result, "FXChore *"); return vresult; } *************** *** 5394,5398 **** result = (FXRegistry *) &_result_ref; ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXRegistry,0); return vresult; } --- 5394,5398 ---- result = (FXRegistry *) &_result_ref; ! vresult = FXRbGetRubyObj(result, "FXRegistry *"); return vresult; } *************** *** 7575,7581 **** { ! FXFontDesc * resultptr; ! resultptr = new FXFontDesc (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXFontDesc, 1); } return vresult; --- 7575,7580 ---- { ! FXFontDesc* resultptr = new FXFontDesc(result); ! vresult = FXRbGetRubyObj(resultptr, "FXFontDesc *"); } return vresult; *************** *** 9223,9229 **** { ! FXRectangle * resultptr; ! resultptr = new FXRectangle (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXRectangle, 1); } return vresult; --- 9222,9227 ---- { ! FXRectangle* resultptr = new FXRectangle(result); ! vresult = FXRbGetRubyObj(resultptr, "FXRectangle *"); } return vresult; *************** *** 9247,9251 **** result = (FXRegion *) &_result_ref; ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXRegion,0); return vresult; } --- 9245,9249 ---- result = (FXRegion *) &_result_ref; ! vresult = FXRbGetRubyObj(result, "FXRegion *"); return vresult; } *************** *** 9266,9272 **** { ! FXRegion * resultptr; ! resultptr = new FXRegion (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXRegion, 1); } return vresult; --- 9264,9269 ---- { ! FXRegion* resultptr = new FXRegion(result); ! vresult = FXRbGetRubyObj(resultptr, "FXRegion *"); } return vresult; *************** *** 9288,9294 **** { ! FXRegion * resultptr; ! resultptr = new FXRegion (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXRegion, 1); } return vresult; --- 9285,9290 ---- { ! FXRegion* resultptr = new FXRegion(result); ! vresult = FXRbGetRubyObj(resultptr, "FXRegion *"); } return vresult; *************** *** 9310,9316 **** { ! FXRegion * resultptr; ! resultptr = new FXRegion (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXRegion, 1); } return vresult; --- 9306,9311 ---- { ! FXRegion* resultptr = new FXRegion(result); ! vresult = FXRbGetRubyObj(resultptr, "FXRegion *"); } return vresult; *************** *** 9332,9338 **** { ! FXRegion * resultptr; ! resultptr = new FXRegion (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXRegion, 1); } return vresult; --- 9327,9332 ---- { ! FXRegion* resultptr = new FXRegion(result); ! vresult = FXRbGetRubyObj(resultptr, "FXRegion *"); } return vresult; *************** *** 10893,10897 **** result = (FXRectangle *) &_result_ref; ! vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXRectangle,0); return vresult; } --- 10887,10891 ---- result = (FXRectangle *) &_result_ref; ! vresult = FXRbGetRubyObj(result, "FXRectangle *"); return vresult; } *************** *** 17232,17236 **** rb_define_singleton_method(cFXStream.klass, "isLittleEndian", VALUEFUNC(_wrap_FXStream_isLittleEndian), -1); cFXStream.mark = 0; ! cFXStream.destroy = (void (*)(void *)) free_FXStream; cFXFileStream.klass = rb_define_class_under(mFox, "FXFileStream", cFXStream.klass); --- 17226,17230 ---- rb_define_singleton_method(cFXStream.klass, "isLittleEndian", VALUEFUNC(_wrap_FXStream_isLittleEndian), -1); cFXStream.mark = 0; ! cFXStream.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXFileStream.klass = rb_define_class_under(mFox, "FXFileStream", cFXStream.klass); *************** *** 17265,17269 **** rb_define_method(cFXSize.klass, "h", VALUEFUNC(_wrap_FXSize_h_get), -1); cFXSize.mark = 0; ! cFXSize.destroy = (void (*)(void *)) free_FXSize; cFXPoint.klass = rb_define_class_under(mFox, "FXPoint", rb_cObject); --- 17259,17263 ---- rb_define_method(cFXSize.klass, "h", VALUEFUNC(_wrap_FXSize_h_get), -1); cFXSize.mark = 0; ! cFXSize.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXPoint.klass = rb_define_class_under(mFox, "FXPoint", rb_cObject); *************** *** 17276,17279 **** --- 17270,17274 ---- rb_define_method(cFXPoint.klass, "y", VALUEFUNC(_wrap_FXPoint_y_get), -1); cFXPoint.mark = 0; + cFXPoint.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXRectangle.klass = rb_define_class_under(mFox, "FXRectangle", rb_cObject); *************** *** 17290,17293 **** --- 17285,17289 ---- rb_define_method(cFXRectangle.klass, "h", VALUEFUNC(_wrap_FXRectangle_h_get), -1); cFXRectangle.mark = 0; + cFXRectangle.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; rb_define_const(mFox,"MINKEY", INT2NUM(0)); rb_define_const(mFox,"MAXKEY", INT2NUM(65535)); *************** *** 17304,17308 **** rb_define_method(cFX_Object.klass, "load", VALUEFUNC(_wrap_FX_Object_load), -1); cFX_Object.mark = (void (*)(void *)) FXRbObject::markfunc; ! cFX_Object.destroy = (void (*)(void *)) free_FXObject; cFXObject.klass = rb_define_class_under(mFox, "FXObject", cFX_Object.klass); --- 17300,17304 ---- rb_define_method(cFX_Object.klass, "load", VALUEFUNC(_wrap_FX_Object_load), -1); cFX_Object.mark = (void (*)(void *)) FXRbObject::markfunc; ! cFX_Object.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXObject.klass = rb_define_class_under(mFox, "FXObject", cFX_Object.klass); *************** *** 17375,17379 **** rb_define_method(cFX_StringDict.klass, "find", VALUEFUNC(_wrap_FX_StringDict_find), -1); cFX_StringDict.mark = (void (*)(void *)) FXRbStringDict::markfunc; ! cFX_StringDict.destroy = (void (*)(void *)) free_FXStringDict; cFXStringDict.klass = rb_define_class_under(mFox, "FXStringDict", cFX_StringDict.klass); --- 17371,17375 ---- rb_define_method(cFX_StringDict.klass, "find", VALUEFUNC(_wrap_FX_StringDict_find), -1); cFX_StringDict.mark = (void (*)(void *)) FXRbStringDict::markfunc; ! cFX_StringDict.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXStringDict.klass = rb_define_class_under(mFox, "FXStringDict", cFX_StringDict.klass); *************** *** 17424,17428 **** rb_define_method(cFXRegistry.klass, "getAsciiMode", VALUEFUNC(_wrap_FXRegistry_getAsciiMode), -1); cFXRegistry.mark = 0; ! cFXRegistry.destroy = (void (*)(void *)) free_FXRegistry; cFX_AccelTable.klass = rb_define_class_under(mFox, "FX_AccelTable", cFX_Object.klass); --- 17420,17424 ---- rb_define_method(cFXRegistry.klass, "getAsciiMode", VALUEFUNC(_wrap_FXRegistry_getAsciiMode), -1); cFXRegistry.mark = 0; ! cFXRegistry.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_AccelTable.klass = rb_define_class_under(mFox, "FX_AccelTable", cFX_Object.klass); *************** *** 17437,17441 **** rb_define_method(cFX_AccelTable.klass, "removeAccel", VALUEFUNC(_wrap_FX_AccelTable_removeAccel), -1); cFX_AccelTable.mark = (void (*)(void *)) FXRbAccelTable::markfunc; ! cFX_AccelTable.destroy = (void (*)(void *)) free_FXAccelTable; cFXAccelTable.klass = rb_define_class_under(mFox, "FXAccelTable", cFX_AccelTable.klass); --- 17433,17437 ---- rb_define_method(cFX_AccelTable.klass, "removeAccel", VALUEFUNC(_wrap_FX_AccelTable_removeAccel), -1); cFX_AccelTable.mark = (void (*)(void *)) FXRbAccelTable::markfunc; ! cFX_AccelTable.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXAccelTable.klass = rb_define_class_under(mFox, "FXAccelTable", cFX_AccelTable.klass); *************** *** 17555,17558 **** --- 17551,17555 ---- rb_undef_method(CLASS_OF(cFXChore.klass), "new"); cFXChore.mark = 0; + cFXChore.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXTimer.klass = rb_define_class_under(mFox, "FXTimer", rb_cObject); *************** *** 17560,17563 **** --- 17557,17561 ---- rb_undef_method(CLASS_OF(cFXTimer.klass), "new"); cFXTimer.mark = 0; + cFXTimer.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_App.klass = rb_define_class_under(mFox, "FX_App", cFX_Object.klass); *************** *** 17671,17675 **** rb_define_method(cFX_App.klass, "dumpWidgets", VALUEFUNC(_wrap_FX_App_dumpWidgets), -1); cFX_App.mark = (void (*)(void *)) FXRbApp::markfunc; ! cFX_App.destroy = (void (*)(void *)) free_FXApp; cFXApp.klass = rb_define_class_under(mFox, "FXApp", cFX_App.klass); --- 17669,17673 ---- rb_define_method(cFX_App.klass, "dumpWidgets", VALUEFUNC(_wrap_FX_App_dumpWidgets), -1); cFX_App.mark = (void (*)(void *)) FXRbApp::markfunc; ! cFX_App.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXApp.klass = rb_define_class_under(mFox, "FXApp", cFX_App.klass); *************** *** 17754,17758 **** rb_define_method(cFX_Visual.klass, "getType", VALUEFUNC(_wrap_FX_Visual_getType), -1); cFX_Visual.mark = (void (*)(void *)) FXRbVisual::markfunc; ! cFX_Visual.destroy = (void (*)(void *)) free_FXVisual; cFXVisual.klass = rb_define_class_under(mFox, "FXVisual", cFX_Visual.klass); --- 17752,17756 ---- rb_define_method(cFX_Visual.klass, "getType", VALUEFUNC(_wrap_FX_Visual_getType), -1); cFX_Visual.mark = (void (*)(void *)) FXRbVisual::markfunc; ! cFX_Visual.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXVisual.klass = rb_define_class_under(mFox, "FXVisual", cFX_Visual.klass); *************** *** 17879,17883 **** rb_define_method(cFXFontDesc.klass, "flags", VALUEFUNC(_wrap_FXFontDesc_flags_get), -1); cFXFontDesc.mark = 0; ! cFXFontDesc.destroy = (void (*)(void *)) free_FXFontDesc; cFX_Font.klass = rb_define_class_under(mFox, "FX_Font", cFX_Id.klass); --- 17877,17881 ---- rb_define_method(cFXFontDesc.klass, "flags", VALUEFUNC(_wrap_FXFontDesc_flags_get), -1); cFXFontDesc.mark = 0; ! cFXFontDesc.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_Font.klass = rb_define_class_under(mFox, "FX_Font", cFX_Id.klass); *************** *** 17910,17914 **** rb_define_singleton_method(cFX_Font.klass, "listFonts", VALUEFUNC(_wrap_FX_Font_listFonts), -1); cFX_Font.mark = (void (*)(void *)) FXRbFont::markfunc; ! cFX_Font.destroy = (void (*)(void *)) free_FXFont; cFXFont.klass = rb_define_class_under(mFox, "FXFont", cFX_Font.klass); --- 17908,17912 ---- rb_define_singleton_method(cFX_Font.klass, "listFonts", VALUEFUNC(_wrap_FX_Font_listFonts), -1); cFX_Font.mark = (void (*)(void *)) FXRbFont::markfunc; ! cFX_Font.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXFont.klass = rb_define_class_under(mFox, "FXFont", cFX_Font.klass); *************** *** 17951,17955 **** rb_define_method(cFX_Cursor.klass, "load", VALUEFUNC(_wrap_FX_Cursor_load), -1); cFX_Cursor.mark = (void (*)(void *)) FXRbCursor::markfunc; ! cFX_Cursor.destroy = (void (*)(void *)) free_FXCursor; cFXCursor.klass = rb_define_class_under(mFox, "FXCursor", cFX_Cursor.klass); --- 17949,17953 ---- rb_define_method(cFX_Cursor.klass, "load", VALUEFUNC(_wrap_FX_Cursor_load), -1); cFX_Cursor.mark = (void (*)(void *)) FXRbCursor::markfunc; ! cFX_Cursor.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXCursor.klass = rb_define_class_under(mFox, "FXCursor", cFX_Cursor.klass); *************** *** 18053,18057 **** rb_define_method(cFXRegion.klass, "==", VALUEFUNC(_wrap_FXRegion___eq__), -1); cFXRegion.mark = 0; ! cFXRegion.destroy = (void (*)(void *)) free_FXRegion; rb_define_const(mFox,"BLT_CLR", INT2NUM(BLT_CLR)); rb_define_const(mFox,"BLT_SRC_AND_DST", INT2NUM(BLT_SRC_AND_DST)); --- 18051,18055 ---- rb_define_method(cFXRegion.klass, "==", VALUEFUNC(_wrap_FXRegion___eq__), -1); cFXRegion.mark = 0; ! cFXRegion.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; rb_define_const(mFox,"BLT_CLR", INT2NUM(BLT_CLR)); rb_define_const(mFox,"BLT_SRC_AND_DST", INT2NUM(BLT_SRC_AND_DST)); *************** *** 18424,18428 **** rb_define_method(cFXPrinter.klass, "flags", VALUEFUNC(_wrap_FXPrinter_flags_get), -1); cFXPrinter.mark = 0; ! cFXPrinter.destroy = (void (*)(void *)) free_FXPrinter; cFX_DCPrint.klass = rb_define_class_under(mFox, "FX_DCPrint", cFX_DC.klass); --- 18422,18426 ---- rb_define_method(cFXPrinter.klass, "flags", VALUEFUNC(_wrap_FXPrinter_flags_get), -1); cFXPrinter.mark = 0; ! cFXPrinter.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_DCPrint.klass = rb_define_class_under(mFox, "FX_DCPrint", cFX_DC.klass); *************** *** 18519,18523 **** rb_define_method(cFXFileAssoc.klass, "flags", VALUEFUNC(_wrap_FXFileAssoc_flags_get), -1); cFXFileAssoc.mark = 0; ! cFXFileAssoc.destroy = (void (*)(void *)) free_FXFileAssoc; cFX_IconDict.klass = rb_define_class_under(mFox, "FX_IconDict", cFX_Dict.klass); --- 18517,18521 ---- rb_define_method(cFXFileAssoc.klass, "flags", VALUEFUNC(_wrap_FXFileAssoc_flags_get), -1); cFXFileAssoc.mark = 0; ! cFXFileAssoc.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_IconDict.klass = rb_define_class_under(mFox, "FX_IconDict", cFX_Dict.klass); *************** *** 18565,18569 **** rb_define_method(cFX_FileDict.klass, "load", VALUEFUNC(_wrap_FX_FileDict_load), -1); cFX_FileDict.mark = (void (*)(void *)) FXRbFileDict::markfunc; ! cFX_FileDict.destroy = (void (*)(void *)) free_FXFileDict; cFXFileDict.klass = rb_define_class_under(mFox, "FXFileDict", cFX_FileDict.klass); --- 18563,18567 ---- rb_define_method(cFX_FileDict.klass, "load", VALUEFUNC(_wrap_FX_FileDict_load), -1); cFX_FileDict.mark = (void (*)(void *)) FXRbFileDict::markfunc; ! cFX_FileDict.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXFileDict.klass = rb_define_class_under(mFox, "FXFileDict", cFX_FileDict.klass); Index: dialogs_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/dialogs_wrap.cpp,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** dialogs_wrap.cpp 28 Mar 2002 15:26:07 -0000 1.32 --- dialogs_wrap.cpp 2 Apr 2002 04:10:13 -0000 1.33 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 4208,4214 **** { ! FXFontDesc * resultptr; ! resultptr = new FXFontDesc (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXFontDesc, 1); } return vresult; --- 4208,4213 ---- { ! FXFontDesc* resultptr = new FXFontDesc(result); ! vresult = FXRbGetRubyObj(resultptr, "FXFontDesc *"); } return vresult; *************** *** 8191,8197 **** { ! FXPrinter * resultptr; ! resultptr = new FXPrinter (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXPrinter, 1); } return vresult; --- 8190,8195 ---- { ! FXPrinter *resultptr = new FXPrinter(result); ! vresult = FXRbGetRubyObj(resultptr, "FXPrinter *"); } return vresult; Index: icons_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/icons_wrap.cpp,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** icons_wrap.cpp 28 Mar 2002 15:26:07 -0000 1.35 --- icons_wrap.cpp 2 Apr 2002 04:10:14 -0000 1.36 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 7020,7024 **** rb_define_method(cFX_Icon.klass, "setTransparentColor", VALUEFUNC(_wrap_FX_Icon_setTransparentColor), -1); cFX_Icon.mark = (void (*)(void *)) FXRbIcon::markfunc; ! cFX_Icon.destroy = (void (*)(void *)) free_FXIcon; cFXIcon.klass = rb_define_class_under(mFox, "FXIcon", cFX_Icon.klass); --- 7020,7024 ---- rb_define_method(cFX_Icon.klass, "setTransparentColor", VALUEFUNC(_wrap_FX_Icon_setTransparentColor), -1); cFX_Icon.mark = (void (*)(void *)) FXRbIcon::markfunc; ! cFX_Icon.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXIcon.klass = rb_define_class_under(mFox, "FXIcon", cFX_Icon.klass); Index: image_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/image_wrap.cpp,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** image_wrap.cpp 28 Mar 2002 15:26:07 -0000 1.37 --- image_wrap.cpp 2 Apr 2002 04:10:14 -0000 1.38 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 7256,7260 **** rb_define_method(cFX_Bitmap.klass, "loadPixels", VALUEFUNC(_wrap_FX_Bitmap_loadPixels), -1); cFX_Bitmap.mark = (void (*)(void *)) FXRbBitmap::markfunc; ! cFX_Bitmap.destroy = (void (*)(void *)) free_FXBitmap; cFXBitmap.klass = rb_define_class_under(mFox, "FXBitmap", cFX_Bitmap.klass); --- 7256,7260 ---- rb_define_method(cFX_Bitmap.klass, "loadPixels", VALUEFUNC(_wrap_FX_Bitmap_loadPixels), -1); cFX_Bitmap.mark = (void (*)(void *)) FXRbBitmap::markfunc; ! cFX_Bitmap.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXBitmap.klass = rb_define_class_under(mFox, "FXBitmap", cFX_Bitmap.klass); *************** *** 7310,7314 **** rb_define_method(cFX_Image.klass, "loadPixels", VALUEFUNC(_wrap_FX_Image_loadPixels), -1); cFX_Image.mark = (void (*)(void *)) FXRbImage::markfunc; ! cFX_Image.destroy = (void (*)(void *)) free_FXImage; cFXImage.klass = rb_define_class_under(mFox, "FXImage", cFX_Image.klass); --- 7310,7314 ---- rb_define_method(cFX_Image.klass, "loadPixels", VALUEFUNC(_wrap_FX_Image_loadPixels), -1); cFX_Image.mark = (void (*)(void *)) FXRbImage::markfunc; ! cFX_Image.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXImage.klass = rb_define_class_under(mFox, "FXImage", cFX_Image.klass); Index: layout_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/layout_wrap.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** layout_wrap.cpp 28 Mar 2002 15:26:08 -0000 1.6 --- layout_wrap.cpp 2 Apr 2002 04:10:14 -0000 1.7 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 11294,11297 **** --- 11294,11298 ---- rb_define_method(cFX_VerticalFrame.klass, "initialize", VALUEFUNC(_wrap_FX_VerticalFrame_initialize), -1); cFX_VerticalFrame.mark = (void (*)(void *)) FXRbVerticalFrame::markfunc; + cFX_VerticalFrame.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXVerticalFrame.klass = rb_define_class_under(mFox, "FXVerticalFrame", cFX_VerticalFrame.klass); Index: mdi_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/mdi_wrap.cpp,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** mdi_wrap.cpp 28 Mar 2002 15:26:08 -0000 1.34 --- mdi_wrap.cpp 2 Apr 2002 04:10:14 -0000 1.35 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 10890,10894 **** rb_define_method(cFX_MDIChild.klass, "getFont", VALUEFUNC(_wrap_FX_MDIChild_getFont), -1); cFX_MDIChild.mark = (void (*)(void *)) FXRbMDIChild::markfunc; ! cFX_MDIChild.destroy = (void (*)(void *)) free_FXMDIChild; cFXMDIChild.klass = rb_define_class_under(mFox, "FXMDIChild", cFX_MDIChild.klass); --- 10890,10894 ---- rb_define_method(cFX_MDIChild.klass, "getFont", VALUEFUNC(_wrap_FX_MDIChild_getFont), -1); cFX_MDIChild.mark = (void (*)(void *)) FXRbMDIChild::markfunc; ! cFX_MDIChild.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXMDIChild.klass = rb_define_class_under(mFox, "FXMDIChild", cFX_MDIChild.klass); Index: opengl_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/opengl_wrap.cpp,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** opengl_wrap.cpp 28 Mar 2002 15:26:08 -0000 1.39 --- opengl_wrap.cpp 2 Apr 2002 04:10:15 -0000 1.40 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * [...1277 lines suppressed...] cFXMaterial.mark = 0; ! cFXMaterial.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFX_GLViewer.klass = rb_define_class_under(mFox, "FX_GLViewer", cFX_GLCanvas.klass); *************** *** 13708,13711 **** --- 13663,13667 ---- rb_define_method(cFX_GLObject.klass, "drag", VALUEFUNC(_wrap_FX_GLObject_drag), -1); cFX_GLObject.mark = (void (*)(void *)) FXRbGLObject::markfunc; + cFX_GLObject.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXGLObject.klass = rb_define_class_under(mFox, "FXGLObject", cFX_GLObject.klass); *************** *** 13807,13810 **** --- 13763,13767 ---- rb_define_method(cFX_GLShape.klass, "getMaterial", VALUEFUNC(_wrap_FX_GLShape_getMaterial), -1); cFX_GLShape.mark = (void (*)(void *)) FXRbGLShape::markfunc; + cFX_GLShape.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXGLShape.klass = rb_define_class_under(mFox, "FXGLShape", cFX_GLShape.klass); Index: ui_wrap.cpp =================================================================== RCS file: /cvsroot/fxruby/FXRuby/ext/fox/ui_wrap.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** ui_wrap.cpp 28 Mar 2002 15:26:08 -0000 1.7 --- ui_wrap.cpp 2 Apr 2002 04:10:15 -0000 1.8 *************** *** 1,5 **** /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020327-1824 * * This file is not intended to be easily readable and contains a number of --- 1,5 ---- /* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). ! * Version 1.3.12u-20020401-2115 * * This file is not intended to be easily readable and contains a number of *************** *** 901,905 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 901,905 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 914,918 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 914,918 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 942,946 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(item); } void FXList_clearItems(FXList *self,FXbool notify){ --- 942,946 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(item); } void FXList_clearItems(FXList *self,FXbool notify){ *************** *** 960,964 **** if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbNotifyDestroyed(items[i]); } FXFREE(&items); --- 960,964 ---- if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbUnregisterRubyObj(items[i]); } FXFREE(&items); *************** *** 1042,1046 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1042,1046 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1055,1059 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1055,1059 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1068,1072 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1068,1072 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1147,1151 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1147,1151 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1164,1168 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1164,1168 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1181,1185 **** // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbNotifyDestroyed(items[i]); } } --- 1181,1185 ---- // Now zero-out pointers held by still-alive Ruby objects for(FXint i=0;i<items.no();i++){ ! FXRbUnregisterRubyObj(items[i]); } } *************** *** 1192,1196 **** // Now zero-out any pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(item); } void FXTable_setItemData(FXTable *self,FXint r,FXint c,VALUE ptr){ --- 1192,1196 ---- // Now zero-out any pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(item); } void FXTable_setItemData(FXTable *self,FXint r,FXint c,VALUE ptr){ *************** *** 1263,1267 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 1263,1267 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 1276,1280 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 1276,1280 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 1304,1308 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(item); } void FXHeader_clearItems(FXHeader *self,FXbool notify){ --- 1304,1308 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(item); } void FXHeader_clearItems(FXHeader *self,FXbool notify){ *************** *** 1322,1326 **** if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbNotifyDestroyed(items[i]); } FXFREE(&items); --- 1322,1326 ---- if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbUnregisterRubyObj(items[i]); } FXFREE(&items); *************** *** 1360,1364 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 1360,1364 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 1373,1377 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(oldItem); // Done --- 1373,1377 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(oldItem); // Done *************** *** 1401,1405 **** // Now zero-out pointers held by still-alive Ruby objects ! FXRbNotifyDestroyed(item); } void FXIconList_clearItems(FXIconList *self,FXbool notify){ --- 1401,1405 ---- // Now zero-out pointers held by still-alive Ruby objects ! FXRbUnregisterRubyObj(item); } void FXIconList_clearItems(FXIconList *self,FXbool notify){ *************** *** 1419,1423 **** if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbNotifyDestroyed(items[i]); } FXFREE(&items); --- 1419,1423 ---- if(items){ for(FXint i=0; i<numItems; i++){ ! FXRbUnregisterRubyObj(items[i]); } FXFREE(&items); *************** *** 87022,87028 **** { ! FXFontDesc * resultptr; ! resultptr = new FXFontDesc (result); ! vresult = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_FXFontDesc, 1); } return vresult; --- 87022,87027 ---- { ! FXFontDesc* resultptr = new FXFontDesc(result); ! vresult = FXRbGetRubyObj(resultptr, "FXFontDesc *"); } return vresult; *************** *** 100235,100239 **** rb_define_method(cFX_Window.klass, "doesSaveUnder", VALUEFUNC(_wrap_FX_Window_doesSaveUnder), -1); cFX_Window.mark = (void (*)(void *)) FXRbWindow::markfunc; ! cFX_Window.destroy = (void (*)(void *)) free_FXWindow; cFXWindow.klass = rb_define_class_under(mFox, "FXWindow", cFX_Window.klass); --- 100234,100238 ---- rb_define_method(cFX_Window.klass, "doesSaveUnder", VALUEFUNC(_wrap_FX_Window_doesSaveUnder), -1); cFX_Window.mark = (void (*)(void *)) FXRbWindow::markfunc; ! cFX_Window.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXWindow.klass = rb_define_class_under(mFox, "FXWindow", cFX_Window.klass); *************** *** 101008,101012 **** rb_define_method(cFX_Button.klass, "getButtonStyle", VALUEFUNC(_wrap_FX_Button_getButtonStyle), -1); cFX_Button.mark = (void (*)(void *)) FXRbButton::markfunc; ! cFX_Button.destroy = (void (*)(void *)) free_FXButton; cFXButton.klass = rb_define_class_under(mFox, "FXButton", cFX_Button.klass); --- 101007,101011 ---- rb_define_method(cFX_Button.klass, "getButtonStyle", VALUEFUNC(_wrap_FX_Button_getButtonStyle), -1); cFX_Button.mark = (void (*)(void *)) FXRbButton::markfunc; ! cFX_Button.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXButton.klass = rb_define_class_under(mFox, "FXButton", cFX_Button.klass); *************** *** 101501,101505 **** rb_define_method(cFX_Composite.klass, "maxChildHeight", VALUEFUNC(_wrap_FX_Composite_maxChildHeight), -1); cFX_Composite.mark = (void (*)(void *)) FXRbComposite::markfunc; ! cFX_Composite.destroy = (void (*)(void *)) free_FXComposite; cFXComposite.klass = rb_define_class_under(mFox, "FXComposite", cFX_Composite.klass); --- 101500,101504 ---- rb_define_method(cFX_Composite.klass, "maxChildHeight", VALUEFUNC(_wrap_FX_Composite_maxChildHeight), -1); cFX_Composite.mark = (void (*)(void *)) FXRbComposite::markfunc; ! cFX_Composite.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXComposite.klass = rb_define_class_under(mFox, "FXComposite", cFX_Composite.klass); *************** *** 101708,101712 **** rb_define_method(cFX_RootWindow.klass, "initialize", VALUEFUNC(_wrap_FX_RootWindow_initialize), -1); cFX_RootWindow.mark = (void (*)(void *)) FXRbRootWindow::markfunc; ! cFX_RootWindow.destroy = (void (*)(void *)) free_FXRootWindow; cFXRootWindow.klass = rb_define_class_under(mFox, "FXRootWindow", cFX_RootWindow.klass); --- 101707,101711 ---- rb_define_method(cFX_RootWindow.klass, "initialize", VALUEFUNC(_wrap_FX_RootWindow_initialize), -1); cFX_RootWindow.mark = (void (*)(void *)) FXRbRootWindow::markfunc; ! cFX_RootWindow.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXRootWindow.klass = rb_define_class_under(mFox, "FXRootWindow", cFX_RootWindow.klass); *************** *** 101949,101953 **** rb_define_method(cFX_Popup.klass, "setShrinkWrap", VALUEFUNC(_wrap_FX_Popup_setShrinkWrap), -1); cFX_Popup.mark = (void (*)(void *)) FXRbPopup::markfunc; ! cFX_Popup.destroy = (void (*)(void *)) free_FXPopup; cFXPopup.klass = rb_define_class_under(mFox, "FXPopup", cFX_Popup.klass); --- 101948,101952 ---- rb_define_method(cFX_Popup.klass, "setShrinkWrap", VALUEFUNC(_wrap_FX_Popup_setShrinkWrap), -1); cFX_Popup.mark = (void (*)(void *)) FXRbPopup::markfunc; ! cFX_Popup.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXPopup.klass = rb_define_class_under(mFox, "FXPopup", cFX_Popup.klass); *************** *** 102627,102631 **** rb_define_method(cFX_Option.klass, "onHotKeyRelease", VALUEFUNC(_wrap_FX_Option_onHotKeyRelease), -1); cFX_Option.mark = (void (*)(void *)) FXRbOption::markfunc; ! cFX_Option.destroy = (void (*)(void *)) free_FXOption; cFXOption.klass = rb_define_class_under(mFox, "FXOption", cFX_Option.klass); --- 102626,102630 ---- rb_define_method(cFX_Option.klass, "onHotKeyRelease", VALUEFUNC(_wrap_FX_Option_onHotKeyRelease), -1); cFX_Option.mark = (void (*)(void *)) FXRbOption::markfunc; ! cFX_Option.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXOption.klass = rb_define_class_under(mFox, "FXOption", cFX_Option.klass); *************** *** 102980,102984 **** rb_define_method(cFX_Scrollbar.klass, "setScrollbarStyle", VALUEFUNC(_wrap_FX_Scrollbar_setScrollbarStyle), -1); cFX_Scrollbar.mark = (void (*)(void *)) FXRbScrollbar::markfunc; ! cFX_Scrollbar.destroy = (void (*)(void *)) free_FXScrollbar; cFXScrollbar.klass = rb_define_class_under(mFox, "FXScrollbar", cFX_Scrollbar.klass); --- 102979,102983 ---- rb_define_method(cFX_Scrollbar.klass, "setScrollbarStyle", VALUEFUNC(_wrap_FX_Scrollbar_setScrollbarStyle), -1); cFX_Scrollbar.mark = (void (*)(void *)) FXRbScrollbar::markfunc; ! cFX_Scrollbar.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXScrollbar.klass = rb_define_class_under(mFox, "FXScrollbar", cFX_Scrollbar.klass); *************** *** 103228,103231 **** --- 103227,103231 ---- rb_define_method(cFX_ListItem.klass, "destroy", VALUEFUNC(_wrap_FX_ListItem_destroy), -1); cFX_ListItem.mark = (void (*)(void *)) FXRbListItem::markfunc; + cFX_ListItem.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXListItem.klass = rb_define_class_under(mFox, "FXListItem", cFX_ListItem.klass); *************** *** 103632,103635 **** --- 103632,103636 ---- rb_define_method(cFX_TreeItem.klass, "destroy", VALUEFUNC(_wrap_FX_TreeItem_destroy), -1); cFX_TreeItem.mark = (void (*)(void *)) FXRbTreeItem::markfunc; + cFX_TreeItem.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXTreeItem.klass = rb_define_class_under(mFox, "FXTreeItem", cFX_TreeItem.klass); *************** *** 103981,103985 **** rb_define_method(cFXTablePos.klass, "col", VALUEFUNC(_wrap_FXTablePos_col_get), -1); cFXTablePos.mark = 0; ! cFXTablePos.destroy = (void (*)(void *)) free_FXTablePos; cFXTableRange.klass = rb_define_class_under(mFox, "FXTableRange", rb_cObject); --- 103982,103986 ---- rb_define_method(cFXTablePos.klass, "col", VALUEFUNC(_wrap_FXTablePos_col_get), -1); cFXTablePos.mark = 0; ! cFXTablePos.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXTableRange.klass = rb_define_class_under(mFox, "FXTableRange", rb_cObject); *************** *** 104046,104049 **** --- 104047,104051 ---- rb_define_method(cFX_TableItem.klass, "load", VALUEFUNC(_wrap_FX_TableItem_load), -1); cFX_TableItem.mark = (void (*)(void *)) FXRbTableItem::markfunc; + cFX_TableItem.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXTableItem.klass = rb_define_class_under(mFox, "FXTableItem", cFX_TableItem.klass); *************** *** 104322,104325 **** --- 104324,104328 ---- rb_define_method(cFX_DragCorner.klass, "getShadowColor", VALUEFUNC(_wrap_FX_DragCorner_getShadowColor), -1); cFX_DragCorner.mark = (void (*)(void *)) FXRbDragCorner::markfunc; + cFX_DragCorner.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXDragCorner.klass = rb_define_class_under(mFox, "FXDragCorner", cFX_DragCorner.klass); *************** *** 104379,104383 **** rb_define_method(cFX_Statusline.klass, "setTextHighlightColor", VALUEFUNC(_wrap_FX_Statusline_setTextHighlightColor), -1); cFX_Statusline.mark = (void (*)(void *)) FXRbStatusline::markfunc; ! cFX_Statusline.destroy = (void (*)(void *)) free_FXStatusline; cFXStatusline.klass = rb_define_class_under(mFox, "FXStatusline", cFX_Statusline.klass); --- 104382,104386 ---- rb_define_method(cFX_Statusline.klass, "setTextHighlightColor", VALUEFUNC(_wrap_FX_Statusline_setTextHighlightColor), -1); cFX_Statusline.mark = (void (*)(void *)) FXRbStatusline::markfunc; ! cFX_Statusline.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXStatusline.klass = rb_define_class_under(mFox, "FXStatusline", cFX_Statusline.klass); *************** *** 104699,104702 **** --- 104702,104706 ---- rb_define_method(cFX_HeaderItem.klass, "destroy", VALUEFUNC(_wrap_FX_HeaderItem_destroy), -1); cFX_HeaderItem.mark = (void (*)(void *)) FXRbHeaderItem::markfunc; + cFX_HeaderItem.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXHeaderItem.klass = rb_define_class_under(mFox, "FXHeaderItem", cFX_HeaderItem.klass); *************** *** 104764,104768 **** rb_define_method(cFX_Header.klass, "getHelpText", VALUEFUNC(_wrap_FX_Header_getHelpText), -1); cFX_Header.mark = (void (*)(void *)) FXRbHeader::markfunc; ! cFX_Header.destroy = (void (*)(void *)) free_FXHeader; cFXHeader.klass = rb_define_class_under(mFox, "FXHeader", cFX_Header.klass); --- 104768,104772 ---- rb_define_method(cFX_Header.klass, "getHelpText", VALUEFUNC(_wrap_FX_Header_getHelpText), -1); cFX_Header.mark = (void (*)(void *)) FXRbHeader::markfunc; ! cFX_Header.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXHeader.klass = rb_define_class_under(mFox, "FXHeader", cFX_Header.klass); *************** *** 104844,104847 **** --- 104848,104852 ---- rb_define_method(cFX_IconItem.klass, "load", VALUEFUNC(_wrap_FX_IconItem_load), -1); cFX_IconItem.mark = (void (*)(void *)) FXRbIconItem::markfunc; + cFX_IconItem.destroy = (void (*)(void *)) FXRbUnregisterRubyObj; cFXIconItem.klass = rb_define_class_under(mFox, "FXIconItem", cFX_IconItem.klass); |