diff options
| -rwxr-xr-x | Pb/Break/__init__.py | 6 | ||||
| -rwxr-xr-x | Pb/Grid/__init__.py | 34 | ||||
| -rw-r--r-- | Pb/__init__.py | 30 |
3 files changed, 40 insertions, 30 deletions
diff --git a/Pb/Break/__init__.py b/Pb/Break/__init__.py index eced793..d4e52b4 100755 --- a/Pb/Break/__init__.py +++ b/Pb/Break/__init__.py @@ -114,10 +114,6 @@ class PbBreak(Pb): #FIXME in db gallery i += 1 self._file_data = newfile[0:len(self._file_data)] - def _choose_frame(self, filepath): - _gif_frames = PbBreak.gif_frames(filepath) - frame = random.choice(_gif_frames) - self._call_cmd([BIN_CONVERT, frame, filepath]) def _enforce_jpg(self): if self.params.breaktype in [ "exr", "bmp", "miff" ] and not re.match(r'jpe?g$', self.params.url['mimetype'], re.IGNORECASE): @@ -135,7 +131,7 @@ class PbBreak(Pb): #FIXME in db gallery def _prepare_filedata(self): if self.params.url['mimetype'] == "gif": #FIXME and not miami - self._choose_frame(self.params.url['path']) + self._choose_gif_frame(self.params.url['path']) if self.params.breakangle: self._rotate() self._enforce_jpg(); diff --git a/Pb/Grid/__init__.py b/Pb/Grid/__init__.py index b2c8bdd..d03ee10 100755 --- a/Pb/Grid/__init__.py +++ b/Pb/Grid/__init__.py @@ -1,4 +1,3 @@ -#!/usr/bin/python2.7 import sys import re import os @@ -48,22 +47,31 @@ class PbGrid(Pb): username=None ): super(PbGrid,self).__init__(); - self.params.set_val("skycolor", skycolor, value_type="color") - self.params.set_val("bgcolor", bgcolor, value_type="color") - self.params.set_val("planebgcolor", planebgcolor, value_type="color") - self.params.set_val("linecolor", linecolor, value_type="color") + self.params.set_val("width", width, value_type="int") + self.params.set_val("height", height, value_type="int") + self.params.set_val("linethickness", linethickness, value_type="int") self.params.set_val("opacity", opacity, value_type="float") - self.params.set_val("zoom", zoom, value_type="int") - self.params.set_val("bgimage", bgimage, value_type="img_url") - self.params.set_val("planebgimage", planebgimage, value_type="img_url") - self.params.set_val("imageinstead", imageinstead, value_type="img_url") -#FIXME choose gif frame - self.params.set_val("spacing", spacing, value_type="bool") + self.params.set_val("linecolor", linecolor, value_type="color") + self.params.set_val("linethickness", linethickness, value_type="int") + self.params.set_val("spacing", spacing, value_type="int") self.params.set_val("vlines", vlines, value_type="bool") self.params.set_val("hlines", hlines, value_type="bool") self.params.set_val("shadow", shadow, value_type="bool") - self.params.set_val("finalformat", finalformat, value_type="string") - self.params.set_val("username", username, value_type="string") + self.params.set_val("bgimage", bgimage, value_type="img_url") + self.params.set_val("bgcolor", bgcolor, value_type="color") + self.params.set_val("imageinstead", imageinstead, value_type="img_url") + self.params.set_val("planebgcolor", planebgcolor, value_type="color") + self.params.set_val("planebgimage", planebgimage, value_type="img_url") + self.params.set_val("swing", swing, value_type="int") + self.params.set_val("tilt", tilt, value_type="int") + self.params.set_val("roll", roll, value_type="int") + self.params.set_val("zoom", zoom, value_type="int") + self.params.set_val("skycolor", skycolor, value_type="color") + self.params.set_val("transition", transition, value_type="enum", enum_values=[]) #FIXME + self.params.set_val("trim", trim, value_type="bool") + self.params.set_val("finalformat", finalformat, value_type="enum", enum_values=_file...)# FIXME + self.params.set_val("username", username, value_type="string"); +#FIXME choose gif frame #makes a canvas file...step 1 (if not bgimage) def _make_canvas(self): diff --git a/Pb/__init__.py b/Pb/__init__.py index 586b363..ff0a764 100644 --- a/Pb/__init__.py +++ b/Pb/__init__.py @@ -55,18 +55,6 @@ class Pb(object): except Exception: raise Exception("Unable to call cmd {}".format(str(cmd))) - @staticmethod - def gif_frames(filepath): - try: - info = Popen([BIN_IDENTIFY,filepath], stdout=PIPE).communicate()[0] - frames = filter((lambda x: x), map( - (lambda x: x.split(" ")[0]), - (info).split('\n') - )) - return frames - except Exception as e: - self.err_warn("couldn't get gif frames") - raise e; @staticmethod def dimensions (filepath): @@ -100,6 +88,7 @@ class Pb(object): sys.stderr.write("ERROR:{} - {}\n".format(self.__class__.__name__, s)) def _cleanup(self): + if not self._files_created: return cmd = ["rm"]+self._files_created self._call_cmd(cmd) @@ -119,3 +108,20 @@ class Pb(object): sys.stderr.write("files created %s\n" % b._files_created) sys.stderr.write("commands %s" % " ".join(b.commands)) + @staticmethod + def gif_frames(filepath): + try: + info = Popen([BIN_IDENTIFY,filepath], stdout=PIPE).communicate()[0] + frames = filter((lambda x: x), map( + (lambda x: x.split(" ")[0]), + (info).split('\n') + )) + return frames + except Exception as e: + self.err_warn("couldn't get gif frames") + raise e; + + def _choose_gif_frame(self, filepath): + _gif_frames = Pb.gif_frames(filepath) + frame = random.choice(_gif_frames) + self._call_cmd([BIN_CONVERT, frame, filepath]) |
