+#----------------------------------------------------------------------
+# Name: wxPython.tools.img2img
+# Purpose: Common routines for the image converter utilities.
+#
+# Author: Robin Dunn
+#
+# RCS-ID: $Id$
+# Copyright: (c) 2002 by Total Control Software
+# Licence: wxWindows license
+#----------------------------------------------------------------------
+# 12/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
+#
+# o V2.5 compatability update
+#
-"""Renamer stub: provides a way to drop the wx prefix from wxPython objects."""
+import getopt
+import glob
+import os
+import sys
-__cvsid__ = "$Id$"
-__revision__ = "$Revision$"[11:-2]
+import wx
+
+def convert(file, maskClr, outputDir, outputName, outType, outExt):
+ if os.path.splitext(file)[1].lower() == ".ico":
+ icon = wx.Icon(file, wx.BITMAP_TYPE_ICO)
+ img = wx.BitmapFromIcon(icon)
+ else:
+ img = wx.Bitmap(file, wx.BITMAP_TYPE_ANY)
+
+ if not img.Ok():
+ return 0, file + " failed to load!"
+ else:
+ if maskClr:
+ om = img.GetMask()
+ mask = wx.Mask(img, maskClr)
+ img.SetMask(mask)
+ if om is not None:
+ om.Destroy()
+ if outputName:
+ newname = outputName
+ else:
+ newname = os.path.join(outputDir,
+ os.path.basename(os.path.splitext(file)[0]) + outExt)
+ if img.SaveFile(newname, outType):
+ return 1, file + " converted to " + newname
+ else:
+ img = wx.ImageFromBitmap(img)
+ if img.SaveFile(newname, outType):
+ return 1, "ok"
+ else:
+ return 0, file + " failed to save!"
+
+
+
+
+def main(args, outType, outExt, doc):
+ if not args or ("-h" in args):
+ print doc
+ return
+
+ outputDir = ""
+ maskClr = None
+ outputName = None
+
+ try:
+ opts, fileArgs = getopt.getopt(args, "m:n:o:")
+ except getopt.GetoptError:
+ print __doc__
+ return
+
+ for opt, val in opts:
+ if opt == "-m":
+ maskClr = val
+ elif opt == "-n":
+ outputName = val
+ elif opt == "-o":
+ outputDir = val
+
+ if not fileArgs:
+ print doc
+ return
+
+ for arg in fileArgs:
+ for file in glob.glob(arg):
+ if not os.path.isfile(file):
+ continue
+ ok, msg = convert(file, maskClr, outputDir, outputName,
+ outType, outExt)
+ print msg
-from wx import _rename
-from wxPython.tools import img2img
-_rename(globals(), img2img.__dict__, modulename='tools.img2img')
-del img2img
-del _rename