Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
On Mon, 2003-09-29 at 14:42, Sven Neumann wrote: > Hi, > > Perhaps you want to contribute a short porting guide. Such a document > should be included with the 1.3 API reference. Let me know if you are > interested, I can give you a template that we can include in > devel-docs/libgimp later. Now that I've successfully ported a simple plug-in (ellipse.c, the one that maps an image to a circular or elliptical window, not the selection), I can make an informed reply of yes, certainly. Please go ahead and send or point me to the template. -- Jeff ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20(gimp-2)
At 09:44 28.09.03 -0700, Jeff Trefftzs wrote: >Hi all, > >As we are about to move to the next stage of gimpery, I have begun >looking closely at my large collection of plug-ins, many of which I >remember compiling with GIMP_ENABLE_COMPAT_CRUFT, and wondering how to >make them usable again under the new regime. Can anybody point me to a >porting guide that identifies the changes needed to go from the old >(well, present) api to that used in gimp-1.3.20 and up? > >I have already written a quckie decrufter perl script to obviate the >need to use GIMP_ENABLE_COMPAT_CRUFT, and I have found a few changes >between present stable usage and the 1.3.20 version, but I'm still >wondering what else I'm missing. > Attached you'll find my small porting helper (a little bit like a working documentation; sorry if it's in the wrong scripting language :-) Beside that there were some smaller changes required as GimpRGB instead of guchar r,g,b; deleting : color_cube = gimp_color_cube (); gtk_preview_set_color_cube (color_cube[0], color_cube[1], color_cube[2], color_cube[3]); Have Fun, Hans ApiPrefixChanges = ( # old prefix, new prefix, identifiers rest ("G", "Gimp", ( "Drawable", "Param", "ParamDef", "PixelRgn", "PlugInInfo", "Tile", )), ("PARAM_", "GIMP_PDB_", ( "CHANNEL", "COLOR", "DISPLAY", "DRAWABLE", "FLOAT", "LAYER", "IMAGE", "INT32", "INT16", "INT8", "PARASITE", "SELECTION", "STRING", "STRINGARRAY", "STATUS", )), ("PROC_", "GIMP_", ( "EXTENSION", #not "PLUG_IN", "TEMPORARY" )), ("RUN_", "GIMP_RUN_", ( "INTERACTIVE", "NONINTERACTIVE", "WITH_LAST_VALS" )), ("STATUS_", "GIMP_PDB_", ( "CALLING_ERROR", "EXECUTION_ERROR", "SUCCESS" )), ("", "GIMP_", ( # GimpImageType "RGB_IMAGE", "RGBA_IMAGE", "GRAY_IMAGE", "GRAYA_IMAGE", "INDEXED_IMAGE", "INDEXEDA_IMAGE", # GimpLayerModeEffects "NORMAL_MODE", "DISSOLVE_MODE", "BEHIND_MODE" # ... )) ) OtherChanges = ( ("GDrawableType", "GimpImageType"), ("GRunModeType", "GimpRunMode"), ("GStatusType", "GimpPDBStatusType"), ("PROC_PLUG_IN", "GIMP_PLUGIN"), ("gimp_drawable_color", "gimp_drawable_is_rgb"), ("gimp_drawable_gray", "gimp_drawable_is_gray"), ("gimp_drawable_indexed", "gimp_drawable_is_indexed"), ) import os, re, sys # create a dictionary with all the changes to apply changes = [] sBefore = r"(^|[ \t(=])" sAfter = r"([ \t,;:()=])" for t1 in ApiPrefixChanges : s1PreOld = t1[0] s1PreNew = t1[1] for t2 in t1[2] : r1 = re.compile(sBefore + s1PreOld + t2 + sAfter, re.DOTALL | re.MULTILINE) r2 = r"\1" + s1PreNew + t2 + r"\2" changes.append((r1, r2)) for t1 in OtherChanges : r1 = re.compile(sBefore + t1[0] + sAfter, re.DOTALL | re.MULTILINE) r2 = r"\1" + t1[1] + r"\2" changes.append((r1, r2)) sFile = sys.argv[1] sFileBac = sFile + ".pre13" os.rename(sFile, sFileBac) f = open(sFileBac) sAll = f.read() f.close() for t in changes : print t[1][2:-2] sAll = t[0].sub(t[1], sAll) f = open(sFile, "w") f.write(sAll) Hans "at" Breuer "dot" Org --- Tell me what you need, and I'll tell you how to get along without it.-- Dilbert___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
Hi, Jeff Trefftzs <[EMAIL PROTECTED]> writes: > On Mon, 2003-09-29 at 06:44, Sven Neumann wrote: > > > If your plug-in still needs GIMP_ENABLE_COMPAT_CRUFT, it hasn't been > > ported to gimp-1.2 yet. Of course you need to do that first. > > > > Do I need to do anything except replace the old cruft with the new calls > as specified in gimp-1.2.5/libgimp/gimpcompat.h? It it compiles against the 1.2 API with GIMP_ENABLE_COMPAT_CRUFT defined, it should compile without that define after you've made the changes defined by 1.2 gimpcompat.h. For gimp-1.3 we decided not to include gimpcompat.h from gimp.h. So instead of adding a define to get the compat cruft, you have to include an extra header file. Not all changes are covered by this file. Mainly because you cannot wrap all API changes in #defines. There aren't too many other changes however. All of them should create a compiler error. Please compile with -Wall to request all the help the compiler can give you. > Thanks for your prompt and helpful reply. It looks like I found > most of the required changes. I'll get busy converting and let you > know how it all comes out. Perhaps you want to contribute a short porting guide. Such a document should be included with the 1.3 API reference. Let me know if you are interested, I can give you a template that we can include in devel-docs/libgimp later. Sven ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
On Mon, 2003-09-29 at 06:44, Sven Neumann wrote: > If your plug-in still needs GIMP_ENABLE_COMPAT_CRUFT, it hasn't been > ported to gimp-1.2 yet. Of course you need to do that first. > Do I need to do anything except replace the old cruft with the new calls as specified in gimp-1.2.5/libgimp/gimpcompat.h? > Assuming you have a gimp-1.2 plug-in, here's what you do to port it to > the 1.3 API: > > (1) Replace all occurances of drawable->id with drawable->drawable_id. > (2) Include . > (3) Fix whatever problems remain (if you are lucky, there are none). > (4) Look at gimpcompat.h and do the changes described there. > (5) Remove the inclusion of gimpcompat.h again. > Thanks for your prompt and helpful reply. It looks like I found most of the required changes. I'll get busy converting and let you know how it all comes out. -- --Jeff Jeff Trefftzs <[EMAIL PROTECTED]> http://www.tcsn.net/trefftzsHome Page http://gug.sunsite.dk/gallery.php?artist=68 Gimp Gallery http://trefftzs.topcities.com/ Photo Gallery ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
Hi, Jeff Trefftzs <[EMAIL PROTECTED]> writes: > Hi all, > > As we are about to move to the next stage of gimpery, I have begun > looking closely at my large collection of plug-ins, many of which I > remember compiling with GIMP_ENABLE_COMPAT_CRUFT, and wondering how > to make them usable again under the new regime. Can anybody point > me to a porting guide that identifies the changes needed to go from > the old (well, present) api to that used in gimp-1.3.20 and up? > > I have already written a quckie decrufter perl script to obviate the > need to use GIMP_ENABLE_COMPAT_CRUFT, and I have found a few changes > between present stable usage and the 1.3.20 version, but I'm still > wondering what else I'm missing. If your plug-in still needs GIMP_ENABLE_COMPAT_CRUFT, it hasn't been ported to gimp-1.2 yet. Of course you need to do that first. Assuming you have a gimp-1.2 plug-in, here's what you do to port it to the 1.3 API: (1) Replace all occurances of drawable->id with drawable->drawable_id. (2) Include . (3) Fix whatever problems remain (if you are lucky, there are none). (4) Look at gimpcompat.h and do the changes described there. (5) Remove the inclusion of gimpcompat.h again. Sven ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
Hi Jeff, Jeff Trefftzs wrote: > As we are about to move to the next stage of gimpery, I have begun > looking closely at my large collection of plug-ins, many of which I > remember compiling with GIMP_ENABLE_COMPAT_CRUFT, and wondering how to > make them usable again under the new regime. Can anybody point me to a > porting guide that identifies the changes needed to go from the old > (well, present) api to that used in gimp-1.3.20 and up? I have updated a few plug-ins to 1.3.x - but I have forgotten exactly what needed to be done. Could you point me to a plug-in to migrate, I will migrate it and document what I do? Cheers, Dave. -- David Neary, Lyon, France E-Mail: [EMAIL PROTECTED] ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
[Gimp-developer] Converting old plug-ins to wirk with gimp-1.3.20 (gimp-2)
Hi all, As we are about to move to the next stage of gimpery, I have begun looking closely at my large collection of plug-ins, many of which I remember compiling with GIMP_ENABLE_COMPAT_CRUFT, and wondering how to make them usable again under the new regime. Can anybody point me to a porting guide that identifies the changes needed to go from the old (well, present) api to that used in gimp-1.3.20 and up? I have already written a quckie decrufter perl script to obviate the need to use GIMP_ENABLE_COMPAT_CRUFT, and I have found a few changes between present stable usage and the 1.3.20 version, but I'm still wondering what else I'm missing. All advice and tips will b gratefully appreciated. TIA, -- --Jeff Jeff Trefftzs <[EMAIL PROTECTED]> http://www.tcsn.net/trefftzsHome Page http://gug.sunsite.dk/gallery.php?artist=68 Gimp Gallery http://trefftzs.topcities.com/ Photo Gallery ___ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer