Added Zynga Scroller library

This commit is contained in:
Haskell Camargo
2015-05-23 00:57:06 -03:00
parent aadd63ecae
commit e3e6c4d8fe
2 changed files with 85 additions and 0 deletions

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);

View File

@@ -0,0 +1,49 @@
// Type definitions for Zynga 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);
activatePullToRefresh<T>(height: number, activate: () => void,
deactivate: () => void, start: () => 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);
doTouchEnd(timeStamp: number): void;
}