diff options
| author | Jeremy Stanley <fungi@yuggoth.org> | 2015-07-22 20:45:26 +0000 |
|---|---|---|
| committer | James E. Blair <corvus@gnu.org> | 2015-07-25 09:12:20 -0700 |
| commit | 0bc1f9f2d89fe269d6a07df42025826c288775f3 (patch) | |
| tree | 37e42fb24664b00277b46ba31e4f8966d2288869 /presentty | |
| parent | ff07c4700e19cd3197fd8bac1ab8346b18aaaf15 (diff) | |
| download | presentty-0bc1f9f2d89fe269d6a07df42025826c288775f3.tar.gz presentty-0bc1f9f2d89fe269d6a07df42025826c288775f3.tar.xz presentty-0bc1f9f2d89fe269d6a07df42025826c288775f3.zip | |
Add a tilt transition
The tilt transition is like pan, only vertical instead of
horizontal.
Diffstat (limited to 'presentty')
| -rw-r--r-- | presentty/rst.py | 1 | ||||
| -rw-r--r-- | presentty/transition.py | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/presentty/rst.py b/presentty/rst.py index e96ff21..ab06f76 100644 --- a/presentty/rst.py +++ b/presentty/rst.py @@ -65,6 +65,7 @@ class UrwidTranslator(docutils.nodes.GenericNodeVisitor): transition_map = {'dissolve': transition_mod.DissolveTransition, 'cut': transition_mod.CutTransition, 'pan': transition_mod.PanTransition, + 'tilt': transition_mod.TiltTransition, } def __init__(self, document, palette, hinter=None, basedir='.'): diff --git a/presentty/transition.py b/presentty/transition.py index c699ddb..5592cd9 100644 --- a/presentty/transition.py +++ b/presentty/transition.py @@ -46,6 +46,16 @@ class PanTransition(Transition): c.pad_trim_left_right(0-offset, 0-(size[0]-offset)) return c +class TiltTransition(Transition): + def render(self, size, focus=False): + old = self.old.render((size[0], size[1])) + new = self.new.render((size[0], size[1])) + c = urwid.CanvasCombine([(old, None, False), + (new, None, False)]) + offset = int(size[1] * self.progress) + c.pad_trim_top_bottom(0-offset, 0-(size[1]-offset)) + return c + class DissolveTransition(Transition): def __init__(self, *args, **kw): super(DissolveTransition, self).__init__(*args, **kw) |
