From 1d2d5404559542039915064d4d3edca720e7916f Mon Sep 17 00:00:00 2001 From: Kilian Valkhof Date: Tue, 2 Feb 2010 19:39:07 +0100 Subject: [PATCH] implement command line processing of files and directories --- dialog-warning.png | Bin 554 -> 542 bytes trimage.py | 35 ++++++++++++++++++++++++++--------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/dialog-warning.png b/dialog-warning.png index 72e52d878f927e98c1794163556798eacc2ffa51..704f1d7304568d9c5c550107453f996117fd7d40 100644 GIT binary patch delta 186 zcmZ3*GLL0LE@S;1PZ!4!iE!UD-h9mpBCQYSaZf+Jy4TVC!N2WGU4$1iyU!I}l4&b^ zV!Hf`Lf@k+ZuQE=}TUo6P8w^qKWKcZb5> zY=t+ir;cn6X^?hV=yUQxzyg+e7fKc4g_Z0hSZ|p%ZEDun-^$x!^h;ACLN{eS!{ZL^ tjZX^wisP=8p8Q;L=<>$>`M3M|+gOy8Pgg}yX-M$v z25mX~*zMA*D@Mk*L!@1MykB1vxH;{3u5Q%aWfgB-{J!7PQ(d0=;+ox`O}#SHp0C|v zl=Dc{^~tlCsPAQS+!MbGO8$JKm)doivth=m@7Zhz-k-PcTB$bu)xNI|3=9kmp00i_ I>zopr0F8xY5C8xG diff --git a/trimage.py b/trimage.py index 197dca4..b9d6ff3 100644 --- a/trimage.py +++ b/trimage.py @@ -1,5 +1,6 @@ import sys from os import system +from os import listdir from PyQt4.QtCore import * from PyQt4.QtGui import * @@ -17,16 +18,15 @@ class StartQT4(QMainWindow): # set recompress to false self.ui.recompress.setEnabled(False) self.imagelist = [] + self.showapp = True # connect signals with slots QObject.connect(self.ui.addfiles, SIGNAL("clicked()"), self.file_dialog) QObject.connect(self.ui.recompress, SIGNAL("clicked()"), self.recompress_files) QObject.connect(self.quit_shortcut, SIGNAL("activated()"), qApp, SLOT('quit()')) - parser = OptionParser(usage="%prog [-f] [-q] [-d]", version="%prog 1.0") - parser.add_option("-q", "--quiet", - action="store_false", dest="verbose", default=True, - help="don't print status messages to stdout") + parser = OptionParser(version="%prog 1.0", + description="GUI front-end to compress png and jpg images via optipng and jpegoptim") parser.add_option("-f", "--file", action="store", type="string", dest="filename", @@ -39,10 +39,24 @@ class StartQT4(QMainWindow): (options, args) = parser.parse_args() if options.filename: - print options + self.file_from_cmd(options.filename) if options.directory: - print options + self.dir_from_cmd(options.directory) + + def dir_from_cmd(self, directory): + self.showapp = False + imagedir = listdir(directory) + for image in imagedir: + image = directory + "/" + image + name = QFileInfo(image).fileName() + if name.endsWith("png") or name.endsWith("jpg"): + self.compress_file(image) + + def file_from_cmd(self, image): + self.showapp = False + if image.endsWith("png") or image.endsWith("jpg"): + self.compress_file(image) def file_drop(self): print "booya" @@ -70,8 +84,7 @@ class StartQT4(QMainWindow): def compress_file(self, filename): - print filename - oldfile = QFileInfo(filename); + oldfile = QFileInfo(filename) name = oldfile.fileName() oldfilesize = oldfile.size() oldfilesizestr = size(oldfilesize, system=alternative) @@ -160,6 +173,10 @@ class tri_table_model(QAbstractTableModel): if __name__ == "__main__": app = QApplication(sys.argv) myapp = StartQT4() - myapp.show() + + if myapp.showapp: + myapp.show() + else: + quit() sys.exit(app.exec_())