#!/usr/bin/python

import os
import qtcanvas
import qt
import sys


class Viewer(qtcanvas.QCanvasView):
    def __init__(self, filename):
        qtcanvas.QCanvasView.__init__(self, None)
        self.setCaption(os.path.basename(filename))
        self.view = qtcanvas.QCanvasView(self)
        self.canvas = qtcanvas.QCanvas(self)
        self.setCanvas(self.canvas)
        self.pix = qtcanvas.QCanvasPixmapArray(filename)
        i = self.pix.image(0)
        self.canvas.resize(i.width(), i.height())
        self.sprite = qtcanvas.QCanvasSprite(self.pix, self.canvas)
        self.sprite.show()
        self.update()
        self.resize(self.sizeHint())

class App(qt.QApplication):
    def __init__(self, args):
        qt.QApplication.__init__(self, args)
        self.ws = []
        args = args[1:]
        for a in args:
            w = Viewer(a)
            self.ws.append(w)
            w.show()
        if self.ws:
            self.setMainWidget(self.ws[0])

if len(sys.argv) < 2:
    print >> sys.stderr, ('Usage: python %s image1 [...]' %
                          os.path.basename(sys.argv[0]))
    sys.exit(1)

app = App(sys.argv)
app.exec_loop()
