from wxPython.wx import *
import glob
import sys

class MiaApp(wxApp):
    def OnInit(self):
        # Fa in modo che print stampi su stdout originale e non
        # sulla finestra creata da wxPython
        sys.stdout = sys.__stdout__
        wxInitAllImageHandlers()
        if len(sys.argv) == 2:
            # Se sulla riga di comando viene passato un
            # argomento si cerca fra i file che corrispondono
            # all'argomento...
            pathname = sys.argv[1]
        else:
            # ...altrimenti si aprono solo i file con estensione ".bmp".
            pathname = "*.bmp"
        # glob.glob(pathname) restituisce una lista che contiene tutti
        # i file (o directory) che corrispondono a pathname.
        for filename in glob.glob(pathname):
            image = wxImage(filename, wxBITMAP_TYPE_ANY)
            # I metodi di wxImage GetWidth e GetHeight ritornano entrambi
            # un intero, che indica rispettivamente larghezza e altezza
            # dell'immagine
            print "'%s' caricato, larghezza = %d, altezza = %d" % \
                (filename, image.GetWidth(), image.GetHeight())
            image.SaveFile(filename + ".png", wxBITMAP_TYPE_PNG)
            image.Rescale(100, 100)
            image.SaveFile(filename + ".jpg", wxBITMAP_TYPE_JPEG)
        return 1

app = MiaApp()