Merge pull request #4433 from haskellcamargo/master

Added Zynga Scroller library
This commit is contained in:
Masahiro Wakame
2015-05-25 02:06:36 +09:00
2 changed files with 86 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
/// <reference path="zynga-scroller.d.ts" />
var scroller: Scroller = new Scroller((left, top, zoom) => { });
scroller = new Scroller((left, top, zoom) => { }, {
scrollingX: true,
scrollingY: true,
animating: true,
animationDuration: 400,
bouncing: false,
locking: false,
paging: false,
snapping: true,
zooming: 10,
minZoom: 1,
maxZoom: 2
});
scroller.setDimensions(10, 10, 10, 10);
scroller.setPosition(200, 300);
scroller.setSnapSize(300, 300);
scroller.activatePullToRefresh(200, () => { }, () => { }, () => { });
scroller.finishPullToRefresh();
var data: {
left: number;
top: number;
zoom: number
} = scroller.getValues();
scroller.zoomTo(10);
scroller.zoomBy(10);
scroller.doMouseZoom(10, 10, 10, 10);
scroller.doTouchStart({
pageX: 10,
pageY: 20
}, 200);
scroller.doTouchMove([10], 200);
scroller.doTouchEnd(300);
+50
View File
@@ -0,0 +1,50 @@
// Type definitions for Zynga Scroller
// Project: http://zynga.github.com/scroller/
// Definitions by: Marcelo Haskell Camargo <https://github.com/haskellcamargo>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
declare class Scroller {
constructor(a: (left: number, top: number, zoom: number) => void, b?: {
scrollingX?: boolean;
scrollingY?: boolean;
animating?: boolean;
animationDuration?: number;
bouncing?: boolean;
locking?: boolean;
paging?: boolean;
snapping?: boolean;
zooming?: number;
minZoom?: number;
maxZoom?: number
});
setDimensions(clientWidth: number, clientHeight: number, contentWidth: number,
contentHeight: number): void;
setPosition(clientLeft: number, clientTop: number): void;
setSnapSize(width: number, height: number): void;
activatePullToRefresh<T>(height: number, activate: () => void,
deactivate: () => void, start: () => void): void;
finishPullToRefresh(): void;
getValues(): {
left: number;
top: number;
zoom: number
};
zoomTo(level: number, animate?: boolean, originLeft?: number,
originTop?: number): void;
zoomBy(factor: number, animate?: boolean, originLeft?: number,
originTop?: number): void;
scrollTo(left: number, top: number, animate?: boolean): void;
scrollBy(leftOffset: number, topOffset: number, animate?: boolean): void;
doMouseZoom(wheelData: number, timeStamp: number, pageX: number,
pageY: number): void;
doTouchStart(touches: {
pageX: number;
pageY: number
}, timeStamp: number): void;
doTouchMove(touches: {
pageX: number;
pageY: number
}, timeStamp: number, scale?: number): void;
doTouchMove(touches: [any], timeStamp: number): void;
doTouchEnd(timeStamp: number): void;
}