Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/PIL/ImageQt.py
diff options
context:
space:
mode:
Diffstat (limited to 'PIL/ImageQt.py')
-rw-r--r--PIL/ImageQt.py84
1 files changed, 0 insertions, 84 deletions
diff --git a/PIL/ImageQt.py b/PIL/ImageQt.py
deleted file mode 100644
index 2e9f476..0000000
--- a/PIL/ImageQt.py
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-# The Python Imaging Library.
-# $Id: ImageQt.py 2741 2006-06-18 16:17:20Z fredrik $
-#
-# a simple Qt image interface.
-#
-# history:
-# 2006-06-03 fl: created
-# 2006-06-04 fl: inherit from QImage instead of wrapping it
-# 2006-06-05 fl: removed toimage helper; move string support to ImageQt
-#
-# Copyright (c) 2006 by Secret Labs AB
-# Copyright (c) 2006 by Fredrik Lundh
-#
-# See the README file for information on usage and redistribution.
-#
-
-import Image
-
-from PyQt4.QtGui import QImage, qRgb
-
-##
-# (Internal) Turns an RGB color into a Qt compatible color integer.
-
-def rgb(r, g, b):
- # use qRgb to pack the colors, and then turn the resulting long
- # into a negative integer with the same bitpattern.
- return (qRgb(r, g, b) & 0xffffff) - 0x1000000
-
-##
-# An PIL image wrapper for Qt. This is a subclass of PyQt4's QImage
-# class.
-#
-# @param im A PIL Image object, or a file name (given either as Python
-# string or a PyQt string object).
-
-class ImageQt(QImage):
-
- def __init__(self, im):
-
- data = None
- colortable = None
-
- # handle filename, if given instead of image name
- if hasattr(im, "toUtf8"):
- # FIXME - is this really the best way to do this?
- im = unicode(im.toUtf8(), "utf-8")
- if Image.isStringType(im):
- im = Image.open(im)
-
- if im.mode == "1":
- format = QImage.Format_Mono
- elif im.mode == "L":
- format = QImage.Format_Indexed8
- colortable = []
- for i in range(256):
- colortable.append(rgb(i, i, i))
- elif im.mode == "P":
- format = QImage.Format_Indexed8
- colortable = []
- palette = im.getpalette()
- for i in range(0, len(palette), 3):
- colortable.append(rgb(*palette[i:i+3]))
- elif im.mode == "RGB":
- data = im.tostring("raw", "BGRX")
- format = QImage.Format_RGB32
- elif im.mode == "RGBA":
- try:
- data = im.tostring("raw", "BGRA")
- except SystemError:
- # workaround for earlier versions
- r, g, b, a = im.split()
- im = Image.merge("RGBA", (b, g, r, a))
- format = QImage.Format_ARGB32
- else:
- raise ValueError("unsupported image mode %r" % im.mode)
-
- # must keep a reference, or Qt will crash!
- self.__data = data or im.tostring()
-
- QImage.__init__(self, self.__data, im.size[0], im.size[1], format)
-
- if colortable:
- self.setColorTable(colortable)