aboutsummaryrefslogtreecommitdiffhomepage
path: root/resources
diff options
context:
space:
mode:
authorGravatar reed <reed@chromium.org>2014-10-12 19:05:52 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-10-12 19:05:52 -0700
commit0d76b95ae0239010bc3eec5297b91c952cdab3cc (patch)
treefab90bda88c1a15f4651708c8fbc068d7b314868 /resources
parentf355df58517691b05be8bc3f0e99331ede6c4d44 (diff)
add fade_slide transition to lua slides
TBR= BUG=skia: Review URL: https://codereview.chromium.org/646613004
Diffstat (limited to 'resources')
-rw-r--r--resources/slides.lua45
1 files changed, 43 insertions, 2 deletions
diff --git a/resources/slides.lua b/resources/slides.lua
index bfc4ab4b83..6123ba8e67 100644
--- a/resources/slides.lua
+++ b/resources/slides.lua
@@ -69,6 +69,47 @@ function slide_transition(prev, next, is_forward)
return rec
end
+function fade_slide_transition(prev, next, is_forward)
+ local rec = {
+ prevImage = prev,
+ nextImage = next,
+ proc = function(self, canvas, drawSlideProc)
+ if self:isDone() then
+ drawSlideProc(canvas)
+ return nil
+ end
+ canvas:drawImage(self.prevImage, self.prev_x, 0, self.prev_a)
+ canvas:drawImage(self.nextImage, self.next_x, 0, self.next_a)
+ self:step()
+ return self
+ end
+ }
+ if is_forward then
+ rec.prev_x = 0
+ rec.prev_a = 1
+ rec.next_x = 640
+ rec.next_a = 0
+ rec.isDone = function (self) return self.next_x <= 0 end
+ rec.step = function (self)
+ self.next_x = self.next_x - 20
+ self.next_a = (640 - self.next_x) / 640
+ self.prev_a = 1 - self.next_a
+ end
+ else
+ rec.prev_x = 0
+ rec.prev_a = 1
+ rec.next_x = 0
+ rec.next_a = 0
+ rec.isDone = function (self) return self.prev_x >= 640 end
+ rec.step = function (self)
+ self.prev_x = self.prev_x + 20
+ self.prev_a = (640 - self.prev_x) / 640
+ self.next_a = 1 - self.prev_a
+ end
+ end
+ return rec
+end
+
--------------------------------------------------------------------------------------
gTemplate = {
@@ -94,7 +135,7 @@ gSlides = {
canvas:drawOval({left=300, top=300, right=400, bottom=400}, gRedPaint)
end },
},
- transition = slide_transition
+ transition = fade_slide_transition
},
{ text = "Title2", style="title", color = { a=1, r=0, g=1, b=0 },
children = {
@@ -102,7 +143,7 @@ gSlides = {
{ text = "bullet 2", style = "child" },
{ text = "bullet tres", style = "child" },
},
- transition = fade_transition
+ transition = slide_transition
},
{ text = "Title3", style="title",
children = {