implement command line processing of files and directories

This commit is contained in:
Kilian Valkhof 2010-02-02 19:39:07 +01:00
parent 8c0a78d446
commit 1d2d540455
2 changed files with 26 additions and 9 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 554 B

After

Width:  |  Height:  |  Size: 542 B

Before After
Before After

View file

@ -1,5 +1,6 @@
import sys import sys
from os import system from os import system
from os import listdir
from PyQt4.QtCore import * from PyQt4.QtCore import *
from PyQt4.QtGui import * from PyQt4.QtGui import *
@ -17,16 +18,15 @@ class StartQT4(QMainWindow):
# set recompress to false # set recompress to false
self.ui.recompress.setEnabled(False) self.ui.recompress.setEnabled(False)
self.imagelist = [] self.imagelist = []
self.showapp = True
# connect signals with slots # connect signals with slots
QObject.connect(self.ui.addfiles, SIGNAL("clicked()"), self.file_dialog) QObject.connect(self.ui.addfiles, SIGNAL("clicked()"), self.file_dialog)
QObject.connect(self.ui.recompress, SIGNAL("clicked()"), self.recompress_files) QObject.connect(self.ui.recompress, SIGNAL("clicked()"), self.recompress_files)
QObject.connect(self.quit_shortcut, SIGNAL("activated()"), qApp, SLOT('quit()')) QObject.connect(self.quit_shortcut, SIGNAL("activated()"), qApp, SLOT('quit()'))
parser = OptionParser(usage="%prog [-f] [-q] [-d]", version="%prog 1.0") parser = OptionParser(version="%prog 1.0",
parser.add_option("-q", "--quiet", description="GUI front-end to compress png and jpg images via optipng and jpegoptim")
action="store_false", dest="verbose", default=True,
help="don't print status messages to stdout")
parser.add_option("-f", "--file", parser.add_option("-f", "--file",
action="store", type="string", dest="filename", action="store", type="string", dest="filename",
@ -39,10 +39,24 @@ class StartQT4(QMainWindow):
(options, args) = parser.parse_args() (options, args) = parser.parse_args()
if options.filename: if options.filename:
print options self.file_from_cmd(options.filename)
if options.directory: 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): def file_drop(self):
print "booya" print "booya"
@ -70,8 +84,7 @@ class StartQT4(QMainWindow):
def compress_file(self, filename): def compress_file(self, filename):
print filename oldfile = QFileInfo(filename)
oldfile = QFileInfo(filename);
name = oldfile.fileName() name = oldfile.fileName()
oldfilesize = oldfile.size() oldfilesize = oldfile.size()
oldfilesizestr = size(oldfilesize, system=alternative) oldfilesizestr = size(oldfilesize, system=alternative)
@ -160,6 +173,10 @@ class tri_table_model(QAbstractTableModel):
if __name__ == "__main__": if __name__ == "__main__":
app = QApplication(sys.argv) app = QApplication(sys.argv)
myapp = StartQT4() myapp = StartQT4()
if myapp.showapp:
myapp.show() myapp.show()
else:
quit()
sys.exit(app.exec_()) sys.exit(app.exec_())