From 309e8a96af899c612ea26b73fc97d9d377bc9819 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 14 May 2009 15:41:14 +1000 Subject: Flickr demo: Scale the image about the center of the visible area. --- demos/declarative/flickr/content/ImageDetails.qml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/demos/declarative/flickr/content/ImageDetails.qml b/demos/declarative/flickr/content/ImageDetails.qml index d575be9..b8091f2 100644 --- a/demos/declarative/flickr/content/ImageDetails.qml +++ b/demos/declarative/flickr/content/ImageDetails.qml @@ -12,6 +12,7 @@ Flipable { property string photoDate property string photoUrl property int rating: 2 + property var prevScale: 1.0 signal closed @@ -93,7 +94,8 @@ Flipable { // Default scale shows the entire image. if (status == 0 && width != 0) { Slider.minimum = Math.min(Flick.width / width, Flick.height / height); - Slider.value = Math.min(Slider.minimum, 1); + prevScale = Math.min(Slider.minimum, 1); + Slider.value = prevScale; } } } @@ -109,7 +111,20 @@ Flipable { anchors.centeredIn: parent; color: "white"; font.bold: true } - Slider { id: Slider; x: 25; y: 374; visible: { BigImage.status == 0 && maximum > minimum } } + Slider { + id: Slider; x: 25; y: 374; visible: { BigImage.status == 0 && maximum > minimum } + onValueChanged: { + if (BigImage.width * value > Flick.width) { + var xoff = (Flick.width/2 + Flick.xPosition) * value / prevScale; + Flick.xPosition = xoff - Flick.width/2; + } + if (BigImage.height * value > Flick.height) { + var yoff = (Flick.height/2 + Flick.yPosition) * value / prevScale; + Flick.yPosition = yoff - Flick.height/2; + } + prevScale = value; + } + } } states: [ -- cgit v0.12 c3c3e77febf5974f43'/>
diff options
context:
space:
mode:
authorÉric Araujo <merwok@netwok.org>2011-03-21 02:18:58 (GMT)
committerÉric Araujo <merwok@netwok.org>2011-03-21 02:18:58 (GMT)
commitb277241fd2a0f280e98918c3c3e77febf5974f43 (patch)
tree3f6b253366bfc9638423f7c323595adf74e31ea0
parent50dc1a23d8d2e24fe4f344416a8604c4a7c2f60b (diff)
parentd8c73c650ce5554f3757f17cf0f979a897decf80 (diff)
downloadcpython-b277241fd2a0f280e98918c3c3e77febf5974f43.zip
cpython-b277241fd2a0f280e98918c3c3e77febf5974f43.tar.gz
cpython-b277241fd2a0f280e98918c3c3e77febf5974f43.tar.bz2
Fix some issue references in NEWS