]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/BitmapFromBuffer.py
move wxPython to new trunk
[wxWidgets.git] / wxPython / demo / BitmapFromBuffer.py
diff --git a/wxPython/demo/BitmapFromBuffer.py b/wxPython/demo/BitmapFromBuffer.py
deleted file mode 100644 (file)
index 69f2c06..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-
-import wx
-import array
-
-#----------------------------------------------------------------------
-
-class TestPanel(wx.Panel):
-    def __init__(self, parent, log):
-        self.log = log
-        wx.Panel.__init__(self, parent, -1)
-        self.Bind(wx.EVT_PAINT, self.OnPaint)
-        self.width, self.height = 120,120
-        
-        self.MakeBitmapRGB(self.width, self.height)
-        self.MakeBitmapRGBA(self.width, self.height)
-        self.MakeBitmapRGBpA(self.width, self.height)
-
-    def GetRGB(self, x, y, bpp):
-        # calculate some colour values for this sample based on x,y position
-        r = g = b = 0
-        if y < self.height/3:                           r = 255
-        if y >= self.height/3 and y <= 2*self.height/3: g = 255
-        if y > 2*self.height/3:                         b = 255
-
-        if bpp == 4:
-            a = int(x * 255.0 / self.width)
-            return r, g, b, a
-        else:
-            return r, g, b
-
-
-    def MakeBitmapRGB(self, width, height):
-        # Make a bitmap using an array of RGB bytes
-        bpp = 3  # bytes per pixel
-        bytes = array.array('B', [0] * width*height*bpp)
-
-        for y in xrange(height):
-            for x in xrange(width):
-                offset = y*width*bpp + x*bpp
-                r,g,b = self.GetRGB(x, y, bpp)
-                bytes[offset + 0] = r
-                bytes[offset + 1] = g
-                bytes[offset + 2] = b
-
-        self.rgbBmp = wx.BitmapFromBuffer(width, height, bytes)
-        
-
-
-    def MakeBitmapRGBA(self, width, height):
-        # Make a bitmap using an array of RGBA bytes
-        bpp = 4  # bytes per pixel
-        bytes = array.array('B', [0] * width*height*bpp)
-
-        for y in xrange(height):
-            for x in xrange(width):
-                offset = y*width*bpp + x*bpp
-                r,g,b,a = self.GetRGB(x, y, bpp)
-                bytes[offset + 0] = r
-                bytes[offset + 1] = g
-                bytes[offset + 2] = b
-                bytes[offset + 3] = a
-
-        self.rgbaBmp = wx.BitmapFromBufferRGBA(width, height, bytes)
-
-
-    def MakeBitmapRGBpA(self, width, height):
-        # Make a bitmap using an array of RGB bytes plus a separate
-        # buffer for the alpha channel
-        bpp = 3  # bytes per pixel
-        bytes = array.array('B', [0] * width*height*bpp)
-
-        for y in xrange(height):
-            for x in xrange(width):
-                offset = y*width*bpp + x*bpp
-                r,g,b = self.GetRGB(x, y, bpp)
-                bytes[offset + 0] = r
-                bytes[offset + 1] = g
-                bytes[offset + 2] = b
-
-        # just use an alpha buffer with a constant alpha value for all
-        # pixels for this example, it could just as easily have
-        # varying alpha values like the other sample.
-        alpha = array.array('B', [128]*width*height)
-        self.rgbaBmp2 = wx.BitmapFromBuffer(width, height, bytes, alpha)
-
-
-    def DrawBitmapAndMessage(self, dc, bmp, msg, x_, y_):
-        x, y = x_, y_
-
-        # draw some text to help show the alpha
-        dc.SetFont(self.GetFont())
-        while y < y_ + self.height + 2*dc.GetCharHeight():
-            dc.DrawText(msg, x,y)
-            y += dc.GetCharHeight() + 5
-
-        # draw the bitmap over the text
-        dc.DrawBitmap(bmp, x+15,y_+15, True)
-
-        
-    def OnPaint(self, evt):
-        dc = wx.PaintDC(self)
-        self.DrawBitmapAndMessage(dc, self.rgbBmp,  "No alpha channel in this image", 30,35)
-        self.DrawBitmapAndMessage(dc, self.rgbaBmp, "This image has some alpha", 325,35)
-        self.DrawBitmapAndMessage(dc, self.rgbaBmp2,"This one made with RGB+A", 180,220)
-
-
-        
-        
-        
-#----------------------------------------------------------------------
-
-def runTest(frame, nb, log):
-    win = TestPanel(nb, log)
-    return win
-
-#----------------------------------------------------------------------
-
-
-
-overview = """<html><body>
-<h2><center>BitmapFromBuffer</center></h2>
-
-Two new wx.Bitmap factory functions allow you to create a wx.Bitmap
-directly from a data buffer.  The the buffer can be any Python object
-that implements the buffer interface, or is convertable to a buffer,
-such as a string or an array.  The new functions are: <ul>
-
-<li><b>wx.BitmapFromBuffer</b>(width, height, dataBuffer, alphaBuffer=None):
-Creates the bitmap from a buffer of RGB bytes, optionally with a separate
-buffer of alpha bytes.
-
-<li><b>wx.BitmapFromBufferRGBA</b>(width, height, dataBuffer): Creates
-the bitmap from a buffer containing RGBA bytes.
-
-</ul>
-
-
-
-</body></html>
-"""
-
-
-
-if __name__ == '__main__':
-    import sys,os
-    import run
-    run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])
-